diff --git a/.agents/skills/gen-changesets/SKILL.md b/.agents/skills/gen-changesets/SKILL.md index e37dce8016..60ae70c888 100644 --- a/.agents/skills/gen-changesets/SKILL.md +++ b/.agents/skills/gen-changesets/SKILL.md @@ -5,7 +5,7 @@ description: Use when generating changesets in the kimi-code repository — deci # Generate Changesets -The only user-facing published package is the CLI: `@moonshot-ai/kimi-code`. All other `@moonshot-ai/*` packages (sdk, kosong, kaos, oauth, telemetry, and so on) are internal. +The only user-facing published package is the CLI: `@moonshot-ai/kimi-code`. All other `@moonshot-ai/*` packages (sdk, kosong, oauth, telemetry, and so on) are internal. ## 1. Whether to Write @@ -32,6 +32,7 @@ Fix occasional loss of tool call results in long conversations. Wording: - One short, user-facing English sentence that states only what changed. Drop trailing clauses that explain the cause, the benefit, or the mechanism. +- When a default flips or an existing behavior is removed, name the behavior users lose, not only the new default. State the escape hatch if one exists, e.g. `Stop hot-reloading config, skills, and AGENTS.md by default; set [watch] enabled = true or KIMI_CODE_WATCH=1 to turn it back on.`; if there is none, say plainly that the old behavior is no longer available. - New features: say plainly what it is plus one line on how to use it, e.g. `Add the /foo slash command to list active sessions. Run /foo to see them.` - Experimental features: also state how to enable them (the flag, config key, or env var). - No file, class, or function names, and no PR numbers. No vague words like refactor, optimize, or improve. No real internal identifiers — use neutral placeholders such as `example.com` or `YOUR_API_KEY`. @@ -60,4 +61,4 @@ Wording: 4. **Show the changeset text to whoever requested the work and get their confirmation before committing.** 5. Do not guess at changes you do not understand: finish the parts that are clear, then list what is unclear and ask whether you may dig into the code. -Before a release, review the accumulated `.changeset/` entries and delete the non-user-facing ones — the release PR regenerates from `.changeset/` on main, so deleting a file removes its changelog entry without touching shipped code. +Before a release, review the accumulated `.changeset/` entries and delete the non-user-facing ones — the release PR regenerates from `.changeset/` on the selected release branch, so deleting a file removes its changelog entry without touching shipped code. diff --git a/.agents/skills/pre-changelog/SKILL.md b/.agents/skills/pre-changelog/SKILL.md index 4f1f837100..33ab0a1568 100644 --- a/.agents/skills/pre-changelog/SKILL.md +++ b/.agents/skills/pre-changelog/SKILL.md @@ -13,6 +13,8 @@ This skill reuses `sync-changelog`'s strip / classify / translate rules. Read `s ### 1. Locate the release PR +Select the PR targeting the intended `release/*` branch, not the legacy main version PR. Report its latest head CI link and result alongside the preview. + ```bash gh pr list --state open --search "ci: release packages in:title" \ --json number,title,url,headRefName,baseRefName diff --git a/.agents/skills/review-pr/SKILL.md b/.agents/skills/review-pr/SKILL.md new file mode 100644 index 0000000000..cb5db65e04 --- /dev/null +++ b/.agents/skills/review-pr/SKILL.md @@ -0,0 +1,192 @@ +--- +name: review-pr +description: 在 kimi-code 仓库里 review 一个 PR 时使用:按 PR 模板逐节核对描述与 diff,并单独做一轮"回归与用户影响"评审,给出影响等级与评审摘要,评审摘要用用户当前使用的语言。 +disable-model-invocation: true +--- + +# Review PR + +这个仓库过去的回归大多不是逻辑错误,而是"改动相对于自身意图是对的,但悄悄改掉了某个现有人群依赖的行为":方言分支收窄、默认值翻转、删 system prompt 句子、重构或移植时丢掉旧路径的功能、修复引入启动时序变化。通用 review 会把这类"有意的功能变更"排除在 bug 之外,所以这里把它单列成一轮。 + +评审判据只有一条:**改动前能工作的任何输入(配置键、环境变量、命令行参数、provider 响应形态、旧版本写的会话数据、客户端请求、hook 载荷)改动后必须行为不变,除非 PR 明确声明了这个变化并给出了退路。** + +## 工作流 + +1. 拉 PR 元数据与描述: + + ```bash + gh pr view --json title,body,url,files,additions,deletions,baseRefName,headRefName + ``` + +2. 读完整 diff(大 PR 按文件分批读): + + ```bash + gh pr diff + ``` + +3. 读足够的周边代码来验证描述里的每个断言。只看 diff 看不出"改动前谁走到这个分支"。 + +4. **第一遍:定性。** 判断改动类型,决定第三遍的深度,见"第一遍:定性"。 + +5. **第二遍:按模板逐节核对。** 见"模板逐节核对"。 + +6. **第三遍:回归与用户影响。** 尽量用一个独立子 agent 跑:只给它 PR 号、base 与 head、两三句改动简介和 `surfaces.md` 的路径,不给它作者关于影响范围的结论,让它先从 diff 和代码独立列清单,回来后再与作者填的表对比。没有子 agent 能力时自己按同样顺序做:先列清单,再读作者的表。见"第三遍:回归与用户影响"。 + +7. 用用户当前使用的语言写评审摘要,格式见"输出"。 + +## 第一遍:定性 + +| 改动类型 | 第三遍深度 | +|---|---| +| 纯内部重构、测试、文档、测试 CI | 只需给出"没有可观测变化"的证据:哪些分支、默认值、契约文件没动 | +| 发布与打包:release、native 构建、VS Code 发布工作流,打包脚本,web 产物同步 | 全做,人群按安装方式与平台分:npm 包、各平台 native 二进制、VS Code 市场、内置 web 产物 | +| 新增功能,不动既有路径 | 只查新分支是否抢走了既有输入:新增条件是否排在旧条件之前 | +| 行为变更、默认值翻转、校验或权限收紧或放宽 | 全做 | +| prompt 文本变更:system prompt、工具描述、提醒、overlay、内置 skill | 全做,且每一句改动单独成行 | +| 移植、替换旧路径、大重构:v1 到 v2、runtime binding、协议替换 | 全做,并要求作者给出旧路径功能清单 | +| 协议、磁盘格式、SDK 导出、hook 载荷、命令行契约变化 | 全做,并点名仓库外的消费方 | +| 修复类改动改了启动顺序、生命周期、异步时序 | 全做,重点看谁依赖原来的顺序 | + +一个 PR 可以同时属于多类,按最重的那类处理。 + +## 第三遍:回归与用户影响 + +### 1. 行为变化清单 + +列出 diff 改变的每一个可观测行为,包括作者说"不变"的和作者认为"内部"的。内部包会打进 CLI 发布包,"内部"不等于用户无感。 + +每一行记录:行为、变化前、变化后、变化类型(新增 / 修改 / 删除 / 默认翻转 / 收紧 / 放宽)、证据(改动前后各一个 `file:line`,一侧不存在时给可达路径)。 + +读法: + +- 对每个被删除或被收窄的分支、条件、默认值、句子,问"改动前谁走到这里,改动后他们去哪了"。 +- 对每个新增的分支或条件,问"哪些既有输入现在会先命中新分支"。#3492 的回归就是这样产生的:数组字段存在时不再读字符串字段,而 OpenRouter 形态的网关两者同时发。 +- 测试里"把旧断言改成新行为"的改动是行为变化的直接证据,逐条对应到清单。 +- 先看 diff 文件列表有没有命中 `surfaces.md` 的"触发线索"。命中的 surface 必须在清单里有对应行,否则就是漏项。 + +### 2. 受影响人群 + +每一行对应到 `surfaces.md` 里的具体人群,写出人群名字和"这个人群存在"的证据:文档页、issue、配置示例、provider 载荷形态。找不到人群的,不进 finding,进"待作者确认"。 + +### 3. 影响等级 + +等级只由改动的事实决定,不看 changeset、文档、测试这些补救状态。三步判定: + +1. 数据丢失、安全边界放宽、老数据不可读、某人群的功能整体不可用:直接 L3。 +2. 否则,可感知且有一键退路(config、env、flag):L1;可感知且无退路,旧行为不可恢复:L2;无可观测变化:L0。 +3. 静默升级:用户提供的输入(配置、环境变量、数据、请求字段)被忽略或丢弃,且没有任何错误信号,用户无法自行发现:升一级,最高 L3。行为公开地变了、用户能在输出里看到的,不算静默。 + +广度三档,必须写出人群名字:全体用户 / 某类配置或平台人群 / 边缘环境。 + +每一行单独定级,PR 的等级取最高。静默升级的理由:没有信号就没有上报,回归会一直存活到有人偶然发现。 + +### 4. 补救核对 + +固定四问,逐条回答有 / 无 / 不适用,并给出证据: + +- 退路开关:有没有 config、env 或 flag 能恢复旧行为。 +- changeset:有没有点明用户**失去了什么**,而不只是新默认是什么;没有退路时是否明说旧行为不可恢复。 +- 老数据与老客户端:旧版本写的会话、迁移来的数据、上一版发布的客户端(desktop、web、VS Code、ACP)是否仍然可用;回滚到上一版是否安全。 +- guard 测试:有没有一条测试把**未被改动的人群**的旧行为钉住。 + +再加一问:`docs/en` 与 `docs/zh` 里对这个 surface 的承诺是否同步更新。 + +### 等级对应的处理要求 + +- L3:建议阻塞。必须补 guard 测试,并提供退路、flag 门控或迁移,缺一不可合。 +- L2:需要维护者在 PR 里显式拍板;changeset 必须写明失去的行为;文档同步。 +- L1:核对 changeset 与文档即可。 +- L0:一句话说明为什么是 L0,给出证据。 + +### finding 与"待作者确认"的界线 + +- finding 必须同时有:改动前后各一处 `file:line` 证据,和一个具名人群及其存在证据。两者缺一,降级为"待作者确认"。新增整个文件或删除整段实现时一侧天然为空,这时给存在的那一侧加上受影响可达路径的 `file:line` 即可。 +- "待作者确认"最多 5 条,按可能的影响等级排序,多出来的只报数量。 +- 不要报:PR 之前就存在的问题(严重的单独一句"顺带发现")、lint 和类型检查会抓的问题、风格问题。 +- 不要把这些当成"无影响"的证据:作者说"不变"、没有测试引用被删的句子、改动只在内部包。 + +## 模板逐节核对 + +输出为中文时节名用下表的译名,其他语言沿用模板原文的节名: + +| English | 中文 | +|---------|------| +| Requirement or Bug | 需求或 Bug | +| Bug Reproduction Steps | Bug 复现步骤 | +| Root Cause | 根本原因 | +| Code Changes | 代码变更 | +| Behavior Changes and Affected Users | 行为变化与受影响人群 | +| Checklist | 检查清单 | + +旧 PR 若仍用 `Impact Scope` 这一节,按"行为变化与受影响人群"的标准核对。 + +### 需求或 Bug + +- 关联的 issue 是否有效、相关? +- 没有 issue 时,需求是否用一两句话说清楚了? + +### Bug 复现步骤 + +- bug 类 PR:步骤是否清晰、可复现? +- 按步骤能否在 base 分支上确认 bug 存在? + +### 根本原因 + +- bug 类 PR:根因解释是否令人信服? +- 描述的根因与 diff 是否一致? +- 是根本修复还是绕过,是否说清楚了? + +### 代码变更 + +- 描述与实际 diff 是否一致? +- 可视化大纲(diff 块、调用树、文件树)是否准确、有帮助? +- 方案是否合理?有没有更简单的替代? +- 有没有作者漏掉的边界情况? + +### 行为变化与受影响人群 + +- 把第三遍独立列出的清单与作者填的表逐行对比:作者漏列的行为就是 finding;作者写了但你没找到证据的,进"待作者确认"。 +- 人群是否具名,还是只写了"部分用户"? +- 写了 `None` 的,证据是否成立? +- 受影响模块与测试覆盖是否与 diff 文件列表一致?有没有带风险的未测路径? + +### 检查清单 + +- 适用的项是否都勾了? +- 标为"不需要"的项,你是否同意? + +## 输出 + +用用户当前使用的语言,按下面的顺序,示例为中文: + +```markdown +## 结论 +一句话:可合 / 需修改 / 建议阻塞。附 PR 影响等级与改动类型。 + +## 回归与用户影响 +- 改动类型:… +- 影响等级:Lx(广度:…;是否静默:…) + +| 行为 | 变化前 | 变化后 | 受影响人群 | 证据 | 等级 | 退路 | +|---|---|---|---|---|---|---| + +补救核对: +- 退路开关:… +- changeset 是否点明失去的行为:… +- 老数据与老客户端:… +- guard 测试:… +- 文档:… + +待作者确认(最多 5 条): +1. … + +## 模板逐节核对 +逐节说明是否填写充分,指出缺失、不准确、与 diff 不一致之处。 + +## 需要修改的项 +可执行的列表;没有则写"无"。 +``` + +## 复盘回填 + +每次线上回归复盘后,把新发现的人群或触发线索补进 `surfaces.md`,并在它的"历史案例"里加一行。清单不更新就会过时。 diff --git a/.agents/skills/review-pr/surfaces.md b/.agents/skills/review-pr/surfaces.md new file mode 100644 index 0000000000..0d937d21cb --- /dev/null +++ b/.agents/skills/review-pr/surfaces.md @@ -0,0 +1,129 @@ +# 人群与 surface 清单 + +`review-pr` 第三遍用的仓库专属清单:谁在依赖现有行为,diff 里碰到什么就必须列行为变化。它会过时,每次回归复盘后补一行,见 `SKILL.md` 的"复盘回填"。 + +## 一、人群:谁在依赖现有行为 + +### 客户端与入口 + +| 人群 | 说明 | 契约位置 | +|---|---|---| +| TUI 交互用户 | `kimi` 默认入口 | `apps/kimi-code/src/tui/` | +| print 模式用户 | `kimi -p`,含解析 `--output-format stream-json` 输出的脚本。脚本解析者算二等人群,但输出格式变化必须写进 changeset(#3146) | `apps/kimi-code/src/cli/options.ts` | +| desktop 与 web 用户 | 源码在 code-app 仓库,只消费 kap-server 的 `/api/v1` REST 与 `/api/v1/ws`。本仓 diff 看不到它们的用法,改契约时必须点名让作者去对方仓库核对 | `packages/kap-server/src/routes/`、`packages/kap-server/src/transport/ws/`、`docs/en/reference/server-api.md` | +| VS Code 扩展用户 | 走 SDK 事件适配层,webview 有自己的渲染契约(#3250:v2 不再发 `display` 字段导致卡片空白) | `apps/vscode/` | +| ACP 客户端用户 | Zed 等,`kimi acp`。stdio MCP 是 ACP 的默认传输,客户端会无条件发(#3167);能力矩阵是公开承诺(#3081) | `packages/acp-server/`、`docs/en/reference/kimi-acp.md` | +| SDK 调用方 | `@moonshot-ai/kimi-code-sdk` 的导出面;其中 `KimiForCodingProvider` 走 kosong 的 provider 实现,CLI 与服务端不用 kosong | `packages/node-sdk/src/index.ts`、`packages/node-sdk/package.json` 的 `exports`、`packages/kosong/src/providers/` | +| 远程控制用户 | `kimi web --remote-control`,凭据槽位与 relay 按登录区域选择(#3969) | `packages/remote-control/` | + +### provider 方言 + +| 人群 | 说明 | +|---|---| +| Kimi 官方 | 默认路径,OAuth 托管登录,区域与 relay 差异 | +| `openai` Chat Completions 兼容网关 | 最杂的一群:new-api 等中转、OpenRouter 形态(`reasoning` 字符串与 `reasoning_details` 数组并存,#3900)、只发 `reasoning_content` 的、严格校验历史消息的(#2819)、第三方模型对 `anyOf` 参数的处理(#3383) | +| `anthropic`、`openai_responses`、`google-genai`、`vertexai` | 各自的 thinking、工具调用、usage 字段形态 | +| 自定义模型配置 | `api_key_env`、models.dev catalog 导入、手动配置的 thinking 参数(#3448)、`[secondary_model]` 与 subagent model pool(#3192、#3903) | + +代码位置:`packages/agent-core-v2/src/human/llm/requester/bases/`。 + +### 平台与环境 + +| 人群 | 已知敏感点 | +|---|---| +| Windows | 深路径与递归监听压力(#3931 的动机)、驱动器根与 UNC(#2876)、IME 组合输入(#3915)、CSI-u 键盘序列 | +| Linux | 无 hardlink 的文件系统(#3535)、根目录海量文件导致的 OOM(#3892) | +| macOS | 默认开发环境,最容易被当成"全体用户" | +| 网络代理 | 后台子 agent 重试(#3721) | +| native 二进制 vs npm 安装 | 启动路径、更新机制不同 | +| 安装渠道 | npm 包、各平台 native 二进制、VS Code 市场包、内置 web 产物,由发布与打包工作流决定,`src/` 一行不动也能丢掉一个平台 | + +### git 仓库形态 + +| 人群 | 已知敏感点 | 契约位置 | +|---|---|---| +| 子模块或 worktree 内启动的用户 | `core.worktree` 已设置;路径含符号链接时(macOS `/tmp`、链接的 home、Windows 映射盘)realpath 与字面路径不一致。#3964 的 git 探针在这里整体失败,已随 #4013 回滚 | `packages/agent-core-v2/src/app/git/gitService.ts` | +| git-lfs、git-crypt 用户 | `.git/config` 里的 filter 驱动带 `required = true`;任何"清空 filter 命令"的加固都会让 `git status` 对已修改的被过滤文件直接 fatal,除非同时清 `required`。#3964 踩过,已随 #4013 回滚 | 同上 | +| 大仓库用户 | 依赖 `core.fsmonitor`;footer 的后台 git 有超时预算,超时后静默当作 clean | `apps/kimi-code/src/utils/git/` | +| 要求签名提交或 husky hooks 的仓库 | 任何自动提交路径(Tower 等)关闭 hooks 或签名都会改变提交结果 | `packages/agent-core-v2/src/features/tower/` | + +### 配置状态 + +| 人群 | 说明 | 契约位置 | +|---|---|---| +| 默认配置用户 | 任何默认值翻转对他们都是行为变更 | `packages/agent-core-v2/docs/config-manifest.toml` | +| experimental flag 用户 | `[experimental]` 与 `KIMI_CODE_EXPERIMENTAL_*`;flag 的 `default` 翻成 true 等于面向全体发布 | `packages/agent-core-v2/src/app/flag/flagRegistry.ts`、各域的 `flag.ts` | +| legacy flag 用户 | `KIMI_CODE_LEGACY_FLAG`(#3820:TUI 与 print 模式静默忽略) | | +| 自定义 agent 用户 | `--agent` 的 `disallowedTools` 等策略(#3417) | | +| 配了 hooks 的用户 | 事件名与载荷是外部脚本的契约;配了 hook 时审批面板不渲染并被静默批准(#3888)、v2 不触发 PreToolUse(#3431) | `packages/agent-core-v2/src/features/externalHooks/internal/types.ts`、`docs/en/customization/hooks.md` | +| skills、plugins、MCP 用户 | 含 stdio MCP、用户级 skill 根目录、`[watch]` 热加载(#3931 关掉默认,#4015 翻回;关掉时连带 AGENTS.md 变更提醒失效,`/reload` 只覆盖 config 与 skills) | `docs/en/customization/` | +| 环境变量用户 | 同一个变量在 TUI、print 模式、kap-server 三个入口要行为一致(#3498:三个入口两种行为) | `docs/en/configuration/env-vars.md` | +| 主题、键位、TUI 模式自定义用户 | `tui.toml` | `docs/en/customization/themes.md`、`docs/en/reference/keyboard.md` | + +### 数据年代 + +| 人群 | 说明 | 契约位置 | +|---|---|---| +| 旧版本写的会话 | wire 日志、turn 编号、压缩后的 transcript(#3561、#3866、#3922);新版本能否读、回滚后能否读 | `packages/agent-core-v2/docs/wire-manifest.d.ts`、`packages/agent-core-v2/docs/state-manifest.d.ts` | +| `kimi migrate` 迁来的会话 | 从 `~/.kimi/` 迁到 `~/.kimi-code/` | `packages/migration-legacy/` | +| 搜索索引 | minidb 快照与 WAL | `packages/minidb/` | +| 后台任务与 cron 持久化 | 非正常退出后的恢复(#3924) | | +| 目录布局 | 任何读写 `~/.kimi-code/` 的代码 | `docs/en/configuration/data-locations.md` | + +### 外部自动化 + +| 人群 | 契约 | +|---|---| +| 解析 `stream-json` 的脚本 | 事件形态与顺序 | +| hook 脚本 | 事件名、载荷字段、返回值语义 | +| `kimi export` 的消费者 | 导出格式 | +| 关闭遥测的用户 | `KIMI_DISABLE_TELEMETRY` 在所有入口生效 | + +### 模型行为人群 + +prompt 文本改动影响全体用户,且没有测试能证明"无影响"。已知依赖具体句子的人群: + +- 依赖"不碰工作目录外文件"的(#3879 删除了这条规则)。 +- 依赖"cwd 即项目根"的(#3929 删除了这条断言)。 +- plan 模式提醒节奏(#3489)。 + +基于外部基准分析做的 prompt 改动,本质是把一个人群的收益换成另一个人群的损失,必须写明两边各是谁。 + +## 二、触发线索:diff 里碰到就必须列行为变化 + +| diff 里出现 | 代表的 surface | 必做的检查 | +|---|---|---| +| `packages/agent-core-v2/src/app/agentProfileCatalog/system.md`,以及 `packages/agent-core-v2/src/**/*.md`(工具描述、提醒、overlay、内置 skill) | 模型行为 | 每删或改一句单独成行:这句改动前约束了什么行为,谁依赖,现在由什么来约束 | +| `packages/agent-core-v2/docs/config-manifest.toml`(由 `src/app/config/configSectionContributions.ts` 生成,`test/app/config/configManifest.test.ts` 守护同步) | 配置键、默认值、校验 | 默认翻转与校验收紧必列;改了 manifest 没改 `docs/en/configuration/config-files.md` 视为文档过时 | +| `packages/agent-core-v2/src/**/flag.ts`、`packages/agent-core-v2/src/app/flag/flagRegistry.ts` | experimental flag | `default` 翻转等于面向全体发布,按行为变更处理 | +| `packages/agent-core-v2/src/human/utils/watch.ts`(热加载开关)以及任何模块级默认常量、`?? true` / `?? false` 兜底被配置键覆盖的地方 | 默认值来源 | 默认翻转必列;退路的 config 路径要有 guard 测试,不能只靠 env;退路是否依赖 ConfigService 先于消费方构造 | +| `packages/agent-core-v2/docs/wire-manifest.d.ts`、`packages/agent-core-v2/docs/state-manifest.d.ts` | 磁盘会话格式 | 旧会话能否读、回滚到上一版能否读、有无迁移 | +| `packages/kap-server/test/__snapshots__/apiSurface.snapshot.test.ts.snap`、`packages/kap-server/src/routes/`、`packages/kap-server/src/transport/ws/` | desktop、web、VS Code 的服务端契约 | 消费方在仓库外,点名让作者去 code-app 核对;上一版客户端连新服务端是否仍可用 | +| `packages/node-sdk/src/index.ts`、`packages/node-sdk/package.json` | SDK 导出面 | 删除或改签名即破坏性变更 | +| `packages/klient/src/` | SDK 与 ACP 下面的客户端门面契约 | 只改 klient 的 PR 碰不到 node-sdk 导出面,按 SDK 调用方与 ACP 客户端两个人群核行为变化 | +| `packages/transcript/src/contract/` | kap-server 发给 desktop、web、VS Code 的 transcript 载荷契约 | 消费方在 code-app,点名让作者去核;上一版客户端能否解析新载荷 | +| `.github/workflows/release.yml`、`_native-build.yml`、`manual-native-bundle.yml`、`vscode-publish.yml`,`apps/kimi-code/scripts/native/`、`apps/kimi-code/scripts/check-web-assets.mjs` | 发布产物 | 按安装方式与平台核:npm 包内容、各平台 native 二进制、VS Code 市场包、内置 web 产物是否仍齐全 | +| `packages/acp-server/` | ACP 客户端 | 对照 `docs/en/reference/kimi-acp.md` 的能力矩阵逐项核对 | +| `apps/kimi-code/src/cli/` | 命令行参数、子命令、`--output-format` | 对照 `docs/en/reference/kimi-command.md` | +| `packages/agent-core-v2/src/features/externalHooks/` | hook 事件与载荷 | 对照 `docs/en/customization/hooks.md` 的事件参考 | +| `packages/agent-core-v2/src/human/llm/requester/bases/` | provider 方言分支 | 枚举每种上游载荷形态改动前后各走哪条分支,尤其是多个字段并存的网关 | +| `packages/agent-core-v2/src/app/git/`、`apps/kimi-code/src/utils/git/` | 后台 git 的调用方式、config 覆盖、超时 | 对照"git 仓库形态"人群逐行核:前置探针失败是否让整个后台 git 静默不可用;覆盖的 config 键是否有 `required`、`gpgSign`、`hooksPath` 这类会把"禁用"变成"失败"的键;Windows 用例是否全部 skip | +| `packages/migration-legacy/`、`packages/minidb/`、任何读写 `~/.kimi-code/` 布局的代码 | 数据年代 | 老数据是否仍可读、可迁移 | +| 任何环境变量读取点的新增、删除或语义变化,不限写法(`process.env.X`、`process.env['X']`、动态键、helper)也不限 `KIMI_` 前缀 | 环境变量 | 对照 `docs/en/configuration/env-vars.md` 的全部条目;TUI、print 模式、kap-server 三个入口是否一致 | +| `packages/agent-core-v2/src/app/scopes.ts`、`packages/agent-core-v2/src/features/featureAssemblyService.ts`、config ready 相关 | 启动顺序与生命周期 | 谁依赖原来的顺序;#3471 在合入 34 分钟后被 #3486 整体 revert | +| `docs/en/**`、`docs/zh/**` 的 reference、configuration、customization 页 | 公开承诺 | 改了行为没改文档,或改了文档没改行为,都要指出 | +| 测试里把旧断言改成新行为 | 行为变化的直接证据 | 逐条对应到行为变化清单 | + +## 三、历史案例:用来校准等级 + +| 类型 | 案例 | 当时漏掉的问题 | 事后等级 | +|---|---|---|---| +| 方言分支收窄 | #3492 引入,#3900 用户报告,#3910 修复 | PR 正文写明"只有没有数组时才读字符串",没人问谁会两个字段同时发 | L2 无退路,输入被静默丢弃升 L3,openai 兼容网关人群 | +| 默认值翻转 | #3931,五天后 #4015 翻回默认开 | changeset 只写新默认,没写运行中编辑 config、skills、AGENTS.md、agent 文件、mcp.json 不再自动生效;AGENTS.md 变更提醒随之失效,`/reload` 与 `/new` 不重读 AGENTS.md;review 未覆盖行为变化 | L1 有退路,但改了文件不生效也无任何信号,静默升 L2;changeset 没点明失去的行为,config 路径的退路无 guard 测试 | +| prompt 删句子 | #3879、#3929 | "没有测试引用这句"被当成无影响证据 | L2 无退路,全体用户;行为公开可见,不算静默 | +| 重构丢功能 | #2961 引入,#3081、#3167 用户报告,#3183 修复 | 重构删掉了 ACP 本地执行兜底与 stdio MCP 接受,文档承诺仍在 | L3,功能整体不可用,ACP 人群,报错响亮但无退路 | +| 移植漏项 | #3498、#3098、#3250、#3431、#3820 | v1 路径有、v2 路径没有:env 变量、上下文用量、卡片字段、hook、legacy flag;没人列过旧路径功能清单 | L2 无退路,配置被静默忽略升 L3 | +| 修复引入时序变化 | #3471 合入后 34 分钟被 #3486 revert | 延迟装配改变了启动顺序 | 全体用户 | +| 输出契约无声变化 | #3146 | headless 事件输出变了,没有 changelog | L2,脚本解析者 | +| 静默批准 | #3888 | 配了 hook 时审批面板不渲染,待审调用被静默批准 | L3,安全边界 | +| 安全收紧连带 | #3964(2.1.0),两天后 #4013 整体回滚 | 盲审列出四条:后台 git 探针在子模块 + 符号链接路径下整体失败;filter 驱动 `required = true` 仓库 `git status` fatal;print、ACP、SDK 无信任入口导致 `additional_dir` 静默为空;`~` 条目让 local.toml 整文件失效并静默退出。PR 正文未列任何人群 | L3 候选,四条均无退路、changeset 未提;回滚后代码已不在 main | diff --git a/.agents/skills/sync-changelog/SKILL.md b/.agents/skills/sync-changelog/SKILL.md index e8fbd021ab..0835d56d28 100644 --- a/.agents/skills/sync-changelog/SKILL.md +++ b/.agents/skills/sync-changelog/SKILL.md @@ -126,7 +126,12 @@ Public-text rule: do not copy real internal endpoints, key names, account names, ### 4. Merge, Deduplicate, And Classify Entries -Before classifying, merge related entries and drop redundant ones from the user-facing changelog: +First, count the stripped upstream entries in the version range being synced. The count decides how much curation happens before the human review checkpoint: + +- **10 entries or fewer: list everything and let the user decide.** Classify every entry into its section and list them all — do not fold, merge, or drop entries on your own, and do not write a catch-all line. At the human review checkpoint (step 8), present the full list with advisory notes (which entries look low-signal under the two gates below, and why) so the user decides what stays, what merges, and what folds. +- **More than 10 entries: curate first, then review.** Merge related entries and fold low-signal ones into the catch-all line before writing the page, using the rules below. The reviewer still owns the final cutoff — surface the borderline calls instead of resolving them silently. + +The rules below are the shared curation standard: they drive the curator's fold/merge decisions when there are more than 10 entries, and they drive the advisory notes when there are 10 or fewer. - **Curate for end users: collapse low-signal entries into one catch-all line.** The docs changelog is the only curated, user-facing outlet; the full entry list always remains in the upstream package changelog, so hiding detail here loses nothing. Apply two gates to every candidate entry. Gate 1, the reader-action test: **after reading this, is there something the reader must do, or something they must re-evaluate?** Gate 2, the channel test: **is the changelog the only channel that can deliver this?** The changelog is the channel of last resort — when the product itself surfaces the information in context, at the moment of need, to exactly the affected users, the entry is redundant no matter how real the improvement is. "Surfaced" means pushed into the user's path, not merely present on screen: an event-triggered card, prompt, or post-install screen forces the encounter, while a toggle, menu item, command, or settings page only waits to be found. Users do not explore — a capability that lives only in ambient UI is effectively undiscoverable, so the changelog must announce it. What in-product surfacing cannot deliver: hidden controls (env vars, config keys, opt-out flags nobody would find unprompted), invalidations of existing habits or expectations (in-product discovery comes as confusion), and capabilities users would not know to seek. An entry that fails either gate folds. Anchor both gates to the changelog's reader, never to the bug's victim: someone who hit a loud failure does not need the changelog to confirm the fix — the product working again is the notification — and a reader who never hit it gets nothing from the entry. - `Features`: keep when users would try it or must react to it — new capabilities create demand readers did not know to seek. Collapse only behavior that takes effect solely behind an experimental flag. @@ -324,7 +329,7 @@ Check: - Each version has the same section set and order on both pages. - Each section has the same number of entries on both pages. - Within each section, the most valuable, obvious, and larger entries appear before smaller or narrower entries. -- Low-signal entries were collapsed into the single catch-all line, placed last under `Bug Fixes` — or under `Polish` when nothing folded is a fix (both the reader-action test and the channel test applied); the catch-all wording matches what was folded and never claims fixes that did not happen; section sizes stay within the density defaults (about 2 Polish, 3 Bug Fixes) unless extra qualifying entries were deliberately kept and flagged for review. The catch-all line ends with the upstream changelog pointer (file link, no version anchor). +- Entry count decided the curation level: a version range with 10 or fewer upstream entries lists everything classified, with no catch-all line (fold/merge decisions deferred to the review checkpoint); with more than 10, low-signal entries were collapsed into the single catch-all line, placed last under `Bug Fixes` — or under `Polish` when nothing folded is a fix (both the reader-action test and the channel test applied); the catch-all wording matches what was folded and never claims fixes that did not happen; section sizes stay within the density defaults (about 2 Polish, 3 Bug Fixes) unless extra qualifying entries were deliberately kept and flagged for review. The catch-all line ends with the upstream changelog pointer (file link, no version anchor). - PR links and commit hashes were stripped. - No `Thanks ...!` credit remains (remove it every time). - Real internal identifiers were replaced with neutral placeholders. @@ -353,7 +358,7 @@ If the user chooses review: git diff docs/en/release-notes/changelog.md docs/zh/release-notes/changelog.md ``` -2. Summarize synced versions, section counts, and anything that needed manual classification. List every entry folded into a catch-all line (short titles, one line each), any section that exceeds the density defaults, and every borderline call flagged during curation — the reviewer cannot own a cutoff they cannot see. +2. Summarize synced versions, section counts, and anything that needed manual classification. When the synced version range had 10 or fewer upstream entries and everything was listed, present the full entry list with advisory notes (which entries look low-signal and why) and ask the user to decide what stays, what merges, and what folds. When entries were folded into a catch-all line (more than 10 upstream entries), list every folded entry (short titles, one line each), any section that exceeds the density defaults, and every borderline call flagged during curation — the reviewer cannot own a cutoff they cannot see. 3. Tell the user to reply when they are done reviewing, or to ask for edits. 4. Do **not** commit, push, or open a PR until the user explicitly says review is complete, or asks to proceed. @@ -434,6 +439,7 @@ Return the PR URL to the user when done. - Never edit upstream `apps/kimi-code/CHANGELOG.md`. - Do not backfill unreleased `.changeset/*.md` drafts into the docs site. - If upstream wording is wrong, leave upstream alone and fix it in a future changeset. +- A version range with 10 or fewer upstream entries is listed in full; fold/merge/drop decisions belong to the user at the review checkpoint, not the curator. - Always sync on a `docs/changelog-sync-*` branch and open a PR; never push changelog docs sync directly to `main`. - Wait for the human review checkpoint before committing, pushing, or opening a PR. @@ -446,7 +452,8 @@ Return the PR URL to the user when done. | Leaving the `Thanks ...!` credit in docs | Remove it every time, including the multi-author form | | Leaving near-duplicate micro-tweaks as separate bullets | Merge small tweaks to the same surface into one higher-level entry (e.g. composer height + font → composer's default styling) | | Listing many narrow fixes to the same surface as separate bullets | When three or more fixes target the same UI area or the same class of problem, merge them into one higher-level fix entry; keep genuinely distinct or high-value fixes standalone | -| Listing low-signal fixes or internal changes as standalone bullets | Collapse them into the single catch-all line (`Fix several known issues.`) placed last under Bug Fixes; treat the section-size defaults (about 2 Polish, 3 Bug Fixes) as a density guard, not a quota | +| Listing low-signal fixes or internal changes as standalone bullets when curating (>10 entries) | Collapse them into the single catch-all line (`Fix several known issues.`) placed last under Bug Fixes; treat the section-size defaults (about 2 Polish, 3 Bug Fixes) as a density guard, not a quota | +| Folding, merging, or dropping entries on your own when the version range has 10 or fewer upstream entries | List everything classified, with no catch-all line, and let the user decide at the review checkpoint | | Folding a qualifying entry just to hit the section-size default | The defaults are density guards; keep entries that genuinely pass the reader-action test and flag the overflow for the human reviewer | | Keeping a fix because it was severe or hard-won | Severity makes the announcement redundant — the fix itself notifies whoever was hit; keep only behavior-change fixes and retrospective notices with a concrete, locatable action | | Keeping an improvement the product surfaces in context (recovery cards, post-install guidance, progress displays) | The product is the better channel — right users, moment of need; fold it (channel test) | diff --git a/.agents/skills/tdd/SKILL.md b/.agents/skills/tdd/SKILL.md deleted file mode 100644 index 8fc0867108..0000000000 --- a/.agents/skills/tdd/SKILL.md +++ /dev/null @@ -1,38 +0,0 @@ ---- -name: tdd -description: Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests. ---- - -# Test-Driven Development - -TDD is the red → green loop. This skill is the reference that makes that loop produce tests worth keeping: what a good test is, where tests go, the anti-patterns, and the rules of the loop. Every section applies on every cycle: consult them before and during the loop, not after. - -When exploring the codebase, read `CONTEXT.md` (if it exists) so test names and interface vocabulary match the project's domain language, and respect ADRs in the area you're touching. - -## What a good test is - -Tests verify behavior through public interfaces, not implementation details. Code can change entirely; tests shouldn't. A good test reads like a specification: "user can checkout with valid cart" tells you exactly what capability exists, and it survives refactors because it doesn't care about internal structure. - -See [tests.md](tests.md) for examples and [mocking.md](mocking.md) for mocking guidelines. - -## Seams: where tests go - -A **seam** is the public boundary you test at: the interface where you observe behavior without reaching inside. Tests live at seams, never against internals. - -**Test only at pre-agreed seams.** Before writing any test, write down the seams under test and confirm them with the user. No test is written at an unconfirmed seam. You can't test everything, so agreeing the seams up front is how testing effort lands on the critical paths and complex logic instead of every edge case. - -Ask: "What's the public interface, and which seams should we test?" - -When the shape of that interface is itself in question (how deep the module is, where the seam belongs, what the interface should expose), call the Skill tool with "codebase-design" for the vocabulary. It is the shared source of the module, interface, depth, seam, adapter, leverage and locality terms, and it is a reference to consult, not a session to run. - -## Anti-patterns - -- **Implementation-coupled**: mocks internal collaborators, tests private methods, or verifies through a side channel (querying the database instead of using the interface). The tell: the test breaks when you refactor but behavior hasn't changed. -- **Tautological**: the assertion recomputes the expected value the way the code does (`expect(add(a, b)).toBe(a + b)`, a snapshot derived by hand the same way, a constant asserted equal to itself), so it passes by construction and can never disagree with the code. Expected values must come from an independent source of truth: a known-good literal, a worked example, the spec. -- **Horizontal slicing**: writing all tests first, then all implementation. Bulk tests verify _imagined_ behavior: you test the _shape_ of things rather than user-facing behavior, the tests go insensitive to real changes, and you commit to test structure before understanding the implementation. Work in **vertical slices** instead: one test → one implementation → repeat, each test a **tracer bullet** that responds to what the last cycle taught you. - -## Rules of the loop - -- **Red before green.** Write the failing test first, then only enough code to pass it. Don't anticipate future tests or add speculative features. -- **One slice at a time.** One seam, one test, one minimal implementation per cycle. -- **Refactoring is not part of the loop.** It belongs to the review stage (see the `code-review` skill), not the red → green implementation cycle. diff --git a/.agents/skills/tdd/mocking.md b/.agents/skills/tdd/mocking.md deleted file mode 100644 index 71cbfee674..0000000000 --- a/.agents/skills/tdd/mocking.md +++ /dev/null @@ -1,59 +0,0 @@ -# When to Mock - -Mock at **system boundaries** only: - -- External APIs (payment, email, etc.) -- Databases (sometimes - prefer test DB) -- Time/randomness -- File system (sometimes) - -Don't mock: - -- Your own classes/modules -- Internal collaborators -- Anything you control - -## Designing for Mockability - -At system boundaries, design interfaces that are easy to mock: - -**1. Use dependency injection** - -Pass external dependencies in rather than creating them internally: - -```typescript -// Easy to mock -function processPayment(order, paymentClient) { - return paymentClient.charge(order.total); -} - -// Hard to mock -function processPayment(order) { - const client = new StripeClient(process.env.STRIPE_KEY); - return client.charge(order.total); -} -``` - -**2. Prefer SDK-style interfaces over generic fetchers** - -Create specific functions for each external operation instead of one generic function with conditional logic: - -```typescript -// GOOD: Each function is independently mockable -const api = { - getUser: (id) => fetch(`/users/${id}`), - getOrders: (userId) => fetch(`/users/${userId}/orders`), - createOrder: (data) => fetch('/orders', { method: 'POST', body: data }), -}; - -// BAD: Mocking requires conditional logic inside the mock -const api = { - fetch: (endpoint, options) => fetch(endpoint, options), -}; -``` - -The SDK approach means: -- Each mock returns one specific shape -- No conditional logic in test setup -- Easier to see which endpoints a test exercises -- Type safety per endpoint diff --git a/.agents/skills/tdd/tests.md b/.agents/skills/tdd/tests.md deleted file mode 100644 index 7ab86479f9..0000000000 --- a/.agents/skills/tdd/tests.md +++ /dev/null @@ -1,77 +0,0 @@ -# Good and Bad Tests - -## Good Tests - -**Integration-style**: Test through real interfaces, not mocks of internal parts. - -```typescript -// GOOD: Tests observable behavior -test("user can checkout with valid cart", async () => { - const cart = createCart(); - cart.add(product); - const result = await checkout(cart, paymentMethod); - expect(result.status).toBe("confirmed"); -}); -``` - -Characteristics: - -- Tests behavior users/callers care about -- Uses public API only -- Survives internal refactors -- Describes WHAT, not HOW -- One logical assertion per test - -## Bad Tests - -**Implementation-detail tests**: Coupled to internal structure. - -```typescript -// BAD: Tests implementation details -test("checkout calls paymentService.process", async () => { - const mockPayment = jest.mock(paymentService); - await checkout(cart, payment); - expect(mockPayment.process).toHaveBeenCalledWith(cart.total); -}); -``` - -Red flags: - -- Mocking internal collaborators -- Testing private methods -- Asserting on call counts/order -- Test breaks when refactoring without behavior change -- Test name describes HOW not WHAT -- Verifying through external means instead of interface - -```typescript -// BAD: Bypasses interface to verify -test("createUser saves to database", async () => { - await createUser({ name: "Alice" }); - const row = await db.query("SELECT * FROM users WHERE name = ?", ["Alice"]); - expect(row).toBeDefined(); -}); - -// GOOD: Verifies through interface -test("createUser makes user retrievable", async () => { - const user = await createUser({ name: "Alice" }); - const retrieved = await getUser(user.id); - expect(retrieved.name).toBe("Alice"); -}); -``` - -**Tautological tests**: Expected value restates the implementation, so the test passes by construction. - -```typescript -// BAD: Expected value is recomputed the way the code computes it -test("calculateTotal sums line items", () => { - const items = [{ price: 10 }, { price: 5 }]; - const expected = items.reduce((sum, i) => sum + i.price, 0); - expect(calculateTotal(items)).toBe(expected); -}); - -// GOOD: Expected value is an independent, known literal -test("calculateTotal sums line items", () => { - expect(calculateTotal([{ price: 10 }, { price: 5 }])).toBe(15); -}); -``` diff --git a/.agents/skills/write-pr/SKILL.md b/.agents/skills/write-pr/SKILL.md new file mode 100644 index 0000000000..b810cb1e01 --- /dev/null +++ b/.agents/skills/write-pr/SKILL.md @@ -0,0 +1,140 @@ +--- +name: write-pr +description: 在 kimi-code 仓库里创建或更新 PR 时使用:如何把 PR 模板的每一节写得简洁、便于 reviewer 理解,包括"行为变化与受影响人群"表。 +--- + +# 写 PR 描述 + +为当前分支创建或更新 PR,描述要让 reviewer 明白这个改动为什么存在、实现长什么样、现有用户会失去什么。 + +## 工作流 + +1. 读 PR 模板: + + `Read(.github/pull_request_template.md)` + +2. 找到或创建 PR: + - 先查当前分支有没有 PR:`gh pr view --json url,number,title,state 2>/dev/null`。 + - 没有的话,看 `git status --short --branch` 和当前分支上的提交。 + - 提交剩余改动,带 upstream 推送分支,用 `gh pr create` 创建 PR。 + - 遵守仓库的 git 安全规范。 + +3. 收集解释改动所需的上下文: + - 读关联的 issue 和相关任务产物。 + - 读完整 diff(`git diff main...HEAD`)和足够的周边代码,理解行为与归属。 + - PR 已存在时,用 `gh pr view` 拿元数据和改动文件列表。 + +4. 按模板各节写描述。描述用用户当前使用的语言,行为变化表也一样;只有三样固定:PR 标题保持英文 Conventional Commit,changeset 保持英文(见 `gen-changesets` skill),节标题沿用模板原文。 + - **Requirement or Bug**:一句话,或 `Resolve #`。不要多写。 + - **Bug Reproduction Steps**:只有 bug 类 PR 需要;feature 写 `N/A`。步骤已在 issue 里的写 `See linked issue`。 + - **Root Cause**:只有 bug 类 PR 需要;feature 写 `N/A`。说明根因,以及这是根本修复还是绕过。 + - **Code Changes**:能用可视化大纲说清楚的就不要写散文,见"代码变更的可视化大纲"。 + - **Behavior Changes and Affected Users**:先填行为变化表,再列受影响模块与测试覆盖,见"行为变化与受影响人群"。 + - **Checklist**:勾上所有适用的项。 + +5. 发布描述: + - 先存到临时文件,再 `gh pr edit --body-file ` 或 `gh pr create --body-file `。 + - 确认更新成功。 + +## 行为变化与受影响人群 + +这一节回答一个问题:合入之后,现有用户会失去什么。这个仓库过去的回归大多来自没人回答这个问题,而不是逻辑错误。 + +判据:**改动前能工作的任何输入(配置键、环境变量、命令行参数、provider 响应形态、旧版本写的会话数据、客户端请求、hook 载荷)改动后必须行为不变,除非这里明确声明了变化并给出退路。** + +写法: + +1. 列出 diff 改变的每一个可观测行为,一行一个。包括你认为"不变"但分支条件挪动了的:新增的条件会不会先于旧条件命中既有输入;删除或收窄的分支改动前谁在走。内部包会打进 CLI 发布包,"内部"不等于用户无感。表格用 PR 描述的语言,下面的示例用英文只是示意形状: + + | Behavior | Before | After | Who relies on the old behavior | Escape hatch | + |---|---|---|---|---| + | reasoning parsing when `reasoning_details` is an array | string `reasoning` also read | string ignored | OpenAI-compatible gateways that send both (OpenRouter dialect) | none | + +2. 人群要具名,不要写"部分用户"。从 `.agents/skills/review-pr/surfaces.md` 里取:客户端(TUI、print 模式、desktop 与 web、VS Code、ACP、SDK)、provider 方言、平台、配置状态、数据年代、外部脚本。 + +3. 改了 prompt 文本(system prompt、工具描述、提醒)的,每一句单独成行,写清这句改动前约束了什么行为、谁依赖、现在由什么来约束。"没有测试引用这句"不是无影响的证据。 + +4. 替换或绕过旧路径的(移植、runtime binding、协议替换),额外列出旧路径的功能清单:它认哪些环境变量、有哪些兜底、接受哪些输入,以及每一项在新路径里的位置。 + +5. 确实没有可观测变化的,写 `None`,并说明证据:哪些分支、默认值、契约文件没动。 + +6. 表后面列受影响模块与每一行对应的测试覆盖。默认翻转或删除行为的,必须有一条测试把未被改动的人群的旧行为钉住,并且 changeset 要写明用户失去了什么,见 `gen-changesets` skill;没有退路的,在 PR 里请维护者显式拍板。 + +## 代码变更的可视化大纲 + +优先用结构化视图,少用散文。用能说清实现的最小组合,没变的类别不要列。 + +逻辑或算法变化用伪代码 diff: + +```diff + on(save) +- write content ++ if content is unchanged ++ return cached result ++ write new content ++ invalidate cache +``` + +运行时控制流用调用树 diff: + +```diff + submitForm + createSession + persistPrompt ++ expandSkillMention + launchAgent +- navigateToSession ++ navigateToSession ++ subscribeToEvents +``` + +文件职责变化用浅层文件树 diff: + +```diff + src/ + ├── commands/ ++│ └── show-me.ts # expands the slash command + ├── sessions/ +-└── transport.ts ++└── transport/ ++ ├── client.ts ++ └── stream.ts +``` + +组件或 UI 结构变化用树 diff: + +```diff + + useSessionEvents() + ++ + ++ +``` + +组件交互、控制流或数据流用 Mermaid,解释 bug 机制时尤其有用: + +```mermaid +sequenceDiagram + participant User + participant UI + participant Daemon + User->>UI: choose command + UI->>Daemon: send expanded prompt + Daemon-->>UI: stream result +``` + +关键数据结构或类型变化用对应语言的代码块: + +```ts +interface SessionEvents { + onTurnStart(cb: (turn: Turn) => void): void; + onTurnEnd(cb: (turn: Turn) => void): void; +} +``` + +可视化大纲的规则: +- 重点是"变了什么"且周边形状已存在时,用 `diff` 块。 +- 大部分是新内容,或 diff 记法会掩盖归属和顺序时,用对应语言或 `text` 块给出完整目标形状。 +- 按最容易理解的顺序讲:先文件还是先数据结构,哪个合适用哪个。 +- 像一个人对另一个人讲话:简单、连贯、简洁。 diff --git a/.agents/skills/write-tui/SKILL.md b/.agents/skills/write-tui/SKILL.md index 027b574cf0..cbfb64e687 100644 --- a/.agents/skills/write-tui/SKILL.md +++ b/.agents/skills/write-tui/SKILL.md @@ -23,7 +23,7 @@ For any list dialog, selector, input box, or status/toggle list, the interaction - `editor-keyboard.ts` — editor keyboard handling, exit shortcuts, external editor, clipboard image. - `auth-flow.ts` — login/auth orchestration (`refreshConfigAfterLogin`, etc.). - `src/tui/commands/` — slash-command declaration, parsing, ordering, and dynamic skill-command generation. Parsing and types only; execution is dispatched from `KimiTUI`'s slash-command handler section, and complex execution sinks into `utils` or focused components. -- `src/tui/components/` — pi-tui components by UI type: `chrome/` (footer, todo, welcome, loader, device code), `dialogs/` (selectors, approval/question panels, settings popups that replace the editor), `editor/` (input box + mention provider), `media/` (image, diff, code highlight), `messages/` (transcript blocks + tool-renderers), `panes/` (activity, queue). +- `src/tui/components/` — pi-tui components by UI type: `chrome/` (footer, todo, welcome, loader, device code), `dialogs/` (selectors, approval/question panels, settings popups that replace the editor), `editor/` (input box + mention provider), `media/` (image, diff, code highlight), `markdown/` (the app's Markdown wrapper and mermaid art), `messages/` (transcript blocks + tool-renderers), `panes/` (activity, queue). - `src/tui/reverse-rpc/` — adapts SDK approval/question callbacks into UI panel data and the user's choice back into an SDK response. - `src/tui/theme/` — themes, color tokens, style helpers, pi-tui markdown theme, terminal-background detection. The single source of truth for color. - `src/tui/utils/` — TUI-only utilities (need `TUIState` or a component). App-wide, UI-independent helpers go in `src/utils/`. diff --git a/.changeset/README.md b/.changeset/README.md index 38e368a52a..1155a0900c 100644 --- a/.changeset/README.md +++ b/.changeset/README.md @@ -15,7 +15,6 @@ Current publishable packages: All other workspace packages are private internal packages, are not published to npm, and are excluded via `ignore` in `.changeset/config.json`: -- `@moonshot-ai/kaos` - `@moonshot-ai/kimi-code-oauth` - `@moonshot-ai/kimi-telemetry` - `@moonshot-ai/kosong` @@ -100,23 +99,27 @@ Commit messages must follow Conventional Commit style. Do not include any author ### 4. CI generates the release PR -Once the changeset file is merged into `main`, `.github/workflows/release.yml` uses `changesets/action@v1` to create or update a release PR. +Changesets accumulate on `main`. Create `release/` from the selected commit; pushes to that branch use `changesets/action@v1` to create or update its release PR. Manual **Release** runs on a release branch only prepare the PR. The workflow explicitly dispatches CI for the generated version branch. The release PR runs: - `pnpm changeset version`: bumps publishable package versions and updates changelogs; - Deletes the consumed `.changeset/*.md` files; -- Uses the title `[CI]: Release packages`. +- Uses the title `ci: release packages`. ### 5. Merge the release PR -Once the release PR is merged into `main`, the same workflow runs: +Review the version PR, latest CI and CLI/extension pre-changelog together. Once the matching version PR is merged into `release/`, publication waits for that exact commit’s push CI. Ordinary pushes do not publish. The existing publication steps then run: - `pnpm install --frozen-lockfile` - `pnpm build` - `pnpm changeset publish` -The packages are then published via npm Trusted Publishing, and a GitHub Release is created. +The packages are then published via npm Trusted Publishing, and a GitHub Release is created. CLI native builds still depend on Changesets reporting a newly published CLI package; npm-succeeded/native-failed whole-run recovery is not changed by this migration. + +VS Code uses the same approved release commit and CI gate, publishing only when the extension version changed in that push. It retains its existing build and marketplace checks. It no longer publishes on main pushes or through a standalone manual entry. The documentation workflow is dispatched on main after CLI artifacts are uploaded; its deployment result is tracked separately. CDN remains manual. + +Migration: merge the main infrastructure PR first to disable the old publisher, then the release infrastructure PR. These PRs do not publish. Close the obsolete main version PR separately. After the actual release, synchronize versions, changelogs, lockfile and consumed changeset removals back to main, preserving later main work. Main synchronization does not publish npm or VS Code. Do not change Desktop's submodule pointer as part of this step. ## Manual Publishing (Not Recommended) @@ -141,7 +144,7 @@ The root-level `pnpm run publish` first runs typecheck, lint, sherif, test, buil - Every PR that affects publishable-package behavior or public API should include a corresponding changeset. - Changes under `plugins/` (the bundled official plugins such as `kimi-datasource`) do **not** need a changeset: each plugin carries its own version in `kimi.plugin.json` and `plugins/marketplace.json` and is distributed via the marketplace CDN, separately from the `@moonshot-ai/kimi-code` npm package. - Changeset files must be committed to the repository — release PRs are only triggered after they're merged. -- Release PRs require human review and merge; they will not publish automatically. +- Release PRs require human review and approval. They do not publish before merge; merging the approved PR automatically publishes after its commit passes CI. - Do not add release changesets for private internal packages; only select `@moonshot-ai/kimi-code` and `@moonshot-ai/kimi-code-sdk`. - If a change in an underlying internal package alters user-visible behavior or public API of a publishable package, add a changeset to the affected publishable package. For example, when a bug fixed in `@moonshot-ai/kosong` resolves an issue CLI users encounter, add a changeset to `@moonshot-ai/kimi-code` describing the user-visible fix. - `@moonshot-ai/kimi-code` is the official CLI package name; after a global install it provides the `kimi` command. diff --git a/.changeset/cancelled-question-history.md b/.changeset/cancelled-question-history.md new file mode 100644 index 0000000000..7a353b54da --- /dev/null +++ b/.changeset/cancelled-question-history.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix cancelled questions showing as answered in session history. diff --git a/.changeset/expand-live-thinking.md b/.changeset/expand-live-thinking.md new file mode 100644 index 0000000000..f07d462239 --- /dev/null +++ b/.changeset/expand-live-thinking.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": minor +--- + +Allow expanding thinking during streaming with Ctrl-O diff --git a/.changeset/expose-interaction-agent-id.md b/.changeset/expose-interaction-agent-id.md new file mode 100644 index 0000000000..63e52175a8 --- /dev/null +++ b/.changeset/expose-interaction-agent-id.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code-sdk": minor +--- + +Expose agent IDs in approval and question requests. diff --git a/.changeset/file-tree-symlink-directories.md b/.changeset/file-tree-symlink-directories.md new file mode 100644 index 0000000000..06d2ceb41c --- /dev/null +++ b/.changeset/file-tree-symlink-directories.md @@ -0,0 +1,6 @@ +--- +"@moonshot-ai/agent-core-v2": minor +"@moonshot-ai/kap-server": minor +--- + +Allow file listings to expose symlinked directories and optionally follow symlinks outside the workspace. diff --git a/.changeset/fix-compaction-prompt-cache-deferred-tools.md b/.changeset/fix-compaction-prompt-cache-deferred-tools.md new file mode 100644 index 0000000000..65d846b5b8 --- /dev/null +++ b/.changeset/fix-compaction-prompt-cache-deferred-tools.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix compaction missing the prompt cache when dynamically loaded MCP tools are enabled. diff --git a/.changeset/fix-first-turn-mcp-tools.md b/.changeset/fix-first-turn-mcp-tools.md new file mode 100644 index 0000000000..fa791adf7c --- /dev/null +++ b/.changeset/fix-first-turn-mcp-tools.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix missing dynamically loaded MCP tools in the first conversation turn. diff --git a/.changeset/fix-mcp-oauth-completion.md b/.changeset/fix-mcp-oauth-completion.md new file mode 100644 index 0000000000..966a5d8580 --- /dev/null +++ b/.changeset/fix-mcp-oauth-completion.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix MCP authorization completion being delayed by idle browser connections. diff --git a/.changeset/fix-prompt-swarm-mode.md b/.changeset/fix-prompt-swarm-mode.md new file mode 100644 index 0000000000..ce073b0439 --- /dev/null +++ b/.changeset/fix-prompt-swarm-mode.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix Swarm mode being ignored when submitting a prompt. diff --git a/.changeset/fix-web-csp-media-connect.md b/.changeset/fix-web-csp-media-connect.md new file mode 100644 index 0000000000..7a71bb6200 --- /dev/null +++ b/.changeset/fix-web-csp-media-connect.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix copying and saving data and blob images on non-loopback Web connections. diff --git a/.changeset/fix-web-csp-wasm-highlight.md b/.changeset/fix-web-csp-wasm-highlight.md new file mode 100644 index 0000000000..e8f6347724 --- /dev/null +++ b/.changeset/fix-web-csp-wasm-highlight.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix Shiki code highlighting on non-loopback Web connections. diff --git a/.changeset/fullscreen-dock-caps.md b/.changeset/fullscreen-dock-caps.md new file mode 100644 index 0000000000..64eb13a930 --- /dev/null +++ b/.changeset/fullscreen-dock-caps.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Keep fullscreen approval options visible while long requests scroll. diff --git a/.changeset/fullscreen-refocus-click-guard.md b/.changeset/fullscreen-refocus-click-guard.md new file mode 100644 index 0000000000..cb3442d209 --- /dev/null +++ b/.changeset/fullscreen-refocus-click-guard.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Stop clicks used to refocus the fullscreen terminal from activating controls, opening links, or moving the editor caret. diff --git a/.changeset/fullscreen-selector-mouse.md b/.changeset/fullscreen-selector-mouse.md new file mode 100644 index 0000000000..071b672709 --- /dev/null +++ b/.changeset/fullscreen-selector-mouse.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Add mouse selection to fullscreen approval, Settings, permission, and workspace trust dialogs, and fade the editor and waiting panels when they lose focus. diff --git a/.changeset/import-cc-codex-refresh.md b/.changeset/import-cc-codex-refresh.md new file mode 100644 index 0000000000..fc40bc9cad --- /dev/null +++ b/.changeset/import-cc-codex-refresh.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Update cross-tool imports for custom homes, instruction duplicate checks, project skills, and MCP settings; stop importing standalone `.claude/AGENTS.md`, project `.codex/AGENTS.md`, `.codex/CLAUDE.md`, and loose skill files, which can still be copied manually. diff --git a/.changeset/import-external-sessions.md b/.changeset/import-external-sessions.md new file mode 100644 index 0000000000..146b0b1baf --- /dev/null +++ b/.changeset/import-external-sessions.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": minor +--- + +Add `/import-sessions` and `kimi import-sessions` to import Claude Code and Codex sessions from the last 15 or 30 days. Run either one and choose a time range. diff --git a/.changeset/interaction-ws-event.md b/.changeset/interaction-ws-event.md new file mode 100644 index 0000000000..7baaf86809 --- /dev/null +++ b/.changeset/interaction-ws-event.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Replace the server's WebSocket `event.approval.*` and `event.question.*` events with a single flat `interaction` frame, and replace `POST /sessions/{id}/approvals/{id}`, `POST /sessions/{id}/questions/{id}` and `POST /sessions/{id}/questions/{id}:dismiss` with `POST /sessions/{id}/interactions/{id}`; the old events and endpoints, along with `GET /sessions/{id}/approvals` and `GET /sessions/{id}/questions`, are removed. diff --git a/.changeset/kap-session-idle-reclaim.md b/.changeset/kap-session-idle-reclaim.md new file mode 100644 index 0000000000..5170e7a38c --- /dev/null +++ b/.changeset/kap-session-idle-reclaim.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": minor +--- + +Sessions in web and desktop now unload from memory after 30 minutes idle and resume transparently on next access. diff --git a/.changeset/keep-media-recovery-across-turns.md b/.changeset/keep-media-recovery-across-turns.md new file mode 100644 index 0000000000..e0c9076cad --- /dev/null +++ b/.changeset/keep-media-recovery-across-turns.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Stop resending full-size images on every turn after the provider rejects them as too large or unsupported; later turns and compaction keep the reduced images until you switch models or the conversation history is rewritten. diff --git a/.changeset/mcp-reconnect-retry.md b/.changeset/mcp-reconnect-retry.md new file mode 100644 index 0000000000..0caadeaafc --- /dev/null +++ b/.changeset/mcp-reconnect-retry.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Reconnect workspace MCP servers automatically with backoff when the initial connection fails or the connection drops, so their tools come back on their own; tune the interval with `[mcp] reconnect_initial_delay_ms` and `reconnect_max_delay_ms`. diff --git a/.changeset/notify-user-transcript-card.md b/.changeset/notify-user-transcript-card.md new file mode 100644 index 0000000000..7995117e5d --- /dev/null +++ b/.changeset/notify-user-transcript-card.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Show NotifyUser updates in cards with an Update badge, streaming titles, and expandable messages. diff --git a/.changeset/osc7501-child-records.md b/.changeset/osc7501-child-records.md new file mode 100644 index 0000000000..fb10560eab --- /dev/null +++ b/.changeset/osc7501-child-records.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/pi-tui": minor +--- + +Support OSC 7501 child records and tmux passthrough for program-status reports. diff --git a/.changeset/pi-tui-refocus-mouse-guard.md b/.changeset/pi-tui-refocus-mouse-guard.md new file mode 100644 index 0000000000..205af6bea0 --- /dev/null +++ b/.changeset/pi-tui-refocus-mouse-guard.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/pi-tui": patch +--- + +Add an opt-in guard that ignores mouse-button gestures immediately after the terminal regains focus. diff --git a/.changeset/plan-mode-user-controlled.md b/.changeset/plan-mode-user-controlled.md new file mode 100644 index 0000000000..58a3851905 --- /dev/null +++ b/.changeset/plan-mode-user-controlled.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": minor +--- + +Plan mode now starts only when you turn it on, and every plan waits for your review: the agent can no longer enter Plan mode by itself, Never Ask no longer approves plans automatically, and `kimi -p` skips `default_plan_mode` and cannot approve the plan of a session that is already in Plan mode. diff --git a/.changeset/plan-option-descriptions.md b/.changeset/plan-option-descriptions.md new file mode 100644 index 0000000000..45f03395aa --- /dev/null +++ b/.changeset/plan-option-descriptions.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Show each option's description in the plan approval panel. diff --git a/.changeset/provider-refresh-command.md b/.changeset/provider-refresh-command.md new file mode 100644 index 0000000000..e10c318fb3 --- /dev/null +++ b/.changeset/provider-refresh-command.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": minor +--- + +Add `/provider refresh [providerId]` to re-fetch provider model lists at runtime; unknown `/provider` subcommands now show a usage hint instead of opening the manager. diff --git a/.changeset/quick-resume-long-sessions.md b/.changeset/quick-resume-long-sessions.md new file mode 100644 index 0000000000..79f7614a58 --- /dev/null +++ b/.changeset/quick-resume-long-sessions.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Speed up session resume for long conversations. diff --git a/.changeset/reclaim-idle-workspaces.md b/.changeset/reclaim-idle-workspaces.md new file mode 100644 index 0000000000..33c182d6d2 --- /dev/null +++ b/.changeset/reclaim-idle-workspaces.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix workspace resource leaks by releasing resources when no live sessions remain. diff --git a/.changeset/report-terminal-program-status.md b/.changeset/report-terminal-program-status.md new file mode 100644 index 0000000000..9d4a10481b --- /dev/null +++ b/.changeset/report-terminal-program-status.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": minor +--- + +Report main-session and subagent status to compatible terminals with OSC 7501, including pending interactions and retained results. diff --git a/.changeset/show-compacting-activity.md b/.changeset/show-compacting-activity.md new file mode 100644 index 0000000000..1129d3a090 --- /dev/null +++ b/.changeset/show-compacting-activity.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Show a Compacting spinner with working tips in the activity pane instead of the in-progress transcript card. diff --git a/.changeset/subagent-partial-output-on-stop.md b/.changeset/subagent-partial-output-on-stop.md new file mode 100644 index 0000000000..375304bc07 --- /dev/null +++ b/.changeset/subagent-partial-output-on-stop.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Pass the text a subagent wrote before it was stopped, timed out, or failed back to the parent agent, marked as incomplete. diff --git a/.changeset/sync-pi-tui-upstream.md b/.changeset/sync-pi-tui-upstream.md new file mode 100644 index 0000000000..eb9caae060 --- /dev/null +++ b/.changeset/sync-pi-tui-upstream.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/pi-tui": minor +--- + +Add terminal color utilities, program status reporting, and wheel acceleration, with upstream input and rendering fixes. diff --git a/.changeset/todo-transcript-card.md b/.changeset/todo-transcript-card.md new file mode 100644 index 0000000000..767d5630ac --- /dev/null +++ b/.changeset/todo-transcript-card.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Move todo lists into expandable transcript cards and remove the old input-area panel and `Ctrl-T` shortcut. diff --git a/.changeset/tool-result-truncation-surrogate-pair.md b/.changeset/tool-result-truncation-surrogate-pair.md new file mode 100644 index 0000000000..41f7754ba8 --- /dev/null +++ b/.changeset/tool-result-truncation-surrogate-pair.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix corrupted characters appearing in truncated tool results that contain emoji or other non-BMP characters. diff --git a/.changeset/tower-orchestration.md b/.changeset/tower-orchestration.md new file mode 100644 index 0000000000..0693ba86b3 --- /dev/null +++ b/.changeset/tower-orchestration.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": minor +--- + +Raise Tower's default agent concurrency limit from 16 to 256, support the existing `max_running_tasks` limit and per-spawn model selection, and reduce lock contention during inbox, review, and status processing. diff --git a/.changeset/update-cli-terminal-rendering.md b/.changeset/update-cli-terminal-rendering.md new file mode 100644 index 0000000000..440d6525db --- /dev/null +++ b/.changeset/update-cli-terminal-rendering.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix CJK autocomplete and Markdown rendering, keyboard handling, and fullscreen image rendering. diff --git a/.changeset/updates-panel.md b/.changeset/updates-panel.md new file mode 100644 index 0000000000..715f3e853f --- /dev/null +++ b/.changeset/updates-panel.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Add keyboard and mouse navigation to the experimental Updates panel, with clearer focus styling and a reading position that stays put; enable it with `KIMI_CODE_EXPERIMENTAL_NOTIFY_USER=1`. diff --git a/.changeset/wedged-turn-transcript-axis.md b/.changeset/wedged-turn-transcript-axis.md new file mode 100644 index 0000000000..bf83f162bb --- /dev/null +++ b/.changeset/wedged-turn-transcript-axis.md @@ -0,0 +1,5 @@ +--- +"@moonshot-ai/kimi-code": patch +--- + +Fix the conversation view freezing at an old point after restarting the app when a turn had been interrupted; interrupted turns are now marked instead of shown as completed. diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index eaa61a910a..33c85ffc9b 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -6,24 +6,40 @@ External PRs are accepted for approved bug fixes only: link an issue that a main See https://github.com/MoonshotAI/kimi-code/blob/main/CONTRIBUTING.md for more. --> -## Related Issue +## Requirement or Bug - + -Resolve #(issue_number) +## Bug Reproduction Steps -## Problem + - +## Root Cause -## What changed + - +## Code Changes + + + +## Behavior Changes and Affected Users + + ## Checklist - [ ] I have read the [CONTRIBUTING](https://github.com/MoonshotAI/kimi-code/blob/main/CONTRIBUTING.md) document. -- [ ] I have linked a related issue (external PRs: the issue must have a maintainer's `/approve`). +- [ ] I have linked a related issue (external PRs: issue must have a maintainer's `/approve`). - [ ] I have added tests that prove my feature works. +- [ ] The behavior-change table above is complete, and every removed behavior or flipped default is named in the changeset and either has an escape hatch or was explicitly approved by a maintainer in this PR. - [ ] Ran `gen-changesets` skill, or this PR needs no changeset. - [ ] Ran `gen-docs` skill, or this PR needs no doc update. diff --git a/.github/workflows/_native-build.yml b/.github/workflows/_native-build.yml index 483c58e419..ab3ac033ab 100644 --- a/.github/workflows/_native-build.yml +++ b/.github/workflows/_native-build.yml @@ -18,6 +18,21 @@ on: required: false type: boolean default: false + sign-windows: + description: 'Whether to sign Windows builds with Azure Artifact Signing (requires AZURE_* secrets and AZURE_TRUSTED_SIGNING_* variables)' + required: false + type: boolean + default: false + sha: + description: 'Commit to build; empty builds the triggering commit' + required: false + type: string + default: '' + version: + description: 'Override the CLI package version before building; empty keeps package.json' + required: false + type: string + default: '' secrets: APPLE_CERTIFICATE_P12: required: false @@ -29,6 +44,12 @@ on: required: false APPLE_NOTARIZATION_ISSUER_ID: required: false + AZURE_TENANT_ID: + required: false + AZURE_CLIENT_ID: + required: false + AZURE_CLIENT_SECRET: + required: false permissions: contents: read @@ -57,6 +78,8 @@ jobs: steps: - name: Checkout uses: actions/checkout@v6 + with: + ref: ${{ inputs.sha }} - name: Setup pnpm uses: pnpm/action-setup@v6 @@ -67,6 +90,14 @@ jobs: node-version-file: .nvmrc cache: 'pnpm' + - name: Override CLI version + if: inputs.version != '' + shell: bash + working-directory: apps/kimi-code + env: + VERSION: ${{ inputs.version }} + run: npm pkg set version="$VERSION" + - name: Install dependencies run: pnpm install --frozen-lockfile @@ -96,6 +127,14 @@ jobs: - name: Build native executable (local profile) if: '!(runner.os == ''macOS'' && inputs.sign-macos)' + env: + KIMI_AZURE_TRUSTED_SIGNING: ${{ runner.os == 'Windows' && inputs.sign-windows && 'true' || 'false' }} + AZURE_TRUSTED_SIGNING_ENDPOINT: ${{ vars.AZURE_TRUSTED_SIGNING_ENDPOINT }} + AZURE_TRUSTED_SIGNING_ACCOUNT_NAME: ${{ vars.AZURE_TRUSTED_SIGNING_ACCOUNT_NAME }} + AZURE_TRUSTED_SIGNING_CERTIFICATE_PROFILE_NAME: ${{ vars.AZURE_TRUSTED_SIGNING_CERTIFICATE_PROFILE_NAME }} + AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} + AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} + AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }} run: pnpm --filter @moonshot-ai/kimi-code run build:native:sea - name: Notarize macOS binary diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 636568d71d..23c75b57ae 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,11 +5,27 @@ on: push: branches: - main + - 'release/*' + + workflow_dispatch: permissions: contents: read +concurrency: + group: ci-${{ github.ref }}-${{ startsWith(github.ref, 'refs/heads/release/') && github.sha || '' }} + cancel-in-progress: ${{ !startsWith(github.ref, 'refs/heads/release/') }} + jobs: + release-workflow-tests: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + - uses: actions/setup-node@v6 + with: + node-version-file: .nvmrc + - run: node --test scripts/release-trigger.test.mjs scripts/dev-release.test.mjs + build: runs-on: ubuntu-latest @@ -141,10 +157,10 @@ jobs: - run: pnpm install --frozen-lockfile - name: Typecheck run: | - pnpm dlx --package @typescript/native-preview@beta tsgo --version + pnpm exec tsc --version for config in packages/*/tsconfig.json apps/kimi-code/tsconfig.json; do echo "Typechecking ${config}" - pnpm dlx --package @typescript/native-preview@beta tsgo -p "${config}" --noEmit + pnpm exec tsc -p "${config}" --noEmit done - name: Typecheck VS Code extension run: pnpm --filter kimi-code run typecheck diff --git a/.github/workflows/dev-release.yml b/.github/workflows/dev-release.yml new file mode 100644 index 0000000000..b111df056b --- /dev/null +++ b/.github/workflows/dev-release.yml @@ -0,0 +1,144 @@ +name: Dev Release +run-name: Dev Release (${{ inputs.trigger }}) · ${{ github.ref_name }} + +on: + workflow_dispatch: + inputs: + trigger: + description: 'Why this dev release is built' + type: choice + options: [nightly, manual] + default: manual + +concurrency: + group: kimi-code-dev-release + cancel-in-progress: false + +permissions: + contents: read + +jobs: + prepare: + if: github.repository_owner == 'MoonshotAI' + runs-on: ubuntu-latest + permissions: + contents: read + actions: read + outputs: + skip: ${{ steps.select.outputs.skip }} + sha: ${{ steps.select.outputs.sha }} + version: ${{ steps.version.outputs.version }} + tag: ${{ steps.version.outputs.tag }} + published_at: ${{ steps.version.outputs.published_at }} + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + - uses: actions/setup-node@v6 + with: + node-version-file: .nvmrc + - name: Check latest main commit + id: select + env: + GH_TOKEN: ${{ github.token }} + run: node scripts/dev-release.mjs select + - name: Compute dev version + id: version + if: steps.select.outputs.skip == 'false' + env: + GH_TOKEN: ${{ github.token }} + run: node scripts/dev-release.mjs version + + native: + name: Native dev artifact + needs: prepare + if: needs.prepare.outputs.skip == 'false' + uses: ./.github/workflows/_native-build.yml + with: + upload-artifact-prefix: kimi-code-dev + retention-days: 7 + sign-macos: true + sign-windows: true + sha: ${{ needs.prepare.outputs.sha }} + version: ${{ needs.prepare.outputs.version }} + secrets: + APPLE_CERTIFICATE_P12: ${{ secrets.APPLE_CERTIFICATE_P12 }} + APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }} + APPLE_NOTARIZATION_KEY_P8: ${{ secrets.APPLE_NOTARIZATION_KEY_P8 }} + APPLE_NOTARIZATION_KEY_ID: ${{ secrets.APPLE_NOTARIZATION_KEY_ID }} + APPLE_NOTARIZATION_ISSUER_ID: ${{ secrets.APPLE_NOTARIZATION_ISSUER_ID }} + AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} + AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} + AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }} + + publish: + name: Publish dev + needs: [prepare, native] + if: needs.prepare.outputs.skip == 'false' + runs-on: ubuntu-latest + permissions: + contents: write + id-token: write + env: + DEV_SHA: ${{ needs.prepare.outputs.sha }} + DEV_VERSION: ${{ needs.prepare.outputs.version }} + DEV_TAG: ${{ needs.prepare.outputs.tag }} + DEV_PUBLISHED_AT: ${{ needs.prepare.outputs.published_at }} + KIMI_CODE_DEV_NPM_PUBLISH: ${{ vars.KIMI_CODE_DEV_NPM_PUBLISH }} + steps: + - uses: actions/checkout@v6 + with: + ref: ${{ needs.prepare.outputs.sha }} + fetch-depth: 0 + - uses: pnpm/action-setup@v6 + - uses: actions/setup-node@v6 + with: + node-version-file: .nvmrc + cache: pnpm + registry-url: https://registry.npmjs.org + - name: Reject stale publish + run: node scripts/dev-release.mjs guard + - name: Publish to npm (dev dist-tag) + if: vars.KIMI_CODE_DEV_NPM_PUBLISH == 'true' + run: | + if npm view "@moonshot-ai/kimi-code@$DEV_VERSION" version >/dev/null 2>&1; then + echo "@moonshot-ai/kimi-code@$DEV_VERSION is already on npm" + exit 0 + fi + npm install -g npm@11 + pnpm install --frozen-lockfile + (cd apps/kimi-code && npm pkg set version="$DEV_VERSION") + CATALOG_FILE="$RUNNER_TEMP/kimi-code-built-in-catalog.json" + node apps/kimi-code/scripts/update-catalog.mjs --out "$CATALOG_FILE" + export KIMI_CODE_BUILT_IN_CATALOG_FILE="$CATALOG_FILE" + pnpm build + cd apps/kimi-code + pnpm publish --tag dev --access public --no-git-checks + - name: Download native artifacts + uses: actions/download-artifact@v8 + with: + pattern: kimi-code-dev-* + path: dist-dev + merge-multiple: true + - name: Produce manifest.json + run: node apps/kimi-code/scripts/native/produce-manifest.mjs dist-dev "$DEV_TAG" + - name: Write dev.json + run: | + mkdir -p "$RUNNER_TEMP/dev-release" + node scripts/dev-release.mjs record "$RUNNER_TEMP/dev-release" + cp "$RUNNER_TEMP/dev-release/dev.json" dist-dev/dev.json + - name: Publish GitHub prerelease + env: + GH_TOKEN: ${{ github.token }} + run: | + if gh release view "$DEV_TAG" >/dev/null 2>&1; then + gh release upload "$DEV_TAG" dist-dev/* --clobber + gh release edit "$DEV_TAG" --prerelease --latest=false --draft=false + else + gh release create "$DEV_TAG" dist-dev/* \ + --target "$DEV_SHA" \ + --title "$DEV_TAG" \ + --generate-notes \ + --prerelease \ + --latest=false + fi diff --git a/.github/workflows/manual-native-bundle.yml b/.github/workflows/manual-native-bundle.yml index 88bbf0d53b..a18319d08a 100644 --- a/.github/workflows/manual-native-bundle.yml +++ b/.github/workflows/manual-native-bundle.yml @@ -13,9 +13,13 @@ jobs: upload-artifact-prefix: kimi-code-native retention-days: 3 sign-macos: true + sign-windows: true secrets: APPLE_CERTIFICATE_P12: ${{ secrets.APPLE_CERTIFICATE_P12 }} APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }} APPLE_NOTARIZATION_KEY_P8: ${{ secrets.APPLE_NOTARIZATION_KEY_P8 }} APPLE_NOTARIZATION_KEY_ID: ${{ secrets.APPLE_NOTARIZATION_KEY_ID }} APPLE_NOTARIZATION_ISSUER_ID: ${{ secrets.APPLE_NOTARIZATION_ISSUER_ID }} + AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} + AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} + AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7b96653ed3..76d0733b4c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -2,16 +2,88 @@ name: Release on: push: - branches: - - main + branches: ['release/*'] + workflow_dispatch: -concurrency: ${{ github.workflow }}-${{ github.ref }} +concurrency: + group: release-${{ github.ref }}-${{ github.sha }} + cancel-in-progress: false jobs: + version: + if: github.repository_owner == 'MoonshotAI' && startsWith(github.ref, 'refs/heads/release/') + concurrency: + group: release-version-${{ github.ref }} + cancel-in-progress: false + runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write + actions: write + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 0 + - uses: pnpm/action-setup@v6 + - uses: actions/setup-node@v6 + with: + node-version-file: .nvmrc + cache: pnpm + - run: pnpm install --frozen-lockfile + - uses: changesets/action@v1 + id: version + with: + version: pnpm run version:release + commit: 'ci: release packages' + title: 'ci: release packages' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Check version PR + if: steps.version.outputs.pullRequestNumber != '' + env: + GH_TOKEN: ${{ github.token }} + VERSION_BRANCH: changeset-release/${{ github.ref_name }} + run: gh workflow run ci.yml --ref "$VERSION_BRANCH" + + candidate: + if: github.repository_owner == 'MoonshotAI' && github.event_name == 'push' && startsWith(github.ref, 'refs/heads/release/') + runs-on: ubuntu-latest + timeout-minutes: 60 + permissions: + contents: read + pull-requests: read + actions: read + checks: read + outputs: + publish: ${{ steps.trigger.outputs.publish }} + steps: + - uses: actions/checkout@v6 + with: + ref: ${{ github.sha }} + - uses: actions/setup-node@v6 + with: + node-version-file: .nvmrc + - name: Wait for merged version commit CI + id: trigger + env: + GH_TOKEN: ${{ github.token }} + run: node scripts/release-trigger.mjs + + vscode: + needs: candidate + if: needs.candidate.outputs.publish == 'true' + permissions: + contents: read + uses: ./.github/workflows/vscode-publish.yml + secrets: + VSCE_PAT: ${{ secrets.VSCE_PAT }} + OVSX_PAT: ${{ secrets.OVSX_PAT }} + release: name: Release runs-on: ubuntu-latest - if: github.repository_owner == 'MoonshotAI' + needs: candidate + if: needs.candidate.outputs.publish == 'true' outputs: packages_published: ${{ steps.changesets.outputs.published }} kimi_native_release: ${{ steps.kimi-release.outputs.should_publish }} @@ -71,16 +143,6 @@ jobs: env: CHANGESETS_PUBLISHED_PACKAGES: ${{ steps.changesets.outputs.publishedPackages }} - deploy-docs: - name: Deploy docs - needs: release - if: needs.release.outputs.packages_published == 'true' - uses: ./.github/workflows/docs-deploy.yml - permissions: - contents: read - pages: write - id-token: write - native-artifacts: name: Native release artifact needs: release @@ -90,12 +152,16 @@ jobs: upload-artifact-prefix: kimi-code-native retention-days: 7 sign-macos: true + sign-windows: true secrets: APPLE_CERTIFICATE_P12: ${{ secrets.APPLE_CERTIFICATE_P12 }} APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }} APPLE_NOTARIZATION_KEY_P8: ${{ secrets.APPLE_NOTARIZATION_KEY_P8 }} APPLE_NOTARIZATION_KEY_ID: ${{ secrets.APPLE_NOTARIZATION_KEY_ID }} APPLE_NOTARIZATION_ISSUER_ID: ${{ secrets.APPLE_NOTARIZATION_ISSUER_ID }} + AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} + AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} + AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }} publish-native-assets: name: Publish native release assets @@ -128,3 +194,15 @@ jobs: GH_TOKEN: ${{ github.token }} RELEASE_TAG: ${{ needs.release.outputs.kimi_release_tag }} run: gh release upload "$RELEASE_TAG" dist-native-release/* --clobber + + deploy-docs: + needs: publish-native-assets + runs-on: ubuntu-latest + permissions: + actions: write + steps: + - name: Deploy existing main documentation + env: + GH_TOKEN: ${{ github.token }} + GH_REPO: ${{ github.repository }} + run: gh workflow run docs-deploy.yml --ref main diff --git a/.github/workflows/vscode-publish.yml b/.github/workflows/vscode-publish.yml index 23b12e12f8..f7907a47c6 100644 --- a/.github/workflows/vscode-publish.yml +++ b/.github/workflows/vscode-publish.yml @@ -1,35 +1,16 @@ name: Publish VS Code extension -# 把 0.7.3 手动发版流程固化成 CI 流水线: -# -# pnpm install → package:platform(全 6 平台)→ package:verify -# → extension host 冒烟(xvfb)→ publish:vsix → publish:ovsx -# -# 触发语义(参照 kimi-code-app 仓 desktop release.yml 的判定方式): -# 只在"本次 push 改动了 apps/vscode/package.json 的 version"时发布, -# 即 changesets 版本 PR("ci: release packages")合入后自动触发; -# 普通 PR 合入不会改变版本号,不会发布。版本号比较以 push 事件的 -# before SHA 为基准(git show),可覆盖一次 push 含多个 commit 的情况, -# 不依赖工作区状态。workflow_dispatch 为手动兜底, -# 跳过版本号变化检查,直接走后续幂等闸门。 -# -# 幂等(两道保险,可安全重跑,失败即停不自动重试): -# 1. 发布前逐平台核验 VS Marketplace(vsce show)与 Open VSX(REST) -# 线上版本:6 个 targetPlatform(darwin/linux/win32 × x64/arm64) -# 全部在线才跳过对应发布步骤;任一平台缺失(如上次部分发布失败) -# 即放行给发布步骤补齐,重跑可补齐; -# 2. 发布脚本自身带 --skip-duplicate(vsce)/ already-exists 跳过(ovsx)。 -# -# 前置条件:仓库管理员需先配置 secrets VSCE_PAT / OVSX_PAT, -# 未配置时 publish 步骤会失败,属预期。 - on: - push: - branches: - - main - workflow_dispatch: + workflow_call: + secrets: + VSCE_PAT: + required: false + OVSX_PAT: + required: false -concurrency: ${{ github.workflow }}-${{ github.ref }} +concurrency: + group: vscode-publish-${{ github.ref }} + cancel-in-progress: false permissions: contents: read @@ -38,13 +19,14 @@ jobs: publish: name: Publish VSIX to marketplaces runs-on: ubuntu-latest - if: github.repository_owner == 'MoonshotAI' + if: github.repository_owner == 'MoonshotAI' && startsWith(github.ref, 'refs/heads/release/') timeout-minutes: 90 steps: - name: Checkout uses: actions/checkout@v6 with: - fetch-depth: 0 # 需要按 push 事件的 before SHA 取旧版本号比较 + ref: ${{ github.sha }} + fetch-depth: 0 - name: Setup pnpm uses: pnpm/action-setup@v6 @@ -62,7 +44,6 @@ jobs: id: gate shell: bash env: - EVENT_NAME: ${{ github.event_name }} BEFORE_SHA: ${{ github.event.before }} run: | set -euo pipefail @@ -71,27 +52,20 @@ jobs: echo "version=${version}" >> "$GITHUB_OUTPUT" echo "extension version: ${version}" - if [ "${EVENT_NAME}" = "workflow_dispatch" ]; then - echo "manual dispatch — skipping version-change check" + prev="" + if [ -n "${BEFORE_SHA}" ] && [ -n "${BEFORE_SHA//0/}" ]; then + if git show "${BEFORE_SHA}:${pkg}" > /tmp/prev-vscode-pkg.json 2> /dev/null; then + prev="$(node -p "require('/tmp/prev-vscode-pkg.json').version")" + fi else - # 以 push 事件的 before SHA 为比较基准(覆盖多 commit 的单次 push)。 - # before 为空或全 0(如新分支首推)时无法比较,prev 视为空 → - # 判定版本变化放行 —— 宁可多查一次线上闸门,不可漏发。 - prev="" - if [ -n "${BEFORE_SHA}" ] && [ -n "${BEFORE_SHA//0/}" ]; then - if git show "${BEFORE_SHA}:${pkg}" > /tmp/prev-vscode-pkg.json 2> /dev/null; then - prev="$(node -p "require('/tmp/prev-vscode-pkg.json').version")" - fi - else - echo "push event has no usable before SHA ('${BEFORE_SHA}') — treating as a version change" - fi - if [ "${prev}" = "${version}" ]; then - echo "apps/vscode version unchanged in this push (${version}) — nothing to publish" - echo "should_publish=false" >> "$GITHUB_OUTPUT" - exit 0 - fi - echo "version changed ${prev:-} -> ${version} — release push" + echo "push event has no usable before SHA ('${BEFORE_SHA}') — treating as a version change" fi + if [ "${prev}" = "${version}" ]; then + echo "apps/vscode version unchanged in this push (${version}) — nothing to publish" + echo "should_publish=false" >> "$GITHUB_OUTPUT" + exit 0 + fi + echo "version changed ${prev:-} -> ${version} — release push" echo "should_publish=true" >> "$GITHUB_OUTPUT" # 线上闸门:逐平台核验,6 个 targetPlatform 全部在线才跳过对应市场; diff --git a/AGENTS.md b/AGENTS.md index ca4068bbc1..50fa3c00a5 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -21,10 +21,10 @@ This is a TypeScript monorepo built for agent-assisted development. Keep the roo - `packages/agent-core-v2`: the DI × Scope agent engine (the v2 port behind kap-server). Four `LifecycleScope` tiers — `App` / `Workspace` / `Session` / `Agent` (`app/scopes.ts`) — plus the L3 unit layer (`Service`/`Fiber` units, collection contribution points, the Feature seam in `src/features/`); there is no App-level session lifecycle facade — callers compose `ISessionIndex` → `IWorkspaceLifecycleService.handlerFor` → the handler. - `packages/node-sdk`: the public TypeScript SDK and harness. - `packages/kosong`: the LLM / provider abstraction layer. -- `packages/kaos`: the execution environment and file/process abstractions. - `packages/oauth`: Kimi OAuth and managed auth utilities. - `packages/telemetry`: shared client-side telemetry infrastructure. - `packages/transcript`: the isomorphic transcript rendering data layer — L1 agent-granular store, L2 idempotent operations, L3 `off/turn/block/delta` subscription granularity, L4 framework-free view registry, plus turn-cursor pagination. Pure TypeScript (browser-safe, no engine imports); the sole owner of the transcript contract types (`src/contract/`) and the op-batch sequencing contract. +- `packages/session-import`: standalone Node.js conversion of external sessions into a single user message that carries the conversation, full effective-history attachments, and image references. It has no engine or UI dependency; callers provide the destination session attachment directory and context budget. - `packages/kap-server`: the Kimi Code server, backed by `@moonshot-ai/agent-core-v2`; exposes sessions over REST + WebSocket (`/api/v1` + `/api/v1/ws`), plus the `/api/v1/debug/*` reflection RPC surface (`--debug-endpoints`, loopback bind + bearer auth). - `packages/remote-control`: the Kimi Remote Control tunnel client — registers this machine with the relay and forwards HTTP/WebSocket traffic to the local server, with a machine-wide single-instance lock; consumed by kap-server (the `/api/v1/remote-control` toggle) and by the CLI (`kimi web --remote-control`). - `packages/klient`: the client SDK — a contract-driven facade over agent-core-v2 (`global.*` / `session(id).*` / `agent(id).*`, zod-validated); transport via subpath entry (`@moonshot-ai/klient/ipc|memory`, both return the same `Klient`); also hosts the e2e suites. See `packages/klient/AGENTS.md`. @@ -58,7 +58,6 @@ This is a TypeScript monorepo built for agent-assisted development. Keep the roo - Internal methods with only a single parameter should not be turned into options objects just for stylistic uniformity. - Split functions only along abstraction levels: each function reads as one level of narrative (Step-down Rule), and a wrapper that adds no new abstraction level — especially one with a single call site — is inlined instead of extracted. - Except for a package's `index.ts`, other `index.ts` files should prefer `export * from './module';`. -- When writing or updating tests, follow the `tdd` skill (`.agents/skills/tdd/SKILL.md`). - Do not add too many new test files. Prefer adding tests to the existing test file of the corresponding component or module. - When a test fails because of a user modification, default to fixing the test first; do not change the implementation to satisfy an old test unless the implementation truly has a bug. - Do not sacrifice code quality for external compatibility unless the user explicitly asks for it. Breaking changes go through changesets and a `major` bump, gated by the rule below. @@ -75,12 +74,17 @@ This is a TypeScript monorepo built for agent-assisted development. Keep the roo - Project-map entries stay at 1–2 sentences; deep package docs live in the package's own `AGENTS.md`. - Keep instruction updates focused and supported by code facts. +## Release Workflow + +- `main` accumulates changesets; `release/*` maintains `ci: release packages` PRs. Merging the matching version PR authorizes publication after its merge-commit CI succeeds. Ordinary pushes do not publish. +- npm publishing and native artifacts retain the existing Changesets flow. CDN upload and routing remain separately approved operations. See `.changeset/README.md` for migration and main synchronization. + ## Workflow Requirements - Prefer `rg` / `rg --files` when reading code. - When designing changes, follow existing boundaries and local patterns first. - In public text and test data, replace real internal identifiers with neutral placeholders such as `example.com`, `example.test`, and `YOUR_API_KEY`. Before opening a PR, ask a read-only agent to audit the diff for context-specific internal identifiers. -- When creating a PR, the PR title must follow Conventional Commit style, e.g. `chore: remove legacy format commands`. +- When creating a PR, use the `write-pr` skill (`.agents/skills/write-pr/SKILL.md`) to write the PR description. The PR title must follow Conventional Commit style, e.g. `chore: remove legacy format commands`. - When an AI agent opens or updates a PR, fill in `.github/pull_request_template.md` — link the related issue or explain the problem, then describe what changed. Do not leave placeholder text or submit a generic summary of the diff. - Do not submit vague AI-generated PR text. The human author must understand the change well enough to explain the code, edge cases, and why the approach fits this repository. - After finishing a task and before submitting a PR, you must run the `gen-changesets` skill (see `.agents/skills/gen-changesets/SKILL.md`) and generate a changeset under `.changeset/` according to its rules. @@ -91,3 +95,39 @@ This is a TypeScript monorepo built for agent-assisted development. Keep the roo - Agent working notes or handoff/summary documents (e.g. `HANDOVER-*.md`, `HANDOFF-*.md`, `handoff.md`). - Throwaway UI/UX prototypes or design mockups (e.g. `*-designs.html`, `*-mockup.html`, `*-demo(s).html`) at the repo root or under a `design/` folder. The only tracked `.html` files should be Vite `index.html` entrypoints. Before committing or opening a PR, run `git status` and `git diff --staged --stat` and remove anything matching these patterns. Put scratch work under `.tmp/` (gitignored) instead of the repo root or the source tree. + +## Code Review Rules + +These rules apply to every pull request review, automated or human. The user populations and contract files they refer to are listed in `.agents/skills/review-pr/surfaces.md`. + +### Review scope: the PR's diff, not the repo + +- Review only the PR's diff against its base. A problem in code the PR does not touch (pre-existing on base) is reported as a non-blocking note, never as a blocking finding — the sole exception is pre-existing code that the PR's behavior directly triggers or amplifies. +- Report a class of issues in one pass: when a finding generalizes to several locations in the diff, list all of them at once instead of raising them across successive rounds. +- No pure style or personal-preference findings. Every finding carries a severity: P0 blocking / P1 should-fix / P2 suggestion. +- Re-reviews are incremental: review only what changed since the previous review; do not restate findings on unchanged code or re-raise resolved threads. Before treating a resolved thread as settled, verify the current code: suppress a finding only when the problem is actually fixed or the finding no longer holds. +- Domain-specific rules keep their own canonical homes — changesets (`.agents/skills/gen-changesets/SKILL.md`), comment-free zones (General Coding Rules), PR text (`write-pr` skill); review against those, not ad-hoc taste. + +### Enumerate changed behavior, not just bugs + +Any input that worked before the change — a config key, env var, CLI flag, provider response shape, session written by an older version, client request, or hook payload — must behave the same after it unless the PR declares the change. For every deleted or narrowed branch, condition, default, or prompt sentence, ask who reached it before and where they go now; for every new condition, ask which existing inputs now match it first. Flag a PR that calls a path "unchanged" when its branch condition moved. + +### A flipped default or removed behavior needs a named loss and an escape hatch + +Everyone on the old default is affected. Require the changeset to name the behavior users lose, not only the new default; a config, env, or flag escape hatch or a maintainer's explicit sign-off in the PR; and a test that pins the old behavior for the population that keeps it. + +### Prompt text is behavior + +Editing or deleting sentences under `packages/agent-core-v2/src/**/*.md` (system prompt, tool descriptions, reminders, overlays, built-in skills) changes agent behavior for every user who receives that prompt. "No test references the sentence" is not evidence of no impact. Require the PR to name the population that receives the text (every session, plan mode, a flag-gated feature such as Tower), what the sentence enforced, who relied on it, and what enforces it now. + +### Contract files are tripwires + +The manifests under `packages/agent-core-v2/docs/` (`config-manifest.toml`, `wire-manifest.d.ts`, `state-manifest.d.ts`), `packages/kap-server/test/__snapshots__/apiSurface.snapshot.test.ts.snap`, `packages/node-sdk/src/index.ts`, `packages/agent-core-v2/src/features/externalHooks/`, `packages/acp-server/`, and `apps/kimi-code/src/cli/` are consumed outside this repository: desktop and web in code-app, the VS Code extension, ACP clients such as Zed, SDK users, hook scripts, and headless-output parsers. When they change, require the PR to name the consumers and how data and clients from the previous release keep working. + +### Ports and refactors carry the old path's feature inventory + +When a change replaces or bypasses an existing path, require a list of what the old path did — env vars honored, fallbacks, accepted inputs — and where each item lives in the new path. A silently dropped item is a regression, not a cleanup. + +### Silent failure outranks a crash + +A change that makes the product silently ignore configuration, silently approve or skip an action, or silently drop data is the most severe finding: users get no signal to report. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a5e50c7780..ca79376b27 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -30,7 +30,7 @@ This is a pnpm monorepo. The most relevant entry points are: - `apps/vis` — session debug visualizer - `packages/node-sdk` — public TypeScript SDK (`@moonshot-ai/kimi-code-sdk`) - `packages/agent-core-v2` — the agent engine (v2, DI Scope architecture); `packages/agent-core` is v1 and being phased out -- `packages/klient`, `kap-server`, `protocol`, `transcript`, `kosong`, `kaos`, `oauth`, `telemetry` — internal engine packages +- `packages/klient`, `kap-server`, `protocol`, `transcript`, `kosong`, `oauth`, `telemetry` — internal engine packages - `docs/` — VitePress bilingual docs site For the full project map, see [AGENTS.md](AGENTS.md). diff --git a/CONTRIBUTING.zh-CN.md b/CONTRIBUTING.zh-CN.md index 92ea4107b0..4d8df0ca38 100644 --- a/CONTRIBUTING.zh-CN.md +++ b/CONTRIBUTING.zh-CN.md @@ -30,7 +30,7 @@ Kimi Code 对 CLI/TUI 行为、agent 工作流和公开 API 已有自己的主 - `apps/vis` — 会话调试可视化工具 - `packages/node-sdk` — 公开 TypeScript SDK(`@moonshot-ai/kimi-code-sdk`) - `packages/agent-core-v2` — 当前的 agent 引擎(v2,DI Scope 架构);`packages/agent-core` 为 v1,正在逐步废弃 -- `packages/klient`、`kap-server`、`protocol`、`transcript`、`kosong`、`kaos`、`oauth`、`telemetry` — 内部引擎包 +- `packages/klient`、`kap-server`、`protocol`、`transcript`、`kosong`、`oauth`、`telemetry` — 内部引擎包 - `docs/` — VitePress 双语文档站 完整项目地图见 [AGENTS.md](AGENTS.md)。 diff --git a/apps/kimi-code/CHANGELOG.md b/apps/kimi-code/CHANGELOG.md index d982086072..596f14b296 100644 --- a/apps/kimi-code/CHANGELOG.md +++ b/apps/kimi-code/CHANGELOG.md @@ -1,5 +1,407 @@ # @moonshot-ai/kimi-code +## 2.3.3 + +### Patch Changes + +- [#4414](https://github.com/MoonshotAI/kimi-code/pull/4414) [`f36c127`](https://github.com/MoonshotAI/kimi-code/commit/f36c127ae10feb9cfd4cd2a44ddd9ddf585f9775) Thanks [@RealKai42](https://github.com/RealKai42)! - Stop showing a failed swarm for `AgentSwarm` calls rejected before any subagent starts, such as while swarm mode is off; after such a rejection, the agent points you to `/swarm` if you asked for a swarm. + +- [#4424](https://github.com/MoonshotAI/kimi-code/pull/4424) [`f895f30`](https://github.com/MoonshotAI/kimi-code/commit/f895f305cf05d371c73b93a7d5f1f55d05762013) Thanks [@liruifengv](https://github.com/liruifengv)! - Update model switch confirmation prompts. + +- [#4423](https://github.com/MoonshotAI/kimi-code/pull/4423) [`07a34fe`](https://github.com/MoonshotAI/kimi-code/commit/07a34fe92664c77fb5f3e17757f0e7e00e9a03d4) Thanks [@RealKai42](https://github.com/RealKai42)! - Show a high-usage warning when you turn on swarm mode with `/swarm`. + +- [#4432](https://github.com/MoonshotAI/kimi-code/pull/4432) [`be427e0`](https://github.com/MoonshotAI/kimi-code/commit/be427e0b2ab338b33f925b52e80e73696c397db4) Thanks [@RealKai42](https://github.com/RealKai42)! - Merge the two repeated permission-mode notice lines in the swarm and goal start confirmation prompts into one sentence each. + +- [#4443](https://github.com/MoonshotAI/kimi-code/pull/4443) [`60c888f`](https://github.com/MoonshotAI/kimi-code/commit/60c888f300ab02cbd2cc08a3f6769ca23712cb12) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - web: Improved interactions and fixed known bugs. + +## 2.3.2 + +### Patch Changes + +- [#4386](https://github.com/MoonshotAI/kimi-code/pull/4386) [`fd2e2c7`](https://github.com/MoonshotAI/kimi-code/commit/fd2e2c7e2a3672dda91365d66b2ba74a1630521e) Thanks [@RealKai42](https://github.com/RealKai42)! - Handle tasks directly by default instead of proactively launching subagents; request delegation explicitly in your message, AGENTS.md, a skill, or an enabled multi-agent mode. + +- [#4384](https://github.com/MoonshotAI/kimi-code/pull/4384) [`c9a4836`](https://github.com/MoonshotAI/kimi-code/commit/c9a48369843fdee1b494b9d49b1f4b3aeee73497) Thanks [@RealKai42](https://github.com/RealKai42)! - Agent swarms now start only when you turn on swarm mode: the agent can no longer launch `AgentSwarm` by itself, so swarms are no longer available in `kimi -p` or ACP clients such as Zed. + +## 2.3.1 + +### Patch Changes + +- [#4348](https://github.com/MoonshotAI/kimi-code/pull/4348) [`c569bab`](https://github.com/MoonshotAI/kimi-code/commit/c569bab55d4d510b09f01205d760001d16117aff) Thanks [@liruifengv](https://github.com/liruifengv)! - Fix workspace trust failures when Git Bash is unavailable on Windows. + +- [#4348](https://github.com/MoonshotAI/kimi-code/pull/4348) [`c569bab`](https://github.com/MoonshotAI/kimi-code/commit/c569bab55d4d510b09f01205d760001d16117aff) Thanks [@liruifengv](https://github.com/liruifengv)! - Fix sessions occasionally remaining occupied after an application crash on macOS and Linux. + +- [#4356](https://github.com/MoonshotAI/kimi-code/pull/4356) [`0e3980e`](https://github.com/MoonshotAI/kimi-code/commit/0e3980e75e9af9d28955a5e93cff82d616b11353) Thanks [@7Sageer](https://github.com/7Sageer)! - Show the holding client's name in session-in-use errors. + +- [#4348](https://github.com/MoonshotAI/kimi-code/pull/4348) [`c569bab`](https://github.com/MoonshotAI/kimi-code/commit/c569bab55d4d510b09f01205d760001d16117aff) Thanks [@liruifengv](https://github.com/liruifengv)! - Offer to take over a session that is still in use after a retry, so sessions left locked by an exited process can be used again, and add a `KIMI_CODE_SESSION_LOCK=0` switch that turns off the session lock. + +- [#4348](https://github.com/MoonshotAI/kimi-code/pull/4348) [`c569bab`](https://github.com/MoonshotAI/kimi-code/commit/c569bab55d4d510b09f01205d760001d16117aff) Thanks [@liruifengv](https://github.com/liruifengv)! - web: Improved interactions and fixed known bugs. + +## 2.3.0 + +### Minor Changes + +- [#4294](https://github.com/MoonshotAI/kimi-code/pull/4294) [`3f80896`](https://github.com/MoonshotAI/kimi-code/commit/3f80896a79c5b17867898bd829b6d7a78f569f47) Thanks [@liruifengv](https://github.com/liruifengv)! - Add a confirmation dialog when switching models in a session with conversation history: start a new session, compact and continue, continue directly, or cancel. Shown only when enabled by cloud configuration. + +- [#4188](https://github.com/MoonshotAI/kimi-code/pull/4188) [`3f0857e`](https://github.com/MoonshotAI/kimi-code/commit/3f0857eb7d612c4890c45dfa6acc8381f1e761c2) Thanks [@oocz](https://github.com/oocz)! - List plugin skills under their qualified `:` name so same-named skills from different plugins all stay visible and invocable; invoking a plugin skill by its bare name no longer works, use the qualified name instead. + +- [#4214](https://github.com/MoonshotAI/kimi-code/pull/4214) [`ef727e5`](https://github.com/MoonshotAI/kimi-code/commit/ef727e517923cb312cb48d42825c49dfacd528e7) Thanks [@sailist](https://github.com/sailist)! - Support streaming large requests and responses through remote control, raising the transfer limit from 10 MiB to 100 MiB, with concurrent transfers bounded to protect memory. + +- [#4288](https://github.com/MoonshotAI/kimi-code/pull/4288) [`df0ff3c`](https://github.com/MoonshotAI/kimi-code/commit/df0ff3c5492e8f896927c4af9b4ae00b2b488607) Thanks [@github-actions](https://github.com/apps/github-actions)! - When the same session is open in multiple clients, sending from a second one now shows an occupancy prompt with retry/cancel, or reloads updates made elsewhere first and resends your message. + +- [#4200](https://github.com/MoonshotAI/kimi-code/pull/4200) [`5bab748`](https://github.com/MoonshotAI/kimi-code/commit/5bab748dddaae4b2ac15822d72b83446e5fd7bf4) Thanks [@7Sageer](https://github.com/7Sageer)! - Automatically generate a session title after the first turn and show it as the terminal window title. + +### Patch Changes + +- [#4250](https://github.com/MoonshotAI/kimi-code/pull/4250) [`6e7cc90`](https://github.com/MoonshotAI/kimi-code/commit/6e7cc909da9084a424f822dd5a9aae5b98070b73) Thanks [@sailist](https://github.com/sailist)! - Setting `[permission] dangerous_command_guard = false` now turns off every built-in confirmation guard — dangerous commands, sensitive-file access, and git control-path access — instead of only the dangerous-command guard. + +- [#4281](https://github.com/MoonshotAI/kimi-code/pull/4281) [`5710c54`](https://github.com/MoonshotAI/kimi-code/commit/5710c5496a213742ca0687f69dd8eeb5bde52dbf) Thanks [@sailist](https://github.com/sailist)! - Fix session events stopping after a session is archived and restored. + +- [#4201](https://github.com/MoonshotAI/kimi-code/pull/4201) [`83a39b4`](https://github.com/MoonshotAI/kimi-code/commit/83a39b49ed62627c7a604b39e26d8e9d17ade296) Thanks [@Grapedge](https://github.com/Grapedge)! - Stop blocking the terminal while the footer reads git status. + +- [#4230](https://github.com/MoonshotAI/kimi-code/pull/4230) [`b260326`](https://github.com/MoonshotAI/kimi-code/commit/b2603264ec4687cee766cf5d5e6d4976e432961c) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - Report a clear error when thinking effort is set to off for Gemini 4 models. + +- [#4208](https://github.com/MoonshotAI/kimi-code/pull/4208) [`20b5991`](https://github.com/MoonshotAI/kimi-code/commit/20b59915bb11fc56ec389aa96720f1b7daac0862) Thanks [@SeleneXX](https://github.com/SeleneXX)! - Fix Gemini 4 requests always failing with a 400 error. + +- [#4242](https://github.com/MoonshotAI/kimi-code/pull/4242) [`c1459a6`](https://github.com/MoonshotAI/kimi-code/commit/c1459a61845056832b85a0a220ee11a2bc5132f8) Thanks [@wbxl2000](https://github.com/wbxl2000)! - Run hooks such as `PreToolUse` and `Stop` in the session's project directory, as documented, instead of the directory the server was started from. + +- [#4210](https://github.com/MoonshotAI/kimi-code/pull/4210) [`f28c51c`](https://github.com/MoonshotAI/kimi-code/commit/f28c51c01f025bba9f0d0f58f6309e7517a8cd02) Thanks [@sailist](https://github.com/sailist)! - Add the [mcp] default_deferred config key: when the experimental tool-select flag is on, set default_deferred = true in config.toml to load every MCP server's tools on demand by default; a server can opt out with deferred: false. + +- [#4171](https://github.com/MoonshotAI/kimi-code/pull/4171) [`0327e8e`](https://github.com/MoonshotAI/kimi-code/commit/0327e8e9a875949fd40141ef79f902d756dfd3db) Thanks [@7Sageer](https://github.com/7Sageer)! - Support custom-registry model upgrade metadata in model configuration. + +- [#4188](https://github.com/MoonshotAI/kimi-code/pull/4188) [`3f0857e`](https://github.com/MoonshotAI/kimi-code/commit/3f0857eb7d612c4890c45dfa6acc8381f1e761c2) Thanks [@oocz](https://github.com/oocz)! - Allow uppercase letters, dot-separated segments, and @ suffixes in plugin names when installing plugins. + +- [#4294](https://github.com/MoonshotAI/kimi-code/pull/4294) [`3f80896`](https://github.com/MoonshotAI/kimi-code/commit/3f80896a79c5b17867898bd829b6d7a78f569f47) Thanks [@liruifengv](https://github.com/liruifengv)! - Queue /compact while the agent is busy: the command now joins the message queue and runs in order instead of failing with an error; it is skipped if the context was auto-compacted while it waited. + +- [#4190](https://github.com/MoonshotAI/kimi-code/pull/4190) [`e4c99a3`](https://github.com/MoonshotAI/kimi-code/commit/e4c99a3bad19b00bd1939b1cf254f427b50061f0) Thanks [@starquakee](https://github.com/starquakee)! - Clarify unavailable tools, announce when no tools can be loaded, and discourage repeated failed tool selections. + +- [#4272](https://github.com/MoonshotAI/kimi-code/pull/4272) [`ce0834a`](https://github.com/MoonshotAI/kimi-code/commit/ce0834a8f301b89cc4523499a3e074c36851de8f) Thanks [@Grapedge](https://github.com/Grapedge)! - Move the session rating opt-out from tui.toml to config.toml. + +- [#4066](https://github.com/MoonshotAI/kimi-code/pull/4066) [`85077a4`](https://github.com/MoonshotAI/kimi-code/commit/85077a419001285e49ede3574924f001935aed62) Thanks [@7Sageer](https://github.com/7Sageer)! - Keep subagent tool descriptions aligned with currently available tools. + +- [#3799](https://github.com/MoonshotAI/kimi-code/pull/3799) [`7e58f2d`](https://github.com/MoonshotAI/kimi-code/commit/7e58f2d2410d2b541ffd57f4501c0436bba4ccbd) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - Fix the latest reply disappearing from the transcript after a background task completion notification arrives; the fold boundary is now anchored to the notification turn itself instead of the asynchronously mounted task card. + +- [#4239](https://github.com/MoonshotAI/kimi-code/pull/4239) [`da5918c`](https://github.com/MoonshotAI/kimi-code/commit/da5918c0c861a1d670f4523a9f9dd968647fe4cb) Thanks [@RealKai42](https://github.com/RealKai42)! - Remind the agent to update its todo list after 5 steps without an update instead of 10, only while the list still has unfinished items, and ask it to bring the list up to date before its final reply. + +- [#4248](https://github.com/MoonshotAI/kimi-code/pull/4248) [`8fcd332`](https://github.com/MoonshotAI/kimi-code/commit/8fcd3326e7488e5e0d4c595115ef74a10c340d5b) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - Show a single overflowing preview line in full instead of swapping it for a same-height expand hint. + +- [#4304](https://github.com/MoonshotAI/kimi-code/pull/4304) [`d36071e`](https://github.com/MoonshotAI/kimi-code/commit/d36071ede6ae3cbdc08cbb8a0f7daf7bc6d06f2d) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - web: Improved interactions and fixed known bugs. + +## 2.2.0 + +### Minor Changes + +- [#4159](https://github.com/MoonshotAI/kimi-code/pull/4159) [`0a3a2fb`](https://github.com/MoonshotAI/kimi-code/commit/0a3a2fbafab473df9e9f6609f825af78d2c1ce6d) Thanks [@RealKai42](https://github.com/RealKai42)! - Add an opt-in NotifyUser progress update feature (off by default): new sessions can show the agent's mid-turn progress with an optional one-line title, enabled in the TUI `/experiments` or the web/Desktop settings' Lab section; set `[experimental] notify_user = true` or `KIMI_CODE_EXPERIMENTAL_NOTIFY_USER=1` to turn it on. + +- [#4145](https://github.com/MoonshotAI/kimi-code/pull/4145) [`242ac23`](https://github.com/MoonshotAI/kimi-code/commit/242ac230006447f8601e1678c49182bfbae89fe9) Thanks [@wbxl2000](https://github.com/wbxl2000)! - Add `kimi app [path]` to open a new desktop chat in the current or specified directory. + +- [#4061](https://github.com/MoonshotAI/kimi-code/pull/4061) [`20a2cea`](https://github.com/MoonshotAI/kimi-code/commit/20a2cea72f5d2c4be3a3845e4ff24ce302a6630e) Thanks [@chengluyu](https://github.com/chengluyu)! - Cap the agent's in-turn wait for background tasks at 90 seconds (longer timeouts are no longer accepted), discourage repeated waits, and let a new message end the wait immediately. + +- [#3998](https://github.com/MoonshotAI/kimi-code/pull/3998) [`09af3b4`](https://github.com/MoonshotAI/kimi-code/commit/09af3b483faac51a767aee50adb1bc1a8de4cc53) Thanks [@tpoisonooo](https://github.com/tpoisonooo)! - Tower mode: a message sent while the agent is running aborts the in-progress turn and runs as its own turn. + +- [#4031](https://github.com/MoonshotAI/kimi-code/pull/4031) [`33e368a`](https://github.com/MoonshotAI/kimi-code/commit/33e368a1eff8d958856af8e2fb64f4db122b2247) Thanks [@Grapedge](https://github.com/Grapedge)! - Add sticky user message summaries in fullscreen mode; click a summary to jump to the original message. + +- [#4074](https://github.com/MoonshotAI/kimi-code/pull/4074) [`c9f01f0`](https://github.com/MoonshotAI/kimi-code/commit/c9f01f07388abc2cdca40c9c5267f58c65086710) Thanks [@tpoisonooo](https://github.com/tpoisonooo)! - Tower mode: deterministic orchestration with TowerRebase and LLM-free status, goal/tower mutual exclusion, and workspace protection. + +- [#4059](https://github.com/MoonshotAI/kimi-code/pull/4059) [`1f6f0b1`](https://github.com/MoonshotAI/kimi-code/commit/1f6f0b1fa2117cc9374c1be62c534b4a4d60e412) Thanks [@7Sageer](https://github.com/7Sageer)! - Add the KIMI_CODE_TRUST_WORKSPACE environment variable to mark the workspace as trusted. + +- [#4165](https://github.com/MoonshotAI/kimi-code/pull/4165) [`afd95f6`](https://github.com/MoonshotAI/kimi-code/commit/afd95f64a5444b649a4cc33504513bf88e4c54ba) Thanks [@Grapedge](https://github.com/Grapedge)! - Replace user skill cards with highlighted prompts and support Ctrl-S for skill prompts. + +### Patch Changes + +- [#4183](https://github.com/MoonshotAI/kimi-code/pull/4183) [`c15638b`](https://github.com/MoonshotAI/kimi-code/commit/c15638b0a1234e5aa97659fbc625d7dc4d60d93f) Thanks [@RealKai42](https://github.com/RealKai42)! - Cancel in-flight video uploads when a media read is interrupted. + +- [#4081](https://github.com/MoonshotAI/kimi-code/pull/4081) [`06ebfc8`](https://github.com/MoonshotAI/kimi-code/commit/06ebfc821e304bd4ca3f828ae739954166463d65) Thanks [@sailist](https://github.com/sailist)! - Fix shifted turns and lost replies when a UserPromptSubmit hook injects text; hook JSON output without a "message" field is no longer added to the conversation. + +- [#4154](https://github.com/MoonshotAI/kimi-code/pull/4154) [`419aced`](https://github.com/MoonshotAI/kimi-code/commit/419aced0e97fa04b75f8f71b089e1667f6de6d0a) Thanks [@7Sageer](https://github.com/7Sageer)! - Fix media file reading on the first turn after resuming a session. + +- [#4083](https://github.com/MoonshotAI/kimi-code/pull/4083) [`f409caa`](https://github.com/MoonshotAI/kimi-code/commit/f409caa21e71ce7beb158d29ffca1fed76216a64) Thanks [@sailist](https://github.com/sailist)! - Cron tasks from the source session no longer fire inside a forked session. + +- [#4152](https://github.com/MoonshotAI/kimi-code/pull/4152) [`f0bc988`](https://github.com/MoonshotAI/kimi-code/commit/f0bc988bbc7db08d650f37ae0eaa69bcc6e90696) Thanks [@7Sageer](https://github.com/7Sageer)! - Forked subagents now inherit the parent's available agent types, including custom agents. + +- [#4057](https://github.com/MoonshotAI/kimi-code/pull/4057) [`a940f2f`](https://github.com/MoonshotAI/kimi-code/commit/a940f2ff049ed57abce68c59526de7a6628a4112) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Fix the permission mode switch in the goal-start approval prompt not taking effect on the v2 engine. + +- [#4081](https://github.com/MoonshotAI/kimi-code/pull/4081) [`06ebfc8`](https://github.com/MoonshotAI/kimi-code/commit/06ebfc821e304bd4ca3f828ae739954166463d65) Thanks [@sailist](https://github.com/sailist)! - Fix messages rendering out of place in sessions with a UserPromptSubmit hook. + +- [#4153](https://github.com/MoonshotAI/kimi-code/pull/4153) [`7091138`](https://github.com/MoonshotAI/kimi-code/commit/7091138f5e66289d04b9b7a5cd77f94af9308be3) Thanks [@RealKai42](https://github.com/RealKai42)! - Let the agent write one- or two-sentence progress notes between tool calls instead of bare status lines; in the experimental Updates panel (`KIMI_CODE_EXPERIMENTAL_NOTIFY_USER=1`), stop asking the agent to repost its mid-turn text as an update and remind it to post updates less often. + +- [#4054](https://github.com/MoonshotAI/kimi-code/pull/4054) [`4fbe065`](https://github.com/MoonshotAI/kimi-code/commit/4fbe065442179435c43d3c3dc8d11bb408b3fd30) Thanks [@RealKai42](https://github.com/RealKai42)! - Stop prompting the agent to send NotifyUser updates when a session is opened in a host that does not display them. + +- [#4091](https://github.com/MoonshotAI/kimi-code/pull/4091) [`21406fb`](https://github.com/MoonshotAI/kimi-code/commit/21406fb4c805cc8c715e6d1f16ad3fb5f25f4fe3) Thanks [@sailist](https://github.com/sailist)! - Omit max_tokens for models without an explicit output limit, fixing repeated 400 errors on strict serving stacks (e.g. bare vLLM) when the model's max output size is unknown. + +- [#4184](https://github.com/MoonshotAI/kimi-code/pull/4184) [`cbd7540`](https://github.com/MoonshotAI/kimi-code/commit/cbd754049a114ee36d1b27675c82819e4963c692) Thanks [@7Sageer](https://github.com/7Sageer)! - Remove the never-implemented `executor = "kaos"` option from MCP stdio server configuration; configs using it now fail validation at load time. + +- [#2919](https://github.com/MoonshotAI/kimi-code/pull/2919) [`0f052fe`](https://github.com/MoonshotAI/kimi-code/commit/0f052fee1399f34086bb6343a56867d7df9b70b5) Thanks [@duyphan154](https://github.com/duyphan154)! - Sanitize foreground Bash tool output so captured terminal escape sequences no longer change the host terminal state. + +- [#4164](https://github.com/MoonshotAI/kimi-code/pull/4164) [`3395f5b`](https://github.com/MoonshotAI/kimi-code/commit/3395f5bea6c77feb6a835d1ca3f4935970f96c6b) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Show a "Shutting down" status hint while shutdown hooks run during exit, and let a Ctrl+C during that window force an immediate exit instead of waiting for the hook timeout. + +- [#4033](https://github.com/MoonshotAI/kimi-code/pull/4033) [`eec9bbd`](https://github.com/MoonshotAI/kimi-code/commit/eec9bbd94958248034f5dbf109a639970308f05e) Thanks [@Grapedge](https://github.com/Grapedge)! - Feedback surveys now appear less often. + +- [#4160](https://github.com/MoonshotAI/kimi-code/pull/4160) [`72fc1d0`](https://github.com/MoonshotAI/kimi-code/commit/72fc1d0a3375b2a87dff602a1d91726a99f360e0) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - Show "Working…" in the status spinner while thinking. + +- [#4056](https://github.com/MoonshotAI/kimi-code/pull/4056) [`395d537`](https://github.com/MoonshotAI/kimi-code/commit/395d537237d737de0239159b60d1cc160bdf04e6) Thanks [@7Sageer](https://github.com/7Sageer)! - Replace inline MCP commands in the workspace trust prompt with activation summaries and configuration paths for manual inspection. + +- [#4076](https://github.com/MoonshotAI/kimi-code/pull/4076) [`e3bf50c`](https://github.com/MoonshotAI/kimi-code/commit/e3bf50c0831d91ceb3656acf1b7a3f480eaada56) Thanks [@7Sageer](https://github.com/7Sageer)! - Remove interruption reminders from the conversation when their interrupted turns are undone. + +- [#4031](https://github.com/MoonshotAI/kimi-code/pull/4031) [`33e368a`](https://github.com/MoonshotAI/kimi-code/commit/33e368a1eff8d958856af8e2fb64f4db122b2247) Thanks [@Grapedge](https://github.com/Grapedge)! - Replace the user message bullet ✨ with ❯. + +- [#4221](https://github.com/MoonshotAI/kimi-code/pull/4221) [`2e6821d`](https://github.com/MoonshotAI/kimi-code/commit/2e6821dcbd8034f128b2326a73d4704201b7c108) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - web: Improved interactions and fixed known bugs. + +## 2.1.1 + +### Patch Changes + +- [#4013](https://github.com/MoonshotAI/kimi-code/pull/4013) [`929403b`](https://github.com/MoonshotAI/kimi-code/commit/929403b6db219eae6099dd23eae2f0efa2bb2823) Thanks [@7Sageer](https://github.com/7Sageer)! - Roll back some of the overly defensive changes in 2.1.0 + +- [#4015](https://github.com/MoonshotAI/kimi-code/pull/4015) [`c7dd841`](https://github.com/MoonshotAI/kimi-code/commit/c7dd84124a00d2dc1a68fbbc3e54b1095ee9ac23) Thanks [@sailist](https://github.com/sailist)! - Revert filesystem watchers for config and workspace files to on by default. Set `[watch] enabled` to `false` or `KIMI_CODE_WATCH=0` to keep them off. + +## 2.1.0 + +### Minor Changes + +- [#3990](https://github.com/MoonshotAI/kimi-code/pull/3990) [`32000d0`](https://github.com/MoonshotAI/kimi-code/commit/32000d08afcd019016fa60db0d68eaf21f3e35a6) Thanks [@Grapedge](https://github.com/Grapedge)! - In fullscreen, click a folded block to open or close it. + +- [#4004](https://github.com/MoonshotAI/kimi-code/pull/4004) [`e17ff67`](https://github.com/MoonshotAI/kimi-code/commit/e17ff679281e340fd328bc2ebaba1237e79a9ad3) Thanks [@Grapedge](https://github.com/Grapedge)! - Add a TUI mode setting to /settings with an experimental fullscreen layout; switching modes takes effect after restarting Kimi Code. You can also set `tui_mode` in `~/.kimi-code/tui.toml` directly: `"regular"` renders into the terminal scrollback, while `"fullscreen"` makes parts of the UI mouse-interactive for a smoother experience. + +### Patch Changes + +- [#3964](https://github.com/MoonshotAI/kimi-code/pull/3964) [`6451f1e`](https://github.com/MoonshotAI/kimi-code/commit/6451f1e056e90037bbf832f3578955cf8e55db64) Thanks [@7Sageer](https://github.com/7Sageer)! - Block file tools from accessing files outside the working directory through symlinks. + +- [#3975](https://github.com/MoonshotAI/kimi-code/pull/3975) [`bb96d80`](https://github.com/MoonshotAI/kimi-code/commit/bb96d80748921618182369a40a6610f38fa16acb) Thanks [@RealKai42](https://github.com/RealKai42)! - Reduce the CLI's startup time and memory usage. + +- [#3957](https://github.com/MoonshotAI/kimi-code/pull/3957) [`6a214b8`](https://github.com/MoonshotAI/kimi-code/commit/6a214b85e53e58a9ef6480f27bcb7b0103c0e34e) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Fix a "Maximum call stack size exceeded" error when opening large sessions. + +- [#3974](https://github.com/MoonshotAI/kimi-code/pull/3974) [`994287a`](https://github.com/MoonshotAI/kimi-code/commit/994287acb3a7428b580c09cabd5aba1b5a818aaa) Thanks [@liruifengv](https://github.com/liruifengv)! - Fix forked sessions getting their titles overwritten by auto-generated titles. + +- [#3964](https://github.com/MoonshotAI/kimi-code/pull/3964) [`6451f1e`](https://github.com/MoonshotAI/kimi-code/commit/6451f1e056e90037bbf832f3578955cf8e55db64) Thanks [@7Sageer](https://github.com/7Sageer)! - Apply project-local configuration only after the workspace is trusted. + +- [#3964](https://github.com/MoonshotAI/kimi-code/pull/3964) [`6451f1e`](https://github.com/MoonshotAI/kimi-code/commit/6451f1e056e90037bbf832f3578955cf8e55db64) Thanks [@7Sageer](https://github.com/7Sageer)! - Block repository git configuration from executing commands during background git operations. + +- [#3969](https://github.com/MoonshotAI/kimi-code/pull/3969) [`b3212fd`](https://github.com/MoonshotAI/kimi-code/commit/b3212fd9abc1f4670fb47df16f0137957aed6f2d) Thanks [@sailist](https://github.com/sailist)! - Skip cloud telemetry on the global login until its collector is live, and keep shutdown from aborting TUI exit. + +- [#3979](https://github.com/MoonshotAI/kimi-code/pull/3979) [`e796bb5`](https://github.com/MoonshotAI/kimi-code/commit/e796bb5d482ecb7976c25dad0563b74cc9ec2c68) Thanks [@sailist](https://github.com/sailist)! - Fix MCP OAuth not requesting the offline_access scope, which caused hourly browser re-authorization with providers like Vercel. + +- [#3969](https://github.com/MoonshotAI/kimi-code/pull/3969) [`b3212fd`](https://github.com/MoonshotAI/kimi-code/commit/b3212fd9abc1f4670fb47df16f0137957aed6f2d) Thanks [@sailist](https://github.com/sailist)! - Fix Remote Control failing to start after `kimi login --region global`. + +- [#3964](https://github.com/MoonshotAI/kimi-code/pull/3964) [`6451f1e`](https://github.com/MoonshotAI/kimi-code/commit/6451f1e056e90037bbf832f3578955cf8e55db64) Thanks [@7Sageer](https://github.com/7Sageer)! - Reject additional directories that resolve to the home directory or filesystem root. + +- [#3995](https://github.com/MoonshotAI/kimi-code/pull/3995) [`a54e6f6`](https://github.com/MoonshotAI/kimi-code/commit/a54e6f6a9b36bc1346e41da576d96ff54aa557b6) Thanks [@7Sageer](https://github.com/7Sageer)! - Turn off repeat reminders and forced stops with `KIMI_CODE_REPEAT_BREAKER=0`. + +- [#3970](https://github.com/MoonshotAI/kimi-code/pull/3970) [`895e9d9`](https://github.com/MoonshotAI/kimi-code/commit/895e9d9b868cf9899e444784130fa1946c6cef6c) Thanks [@chengluyu](https://github.com/chengluyu)! - Fix missing Swarm members after reopening an interrupted conversation. + +- [#3989](https://github.com/MoonshotAI/kimi-code/pull/3989) [`a268ad7`](https://github.com/MoonshotAI/kimi-code/commit/a268ad775d9451d008d3c73de053655f6ab0772a) Thanks [@Grapedge](https://github.com/Grapedge)! - Show a Thinking… spinner and keep the status row height steady during streaming. + +- [#3989](https://github.com/MoonshotAI/kimi-code/pull/3989) [`a268ad7`](https://github.com/MoonshotAI/kimi-code/commit/a268ad775d9451d008d3c73de053655f6ab0772a) Thanks [@Grapedge](https://github.com/Grapedge)! - Add a clickable "Jump to bottom" indicator to the fullscreen TUI. + +- [#3976](https://github.com/MoonshotAI/kimi-code/pull/3976) [`f7012aa`](https://github.com/MoonshotAI/kimi-code/commit/f7012aa23b38d90d1a643166e2e78f706a606a34) Thanks [@tpoisonooo](https://github.com/tpoisonooo)! - Tower mode: smaller missions, stricter completion and review checks, and review history in rework briefings. + +- [#3847](https://github.com/MoonshotAI/kimi-code/pull/3847) [`65ae3e3`](https://github.com/MoonshotAI/kimi-code/commit/65ae3e368c7cfa096242cacc12eeeb661e682977) Thanks [@tpoisonooo](https://github.com/tpoisonooo)! - Tower mode: mission titles must be ASCII, and task cards show the mission id. + +- [#3931](https://github.com/MoonshotAI/kimi-code/pull/3931) [`f17a22e`](https://github.com/MoonshotAI/kimi-code/commit/f17a22ebf4e21b8196bfaaa9a2490707676bf519) Thanks [@sailist](https://github.com/sailist)! - Turn off filesystem watchers for config and workspace files by default. Set `[watch] enabled` to `true` or `KIMI_CODE_WATCH=1` to turn them back on. + +- [#4005](https://github.com/MoonshotAI/kimi-code/pull/4005) [`ba41d07`](https://github.com/MoonshotAI/kimi-code/commit/ba41d07810cae37a9e529cad6b0f8e8abc8d7aaf) Thanks [@liruifengv](https://github.com/liruifengv)! - web: Improved interactions and fixed known bugs. + +## 2.0.2 + +### Patch Changes + +- [#3922](https://github.com/MoonshotAI/kimi-code/pull/3922) [`9df7a9c`](https://github.com/MoonshotAI/kimi-code/commit/9df7a9ccfb0d7d0713b51ae1ac165d0634fc40d2) Thanks [@sailist](https://github.com/sailist)! - Fix new messages occasionally landing at an old position in the conversation after resuming a session. + +- [#3911](https://github.com/MoonshotAI/kimi-code/pull/3911) [`88a7d93`](https://github.com/MoonshotAI/kimi-code/commit/88a7d932f1cda95c78bf5488d34ff974a160fb08) Thanks [@Grapedge](https://github.com/Grapedge)! - Fix compaction failing after switching to a model with a smaller context window. + +- [#3929](https://github.com/MoonshotAI/kimi-code/pull/3929) [`6ffdf0d`](https://github.com/MoonshotAI/kimi-code/commit/6ffdf0d579fa1a9f30c2d00c437c6c8de0c03997) Thanks [@7Hanrui](https://github.com/7Hanrui)! - The agent no longer assumes the current working directory is the project root. + +- [#3933](https://github.com/MoonshotAI/kimi-code/pull/3933) [`9721259`](https://github.com/MoonshotAI/kimi-code/commit/97212596f7d694b9683046ec7aad4d1247d29468) Thanks [@liruifengv](https://github.com/liruifengv)! - Fix a message sent while the agent was running sometimes appearing twice in the chat. + +- [#3934](https://github.com/MoonshotAI/kimi-code/pull/3934) [`2e605b1`](https://github.com/MoonshotAI/kimi-code/commit/2e605b10be906fb627c1f3aeaaa066b14ddbdbba) Thanks [@liruifengv](https://github.com/liruifengv)! - web: Improved interactions and fixed known bugs. + +## 2.0.1 + +### Patch Changes + +- [#3878](https://github.com/MoonshotAI/kimi-code/pull/3878) [`f233f9d`](https://github.com/MoonshotAI/kimi-code/commit/f233f9de04d71c42d27df870b18e1bc1a6605f16) Thanks [@7Sageer](https://github.com/7Sageer)! - Stop listing unavailable media tools in subagent menus and clarify Read errors for images and videos. + +- [#3762](https://github.com/MoonshotAI/kimi-code/pull/3762) [`c5ad17f`](https://github.com/MoonshotAI/kimi-code/commit/c5ad17f06aa12702d2b30dff63acba9ed08f688d) Thanks [@7Sageer](https://github.com/7Sageer)! - Providers can read their API key from a named environment variable (`api_key_env` in `config.toml` or the provider API). + +- [#3896](https://github.com/MoonshotAI/kimi-code/pull/3896) [`73ebe9a`](https://github.com/MoonshotAI/kimi-code/commit/73ebe9ab2fbf9bf0ffc8fe5a5375060ce8e984b5) Thanks [@sailist](https://github.com/sailist)! - Keep follow-up messages sent during a turn from appearing twice after a session reload. + +- [#3889](https://github.com/MoonshotAI/kimi-code/pull/3889) [`5108cad`](https://github.com/MoonshotAI/kimi-code/commit/5108cad9b65845ae992520dcf732cbbccc6a34b9) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Compact the session index on startup when many entries point to deleted sessions. + +- [#3889](https://github.com/MoonshotAI/kimi-code/pull/3889) [`5108cad`](https://github.com/MoonshotAI/kimi-code/commit/5108cad9b65845ae992520dcf732cbbccc6a34b9) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Start the CLI faster by removing a duplicate skills directory scan. + +- [#3889](https://github.com/MoonshotAI/kimi-code/pull/3889) [`5108cad`](https://github.com/MoonshotAI/kimi-code/commit/5108cad9b65845ae992520dcf732cbbccc6a34b9) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Open the session list and resume sessions faster on workspaces with many sessions. + +- [#3889](https://github.com/MoonshotAI/kimi-code/pull/3889) [`5108cad`](https://github.com/MoonshotAI/kimi-code/commit/5108cad9b65845ae992520dcf732cbbccc6a34b9) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Resume long sessions faster. + +- [#3889](https://github.com/MoonshotAI/kimi-code/pull/3889) [`5108cad`](https://github.com/MoonshotAI/kimi-code/commit/5108cad9b65845ae992520dcf732cbbccc6a34b9) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Index sessions for search in capped, incremental background passes, tunable via the [database] searchSyncSessionCap and searchSyncDebounceMs settings. + +- [#3864](https://github.com/MoonshotAI/kimi-code/pull/3864) [`25dd4ce`](https://github.com/MoonshotAI/kimi-code/commit/25dd4ce97345c7ebfd9c036898e5eef955c45ea8) Thanks [@wbxl2000](https://github.com/wbxl2000)! - Rename the kimi install-app subcommand to kimi install-desktop; the old name keeps working as a hidden alias. + +- [#3910](https://github.com/MoonshotAI/kimi-code/pull/3910) [`7dc253c`](https://github.com/MoonshotAI/kimi-code/commit/7dc253c5cefac7c277e5fc7071acf3e855fd503e) Thanks [@sailist](https://github.com/sailist)! - Restore thinking display for OpenAI-compatible providers that send a reasoning string next to an unrecognized reasoning_details array. + +- [#3875](https://github.com/MoonshotAI/kimi-code/pull/3875) [`c1047a6`](https://github.com/MoonshotAI/kimi-code/commit/c1047a6bbe0e37d097e5da54d92dd3fb1b7a28da) Thanks [@7Sageer](https://github.com/7Sageer)! - Fix `kimi -p` exiting early and cancelling the active turn when a cron task fires. + +- [#3894](https://github.com/MoonshotAI/kimi-code/pull/3894) [`910aba2`](https://github.com/MoonshotAI/kimi-code/commit/910aba273e2bee3a8815666a3a9c4fff609f2366) Thanks [@7Sageer](https://github.com/7Sageer)! - Drop literal decision clauses from the system prompt and the auto permission mode reminder. + +- [#3889](https://github.com/MoonshotAI/kimi-code/pull/3889) [`5108cad`](https://github.com/MoonshotAI/kimi-code/commit/5108cad9b65845ae992520dcf732cbbccc6a34b9) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Restore sessions with large file-edit histories faster. + +- [#3889](https://github.com/MoonshotAI/kimi-code/pull/3889) [`5108cad`](https://github.com/MoonshotAI/kimi-code/commit/5108cad9b65845ae992520dcf732cbbccc6a34b9) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Serve session transcript APIs faster on repeated calls. + +- [#3885](https://github.com/MoonshotAI/kimi-code/pull/3885) [`5acc863`](https://github.com/MoonshotAI/kimi-code/commit/5acc863ae60c092457bd9ecdde55266b5fad7040) Thanks [@starquakee](https://github.com/starquakee)! - select_tools now points out already-available tools to call directly and suggests announced names for near-miss selections. + +- [#3887](https://github.com/MoonshotAI/kimi-code/pull/3887) [`e3f48a2`](https://github.com/MoonshotAI/kimi-code/commit/e3f48a225bbedbe167b30510e67d66ee67fcb0ec) Thanks [@RealKai42](https://github.com/RealKai42)! - Fix deleting or archiving a session sometimes never finishing. + +- [#3891](https://github.com/MoonshotAI/kimi-code/pull/3891) [`53e5e3f`](https://github.com/MoonshotAI/kimi-code/commit/53e5e3fca6bf377662bc4d61d220dde4ded8e7b7) Thanks [@sailist](https://github.com/sailist)! - Keep follow-up messages sent during a turn attached to that turn in the conversation history. + +- [#3906](https://github.com/MoonshotAI/kimi-code/pull/3906) [`60f2a63`](https://github.com/MoonshotAI/kimi-code/commit/60f2a63278f28b77d9358cf589b2da6193bd2614) Thanks [@sailist](https://github.com/sailist)! - Keep a follow-up sent during a turn as one message, and undo the host turn instead of the follow-up alone. + +- [#3879](https://github.com/MoonshotAI/kimi-code/pull/3879) [`1fddc16`](https://github.com/MoonshotAI/kimi-code/commit/1fddc16e3ea2de4c26a18acd764380adf9e2ed64) Thanks [@7Sageer](https://github.com/7Sageer)! - Remove the system-prompt rule that forbade all file access outside the working directory. + +- [#3892](https://github.com/MoonshotAI/kimi-code/pull/3892) [`a80fe31`](https://github.com/MoonshotAI/kimi-code/commit/a80fe31cff0ebae686e60d7d5d0559ad2d2e843d) Thanks [@sailist](https://github.com/sailist)! - Stop workspace file watchers from scanning an unbounded project root, and add `[watch] enabled` / `KIMI_CODE_WATCH` to disable watching entirely. + +- [#3869](https://github.com/MoonshotAI/kimi-code/pull/3869) [`86e0820`](https://github.com/MoonshotAI/kimi-code/commit/86e08208e3445171f6500c948234d7e3a0684324) Thanks [@sailist](https://github.com/sailist)! - Stop asking for approval of bash commands that cannot be statically analyzed in Ask When Needed permission mode. + +## 2.0.0 + +### Major Changes + +- [#3849](https://github.com/MoonshotAI/kimi-code/pull/3849) [`34ec5d2`](https://github.com/MoonshotAI/kimi-code/commit/34ec5d2a1700e540c39d2a1b6c905c9fa96af2db) Thanks [@wbxl2000](https://github.com/wbxl2000)! - Add the /desktop slash command (alias /install-desktop) and the kimi install-app subcommand to open the Kimi Code desktop app page in the browser. + +### Minor Changes + +- [#3851](https://github.com/MoonshotAI/kimi-code/pull/3851) [`faec32c`](https://github.com/MoonshotAI/kimi-code/commit/faec32c7e7c1df5d27b7060f75a2a665efb59268) Thanks [@Grapedge](https://github.com/Grapedge)! - Render mermaid code blocks as diagrams in the terminal; turn it off under /settings → Mermaid diagrams, or set `mermaid = "off"` in the `[markdown]` section of tui.toml. + +### Patch Changes + +- [#3838](https://github.com/MoonshotAI/kimi-code/pull/3838) [`f4e5822`](https://github.com/MoonshotAI/kimi-code/commit/f4e5822164800ec138f77b0f323e2374963bfe19) Thanks [@sailist](https://github.com/sailist)! - Fix an occasional crash when a running turn is canceled. + +- [#3802](https://github.com/MoonshotAI/kimi-code/pull/3802) [`c72a202`](https://github.com/MoonshotAI/kimi-code/commit/c72a20270e5078987a65e63b3741d8c778f4e02e) Thanks [@Grapedge](https://github.com/Grapedge)! - Highlight diff code blocks. + +- [#3844](https://github.com/MoonshotAI/kimi-code/pull/3844) [`0cf413f`](https://github.com/MoonshotAI/kimi-code/commit/0cf413f7759c314766ba30250a9875ac1af1185e) Thanks [@Grapedge](https://github.com/Grapedge)! - Fix a steered message appearing twice after interrupting the turn. + +- [#3848](https://github.com/MoonshotAI/kimi-code/pull/3848) [`b4d0b8a`](https://github.com/MoonshotAI/kimi-code/commit/b4d0b8a3889c1a6f0115c527341ccd2066bd180a) Thanks [@Grapedge](https://github.com/Grapedge)! - Fix @ file mentions duplicating or dropping the path when accepting a suggestion while still typing. + +- [#3828](https://github.com/MoonshotAI/kimi-code/pull/3828) [`2bb6e12`](https://github.com/MoonshotAI/kimi-code/commit/2bb6e12c7e3ecc19521d21fcffc832075ed13200) Thanks [@wbxl2000](https://github.com/wbxl2000)! - Fix duplicate user messages when steering an ongoing conversation. + +- [#3832](https://github.com/MoonshotAI/kimi-code/pull/3832) [`1c7e996`](https://github.com/MoonshotAI/kimi-code/commit/1c7e996aa8bdd7a6f32447f1d89e43c0646b41bc) Thanks [@chengluyu](https://github.com/chengluyu)! - Fix files attached while steering an ongoing conversation appearing only after a reload. + +- [#3853](https://github.com/MoonshotAI/kimi-code/pull/3853) [`bd06178`](https://github.com/MoonshotAI/kimi-code/commit/bd06178913d2cc4ebd229ecee6714081105e5ae1) Thanks [@wbxl2000](https://github.com/wbxl2000)! - Keep the original prompt visible when steering a running turn, instead of replacing it with the steered text. + +- [#3832](https://github.com/MoonshotAI/kimi-code/pull/3832) [`1c7e996`](https://github.com/MoonshotAI/kimi-code/commit/1c7e996aa8bdd7a6f32447f1d89e43c0646b41bc) Thanks [@chengluyu](https://github.com/chengluyu)! - Fix slash commands sent while steering an ongoing conversation missing from the transcript. + +- [#3837](https://github.com/MoonshotAI/kimi-code/pull/3837) [`cafd9b5`](https://github.com/MoonshotAI/kimi-code/commit/cafd9b5a65509fe57332cbc0eb1fb19f0443fb0e) Thanks [@wbxl2000](https://github.com/wbxl2000)! - Fix missing and reappearing chat messages after undoing a steered message. + +- [#3818](https://github.com/MoonshotAI/kimi-code/pull/3818) [`19ce4b3`](https://github.com/MoonshotAI/kimi-code/commit/19ce4b3f0600c846e2f28828d8169829630fc666) Thanks [@liruifengv](https://github.com/liruifengv)! - Fix /usage showing a wrong error message when no session has been created yet. + +- [#3784](https://github.com/MoonshotAI/kimi-code/pull/3784) [`5653c73`](https://github.com/MoonshotAI/kimi-code/commit/5653c739b9c0dbafd1e4b3d36edeb0fe44ec71f4) Thanks [@7Sageer](https://github.com/7Sageer)! - Images sent to Kimi models are uploaded as file references instead of inline data, and a warning is shown when media are dropped from a retried request. + +- [#3778](https://github.com/MoonshotAI/kimi-code/pull/3778) [`7d174ac`](https://github.com/MoonshotAI/kimi-code/commit/7d174ac93352ccfc835d186ac7b8185d0194e6b5) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Limit memory growth from finished subagents. + +- [#3778](https://github.com/MoonshotAI/kimi-code/pull/3778) [`7d174ac`](https://github.com/MoonshotAI/kimi-code/commit/7d174ac93352ccfc835d186ac7b8185d0194e6b5) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Report background subagents that time out or are stopped as cancelled instead of failed. + +- [#3846](https://github.com/MoonshotAI/kimi-code/pull/3846) [`31f1b68`](https://github.com/MoonshotAI/kimi-code/commit/31f1b6824d1900aeea71b69c824c6354a0dd9019) Thanks [@7Sageer](https://github.com/7Sageer)! - Fix OAuth login never triggering for MCP servers that allow anonymous tool discovery but reject tool calls with 401. + +- [#3784](https://github.com/MoonshotAI/kimi-code/pull/3784) [`5653c73`](https://github.com/MoonshotAI/kimi-code/commit/5653c739b9c0dbafd1e4b3d36edeb0fe44ec71f4) Thanks [@7Sageer](https://github.com/7Sageer)! - When accumulated images and videos exceed the request size budget, the oldest media are omitted from requests with a warning instead of failing. + +- [#3778](https://github.com/MoonshotAI/kimi-code/pull/3778) [`7d174ac`](https://github.com/MoonshotAI/kimi-code/commit/7d174ac93352ccfc835d186ac7b8185d0194e6b5) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Report tools and subagents interrupted by the user as cancelled instead of aborted or failed. + +- [#3803](https://github.com/MoonshotAI/kimi-code/pull/3803) [`39a7455`](https://github.com/MoonshotAI/kimi-code/commit/39a74556a662a96293e9838663e91b31dbdc7a0b) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - The built-in browser plugin now appears as "Kimi Browser Extension" in the plugins panel, marketplace catalog, and docs, matching the product rename. + +- [#3858](https://github.com/MoonshotAI/kimi-code/pull/3858) [`95d4a9d`](https://github.com/MoonshotAI/kimi-code/commit/95d4a9d0411b18f468345717c01c40f5ac996cdc) Thanks [@liruifengv](https://github.com/liruifengv)! - Sign the Windows CLI executable with a trusted publisher certificate. + +- [#3795](https://github.com/MoonshotAI/kimi-code/pull/3795) [`a7bdabb`](https://github.com/MoonshotAI/kimi-code/commit/a7bdabbe82a089cd8631f6d613c252d96cbab639) Thanks [@Grapedge](https://github.com/Grapedge)! - Feedback surveys now appear at better times in long conversations. + +- [#3833](https://github.com/MoonshotAI/kimi-code/pull/3833) [`8660a07`](https://github.com/MoonshotAI/kimi-code/commit/8660a07b3a0b7984971371d77f316e802e5e83fe) Thanks [@tpoisonooo](https://github.com/tpoisonooo)! - Fix tower worker cards wrongly showing "completed" during rework. + +- [#3840](https://github.com/MoonshotAI/kimi-code/pull/3840) [`9c5e9b4`](https://github.com/MoonshotAI/kimi-code/commit/9c5e9b48634be1dfae921fb48f9afc3a23ffd1ad) Thanks [@chengluyu](https://github.com/chengluyu)! - Fix a Windows crash when a project or config folder is opened through a short 8.3 path. + +## 0.43.1 + +### Patch Changes + +- [#3780](https://github.com/MoonshotAI/kimi-code/pull/3780) [`486dcd2`](https://github.com/MoonshotAI/kimi-code/commit/486dcd26c76f2854fc351515a45d8f0fc2d31ed6) Thanks [@Grapedge](https://github.com/Grapedge)! - Update the terminal UI engine, fixing link colors in wrapped markdown tables and `@` file-completion ordering, and adding native clipboard support on Linux X11. + +- [#3776](https://github.com/MoonshotAI/kimi-code/pull/3776) [`48fad6e`](https://github.com/MoonshotAI/kimi-code/commit/48fad6e7d9cd00511c6118e84ae6d22dafb96be9) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Fix memory not being released when subagent scopes are disposed. + +- [#3777](https://github.com/MoonshotAI/kimi-code/pull/3777) [`dc76b0c`](https://github.com/MoonshotAI/kimi-code/commit/dc76b0caaa6e0aa406bf87957e6b5f8aca722221) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Fix progressively slower rendering on each round of large agent swarm runs. + +- [#3631](https://github.com/MoonshotAI/kimi-code/pull/3631) [`1336be3`](https://github.com/MoonshotAI/kimi-code/commit/1336be38777959cc558fed2b51dc53caa07da5db) Thanks [@wbxl2000](https://github.com/wbxl2000)! - Stop returning deleted sessions from global search before the search index catches up. + +- [#3775](https://github.com/MoonshotAI/kimi-code/pull/3775) [`f248624`](https://github.com/MoonshotAI/kimi-code/commit/f2486241fb5e268d7a43cb589b5c2d59af8db571) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Reduce event-loop stalls and GC churn in sessions with many concurrent subagents. + +- [#3779](https://github.com/MoonshotAI/kimi-code/pull/3779) [`82ec469`](https://github.com/MoonshotAI/kimi-code/commit/82ec469e47eed52feb664fd361e3d8dcb774596e) Thanks [@huangzheng2016](https://github.com/huangzheng2016)! - Fix pressing Ctrl+C while subagents are running exiting the whole CLI instead of just interrupting the subagents. + +- [#3752](https://github.com/MoonshotAI/kimi-code/pull/3752) [`0725ef1`](https://github.com/MoonshotAI/kimi-code/commit/0725ef1ce0a7f9c15db7ffc042f57308657b3ee6) Thanks [@tpoisonooo](https://github.com/tpoisonooo)! - Fix tower mode mistaking newly spawned agents for previous sessions' roster entries. + +## 0.43.0 + +### Minor Changes + +- [#3749](https://github.com/MoonshotAI/kimi-code/pull/3749) [`6126472`](https://github.com/MoonshotAI/kimi-code/commit/6126472c7af421070f09c470c5750455dd277657) Thanks [@liruifengv](https://github.com/liruifengv)! - web: AI session titles are now always on — a title is generated after the first turn and can be regenerated from the rename field, with no experimental flag required. + +- [#3670](https://github.com/MoonshotAI/kimi-code/pull/3670) [`a9efbe0`](https://github.com/MoonshotAI/kimi-code/commit/a9efbe053f966104d4b51090118da5135c084e22) Thanks [@Grapedge](https://github.com/Grapedge)! - Delete sessions from the session picker: press Ctrl+X on a session, then y to confirm. + +### Patch Changes + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: add user agreement and privacy policy entries to the Settings → About page. + +- [#3750](https://github.com/MoonshotAI/kimi-code/pull/3750) [`775a6c3`](https://github.com/MoonshotAI/kimi-code/commit/775a6c35de40e6dd8cc399cc848f95818733ee7c) Thanks [@7Sageer](https://github.com/7Sageer)! - Add the `loop_control.compaction_max_attempts` config option to set the maximum total attempts for a failing compaction request (default 5). + +- [#3667](https://github.com/MoonshotAI/kimi-code/pull/3667) [`9296e68`](https://github.com/MoonshotAI/kimi-code/commit/9296e6877032328fcd9cf1d145f9286bec140897) Thanks [@sailist](https://github.com/sailist)! - Add the dynamically_loaded_tools capability to official Kimi Code models when the service declares support for message-level tool declarations. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: fix sessions containing many brackets or backslashes getting stuck while loading. + +- [#3734](https://github.com/MoonshotAI/kimi-code/pull/3734) [`ee2cac1`](https://github.com/MoonshotAI/kimi-code/commit/ee2cac102b835fcd7adb3d4b9bc3d62b0b71cdfd) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - Fix a crash that killed the process when a retried LLM request had streamed a partial tool call before disconnecting. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: fix persistent UI stuttering while streaming in long sessions. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: fix certain formulas, links, tool results, and log contents causing the UI to stutter or become unresponsive. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: fix the send button staying disabled when starting a new session. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: fix previous sessions being wrongly marked as unread and triggering "turn complete" notifications after starting a new conversation. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: render Markdown frontmatter metadata as key-value cards and tag lists. + +- [#3688](https://github.com/MoonshotAI/kimi-code/pull/3688) [`9f7e68e`](https://github.com/MoonshotAI/kimi-code/commit/9f7e68e8bdb70d3e5cde5a924740e357ede2fc40) Thanks [@RealKai42](https://github.com/RealKai42)! - Preserve MCP attachments that cannot be delivered directly to the model. + +- [#3667](https://github.com/MoonshotAI/kimi-code/pull/3667) [`9296e68`](https://github.com/MoonshotAI/kimi-code/commit/9296e6877032328fcd9cf1d145f9286bec140897) Thanks [@sailist](https://github.com/sailist)! - Add a per-server `deferred` field to MCP server configuration: when the model supports dynamic tool loading (experimental `tool-select` flag), set `deferred: true` to keep a server's tools out of the top-level tool list and load them on demand via `select_tools`; servers are exposed inline by default. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: drop the Changes entry from the panel new-tab menu while a diff tab is open. + +- [#3657](https://github.com/MoonshotAI/kimi-code/pull/3657) [`5b3b5b6`](https://github.com/MoonshotAI/kimi-code/commit/5b3b5b6f7cfa4e9cca2a394632d52f8748dc8190) Thanks [@chengluyu](https://github.com/chengluyu)! - Exclude time spent with the session closed from goal time budgets. + +- [#3728](https://github.com/MoonshotAI/kimi-code/pull/3728) [`b180725`](https://github.com/MoonshotAI/kimi-code/commit/b1807253c34e12b0ecf60c9b4da3890d0c80ce72) Thanks [@kimi-agent-bot](https://github.com/kimi-agent-bot)! - Add the `KIMI_CODE_PERMISSION_MODE_REMINDER` environment variable: set it to `0` to stop injecting the auto permission-mode reminders into the model context. + +- [#3696](https://github.com/MoonshotAI/kimi-code/pull/3696) [`d3dc594`](https://github.com/MoonshotAI/kimi-code/commit/d3dc5945548d3353a5e6cfc457a3a8cf84d7da71) Thanks [@sailist](https://github.com/sailist)! - Include the server token in the Remote Control Local UI link so it opens already signed in. + +- [#3709](https://github.com/MoonshotAI/kimi-code/pull/3709) [`306f6f6`](https://github.com/MoonshotAI/kimi-code/commit/306f6f69251d65fda434463433c0761758eacb16) Thanks [@sailist](https://github.com/sailist)! - Fix Remote Control uploads larger than ~3.5MB always failing with a 400 error. + +- [#3718](https://github.com/MoonshotAI/kimi-code/pull/3718) [`ab9e688`](https://github.com/MoonshotAI/kimi-code/commit/ab9e688cd0c753bd3cea3406a9e9194c73ab2239) Thanks [@sailist](https://github.com/sailist)! - Reuse unchanged Remote Control assets across page loads instead of retransferring them. + +- [#3657](https://github.com/MoonshotAI/kimi-code/pull/3657) [`5b3b5b6`](https://github.com/MoonshotAI/kimi-code/commit/5b3b5b6f7cfa4e9cca2a394632d52f8748dc8190) Thanks [@chengluyu](https://github.com/chengluyu)! - Remove the 24-hour limit on goal time budgets. + +- [#3714](https://github.com/MoonshotAI/kimi-code/pull/3714) [`565093f`](https://github.com/MoonshotAI/kimi-code/commit/565093f727eee07e2aa05f43859fa12b9e977989) Thanks [@sailist](https://github.com/sailist)! - Skip the confirmation prompt for rm -rf commands that target only /tmp or /temp paths. + +- [#3667](https://github.com/MoonshotAI/kimi-code/pull/3667) [`9296e68`](https://github.com/MoonshotAI/kimi-code/commit/9296e6877032328fcd9cf1d145f9286bec140897) Thanks [@sailist](https://github.com/sailist)! - Fix the select_tools tool never being registered because agent profiles do not list it in their tool allowlists. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: restructure the Settings pages — Account moves right after General, Agent is renamed to Agents & Sessions and now includes message folding, Advanced is renamed to About, and data & privacy settings move into General. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: fix the selected segment background flashing and shifting while the Settings segmented control loads. + +- [#3697](https://github.com/MoonshotAI/kimi-code/pull/3697) [`5e452fc`](https://github.com/MoonshotAI/kimi-code/commit/5e452fc2ddf5a0d9feedfbf3c7cdde4246fc44b6) Thanks [@RealKai42](https://github.com/RealKai42)! - Allow steering messages to interrupt waits for background tasks. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: fix the switch thumb deforming at both ends when stretched on hover. + +- [#3763](https://github.com/MoonshotAI/kimi-code/pull/3763) [`dd6a411`](https://github.com/MoonshotAI/kimi-code/commit/dd6a4116ddfcc56cb3d37b0c1d526d64cb36086b) Thanks [@liruifengv](https://github.com/liruifengv)! - web: fix tooltips popping up even when the mouse has not moved. + +- [#3648](https://github.com/MoonshotAI/kimi-code/pull/3648) [`2da4aa2`](https://github.com/MoonshotAI/kimi-code/commit/2da4aa23b0d484312cc068b2d4b2a62e694a2bfe) Thanks [@tpoisonooo](https://github.com/tpoisonooo)! - Tower mode reliability fixes across messaging, worktrees, and the review-to-merge gate. + +- [#3707](https://github.com/MoonshotAI/kimi-code/pull/3707) [`e409bc8`](https://github.com/MoonshotAI/kimi-code/commit/e409bc8ba582c9f390146eca08812d22790c81f8) Thanks [@sailist](https://github.com/sailist)! - Compress Remote Control tunnel responses with gzip. + +- [#3702](https://github.com/MoonshotAI/kimi-code/pull/3702) [`42998cf`](https://github.com/MoonshotAI/kimi-code/commit/42998cfc13cb03914256587f0b702ec95e2d156c) Thanks [@sailist](https://github.com/sailist)! - Add `-y, --yes` to `kimi upgrade` (alias `kimi update`) to skip the confirmation prompt and install the update directly. + +- [#3681](https://github.com/MoonshotAI/kimi-code/pull/3681) [`1306a9a`](https://github.com/MoonshotAI/kimi-code/commit/1306a9a8dbd5acd9532182c36edcabbc7e8de807) Thanks [@7Sageer](https://github.com/7Sageer)! - Warn at startup when a [models] entry in config.toml is missing the model field and cannot be used. + ## 0.42.0 ### Minor Changes diff --git a/apps/kimi-code/dist-web/assets/CodeBlockNode-DXrFlfJq.js b/apps/kimi-code/dist-web/assets/CodeBlockNode-DXrFlfJq.js deleted file mode 100644 index 10aebfb20e..0000000000 --- a/apps/kimi-code/dist-web/assets/CodeBlockNode-DXrFlfJq.js +++ /dev/null @@ -1,29 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DUuyqWli.js","assets/index-HU0LCM-X.js","assets/index-C8RkgE6U.css"])))=>i.map(i=>d[i]); -import{bR as xi,cb as Si,bQ as Ho,M as pl,bl as Ci,af as fl,bY as Mi,cc as Bi,b$ as hl,aU as $,c0 as Ei,c1 as Fi,c2 as Pi,a0 as Mo,aD as No,bE as ue,az as Li,cd as wn,c8 as mt,aI as To,aL as Y,s as Sn,aw as Vt,au as pt,bk as J,ce as Bo,u as ie,I as Ro,A as Oi,bJ as Gt,aY as ht,bL as vl,v as w,t as we,bB as ml,bb as Be,q as b,b7 as $i,cf as zi,cg as bn,ch as Hi,ci as Ni,cj as Ti,ck as Ri,as as A,cl as Eo,cm as Di,cn as Ai,co as Wt,cp as Fo,bO as Do,T as ji,G as qi,F as Po,g as Wi,c7 as _i,b_ as Ii}from"./index-HU0LCM-X.js";import{i as fe,t as kn}from"./safeRaf-DGuzXxDK.js";var xn=(k,M,y)=>new Promise((te,ne)=>{var be=P=>{try{r(y.next(P))}catch(H){ne(H)}},ke=P=>{try{r(y.throw(P))}catch(H){ne(H)}},r=P=>P.done?te(P.value):Promise.resolve(P.value).then(be,ke);r((y=y.apply(k,M)).next())});let Lo=!1,_t=null,It=null,Ut=null;function Ui(){return xn(this,null,function*(){if(Ut)return Ut;Ut=xn(null,null,function*(){if(!It)try{if(It=(function(k){const M=k;if(typeof M?.useMonaco=="function")return M;const y=k?.default;return typeof y?.useMonaco=="function"?y:null})(yield xi(()=>import("./index-DUuyqWli.js"),__vite__mapDeps([0,1,2]))),!It)return null}catch{return null}try{return yield(function(k){return xn(this,null,function*(){return Lo?void 0:_t||(_t=xn(null,null,function*(){const y=globalThis?.MonacoEnvironment;y&&(typeof y.getWorker=="function"||typeof y.getWorkerUrl=="function")||typeof k?.preloadMonacoWorkers!="function"||(yield k.preloadMonacoWorkers()),Lo=!0}).finally(()=>{_t=null}),_t)})})(It),Si(),It}catch{return null}});try{return yield Ut}finally{Ut=null}})}var Vi=Object.defineProperty,Gi=Object.defineProperties,Ji=Object.getOwnPropertyDescriptors,Oo=Object.getOwnPropertySymbols,Yi=Object.prototype.hasOwnProperty,Qi=Object.prototype.propertyIsEnumerable,$o=(k,M,y)=>M in k?Vi(k,M,{enumerable:!0,configurable:!0,writable:!0,value:y}):k[M]=y,U=(k,M)=>{for(var y in M||(M={}))Yi.call(M,y)&&$o(k,y,M[y]);if(Oo)for(var y of Oo(M))Qi.call(M,y)&&$o(k,y,M[y]);return k},Me=(k,M)=>Gi(k,Ji(M)),j=(k,M,y)=>new Promise((te,ne)=>{var be=P=>{try{r(y.next(P))}catch(H){ne(H)}},ke=P=>{try{r(y.throw(P))}catch(H){ne(H)}},r=P=>P.done?te(P.value):Promise.resolve(P.value).then(be,ke);r((y=y.apply(k,M)).next())});const Xi={key:0,class:"code-block-header flex justify-between items-center border-b px-[var(--ms-inset-panel-x)] py-[var(--ms-inset-panel-y)] border-[var(--code-border)] bg-[var(--code-header-bg)] text-[var(--code-fg)]"},Ki={class:"flex items-center gap-0.5"},Zi=["aria-label"],er={class:"code-diff-stat removed"},tr={class:"code-diff-stat added"},nr=["aria-label"],lr={key:0,xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},or={key:1,xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},ir=["aria-pressed"],rr={key:3,class:"relative"},ar=["aria-expanded"],ur=["disabled"],sr=["disabled"],dr=["disabled"],cr={key:0,xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},fr={key:1,xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},vr={class:"code-loading-placeholder"},mr={class:"sr-only","aria-live":"polite",role:"status"},pr=pl({__name:"CodeBlockShell",props:{showHeader:{type:Boolean,default:!0},showCollapseButton:{type:Boolean,default:!0},showFontSizeButtons:{type:Boolean,default:!0},enableFontSizeControl:{type:Boolean,default:!0},showCopyButton:{type:Boolean,default:!0},showExpandButton:{type:Boolean,default:!0},showPreviewButton:{type:Boolean,default:!0},showTooltips:{type:Boolean,default:!0},isDark:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},stream:{type:Boolean,default:!1},isCollapsed:{type:Boolean,default:!1},isExpanded:{type:Boolean,default:!1},copyText:{type:Boolean,default:!1},isPreviewable:{type:Boolean,default:!1},codeFontSize:{},codeFontMin:{},codeFontMax:{},defaultCodeFontSize:{},fontBaselineReady:{type:Boolean,default:!1},diffStats:{},diffStatsAriaLabel:{}},emits:["toggleCollapse","decreaseFont","resetFont","increaseFont","copy","toggleExpand","preview"],setup(k,{emit:M}){const y=k,te=M,ne=$(!1),be=$(null),ke=$(null);function r(){mt(!0),ne.value=!ne.value,ne.value&&document.addEventListener("click",H,{once:!0,capture:!0})}function P(){mt(!0),ne.value=!1}function H(Q){var v,z;const wt=Q.target;(v=be.value)!=null&&v.contains(wt)||(z=ke.value)!=null&&z.contains(wt)?document.addEventListener("click",H,{once:!0,capture:!0}):P()}const re=b(()=>y.showFontSizeButtons&&y.enableFontSizeControl||y.showExpandButton||y.isPreviewable&&y.showPreviewButton),{t:T}=hl(),gt=b(()=>y.showTooltips!==!1);function Ge(Q,v){gt.value&&_i(Q.currentTarget,v,"top",!1,void 0,y.isDark)}function Ee(){gt.value&&mt()}function yt(Q){Ge(Q,y.copyText?T("common.copied")||"Copied":T("common.copy")||"Copy")}const gl=b(()=>{var Q,v;return!!Number.isFinite(y.codeFontSize)&&((Q=y.codeFontSize)!=null?Q:0)<=((v=y.codeFontMin)!=null?v:0)}),Jt=b(()=>!y.fontBaselineReady||y.codeFontSize===y.defaultCodeFontSize),Yt=b(()=>{var Q,v;return!!Number.isFinite(y.codeFontSize)&&((Q=y.codeFontSize)!=null?Q:0)>=((v=y.codeFontMax)!=null?v:100)});return(Q,v)=>(Y(),ie(Po,null,[y.showHeader?(Y(),ie("div",Xi,[ht(Q.$slots,"header-left"),ht(Q.$slots,"header-right",{},()=>[w("div",Ki,[k.diffStats?(Y(),ie("div",{key:0,class:"code-diff-stats","aria-label":k.diffStatsAriaLabel},[w("span",er,"-"+Be(k.diffStats.removed),1),w("span",tr,"+"+Be(k.diffStats.added),1)],8,Zi)):we("",!0),y.showCopyButton?(Y(),ie("button",{key:1,type:"button",class:"code-action-btn inline-flex items-center justify-center p-[var(--ms-action-btn-padding)] rounded leading-none shrink-0 cursor-pointer text-[var(--code-action-fg)] hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] active:scale-[0.96] disabled:opacity-40 disabled:cursor-not-allowed transition-colors","aria-label":k.copyText?J(T)("common.copied")||"Copied":J(T)("common.copy")||"Copy",onClick:v[0]||(v[0]=z=>te("copy")),onMouseenter:v[1]||(v[1]=z=>yt(z)),onFocus:v[2]||(v[2]=z=>yt(z)),onMouseleave:Ee,onBlur:Ee},[k.copyText?(Y(),ie("svg",or,[...v[14]||(v[14]=[w("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M20 6L9 17l-5-5"},null,-1)])])):(Y(),ie("svg",lr,[...v[13]||(v[13]=[w("g",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},[w("rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}),w("path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"})],-1)])]))],40,nr)):we("",!0),y.showCollapseButton?(Y(),ie("button",{key:2,type:"button",class:"code-action-btn inline-flex items-center justify-center p-[var(--ms-action-btn-padding)] rounded leading-none shrink-0 cursor-pointer text-[var(--code-action-fg)] hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] active:scale-[0.96] disabled:opacity-40 disabled:cursor-not-allowed transition-colors","aria-pressed":k.isCollapsed,onClick:v[3]||(v[3]=z=>te("toggleCollapse")),onMouseenter:v[4]||(v[4]=z=>Ge(z,k.isCollapsed?J(T)("common.expand")||"Expand":J(T)("common.collapse")||"Collapse")),onFocus:v[5]||(v[5]=z=>Ge(z,k.isCollapsed?J(T)("common.expand")||"Expand":J(T)("common.collapse")||"Collapse")),onMouseleave:Ee,onBlur:Ee},[(Y(),ie("svg",{style:Vt({rotate:k.isCollapsed?"0deg":"90deg"}),xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[...v[15]||(v[15]=[w("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"m9 18l6-6l-6-6"},null,-1)])],4))],40,ir)):we("",!0),re.value?(Y(),ie("div",rr,[w("button",{ref_key:"moreBtnRef",ref:ke,type:"button",class:"code-action-btn inline-flex items-center justify-center p-[var(--ms-action-btn-padding)] rounded leading-none shrink-0 cursor-pointer text-[var(--code-action-fg)] hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] active:scale-[0.96] transition-colors","aria-expanded":ne.value,"aria-haspopup":"true",onClick:Do(r,["stop"]),onMouseenter:v[6]||(v[6]=z=>Ge(z,J(T)("common.more")||"More")),onFocus:v[7]||(v[7]=z=>Ge(z,J(T)("common.more")||"More")),onMouseleave:Ee,onBlur:Ee},[...v[16]||(v[16]=[qi('',1)])],40,ar),Ro(Wi,{name:"code-menu"},{default:Gt(()=>[ne.value?(Y(),ie("div",{key:0,ref_key:"moreMenuRef",ref:be,class:"code-more-menu min-w-[10rem] p-1 bg-[hsl(var(--ms-popover))] text-[hsl(var(--ms-popover-foreground))] border border-[var(--code-border)] shadow-[var(--ms-shadow-popover)]",role:"menu"},[y.showFontSizeButtons&&y.enableFontSizeControl?(Y(),ie(Po,{key:0},[w("button",{type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] disabled:opacity-40 disabled:cursor-not-allowed transition-colors",disabled:gl.value,onClick:v[8]||(v[8]=z=>{J(mt)(!0),te("decreaseFont")})},[v[17]||(v[17]=w("svg",{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[w("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 12h14"})],-1)),w("span",null,Be(J(T)("common.fontSmaller")||"Font size −"),1)],8,ur),w("button",{type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] disabled:opacity-40 disabled:cursor-not-allowed transition-colors",disabled:Jt.value,onClick:v[9]||(v[9]=z=>{J(mt)(!0),te("resetFont")})},[v[18]||(v[18]=w("svg",{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[w("g",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},[w("path",{d:"M3 12a9 9 0 1 0 9-9a9.75 9.75 0 0 0-6.74 2.74L3 8"}),w("path",{d:"M3 3v5h5"})])],-1)),w("span",null,Be(J(T)("common.fontReset")||"Font size reset"),1)],8,sr),w("button",{type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] disabled:opacity-40 disabled:cursor-not-allowed transition-colors",disabled:Yt.value,onClick:v[10]||(v[10]=z=>{J(mt)(!0),te("increaseFont")})},[v[19]||(v[19]=w("svg",{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[w("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 12h14m-7-7v14"})],-1)),w("span",null,Be(J(T)("common.fontLarger")||"Font size +"),1)],8,dr)],64)):we("",!0),y.showExpandButton?(Y(),ie("button",{key:1,type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] transition-colors",onClick:v[11]||(v[11]=z=>{P(),te("toggleExpand")})},[k.isExpanded?(Y(),ie("svg",cr,[...v[20]||(v[20]=[w("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"m14 10l7-7m-1 7h-6V4M3 21l7-7m-6 0h6v6"},null,-1)])])):(Y(),ie("svg",fr,[...v[21]||(v[21]=[w("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 3h6v6m0-6l-7 7M3 21l7-7m-1 7H3v-6"},null,-1)])])),w("span",null,Be(k.isExpanded?J(T)("common.collapse")||"Collapse":J(T)("common.expand")||"Expand"),1)])):we("",!0),k.isPreviewable&&y.showPreviewButton?(Y(),ie("button",{key:2,type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] transition-colors",onClick:v[12]||(v[12]=z=>{P(),te("preview")})},[v[22]||(v[22]=w("svg",{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[w("g",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},[w("path",{d:"M2.062 12.348a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 19.876 0a1 1 0 0 1 0 .696a10.75 10.75 0 0 1-19.876 0"}),w("circle",{cx:"12",cy:"12",r:"3"})])],-1)),w("span",null,Be(J(T)("common.preview")||"Preview"),1)])):we("",!0)],512)):we("",!0)]),_:1})])):we("",!0)])])])):we("",!0),vl(w("div",{class:pt(["code-block-shell-content",{"code-block-shell-content--collapsed":k.isCollapsed}])},[ht(Q.$slots,"default")],2),[[ml,!!k.stream||!k.loading]]),vl(w("div",vr,[ht(Q.$slots,"loading",{},()=>[v[23]||(v[23]=w("div",{class:"loading-skeleton"},[w("div",{class:"skeleton-line"}),w("div",{class:"skeleton-line"}),w("div",{class:"skeleton-line short"})],-1))])],512),[[ml,!k.stream&&k.loading]]),w("span",mr,Be(k.copyText?J(T)("common.copied")||"Copied":""),1)],64))}}),hr={class:"html-preview-frame__header"},gr={class:"html-preview-frame__title"},yr={class:"html-preview-frame__label"},wr=["sandbox","srcdoc"],br=Ho(pl({__name:"HtmlPreviewFrame",props:{code:{},isDark:{type:Boolean},htmlPreviewAllowScripts:{type:Boolean},htmlPreviewSandbox:{},onClose:{type:Function},title:{}},setup(k){const M=k,y=import.meta!==void 0&&!1;let te=null;const{t:ne}=hl(),be=b(()=>{const P=M.code||"",H=P.trim().toLowerCase();return H.startsWith(" - - - - - - - - ${P} - -`}),ke=b(()=>{return P=M.htmlPreviewSandbox,H=M.htmlPreviewAllowScripts,typeof P=="string"?((function(re){if(!y||typeof console>"u"||te===re)return;const T=(function(gt){return new Set(gt.trim().toLowerCase().split(/\s+/).filter(Boolean))})(re);T.has("allow-scripts")&&T.has("allow-same-origin")&&(te=re,console.warn("[markstream-vue] htmlPreviewSandbox contains both allow-scripts and allow-same-origin. Use this only for fully trusted content served from an isolated origin."))})(P),P):P!==void 0?"":H===!0?"allow-scripts":"";var P,H});function r(P){var H;P.key!=="Escape"&&P.key!=="Esc"||(H=M.onClose)==null||H.call(M)}return No(()=>{typeof window<"u"&&window.addEventListener("keydown",r)}),To(()=>{typeof window<"u"&&window.removeEventListener("keydown",r)}),(P,H)=>(Y(),Sn(ji,{to:"body"},[w("div",{class:pt(["markstream-vue",{dark:M.isDark}])},[w("div",{class:"html-preview-frame__backdrop",onClick:H[2]||(H[2]=re=>{var T;return(T=M.onClose)==null?void 0:T.call(M)})},[w("div",{class:"html-preview-frame",onClick:H[1]||(H[1]=Do(()=>{},["stop"]))},[w("div",hr,[w("div",gr,[H[3]||(H[3]=w("span",{class:"html-preview-frame__dot"},null,-1)),w("span",yr,Be(M.title||J(ne)("common.preview")||"Preview"),1)]),w("button",{type:"button",class:"html-preview-frame__close",onClick:H[0]||(H[0]=re=>{var T;return(T=M.onClose)==null?void 0:T.call(M)})}," × ")]),w("iframe",{class:"html-preview-frame__iframe",sandbox:ke.value,referrerpolicy:"no-referrer",srcdoc:be.value},null,8,wr)])])],2)]))}}),[["__scopeId","data-v-24e66176"]]),kr=["data-markstream-enhanced","data-markstream-enhancement-state","data-markstream-code-block-state","data-markstream-pending","data-markstream-viewport-pending"],xr={class:"code-header-main"},Sr=["innerHTML"],Cr={class:"code-header-copy"},Mr={class:"code-header-title"},Br={key:0,class:"code-header-caption"},Er=["data-markstream-host-hidden"],zo="__markstreamMonacoPassiveTouchState__",Lr=Ho(pl({__name:"CodeBlockNode",props:{node:{},isDark:{type:Boolean,default:!1},loading:{type:Boolean,default:!0},stream:{type:Boolean,default:!0},theme:{},darkTheme:{default:"vitesse-dark"},lightTheme:{default:"vitesse-light"},isShowPreview:{type:Boolean,default:!0},monacoOptions:{},enableFontSizeControl:{type:Boolean,default:!0},minWidth:{default:void 0},maxWidth:{default:void 0},themes:{},showPreviewButton:{type:Boolean,default:!0},showCollapseButton:{type:Boolean,default:!0},showFontSizeButtons:{type:Boolean,default:!0},showTooltips:{type:Boolean},htmlPreviewAllowScripts:{type:Boolean},htmlPreviewSandbox:{},customId:{},showHeader:{type:Boolean,default:!0},showCopyButton:{type:Boolean,default:!0},showExpandButton:{type:Boolean,default:!0},estimatedHeightPx:{},estimatedContentHeightPx:{},estimatedDiffInline:{type:Boolean}},emits:["previewCode","copy"],setup(k,{emit:M}){var y,te,ne,be,ke;const r=k,P=M,H=Ci(),re=fl(Mi,null),T=fl("markstreamHostScrollManaged",null),gt=fl(Bi,void 0),Ge=b(()=>Ii(r,H)),Ee=new Set;function yt(e){return j(this,null,function*(){var t;if(typeof window>"u")return yield e();const n=(t=window.Element)==null?void 0:t.prototype,l=n?.addEventListener;if(!n||!l)return yield e();const o=(function(){const s=window,u=s[zo];if(u)return u;const a={depth:0,original:null};return s[zo]=a,a})();let i=null;try{o.depth===0&&(o.original=l,n.addEventListener=function(u,a,c){var d;const f=(d=o.original)!=null?d:l;return u==="touchstart"&&(function(p,h){if(!p)return!1;const x=p;return!(typeof x.closest!="function"||!x.closest(".monaco-editor, .monaco-diff-editor")||h&&typeof h=="object"&&"passive"in h)})(this,c)?f.call(this,u,a,(function(p){return p==null?{passive:!0}:typeof p=="boolean"?{capture:p,passive:!0}:typeof p=="object"?"passive"in p?p:Me(U({},p),{passive:!0}):{passive:!0}})(c)):f.call(this,u,a,c)}),o.depth++;let s=!1;i=()=>{s||(s=!0,Ee.delete(i),o.depth=Math.max(0,o.depth-1),o.depth===0&&o.original&&n.addEventListener!==o.original&&(n.addEventListener=o.original,o.original=null))},Ee.add(i)}catch{return yield e()}try{return yield e()}finally{i?.()}})}function gl(e,t){}const Jt=Mo(),Yt=b(()=>{const e=Jt?.vnode.props;return!(!e||!e.onPreviewCode&&!e["onPreview-code"])}),{t:Q}=hl(),v=$(null),z=$(null),wt=$(!1),xe=$(ao(r.node.language,r.node.code,Ve())),Cn=b(()=>Eo(xe.value)),Fe=b(()=>Cn.value==="plaintext"?"text":Cn.value),Mn=b(()=>Cn.value==="plaintext"),Pe=$(!1),Se=$(!1),X=$(!1),Ce=$(!1),q=$(!1),bt=$(!1);let B=!1,kt=null,Ft=null,Je=null,Ye=0,Qe=!1,We="";const _e=$(null),ve=$(null);let Bn=null,En=0,Fn=!1;const Ao=Ei(),Qt=Fi(),Pn=Pi(),Ie=$i(null),Z=$(typeof window>"u"||!Pn.value),jo=(ne=(te=(y=Mo())==null?void 0:y.vnode.el)==null?void 0:te.textContent)!=null?ne:"",qo=typeof window<"u"&&String((be=r.node.code)!=null?be:"").length>0&&jo.includes(String(r.node.code)),yl=$(!qo);No(()=>{yl.value=!0}),typeof window<"u"&&ue([()=>z.value,Pn],([e,t],n,l)=>{var o,i,s;if((o=Ie.value)==null||o.destroy(),Ie.value=null,!t||Z.value)return void(Z.value=!0);if(!e)return void(Z.value=!1);let u=!0;const a=(s=(i=Qt?.value.heavyBlockMargin)!=null?i:Qt?.value.rootMargin)!=null?s:"0px",c=Ao(e,{rootMargin:a,allowIdle:!1});Ie.value=c,Z.value=Z.value||c.isVisible.value,c.whenVisible.then(()=>{u&&Ie.value===c&&(Z.value=!0)}).catch(()=>{}),l(()=>{u=!1,c.destroy(),Ie.value===c&&(Ie.value=null)})},{immediate:!0}),Li(()=>{var e;B=!0;for(const t of Array.from(Ee))t();(function(){const t=We;re&&t&&(We="",re.markSettled(t))})(),(e=Ie.value)==null||e.destroy(),Ie.value=null});let se=null,Xt=null,Ln=()=>{},Kt=()=>{},xt=()=>null,de=()=>({getModel:()=>({getLineCount:()=>1}),getOption:()=>14,updateOptions:()=>{}}),V=()=>({getModel:()=>({getLineCount:()=>1}),getOption:()=>14,updateOptions:()=>{}}),On=()=>{},Xe=()=>{},$n=()=>{},Ke=null,ze=null,Pt=null,Lt=null,wl=()=>{var e;return String((e=r.node.language)!=null?e:"plaintext")},zn=()=>j(null,null,function*(){}),Hn=!1,Zt=null;const He=[],Nn=[];let Ne=null;const m=b(()=>zi(r.node)),Ze=$({removed:0,added:0}),Wo=b(()=>`-${Ze.value.removed} +${Ze.value.added}`),bl=Object.freeze(Me(U({},Wt),{enabled:!1,revealLineCount:0}));function kl(e){var t,n,l;const o=((n=(t=z.value)==null?void 0:t.getBoundingClientRect)==null?void 0:n.call(t).width)||((l=z.value)==null?void 0:l.clientWidth)||(typeof window>"u"?0:window.innerWidth);return Di(e,o)}function Ot(e,t){return{original:en(e),updated:en(t)}}function en(e){return String(e??"").replace(/\r\n$|\n$|\r$/,"")}function $t(e){var t;return String((t=e?.message)!=null?t:e).includes("no diff result available")}function St(){if(!$e())try{const e=$n();e&&typeof e.catch=="function"&&e.catch(t=>{$t(t)})}catch(e){$t(e)}}const ae=b(()=>{var e,t,n,l;const o=r.monacoOptions?U({},r.monacoOptions):{};if(!m.value)return U({lineDecorationsWidth:0,lineNumbersMinChars:2,glyphMargin:!1},o);const i=o.diffHideUnchangedRegions===void 0?U({},Wt):bn(o.diffHideUnchangedRegions),s=o.hideUnchangedRegions===void 0?void 0:bn(o.hideUnchangedRegions),u=r.stream!==!1&&r.loading!==!1,a=u?U({},bl):i,c=u?U({},bl):s,d=(function(g){return g.diffWordWrap!==void 0?g.diffWordWrap:"off"})(o),f=U({},(e=o.experimental)!=null?e:{}),p=(t=o.diffUnchangedRegionStyle)!=null?t:"line-info",h=(function(g){const N=g.scrollbar&&typeof g.scrollbar=="object"?g.scrollbar:{};return U(Me(U({},N),{verticalScrollbarSize:0,horizontalScrollbarSize:0}),kl(g)?{horizontal:"hidden"}:{})})(o),x={maxComputationTime:0,diffAlgorithm:"legacy",ignoreTrimWhitespace:!1,renderIndicators:!0,diffUpdateThrottleMs:120,renderLineHighlight:"none",renderLineHighlightOnlyWhenFocus:!0,selectionHighlight:!1,occurrencesHighlight:"off",matchBrackets:"never",lineDecorationsWidth:4,lineNumbersMinChars:2,glyphMargin:!1,padding:{top:0,bottom:0},minimap:{enabled:!1},renderOverviewRuler:!1,overviewRulerBorder:!1,hideCursorInOverviewRuler:!0,scrollBeyondLastLine:!1,diffWordWrap:d,renderSideBySide:(n=o.renderSideBySide)==null||n,diffHideUnchangedRegions:a,useInlineViewWhenSpaceIsLimited:(l=o.useInlineViewWhenSpaceIsLimited)!=null&&l,diffLineStyle:"background",diffAppearance:"auto",diffUnchangedRegionStyle:p,diffHunkActionsOnHover:!1,experimental:f};return Me(U(Me(U(U({},x),o),{experimental:f}),c===void 0?{}:{hideUnchangedRegions:c}),{diffHideUnchangedRegions:a,diffWordWrap:d,scrollbar:h})}),Tn=b(()=>(r.theme!==void 0?!po(r.theme):ho(r.darkTheme,r.lightTheme))?(function(e){var t,n;if(e&&typeof e=="object"&&((t=e.colors)!=null&&t["editor.background"])){const o=el(e.colors["editor.background"]);if(o!=null)return o<128}const l=((n=rt(e))!=null?n:"").toLowerCase();return l?["dark","night","moon","black","dracula","mocha","frappe","macchiato","palenight","ocean","poimandres","monokai","laserwave","tokyo","slack-dark","rose-pine","github-dark","material-theme","one-dark","catppuccin-mocha","catppuccin-frappe","catppuccin-macchiato"].some(o=>l.includes(o))&&!["light","latte","dawn","lotus"].some(o=>l.includes(o)):!!r.isDark})(Dt()):!!r.isDark),Rn=b(()=>{var e;if(!m.value)return Tn.value?"dark":"light";const t=(e=ae.value)==null?void 0:e.diffAppearance;return t==="light"||t==="dark"?t:Tn.value?"dark":"light"}),xl=b(()=>m.value?Rn.value==="dark":Tn.value),zt=b(()=>m.value?"diff":"single"),Sl=$(zt.value),ge=$(!1),R=$(!1),Ht=$(!1),me=$(!1),et=$(null),Dn=$(0),Cl=$(0),tn=$(!1);let Nt=null,tt=!1,An=null,jn=!1;const qn=b(()=>{var e,t,n;if(m.value){const o=(e=ae.value)==null?void 0:e.diffWordWrap;if(o==="inherit"){const i=(t=r.monacoOptions)==null?void 0:t.wordWrap;return i==null||String(i)!=="off"}return o==="on"}const l=(n=r.monacoOptions)==null?void 0:n.wordWrap;return l==null||String(l)!=="off"}),Ue=b(()=>{var e;return!!m.value&&kl((e=ae.value)!=null?e:{})}),Wn=b(()=>{var e;const t=(e=r.monacoOptions)==null?void 0:e.diffHideUnchangedRegions;return t===void 0?U({},Wt):bn(t)});function Ml(e){return T?.value===!0||!!e&&(!!e.closest('[data-markstream-virtual-timeline="1"], .markstream-virtual-timeline')||!!e.closest(".vue-recycle-scroller, [data-virtualizer], [data-virtual-scroll-root]"))}const _o=b(()=>Ml(z.value)),Te=b(()=>!(ge.value||!me.value&&R.value)),Bl=b(()=>Te.value),Io=b(()=>Te.value&&!Ht.value),Uo=b(()=>!ge.value&&!me.value&&Te.value),Vo=b(()=>R.value&&!ge.value?"ready":me.value?"fallback":"pending"),nn=$(!1),Re=b(()=>en(r.node.code)),El=b(()=>m.value?r.node.diff===!0?r.node:Me(U({},r.node),{diff:!0}):Re.value===r.node.code?r.node:Me(U({},r.node),{code:Re.value})),pe=$(typeof((ke=r.monacoOptions)==null?void 0:ke.fontSize)=="number"?r.monacoOptions.fontSize:Number.NaN),W=$(pe.value),_n=$(null),ln=$(null),on=$(null),Go=b(()=>{const e=pe.value,t=W.value;return typeof e=="number"&&Number.isFinite(e)&&e>0&&typeof t=="number"&&Number.isFinite(t)&&t>0}),rn=b(()=>{var e;const t=_n.value;if(typeof t=="number"&&Number.isFinite(t)&&t>0)return t;const n=(e=r.monacoOptions)==null?void 0:e.fontSize;if(typeof n=="number"&&Number.isFinite(n)&&n>0)return n;const l=W.value;return typeof l=="number"&&Number.isFinite(l)&&l>0?l:12}),Jo=b(()=>{var e;const t=ln.value;if(typeof t=="number"&&Number.isFinite(t)&&t>0)return t;const n=(e=r.monacoOptions)==null?void 0:e.lineHeight;return typeof n=="number"&&Number.isFinite(n)&&n>0?n:rn.value===12?18:Math.max(12,Math.round(1.5*rn.value))}),an=b(()=>Jo.value),Fl=b(()=>{var e;const t=(e=r.monacoOptions)==null?void 0:e.tabSize;return typeof t=="number"&&Number.isFinite(t)&&t>0?t:4}),un=b(()=>{var e;const t=(e=r.monacoOptions)==null?void 0:e.padding,n=m.value?0:8;return{top:typeof t?.top=="number"&&Number.isFinite(t.top)&&t.top>=0?t.top:n,bottom:typeof t?.bottom=="number"&&Number.isFinite(t.bottom)&&t.bottom>=0?t.bottom:n}}),sn=b(()=>{const e=r.estimatedContentHeightPx;return typeof e=="number"&&Number.isFinite(e)&&e>0?e:null});function dn(e){if(e==null)return null;const t=Math.ceil(e);return!Number.isFinite(t)||t<=0?null:Math.min(t,Math.ceil(Mt()))}function In(){return!m.value&&r.stream!==!1&&r.loading!==!1}const Pl=b(()=>m.value?null:sn.value==null||In()?Math.ceil((e=>{const t=String(e??"");return t?Math.max(1,t.split(/\r\n|\n|\r/).length):1})(Re.value)*an.value+1):null),Ll=b(()=>{if(m.value)return null;const e=sn.value;return e==null||In()?dn(Pl.value):dn(e)}),Yo=b(()=>{const e=r.estimatedHeightPx;return typeof e=="number"&&Number.isFinite(e)&&e>0?e:null}),Un=$(null);function nt(){const e=Un.value;return typeof e=="number"&&Number.isFinite(e)&&e>0?Math.round(e):null}const Vn=b(()=>{const e=nt();return e??(!m.value&&tn.value?null:Te.value||!R.value?Ll.value:null)});function Ol(e){const t=e?"hsl(152 42% 60%)":"var(--diff-added-fg)",n=e?"hsl(0 58% 58%)":"var(--diff-removed-fg)",l=e?"hsl(152 42% 60% / 0.18)":"var(--diff-added-bg)",o=e?"hsl(0 58% 58% / 0.18)":"var(--diff-removed-bg)",i=e?"hsl(152 42% 60% / 0.28)":"var(--diff-added-inline-bg)",s=e?"hsl(0 58% 58% / 0.28)":"var(--diff-removed-inline-bg)",u=`linear-gradient(90deg, ${t} 0 4px, transparent 4px 100%)`,a=`linear-gradient(90deg, ${n} 0 4px, transparent 4px 100%)`,c=e?"hsl(0 0% 7% / 0.98)":"hsl(var(--ms-muted) / 0.45)",d="var(--markstream-code-layout-character-width, 1ch)",f=`calc(${d} + ${d})`,p=`calc(${d} + ${d} + ${d} + ${d} + ${d} + 2px)`,h=`calc(${p} + ${d})`;return{"--markstream-diff-line-number-bg":c,"--markstream-diff-added-fg":t,"--markstream-diff-removed-fg":n,"--markstream-diff-added-line":l,"--markstream-diff-removed-line":o,"--markstream-diff-added-line-fill":l,"--markstream-diff-removed-line-fill":o,"--markstream-diff-added-gutter":u,"--markstream-diff-removed-gutter":a,"--markstream-diff-added-inline":i,"--markstream-diff-removed-inline":s,"--stream-monaco-added-fg":t,"--stream-monaco-removed-fg":n,"--stream-monaco-added-line":l,"--stream-monaco-removed-line":o,"--stream-monaco-added-line-fill":l,"--stream-monaco-removed-line-fill":o,"--stream-monaco-added-gutter":u,"--stream-monaco-removed-gutter":a,"--stream-monaco-added-inline":i,"--stream-monaco-removed-inline":s,"--stream-monaco-gutter-marker-width":"4px","--stream-monaco-gutter-gap":"1ch","--stream-monaco-line-number-left":"0px","--stream-monaco-line-number-width":f,"--stream-monaco-line-number-padding-left":f,"--stream-monaco-line-number-padding-right":d,"--stream-monaco-line-number-separator-width":"2px","--stream-monaco-layout-character-width":d,"--stream-monaco-line-number-box-width":p,"--stream-monaco-line-number-gap-to-code":d,"--stream-monaco-line-number-bg":c,"--stream-monaco-diff-code-gap":d,"--stream-monaco-diff-code-padding":"0px","--stream-monaco-original-margin-width":h,"--stream-monaco-original-scrollable-left":h,"--stream-monaco-original-scrollable-width":`calc(100% - ${h})`,"--stream-monaco-modified-margin-width":h,"--stream-monaco-modified-scrollable-left":h,"--stream-monaco-modified-scrollable-width":`calc(100% - ${h})`}}const $l=b(()=>{var e;const t=(e=r.monacoOptions)==null?void 0:e.fontFamily,n=dn(sn.value),l=dn(Pl.value),o=In(),i=U(U({fontSize:`${rn.value}px`,lineHeight:`${an.value}px`,tabSize:Fl.value,boxSizing:"border-box",maxHeight:`${Mt()}px`,overflow:"auto",paddingTop:`${un.value.top}px`,paddingBottom:`${un.value.bottom}px`},m.value||n==null||o?m.value||l==null?{}:{minHeight:`${l}px`}:{height:`${n}px`,minHeight:`${n}px`}),typeof t=="string"&&t.trim()?{"--markstream-code-font-family":t.trim()}:{});return i["--markstream-pre-line-number-top"]=`${un.value.top}px`,i["--markstream-pre-line-number-left"]="0px",i["--markstream-pre-line-number-padding-left"]="2ch",i["--markstream-pre-line-number-padding-right"]="1ch",i["--markstream-pre-line-number-separator-width"]="2px",m.value&&(i["--markstream-pre-diff-line-height"]=`${an.value}px`,i["--markstream-pre-diff-pane-bottom-padding"]=(Ue.value,"0px"),Object.assign(i,Ol(xl.value))),i}),zl=b(()=>Vn.value!=null&&(!R.value||nt()!=null)),Qo=b(()=>{const e=Vn.value;if(e==null)return null;if(m.value)return Math.ceil(e);const t=Yo.value,n=sn.value;if(t==null||n==null)return Math.ceil(e);const l=Math.max(0,Math.ceil(t)-Math.ceil(n));return Math.ceil(e+l)}),Xo=b(()=>{if(m.value&&Te.value)return{};const e=Vn.value;return zl.value&&e!=null?{minHeight:`${e}px`}:{}});function Hl(){var e,t,n,l,o,i,s,u;const a=(e=z.value)==null?void 0:e.querySelector("pre.code-pre-fallback"),c=V(),d=(t=a?.scrollTop)!=null?t:0;(o=(l=(n=c?.getOriginalEditor)==null?void 0:n.call(c))==null?void 0:l.setScrollTop)==null||o.call(l,d),(u=(s=(i=c?.getModifiedEditor)==null?void 0:i.call(c))==null?void 0:s.setScrollTop)==null||u.call(s,d)}function Nl(){return j(this,null,function*(){return m.value?(tl()!=null||cn(),ee(!0),Hl(),he(),Ht.value=!0,yield A(),ee(!0),yield Le(),ee(!0),!(Ke&&!(yield Ke())||(Rt(),cn(),ee(!0),R.value=!0,yield A(),cn(),ee(!0),Rt(),he(),ce(),0))):!(Ke&&!(yield Ke())||(R.value=!0,yield A(),le(!1),ee(),0))})}function cn(){const e=v.value;return e&&mn(e)?(he(),le({preferModelDiffHeight:!0}),it(),Number.parseFloat(e.style.height||"")||null):tl()}function Tl(){if(!m.value||!q.value||!R.value||Te.value)return!1;const e=v.value;return!!e&&Tt(e)}function Rl(e,t=!1,n={}){const l=Math.ceil(e),o=nt();if(o==null)return l;const i=n.allowBelowEstimatedFloor===!0||Tl();return l>=o||i?((t||i)&&q.value&&(Un.value=null),l):o}function Le(){return new Promise(e=>{let t=!1,n=null,l=null;const o=()=>{t||(t=!0,l!=null&&globalThis.clearTimeout(l),n!=null&&kn(n),e())};l=globalThis.setTimeout(o,50),n=fe(o)})}function Dl(){try{const e=v.value;if(!e)return null;const t=e.querySelector(".view-lines .view-line");if(t){const n=Math.ceil(t.getBoundingClientRect().height);if(n>0)return n}}catch{}return null}function Gn(){var e,t,n,l,o;try{const i=m.value?(n=(t=(e=V())==null?void 0:e.getModifiedEditor)==null?void 0:t.call(e))!=null?n:V():de(),s=xt(),u=(l=s?.EditorOption)==null?void 0:l.fontInfo;if(i&&u!=null){const a=(o=i.getOption)==null?void 0:o.call(i,u),c=a?.fontSize;if(typeof c=="number"&&Number.isFinite(c)&&c>0)return c}}catch{}try{const i=v.value;if(i){const s=i.querySelector(".view-lines .view-line");if(s)try{if(typeof window<"u"&&typeof window.getComputedStyle=="function"){const u=window.getComputedStyle(s).fontSize,a=u&&u.match(/^(\d+(?:\.\d+)?)/);if(a)return Number.parseFloat(a[1])}}catch{}}}catch{}return null}function Ct(e){var t,n;try{const i=xt(),s=(t=i?.EditorOption)==null?void 0:t.lineHeight;if(s!=null){const u=(n=e?.getOption)==null?void 0:n.call(e,s);if(typeof u=="number"&&u>0)return u}}catch{}const l=Dl();if(l&&l>0)return l;const o=Number.isFinite(W.value)&&W.value>0?W.value:14;return Math.max(12,Math.round(1.35*o))}function fn(e){var t,n,l;try{const i=xt(),s=(t=i?.EditorOption)==null?void 0:t.padding;if(s!=null){const u=(n=e?.getOption)==null?void 0:n.call(e,s);if(typeof u?.top=="number"||typeof u?.bottom=="number")return(typeof u?.top=="number"&&Number.isFinite(u.top)?Math.max(0,u.top):0)+(typeof u?.bottom=="number"&&Number.isFinite(u.bottom)?Math.max(0,u.bottom):0)}}catch{}const o=(l=ae.value)==null?void 0:l.padding;return typeof o?.top=="number"||typeof o?.bottom=="number"?(typeof o?.top=="number"&&Number.isFinite(o.top)?Math.max(0,o.top):0)+(typeof o?.bottom=="number"&&Number.isFinite(o.bottom)?Math.max(0,o.bottom):0):m.value?24:0}function Al(e,t){return typeof e!="number"||typeof t!="number"||e<1||t=o&&s>=o&&n[i]===l[s];)i--,s--;const u=Math.max(0,i-o+1),a=Math.max(0,s-o+1);if(u===0||a===0)return{removed:u,added:a};if((u+1)*(a+1)<=15e5){const c=a+1;let d=new Uint32Array(c),f=new Uint32Array(c);for(let h=u-1;h>=0;h--){f[a]=0;for(let g=a-1;g>=0;g--)f[g]=n[o+h]===l[o+g]?d[g+1]+1:Math.max(d[g],f[g+1]);const x=d;d=f,f=x}const p=d[0];return{removed:u-p,added:a-p}}return{removed:u,added:a}}function ql(e){var t;if(!(function(){var s,u,a;return!(!m.value||!Ue.value)&&(r.node.originalCode!=null||r.node.updatedCode!=null?vn(String((s=r.node.originalCode)!=null?s:""),String((u=r.node.updatedCode)!=null?u:"")).removed>0:String((a=r.node.code)!=null?a:"").split(/\r\n|\n|\r/).some(c=>(function(d){return d.startsWith("-")&&!d.startsWith("---")})(c)))})())return!0;const n=e?.querySelector(".stream-monaco-fallback-inline-delete-line");if((t=n?.textContent)!=null&&t.trim()&&(n.hasAttribute("data-stream-monaco-colorize-signature")||n.querySelector('[class*="mtk"]')))return!0;const l=e?.querySelector([".editor.modified .view-zones .view-lines.line-delete",".editor.modified .view-lines .view-line.line-delete",".editor.original .view-zones .view-lines.line-delete",".editor.original .view-lines .view-line.line-delete"].join(","));if(!l||!l.matches(".view-line")&&!l.querySelector(".view-line"))return!1;const o=l.getBoundingClientRect(),i=e?.getBoundingClientRect();return i?.width===0&&i.height===0||o.width>0&&o.height>0}function Wl(e,t){if(!e)return!1;const n=t.added<=0||!!e.querySelector([".line-insert",".gutter-insert",".stream-monaco-fallback-line-insert",".stream-monaco-fallback-gutter-insert",".stream-monaco-fallback-line-number-insert"].join(",")),l=t.removed<=0||!!e.querySelector([".line-delete",".gutter-delete",".inline-deleted-margin-view-zone",".stream-monaco-fallback-line-delete",".stream-monaco-fallback-gutter-delete",".stream-monaco-fallback-line-number-delete",".stream-monaco-fallback-inline-delete-line",".stream-monaco-fallback-inline-delete-margin"].join(","));return n&&l}function Jn(e,t){const n=e?.querySelector(t);return n instanceof HTMLElement?typeof window>"u"||typeof window.getComputedStyle!="function"?n:window.getComputedStyle(n).display==="none"?null:n:null}function _l(e,t){return Jn(e,t)!==null}function Il(e,t){if(!e)return!1;const n=t.added<=0||[".gutter-insert",".stream-monaco-fallback-gutter-insert"].some(o=>_l(e,o)),l=t.removed<=0||[".gutter-delete",".inline-deleted-margin-view-zone",".stream-monaco-fallback-gutter-delete",".stream-monaco-fallback-inline-delete-margin"].some(o=>_l(e,o));return n&&l}function Ul(e){var t;const n=Array.from((t=e?.querySelectorAll(".monaco-diff-editor .margin-view-overlays .line-numbers"))!=null?t:[]);return!!n.length&&n.some(l=>{var o;if(!((o=l.textContent)!=null&&o.trim()))return!1;if(typeof window>"u"||typeof window.getComputedStyle!="function")return!0;const i=window.getComputedStyle(l);if(i.display==="none")return!1;const s=l.getBoundingClientRect();if(s.width<=0&&s.height<=0)return!0;const u=Number.parseFloat(i.width||""),a=Number.parseFloat(i.paddingLeft||""),c=Number.parseFloat(i.paddingRight||""),d=Math.max(s.width,Number.isFinite(u)?u:0)>=8,f=Number.isFinite(a)&&a>=1&&Number.isFinite(c)&&c>=1;return d&&f})}function Vl(e){const t=Jn(e,".monaco-diff-editor .view-lines .view-line");if(!t)return!1;if(!Qn())return!0;const n=Jn(e,".monaco-diff-editor .margin-view-overlays .line-numbers");if(!n)return!1;if(typeof window>"u"||typeof window.getComputedStyle!="function")return!0;const l=t.getBoundingClientRect(),o=n.getBoundingClientRect();if(l.width<=0&&l.height<=0||o.width<=0&&o.height<=0)return!0;const i=l.left-o.right;return i>=0&&i<=32}function Ko(e,t){return!Ue.value||!(t||e?.querySelector([".line-insert",".line-delete",".gutter-insert",".gutter-delete",".stream-monaco-line-number-insert",".stream-monaco-line-number-delete",".stream-monaco-line-insert-fill",".stream-monaco-line-delete-fill",".stream-monaco-fallback-line-insert",".stream-monaco-fallback-line-delete",".stream-monaco-fallback-inline-delete-line"].join(",")))||!!(e?.classList.contains("stream-monaco-diff-inline-native-ready")&&!e.classList.contains("stream-monaco-diff-native-stale"))}function Gl(e,t,n,l){const o=e?.querySelector(`.monaco-diff-editor .editor.${t}`);if(!o)return!1;const i=Array.from(o.querySelectorAll(`.margin-view-overlays .line-numbers.${n}`));if(!i.length)return!0;const s=Array.from(o.querySelectorAll(".lines-content > .view-lines:not(.line-delete) > .view-line"));return!!s.length&&i.every(u=>{const a=u.getBoundingClientRect();let c=null;for(const d of s){const f=d.getBoundingClientRect(),p=Math.abs(f.top-a.top);(!c||p1.25||c.node.classList.contains(l)})}function Zo(e,t){if(!e)return!1;const n=t.added<=0||Gl(e,"modified","stream-monaco-line-number-insert","stream-monaco-line-insert-fill"),l=t.removed<=0||(Ue.value?!!e.classList.contains("stream-monaco-diff-inline-native-ready"):Gl(e,"original","stream-monaco-line-number-delete","stream-monaco-line-delete-fill"));return n&&l}function Yn(e){if(Mn.value)return!0;if(!e)return!1;const t=Array.from(e.querySelectorAll(".monaco-diff-editor .view-lines .view-line, .monaco-editor .view-lines .view-line")).filter(l=>{var o;if(!((o=l.textContent)!=null&&o.trim()))return!1;const i=l.getBoundingClientRect();return i.width>0||i.height>0});if(!t.length)return!1;const n=t.filter(l=>{var o,i;return i=(o=l.textContent)!=null?o:"",/['"`{}()[\]:;=<>.,]|\/\/|\/\*|\b(?:async|await|class|const|enum|export|for|function|if|import|interface|let|return|switch|type|var|while)\b/.test(i.replace(/\u00A0/g," ").trim())});return!n.length||n.filter(l=>Array.from(l.querySelectorAll("span")).filter(o=>{var i;return(i=o.textContent)==null?void 0:i.trim()}).some(o=>String(o.className||"").split(/\s+/).some(i=>/^mtk\d+$/.test(i)&&i!=="mtk1"))).length>0}function Qn(){const e=ae.value;return e?.lineNumbers!=="off"}function Xn(){var e,t;m.value?Ze.value=vn(String((e=r.node.originalCode)!=null?e:""),String((t=r.node.updatedCode)!=null?t:"")):Ze.value={removed:0,added:0}}function lt(){var e;if(m.value)try{const t=V(),n=(e=t?.getLineChanges)==null?void 0:e.call(t);if(!Array.isArray(n))return void Xn();let l=0,o=0;for(const i of n)l+=Al(i.originalStartLineNumber,i.originalEndLineNumber),o+=Al(i.modifiedStartLineNumber,i.modifiedEndLineNumber);Ze.value={removed:l,added:o}}catch{Xn()}else Ze.value={removed:0,added:0}}function Kn(){var e;if(Number.isFinite(W.value)&&W.value>0&&Number.isFinite(pe.value))return W.value;const t=Gn();return typeof((e=r.monacoOptions)==null?void 0:e.fontSize)=="number"?(pe.value=r.monacoOptions.fontSize,W.value=r.monacoOptions.fontSize,W.value):t&&t>0?(pe.value=t,W.value=t,t):(pe.value=12,W.value=12,12)}function ei(){const e=Kn(),t=Math.min(36,e+1);W.value=t}function ti(){const e=Kn(),t=Math.max(10,e-1);W.value=t}function ni(){Kn(),Number.isFinite(pe.value)&&(W.value=pe.value)}function Jl(){var e,t,n,l,o,i,s,u,a,c,d,f,p,h;try{const x=m.value?V():null,g=m.value?x:de();if(!g)return null;if(x?.getOriginalEditor&&x?.getModifiedEditor){const F=(e=x.getOriginalEditor)==null?void 0:e.call(x),S=(t=x.getModifiedEditor)==null?void 0:t.call(x);(n=F?.layout)==null||n.call(F),(l=S?.layout)==null||l.call(S);const D=((o=F?.getContentHeight)==null?void 0:o.call(F))||0,C=((i=S?.getContentHeight)==null?void 0:i.call(S))||0,L=Math.max(D,C);if(L>0)return Math.ceil(L);const K=((a=(u=(s=F?.getModel)==null?void 0:s.call(F))==null?void 0:u.getLineCount)==null?void 0:a.call(u))||1,_=((f=(d=(c=S?.getModel)==null?void 0:c.call(S))==null?void 0:d.getLineCount)==null?void 0:f.call(d))||1,O=Math.max(K,_),I=Math.max(Ct(F),Ct(S)),G=Math.max(fn(F),fn(S));return Math.ceil(O*I+G+0)}if(g?.getContentHeight){(p=g?.layout)==null||p.call(g);const F=g.getContentHeight();if(F>0)return m.value||(tn.value=!0),Math.ceil(F)}const N=(h=g?.getModel)==null?void 0:h.call(g);let oe=1;N&&typeof N.getLineCount=="function"&&(oe=N.getLineCount());const E=Ct(g);return Math.ceil(oe*(E+1.5)+0)}catch{return null}}function Yl(){var e,t;if(m.value)return!1;try{const n=(t=(e=de())==null?void 0:e.getContentHeight)==null?void 0:t.call(e),l=typeof n=="number"&&Number.isFinite(n)&&n>0;return l&&(tn.value=!0),l}catch{return!1}}function Zn(e){var t,n,l;if(typeof window>"u")return null;try{const o=e.getBoundingClientRect(),i=window.getComputedStyle(e);if(i.display==="none"||i.visibility==="hidden")return null;const s=e.querySelector("diffs-container");if(s instanceof HTMLElement){const c=s.getBoundingClientRect();if(c.height>0&&c.bottom>o.top)return Math.ceil(c.bottom-o.top)}const u=[".editor.original .view-lines .view-line",".editor.modified .view-lines .view-line",".editor.original .view-zones > div",".editor.modified .view-zones > div",".editor.original .margin-view-zones > div",".editor.modified .margin-view-zones > div",".editor.original .diff-hidden-lines",".editor.modified .diff-hidden-lines",".stream-monaco-diff-unchanged-bridge"];let a=0;for(const c of Array.from(e.querySelectorAll(u.join(",")))){if(!(c instanceof HTMLElement)||((t=c.parentElement)!=null&&t.classList.contains("view-zones")||(n=c.parentElement)!=null&&n.classList.contains("margin-view-zones"))&&!((l=c.textContent)!=null&&l.trim()||c.matches(".line-delete, .line-insert, .cdr")||c.querySelector(".diff-hidden-lines, .stream-monaco-diff-unchanged-bridge, .line-delete, .line-insert, .cdr")))continue;const d=window.getComputedStyle(c);if(d.display==="none"||d.visibility==="hidden"||Number.parseFloat(d.opacity||"1")<=.01)continue;const f=c.getBoundingClientRect();f.height<=0||f.bottom<=o.top||(a=Math.max(a,f.bottom-o.top))}return a>0?Math.ceil(a):null}catch{return null}}function Tt(e){if(typeof window>"u")return!1;const t=e.getBoundingClientRect();if(t.width<=0||t.height<=0)return!1;const n=e.querySelectorAll(".editor.modified .diff-hidden-lines, .editor.original .diff-hidden-lines, .stream-monaco-diff-unchanged-bridge");for(const l of Array.from(n)){if(!(l instanceof HTMLElement))continue;const o=window.getComputedStyle(l);if(o.display==="none"||o.visibility==="hidden"||Number.parseFloat(o.opacity||"1")<=.01)continue;const i=l.getBoundingClientRect();if(!(i.width<=0||i.height<=0||i.bottom<=t.top||i.top>=t.bottom))return!0}return!1}function el(e){var t;const n=String(e??"").trim(),l=(t=n.match(/^#([0-9a-f]{3}|[0-9a-f]{6})$/i))==null?void 0:t[1];if(l){const a=l.length===3?l.split("").map(c=>`${c}${c}`).join(""):l;return .2126*Number.parseInt(a.slice(0,2),16)+.7152*Number.parseInt(a.slice(2,4),16)+.0722*Number.parseInt(a.slice(4,6),16)}const o=n.match(/\d+(?:\.\d+)?/g);if(!o||o.length<3)return null;const[i,s,u]=o.slice(0,3).map(Number);return .2126*i+.7152*s+.0722*u}function Rt(){var e,t,n;if(Ql())return;const l=Gn();l&&l>0&&(_n.value=l,W.value=l,pe.value=l);try{const o=Ct(m.value?(n=(t=(e=V())==null?void 0:e.getModifiedEditor)==null?void 0:t.call(e))!=null?n:V():de());o&&o>0&&(ln.value=o)}catch{}try{const o=Dl();o&&o>0&&(ln.value=o)}catch{}}function Ql(){return m.value&&Bl.value}function tl(){var e;if(!m.value||!Te.value)return null;const t=v.value,n=(e=z.value)==null?void 0:e.querySelector("pre.code-pre-fallback");if(!t||!n)return null;const l=Math.ceil(n.getBoundingClientRect().height);return!Number.isFinite(l)||l<=0?null:(t.style.height=`${l}px`,t.style.minHeight=`${l}px`,t.style.maxHeight=`${Math.ceil(Mt())}px`,t.style.overflow="hidden",l)}function nl(){var e,t,n,l,o,i,s,u,a;const c=v.value,d=z.value;if(!c||!d)return;const f=c;f.style.setProperty("--diffs-tab-size",String(Fl.value));const p=(e=r.monacoOptions)==null?void 0:e.padding;p&&typeof p=="object"?f.style.setProperty("--diffs-gap-block",`${un.value.top}px`):f.style.removeProperty("--diffs-gap-block");const h=c.querySelector(".monaco-editor")||c,x=h.querySelector(".monaco-editor-background")||h,g=h.querySelector(".view-lines")||h;let N=null,oe=null,E=null;try{typeof window<"u"&&typeof window.getComputedStyle=="function"&&(N=window.getComputedStyle(h),oe=x===h?N:window.getComputedStyle(x),E=g===h?N:window.getComputedStyle(g))}catch{N=null,oe=null,E=null}const F=String((t=N?.getPropertyValue("--vscode-editor-foreground"))!=null?t:"").trim(),S=String((n=N?.getPropertyValue("--vscode-editor-background"))!=null?n:"").trim(),D=String((o=(l=N?.getPropertyValue("--vscode-editor-selectionBackground"))!=null?l:N?.getPropertyValue("--vscode-editor-hoverHighlightBackground"))!=null?o:"").trim(),C=F||String((s=(i=E?.color)!=null?i:N?.color)!=null?s:"").trim(),L=S||String((a=(u=oe?.backgroundColor)!=null?u:N?.backgroundColor)!=null?a:"").trim(),K=(function(){var _,O,I,G,ye;try{const st=m.value?(I=(O=(_=V())==null?void 0:_.getModifiedEditor)==null?void 0:O.call(_))!=null?I:V():de(),jt=xt(),Et=(G=jt?.EditorOption)==null?void 0:G.fontInfo;if(st&&Et!=null){const qt=(ye=st.getOption)==null?void 0:ye.call(st,Et),dt=qt?.typicalHalfwidthCharacterWidth;if(typeof dt=="number"&&Number.isFinite(dt)&&dt>0)return dt}}catch{}return null})();if(K!=null&&(on.value=K),m.value){const _=(O,I)=>{I?(d.style.setProperty(O,I),f.style.setProperty(O,I)):(d.style.removeProperty(O),f.style.removeProperty(O))};for(const[O,I]of Object.entries(Ol(d.classList.contains("is-dark"))))_(O,I);return C?(d.style.setProperty("--markstream-diff-editor-fg",C),f.style.setProperty("--vscode-editor-foreground",C),f.style.setProperty("--stream-monaco-editor-fg",C)):(d.style.removeProperty("--markstream-diff-editor-fg"),f.style.removeProperty("--vscode-editor-foreground"),f.style.removeProperty("--stream-monaco-editor-fg")),L?(d.style.setProperty("--markstream-diff-editor-bg",L),d.style.setProperty("--markstream-diff-panel-bg",L),d.style.setProperty("--markstream-diff-panel-bg-soft",L),d.style.setProperty("--markstream-diff-panel-bg-strong",L),f.style.setProperty("--vscode-editor-background",L),f.style.setProperty("--stream-monaco-editor-bg",L),f.style.setProperty("--stream-monaco-fixed-editor-bg",L),f.style.setProperty("--stream-monaco-panel-bg",L),f.style.setProperty("--stream-monaco-panel-bg-soft",L),f.style.setProperty("--stream-monaco-panel-bg-strong",L),f.style.backgroundColor=L):(d.style.removeProperty("--markstream-diff-editor-bg"),d.style.removeProperty("--markstream-diff-panel-bg"),d.style.removeProperty("--markstream-diff-panel-bg-soft"),d.style.removeProperty("--markstream-diff-panel-bg-strong"),f.style.removeProperty("--vscode-editor-background"),f.style.removeProperty("--stream-monaco-editor-bg"),f.style.removeProperty("--stream-monaco-fixed-editor-bg"),f.style.removeProperty("--stream-monaco-panel-bg"),f.style.removeProperty("--stream-monaco-panel-bg-soft"),f.style.removeProperty("--stream-monaco-panel-bg-strong"),f.style.backgroundColor=""),void(D?f.style.setProperty("--vscode-editor-selectionBackground",D):f.style.removeProperty("--vscode-editor-selectionBackground"))}if((function(_,O,I){if(!Mn.value)return!1;const G=el(_),ye=el(O);return I?G!=null&&G>170||ye!=null&&ye<110:G!=null&&G<85||ye!=null&&ye>190})(L,C,d.classList.contains("is-dark")))return f.style.removeProperty("--vscode-editor-foreground"),f.style.removeProperty("--vscode-editor-background"),void f.style.removeProperty("--vscode-editor-selectionBackground");C&&f.style.setProperty("--vscode-editor-foreground",C),L&&f.style.setProperty("--vscode-editor-background",L),D&&f.style.setProperty("--vscode-editor-selectionBackground",D)}let ll=0,ol=0;const Xl=/auto|scroll|overlay/i;function Oe(e,t,n){var l;if(typeof window>"u"||m.value||(function(d){return _o.value||Ml(d)})(e))return;const o=Math.ceil(t),i=Math.ceil(n)-o;if(Math.abs(i)<=1)return;const s=(function(d){var f,p;if(typeof window>"u")return null;const h=(f=d?.ownerDocument)!=null?f:document,x=h.scrollingElement||h.documentElement||h.body;let g=(p=d?.parentElement)!=null?p:null;for(;g&&g!==h.body&&g!==x;){const N=window.getComputedStyle(g),oe=(N.overflowY||"").toLowerCase(),E=(N.overflow||"").toLowerCase();if(Xl.test(oe)||Xl.test(E))return g;g=g.parentElement}return x})(e);if(!s)return;const u=(l=e.ownerDocument)!=null?l:document,a=s===u.body||s===u.documentElement||s===u.scrollingElement,c=a?0:s.getBoundingClientRect().top;e.getBoundingClientRect().top-c>=0||(a&&typeof window.scrollBy=="function"?window.scrollBy(0,i):s.scrollTop+=i)}function il(){try{const e=v.value;if(!e)return;const t=e.getBoundingClientRect().height,n=Jl();if(n!=null&&n>0){const o=Rl(n,!0,{allowBelowEstimatedFloor:!m.value&&q.value&&Yl()}),i=nt();return e.style.minHeight=i!=null?`${i}px`:"0px",e.style.height=`${o}px`,e.style.maxHeight="none",e.style.overflow="visible",void Oe(e,t,o)}const l=nt();l!=null&&(e.style.minHeight=`${l}px`,e.style.height=`${l}px`,e.style.maxHeight="none",e.style.overflow="visible",Oe(e,t,l))}catch{}}function ot(){for(var e,t;He.length>0;)try{(t=(e=He.pop())==null?void 0:e.dispose)==null||t.call(e)}catch{}kt!=null&&(kn(kt),kt=null),Ft!=null&&(kn(Ft),Ft=null),Je!=null&&(kn(Je),Je=null),Ye=0,Qe=!1}function De(){for(var e;Nn.length>0;)try{(e=Nn.pop())==null||e()}catch{}}function le(e=!1){Se.value||(Pe.value?il():(function(t={}){var n,l,o;try{const i=v.value;if(!i)return;const s=i.getBoundingClientRect().height,u=Mt(),a=Math.ceil(((n=i.getBoundingClientRect)==null?void 0:n.call(i).height)||0),c=Number.parseFloat(i.style.height||""),d=a>0?a:Number.isFinite(c)&&c>0?Math.ceil(c):0,f=m.value?(function(){var O,I,G,ye,st,jt,Et,qt,dt,xo,So,Co;if($e())return null;try{const ct=V(),ft=(O=ct?.getOriginalEditor)==null?void 0:O.call(ct),vt=(I=ct?.getModifiedEditor)==null?void 0:I.call(ct);if(!ft||!vt)return null;const hi=((st=(ye=(G=ft.getModel)==null?void 0:G.call(ft))==null?void 0:ye.getLineCount)==null?void 0:st.call(ye))||1,gi=((qt=(Et=(jt=vt.getModel)==null?void 0:jt.call(vt))==null?void 0:Et.getLineCount)==null?void 0:qt.call(Et))||1,yi=Math.max(hi,gi),wi=Math.max(Ct(ft),Ct(vt)),bi=Math.max(fn(ft),fn(vt)),ki=Math.max((xo=(dt=ft.getContentHeight)==null?void 0:dt.call(ft))!=null?xo:0,(Co=(So=vt.getContentHeight)==null?void 0:So.call(vt))!=null?Co:0);return Math.ceil(Math.max(ki,yi*wi+bi+0))}catch{return null}})():null,p=m.value&&Tt(i),h=m.value&&mn(i),x=m.value&&i.classList.contains("stream-monaco-diff-native-stale"),g=p&&q.value&&R.value&&!Te.value;if(p||(ve.value=null),En>0&&(En--,_e.value!=null))return void Oe(i,s,Ae(i,_e.value,u,{allowBelowEstimatedFloor:g,preserveScrollableOverflow:rl(i)}));if(m.value&&!h&&!p&&Te.value){const O=tl();if(O!=null){const I=Ae(i,O,u,{allowBelowEstimatedFloor:!0});return ee(!0),void Oe(i,s,I)}}const N=m.value&&t.preferModelDiffHeight===!0,oe=m.value?Zn(i):null,E=oe,F=!m.value&&q.value&&Yl(),S=m.value&&r.loading!==!1&&(E!=null||f!=null&&a>0&&f0&&f0&&f0?d:null:f;else C=Jl();if(m.value&&r.loading===!1&&x&&!g&&C!=null&&f!=null&&(C=Math.min(C,f)),m.value&&C!=null&&d>0&&(r.loading!==!1||r.loading===!1&&x&&!g||t.holdCurrentDiffHeight===!0&&!g)&&(C=Math.max(C,d)),C!=null&&C>0){const O=p&&ve.value!=null,I=p&&a>0&&a=u-1,G=Ae(i,O?Math.max(ve.value,C):I?a:C,u,{clearEstimatedFloor:!0,allowBelowEstimatedFloor:g||F||S,preserveScrollableOverflow:rl(i)});return p&&G0?f:0);if(L>0){const O=p&&ve.value!=null,I=p&&a>0&&a=u-1,G=Ae(i,O?Math.max(ve.value,L):I?a:L,u,{allowBelowEstimatedFloor:g});return p&&G0?Oe(i,s,Ae(i,_,u,{allowBelowEstimatedFloor:g})):m.value||Oe(i,s,Ae(i,u,u))}catch{}})(typeof e=="object"?e:{}))}function Kl(){ll=0,ol=0}function ee(e=!1){var t,n,l;if(Se.value)return;const o=v.value;if(!o)return;const i=m.value?V():de();if(i&&typeof i.layout=="function")try{const s=(t=o.getBoundingClientRect)==null?void 0:t.call(o),u=Math.ceil(((n=s?.width)!=null?n:0)||o.clientWidth||0),a=Math.ceil(((l=s?.height)!=null?l:0)||o.clientHeight||Number.parseFloat(o.style.height||"")||0);if(u>0&&a>0){if(!e&&u===ll&&a===ol)return;ll=u,ol=a,i.layout({width:u,height:a})}else Kl(),i.layout()}catch{}}function he(){if(!m.value)return void De();const e=v.value;if(!e)return void De();const t=e.querySelector(".monaco-diff-editor");if(!t||t.classList.contains("side-by-side"))return void De();const n=Array.from(t.querySelectorAll(".editor.original .diff-hidden-lines")),l=Array.from(t.querySelectorAll(".editor.modified .diff-hidden-lines")),o=Math.min(n.length,l.length);for(let i=0;i div:first-child"),c=s.querySelector(".center");if(!u||!a||!c||c.querySelector(".markstream-inline-fold-proxy"))continue;const d=document.createElement("button");d.type="button",d.className="markstream-inline-fold-proxy",d.dataset.markstreamInlineFoldProxy="true";const f=u.getAttribute("title")||"Show Unchanged Region";d.title=f,d.setAttribute("aria-label",f);const p=g=>{g.preventDefault(),g.stopPropagation()},h=g=>{g.preventDefault(),g.stopPropagation(),u.click(),fe(()=>ce())},x=g=>{g.key!=="Enter"&&g.key!==" "||(g.preventDefault(),g.stopPropagation(),u.click(),fe(()=>ce()))};d.addEventListener("mousedown",p),d.addEventListener("click",h),d.addEventListener("keydown",x),c.appendChild(d),Nn.push(()=>{d.removeEventListener("mousedown",p),d.removeEventListener("click",h),d.removeEventListener("keydown",x),d.parentElement===c&&c.removeChild(d)})}}function ce(e=!1){if(B||kt!=null)return;const t=()=>{B||(he(),le(e),ee())};kt=fe(()=>{kt=null,t(),Ft=fe(()=>{Ft=null,t()})}),it()}function it(e=!1){if(!m.value||B||!e&&r.loading===!1||(Qe=Qe||e,Ye=Math.max(Ye,e?18:6),Je!=null))return;const t=()=>{if(Je=null,!m.value||B||Ye<=0||!Qe&&r.loading===!1)return Ye=0,void(Qe=!1);Ye--,he(),le({preferModelDiffHeight:!0,holdCurrentDiffHeight:Qe}),ee(),Ye>0?Je=fe(t):Qe=!1};Je=fe(t)}function Ae(e,t,n,l={}){const o=m.value&&r.loading!==!1?Zn(e):null,i=o!=null&&o>t+1?o:t,s=Math.min(i,n),u=l.allowBelowEstimatedFloor===!0||Tl(),a=Rl(s,l.clearEstimatedFloor===!0,{allowBelowEstimatedFloor:u}),c=nt();if(e.style.minHeight=c==null||u?"0px":`${Math.min(c,Math.ceil(n))}px`,e.style.height=`${a}px`,e.style.maxHeight=`${Math.ceil(n)}px`,m.value)e.style.overflow="hidden";else{const d=l.preserveScrollableOverflow===!0||t>n+1;e.style.overflow=d?"auto":"hidden"}return a}function Zl(e,t=0){var n;const l=Math.ceil(((n=e.getBoundingClientRect)==null?void 0:n.call(e).height)||0),o=Math.max(t,e.clientHeight||0,l);return o>0&&e.scrollHeight>o+1}function rl(e){var t;return!m.value&&(Fn||Zl(e,(t=_e.value)!=null?t:0))}function al(e){var t,n,l,o,i,s,u,a;if(!m.value)return;const c=Pe.value||!Tt(e)||e.getBoundingClientRect().height>=Mt()-1;if(Bn===c)return;Bn=c;const d=Me(U({},(n=(t=r.monacoOptions)==null?void 0:t.scrollbar)!=null?n:{}),{handleMouseWheel:c}),f=V();try{(i=(o=(l=f?.getOriginalEditor)==null?void 0:l.call(f))==null?void 0:o.updateOptions)==null||i.call(o,{scrollbar:d}),(a=(u=(s=f?.getModifiedEditor)==null?void 0:s.call(f))==null?void 0:u.updateOptions)==null||a.call(u,{scrollbar:d})}catch{}}function mn(e=v.value){return!!$e(e)||!!e?.querySelector(".monaco-diff-editor .view-lines .view-line")}function eo(e=v.value){return!!$e(e)||!!e?.querySelector(".monaco-editor .view-lines .view-line")}function to(){var e,t;if($e())return!0;const n=(t=(e=de())==null?void 0:e.getModel)==null?void 0:t.call(e);return typeof n?.getValue=="function"&&n.getValue()===Re.value}function no(e=v.value){return!!$e(e)||!!e?.classList.contains("stream-monaco-diff-root")&&!(Ue.value&&!e.classList.contains("stream-monaco-diff-inline"))}function $e(e=v.value){return!!e?.querySelector("diffs-container")}function lo(e){return r.loading!==!1||R.value||e.classList.contains("stream-monaco-diff-native-stale")||Tt(e)}function li(){const e=V();return typeof e?.getOriginalEditor=="function"||typeof e?.getModifiedEditor=="function"||typeof e?.getLineChanges=="function"}function oo(){return j(this,arguments,function*(e={}){var t,n,l;if(!m.value)return!0;if($e())return yield A(),yield Le(),$e();const o=e.requireHighlight!==!1;let i=0,s=Ot(String((t=r.node.originalCode)!=null?t:""),String((n=r.node.updatedCode)!=null?n:"")),u=vn(s.original,s.updated),a=u.added>0||u.removed>0;const c=()=>{var d,f;const p=Ot(String((d=r.node.originalCode)!=null?d:""),String((f=r.node.updatedCode)!=null?f:""));p.original===s.original&&p.updated===s.updated||(s=p,u=vn(s.original,s.updated),a=u.added>0||u.removed>0)};for(let d=0;d<30;d++){if(B)return!1;c();const f=v.value,p=V(),h=Qn();let x=!1;try{const S=(l=p?.getLineChanges)==null?void 0:l.call(p);x=Array.isArray(S)&&(!a||S.length>0)}catch{x=!1}const g=!!f?.querySelector(".monaco-diff-editor"),N=mn(f),oe=!a||Wl(f,u),E=!a||Il(f,u),F=!h||Ul(f);if(g&&N&&x&&oe&&E&&F&&ql(f)){try{St(),he(),lt(),ce()}catch{}if(yield A(),yield Le(),B)return!1;const S=v.value,D=!Qn()||Ul(S),C=!a||Wl(S,u),L=!a||Il(S,u),K=Ko(S,a),_=Zo(S,u),O=!o||Yn(S),I=no(S)&&D&&Vl(S)&&C&&L&&K&&_&&O,G=no(S)&&D&&Vl(S)&&C&&L&&ql(S)&&O;if(I||G){if(i++,i>=2)return!0}else i=0}yield A(),yield Le()}return B||(St(),he(),lt(),ce(),c()),!1})}function io(e,t,n){return j(this,null,function*(){try{return void(yield Kt(e,t,n))}catch(l){if(!$t(l))throw l}if(yield A(),yield Le(),!B&&m.value)try{yield Kt(e,t,n)}catch(l){if(!$t(l))throw l}})}function Mt(){var e,t;const n=(t=(e=r.monacoOptions)==null?void 0:e.MAX_HEIGHT)!=null?t:500;if(typeof n=="number")return n;const l=String(n).match(/^(\d+(?:\.\d+)?)/);return l?Number.parseFloat(l[1]):500}const ul=b(()=>r.isShowPreview&&(xe.value==="html"||xe.value==="svg"));function Ve(){return typeof r.node.loading=="boolean"?r.node.loading:r.loading===!0}function ro(){var e,t,n;if(!Ve())return!0;const l=String((e=r.node.raw)!=null?e:""),o=(n=(t=l.split(/\r\n|\n|\r/,1)[0])==null?void 0:t.trimStart())!=null?n:"";return!/^(?:`{3,}|~{3,})/.test(o)||/\r\n|\n|\r/.test(l)}function ao(e,t,n){return!n||ro()&&String(t??"")?wn(String(e??"")):"plain"}function pn(){return Ve()}let Bt=null,sl=!1,hn=0;function uo(){Bt=null,hn++}function so(){return j(this,arguments,function*(e=hn){if(!sl){sl=!0;try{for(;Bt&&!B&&!m.value&&e===hn;){const t=Bt;Bt=null;try{yield Promise.resolve(Ln(t.code,t.language)),yield A(),B||m.value||(le(!1),ee())}catch{}}}finally{sl=!1,!Bt||B||m.value||so()}}})}function co(e,t){Bt={code:e,language:t},so(hn)}ue(()=>[r.node.language,r.node.code,r.node.raw,r.node.loading,r.loading],([e,t,n,l,o])=>{xe.value=ao(e,t,typeof l=="boolean"?l:o===!0)}),ue(()=>[r.node.originalCode,r.node.updatedCode,m.value],()=>{ve.value=null,Xn(),fe(()=>lt())},{immediate:!0});let gn=0;ue(()=>[r.node.originalCode,r.node.updatedCode,Fe.value,m.value,r.stream],e=>j(null,[e],function*([,,,t,n]){var l,o;const i=++gn;if(!t||Ve()||n===!1&&!X.value)return;if(n!==!1&&se&&!X.value&&v.value)try{yield je(v.value)}catch{}const s=Pt;if(s&&!Ce.value){try{yield s}catch{}if(B||!m.value||i!==gn)return}if(i!==gn)return;const u=Ot(String((l=r.node.originalCode)!=null?l:""),String((o=r.node.updatedCode)!=null?o:"")),a=r.loading===!1;a&&at();try{if(yield io(u.original,u.updated,Fe.value),B||!m.value||i!==gn)return;yield A(),ee(!0),he(),le(r.loading===!1||{preferModelDiffHeight:!0}),ee(!0),ce(!0)}catch{return}if(a){if(B||!m.value)return;St(),he(),lt(),ce(),it(!0)}Pe.value&&fe(()=>il())})),ue(()=>r.node.code,e=>j(null,null,function*(){if(Ve()||r.stream===!1||(xe.value||(xe.value=wn(wl(e))),m.value))return;const t=Pt;if(t&&!Ce.value){try{yield t}catch{}if(B||m.value)return}if(se&&!X.value&&v.value)try{yield je(v.value)}catch{}co(en(r.node.code),Fe.value),Pe.value&&fe(()=>il())}));const oi=b(()=>{const e=xe.value;return e?Fo[e]||e.charAt(0).toUpperCase()+e.slice(1):Fo[""]}),fo=b(()=>{var e;return Ai(String((e=r.node.raw)!=null?e:""),oi.value,m.value)}),ii=b(()=>fo.value.title),vo=b(()=>fo.value.caption),ri=b(()=>(Hi.value,(function(e,t){if(t===void 0)return Ni(e);if(t){const l=t(e);if(l!=null&&l!=="")return l}const n=wn(e);return Ti(n)||Ri()})(xe.value||"",gt))),ai=b(()=>{const e={};e["--markstream-code-layout-character-width"]=on.value==null?"1ch":`${on.value}px`;const t=o=>{if(o!=null)return typeof o=="number"?`${o}px`:String(o)},n=t(r.minWidth),l=t(r.maxWidth);if(n&&(e.minWidth=n),l&&(e.maxWidth=l),zl.value&&!m.value&&!Se.value){const o=Qo.value;o!=null&&(e.minHeight=`${o}px`)}return m.value||(e.color="var(--markstream-code-fallback-fg, var(--code-fg))",e.backgroundColor="var(--markstream-code-fallback-bg, var(--code-bg))",e.borderColor="var(--markstream-code-border-color, var(--code-border))"),e}),ui=b(()=>r.showTooltips!==!1);function si(){return j(this,null,function*(){try{typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function"&&(yield navigator.clipboard.writeText(r.node.code)),wt.value=!0,P("copy",r.node.code),setTimeout(()=>{wt.value=!1},1e3)}catch(e){console.error("复制失败:",e)}})}function di(){Pe.value=!Pe.value;const e=m.value?V():de(),t=v.value;e&&t&&(Pe.value?(yn(!0),t.style.maxHeight="none",t.style.overflow="visible",le(!0)):(yn(!1),t.style.overflow=m.value?"hidden":"auto",le(!0)),al(t))}function ci(){var e,t;if(Se.value=!Se.value,Se.value){if(Fn=!1,v.value){const n=Math.ceil(((t=(e=v.value).getBoundingClientRect)==null?void 0:t.call(e).height)||0);Fn=!m.value&&(Zl(v.value,n)||v.value.style.overflow==="auto"||v.value.style.overflowY==="auto"),n>0&&(_e.value=n)}yn(!1)}else Pe.value&&yn(!0),v.value&&_e.value!=null&&(v.value.style.height=`${_e.value}px`),En=2,A(()=>{Se.value||B||(le(!0),ee(!0))})}function fi(){if(!ul.value)return;const e=xe.value;if(Yt.value){const t=e==="html"?"text/html":"image/svg+xml",n=e==="html"?Q("artifacts.htmlPreviewTitle")||"HTML Preview":Q("artifacts.svgPreviewTitle")||"SVG Preview";return void P("previewCode",{node:r.node,artifactType:t,artifactTitle:n,id:`temp-${e}-${Date.now()}`})}e==="html"&&(nn.value=!nn.value)}function yn(e){var t,n;try{if(m.value){const l=V();(t=l?.updateOptions)==null||t.call(l,{automaticLayout:e})}else{const l=de();(n=l?.updateOptions)==null||n.call(l,{automaticLayout:e})}}catch{}}function vi(e){return j(this,null,function*(){var t;if(!se||B)return;const n=zt.value;if(jn=!1,me.value=!1,et.value=null,Ce.value=!1,R.value=!1,Ht.value=!1,Bn=null,_n.value=null,ln.value=null,on.value=null,(function(){const a=(function(){var c;const d=(c=v.value)==null?void 0:c.parentElement;return d instanceof HTMLElement?d:null})();a&&(a.style.removeProperty("--stream-monaco-line-number-left"),a.style.removeProperty("--stream-monaco-line-number-width"),a.style.removeProperty("--stream-monaco-line-number-gap-to-code"),a.style.removeProperty("--stream-monaco-original-line-number-gap-to-code"),a.style.removeProperty("--stream-monaco-modified-line-number-gap-to-code"),a.style.removeProperty("--stream-monaco-original-scrollable-left"),a.style.removeProperty("--stream-monaco-modified-scrollable-left"))})(),Kl(),(function(){tn.value=!1;const a=Ll.value;Un.value=q.value||a==null?null:a})(),ot(),De(),(function(a){a.replaceChildren()})(e),at(),B)return;const l=j(null,null,function*(){var a,c;if(n==="diff"){(function(){if(Hn||typeof window>"u")return;Hn=!0;const f=p=>{var h;$t("reason"in p?p.reason:(h=p.error)!=null?h:p.message)&&(p.preventDefault(),p.stopImmediatePropagation())};window.addEventListener("error",f,!0),window.addEventListener("unhandledrejection",f,!0),Zt=()=>{window.removeEventListener("error",f,!0),window.removeEventListener("unhandledrejection",f,!0),Hn=!1,Zt=null}})(),Xe();const d=Ot(String((a=r.node.originalCode)!=null?a:""),String((c=r.node.updatedCode)!=null?c:""));Xt?yield yt(()=>Xt(e,d.original,d.updated,Fe.value)):yield yt(()=>se(e,r.node.code,Fe.value))}else yield yt(()=>se(e,Re.value,Fe.value));Ce.value=!0}),o=l.finally(()=>{Pt===o&&(Pt=null)});if(Pt=o,yield(function(a){return j(this,null,function*(){if(!m.value)return void(yield a);let c,d=!1;for(a.then(()=>{d=!0},f=>{d=!0,c=f});;){if(B)return;if(d){if(c)throw c;return}if(mn()&&li())return;yield A(),yield Le()}})})(o),B||zt.value!==n)return;Ce.value=!0;const i=n==="diff"?V():de();if(typeof((t=r.monacoOptions)==null?void 0:t.fontSize)=="number")i?.updateOptions({fontSize:r.monacoOptions.fontSize,automaticLayout:!1}),pe.value=r.monacoOptions.fontSize,W.value=r.monacoOptions.fontSize;else if(!Ql()){const a=Gn();a&&a>0?(pe.value=a,W.value=a):(pe.value=12,W.value=12)}Rt(),yield go(),Pe.value||Se.value||le(!1),q.value=!0,Sl.value=n,(function(){var a,c,d,f,p;if(ot(),m.value){const x=V(),g=(a=x?.getOriginalEditor)==null?void 0:a.call(x),N=(c=x?.getModifiedEditor)==null?void 0:c.call(x),oe=(F,S)=>{try{const D=F?.[S];if(typeof D!="function")return;const C=D.call(F,()=>ce());C&&He.push(C)}catch{}};try{const F=(d=x?.onDidUpdateDiff)==null?void 0:d.call(x,()=>{ce(),fe(()=>lt())});F&&He.push(F)}catch{}oe(g,"onDidContentSizeChange"),oe(N,"onDidContentSizeChange");const E=v.value;if(E&&typeof MutationObserver<"u"){const F=[".view-line",".view-lines",".view-zones",".margin-view-zones",".diff-hidden-lines",".stream-monaco-diff-unchanged-bridge",".stream-monaco-fallback-inline-delete-zone",".stream-monaco-fallback-inline-delete-margin"].join(","),S=L=>{var K;const _=L instanceof HTMLElement?L:L.parentElement;return!!((K=_?.closest)!=null&&K.call(_,F))},D=L=>{var K,_;const O=L instanceof HTMLElement?L:L.parentElement;return!!((K=O?.closest)!=null&&K.call(O,F)||(_=O?.querySelector)!=null&&_.call(O,F))},C=new MutationObserver(L=>{m.value&&lo(E)&&L.some(K=>S(K.target)||Array.from(K.addedNodes).some(D)||Array.from(K.removedNodes).some(S))&&(he(),le({preferModelDiffHeight:!0}),ee(),it())});C.observe(E,{attributeFilter:["class"],attributes:!0,childList:!0,characterData:!0,subtree:!0}),He.push({dispose:()=>C.disconnect()})}if(E){const F=S=>{const D=S.target instanceof Element?S.target:null;if(!D?.closest([".stream-monaco-unchanged-summary",".stream-monaco-unchanged-reveal",".stream-monaco-unchanged-expand",".markstream-inline-fold-proxy",".diff-hidden-lines .center"].join(",")))return;const C=Math.ceil(E.getBoundingClientRect().height||0);C>0&&(ve.value=C)};E.addEventListener("click",F,!0),He.push({dispose:()=>E.removeEventListener("click",F,!0)})}if(E&&typeof ResizeObserver<"u"){const F=new ResizeObserver(()=>{if(!m.value||(ee(),!lo(E)))return;const S=Zn(E);if(S==null)return;const D=Math.ceil(E.getBoundingClientRect().height||0),C=ve.value;if(Tt(E)&&C!=null){if(D>C+1)ve.value=D;else if(DF.disconnect()})}return}const h=de();try{const x=(f=h?.onDidContentSizeChange)==null?void 0:f.call(h,()=>ce());x&&He.push(x)}catch{}try{const x=(p=h?.onDidLayoutChange)==null?void 0:p.call(h,()=>ce());x&&He.push(x)}catch{}})(),nl(),Rt(),he(),lt(),ce(),yield A();let s=null;Ke&&(s=yield Ke(),s&&(yield A(),yield Le()));const u=s??(n==="diff"?yield oo({requireHighlight:!0}):yield(function(){return j(this,null,function*(){if($e())return yield A(),yield Le(),$e();for(let a=0;a<30;a++){if(B||m.value)return!1;const c=v.value,d=to(),f=eo(c),p=!Re.value.trim()||Yn(c);if(d&&f&&p&&(yield A(),yield Le(),!B&&!m.value&&to()&&eo(v.value)&&(!Re.value.trim()||Yn(v.value))))return!0;yield A(),yield Le()}return!1})})());B||(u?(Rt(),cn(),(yield Nl())||qe()):qe())})}function je(e,t={}){if(!se||B||r.stream===!1&&r.loading!==!1||(cl(),ko())||ge.value||v.value!==e||pn())return null;if(ze)return ze;if(X.value&&q.value)return Promise.resolve();const n=dl(),l=Dn.value;let o=!1;X.value=!0,(function(){const s=Ge.value;re&&s&&We!==s&&(We&&re.markSettled(We),We=s,re.markPending(s))})();const i=j(null,null,function*(){try{yield vi(e),Nt=null}catch(s){const u=dl(),a=l!==Dn.value,c=t.allowStaleContentRetry!==!1&&a&&Nt!==u;if(n!==u||c)return c&&(Nt=u),o=!0,X.value=!1,q.value=!1,Ce.value=!1,void(R.value=!1);throw qe(n),s}}).finally(()=>{ze===i&&(ze=null),(function(){const s=We;re&&s&&(We="",A(()=>{var u,a;if(!B){const c=(a=(u=z.value)==null?void 0:u.offsetHeight)!=null?a:0;c>0&&re.reportHeight(s,c)}re.markSettled(s)}))})(),o&&!B&&queueMicrotask(()=>{var s;const u=v.value;u&&!B&&((s=je(u))==null||s.catch(a=>{q.value=!1,R.value=!1,qe()}))})});return ze=i,i}ue(ui,e=>{e||mt()}),ue(()=>W.value,(e,t)=>{const n=m.value?V():de();n&&typeof e=="number"&&Number.isFinite(e)&&e>0&&(n.updateOptions({fontSize:e}),Se.value||le(!0))},{flush:"post",immediate:!1});let mo=0;const mi=ue(()=>[v.value,m.value,r.stream,r.loading,bt.value,Z.value,r.node.language,r.node.raw,r.node.code,r.node.loading],e=>j(null,[e],function*([t,n,l,o,i,s]){const u=++mo;if(!t||!s||Ve()||tt||l===!1&&o!==!1||!se&&(yield(function(){return j(this,null,function*(){if(typeof window>"u"||B||bt.value||ge.value)return;if(Lt)return Lt;const c=j(null,null,function*(){try{const d=yield Ui();if(B)return;if(!d)return void(ge.value=!0);const f=d.useMonaco,p=d.detectLanguage;if(typeof p=="function"&&(wl=p),typeof f!="function")return;Ne=yo();const h=f(Ne);se=h.createEditor||se,Xt=h.createDiffEditor||Xt,Ln=h.updateCode||Ln,Kt=h.updateDiff||Kt,xt=h.getEditor||xt,de=h.getEditorView||de,V=h.getDiffEditorView||V,On=h.cleanupEditor||On,Xe=h.safeClean||h.cleanupEditor||Xe,$n=h.refreshDiffPresentation||$n,zn=h.setTheme||zn,Ke=h.whenVisualReady||null,bt.value=!0}catch{if(B)return;ge.value=!0}}).finally(()=>{Lt===c&&(Lt=null)});return Lt=c,c})})(),u!==mo||r.stream===!1&&r.loading!==!1||pn()||!Z.value||!se||ge.value||X.value||ko()||B||v.value!==t)||pn())return;const a=je(t);if(a){try{yield a}catch{q.value=!1,R.value=!1,qe()}q.value&&R.value&&mi()}}));function po(e){return!!e&&typeof e=="object"&&"light"in e&&"dark"in e}function rt(e){return typeof e=="string"?e:e&&typeof e=="object"&&"name"in e?String(e.name):null}function ho(e,t){if(e===t)return!0;const n=rt(e),l=rt(t);return!!n&&n===l}function Dt(){var e;const t=(function(){if(r.theme!==void 0){const a=r.theme;return po(a)?r.isDark?a.dark:a.light:a}return r.isDark?r.darkTheme:r.lightTheme})(),n=(e=ae.value)==null?void 0:e.theme,l=t??n;if(l!=null&&typeof l=="object")return l;const o=Array.isArray(r.themes)?r.themes:[];if(!o.length||l==null)return l;const i=rt(l),s=o.map(a=>rt(a)).filter(a=>!!a);if(!i||s.includes(i))return l;const u=rt(n);return n!=null&&u&&s.includes(u)?n:o[0]}function go(){return j(this,arguments,function*(e={}){at();const t=()=>{m.value&&St(),fe(()=>{nl(),ce()})};if(e.appearanceOnly)return void t();const n=Dt();if(n)try{yield zn(n),t()}catch{}else t()})}function At(e,t){if(typeof t!="string")return;const n=wn(t),l=Eo(n),o=["plain","objectivec","objectivecpp"].includes(n)?l:n;for(const i of[o,l])i&&!e.includes(i)&&e.push(i)}ue(zt,(e,t)=>j(null,null,function*(){if(e===t||me.value||tt||(uo(),!se||!v.value)||!X.value||r.stream===!1&&r.loading!==!1||!Z.value)return;const n=ze;if(n){try{yield n}catch{}if(B||!v.value)return}if(Sl.value!==e||!X.value||!q.value)try{q.value=!1,R.value=!1,X.value=!1,Ce.value=!1,ot(),De(),Xe(),yield A(),yield je(v.value)}catch{q.value=!1,R.value=!1,qe()}}));const pi=b(()=>{var e;const t=[],n=(e=ae.value)==null?void 0:e.languages;if(Array.isArray(n))for(const l of n)At(t,l);return ro()&&At(t,r.node.language),At(t,xe.value),At(t,Fe.value),At(t,"plaintext"),t});function yo(){const e=Me(U(Me(U({wordWrap:"on",wrappingIndent:"same",themes:r.themes},ae.value||{}),{languages:pi.value,stream:!1,fontSize:rn.value,lineHeight:an.value,theme:Dt(),disableFileHeader:!0}),m.value?{diffAppearance:Rn.value}:{}),{onThemeChange(){nl()}}),t=(function(){var l;const o=(l=ae.value)==null?void 0:l.fontFamily;return typeof o=="string"&&o.trim()?o.trim():m.value?(function(){var i;if(typeof window>"u")return;const s=(i=z.value)==null?void 0:i.querySelector("pre.code-pre-fallback");if(s)return window.getComputedStyle(s).fontFamily.trim()||void 0})():void 0})();t&&(e.fontFamily!=null||(e.fontFamily=t));const n=typeof e.unsafeCSS=="string"?e.unsafeCSS:"";if(e.unsafeCSS=`[data-file], [data-diff] { --diffs-min-number-column-width-default: 2ch !important; } -${n}`.trim(),m.value){e.wordWrap=qn.value?"on":"off";const l=(function(){var o,i;const s=Wn.value;if(s===!1||typeof s=="object"&&s.enabled===!1)return null;const u=typeof s=="object"?s:Wt,a=Math.max(0,Math.floor((o=u.contextLineCount)!=null?o:2));return{contextLineCount:a,collapsedContextThreshold:a+Math.max(1,Math.floor((i=u.minimumLineCount)!=null?i:4))-1}})();e.unsafeCSS+=` -pre { column-gap: 0; } -pre > code { column-gap: 0; padding-block: 0; } -[data-separator="line-info"] { margin-top: 0; } -`,l?(e.parseDiffOptions=Me(U({},e.parseDiffOptions),{context:l.contextLineCount}),e.collapsedContextThreshold=l.collapsedContextThreshold,e.expandUnchanged=!1,e.hunkSeparators="line-info",e.unsafeCSS+=`[data-separator="line-info"][data-separator-last] { height: 28px; } -`):(e.expandUnchanged=!0,e.hunkSeparators="simple")}return e}function at(){const e=yo();if(!Ne)return Ne=e,Ne;for(const t of Object.keys(Ne))t in e||delete Ne[t];return Object.assign(Ne,e),Ne}const wo=b(()=>{var e,t,n,l,o,i,s,u,a,c,d,f,p,h,x;return JSON.stringify({diffLineStyle:(t=(e=ae.value)==null?void 0:e.diffLineStyle)!=null?t:"background",diffUnchangedRegionStyle:(l=(n=ae.value)==null?void 0:n.diffUnchangedRegionStyle)!=null?l:"line-info",diffHideUnchangedRegions:((o=r.monacoOptions)==null?void 0:o.diffHideUnchangedRegions)===void 0?U({},Wt):bn(r.monacoOptions.diffHideUnchangedRegions),renderSideBySide:(s=(i=ae.value)==null?void 0:i.renderSideBySide)==null||s,useInlineViewWhenSpaceIsLimited:(a=(u=ae.value)==null?void 0:u.useInlineViewWhenSpaceIsLimited)!=null&&a,enableSplitViewResizing:(d=(c=ae.value)==null?void 0:c.enableSplitViewResizing)==null||d,ignoreTrimWhitespace:(p=(f=ae.value)==null?void 0:f.ignoreTrimWhitespace)==null||p,originalEditable:(x=(h=ae.value)==null?void 0:h.originalEditable)!=null&&x})}),bo=$(0);function dl(){var e;const t=Dt();return JSON.stringify({kind:zt.value,language:Fe.value,structural:wo.value,optionsRevision:bo.value,settledContentGeneration:Cl.value,theme:(e=rt(t))!=null?e:t==null?null:"custom",isDark:r.isDark})}ue(()=>[r.monacoOptions,r.theme,r.themes,r.lightTheme,r.darkTheme],()=>{bo.value+=1},{deep:!0}),ue(()=>[Re.value,r.node.originalCode,r.node.updatedCode],()=>{Dn.value+=1,Ve()||(Cl.value+=1)});const ut=b(()=>dl());function cl(){me.value&&et.value!==ut.value&&(me.value=!1,et.value=null,Nt=null,An=null,X.value=!1,q.value=!1,Ce.value=!1,R.value=!1,Ht.value=!1)}function ko(){return cl(),me.value&&et.value===ut.value}function qe(e=ut.value){et.value=e,me.value=!0,Ht.value=!1}return ue(ut,()=>j(null,null,function*(){if(tt||!me.value||et.value===ut.value||!se||!v.value||ge.value||B||!Z.value||r.stream===!1&&r.loading!==!1||pn())return;const e=ut.value;tt=!0;try{if(cl(),me.value)return;yield je(v.value)}catch{q.value=!1,R.value=!1,qe()}finally{An=e,yield A(),tt=!1}})),ue(()=>[r.monacoOptions,Z.value],()=>{var e,t;if(at(),!se||!Z.value)return;const n=m.value?V():de(),l=typeof((e=r.monacoOptions)==null?void 0:e.fontSize)=="number"?r.monacoOptions.fontSize:Number.isFinite(W.value)?W.value:void 0;typeof l=="number"&&Number.isFinite(l)&&l>0&&((t=n?.updateOptions)==null||t.call(n,{fontSize:l})),le(!1)},{deep:!0}),ue(()=>[Dt(),Rn.value,bt.value,X.value,Z.value],([e],t)=>{bt.value&&q.value&&Z.value&&go({appearanceOnly:t!=null&&ho(e,t[0])})},{flush:"post"}),ue(()=>[wo.value,bt.value,Z.value],(e,t)=>j(null,[e,t],function*([n,l,o],[i]){if(at(),!l||!o||!se||!v.value||!X.value||n===i||r.stream===!1&&r.loading!==!1)return;const s=ze;if(s){try{yield s}catch{}if(B||!v.value)return}try{q.value=!1,R.value=!1,X.value=!1,Ce.value=!1,ot(),De(),Xe(),yield A(),yield je(v.value,{allowStaleContentRetry:!1})}catch{q.value=!1,R.value=!1,qe()}}),{flush:"post"}),ue(()=>[r.loading,Z.value],(e,t)=>j(null,[e,t],function*([n,l],o){if(!l)return;const i=o?.[0];if(i===!1&&n!==!1&&m.value&&X.value&&(yield A(),fe(()=>{j(null,null,function*(){const u=ze;if(u)try{yield u}catch{}!B&&m.value&&r.loading!==!1&&(at(),St(),ce())})})),n)return;const s=i!==void 0&&i!==!1;yield A(),fe(()=>{j(null,null,function*(){var u,a;try{if(s&&(yield(function(){return j(this,null,function*(){if(!me.value||!se||!v.value||ge.value||B||!Z.value)return!1;if(An===ut.value)return!0;tt=!0;try{me.value=!1,et.value=null,Nt=null,X.value=!1,q.value=!1,Ce.value=!1,R.value=!1,ot(),De(),Xe(),yield A();try{yield je(v.value)}catch{q.value=!1,R.value=!1,qe()}}finally{yield A(),tt=!1}return!0})})()))return void le(!1);if(s&&m.value&&X.value&&jn&&v.value)return jn=!1,q.value=!1,R.value=!1,X.value=!1,Ce.value=!1,ot(),De(),Xe(),yield A(),yield je(v.value,{allowStaleContentRetry:!1}),void it(!0);if(s&&X.value)if(m.value&&v.value){const c=ze;if(c)try{yield c}catch{}at();const d=Ot(String((u=r.node.originalCode)!=null?u:""),String((a=r.node.updatedCode)!=null?a:""));if(yield io(d.original,d.updated,Fe.value),B||!m.value)return;St(),ee(!0),Hl(),he(),lt();const f=yield oo({requireHighlight:!0});B||!f||R.value||(yield Nl()),ce(),it(!0)}else uo(),co(Re.value,Fe.value);s&&m.value?(le({preferModelDiffHeight:!0,holdCurrentDiffHeight:!0}),it(!0)):le(!1)}catch{}})})}),{immediate:!0,flush:"post"}),To(()=>{ot(),De(),On(),Zt?.()}),(e,t)=>ge.value?(Y(),Sn(J(Bo),{key:0,class:pt(["code-pre-fallback",{"is-wrap":qn.value}]),style:Vt($l.value),node:El.value,loading:r.loading,"show-line-numbers":!0,"diff-inline":Ue.value,"diff-hide-unchanged-regions":Wn.value},null,8,["class","style","node","loading","diff-inline","diff-hide-unchanged-regions"])):(Y(),ie("div",{key:1,ref_key:"container",ref:z,style:Vt(ai.value),class:pt(["code-block-container rounded-lg border",[{dark:r.isDark,"is-rendering":r.loading,"is-dark":xl.value,"is-diff":m.value,"is-plain-text":Mn.value}]]),"data-markstream-code-block":"1","data-markstream-enhanced":R.value&&!ge.value?"true":"false","data-markstream-enhancement-state":Vo.value,"data-markstream-code-block-state":Ve()?"streaming":"settled","data-markstream-pending":Uo.value?"true":void 0,"data-markstream-viewport-pending":yl.value&&J(Pn)&&!Z.value?"true":void 0},[Ro(pr,{"show-header":r.showHeader,"show-collapse-button":r.showCollapseButton,"show-font-size-buttons":r.showFontSizeButtons,"enable-font-size-control":r.enableFontSizeControl,"show-copy-button":r.showCopyButton,"show-expand-button":r.showExpandButton,"show-preview-button":r.showPreviewButton,"show-tooltips":r.showTooltips,"is-dark":r.isDark,loading:r.loading,stream:k.stream,"is-collapsed":Se.value,"is-expanded":Pe.value,"copy-text":wt.value,"is-previewable":ul.value,"code-font-size":W.value,"code-font-min":10,"code-font-max":36,"default-code-font-size":pe.value,"font-baseline-ready":Go.value,"diff-stats":m.value?Ze.value:null,"diff-stats-aria-label":Wo.value,onToggleCollapse:ci,onDecreaseFont:ti,onResetFont:ni,onIncreaseFont:ei,onCopy:si,onToggleExpand:di,onPreview:fi},Oi({"header-left":Gt(()=>[ht(e.$slots,"header-left",{},()=>[w("div",xr,[w("span",{class:"icon-slot h-4 w-4 flex-shrink-0",innerHTML:ri.value},null,8,Sr),w("div",Cr,[w("div",Mr,Be(ii.value),1),vo.value?(Y(),ie("div",Br,Be(vo.value),1)):we("",!0)])])],!0)]),loading:Gt(()=>[ht(e.$slots,"loading",{loading:k.loading,stream:k.stream},()=>[t[0]||(t[0]=w("div",{class:"loading-skeleton"},[w("div",{class:"skeleton-line"}),w("div",{class:"skeleton-line"}),w("div",{class:"skeleton-line short"})],-1))],!0)]),default:Gt(()=>[vl(w("div",{class:pt(["code-editor-layer",{"code-editor-layer--collapsed":Se.value}])},[w("div",{ref_key:"codeEditor",ref:v,class:pt(["code-editor-container",k.stream?"":"code-height-placeholder"]),"data-markstream-host-hidden":Io.value?"true":void 0,style:Vt(Xo.value)},null,14,Er),Bl.value?(Y(),Sn(J(Bo),{key:0,class:pt(["code-pre-fallback",{"is-wrap":qn.value}]),style:Vt($l.value),node:El.value,"show-line-numbers":!0,"diff-inline":Ue.value,"diff-hide-unchanged-regions":Wn.value},null,8,["class","style","node","diff-inline","diff-hide-unchanged-regions"])):we("",!0)],2),[[ml,!!k.stream||!k.loading]]),nn.value&&!Yt.value&&ul.value&&xe.value==="html"?(Y(),Sn(br,{key:0,code:r.node.code,"html-preview-allow-scripts":r.htmlPreviewAllowScripts,"html-preview-sandbox":r.htmlPreviewSandbox,"is-dark":r.isDark,"on-close":()=>nn.value=!1},null,8,["code","html-preview-allow-scripts","html-preview-sandbox","is-dark","on-close"])):we("",!0)]),_:2},[e.$slots["header-right"]?{name:"header-right",fn:Gt(()=>[ht(e.$slots,"header-right",{},void 0,!0)]),key:"0"}:void 0]),1032,["show-header","show-collapse-button","show-font-size-buttons","enable-font-size-control","show-copy-button","show-expand-button","show-preview-button","show-tooltips","is-dark","loading","stream","is-collapsed","is-expanded","copy-text","is-previewable","code-font-size","default-code-font-size","font-baseline-ready","diff-stats","diff-stats-aria-label"])],14,kr))}}),[["__scopeId","data-v-ef6e4bb8"]]);export{Lr as default}; diff --git a/apps/kimi-code/dist-web/assets/CodeBlockNode-x8gR_NJ_.js b/apps/kimi-code/dist-web/assets/CodeBlockNode-x8gR_NJ_.js new file mode 100644 index 0000000000..7e124c0acc --- /dev/null +++ b/apps/kimi-code/dist-web/assets/CodeBlockNode-x8gR_NJ_.js @@ -0,0 +1,43 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/markstream-UDoFrbnV.js","assets/index-Dnz6Zudc.js","assets/index-Cj6xJi2l.css"])))=>i.map(i=>d[i]); +import{bR as Ya,cd as Ga,bQ as aa,M as oa,bl as Ja,af as Wt,bY as Qa,ce as Xa,b$ as ra,aU as S,c0 as Za,c1 as Ka,c2 as eo,a0 as Jn,aD as ia,bE as A,az as lo,cf as Qn,ca as to,cg as no,aI as ua,aL as ul,s as rt,A as Xn,bJ as il,aY as $l,aw as nt,u as Zn,I as ao,bL as oo,v as U,au as it,t as At,bB as ro,bb as Yt,bk as sa,q as m,b7 as io,ch as uo,ci as so,cj as fo,ck as co,as as O,cl as vo,cm as mo,cn as ho,co as po,cp as go,cq as yo,cr as bo,cs as Kn,ct as ea,bO as wo,T as ko,cu as xo,b_ as So}from"./index-Dnz6Zudc.js";import{B as la,g as Co,Q as Mo}from"./PreCodeBlock-D94rgfjG.js";import{i as se,t as at}from"./safeRaf-DGuzXxDK.js";var ot=(C,b,M)=>new Promise((ve,ee)=>{var R=k=>{try{n(M.next(k))}catch(H){ee(H)}},he=k=>{try{n(M.throw(k))}catch(H){ee(H)}},n=k=>k.done?ve(k.value):Promise.resolve(k.value).then(R,he);n((M=M.apply(C,b)).next())});let Ut=!1,Hl=null,Ol=null,Dl=null;function Bo(){return ot(this,null,function*(){if(Dl)return Dl;Dl=ot(null,null,function*(){if(!Ol)try{if(Ol=(function(C){var b,M,ve;const ee=C,R=typeof ee?.createCodeBlockRuntime=="function"||typeof ee?.useMonaco=="function"?ee:C?.default,he=(b=R?.createCodeBlockRuntime)!=null?b:R?.useMonaco;return typeof he!="function"?null:{createCodeBlockRuntime:n=>he.call(R,n),detectLanguage:(M=R?.detectLanguage)==null?void 0:M.bind(R),preloadStreamDiffs:(ve=R?.preloadStreamDiffs)==null?void 0:ve.bind(R)}})(yield Ya(()=>import("./markstream-UDoFrbnV.js"),__vite__mapDeps([0,1,2]))),!Ol)return null}catch{return null}try{return yield(function(C){return ot(this,null,function*(){return Ut?void 0:Hl||(Hl=ot(null,null,function*(){const M=C?.preloadStreamDiffs;typeof M=="function"&&(yield M()),Ut=!0}).finally(()=>{Hl=null}),Hl)})})(Ol),Ga(),Ol}catch{return null}});try{return yield Dl}finally{Dl=null}})}var Po=Object.defineProperty,$o=Object.defineProperties,Ho=Object.getOwnPropertyDescriptors,ta=Object.getOwnPropertySymbols,Oo=Object.prototype.hasOwnProperty,Do=Object.prototype.propertyIsEnumerable,na=(C,b,M)=>b in C?Po(C,b,{enumerable:!0,configurable:!0,writable:!0,value:M}):C[b]=M,Ce=(C,b)=>{for(var M in b||(b={}))Oo.call(b,M)&&na(C,M,b[M]);if(ta)for(var M of ta(b))Do.call(b,M)&&na(C,M,b[M]);return C},Nl=(C,b)=>$o(C,Ho(b)),D=(C,b,M)=>new Promise((ve,ee)=>{var R=k=>{try{n(M.next(k))}catch(H){ee(H)}},he=k=>{try{n(M.throw(k))}catch(H){ee(H)}},n=k=>k.done?ve(k.value):Promise.resolve(k.value).then(R,he);n((M=M.apply(C,b)).next())});const No={class:"html-preview-frame__header"},Eo={class:"html-preview-frame__title"},Fo={class:"html-preview-frame__label"},To=["sandbox","srcdoc"],zo=aa(oa({__name:"HtmlPreviewFrame",props:{code:{},isDark:{type:Boolean},htmlPreviewAllowScripts:{type:Boolean},htmlPreviewSandbox:{},onClose:{type:Function},title:{}},setup(C){const b=C,M=import.meta!==void 0&&!1;let ve=null;const{t:ee}=ra(),R=m(()=>{const k=b.code||"",H=k.trim().toLowerCase();return H.startsWith(" + + + + + + + + ${k} + +`}),he=m(()=>{return k=b.htmlPreviewSandbox,H=b.htmlPreviewAllowScripts,typeof k=="string"?((function(je){if(!M||typeof console>"u"||ve===je)return;const Q=(function(El){return new Set(El.trim().toLowerCase().split(/\s+/).filter(Boolean))})(je);Q.has("allow-scripts")&&Q.has("allow-same-origin")&&(ve=je,console.warn("[markstream-vue] htmlPreviewSandbox contains both allow-scripts and allow-same-origin. Use this only for fully trusted content served from an isolated origin."))})(k),k):k!==void 0?"":H===!0?"allow-scripts":"";var k,H});function n(k){var H;k.key!=="Escape"&&k.key!=="Esc"||(H=b.onClose)==null||H.call(b)}return ia(()=>{typeof window<"u"&&window.addEventListener("keydown",n)}),ua(()=>{typeof window<"u"&&window.removeEventListener("keydown",n)}),(k,H)=>(ul(),rt(ko,{to:"body"},[U("div",{class:it(["markstream-vue",{dark:b.isDark}])},[U("div",{class:"html-preview-frame__backdrop",onClick:H[2]||(H[2]=je=>{var Q;return(Q=b.onClose)==null?void 0:Q.call(b)})},[U("div",{class:"html-preview-frame",onClick:H[1]||(H[1]=wo(()=>{},["stop"]))},[U("div",No,[U("div",Eo,[H[3]||(H[3]=U("span",{class:"html-preview-frame__dot"},null,-1)),U("span",Fo,Yt(b.title||sa(ee)("common.preview")||"Preview"),1)]),U("button",{type:"button",class:"html-preview-frame__close",onClick:H[0]||(H[0]=je=>{var Q;return(Q=b.onClose)==null?void 0:Q.call(b)})}," × ")]),U("iframe",{class:"html-preview-frame__iframe",sandbox:he.value,referrerpolicy:"no-referrer",srcdoc:R.value},null,8,To)])])],2)]))}}),[["__scopeId","data-v-24e66176"]]),Lo=["data-markstream-enhanced","data-markstream-enhancement-state","data-markstream-code-block-state","data-markstream-pending","data-markstream-viewport-pending"],_o={class:"code-header-main"},Ro=["innerHTML"],jo={class:"code-header-copy"},qo={class:"code-header-title"},Io={key:0,class:"code-header-caption"},Vo=["data-markstream-host-hidden"],Go=aa(oa({__name:"CodeBlockNode",props:{node:{},codeBlockOptions:{},clipboardWriter:{},showLineNumbers:{type:Boolean,default:void 0},isDark:{type:Boolean,default:!1},loading:{type:Boolean,default:!0},stream:{type:Boolean,default:!0},theme:{},darkTheme:{default:void 0},lightTheme:{default:void 0},isShowPreview:{type:Boolean,default:!0},enableFontSizeControl:{type:Boolean,default:!0},minWidth:{default:void 0},maxWidth:{default:void 0},themes:{},showPreviewButton:{type:Boolean,default:!0},showCollapseButton:{type:Boolean,default:!0},showFontSizeButtons:{type:Boolean,default:!0},showTooltips:{type:Boolean},htmlPreviewAllowScripts:{type:Boolean},htmlPreviewSandbox:{},customId:{},showHeader:{type:Boolean,default:!0},showCopyButton:{type:Boolean,default:!0},showExpandButton:{type:Boolean,default:!0},estimatedHeightPx:{},estimatedContentHeightPx:{},estimatedDiffInline:{type:Boolean}},emits:["previewCode","copy"],setup(C,{emit:b}){var M,ve,ee,R,he;const n=C,k=b,H=m(()=>{var e,l;return(l=n.showLineNumbers)!=null?l:((e=n.codeBlockOptions)==null?void 0:e.disableLineNumbers)!==!0}),je=Ja(),Q=Wt(Qa,null),El=Wt("markstreamHostScrollManaged",null),da=Wt(Xa,void 0),fa=m(()=>So(n,je));function Wo(e,l){}const Gt=Jn(),Jt=m(()=>{const e=Gt?.vnode.props;return!(!e||!e.onPreviewCode&&!e["onPreview-code"])}),{t:Qt}=ra(),h=S(null),ne=S(null),ut=S(!1),we=S(zn(n.node.language,n.node.code,Re())),st=m(()=>mo(we.value)),Me=m(()=>st.value==="plaintext"?"text":st.value),dt=m(()=>st.value==="plaintext"),De=S(!1),pe=S(!1),V=S(!1),ge=S(!1),_=S(!1),el=S(!1);let p=!1,sl=!1,ll=null,dl=null,qe=null,Ie=0,Ve=!1,Ne="";const Ee=S(null);let ft=0,ct=!1;const ca=Za(),Fl=Ka(),vt=eo(),Fe=io(null),W=S(typeof window>"u"||!vt.value),va=(ee=(ve=(M=Jn())==null?void 0:M.vnode.el)==null?void 0:ve.textContent)!=null?ee:"",ma=typeof window<"u"&&String((R=n.node.code)!=null?R:"").length>0&&va.includes(String(n.node.code)),Xt=S(!ma);ia(()=>{Xt.value=!0}),typeof window<"u"&&A([()=>ne.value,vt],([e,l],t,a)=>{var o,d,r;if((o=Fe.value)==null||o.destroy(),Fe.value=null,!l||W.value)return void(W.value=!0);if(!e)return void(W.value=!1);let u=!0;const c=(r=(d=Fl?.value.heavyBlockMargin)!=null?d:Fl?.value.rootMargin)!=null?r:"0px",s=ca(e,{rootMargin:c,allowIdle:!1});Fe.value=s,W.value=W.value||s.isVisible.value,s.whenVisible.then(()=>{u&&Fe.value===s&&(W.value=!0)}).catch(()=>{}),a(()=>{u=!1,s.destroy(),Fe.value===s&&(Fe.value=null)})},{immediate:!0}),lo(()=>{var e;p=!0,(function(){const l=Ne;Q&&l&&(Ne="",Q.markSettled(l))})(),(e=Fe.value)==null||e.destroy(),Fe.value=null});let ae=null,Tl=null,mt=()=>{},zl=()=>{},ht=()=>{},pt=()=>{},fl=()=>null,ie=()=>({getModel:()=>({getLineCount:()=>1}),getOption:()=>14,updateOptions:()=>{}}),Y=()=>({getModel:()=>({getLineCount:()=>1}),getOption:()=>14,updateOptions:()=>{}}),gt=()=>{},We=()=>{},yt=()=>{},tl=null,Be=null,cl=null,vl=null,Zt=()=>{var e;return String((e=n.node.language)!=null?e:"plaintext")},bt=()=>D(null,null,function*(){}),wt=!1,Ll=null;const Te=[],Kt=[];let Pe=null,ml=null;const i=m(()=>uo(n.node)),hl=S({removed:0,added:0}),ha=m(()=>`-${hl.value.removed} +${hl.value.added}`);function kt(e,l){return{original:e,updated:l}}function en(e){return String(e??"").replace(/\r\n$|\n$|\r$/,"")}function pl(e){var l;return String((l=e?.message)!=null?l:e).includes("no diff result available")}function _l(){if(!Se())try{const e=yt();e&&typeof e.catch=="function"&&e.catch(l=>{pl(l)})}catch(e){pl(e)}}const gl=m(()=>{const e=Ce({},n.codeBlockOptions||{});for(const a of["theme","themes","themeType","language","languages","stream","disableFileHeader","onThemeChange","renderCustomHeader","renderHeaderMetadata","renderHeaderPrefix","maxHeight","padding","tabSize"])delete e[a];if(!i.value)return e;const l=e.parseDiffOptions&&typeof e.parseDiffOptions=="object"?e.parseDiffOptions:{},t={diffStyle:"split",expandUnchanged:!1,collapsedContextThreshold:5,hunkSeparators:"line-info",parseDiffOptions:{context:2}};return Nl(Ce(Ce({},t),e),{parseDiffOptions:Ce(Ce({},t.parseDiffOptions),l)})}),ln=m(()=>{return(n.theme!==void 0?(e=n.theme)&&typeof e=="object"&&"light"in e&&"dark"in e:!Vn(n.darkTheme,n.lightTheme))?!!n.isDark:(function(l){var t;const a=(t=lt(l))!=null?t:"";return ho(a,n.isDark===!0)})(ol());var e}),tn=m(()=>(i.value,ln.value?"dark":"light")),nn=m(()=>i.value?tn.value==="dark":ln.value),E=m(()=>po({darkTheme:n.darkTheme,isDark:n.isDark,lightTheme:n.lightTheme,theme:n.theme,themes:n.themes})),yl=m(()=>i.value?"diff":"single"),an=S(yl.value),me=S(!1),F=S(!1),nl=S(!1),de=S(!1),Ae=S(null),xt=S(0),on=S(0),Rl=S(!1);let bl=null,Ue=!1,St=null,Ct=!1;const jl=m(()=>{var e;return!!i.value&&((e=gl.value)==null?void 0:e.diffStyle)==="unified"}),rn=m(()=>so(gl.value));function un(e){return El?.value===!0||!!e&&(!!e.closest('[data-markstream-virtual-timeline="1"], .markstream-virtual-timeline')||!!e.closest(".vue-recycle-scroller, [data-virtualizer], [data-virtual-scroll-root]"))}const pa=m(()=>un(ne.value)),ze=m(()=>!(me.value||!de.value&&F.value)),sn=m(()=>ze.value),ga=m(()=>ze.value&&!nl.value),ya=m(()=>!me.value&&!de.value&&ze.value),ba=m(()=>F.value&&!me.value?"ready":de.value?"fallback":"pending"),ql=S(!1),$e=m(()=>en(n.node.code)),dn=m(()=>i.value?n.node.diff===!0?n.node:Nl(Ce({},n.node),{diff:!0}):$e.value===n.node.code?n.node:Nl(Ce({},n.node),{code:$e.value}));function Mt(e){const l=e.detectLanguage;typeof l=="function"&&(Zt=l),ml=e,Pe=Un();const t=e.createCodeBlockRuntime(Pe);return!!t&&(ae=t.createEditor||ae,Tl=t.createDiffEditor||Tl,mt=t.updateCode||mt,zl=t.updateDiff||zl,ht=t.finalizeCode||ht,pt=t.finalizeDiff||pt,fl=t.getEditor||fl,ie=t.getEditorView||ie,Y=t.getDiffEditorView||Y,gt=t.cleanupEditor||gt,We=t.safeClean||t.cleanupEditor||We,yt=t.refreshDiffPresentation||yt,bt=t.setTheme||bt,tl=t.whenVisualReady||null,el.value=!0,!0)}const Bt=no,wa=bo,ue=S(typeof((he=n.codeBlockOptions)==null?void 0:he.fontSize)=="number"?n.codeBlockOptions.fontSize:Number.NaN),T=S(ue.value),Pt=S(null),Il=S(null),wl=S(null),Ye=S(null),ka=m(()=>{const e=ue.value,l=T.value;return typeof e=="number"&&Number.isFinite(e)&&e>0&&typeof l=="number"&&Number.isFinite(l)&&l>0}),Vl=m(()=>{var e;const l=(e=n.codeBlockOptions)==null?void 0:e.fontSize;if(typeof l=="number"&&Number.isFinite(l)&&l>0)return l;const t=T.value;return typeof t=="number"&&Number.isFinite(t)&&t>0?t:Bt}),xa=m(()=>{var e;const l=(e=n.codeBlockOptions)==null?void 0:e.lineHeight;return typeof l=="number"&&Number.isFinite(l)&&l>0?l:Vl.value===Bt?wa:Math.max(12,Math.round(1.5*Vl.value))}),Wl=m(()=>xa.value),fn=m(()=>{var e;const l=(e=n.codeBlockOptions)==null?void 0:e.tabSize;return typeof l=="number"&&Number.isFinite(l)&&l>0?l:4}),Al=m(()=>{var e;const l=(e=n.codeBlockOptions)==null?void 0:e.padding,t=typeof l=="number"&&Number.isFinite(l)&&l>=0?l:8;return{top:t,bottom:t}}),$t=m(()=>{const e=fo(n.codeBlockOptions);return Nl(Ce({},e),{fontSize:Vl.value,lineHeight:Wl.value,maxHeight:Bl(),padding:Al.value.top,paddingBottom:Al.value.bottom,tabSize:fn.value})}),Ul=m(()=>{const e=n.estimatedContentHeightPx;return typeof e=="number"&&Number.isFinite(e)&&e>0?e:null});function Yl(e){if(e==null)return null;const l=Math.ceil(e);return!Number.isFinite(l)||l<=0?null:Math.min(l,Math.ceil(Bl()))}function cn(){return!i.value&&n.stream!==!1&&n.loading!==!1}const kl=S(cn());function Gl(){return cn()||kl.value}const vn=m(()=>i.value?null:Ul.value==null||Gl()?Math.ceil((e=>{const l=String(e??"");if(!l)return 1;let t=1;for(let a=0;a{if(i.value)return null;const e=Ul.value;return e==null||Gl()?Yl(vn.value):Yl(e)}),Sa=m(()=>{const e=n.estimatedHeightPx;return typeof e=="number"&&Number.isFinite(e)&&e>0?e:null}),Jl=S(null);function Ge(){const e=Jl.value;return typeof e=="number"&&Number.isFinite(e)&&e>0?Math.round(e):null}const Ht=m(()=>{const e=Ge();return e??(!i.value&&Rl.value?null:ze.value||!F.value?mn.value:null)});function hn(e){const l=e?"hsl(152 42% 60%)":"var(--diff-added-fg)",t=e?"hsl(0 58% 58%)":"var(--diff-removed-fg)",a=e?"color-mix(in lab, #121212 80%, #4d9375)":"color-mix(in lab, #ffffff 88%, #1e754f)",o=e?"color-mix(in lab, #121212 80%, #cb7676)":"color-mix(in lab, #ffffff 88%, #ab5959)";return{"--markstream-diff-line-number-bg":"var(--markstream-diff-editor-bg)","--markstream-diff-added-fg":l,"--markstream-diff-removed-fg":t,"--markstream-diff-added-line":a,"--markstream-diff-removed-line":o,"--markstream-diff-added-line-fill":a,"--markstream-diff-added-number-fill":e?"color-mix(in lab, #121212 85%, #4d9375)":"color-mix(in lab, #ffffff 91%, #1e754f)","--markstream-diff-removed-line-fill":o,"--markstream-diff-removed-number-fill":e?"color-mix(in lab, #121212 85%, #cb7676)":"color-mix(in lab, #ffffff 91%, #ab5959)","--markstream-diff-added-gutter":`linear-gradient(90deg, ${l} 0 4px, transparent 4px 100%)`,"--markstream-diff-removed-gutter":`linear-gradient(90deg, ${t} 0 4px, transparent 4px 100%)`,"--markstream-diff-added-inline":e?"hsl(152 42% 60% / 0.28)":"var(--diff-added-inline-bg)","--markstream-diff-removed-inline":e?"hsl(0 58% 58% / 0.28)":"var(--diff-removed-inline-bg)"}}const pn=m(()=>{const e=Yl(Ul.value),l=Yl(vn.value),t=Gl(),a=Ce({},i.value||e==null||t?i.value||l==null?{}:{minHeight:`${l}px`}:{height:`${e}px`,minHeight:`${e}px`});if(a["--markstream-code-fallback-bg"]=E.value.background,a["--markstream-code-fallback-fg"]=E.value.foreground,E.value.builtin&&(a["--markstream-code-theme-bg"]=E.value.background,a["--markstream-code-theme-fg"]=E.value.foreground,a["--markstream-code-theme-line-number"]=E.value.lineNumber),a["--markstream-pre-line-number-top"]=`${Al.value.top}px`,a["--markstream-pre-line-number-left"]="0px",a["--markstream-pre-line-number-padding-left"]="2ch",a["--markstream-pre-line-number-padding-right"]="1ch",a["--markstream-pre-line-number-separator-width"]="2px",i.value){a["--markstream-pre-diff-line-height"]=`${Wl.value}px`,a["--markstream-pre-diff-pane-bottom-padding"]=(jl.value,"0px");const o=Ye.value;o!=null&&o>0&&(a.height=`${o}px`,a.minHeight=`${o}px`,a.maxHeight=`${o}px`),Object.assign(a,hn(nn.value))}return a}),gn=m(()=>Ht.value!=null&&(!F.value||Ge()!=null)),Ca=m(()=>{const e=Ht.value;if(e==null)return null;if(i.value)return Math.ceil(e);const l=Sa.value,t=Ul.value;if(l==null||t==null)return Math.ceil(e);const a=Math.max(0,Math.ceil(l)-Math.ceil(t));return Math.ceil(e+a)}),Ma=m(()=>{if(i.value&&ze.value)return{};const e=Ht.value;return gn.value&&e!=null?{minHeight:`${e}px`}:{}});function yn(){Jl.value=null}function bn(){var e,l,t,a,o,d,r,u;const c=(e=ne.value)==null?void 0:e.querySelector("pre.code-pre-fallback"),s=Y(),v=(l=c?.scrollTop)!=null?l:0;(o=(a=(t=s?.getOriginalEditor)==null?void 0:t.call(s))==null?void 0:a.setScrollTop)==null||o.call(a,v),(u=(r=(d=s?.getModifiedEditor)==null?void 0:d.call(s))==null?void 0:r.setScrollTop)==null||u.call(r,v)}function wn(){return D(this,null,function*(){return i.value?(Et(),xl(),X(!0),bn(),ye(),nl.value=!0,yield O(),X(!0),yield ke(),X(!0),Ml(),xl(),!!(yield(function(){return D(this,null,function*(){var e;if(!i.value)return!0;for(let l=0;l<4;l++){const t=xl();X(!0),Ot(t),Ba(t),yield O(),yield ke();const a=(e=ne.value)==null?void 0:e.querySelector("pre.code-pre-fallback");if(!a)return!1;if(t==null)return Ql();const o=a.getBoundingClientRect().height;if(o>0&&Math.abs(o-t)<=2)return!0}return!1})})())&&(F.value=!0,yield O(),xl(),X(!0),Ml(),ye(),se(()=>{p||se(()=>{p||((function(){var e,l;const t=(e=ne.value)==null?void 0:e.querySelector(".code-block-shell-content"),a=(l=ne.value)==null?void 0:l.querySelector(".code-editor-layer");t&&a&&(a.style.removeProperty("height"),a.style.removeProperty("min-height"),t.style.removeProperty("height"),t.style.removeProperty("min-height"))})(),fe(!0))})}),fe(),!0)):!(tl&&!(yield tl())||(nl.value=!0,yield O(),X(!0),F.value=!0,yield O(),fe(),0))})}function Ot(e){var l;if(!i.value)return;const t=h.value,a=(l=ne.value)==null?void 0:l.querySelector("pre.code-pre-fallback");if(!t||!a)return;const o=e??Number.parseFloat(t.style.height||"");if(!Number.isFinite(o)||o<=0)return;const d=Math.ceil(o),r=`${d}px`;Ye.value=d;const u=ne.value;u&&(u.dataset.markstreamDiffHandoffHeight=r),a.dataset.markstreamDiffHandoffHeight=r,a.style.setProperty("height",r),a.style.setProperty("min-height",r)}function Ba(e){var l,t,a;if(!i.value)return;const o=(l=ne.value)==null?void 0:l.querySelector(".code-block-shell-content"),d=(t=ne.value)==null?void 0:t.querySelector(".code-editor-layer");if(!o||!d)return;const r=typeof e=="number"&&Number.isFinite(e)&&e>0?Math.ceil(e):Number.parseFloat(((a=h.value)==null?void 0:a.style.height)||"");if(!Number.isFinite(r)||r<=0)return;const u=`${r}px`;d.style.height=u,d.style.minHeight=u,o.style.height=u,o.style.minHeight=u}function xl(){const e=h.value;if(e&&Ql(e)){ye();const l=Cl(e);if(l!=null&&l>0){const t=Math.ceil(l),a=Math.ceil(Bl()),o=Math.min(t,a),d=`${o}px`;return e.style.height=d,e.style.minHeight="0px",e.style.maxHeight=`${a}px`,e.style.overflow=t>a+1?"auto":"hidden",ze.value&&(Ye.value=o,Ot(o)),Le(),o}return le({preferModelDiffHeight:!0}),Ot(),Le(),Number.parseFloat(e.style.height||"")||null}return Et()}function kn(e,l=!1,t={}){const a=Math.ceil(e),o=Ge();if(o==null)return a;const d=t.allowBelowEstimatedFloor===!0;return a>=o||d?((l||d)&&_.value&&yn(),a):o}function ke(){return new Promise(e=>{let l=!1,t=null,a=null;const o=()=>{l||(l=!0,a!=null&&globalThis.clearTimeout(a),t!=null&&at(t),e())};a=globalThis.setTimeout(o,50),t=se(o)})}function xn(){var e;try{const l=h.value;if(!l)return null;const t=(e=l.querySelector(".stream-diffs-shell .stream-diffs-surface"))!=null?e:l.querySelector(".stream-diffs-shell");if(t){const a=Math.ceil(t.getBoundingClientRect().height);if(a>0)return a}}catch{}return null}function Dt(){var e,l,t,a,o,d;try{const r=i.value?(t=(l=(e=Y())==null?void 0:e.getModifiedEditor)==null?void 0:l.call(e))!=null?t:Y():ie(),u=fl(),c=(a=u?.EditorOption)==null?void 0:a.fontInfo;if(r&&c!=null){const s=(o=r.getOption)==null?void 0:o.call(r,c),v=s?.fontSize;if(typeof v=="number"&&Number.isFinite(v)&&v>0)return v}}catch{}try{const r=h.value;if(r){const u=(d=r.querySelector(".stream-diffs-shell .stream-diffs-surface"))!=null?d:r.querySelector(".stream-diffs-shell");if(u)try{if(typeof window<"u"&&typeof window.getComputedStyle=="function"){const c=window.getComputedStyle(u).fontSize,s=c&&c.match(/^(\d+(?:\.\d+)?)/);if(s)return Number.parseFloat(s[1])}}catch{}}}catch{}return null}function al(e){var l,t;try{const d=fl(),r=(l=d?.EditorOption)==null?void 0:l.lineHeight;if(r!=null){const u=(t=e?.getOption)==null?void 0:t.call(e,r);if(typeof u=="number"&&u>0)return u}}catch{}const a=xn();if(a&&a>0)return a;const o=Number.isFinite(T.value)&&T.value>0?T.value:14;return Math.max(12,Math.round(1.35*o))}function Sn(){var e;const l=(e=n.codeBlockOptions)==null?void 0:e.padding;return typeof l=="number"&&Number.isFinite(l)?2*Math.max(0,l):i.value?24:0}function Cn(e){return!!dt.value||!!e&&(Se(e)||tl!=null)}function Sl(){var e,l;i.value?hl.value=xo(String((e=n.node.originalCode)!=null?e:""),String((l=n.node.updatedCode)!=null?l:"")):hl.value={removed:0,added:0}}function Nt(){var e;if(Number.isFinite(T.value)&&T.value>0&&Number.isFinite(ue.value))return T.value;if(typeof((e=n.codeBlockOptions)==null?void 0:e.fontSize)=="number")return ue.value=n.codeBlockOptions.fontSize,T.value=n.codeBlockOptions.fontSize,n.codeBlockOptions.fontSize;const l=Dt();return l&&l>0?(ue.value=l,T.value=l,l):(ue.value=12,T.value=12,12)}function Pa(){const e=Nt(),l=Math.min(36,e+1);T.value=l}function $a(){const e=Nt(),l=Math.max(10,e-1);T.value=l}function Ha(){Nt(),Number.isFinite(ue.value)&&(T.value=ue.value)}function Mn(){var e,l,t,a,o,d,r,u,c,s,v,g,y,j;try{const z=i.value?Y():null,f=i.value?z:ie();if(!f)return null;if(z?.getOriginalEditor&&z?.getModifiedEditor){const B=(e=z.getOriginalEditor)==null?void 0:e.call(z),x=(l=z.getModifiedEditor)==null?void 0:l.call(z);(t=B?.layout)==null||t.call(B),(a=x?.layout)==null||a.call(x);const P=((o=B?.getContentHeight)==null?void 0:o.call(B))||0,Z=((d=x?.getContentHeight)==null?void 0:d.call(x))||0,be=Math.max(P,Z);if(be>0)return Math.ceil(be);const te=((c=(u=(r=B?.getModel)==null?void 0:r.call(B))==null?void 0:u.getLineCount)==null?void 0:c.call(u))||1,L=((g=(v=(s=x?.getModel)==null?void 0:s.call(x))==null?void 0:v.getLineCount)==null?void 0:g.call(v))||1,$=Math.max(te,L),I=Math.max(al(B),al(x)),G=Sn();return Math.ceil($*I+G+0)}if(f?.getContentHeight){(y=f?.layout)==null||y.call(f);const B=f.getContentHeight();if(B>0)return i.value||(Rl.value=!0),Math.ceil(B)}const w=(j=f?.getModel)==null?void 0:j.call(f);let N=1;w&&typeof w.getLineCount=="function"&&(N=w.getLineCount());const q=al(f);return Math.ceil(N*(q+1.5)+0)}catch{return null}}function Bn(){var e,l;if(i.value)return!1;try{const t=(l=(e=ie())==null?void 0:e.getContentHeight)==null?void 0:l.call(e),a=typeof t=="number"&&Number.isFinite(t)&&t>0;return a&&(Rl.value=!0),a}catch{return!1}}function Cl(e){if(typeof window>"u")return null;try{if(window.getComputedStyle(e).display==="none")return null;const l=e.querySelector("diffs-container");if(l instanceof HTMLElement){const a=l.getBoundingClientRect();if(a.height>0)return Math.ceil(a.height)}const t=e.querySelector(".stream-diffs-shell");if(t){const a=t.getBoundingClientRect();if(a.height>0)return Math.ceil(a.height)}return null}catch{return null}}function Pn(e){var l;const t=String(e??"").trim(),a=(l=t.match(/^#([0-9a-f]{3}|[0-9a-f]{6})$/i))==null?void 0:l[1];if(a){const c=a.length===3?a.split("").map(s=>`${s}${s}`).join(""):a;return .2126*Number.parseInt(c.slice(0,2),16)+.7152*Number.parseInt(c.slice(2,4),16)+.0722*Number.parseInt(c.slice(4,6),16)}const o=t.match(/\d+(?:\.\d+)?/g);if(!o||o.length<3)return null;const[d,r,u]=o.slice(0,3).map(Number);return .2126*d+.7152*r+.0722*u}function Ml(){var e,l,t;if($n())return;const a=Dt();a&&a>0&&(Pt.value=a,T.value=a,ue.value=a);try{const o=al(i.value?(t=(l=(e=Y())==null?void 0:e.getModifiedEditor)==null?void 0:l.call(e))!=null?t:Y():ie());o&&o>0&&(Il.value=o)}catch{}try{const o=xn();o&&o>0&&(Il.value=o)}catch{}}function $n(){return i.value&&sn.value}function Et(){var e;if(!ze.value)return null;const l=h.value,t=(e=ne.value)==null?void 0:e.querySelector("pre.code-pre-fallback");if(!l||!t)return null;const a=Math.ceil(t.getBoundingClientRect().height),o=i.value?Cl(l):null,d=Math.max(a,o!=null&&o>0?Math.ceil(o):0),r=Math.ceil(Bl()),u=Math.min(d,r);return!Number.isFinite(u)||u<=0?null:(i.value&&u>a&&(Ye.value=u),l.style.height=`${u}px`,l.style.minHeight=`${u}px`,l.style.maxHeight=`${r}px`,l.style.overflow=d>r+1?"auto":"hidden",u)}function Ft(){var e,l,t,a,o,d,r,u,c;const s=h.value,v=ne.value;if(!s||!v)return;const g=s;g.style.setProperty("--markstream-diff-metadata-bg",E.value.background),g.style.setProperty("--markstream-diff-metadata-fg",E.value.lineNumber),g.style.setProperty("--diffs-tab-size",String(fn.value)),g.style.setProperty("--diffs-scrollbar-gutter-override","0px"),typeof((e=n.codeBlockOptions)==null?void 0:e.padding)=="number"?g.style.setProperty("--diffs-gap-block",`${Al.value.top}px`):g.style.removeProperty("--diffs-gap-block");const y=s.querySelector(".stream-diffs-shell")||s,j=y,z=y;let f=null,w=null,N=null;try{typeof window<"u"&&typeof window.getComputedStyle=="function"&&(f=window.getComputedStyle(y),w=j===y?f:window.getComputedStyle(j),N=z===y?f:window.getComputedStyle(z))}catch{f=null,w=null,N=null}const q=String((l=f?.getPropertyValue("--vscode-editor-foreground"))!=null?l:"").trim(),B=String((t=f?.getPropertyValue("--vscode-editor-background"))!=null?t:"").trim(),x=String((o=(a=f?.getPropertyValue("--vscode-editor-selectionBackground"))!=null?a:f?.getPropertyValue("--vscode-editor-hoverHighlightBackground"))!=null?o:"").trim(),P=q||String((r=(d=N?.color)!=null?d:f?.color)!=null?r:"").trim(),Z=B||String((c=(u=w?.backgroundColor)!=null?u:f?.backgroundColor)!=null?c:"").trim(),be=(function(){var te,L,$,I,G;try{const ce=i.value?($=(L=(te=Y())==null?void 0:te.getModifiedEditor)==null?void 0:L.call(te))!=null?$:Y():ie(),oe=fl(),re=(I=oe?.EditorOption)==null?void 0:I.fontInfo;if(ce&&re!=null){const K=(G=ce.getOption)==null?void 0:G.call(ce,re),J=K?.typicalHalfwidthCharacterWidth;if(typeof J=="number"&&Number.isFinite(J)&&J>0)return J}}catch{}return null})();if(be!=null&&(wl.value=be),i.value){const te=(L,$)=>{$?(v.style.setProperty(L,$),g.style.setProperty(L,$)):(v.style.removeProperty(L),g.style.removeProperty(L))};for(const[L,$]of Object.entries(hn(v.classList.contains("is-dark"))))te(L,$);return P?(v.style.setProperty("--markstream-diff-editor-fg",P),g.style.setProperty("--vscode-editor-foreground",P)):(v.style.removeProperty("--markstream-diff-editor-fg"),g.style.removeProperty("--vscode-editor-foreground")),Z?(v.style.setProperty("--markstream-diff-editor-bg",Z),v.style.setProperty("--markstream-diff-panel-bg",Z),v.style.setProperty("--markstream-diff-panel-bg-soft",Z),v.style.setProperty("--markstream-diff-panel-bg-strong",Z),g.style.setProperty("--vscode-editor-background",Z),g.style.backgroundColor=Z):(v.style.removeProperty("--markstream-diff-editor-bg"),v.style.removeProperty("--markstream-diff-panel-bg"),v.style.removeProperty("--markstream-diff-panel-bg-soft"),v.style.removeProperty("--markstream-diff-panel-bg-strong"),g.style.removeProperty("--vscode-editor-background"),g.style.backgroundColor=""),void(x?g.style.setProperty("--vscode-editor-selectionBackground",x):g.style.removeProperty("--vscode-editor-selectionBackground"))}if((function(te,L,$){if(!dt.value)return!1;const I=Pn(te),G=Pn(L);return $?I!=null&&I>170||G!=null&&G<110:I!=null&&I<85||G!=null&&G>190})(Z,P,v.classList.contains("is-dark")))return g.style.removeProperty("--vscode-editor-foreground"),g.style.removeProperty("--vscode-editor-background"),void g.style.removeProperty("--vscode-editor-selectionBackground");P&&g.style.setProperty("--vscode-editor-foreground",P),Z&&g.style.setProperty("--vscode-editor-background",Z),x&&g.style.setProperty("--vscode-editor-selectionBackground",x)}A(()=>[n.stream,n.loading,n.node.loading,i.value],([e,l,t,a])=>{a||e===!1||l===!1||kl.value?(a||e===!1)&&kl.value&&(kl.value=!1):(kl.value=!0,yn())},{immediate:!0});let Tt=0,zt=0;const Hn=/auto|scroll|overlay/i;function xe(e,l,t){var a;if(typeof window>"u"||i.value||(function(v){return pa.value||un(v)})(e))return;const o=Math.ceil(l),d=Math.ceil(t)-o;if(Math.abs(d)<=1)return;const r=(function(v){var g,y;if(typeof window>"u")return null;const j=(g=v?.ownerDocument)!=null?g:document,z=j.scrollingElement||j.documentElement||j.body;let f=(y=v?.parentElement)!=null?y:null;for(;f&&f!==j.body&&f!==z;){const w=window.getComputedStyle(f),N=(w.overflowY||"").toLowerCase(),q=(w.overflow||"").toLowerCase();if(Hn.test(N)||Hn.test(q))return f;f=f.parentElement}return z})(e);if(!r)return;const u=(a=e.ownerDocument)!=null?a:document,c=r===u.body||r===u.documentElement||r===u.scrollingElement,s=c?0:r.getBoundingClientRect().top;e.getBoundingClientRect().top-s>=0||(c&&typeof window.scrollBy=="function"?window.scrollBy(0,d):r.scrollTop+=d)}function Lt(){try{const e=h.value;if(!e)return;const l=e.getBoundingClientRect().height,t=Mn();if(t!=null&&t>0){const o=kn(t,!0,{allowBelowEstimatedFloor:!i.value&&_.value&&Bn()}),d=Ge();return e.style.minHeight=d!=null?`${d}px`:"0px",e.style.height=`${o}px`,e.style.maxHeight="none",e.style.overflow="visible",void xe(e,l,o)}const a=Ge();a!=null&&(e.style.minHeight=`${a}px`,e.style.height=`${a}px`,e.style.maxHeight="none",e.style.overflow="visible",xe(e,l,a))}catch{}}function Je(){for(var e,l;Te.length>0;)try{(l=(e=Te.pop())==null?void 0:e.dispose)==null||l.call(e)}catch{}ll!=null&&(at(ll),ll=null),dl!=null&&(at(dl),dl=null),qe!=null&&(at(qe),qe=null),Ie=0,Ve=!1}function Qe(){for(var e;Kt.length>0;)try{(e=Kt.pop())==null||e()}catch{}}function le(e=!1){pe.value||(De.value?Lt():(function(l={}){try{const t=h.value;if(!t)return;const a=t.getBoundingClientRect().height,o=Math.ceil(a||0),d=Bl(),r=o,u=Number.parseFloat(t.style.height||""),c=r>0?r:Number.isFinite(u)&&u>0?Math.ceil(u):0,s=i.value?(function(){var x,P,Z,be,te,L,$,I,G,ce,oe,re;if(Se())return null;try{const K=Y(),J=(x=K?.getOriginalEditor)==null?void 0:x.call(K),rl=(P=K?.getModifiedEditor)==null?void 0:P.call(K);if(!J||!rl)return null;const qa=((te=(be=(Z=J.getModel)==null?void 0:Z.call(J))==null?void 0:be.getLineCount)==null?void 0:te.call(be))||1,Ia=((I=($=(L=rl.getModel)==null?void 0:L.call(rl))==null?void 0:$.getLineCount)==null?void 0:I.call($))||1,Va=Math.max(qa,Ia),Wa=Math.max(al(J),al(rl)),Aa=Sn(),Ua=Math.max((ce=(G=J.getContentHeight)==null?void 0:G.call(J))!=null?ce:0,(re=(oe=rl.getContentHeight)==null?void 0:oe.call(rl))!=null?re:0);return Math.ceil(Math.max(Ua,Va*Wa+Aa+0))}catch{return null}})():null,v=i.value&&Ql(t);if(ft>0&&(ft--,Ee.value!=null))return void xe(t,a,_e(t,Ee.value,d,{preserveScrollableOverflow:Rt(t)}));if(i.value&&!v&&ze.value){const x=Et();if(x!=null){const P=_e(t,x,d,{allowBelowEstimatedFloor:!0});return X(!0),void xe(t,a,P)}}const g=i.value&&l.preferModelDiffHeight===!0,y=i.value?Cl(t):null,j=!i.value&&_.value&&Bn(),z=i.value&&n.loading!==!1&&(y!=null||s!=null&&r>0&&s0&&s0&&s0?c:null:s;else w=Mn();if(i.value&&w!=null&&c>0&&(n.loading!==!1||l.holdCurrentDiffHeight===!0)&&(w=Math.max(w,c)),w!=null&&w>0)return void xe(t,a,_e(t,w,d,{clearEstimatedFloor:!0,allowBelowEstimatedFloor:j||z,preserveScrollableOverflow:Rt(t),renderedStreamingDiffHeight:y}));if(Ee.value!=null)return void xe(t,a,_e(t,Ee.value,d,{preserveScrollableOverflow:Rt(t)}));const N=i.value&&n.loading!==!1?r:Math.max(r,s!=null&&s>0?s:0);if(N>0)return void xe(t,a,_e(t,N,d));const q=Ge();if(!(q==null||i.value&&n.loading!==!1&&v))return void xe(t,a,_e(t,q,d));const B=Number.parseFloat(t.style.height);!Number.isNaN(B)&&B>0?xe(t,a,_e(t,B,d)):i.value||xe(t,a,_e(t,d,d))}catch{}})(typeof e=="object"?e:{}))}function On(){Tt=0,zt=0}function X(e=!1){var l,t,a;if(pe.value)return;const o=h.value;if(!o)return;const d=i.value?Y():ie();if(d&&typeof d.layout=="function")try{const r=(l=o.getBoundingClientRect)==null?void 0:l.call(o),u=Math.ceil(((t=r?.width)!=null?t:0)||o.clientWidth||0),c=Math.ceil(((a=r?.height)!=null?a:0)||o.clientHeight||Number.parseFloat(o.style.height||"")||0);if(u>0&&c>0){if(!e&&u===Tt&&c===zt)return;Tt=u,zt=c,d.layout({width:u,height:c})}else On(),d.layout()}catch{}}function ye(){Qe()}function fe(e=!1){if(p||ll!=null)return;const l=()=>{p||(ye(),le(e),X())};ll=se(()=>{ll=null,l(),dl=se(()=>{dl=null,l()})}),Le()}function Le(e=!1){if(!i.value||p||!e&&n.loading===!1||(Ve=Ve||e,Ie=Math.max(Ie,e?18:6),qe!=null))return;const l=()=>{if(qe=null,!i.value||p||Ie<=0||!Ve&&n.loading===!1)return Ie=0,void(Ve=!1);Ie--,ye(),le({preferModelDiffHeight:!0,holdCurrentDiffHeight:Ve}),X(),Ie>0?qe=se(l):Ve=!1};qe=se(l)}function _e(e,l,t,a={}){var o;const d=i.value&&n.loading!==!1,r="renderedStreamingDiffHeight"in a?d&&(o=a.renderedStreamingDiffHeight)!=null?o:null:d?Cl(e):null,u=r!=null&&r>l+1?r:l,c=Math.min(u,t),s=a.allowBelowEstimatedFloor===!0,v=kn(c,a.clearEstimatedFloor===!0,{allowBelowEstimatedFloor:s}),g=Ge();e.style.minHeight=g==null||s?"0px":`${Math.min(g,Math.ceil(t))}px`,e.style.height=`${v}px`,e.style.maxHeight=`${Math.ceil(t)}px`;const y=a.preserveScrollableOverflow===!0||u>t+1||_t(e,v);return e.style.overflow=y?"auto":"hidden",v}function _t(e,l=0){var t;const a=Math.ceil(((t=e.getBoundingClientRect)==null?void 0:t.call(e).height)||0),o=Math.max(l,e.clientHeight||0,a);return o>0&&e.scrollHeight>o+1}function Rt(e){var l;return ct||_t(e,(l=Ee.value)!=null?l:0)}function Ql(e=h.value){return Se(e)}function Dn(e=h.value){return Se(e)}function Nn(){var e,l;if(Se())return!0;const t=(l=(e=ie())==null?void 0:e.getModel)==null?void 0:l.call(e);return typeof t?.getValue=="function"&&t.getValue()===$e.value}function Se(e=h.value){return!!e?.querySelector("diffs-container")}function En(){return n.loading!==!1||F.value}function Oa(){const e=Y();return typeof e?.getOriginalEditor=="function"||typeof e?.getModifiedEditor=="function"||typeof e?.getLineChanges=="function"}function Fn(){return D(this,null,function*(){if(!i.value)return!0;for(let e=0;e<30;e++){if(p)return!1;if(Se())return yield O(),yield ke(),!p&&Se();yield O(),yield ke()}return!1})}let jt="";function Tn(e,l,t){return D(this,null,function*(){const a=`${e}\0${l}\0${t}`;if(jt!==a){try{return yield zl(e,l,t),void(jt=a)}catch(o){if(!pl(o))throw o}if(yield O(),yield ke(),!p&&i.value)try{yield zl(e,l,t),jt=a}catch(o){if(!pl(o))throw o}}})}function Bl(){var e,l;return(l=(e=n.codeBlockOptions)==null?void 0:e.maxHeight)!=null?l:500}const qt=m(()=>n.isShowPreview&&(we.value==="html"||we.value==="svg"));function Re(){return typeof n.node.loading=="boolean"?n.node.loading:n.loading===!0}function zn(e,l,t){return!t||(function(){var a,o,d;if(!Re())return!0;const r=String((a=n.node.raw)!=null?a:""),u=(d=(o=r.split(/\r\n|\n|\r/,1)[0])==null?void 0:o.trimStart())!=null?d:"";return!/^(?:`{3,}|~{3,})/.test(u)||/\r\n|\n|\r/.test(r)})()&&String(l??"")?Qn(String(e??"")):"plain"}function Xl(){return Re()}let Xe=null,Zl=!1,Kl=0;function Ln(){Xe=null,Kl++}function _n(){return D(this,arguments,function*(e=Kl){if(!Zl){Zl=!0;try{for(;Xe&&!p&&!i.value&&e===Kl;){const l=Xe;Xe=null;try{yield Promise.resolve(mt(l.code,l.language)),yield O(),p||i.value||(le(!1),X())}catch{}}}finally{Zl=!1,!Xe||p||i.value||_n()}}})}function Rn(e,l){Xe={code:e,language:l},_n(Kl)}A(()=>[n.node.language,n.node.code,n.node.raw,n.node.loading,n.loading],([e,l,t,a,o])=>{we.value=zn(e,l,typeof a=="boolean"?a:o===!0)}),A(()=>[n.node.originalCode,n.node.updatedCode,i.value],()=>{se(()=>Sl())},{immediate:!0});let et=0;A(()=>[n.node.originalCode,n.node.updatedCode,Me.value,i.value,n.stream],e=>D(null,[e],function*([,,,l,t]){var a,o;const d=++et;if(!l||Re()||t===!1&&!V.value)return;if(t!==!1&&ae&&!V.value&&h.value)try{yield He(h.value)}catch{}const r=cl;if(r&&!ge.value){try{yield r}catch{}if(p||!i.value||d!==et)return}if(d!==et)return;const u=kt(String((a=n.node.originalCode)!=null?a:""),String((o=n.node.updatedCode)!=null?o:"")),c=n.loading===!1;c&&Ze();try{if(yield Tn(u.original,u.updated,Me.value),p||!i.value||d!==et)return;yield O(),X(!0),ye(),le(n.loading===!1||{preferModelDiffHeight:!0}),X(!0),fe(!0)}catch{return}if(c){if(p||!i.value)return;_l(),ye(),Sl(),fe(),Le(!0)}De.value&&se(()=>Lt())})),A(()=>n.node.code,e=>D(null,null,function*(){if(Re()||n.stream===!1||(we.value||(we.value=Qn(Zt(e))),i.value))return;const l=cl;if(l&&!ge.value){try{yield l}catch{}if(p||i.value)return}if(ae&&!V.value&&h.value)try{yield He(h.value)}catch{}Rn(en(n.node.code),Me.value),De.value&&se(()=>Lt())}));const Da=m(()=>{const e=we.value;return e?Kn[e]||e.charAt(0).toUpperCase()+e.slice(1):Kn[""]||"Plain Text"}),jn=m(()=>{var e;return go(String((e=n.node.raw)!=null?e:""),Da.value,i.value)}),Na=m(()=>jn.value.title),qn=m(()=>jn.value.caption),Ea=m(()=>(co.value,Mo(we.value||"",da))),Fa=m(()=>{const e={};e["--markstream-code-layout-character-width"]=wl.value==null?"1ch":`${wl.value}px`,e["--markstream-code-fallback-bg"]=E.value.background,e["--markstream-code-fallback-fg"]=E.value.foreground,E.value.builtin&&(e["--markstream-code-theme-bg"]=E.value.background,e["--markstream-code-theme-fg"]=E.value.foreground,e["--markstream-code-theme-line-number"]=E.value.lineNumber),e["--markstream-diff-added-line-fill"]=E.value.diffAddedLine,e["--markstream-diff-added-number-fill"]=E.value.diffAddedNumber,e["--markstream-diff-editor-bg"]=E.value.background,e["--markstream-diff-removed-line-fill"]=E.value.diffRemovedLine,e["--markstream-diff-removed-number-fill"]=E.value.diffRemovedNumber,e["--markstream-diff-shell-bg"]=E.value.background,e["--markstream-pre-resolved-theme-bg"]=E.value.background,e["--markstream-pre-resolved-theme-fg"]=E.value.foreground,e["--markstream-pre-resolved-theme-line-number"]=E.value.lineNumber;const l=o=>{if(o!=null)return typeof o=="number"?`${o}px`:String(o)},t=l(n.minWidth),a=l(n.maxWidth);if(t&&(e.minWidth=t),a&&(e.maxWidth=a),gn.value&&!i.value&&!pe.value){const o=Ca.value;o!=null&&(e.minHeight=`${o}px`)}return e.color="var(--markstream-code-fallback-fg, var(--markstream-code-theme-fg, var(--markstream-pre-resolved-theme-fg)))",e.backgroundColor="var(--markstream-code-fallback-bg, var(--markstream-code-theme-bg, var(--markstream-pre-resolved-theme-bg)))",i.value||(e.borderColor="var(--markstream-code-border-color, var(--code-border))"),e}),Ta=m(()=>n.showTooltips!==!1);function za(){return D(this,null,function*(){const e=n.node.code;try{n.clipboardWriter?yield n.clipboardWriter(e):typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function"&&(yield navigator.clipboard.writeText(e)),ut.value=!0,k("copy",e),setTimeout(()=>{ut.value=!1},1e3)}catch(l){console.error("复制失败:",l)}})}function La(){De.value=!De.value;const e=i.value?Y():ie(),l=h.value;e&&l&&(De.value?(l.style.maxHeight="none",l.style.overflow="visible",le(!0)):(l.style.overflow="auto",le(!0)))}function _a(){var e,l;if(pe.value=!pe.value,pe.value){if(ct=!1,h.value){const t=Math.ceil(((l=(e=h.value).getBoundingClientRect)==null?void 0:l.call(e).height)||0);ct=_t(h.value,t)||h.value.style.overflow==="auto"||h.value.style.overflowY==="auto",t>0&&(Ee.value=t)}}else h.value&&Ee.value!=null&&(h.value.style.height=`${Ee.value}px`),ft=2,O(()=>{pe.value||p||(le(!0),X(!0))})}function Ra(){if(!qt.value)return;const e=we.value;if(Jt.value){const l=e==="html"?"text/html":"image/svg+xml",t=e==="html"?Qt("artifacts.htmlPreviewTitle")||"HTML Preview":Qt("artifacts.svgPreviewTitle")||"SVG Preview";return void k("previewCode",{node:n.node,artifactType:l,artifactTitle:t,id:`temp-${e}-${Date.now()}`})}e==="html"&&(ql.value=!ql.value)}function He(e,l={}){if(!ae||p||n.stream===!1&&n.loading!==!1||(Vt(),Gn())||me.value||h.value!==e||Xl())return null;if(Be)return Be;if(V.value&&_.value)return Promise.resolve();const t=It(),a=xt.value;let o=!1;V.value=!0,(function(){const r=fa.value;Q&&r&&Ne!==r&&(Ne&&Q.markSettled(Ne),Ne=r,Q.markPending(r))})();const d=D(null,null,function*(){try{yield(function(r){return D(this,null,function*(){var u,c;if(!ae||p)return;sl=!1;const s=yl.value;if(Ct=!1,de.value=!1,Ae.value=null,ge.value=!1,F.value=!1,nl.value=!1,Pt.value=null,Il.value=null,wl.value=null,Ye.value=null,On(),(function(){if(Rl.value=!1,Gl())return void(Jl.value=null);const f=mn.value;Jl.value=_.value||f==null?null:f})(),Je(),Qe(),(function(f){f.replaceChildren()})(r),Ze(),yield ea(An()),p)return;const v=D(null,null,function*(){var f,w;if(s==="diff"){(function(){if(wt||typeof window>"u")return;wt=!0;const q=B=>{var x;pl("reason"in B?B.reason:(x=B.error)!=null?x:B.message)&&(B.preventDefault(),B.stopImmediatePropagation())};window.addEventListener("error",q,!0),window.addEventListener("unhandledrejection",q,!0),Ll=()=>{window.removeEventListener("error",q,!0),window.removeEventListener("unhandledrejection",q,!0),wt=!1,Ll=null}})(),We();const N=kt(String((f=n.node.originalCode)!=null?f:""),String((w=n.node.updatedCode)!=null?w:""));Tl?yield Tl(r,N.original,N.updated,Me.value):yield ae(r,n.node.code,Me.value)}else yield ae(r,$e.value,Me.value);ge.value=!0}),g=v.finally(()=>{cl===g&&(cl=null)});if(cl=g,yield(function(f){return D(this,null,function*(){if(!i.value)return void(yield f);let w,N=!1;for(f.then(()=>{N=!0},q=>{N=!0,w=q});;){if(p)return;if(N){if(w)throw w;return}if(Ql()&&Oa())return;yield O(),yield ke()}})})(g),p||yl.value!==s)return;ge.value=!0;const y=(u=n.codeBlockOptions)==null?void 0:u.fontSize;if(typeof y=="number"&&Number.isFinite(y)&&y>0){const f=s==="diff"?Y():ie();(c=f?.updateOptions)==null||c.call(f,{fontSize:y}),ue.value=y,T.value=y}else if(!$n()){const f=Dt();f&&f>0?(ue.value=f,T.value=f):(ue.value=12,T.value=12)}for(Ml();sl;)if(sl=!1,yield Wn(),p)return;De.value||pe.value||le(!1),_.value=!0,an.value=s,(function(){var f,w,N,q,B;if(Je(),i.value){const P=Y(),Z=(f=P?.getOriginalEditor)==null?void 0:f.call(P),be=(w=P?.getModifiedEditor)==null?void 0:w.call(P),te=($,I)=>{try{const G=$?.[I];if(typeof G!="function")return;const ce=G.call($,()=>fe());ce&&Te.push(ce)}catch{}};try{const $=(N=P?.onDidUpdateDiff)==null?void 0:N.call(P,()=>{fe(),se(()=>Sl())});$&&Te.push($)}catch{}te(Z,"onDidContentSizeChange"),te(be,"onDidContentSizeChange");const L=h.value;if(L&&typeof MutationObserver<"u"){const $=["diffs-container",".stream-diffs-shell",".stream-diffs-surface"].join(","),I=oe=>{var re;const K=oe instanceof HTMLElement?oe:oe.parentElement;return!!((re=K?.closest)!=null&&re.call(K,$))},G=oe=>{var re,K;const J=oe instanceof HTMLElement?oe:oe.parentElement;return!!((re=J?.closest)!=null&&re.call(J,$)||(K=J?.querySelector)!=null&&K.call(J,$))},ce=new MutationObserver(oe=>{i.value&&En()&&oe.some(re=>I(re.target)||Array.from(re.addedNodes).some(G)||Array.from(re.removedNodes).some(I))&&(ye(),le({preferModelDiffHeight:!0}),X(),Le())});ce.observe(L,{attributeFilter:["class"],attributes:!0,childList:!0,characterData:!0,subtree:!0}),Te.push({dispose:()=>ce.disconnect()})}if(L&&typeof ResizeObserver<"u"){const $=new ResizeObserver(()=>{if(!i.value||(X(),!En()))return;const I=Cl(L);I!=null&&(Math.ceil(L.getBoundingClientRect().height||0)<=I+1||(ye(),le({preferModelDiffHeight:!0}),X()))});$.observe(L),Te.push({dispose:()=>$.disconnect()})}return}const x=ie();try{const P=(q=x?.onDidContentSizeChange)==null?void 0:q.call(x,()=>fe());P&&Te.push(P)}catch{}try{const P=(B=x?.onDidLayoutChange)==null?void 0:B.call(x,()=>fe());P&&Te.push(P)}catch{}})(),Ft(),Ml(),ye(),Sl(),fe(),yield O();let j=null;tl&&(j=yield tl(),j&&(yield O(),yield ke()));const z=j??(s==="diff"?yield Fn():yield(function(){return D(this,null,function*(){if(Se())return yield O(),yield ke(),Se();for(let f=0;f<30;f++){if(p||i.value)return!1;const w=h.value,N=Nn(),q=Dn(w),B=!$e.value.trim()||Cn(w);if(N&&q&&B&&(yield O(),yield ke(),!p&&!i.value&&Nn()&&Dn(h.value)&&(!$e.value.trim()||Cn(h.value))))return!0;yield O(),yield ke()}return!1})})());p||(z?(Ml(),xl(),(yield wn())||Oe()):Oe())})})(e),bl=null}catch(r){const u=It(),c=a!==xt.value,s=l.allowStaleContentRetry!==!1&&c&&bl!==u;if(t!==u||s)return s&&(bl=u),o=!0,V.value=!1,_.value=!1,ge.value=!1,void(F.value=!1);throw Oe(t),r}}).finally(()=>{Be===d&&(Be=null),(function(){const r=Ne;Q&&r&&(Ne="",O(()=>{var u,c;if(!p){const s=(c=(u=ne.value)==null?void 0:u.offsetHeight)!=null?c:0;s>0&&Q.reportHeight(r,s)}Q.markSettled(r)}))})(),o&&!p&&queueMicrotask(()=>{var r;const u=h.value;u&&!p&&((r=He(u))==null||r.catch(c=>{_.value=!1,F.value=!1,Oe()}))})});return Be=d,d}A(Ta,e=>{e||to()}),A(()=>T.value,(e,l)=>{var t;const a=i.value?Y():ie();a&&typeof e=="number"&&Number.isFinite(e)&&e>0&&((t=a.updateOptions)==null||t.call(a,{fontSize:e}),pe.value||le(!0))},{flush:"post",immediate:!1});let In=0;const ja=A(()=>[h.value,i.value,n.stream,n.loading,el.value,W.value,n.node.language,n.node.raw,n.node.code,n.node.loading],e=>D(null,[e],function*([l,t,a,o,d,r]){const u=++In;if(!l||!r||Re()||Ue||a===!1&&o!==!1||!ae&&(yield(function(){return D(this,null,function*(){if(typeof window>"u"||p||el.value||me.value)return;if(vl)return vl;const s=D(null,null,function*(){try{const v=yield Bo();if(p)return;if(!v)return void(me.value=!0);Mt(v)}catch{if(p)return;me.value=!0}}).finally(()=>{vl===s&&(vl=null)});return vl=s,s})})(),u!==In||n.stream===!1&&n.loading!==!1||Xl()||!W.value||!ae||me.value||V.value||Gn()||p||h.value!==l)||Xl())return;const c=He(l);if(c){try{yield c}catch{_.value=!1,F.value=!1,Oe()}_.value&&F.value&&ja()}}));function lt(e){return typeof e=="string"?e:null}function Vn(e,l){if(e===l)return!0;const t=lt(e),a=lt(l);return!!t&&t===a}function ol(){return vo({darkTheme:n.darkTheme,isDark:n.isDark,lightTheme:n.lightTheme,theme:n.theme,themes:n.themes})}function Wn(){return D(this,arguments,function*(e={}){Ze();const l=()=>{i.value&&_l(),se(()=>{Ft(),fe()})};if(e.appearanceOnly)return void l();const t=ol();if(t)try{yield ea(An()),yield bt(t),l()}catch{}else l()})}function An(){const e=n.themes;return e&&typeof e[0]=="string"&&typeof e[1]=="string"?{dark:e[0],light:e[1]}:ol()}function Un(){var e,l,t,a,o;const d=$t.value,r=Nl(Ce({},gl.value||{}),{wordWrap:d.overflow==="wrap"?"on":"off",overflow:d.overflow,themes:n.themes,stream:!1,MAX_HEIGHT:(l=(e=n.codeBlockOptions)==null?void 0:e.maxHeight)!=null?l:500,fontSize:Vl.value,lineHeight:Wl.value,theme:ol(),themeType:n.isDark?"dark":"light",disableLineNumbers:!H.value,disableFileHeader:!0,workerManager:(o=(a=(t=gl.value)==null?void 0:t.workerManager)!=null?a:yo())!=null?o:void 0,onThemeChange(){Ft()}}),u=(function(){var g;const y=(g=gl.value)==null?void 0:g.fontFamily;return typeof y=="string"&&y.trim()?y.trim():i.value?(function(){var j;if(typeof window>"u")return;const z=(j=ne.value)==null?void 0:j.querySelector("pre.code-pre-fallback");if(z)return window.getComputedStyle(z).fontFamily.trim()||void 0})():void 0})();u&&(r.fontFamily!=null||(r.fontFamily=u));const c=typeof r.unsafeCSS=="string"?r.unsafeCSS:"",s=` +[data-file] [data-line], +[data-diff] [data-line] { + white-space: ${(v=d.overflow)==="wrap"?"pre-wrap":"pre"} !important; + overflow-wrap: ${v==="wrap"?"anywhere":"normal"} !important; + word-break: normal !important; +}`;var v;return r.unsafeCSS=`[data-file], [data-diff] { --diffs-min-number-column-width-default: 2ch !important; } +${s} + +[data-no-newline], +[data-gutter-buffer="metadata"] { + --diffs-computed-decoration-bg: var(--markstream-diff-metadata-bg) !important; + --diffs-computed-diff-line-bg: var(--markstream-diff-metadata-bg) !important; + --diffs-computed-selected-line-bg: var(--markstream-diff-metadata-bg) !important; + --diffs-line-bg: var(--markstream-diff-metadata-bg) !important; + color: var(--markstream-diff-metadata-fg) !important; + background-color: var(--markstream-diff-metadata-bg) !important; +} +${c}`.trim(),r}function Ze(){const e=Un();if(!Pe)return Pe=e,Pe;for(const l of Object.keys(Pe))l in e||delete Pe[l];return Object.assign(Pe,e),Pe}A(yl,(e,l)=>D(null,null,function*(){if(e===l||de.value||Ue||(Ln(),!ae||!h.value)||!V.value||n.stream===!1&&n.loading!==!1||!W.value)return;const t=Be;if(t){try{yield t}catch{}if(p||!h.value)return}if(an.value!==e||!V.value||!_.value)try{_.value=!1,F.value=!1,V.value=!1,ge.value=!1,Je(),Qe(),We(),yield O(),yield He(h.value)}catch{_.value=!1,F.value=!1,Oe()}}));const tt=S(0),Yn=m(()=>String(tt.value));let Pl=!1;function It(){var e;const l=ol();return JSON.stringify({kind:yl.value,language:Me.value,structural:Yn.value,optionsRevision:tt.value,settledContentGeneration:on.value,theme:(e=lt(l))!=null?e:l==null?null:"custom",isDark:n.isDark})}A(()=>{var e;return(e=n.codeBlockOptions)==null?void 0:e.fontSize},e=>{const l=typeof e=="number"&&Number.isFinite(e)&&e>0?e:Bt;ue.value=l,T.value=l,Pt.value=null,Il.value=null,wl.value=null}),A(()=>[n.codeBlockOptions,n.showLineNumbers],()=>{tt.value+=1,n.stream===!1&&n.loading!==!1&&(Pl=!0)},{deep:!0}),A(()=>[$e.value,n.node.originalCode,n.node.updatedCode],()=>{xt.value+=1,Re()||(on.value+=1)});const Ke=m(()=>It());function Vt(){de.value&&Ae.value!==Ke.value&&(de.value=!1,Ae.value=null,bl=null,St=null,V.value=!1,_.value=!1,ge.value=!1,F.value=!1,nl.value=!1)}function Gn(){return Vt(),de.value&&Ae.value===Ke.value}function Oe(e=Ke.value){Ae.value=e,de.value=!0,nl.value=!1}return A(Ke,()=>D(null,null,function*(){if(Ue||!de.value||Ae.value===Ke.value||!ae||!h.value||me.value||p||!W.value||n.stream===!1&&n.loading!==!1||Xl())return;const e=Ke.value;Ue=!0;try{if(Vt(),de.value)return;yield He(h.value)}catch{_.value=!1,F.value=!1,Oe()}finally{St=e,yield O(),Ue=!1}})),A(()=>[n.codeBlockOptions,W.value],()=>{var e,l;if(Ze(),!ae||!W.value)return;const t=i.value?Y():ie(),a=typeof((e=n.codeBlockOptions)==null?void 0:e.fontSize)=="number"?n.codeBlockOptions.fontSize:Number.isFinite(T.value)?T.value:void 0;typeof a=="number"&&Number.isFinite(a)&&a>0&&((l=t?.updateOptions)==null||l.call(t,{fontSize:a})),le(!1)},{deep:!0}),A(()=>[ol(),tn.value,el.value,V.value,W.value],([e,l],t)=>{if(!el.value||!W.value)return;const a=t!=null&&Vn(e,t[0]),o=t!=null&&l!==t[1];_.value?(sl=!1,Wn({appearanceOnly:a})):a&&!o||(sl=!0)},{flush:"post"}),A(()=>[Yn.value,el.value,W.value],(e,l)=>D(null,[e,l],function*([t,a,o],[d]){if(Ze(),!a||!o||!ae||!h.value||!V.value||t===d)return;if(n.stream===!1&&n.loading!==!1)return void(Pl=!0);Pl=!1;const r=Be;if(r){try{yield r}catch{}if(p||!h.value)return}try{_.value=!1,F.value=!1,V.value=!1,ge.value=!1,Je(),Qe(),We(),ml&&Mt(ml),yield O(),yield He(h.value,{allowStaleContentRetry:!1})}catch{_.value=!1,F.value=!1,Oe()}}),{flush:"post"}),A(()=>[n.loading,W.value],([e,l])=>{e===!1&&l&&Pl&&(Pl=!1,tt.value+=1)},{flush:"post"}),A(()=>[n.loading,W.value],(e,l)=>D(null,[e,l],function*([t,a],o){if(!a)return;const d=o?.[0];if(d===!1&&t!==!1&&i.value&&V.value&&(yield O(),se(()=>{D(null,null,function*(){const u=Be;if(u)try{yield u}catch{}!p&&i.value&&n.loading!==!1&&(Ze(),_l(),fe())})})),t)return;const r=d!==void 0&&d!==!1;yield O(),se(()=>{D(null,null,function*(){var u,c;try{if(r&&(yield(function(){return D(this,null,function*(){if(!de.value||!ae||!h.value||me.value||p||!W.value)return!1;if(St===Ke.value)return!0;Ue=!0;try{de.value=!1,Ae.value=null,bl=null,V.value=!1,_.value=!1,ge.value=!1,F.value=!1,Je(),Qe(),We(),ml&&Mt(ml),yield O();try{yield He(h.value)}catch{_.value=!1,F.value=!1,Oe()}}finally{yield O(),Ue=!1}return!0})})()))return void le(!1);if(r&&i.value&&V.value&&Ct&&h.value)return Ct=!1,_.value=!1,F.value=!1,V.value=!1,ge.value=!1,Je(),Qe(),We(),yield O(),yield He(h.value,{allowStaleContentRetry:!1}),void Le(!0);if(r&&V.value)if(i.value&&h.value){const s=Be;if(s)try{yield s}catch{}Ze();const v=kt(String((u=n.node.originalCode)!=null?u:""),String((c=n.node.updatedCode)!=null?c:""));if(yield Tn(v.original,v.updated,Me.value),p||!i.value)return;yield Promise.resolve(pt()),_l(),X(!0),bn(),ye(),Sl();const g=yield Fn();p||!g||F.value||(yield wn()),fe(),Le(!0)}else Ln(),Rn($e.value,Me.value),yield new Promise(s=>{const v=()=>{p?s():Zl||Xe?setTimeout(v,16):s()};v()}),p||i.value||(yield Promise.resolve(ht()));r&&i.value?(le({preferModelDiffHeight:!0,holdCurrentDiffHeight:!0}),Le(!0)):le(!1)}catch{}})})}),{immediate:!0,flush:"post"}),ua(()=>{Je(),Qe(),gt(),Ll?.()}),(e,l)=>{var t;return me.value?(ul(),rt(la,{key:0,style:nt(pn.value),node:dn.value,loading:n.loading,"show-line-numbers":H.value,"diff-inline":jl.value,"diff-hide-unchanged-regions":rn.value,"code-block-options":n.codeBlockOptions,"resolved-visual-options":$t.value,"reserved-height-px":i.value&&(t=Ye.value)!=null?t:void 0,"is-dark":n.isDark,theme:n.theme,"dark-theme":n.darkTheme,"light-theme":n.lightTheme,themes:n.themes,"show-header":n.showHeader,"show-copy-button":n.showCopyButton,"clipboard-writer":n.clipboardWriter,"show-tooltips":n.showTooltips,onCopy:l[0]||(l[0]=a=>k("copy",a))},Xn({_:2},[e.$slots["header-left"]?{name:"header-left",fn:il(()=>[$l(e.$slots,"header-left",{},void 0,!0)]),key:"0"}:void 0,e.$slots["header-right"]?{name:"header-right",fn:il(()=>[$l(e.$slots,"header-right",{},void 0,!0)]),key:"1"}:void 0]),1032,["style","node","loading","show-line-numbers","diff-inline","diff-hide-unchanged-regions","code-block-options","resolved-visual-options","reserved-height-px","is-dark","theme","dark-theme","light-theme","themes","show-header","show-copy-button","clipboard-writer","show-tooltips"])):(ul(),Zn("div",{key:1,ref_key:"container",ref:ne,style:nt(Fa.value),class:it(["code-block-container rounded-lg border",[{dark:n.isDark,"is-rendering":n.loading,"is-dark":nn.value,"is-diff":i.value,"is-plain-text":dt.value}]]),"data-markstream-code-block":"1","data-markstream-enhanced":F.value&&!me.value?"true":"false","data-markstream-enhancement-state":ba.value,"data-markstream-code-block-state":Re()?"streaming":"settled","data-markstream-pending":ya.value?"true":void 0,"data-markstream-viewport-pending":Xt.value&&sa(vt)&&!W.value?"true":void 0},[ao(Co,{"show-header":n.showHeader,"show-collapse-button":n.showCollapseButton,"show-font-size-buttons":n.showFontSizeButtons,"enable-font-size-control":n.enableFontSizeControl,"show-copy-button":n.showCopyButton,"show-expand-button":n.showExpandButton,"show-preview-button":n.showPreviewButton,"show-tooltips":n.showTooltips,"is-dark":n.isDark,loading:n.loading,stream:C.stream,"is-collapsed":pe.value,"is-expanded":De.value,"copy-text":ut.value,"is-previewable":qt.value,"code-font-size":T.value,"code-font-min":10,"code-font-max":36,"default-code-font-size":ue.value,"font-baseline-ready":ka.value,"diff-stats":i.value?hl.value:null,"diff-stats-aria-label":ha.value,onToggleCollapse:_a,onDecreaseFont:$a,onResetFont:Ha,onIncreaseFont:Pa,onCopy:za,onToggleExpand:La,onPreview:Ra},Xn({"header-left":il(()=>[$l(e.$slots,"header-left",{},()=>[U("div",_o,[U("span",{class:"icon-slot h-4 w-4 flex-shrink-0",innerHTML:Ea.value},null,8,Ro),U("div",jo,[U("div",qo,Yt(Na.value),1),qn.value?(ul(),Zn("div",Io,Yt(qn.value),1)):At("",!0)])])],!0)]),loading:il(()=>[$l(e.$slots,"loading",{loading:C.loading,stream:C.stream},()=>[l[1]||(l[1]=U("div",{class:"loading-skeleton"},[U("div",{class:"skeleton-line"}),U("div",{class:"skeleton-line"}),U("div",{class:"skeleton-line short"})],-1))],!0)]),default:il(()=>{var a;return[oo(U("div",{class:it(["code-editor-layer",{"code-editor-layer--collapsed":pe.value}])},[U("div",{ref_key:"codeEditor",ref:h,class:it(["code-editor-container",C.stream?"":"code-height-placeholder"]),"data-markstream-host-hidden":ga.value?"true":void 0,style:nt(Ma.value)},null,14,Vo),sn.value?(ul(),rt(la,{key:0,style:nt(pn.value),node:dn.value,loading:n.loading,"show-line-numbers":H.value,"diff-inline":jl.value,"diff-hide-unchanged-regions":rn.value,"code-block-options":n.codeBlockOptions,"resolved-visual-options":$t.value,"reserved-height-px":i.value&&(a=Ye.value)!=null?a:void 0,"is-dark":n.isDark,theme:n.theme,"dark-theme":n.darkTheme,"light-theme":n.lightTheme,themes:n.themes,"show-toolbar":!1},null,8,["style","node","loading","show-line-numbers","diff-inline","diff-hide-unchanged-regions","code-block-options","resolved-visual-options","reserved-height-px","is-dark","theme","dark-theme","light-theme","themes"])):At("",!0)],2),[[ro,!!C.stream||!C.loading]]),ql.value&&!Jt.value&&qt.value&&we.value==="html"?(ul(),rt(zo,{key:0,code:n.node.code,"html-preview-allow-scripts":n.htmlPreviewAllowScripts,"html-preview-sandbox":n.htmlPreviewSandbox,"is-dark":n.isDark,"on-close":()=>ql.value=!1},null,8,["code","html-preview-allow-scripts","html-preview-sandbox","is-dark","on-close"])):At("",!0)]}),_:2},[e.$slots["header-right"]?{name:"header-right",fn:il(()=>[$l(e.$slots,"header-right",{},void 0,!0)]),key:"0"}:void 0]),1032,["show-header","show-collapse-button","show-font-size-buttons","enable-font-size-control","show-copy-button","show-expand-button","show-preview-button","show-tooltips","is-dark","loading","stream","is-collapsed","is-expanded","copy-text","is-previewable","code-font-size","default-code-font-size","font-baseline-ready","diff-stats","diff-stats-aria-label"])],14,Lo))}}}),[["__scopeId","data-v-2c9e024e"]]);export{Go as default}; diff --git a/apps/kimi-code/dist-web/assets/PreCodeBlock-D94rgfjG.js b/apps/kimi-code/dist-web/assets/PreCodeBlock-D94rgfjG.js new file mode 100644 index 0000000000..a0c8386e80 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/PreCodeBlock-D94rgfjG.js @@ -0,0 +1 @@ +import{M as ee,b$ as ne,aL as v,u as h,aY as H,v as t,bb as x,t as y,bk as u,aw as oe,bO as le,G as ie,I as G,bJ as A,F as I,ca as j,g as de,bL as W,bB as Y,au as se,aU as E,q as f,c9 as ce,d3 as ue,cf as te,d4 as me,d5 as pe,bl as ve,af as fe,ce as he,az as ge,A as be,d6 as Z,ar as X,s as we,d7 as ke,cp as ye,ch as q,ck as xe,co as Be,cs as J,cj as Ce}from"./index-Dnz6Zudc.js";var Se=Object.defineProperty,Fe=Object.defineProperties,Me=Object.getOwnPropertyDescriptors,D=Object.getOwnPropertySymbols,ae=Object.prototype.hasOwnProperty,re=Object.prototype.propertyIsEnumerable,Q=(a,d,e)=>d in a?Se(a,d,{enumerable:!0,configurable:!0,writable:!0,value:e}):a[d]=e,N=(a,d)=>{for(var e in d||(d={}))ae.call(d,e)&&Q(a,e,d[e]);if(D)for(var e of D(d))re.call(d,e)&&Q(a,e,d[e]);return a},_=(a,d)=>Fe(a,Me(d)),K=(a,d,e)=>new Promise((g,b)=>{var z=m=>{try{w(e.next(m))}catch(C){b(C)}},T=m=>{try{w(e.throw(m))}catch(C){b(C)}},w=m=>m.done?g(m.value):Promise.resolve(m.value).then(z,T);w((e=e.apply(a,d)).next())});function ze(a,d){if(d===void 0)return ue(a);if(d){const g=d(a);if(g!=null&&g!=="")return g}const e=te(a);return me(e)||pe()}const Te={key:0,class:"code-block-header flex justify-between items-center border-b px-[var(--ms-inset-panel-x)] py-[var(--ms-inset-panel-y)] border-[var(--code-border)] bg-[var(--code-header-bg)] text-[var(--code-fg)]"},Pe={class:"flex items-center gap-0.5"},je=["aria-label"],He={class:"code-diff-stat removed"},Oe={class:"code-diff-stat added"},$e=["aria-label"],Ne={key:0,xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},Ee={key:1,xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},Le=["aria-pressed"],Re={key:3,class:"relative"},_e=["aria-expanded"],Ae=["disabled"],De=["disabled"],Ve=["disabled"],Ue={key:0,xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},Ge={key:1,xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},Ie={class:"code-loading-placeholder"},We={class:"sr-only","aria-live":"polite",role:"status"},Ye=ee({__name:"CodeBlockShell",props:{showHeader:{type:Boolean,default:!0},showCollapseButton:{type:Boolean,default:!0},showFontSizeButtons:{type:Boolean,default:!0},enableFontSizeControl:{type:Boolean,default:!0},showCopyButton:{type:Boolean,default:!0},showExpandButton:{type:Boolean,default:!0},showPreviewButton:{type:Boolean,default:!0},showTooltips:{type:Boolean,default:!0},isDark:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},stream:{type:Boolean,default:!1},isCollapsed:{type:Boolean,default:!1},isExpanded:{type:Boolean,default:!1},copyText:{type:Boolean,default:!1},isPreviewable:{type:Boolean,default:!1},codeFontSize:{},codeFontMin:{},codeFontMax:{},defaultCodeFontSize:{},fontBaselineReady:{type:Boolean,default:!1},diffStats:{},diffStatsAriaLabel:{}},emits:["toggleCollapse","decreaseFont","resetFont","increaseFont","copy","toggleExpand","preview"],setup(a,{emit:d}){const e=a,g=d,b=E(!1),z=E(null),T=E(null);function w(){j(!0),b.value=!b.value,b.value&&document.addEventListener("click",C,{once:!0,capture:!0})}function m(){j(!0),b.value=!1}function C(p){var o,i;const R=p.target;(o=z.value)!=null&&o.contains(R)||(i=T.value)!=null&&i.contains(R)?document.addEventListener("click",C,{once:!0,capture:!0}):m()}const O=f(()=>e.showFontSizeButtons&&e.enableFontSizeControl||e.showExpandButton||e.isPreviewable&&e.showPreviewButton),{t:s}=ne(),$=f(()=>e.showTooltips!==!1);function S(p,o){$.value&&ce(p.currentTarget,o,"top",!1,void 0,e.isDark)}function F(){$.value&&j()}function P(p){S(p,e.copyText?s("common.copied")||"Copied":s("common.copy")||"Copy")}const V=f(()=>{var p,o;return!!Number.isFinite(e.codeFontSize)&&((p=e.codeFontSize)!=null?p:0)<=((o=e.codeFontMin)!=null?o:0)}),L=f(()=>!e.fontBaselineReady||e.codeFontSize===e.defaultCodeFontSize),r=f(()=>{var p,o;return!!Number.isFinite(e.codeFontSize)&&((p=e.codeFontSize)!=null?p:0)>=((o=e.codeFontMax)!=null?o:100)});return(p,o)=>(v(),h(I,null,[e.showHeader?(v(),h("div",Te,[H(p.$slots,"header-left"),H(p.$slots,"header-right",{},()=>[t("div",Pe,[a.diffStats?(v(),h("div",{key:0,class:"code-diff-stats","aria-label":a.diffStatsAriaLabel},[t("span",He,"-"+x(a.diffStats.removed),1),t("span",Oe,"+"+x(a.diffStats.added),1)],8,je)):y("",!0),e.showCopyButton?(v(),h("button",{key:1,type:"button",class:"code-action-btn inline-flex items-center justify-center p-[var(--ms-action-btn-padding)] rounded leading-none shrink-0 cursor-pointer text-[var(--code-action-fg)] hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] active:scale-[0.96] disabled:opacity-40 disabled:cursor-not-allowed transition-colors","aria-label":a.copyText?u(s)("common.copied")||"Copied":u(s)("common.copy")||"Copy",onClick:o[0]||(o[0]=i=>g("copy")),onMouseenter:o[1]||(o[1]=i=>P(i)),onFocus:o[2]||(o[2]=i=>P(i)),onMouseleave:F,onBlur:F},[a.copyText?(v(),h("svg",Ee,[...o[14]||(o[14]=[t("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M20 6L9 17l-5-5"},null,-1)])])):(v(),h("svg",Ne,[...o[13]||(o[13]=[t("g",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},[t("rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}),t("path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"})],-1)])]))],40,$e)):y("",!0),e.showCollapseButton?(v(),h("button",{key:2,type:"button",class:"code-action-btn inline-flex items-center justify-center p-[var(--ms-action-btn-padding)] rounded leading-none shrink-0 cursor-pointer text-[var(--code-action-fg)] hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] active:scale-[0.96] disabled:opacity-40 disabled:cursor-not-allowed transition-colors","aria-pressed":a.isCollapsed,onClick:o[3]||(o[3]=i=>g("toggleCollapse")),onMouseenter:o[4]||(o[4]=i=>S(i,a.isCollapsed?u(s)("common.expand")||"Expand":u(s)("common.collapse")||"Collapse")),onFocus:o[5]||(o[5]=i=>S(i,a.isCollapsed?u(s)("common.expand")||"Expand":u(s)("common.collapse")||"Collapse")),onMouseleave:F,onBlur:F},[(v(),h("svg",{style:oe({rotate:a.isCollapsed?"0deg":"90deg"}),xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[...o[15]||(o[15]=[t("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"m9 18l6-6l-6-6"},null,-1)])],4))],40,Le)):y("",!0),O.value?(v(),h("div",Re,[t("button",{ref_key:"moreBtnRef",ref:T,type:"button",class:"code-action-btn inline-flex items-center justify-center p-[var(--ms-action-btn-padding)] rounded leading-none shrink-0 cursor-pointer text-[var(--code-action-fg)] hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] active:scale-[0.96] transition-colors","aria-expanded":b.value,"aria-haspopup":"true",onClick:le(w,["stop"]),onMouseenter:o[6]||(o[6]=i=>S(i,u(s)("common.more")||"More")),onFocus:o[7]||(o[7]=i=>S(i,u(s)("common.more")||"More")),onMouseleave:F,onBlur:F},[...o[16]||(o[16]=[ie('',1)])],40,_e),G(de,{name:"code-menu"},{default:A(()=>[b.value?(v(),h("div",{key:0,ref_key:"moreMenuRef",ref:z,class:"code-more-menu min-w-[10rem] p-1 bg-[hsl(var(--ms-popover))] text-[hsl(var(--ms-popover-foreground))] border border-[var(--code-border)] shadow-[var(--ms-shadow-popover)]",role:"menu"},[e.showFontSizeButtons&&e.enableFontSizeControl?(v(),h(I,{key:0},[t("button",{type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] disabled:opacity-40 disabled:cursor-not-allowed transition-colors",disabled:V.value,onClick:o[8]||(o[8]=i=>{u(j)(!0),g("decreaseFont")})},[o[17]||(o[17]=t("svg",{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[t("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 12h14"})],-1)),t("span",null,x(u(s)("common.fontSmaller")||"Font size −"),1)],8,Ae),t("button",{type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] disabled:opacity-40 disabled:cursor-not-allowed transition-colors",disabled:L.value,onClick:o[9]||(o[9]=i=>{u(j)(!0),g("resetFont")})},[o[18]||(o[18]=t("svg",{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[t("g",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},[t("path",{d:"M3 12a9 9 0 1 0 9-9a9.75 9.75 0 0 0-6.74 2.74L3 8"}),t("path",{d:"M3 3v5h5"})])],-1)),t("span",null,x(u(s)("common.fontReset")||"Font size reset"),1)],8,De),t("button",{type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] disabled:opacity-40 disabled:cursor-not-allowed transition-colors",disabled:r.value,onClick:o[10]||(o[10]=i=>{u(j)(!0),g("increaseFont")})},[o[19]||(o[19]=t("svg",{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[t("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 12h14m-7-7v14"})],-1)),t("span",null,x(u(s)("common.fontLarger")||"Font size +"),1)],8,Ve)],64)):y("",!0),e.showExpandButton?(v(),h("button",{key:1,type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] transition-colors",onClick:o[11]||(o[11]=i=>{m(),g("toggleExpand")})},[a.isExpanded?(v(),h("svg",Ue,[...o[20]||(o[20]=[t("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"m14 10l7-7m-1 7h-6V4M3 21l7-7m-6 0h6v6"},null,-1)])])):(v(),h("svg",Ge,[...o[21]||(o[21]=[t("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 3h6v6m0-6l-7 7M3 21l7-7m-1 7H3v-6"},null,-1)])])),t("span",null,x(a.isExpanded?u(s)("common.collapse")||"Collapse":u(s)("common.expand")||"Expand"),1)])):y("",!0),a.isPreviewable&&e.showPreviewButton?(v(),h("button",{key:2,type:"button",role:"menuitem",class:"flex items-center gap-2 w-full py-1.5 px-2 rounded text-xs text-[var(--code-action-fg)] cursor-pointer whitespace-nowrap hover:bg-[var(--code-action-hover-bg)] hover:text-[var(--code-action-hover-fg)] transition-colors",onClick:o[12]||(o[12]=i=>{m(),g("preview")})},[o[22]||(o[22]=t("svg",{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",width:"1em",height:"1em",viewBox:"0 0 24 24",class:"action-icon"},[t("g",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},[t("path",{d:"M2.062 12.348a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 19.876 0a1 1 0 0 1 0 .696a10.75 10.75 0 0 1-19.876 0"}),t("circle",{cx:"12",cy:"12",r:"3"})])],-1)),t("span",null,x(u(s)("common.preview")||"Preview"),1)])):y("",!0)],512)):y("",!0)]),_:1})])):y("",!0)])])])):y("",!0),W(t("div",{class:se(["code-block-shell-content",{"code-block-shell-content--collapsed":a.isCollapsed}])},[H(p.$slots,"default")],2),[[Y,!!a.stream||!a.loading]]),W(t("div",Ie,[H(p.$slots,"loading",{},()=>[o[23]||(o[23]=t("div",{class:"loading-skeleton"},[t("div",{class:"skeleton-line"}),t("div",{class:"skeleton-line"}),t("div",{class:"skeleton-line short"})],-1))])],512),[[Y,!a.stream&&a.loading]]),t("span",We,x(a.copyText?u(s)("common.copied")||"Copied":""),1)],64))}}),Ze={class:"code-header-main"},Xe=["innerHTML"],qe={class:"code-header-copy"},Je={class:"code-header-title"},Qe={key:0,class:"code-header-caption"},Ke=ee(_(N({},{inheritAttrs:!1}),{__name:"PreCodeBlock",props:{codeBlockOptions:{},clipboardWriter:{},darkTheme:{},isDark:{type:Boolean,default:!1},lightTheme:{},resolvedVisualOptions:{},showCopyButton:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},showToolbar:{type:Boolean,default:!0},showTooltips:{type:Boolean,default:!0},theme:{},themes:{},node:{},loading:{type:Boolean},showLineNumbers:{type:Boolean,default:!0},diffInline:{type:Boolean},diffHideUnchangedRegions:{type:[Boolean,Object]},reservedHeightPx:{}},emits:["copy"],setup(a,{emit:d}){const e=a,g=d,b=ve(),z=f(()=>{const n=b,{class:l,style:M}=n;return((c,k)=>{var U={};for(var B in c)ae.call(c,B)&&k.indexOf(B)<0&&(U[B]=c[B]);if(c!=null&&D)for(var B of D(c))k.indexOf(B)<0&&re.call(c,B)&&(U[B]=c[B]);return U})(n,["class","style"])}),T=E(null),w=E(!1);let m;const C=fe(he,void 0),O=f(()=>{var n,l;return(l=e.showLineNumbers)!=null?l:((n=e.codeBlockOptions)==null?void 0:n.disableLineNumbers)!==!0}),s=f(()=>q(e.node)),$=f(()=>{var n;return e.diffInline===!0||s.value&&ke((n=e.codeBlockOptions)!=null?n:{})}),S=f(()=>{var n,l;return te(String((l=(n=e.node)==null?void 0:n.language)!=null?l:""))}),F=f(()=>{const n=S.value;return n?J[n]||n.charAt(0).toUpperCase()+n.slice(1):J[""]||"Plain Text"}),P=f(()=>{var n,l;return ye(String((l=(n=e.node)==null?void 0:n.raw)!=null?l:""),F.value,q(e.node))}),V=f(()=>(xe.value,ze(S.value,C))),L=f(()=>{var n;return(n=e.resolvedVisualOptions)!=null?n:Ce(e.codeBlockOptions)}),r=f(()=>Be({darkTheme:e.darkTheme,isDark:e.isDark,lightTheme:e.lightTheme,theme:e.theme,themes:e.themes})),p=f(()=>_(N({"--markstream-code-fallback-bg":r.value.background,"--markstream-code-fallback-fg":r.value.foreground},r.value.builtin?{"--markstream-code-theme-bg":r.value.background,"--markstream-code-theme-fg":r.value.foreground,"--markstream-code-theme-line-number":r.value.lineNumber}:{}),{"--markstream-diff-added-line-fill":r.value.diffAddedLine,"--markstream-diff-added-number-fill":r.value.diffAddedNumber,"--markstream-diff-editor-bg":r.value.background,"--markstream-diff-removed-line-fill":r.value.diffRemovedLine,"--markstream-diff-removed-number-fill":r.value.diffRemovedNumber,"--markstream-diff-shell-bg":r.value.background,"--markstream-pre-resolved-theme-bg":r.value.background,"--markstream-pre-resolved-theme-fg":r.value.foreground,"--markstream-pre-resolved-theme-line-number":r.value.lineNumber,backgroundColor:r.value.background,color:r.value.foreground})),o=f(()=>["code-pre-fallback",b.class,{"is-wrap":L.value.overflow==="wrap"}]),i=f(()=>{var n;const l=L.value,M=((n=e.codeBlockOptions)==null?void 0:n.padding)==null?"1ch":`${l.padding}px`,c=s.value&&typeof e.reservedHeightPx=="number"&&Number.isFinite(e.reservedHeightPx)&&e.reservedHeightPx>0?`${Math.ceil(e.reservedHeightPx)}px`:void 0;return N(_(N(_(N({"--markstream-code-font-family":l.fontFamily,"--markstream-code-padding-x":M,"--markstream-code-padding-y":`${l.padding}px`,"--markstream-code-padding-bottom":`${l.paddingBottom}px`,"--markstream-code-scrollbar-gutter":`${l.scrollbarGutter}px`,"--markstream-code-tab-size":String(l.tabSize)},s.value?{"--markstream-pre-diff-line-height":`${l.lineHeight}px`}:{}),{"--markstream-pre-line-number-top":`${l.padding}px`,"--markstream-pre-line-number-left":"0px","--markstream-pre-line-number-padding-left":"2ch","--markstream-pre-line-number-padding-right":"1ch","--markstream-pre-line-number-separator-width":"2px"}),r.value.builtin?{"--markstream-code-theme-bg":r.value.background,"--markstream-code-theme-fg":r.value.foreground,"--markstream-code-theme-line-number":r.value.lineNumber}:{}),{"--markstream-diff-added-line-fill":r.value.diffAddedLine,"--markstream-diff-added-number-fill":r.value.diffAddedNumber,"--markstream-diff-metadata-bg":r.value.background,"--markstream-diff-metadata-fg":r.value.lineNumber,"--markstream-diff-removed-line-fill":r.value.diffRemovedLine,"--markstream-diff-removed-number-fill":r.value.diffRemovedNumber,"--markstream-pre-resolved-theme-bg":r.value.background,"--markstream-pre-resolved-theme-fg":r.value.foreground,"--markstream-pre-resolved-theme-line-number":r.value.lineNumber,"--markstream-pre-line-number-gap-to-code":M,"--markstream-diff-fallback-handoff-height":c??"auto",backgroundColor:"var(--markstream-code-fallback-bg, var(--markstream-code-theme-bg, var(--markstream-pre-resolved-theme-bg)))",boxSizing:"border-box",color:"var(--markstream-code-fallback-fg, var(--markstream-code-theme-fg, var(--markstream-pre-resolved-theme-fg)))",fontFamily:l.fontFamily,fontSize:`${l.fontSize}px`,lineHeight:`${l.lineHeight}px`,margin:"0",maxHeight:`${l.maxHeight}px`,overflow:"auto",overflowX:l.overflow==="wrap"?"hidden":"auto",overflowY:"auto",paddingBottom:`${l.paddingBottom}px`,paddingLeft:O.value?"var(--markstream-code-padding-left)":M,paddingRight:M,paddingTop:`${l.padding}px`,scrollbarGutter:s.value?"auto":"stable",tabSize:l.tabSize,whiteSpace:l.overflow==="scroll"?"pre":"pre-wrap",overflowWrap:l.overflow==="wrap"?"anywhere":"normal",wordBreak:"normal",width:"100%"}),c?{height:c,minHeight:c,maxHeight:c}:{})});function R(){return K(this,null,function*(){const n=String((M=(l=e.node)==null?void 0:l.code)!=null?M:"");var l,M;try{yield(function(c){return K(this,null,function*(){if(e.clipboardWriter)return void(yield e.clipboardWriter(c));if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function")return void(yield navigator.clipboard.writeText(c));if(typeof document>"u"||!document.body)throw new Error("Clipboard API is unavailable");const k=document.createElement("textarea");k.value=c,k.setAttribute("readonly",""),k.style.position="fixed",k.style.opacity="0",document.body.appendChild(k),k.select();try{if(!document.execCommand("copy"))throw new Error("Clipboard copy command failed")}finally{k.remove()}})})(n),w.value=!0,g("copy",n),m&&clearTimeout(m),m=setTimeout(()=>{w.value=!1,m=void 0},1e3)}catch(c){w.value=!1,console.error("[markstream-vue] Failed to copy preformatted code.",c)}})}return ge(()=>{m&&clearTimeout(m)}),(n,l)=>e.showToolbar?(v(),h("div",{key:0,style:oe(p.value),class:"code-block-container rounded-lg border"},[G(Ye,{"show-header":e.showHeader,"show-copy-button":e.showCopyButton,"show-collapse-button":!1,"show-font-size-buttons":!1,"show-expand-button":!1,"show-preview-button":!1,"show-tooltips":e.showTooltips,"copy-text":w.value,stream:"",onCopy:R},be({"header-left":A(()=>[H(n.$slots,"header-left",{},()=>[t("div",Ze,[t("span",{class:"icon-slot h-4 w-4 flex-shrink-0",innerHTML:V.value},null,8,Xe),t("div",qe,[t("div",Je,x(P.value.title),1),P.value.caption?(v(),h("div",Qe,x(P.value.caption),1)):y("",!0)])])])]),default:A(()=>[G(Z,X({ref_key:"preNodeRef",ref:T},z.value,{class:o.value,style:[u(b).style,i.value],node:e.node,loading:e.loading,"show-line-numbers":O.value,"diff-inline":$.value,"diff-hide-unchanged-regions":e.diffHideUnchangedRegions,"reserved-height-px":e.reservedHeightPx,"data-markstream-code-theme":r.value.name}),null,16,["class","style","node","loading","show-line-numbers","diff-inline","diff-hide-unchanged-regions","reserved-height-px","data-markstream-code-theme"])]),_:2},[n.$slots["header-right"]?{name:"header-right",fn:A(()=>[H(n.$slots,"header-right")]),key:"0"}:void 0]),1032,["show-header","show-copy-button","show-tooltips","copy-text"])],4)):(v(),we(Z,X({key:1,ref_key:"preNodeRef",ref:T},z.value,{class:o.value,style:[u(b).style,i.value],node:e.node,loading:e.loading,"show-line-numbers":O.value,"diff-inline":$.value,"diff-hide-unchanged-regions":e.diffHideUnchangedRegions,"reserved-height-px":e.reservedHeightPx,"data-markstream-code-theme":r.value.name}),null,16,["class","style","node","loading","show-line-numbers","diff-inline","diff-hide-unchanged-regions","reserved-height-px","data-markstream-code-theme"]))}})),oo=Object.freeze(Object.defineProperty({__proto__:null,default:Ke},Symbol.toStringTag,{value:"Module"}));export{Ke as B,oo as P,ze as Q,Ye as g}; diff --git a/apps/kimi-code/dist-web/assets/Tooltip-Ck3rGjEN.js b/apps/kimi-code/dist-web/assets/Tooltip-Ck3rGjEN.js new file mode 100644 index 0000000000..c5246c97e2 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/Tooltip-Ck3rGjEN.js @@ -0,0 +1 @@ +import{bQ as H,M as J,aU as p,bE as S,az as O,aL as Q,s as F,v as I,I as K,bJ as W,bL as Z,aw as X,H as A,bb as ee,bB as te,g as le,au as ae,T as ne,as as Y,bR as oe}from"./index-Dnz6Zudc.js";var k=(d,x,e)=>new Promise((n,s)=>{var r=i=>{try{c(e.next(i))}catch(v){s(v)}},y=i=>{try{c(e.throw(i))}catch(v){s(v)}},c=i=>i.done?n(i.value):Promise.resolve(i.value).then(r,y);c((e=e.apply(d,x)).next())});const ie=["id"],re=["data-placement"],se=H(J({__name:"Tooltip",props:{visible:{type:Boolean},anchorEl:{},content:{},placement:{},offset:{},originX:{},originY:{},id:{},isDark:{type:[Boolean,null]}},setup(d){var x;const e=d,n=p(null),s=p(null),r=p({transform:"translate3d(0px, 0px, 0px)",left:"0px",top:"0px"}),y=p({}),c=p((x=e.placement)!=null?x:"top"),i=p(!1),v=p(!1);let E=null,M=null,R=null,P=null,w=null,f=0;function N(){return P?Promise.resolve(P):(w||(w=oe(()=>import("./floating-ui.dom-xGUaHE3m.js"),[]).then(a=>(P=a,a)).catch(a=>{throw w=null,a})),w)}function T(){E&&(E(),E=null),M=null,R=null}function D(a){return k(this,null,function*(){const t=e.anchorEl,l=n.value;if(!e.visible||!t||!l||M===t&&R===l)return;const{autoUpdate:o}=yield N();a()&&e.visible&&e.anchorEl===t&&n.value===l&&(T(),M=t,R=l,E=o(t,l,()=>{$().catch(()=>{B()})}))})}function $(){return k(this,null,function*(){var a,t;const l=e.anchorEl,o=n.value;if(!e.visible||!l||!o)return!1;const{arrow:u,computePosition:C,flip:h,offset:m,shift:b}=yield N();if(!e.visible||e.anchorEl!==l||n.value!==o)return!1;const g=[m((a=e.offset)!=null?a:6),h(),b({padding:6}),...s.value?[u({element:s.value,padding:4})]:[]],{x:j,y:q,placement:U,middlewareData:V}=yield C(l,o,{placement:(t=e.placement)!=null?t:"top",middleware:g,strategy:"fixed"});if(!e.visible||e.anchorEl!==l||n.value!==o)return!1;if(r.value.transform=`translate3d(${Math.round(j)}px, ${Math.round(q)}px, 0)`,r.value.left="0px",r.value.top="0px",c.value=U,V.arrow&&s.value){const{x:z,y:L}=V.arrow,G={top:"bottom",bottom:"top",left:"right",right:"left"}[U.split("-")[0]];y.value={left:z!=null?`${z}px`:"",top:L!=null?`${L}px`:"",[G]:"-3px"}}return!0})}function B(){var a,t;const l=e.anchorEl,o=n.value;if(!l||!o)return!1;const u=l.getBoundingClientRect(),C=o.getBoundingClientRect(),h=(a=e.offset)!=null?a:6,m=(t=e.placement)!=null?t:"top";let b=u.left,g=u.top;return m==="bottom"?g=u.bottom+h:m==="left"?b=u.left-C.width-h:m==="right"?b=u.right+h:g=u.top-C.height-h,r.value.transform=`translate3d(${Math.round(Math.max(0,b))}px, ${Math.round(Math.max(0,g))}px, 0)`,r.value.left="0px",r.value.top="0px",c.value=m,y.value={},!0}S(()=>e.visible,a=>k(null,null,function*(){const t=++f;if(a){if(i.value=!1,yield Y(),t!==f||!e.visible)return;if(e.anchorEl&&n.value)try{const l=e.anchorEl,o=n.value,u=l.getBoundingClientRect();if(!(yield $())||t!==f||!e.visible||e.anchorEl!==l||n.value!==o)return;v.value=!1,i.value=!0,yield D(()=>t===f)}catch{if(t!==f||!e.visible)return;if(i.value=B(),e.anchorEl&&n.value)try{yield D(()=>t===f)}catch{}}else i.value=!0}else T()}));let _=0;return S([()=>e.anchorEl,()=>e.placement,()=>e.content],([a],[t])=>k(null,null,function*(){v.value=!!(a&&t&&a!==t&&Math.hypot(a.getBoundingClientRect().left-t.getBoundingClientRect().left,a.getBoundingClientRect().top-t.getBoundingClientRect().top)<=120);const l=++_;if(e.visible&&e.anchorEl&&n.value){if(yield Y(),l!==_||!e.visible||!e.anchorEl||!n.value)return;try{const o=yield $();if(l!==_||!e.visible||!e.anchorEl||!n.value)return;o||B()}catch{B()}yield D(()=>l===_)}})),O(()=>{f+=1,T()}),(a,t)=>(Q(),F(ne,{to:"body"},[I("div",{class:ae(["markstream-vue",{dark:d.isDark}])},[K(le,{name:"tooltip",appear:""},{default:W(()=>[Z(I("div",{id:e.id,ref_key:"tooltip",ref:n,style:X({position:"fixed",transitionProperty:v.value?"opacity, transform":"opacity",left:r.value.left,top:r.value.top,transform:r.value.transform,visibility:i.value?"visible":"hidden",pointerEvents:i.value?void 0:"none"}),class:"tooltip-element",role:"tooltip"},[A(ee(d.content)+" ",1),I("div",{ref_key:"arrowEl",ref:s,class:"tooltip-arrow","data-placement":c.value,style:X(y.value)},null,12,re)],12,ie),[[te,d.visible]])]),_:1})],2)]))}}),[["__scopeId","data-v-c606ee4c"]]);export{se as default}; diff --git a/apps/kimi-code/dist-web/assets/Tooltip-D-EUJqdY.js b/apps/kimi-code/dist-web/assets/Tooltip-D-EUJqdY.js deleted file mode 100644 index 2760c8098d..0000000000 --- a/apps/kimi-code/dist-web/assets/Tooltip-D-EUJqdY.js +++ /dev/null @@ -1 +0,0 @@ -import{bQ as A,M as H,aU as b,bE as V,az as J,aL as O,s as Q,v as R,I as F,bJ as G,bL as K,aw as L,H as W,bb as Z,bB as ee,g as te,au as le,T as ae,as as B,bR as ne}from"./index-HU0LCM-X.js";var k=(h,E,e)=>new Promise((o,p)=>{var i=a=>{try{d(e.next(a))}catch(c){p(c)}},y=a=>{try{d(e.throw(a))}catch(c){p(c)}},d=a=>a.done?o(a.value):Promise.resolve(a.value).then(i,y);d((e=e.apply(h,E)).next())});const oe=["id"],ie=["data-placement"],ue=A(H({__name:"Tooltip",props:{visible:{type:Boolean},anchorEl:{},content:{},placement:{},offset:{},originX:{},originY:{},id:{},isDark:{type:[Boolean,null]}},setup(h){var E;const e=h,o=b(null),p=b(null),i=b({transform:"translate3d(0px, 0px, 0px)",left:"0px",top:"0px"}),y=b({}),d=b((E=e.placement)!=null?E:"top"),a=b(!1);let c=null,$=null,T=null,C=null,w=null,s=0;function X(){return C?Promise.resolve(C):(w||(w=ne(()=>import("./floating-ui.dom-xGUaHE3m.js"),[]).then(l=>(C=l,l)).catch(l=>{throw w=null,l})),w)}function D(){c&&(c(),c=null),$=null,T=null}function P(l){return k(this,null,function*(){const t=e.anchorEl,n=o.value;if(!e.visible||!t||!n||$===t&&T===n)return;const{autoUpdate:r}=yield X();l()&&e.visible&&e.anchorEl===t&&o.value===n&&(D(),$=t,T=n,c=r(t,n,()=>{N().catch(()=>{_()})}))})}function N(){return k(this,null,function*(){var l,t;const n=e.anchorEl,r=o.value;if(!e.visible||!n||!r)return!1;const{arrow:u,computePosition:m,flip:v,offset:f,shift:x}=yield X();if(!e.visible||e.anchorEl!==n||o.value!==r)return!1;const g=[f((l=e.offset)!=null?l:6),v(),x({padding:6}),...p.value?[u({element:p.value,padding:4})]:[]],{x:S,y:j,placement:Y,middlewareData:z}=yield m(n,r,{placement:(t=e.placement)!=null?t:"top",middleware:g,strategy:"fixed"});if(!e.visible||e.anchorEl!==n||o.value!==r)return!1;if(i.value.transform=`translate3d(${Math.round(S)}px, ${Math.round(j)}px, 0)`,i.value.left="0px",i.value.top="0px",d.value=Y,z.arrow&&p.value){const{x:I,y:U}=z.arrow,q={top:"bottom",bottom:"top",left:"right",right:"left"}[Y.split("-")[0]];y.value={left:I!=null?`${I}px`:"",top:U!=null?`${U}px`:"",[q]:"-3px"}}return!0})}function _(){var l,t;const n=e.anchorEl,r=o.value;if(!n||!r)return!1;const u=n.getBoundingClientRect(),m=r.getBoundingClientRect(),v=(l=e.offset)!=null?l:6,f=(t=e.placement)!=null?t:"top";let x=u.left,g=u.top;return f==="bottom"?g=u.bottom+v:f==="left"?x=u.left-m.width-v:f==="right"?x=u.right+v:g=u.top-m.height-v,i.value.transform=`translate3d(${Math.round(Math.max(0,x))}px, ${Math.round(Math.max(0,g))}px, 0)`,i.value.left="0px",i.value.top="0px",d.value=f,y.value={},!0}V(()=>e.visible,l=>k(null,null,function*(){const t=++s;if(l){if(a.value=!1,yield B(),t!==s||!e.visible)return;if(e.anchorEl&&o.value)try{const n=e.anchorEl,r=o.value,u=n.getBoundingClientRect();if(!(yield N())||t!==s||!e.visible||e.anchorEl!==n||o.value!==r)return;const m=i.value.transform;if(e.originX!=null&&e.originY!=null){const v=Math.abs(Number(e.originX)-u.left),f=Math.abs(Number(e.originY)-u.top);if(Math.hypot(v,f)>120){if(i.value.transform=`translate3d(${Math.round(e.originX)}px, ${Math.round(e.originY)}px, 0)`,yield B(),t!==s||!e.visible||(a.value=!0,yield B(),t!==s||!e.visible))return;i.value.transform=m}else a.value=!0}else a.value=!0;yield P(()=>t===s)}catch{if(t!==s||!e.visible)return;if(a.value=_(),e.anchorEl&&o.value)try{yield P(()=>t===s)}catch{}}else a.value=!0}else a.value=!1,D()}));let M=0;return V([()=>e.anchorEl,()=>e.placement,()=>e.content],()=>k(null,null,function*(){const l=++M;if(e.visible&&e.anchorEl&&o.value){if(yield B(),l!==M||!e.visible||!e.anchorEl||!o.value)return;try{const t=yield N();if(l!==M||!e.visible||!e.anchorEl||!o.value)return;t||_()}catch{_()}yield P(()=>l===M)}})),J(()=>{s+=1,D()}),(l,t)=>(O(),Q(ae,{to:"body"},[R("div",{class:le(["markstream-vue",{dark:h.isDark}])},[F(te,{name:"tooltip",appear:""},{default:G(()=>[K(R("div",{id:e.id,ref_key:"tooltip",ref:o,style:L({position:"fixed",left:i.value.left,top:i.value.top,transform:i.value.transform,visibility:a.value?"visible":"hidden",pointerEvents:a.value?void 0:"none"}),class:"tooltip-element",role:"tooltip"},[W(Z(h.content)+" ",1),R("div",{ref_key:"arrowEl",ref:p,class:"tooltip-arrow","data-placement":d.value,style:L(y.value)},null,12,ie)],12,oe),[[ee,h.visible]])]),_:1})],2)]))}}),[["__scopeId","data-v-c606ee4c"]]);export{ue as default}; diff --git a/apps/kimi-code/dist-web/assets/_commonjsHelpers-CqkleIqs.js b/apps/kimi-code/dist-web/assets/_commonjsHelpers-CqkleIqs.js deleted file mode 100644 index dbbfc19b90..0000000000 --- a/apps/kimi-code/dist-web/assets/_commonjsHelpers-CqkleIqs.js +++ /dev/null @@ -1 +0,0 @@ -function e(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}export{e as g}; diff --git a/apps/kimi-code/dist-web/assets/abnfDiagram-VRR7QNED-D8ez8uim.js b/apps/kimi-code/dist-web/assets/abnfDiagram-VRR7QNED-D8ez8uim.js new file mode 100644 index 0000000000..91aecf9294 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/abnfDiagram-VRR7QNED-D8ez8uim.js @@ -0,0 +1 @@ +import{g as p,r as u,d as a}from"./chunk-MOJQB5TN-nz6Iv7r_.js";import{p as f}from"./chunk-JWPE2WC7-CFaSk12U.js";import{_ as n,l as o}from"./mermaid.core-AN7v7N47.js";import{M as c,b as d}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import"./index-Dnz6Zudc.js";var v=d().RailroadAbnf.parser.LangiumParser,i=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},B={parser:R,db:a,renderer:u,styles:p};export{B as diagram}; diff --git a/apps/kimi-code/dist-web/assets/abnfDiagram-VRR7QNED-tXWm0yJO.js b/apps/kimi-code/dist-web/assets/abnfDiagram-VRR7QNED-tXWm0yJO.js deleted file mode 100644 index 919dd329c6..0000000000 --- a/apps/kimi-code/dist-web/assets/abnfDiagram-VRR7QNED-tXWm0yJO.js +++ /dev/null @@ -1 +0,0 @@ -import{g as p,r as u,d as a}from"./chunk-MOJQB5TN-DOlN8qtA.js";import{p as f}from"./chunk-JWPE2WC7-0N6Q_J0q.js";import{_ as n,l as o}from"./mermaid.core-Dxfcv_J5.js";import{M as c,b as d}from"./cynefin-VYW2F7L2-DQGCJnlE.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var v=d().RailroadAbnf.parser.LangiumParser,i=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},F={parser:R,db:a,renderer:u,styles:p};export{F as diagram}; diff --git a/apps/kimi-code/dist-web/assets/arc-CRRKlX-p.js b/apps/kimi-code/dist-web/assets/arc-CRRKlX-p.js new file mode 100644 index 0000000000..5ec511ca67 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/arc-CRRKlX-p.js @@ -0,0 +1 @@ +import{G as ln,H as un,I as N,J as I,K as J,L as an,M as y,N as tn,O as j,P as _,Q as rn,R as o,S as on,T as sn,V as fn}from"./mermaid.core-AN7v7N47.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,q,O,v,R,K,u){var D=q-l,i=O-h,n=K-v,d=u-R,a=d*D-n*i;if(!(a*ar*r+M*M&&(G=w,H=p),{cx:G,cy:H,x01:-n,y01:-d,x11:G*(v/T-1),y11:H*(v/T-1)}}function hn(){var l=cn,h=yn,q=J(0),O=null,v=gn,R=dn,K=mn,u=null,D=ln(i);function i(){var n,d,a=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-an,c=R.apply(this,arguments)-an,L=rn(c-f),t=c>f;if(u||(u=n=D()),sy))u.moveTo(0,0);else if(L>tn-y)u.moveTo(s*N(f),s*I(f)),u.arc(0,0,s,f,c,!t),a>y&&(u.moveTo(a*N(c),a*I(c)),u.arc(0,0,a,c,f,t));else{var m=f,g=c,A=f,T=c,P=L,E=L,G=K.apply(this,arguments)/2,H=G>y&&(O?+O.apply(this,arguments):j(a*a+s*s)),w=_(rn(s-a)/2,+q.apply(this,arguments)),p=w,x=w,e,r;if(H>y){var M=sn(H/a*I(G)),z=sn(H/s*I(G));(P-=M*2)>y?(M*=t?1:-1,A+=M,T-=M):(P=0,A=T=(f+c)/2),(E-=z*2)>y?(z*=t?1:-1,m+=z,g-=z):(E=0,m=g=(f+c)/2)}var Q=s*N(m),V=s*I(m),B=a*N(T),C=a*I(T);if(w>y){var F=s*N(g),U=s*I(g),X=a*N(A),Y=a*I(A),S;if(Ly?x>y?(e=W(X,Y,Q,V,s,x,t),r=W(F,U,B,C,s,x,t),u.moveTo(e.cx+e.x01,e.cy+e.y01),xy)||!(P>y)?u.lineTo(B,C):p>y?(e=W(B,C,F,U,a,-p,t),r=W(Q,V,X,Y,a,-p,t),u.lineTo(e.cx+e.x01,e.cy+e.y01),pr*r+$*$&&(Q=w,V=p),{cx:Q,cy:V,x01:-n,y01:-d,x11:Q*(v/T-1),y11:V*(v/T-1)}}function hn(){var l=cn,h=yn,E=W(0),q=null,v=gn,R=dn,X=mn,a=null,I=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=R.apply(this,arguments)-un,Y=rn(c-f),t=c>f;if(a||(a=n=I()),sy))a.moveTo(0,0);else if(Y>tn-y)a.moveTo(s*j(f),s*S(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*j(c),u*S(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,A=f,T=c,P=Y,O=Y,Q=X.apply(this,arguments)/2,V=Q>y&&(q?+q.apply(this,arguments):C(u*u+s*s)),w=_(rn(s-u)/2,+E.apply(this,arguments)),p=w,x=w,e,r;if(V>y){var $=sn(V/u*S(Q)),F=sn(V/s*S(Q));(P-=$*2)>y?($*=t?1:-1,A+=$,T-=$):(P=0,A=T=(f+c)/2),(O-=F*2)>y?(F*=t?1:-1,m+=F,g-=F):(O=0,m=g=(f+c)/2)}var z=s*j(m),B=s*S(m),G=u*j(T),H=u*S(T);if(w>y){var J=s*j(g),K=s*S(g),M=u*j(A),N=u*S(A),D;if(Yy?x>y?(e=L(M,N,z,B,s,x,t),r=L(J,K,G,H,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),xy)||!(P>y)?a.lineTo(G,H):p>y?(e=L(G,H,J,K,u,-p,t),r=L(z,B,M,N,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),ps?(this.rect.x-=(this.labelWidth-s)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(s+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(o+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>o?(this.rect.y-=(this.labelHeight-o)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(o+this.labelHeight))}}},e.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==h.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},e.prototype.transform=function(t){var s=this.rect.x;s>r.WORLD_BOUNDARY?s=r.WORLD_BOUNDARY:s<-r.WORLD_BOUNDARY&&(s=-r.WORLD_BOUNDARY);var o=this.rect.y;o>r.WORLD_BOUNDARY?o=r.WORLD_BOUNDARY:o<-r.WORLD_BOUNDARY&&(o=-r.WORLD_BOUNDARY);var c=new f(s,o),l=t.inverseTransformPoint(c);this.setLocation(l.x,l.y)},e.prototype.getLeft=function(){return this.rect.x},e.prototype.getRight=function(){return this.rect.x+this.rect.width},e.prototype.getTop=function(){return this.rect.y},e.prototype.getBottom=function(){return this.rect.y+this.rect.height},e.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},A.exports=e}),(function(A,G,N){var v=N(0);function h(){}for(var i in v)h[i]=v[i];h.MAX_ITERATIONS=2500,h.DEFAULT_EDGE_LENGTH=50,h.DEFAULT_SPRING_STRENGTH=.45,h.DEFAULT_REPULSION_STRENGTH=4500,h.DEFAULT_GRAVITY_STRENGTH=.4,h.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,h.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,h.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,h.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,h.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,h.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,h.COOLING_ADAPTATION_FACTOR=.33,h.ADAPTATION_LOWER_NODE_LIMIT=1e3,h.ADAPTATION_UPPER_NODE_LIMIT=5e3,h.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,h.MAX_NODE_DISPLACEMENT=h.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,h.MIN_REPULSION_DIST=h.DEFAULT_EDGE_LENGTH/10,h.CONVERGENCE_CHECK_PERIOD=100,h.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,h.MIN_EDGE_LENGTH=1,h.GRID_CALCULATION_CHECK_PERIOD=10,A.exports=h}),(function(A,G,N){function v(h,i){h==null&&i==null?(this.x=0,this.y=0):(this.x=h,this.y=i)}v.prototype.getX=function(){return this.x},v.prototype.getY=function(){return this.y},v.prototype.setX=function(h){this.x=h},v.prototype.setY=function(h){this.y=h},v.prototype.getDifference=function(h){return new DimensionD(this.x-h.x,this.y-h.y)},v.prototype.getCopy=function(){return new v(this.x,this.y)},v.prototype.translate=function(h){return this.x+=h.width,this.y+=h.height,this},A.exports=v}),(function(A,G,N){var v=N(2),h=N(10),i=N(0),r=N(7),a=N(3),f=N(1),e=N(13),u=N(12),t=N(11);function s(c,l,T){v.call(this,T),this.estimatedSize=h.MIN_VALUE,this.margin=i.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=c,l!=null&&l instanceof r?this.graphManager=l:l!=null&&l instanceof Layout&&(this.graphManager=l.graphManager)}s.prototype=Object.create(v.prototype);for(var o in v)s[o]=v[o];s.prototype.getNodes=function(){return this.nodes},s.prototype.getEdges=function(){return this.edges},s.prototype.getGraphManager=function(){return this.graphManager},s.prototype.getParent=function(){return this.parent},s.prototype.getLeft=function(){return this.left},s.prototype.getRight=function(){return this.right},s.prototype.getTop=function(){return this.top},s.prototype.getBottom=function(){return this.bottom},s.prototype.isConnected=function(){return this.isConnected},s.prototype.add=function(c,l,T){if(l==null&&T==null){var g=c;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(g)>-1)throw"Node already in graph!";return g.owner=this,this.getNodes().push(g),g}else{var d=c;if(!(this.getNodes().indexOf(l)>-1&&this.getNodes().indexOf(T)>-1))throw"Source or target not in graph!";if(!(l.owner==T.owner&&l.owner==this))throw"Both owners must be this graph!";return l.owner!=T.owner?null:(d.source=l,d.target=T,d.isInterGraph=!1,this.getEdges().push(d),l.edges.push(d),T!=l&&T.edges.push(d),d)}},s.prototype.remove=function(c){var l=c;if(c instanceof a){if(l==null)throw"Node is null!";if(!(l.owner!=null&&l.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var T=l.edges.slice(),g,d=T.length,C=0;C-1&&P>-1))throw"Source and/or target doesn't know this edge!";g.source.edges.splice(w,1),g.target!=g.source&&g.target.edges.splice(P,1);var S=g.source.owner.getEdges().indexOf(g);if(S==-1)throw"Not in owner's edge list!";g.source.owner.getEdges().splice(S,1)}},s.prototype.updateLeftTop=function(){for(var c=h.MAX_VALUE,l=h.MAX_VALUE,T,g,d,C=this.getNodes(),S=C.length,w=0;wT&&(c=T),l>g&&(l=g)}return c==h.MAX_VALUE?null:(C[0].getParent().paddingLeft!=null?d=C[0].getParent().paddingLeft:d=this.margin,this.left=l-d,this.top=c-d,new u(this.left,this.top))},s.prototype.updateBounds=function(c){for(var l=h.MAX_VALUE,T=-h.MAX_VALUE,g=h.MAX_VALUE,d=-h.MAX_VALUE,C,S,w,P,B,U=this.nodes,V=U.length,M=0;MC&&(l=C),Tw&&(g=w),dC&&(l=C),Tw&&(g=w),d=this.nodes.length){var V=0;T.forEach(function(M){M.owner==c&&V++}),V==this.nodes.length&&(this.isConnected=!0)}},A.exports=s}),(function(A,G,N){var v,h=N(1);function i(r){v=N(6),this.layout=r,this.graphs=[],this.edges=[]}i.prototype.addRoot=function(){var r=this.layout.newGraph(),a=this.layout.newNode(null),f=this.add(r,a);return this.setRootGraph(f),this.rootGraph},i.prototype.add=function(r,a,f,e,u){if(f==null&&e==null&&u==null){if(r==null)throw"Graph is null!";if(a==null)throw"Parent node is null!";if(this.graphs.indexOf(r)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(r),r.parent!=null)throw"Already has a parent!";if(a.child!=null)throw"Already has a child!";return r.parent=a,a.child=r,r}else{u=f,e=a,f=r;var t=e.getOwner(),s=u.getOwner();if(!(t!=null&&t.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(s!=null&&s.getGraphManager()==this))throw"Target not in this graph mgr!";if(t==s)return f.isInterGraph=!1,t.add(f,e,u);if(f.isInterGraph=!0,f.source=e,f.target=u,this.edges.indexOf(f)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(f),!(f.source!=null&&f.target!=null))throw"Edge source and/or target is null!";if(!(f.source.edges.indexOf(f)==-1&&f.target.edges.indexOf(f)==-1))throw"Edge already in source and/or target incidency list!";return f.source.edges.push(f),f.target.edges.push(f),f}},i.prototype.remove=function(r){if(r instanceof v){var a=r;if(a.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(a==this.rootGraph||a.parent!=null&&a.parent.graphManager==this))throw"Invalid parent node!";var f=[];f=f.concat(a.getEdges());for(var e,u=f.length,t=0;t=r.getRight()?a[0]+=Math.min(r.getX()-i.getX(),i.getRight()-r.getRight()):r.getX()<=i.getX()&&r.getRight()>=i.getRight()&&(a[0]+=Math.min(i.getX()-r.getX(),r.getRight()-i.getRight())),i.getY()<=r.getY()&&i.getBottom()>=r.getBottom()?a[1]+=Math.min(r.getY()-i.getY(),i.getBottom()-r.getBottom()):r.getY()<=i.getY()&&r.getBottom()>=i.getBottom()&&(a[1]+=Math.min(i.getY()-r.getY(),r.getBottom()-i.getBottom()));var u=Math.abs((r.getCenterY()-i.getCenterY())/(r.getCenterX()-i.getCenterX()));r.getCenterY()===i.getCenterY()&&r.getCenterX()===i.getCenterX()&&(u=1);var t=u*a[0],s=a[1]/u;a[0]t)return a[0]=f,a[1]=o,a[2]=u,a[3]=U,!1;if(eu)return a[0]=s,a[1]=e,a[2]=P,a[3]=t,!1;if(fu?(a[0]=l,a[1]=T,n=!0):(a[0]=c,a[1]=o,n=!0):p===y&&(f>u?(a[0]=s,a[1]=o,n=!0):(a[0]=g,a[1]=T,n=!0)),-m===y?u>f?(a[2]=B,a[3]=U,E=!0):(a[2]=P,a[3]=w,E=!0):m===y&&(u>f?(a[2]=S,a[3]=w,E=!0):(a[2]=V,a[3]=U,E=!0)),n&&E)return!1;if(f>u?e>t?(I=this.getCardinalDirection(p,y,4),O=this.getCardinalDirection(m,y,2)):(I=this.getCardinalDirection(-p,y,3),O=this.getCardinalDirection(-m,y,1)):e>t?(I=this.getCardinalDirection(-p,y,1),O=this.getCardinalDirection(-m,y,3)):(I=this.getCardinalDirection(p,y,2),O=this.getCardinalDirection(m,y,4)),!n)switch(I){case 1:W=o,R=f+-C/y,a[0]=R,a[1]=W;break;case 2:R=g,W=e+d*y,a[0]=R,a[1]=W;break;case 3:W=T,R=f+C/y,a[0]=R,a[1]=W;break;case 4:R=l,W=e+-d*y,a[0]=R,a[1]=W;break}if(!E)switch(O){case 1:Q=w,x=u+-_/y,a[2]=x,a[3]=Q;break;case 2:x=V,Q=t+M*y,a[2]=x,a[3]=Q;break;case 3:Q=U,x=u+_/y,a[2]=x,a[3]=Q;break;case 4:x=B,Q=t+-M*y,a[2]=x,a[3]=Q;break}}return!1},h.getCardinalDirection=function(i,r,a){return i>r?a:1+a%4},h.getIntersection=function(i,r,a,f){if(f==null)return this.getIntersection2(i,r,a);var e=i.x,u=i.y,t=r.x,s=r.y,o=a.x,c=a.y,l=f.x,T=f.y,g=void 0,d=void 0,C=void 0,S=void 0,w=void 0,P=void 0,B=void 0,U=void 0,V=void 0;return C=s-u,w=e-t,B=t*u-e*s,S=T-c,P=o-l,U=l*c-o*T,V=C*P-S*w,V===0?null:(g=(w*U-P*B)/V,d=(S*B-C*U)/V,new v(g,d))},h.angleOfVector=function(i,r,a,f){var e=void 0;return i!==a?(e=Math.atan((f-r)/(a-i)),a=0){var T=(-o+Math.sqrt(o*o-4*s*c))/(2*s),g=(-o-Math.sqrt(o*o-4*s*c))/(2*s),d=null;return T>=0&&T<=1?[T]:g>=0&&g<=1?[g]:d}else return null},h.HALF_PI=.5*Math.PI,h.ONE_AND_HALF_PI=1.5*Math.PI,h.TWO_PI=2*Math.PI,h.THREE_PI=3*Math.PI,A.exports=h}),(function(A,G,N){function v(){}v.sign=function(h){return h>0?1:h<0?-1:0},v.floor=function(h){return h<0?Math.ceil(h):Math.floor(h)},v.ceil=function(h){return h<0?Math.floor(h):Math.ceil(h)},A.exports=v}),(function(A,G,N){function v(){}v.MAX_VALUE=2147483647,v.MIN_VALUE=-2147483648,A.exports=v}),(function(A,G,N){var v=(function(){function e(u,t){for(var s=0;s"u"?"undefined":v(i);return i==null||r!="object"&&r!="function"},A.exports=h}),(function(A,G,N){function v(o){if(Array.isArray(o)){for(var c=0,l=Array(o.length);c0&&c;){for(C.push(w[0]);C.length>0&&c;){var P=C[0];C.splice(0,1),d.add(P);for(var B=P.getEdges(),g=0;g-1&&w.splice(_,1)}d=new Set,S=new Map}}return o},s.prototype.createDummyNodesForBendpoints=function(o){for(var c=[],l=o.source,T=this.graphManager.calcLowestCommonAncestor(o.source,o.target),g=0;g0){for(var T=this.edgeToDummyNodes.get(l),g=0;g=0&&c.splice(U,1);var V=S.getNeighborsList();V.forEach(function(n){if(l.indexOf(n)<0){var E=T.get(n),p=E-1;p==1&&P.push(n),T.set(n,p)}})}l=l.concat(P),(c.length==1||c.length==2)&&(g=!0,d=c[0])}return d},s.prototype.setGraphManager=function(o){this.graphManager=o},A.exports=s}),(function(A,G,N){function v(){}v.seed=1,v.x=0,v.nextDouble=function(){return v.x=Math.sin(v.seed++)*1e4,v.x-Math.floor(v.x)},A.exports=v}),(function(A,G,N){var v=N(5);function h(i,r){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}h.prototype.getWorldOrgX=function(){return this.lworldOrgX},h.prototype.setWorldOrgX=function(i){this.lworldOrgX=i},h.prototype.getWorldOrgY=function(){return this.lworldOrgY},h.prototype.setWorldOrgY=function(i){this.lworldOrgY=i},h.prototype.getWorldExtX=function(){return this.lworldExtX},h.prototype.setWorldExtX=function(i){this.lworldExtX=i},h.prototype.getWorldExtY=function(){return this.lworldExtY},h.prototype.setWorldExtY=function(i){this.lworldExtY=i},h.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},h.prototype.setDeviceOrgX=function(i){this.ldeviceOrgX=i},h.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},h.prototype.setDeviceOrgY=function(i){this.ldeviceOrgY=i},h.prototype.getDeviceExtX=function(){return this.ldeviceExtX},h.prototype.setDeviceExtX=function(i){this.ldeviceExtX=i},h.prototype.getDeviceExtY=function(){return this.ldeviceExtY},h.prototype.setDeviceExtY=function(i){this.ldeviceExtY=i},h.prototype.transformX=function(i){var r=0,a=this.lworldExtX;return a!=0&&(r=this.ldeviceOrgX+(i-this.lworldOrgX)*this.ldeviceExtX/a),r},h.prototype.transformY=function(i){var r=0,a=this.lworldExtY;return a!=0&&(r=this.ldeviceOrgY+(i-this.lworldOrgY)*this.ldeviceExtY/a),r},h.prototype.inverseTransformX=function(i){var r=0,a=this.ldeviceExtX;return a!=0&&(r=this.lworldOrgX+(i-this.ldeviceOrgX)*this.lworldExtX/a),r},h.prototype.inverseTransformY=function(i){var r=0,a=this.ldeviceExtY;return a!=0&&(r=this.lworldOrgY+(i-this.ldeviceOrgY)*this.lworldExtY/a),r},h.prototype.inverseTransformPoint=function(i){var r=new v(this.inverseTransformX(i.x),this.inverseTransformY(i.y));return r},A.exports=h}),(function(A,G,N){function v(t){if(Array.isArray(t)){for(var s=0,o=Array(t.length);si.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*i.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(t-i.ADAPTATION_LOWER_NODE_LIMIT)/(i.ADAPTATION_UPPER_NODE_LIMIT-i.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-i.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=i.MAX_NODE_DISPLACEMENT_INCREMENTAL):(t>i.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(i.COOLING_ADAPTATION_FACTOR,1-(t-i.ADAPTATION_LOWER_NODE_LIMIT)/(i.ADAPTATION_UPPER_NODE_LIMIT-i.ADAPTATION_LOWER_NODE_LIMIT)*(1-i.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=i.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*i.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},e.prototype.calcSpringForces=function(){for(var t=this.getAllEdges(),s,o=0;o0&&arguments[0]!==void 0?arguments[0]:!0,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,o,c,l,T,g=this.getAllNodes(),d;if(this.useFRGridVariant)for(this.totalIterations%i.GRID_CALCULATION_CHECK_PERIOD==1&&t&&this.updateGrid(),d=new Set,o=0;oC||d>C)&&(t.gravitationForceX=-this.gravityConstant*l,t.gravitationForceY=-this.gravityConstant*T)):(C=s.getEstimatedSize()*this.compoundGravityRangeFactor,(g>C||d>C)&&(t.gravitationForceX=-this.gravityConstant*l*this.compoundGravityConstant,t.gravitationForceY=-this.gravityConstant*T*this.compoundGravityConstant))},e.prototype.isConverged=function(){var t,s=!1;return this.totalIterations>this.maxIterations/3&&(s=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),t=this.totalDisplacement=g.length||C>=g[0].length)){for(var S=0;Se}}]),a})();A.exports=r}),(function(A,G,N){function v(){}v.svd=function(h){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=h.length,this.n=h[0].length;var i=Math.min(this.m,this.n);this.s=(function(Tt){for(var Ct=[];Tt-- >0;)Ct.push(0);return Ct})(Math.min(this.m+1,this.n)),this.U=(function(Tt){var Ct=function Bt(bt){if(bt.length==0)return 0;for(var zt=[],St=0;St0;)Ct.push(0);return Ct})(this.n),a=(function(Tt){for(var Ct=[];Tt-- >0;)Ct.push(0);return Ct})(this.m),f=!0,e=Math.min(this.m-1,this.n),u=Math.max(0,Math.min(this.n-2,this.m)),t=0;t=0;m--)if(this.s[m]!==0){for(var y=m+1;y=0;z--){if((function(Tt,Ct){return Tt&&Ct})(z0;){var J=void 0,It=void 0;for(J=n-2;J>=-1&&J!==-1;J--)if(Math.abs(r[J])<=ht+tt*(Math.abs(this.s[J])+Math.abs(this.s[J+1]))){r[J]=0;break}if(J===n-2)It=4;else{var Nt=void 0;for(Nt=n-1;Nt>=J&&Nt!==J;Nt--){var vt=(Nt!==n?Math.abs(r[Nt]):0)+(Nt!==J+1?Math.abs(r[Nt-1]):0);if(Math.abs(this.s[Nt])<=ht+tt*vt){this.s[Nt]=0;break}}Nt===J?It=3:Nt===n-1?It=1:(It=2,J=Nt)}switch(J++,It){case 1:{var it=r[n-2];r[n-2]=0;for(var ut=n-2;ut>=J;ut--){var Et=v.hypot(this.s[ut],it),wt=this.s[ut]/Et,Ot=it/Et;this.s[ut]=Et,ut!==J&&(it=-Ot*r[ut-1],r[ut-1]=wt*r[ut-1]);for(var mt=0;mt=this.s[J+1]);){var Lt=this.s[J];if(this.s[J]=this.s[J+1],this.s[J+1]=Lt,JMath.abs(i)?(r=i/h,r=Math.abs(h)*Math.sqrt(1+r*r)):i!=0?(r=h/i,r=Math.abs(i)*Math.sqrt(1+r*r)):r=0,r},A.exports=v}),(function(A,G,N){var v=(function(){function r(a,f){for(var e=0;e2&&arguments[2]!==void 0?arguments[2]:1,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,t=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;h(this,r),this.sequence1=a,this.sequence2=f,this.match_score=e,this.mismatch_penalty=u,this.gap_penalty=t,this.iMax=a.length+1,this.jMax=f.length+1,this.grid=new Array(this.iMax);for(var s=0;s=0;a--){var f=this.listeners[a];f.event===i&&f.callback===r&&this.listeners.splice(a,1)}},h.emit=function(i,r){for(var a=0;a{var G={45:((i,r,a)=>{var f={};f.layoutBase=a(551),f.CoSEConstants=a(806),f.CoSEEdge=a(767),f.CoSEGraph=a(880),f.CoSEGraphManager=a(578),f.CoSELayout=a(765),f.CoSENode=a(991),f.ConstraintHandler=a(902),i.exports=f}),806:((i,r,a)=>{var f=a(551).FDLayoutConstants;function e(){}for(var u in f)e[u]=f[u];e.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,e.DEFAULT_RADIAL_SEPARATION=f.DEFAULT_EDGE_LENGTH,e.DEFAULT_COMPONENT_SEPERATION=60,e.TILE=!0,e.TILING_PADDING_VERTICAL=10,e.TILING_PADDING_HORIZONTAL=10,e.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,e.ENFORCE_CONSTRAINTS=!0,e.APPLY_LAYOUT=!0,e.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,e.TREE_REDUCTION_ON_INCREMENTAL=!0,e.PURE_INCREMENTAL=e.DEFAULT_INCREMENTAL,i.exports=e}),767:((i,r,a)=>{var f=a(551).FDLayoutEdge;function e(t,s,o){f.call(this,t,s,o)}e.prototype=Object.create(f.prototype);for(var u in f)e[u]=f[u];i.exports=e}),880:((i,r,a)=>{var f=a(551).LGraph;function e(t,s,o){f.call(this,t,s,o)}e.prototype=Object.create(f.prototype);for(var u in f)e[u]=f[u];i.exports=e}),578:((i,r,a)=>{var f=a(551).LGraphManager;function e(t){f.call(this,t)}e.prototype=Object.create(f.prototype);for(var u in f)e[u]=f[u];i.exports=e}),765:((i,r,a)=>{var f=a(551).FDLayout,e=a(578),u=a(880),t=a(991),s=a(767),o=a(806),c=a(902),l=a(551).FDLayoutConstants,T=a(551).LayoutConstants,g=a(551).Point,d=a(551).PointD,C=a(551).DimensionD,S=a(551).Layout,w=a(551).Integer,P=a(551).IGeometry,B=a(551).LGraph,U=a(551).Transform,V=a(551).LinkedList;function M(){f.call(this),this.toBeTiled={},this.constraints={}}M.prototype=Object.create(f.prototype);for(var _ in f)M[_]=f[_];M.prototype.newGraphManager=function(){var n=new e(this);return this.graphManager=n,n},M.prototype.newGraph=function(n){return new u(null,this.graphManager,n)},M.prototype.newNode=function(n){return new t(this.graphManager,n)},M.prototype.newEdge=function(n){return new s(null,null,n)},M.prototype.initParameters=function(){f.prototype.initParameters.call(this,arguments),this.isSubLayout||(o.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=o.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=o.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=l.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=l.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=l.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},M.prototype.initSpringEmbedder=function(){f.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/l.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},M.prototype.layout=function(){var n=T.DEFAULT_CREATE_BENDS_AS_NEEDED;return n&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},M.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(o.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),p=this.nodesWithGravity.filter(function(I){return E.has(I)});this.graphManager.setAllNodesToApplyGravitation(p)}}else{var n=this.getFlatForest();if(n.length>0)this.positionNodesRadially(n);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),p=this.nodesWithGravity.filter(function(m){return E.has(m)});this.graphManager.setAllNodesToApplyGravitation(p),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(c.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),o.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},M.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%l.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var n=new Set(this.getAllNodes()),E=this.nodesWithGravity.filter(function(y){return n.has(y)});this.graphManager.setAllNodesToApplyGravitation(E),this.graphManager.updateBounds(),this.updateGrid(),o.PURE_INCREMENTAL?this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),o.PURE_INCREMENTAL?this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var p=!this.isTreeGrowing&&!this.isGrowthFinished,m=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(p,m),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},M.prototype.getPositionsData=function(){for(var n=this.graphManager.getAllNodes(),E={},p=0;p0&&this.updateDisplacements();for(var p=0;p0&&(m.fixedNodeWeight=I)}}if(this.constraints.relativePlacementConstraint){var O=new Map,R=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(D){n.fixedNodesOnHorizontal.add(D),n.fixedNodesOnVertical.add(D)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var W=this.constraints.alignmentConstraint.vertical,p=0;p=2*D.length/3;tt--)H=Math.floor(Math.random()*(tt+1)),k=D[tt],D[tt]=D[H],D[H]=k;return D},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(D){if(D.left){var H=O.has(D.left)?O.get(D.left):D.left,k=O.has(D.right)?O.get(D.right):D.right;n.nodesInRelativeHorizontal.includes(H)||(n.nodesInRelativeHorizontal.push(H),n.nodeToRelativeConstraintMapHorizontal.set(H,[]),n.dummyToNodeForVerticalAlignment.has(H)?n.nodeToTempPositionMapHorizontal.set(H,n.idToNodeMap.get(n.dummyToNodeForVerticalAlignment.get(H)[0]).getCenterX()):n.nodeToTempPositionMapHorizontal.set(H,n.idToNodeMap.get(H).getCenterX())),n.nodesInRelativeHorizontal.includes(k)||(n.nodesInRelativeHorizontal.push(k),n.nodeToRelativeConstraintMapHorizontal.set(k,[]),n.dummyToNodeForVerticalAlignment.has(k)?n.nodeToTempPositionMapHorizontal.set(k,n.idToNodeMap.get(n.dummyToNodeForVerticalAlignment.get(k)[0]).getCenterX()):n.nodeToTempPositionMapHorizontal.set(k,n.idToNodeMap.get(k).getCenterX())),n.nodeToRelativeConstraintMapHorizontal.get(H).push({right:k,gap:D.gap}),n.nodeToRelativeConstraintMapHorizontal.get(k).push({left:H,gap:D.gap})}else{var tt=R.has(D.top)?R.get(D.top):D.top,ht=R.has(D.bottom)?R.get(D.bottom):D.bottom;n.nodesInRelativeVertical.includes(tt)||(n.nodesInRelativeVertical.push(tt),n.nodeToRelativeConstraintMapVertical.set(tt,[]),n.dummyToNodeForHorizontalAlignment.has(tt)?n.nodeToTempPositionMapVertical.set(tt,n.idToNodeMap.get(n.dummyToNodeForHorizontalAlignment.get(tt)[0]).getCenterY()):n.nodeToTempPositionMapVertical.set(tt,n.idToNodeMap.get(tt).getCenterY())),n.nodesInRelativeVertical.includes(ht)||(n.nodesInRelativeVertical.push(ht),n.nodeToRelativeConstraintMapVertical.set(ht,[]),n.dummyToNodeForHorizontalAlignment.has(ht)?n.nodeToTempPositionMapVertical.set(ht,n.idToNodeMap.get(n.dummyToNodeForHorizontalAlignment.get(ht)[0]).getCenterY()):n.nodeToTempPositionMapVertical.set(ht,n.idToNodeMap.get(ht).getCenterY())),n.nodeToRelativeConstraintMapVertical.get(tt).push({bottom:ht,gap:D.gap}),n.nodeToRelativeConstraintMapVertical.get(ht).push({top:tt,gap:D.gap})}});else{var Q=new Map,z=new Map;this.constraints.relativePlacementConstraint.forEach(function(D){if(D.left){var H=O.has(D.left)?O.get(D.left):D.left,k=O.has(D.right)?O.get(D.right):D.right;Q.has(H)?Q.get(H).push(k):Q.set(H,[k]),Q.has(k)?Q.get(k).push(H):Q.set(k,[H])}else{var tt=R.has(D.top)?R.get(D.top):D.top,ht=R.has(D.bottom)?R.get(D.bottom):D.bottom;z.has(tt)?z.get(tt).push(ht):z.set(tt,[ht]),z.has(ht)?z.get(ht).push(tt):z.set(ht,[tt])}});var X=function(H,k){var tt=[],ht=[],J=new V,It=new Set,Nt=0;return H.forEach(function(vt,it){if(!It.has(it)){tt[Nt]=[],ht[Nt]=!1;var ut=it;for(J.push(ut),It.add(ut),tt[Nt].push(ut);J.length!=0;){ut=J.shift(),k.has(ut)&&(ht[Nt]=!0);var Et=H.get(ut);Et.forEach(function(wt){It.has(wt)||(J.push(wt),It.add(wt),tt[Nt].push(wt))})}Nt++}}),{components:tt,isFixed:ht}},rt=X(Q,n.fixedNodesOnHorizontal);this.componentsOnHorizontal=rt.components,this.fixedComponentsOnHorizontal=rt.isFixed;var $=X(z,n.fixedNodesOnVertical);this.componentsOnVertical=$.components,this.fixedComponentsOnVertical=$.isFixed}}},M.prototype.updateDisplacements=function(){var n=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function($){var D=n.idToNodeMap.get($.nodeId);D.displacementX=0,D.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var E=this.constraints.alignmentConstraint.vertical,p=0;p1){var R;for(R=0;Rm&&(m=Math.floor(O.y)),I=Math.floor(O.x+o.DEFAULT_COMPONENT_SEPERATION)}this.transform(new d(T.WORLD_CENTER_X-O.x/2,T.WORLD_CENTER_Y-O.y/2))},M.radialLayout=function(n,E,p){var m=Math.max(this.maxDiagonalInTree(n),o.DEFAULT_RADIAL_SEPARATION);M.branchRadialLayout(E,null,0,359,0,m);var y=B.calculateBounds(n),I=new U;I.setDeviceOrgX(y.getMinX()),I.setDeviceOrgY(y.getMinY()),I.setWorldOrgX(p.x),I.setWorldOrgY(p.y);for(var O=0;O1;){var k=H[0];H.splice(0,1);var tt=z.indexOf(k);tt>=0&&z.splice(tt,1),$--,X--}E!=null?D=(z.indexOf(H[0])+1)%$:D=0;for(var ht=Math.abs(m-p)/X,J=D;rt!=X;J=++J%$){var It=z[J].getOtherEnd(n);if(It!=E){var Nt=(p+rt*ht)%360,vt=(Nt+ht)%360;M.branchRadialLayout(It,n,Nt,vt,y+I,I),rt++}}},M.maxDiagonalInTree=function(n){for(var E=w.MIN_VALUE,p=0;pE&&(E=y)}return E},M.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},M.prototype.groupZeroDegreeMembers=function(){var n=this,E={};this.memberGroups={},this.idToDummyNode={};for(var p=[],m=this.graphManager.getAllNodes(),y=0;y"u"&&(E[R]=[]),E[R]=E[R].concat(I)}Object.keys(E).forEach(function(W){if(E[W].length>1){var x="DummyCompound_"+W;n.memberGroups[x]=E[W];var Q=E[W][0].getParent(),z=new t(n.graphManager);z.id=x,z.paddingLeft=Q.paddingLeft||0,z.paddingRight=Q.paddingRight||0,z.paddingBottom=Q.paddingBottom||0,z.paddingTop=Q.paddingTop||0,n.idToDummyNode[x]=z;var X=n.getGraphManager().add(n.newGraph(),z),rt=Q.getChild();rt.add(z);for(var $=0;$y?(m.rect.x-=(m.labelWidth-y)/2,m.setWidth(m.labelWidth),m.labelMarginLeft=(m.labelWidth-y)/2):m.labelPosHorizontal=="right"&&m.setWidth(y+m.labelWidth)),m.labelHeight&&(m.labelPosVertical=="top"?(m.rect.y-=m.labelHeight,m.setHeight(I+m.labelHeight),m.labelMarginTop=m.labelHeight):m.labelPosVertical=="center"&&m.labelHeight>I?(m.rect.y-=(m.labelHeight-I)/2,m.setHeight(m.labelHeight),m.labelMarginTop=(m.labelHeight-I)/2):m.labelPosVertical=="bottom"&&m.setHeight(I+m.labelHeight))}})},M.prototype.repopulateCompounds=function(){for(var n=this.compoundOrder.length-1;n>=0;n--){var E=this.compoundOrder[n],p=E.id,m=E.paddingLeft,y=E.paddingTop,I=E.labelMarginLeft,O=E.labelMarginTop;this.adjustLocations(this.tiledMemberPack[p],E.rect.x,E.rect.y,m,y,I,O)}},M.prototype.repopulateZeroDegreeMembers=function(){var n=this,E=this.tiledZeroDegreePack;Object.keys(E).forEach(function(p){var m=n.idToDummyNode[p],y=m.paddingLeft,I=m.paddingTop,O=m.labelMarginLeft,R=m.labelMarginTop;n.adjustLocations(E[p],m.rect.x,m.rect.y,y,I,O,R)})},M.prototype.getToBeTiled=function(n){var E=n.id;if(this.toBeTiled[E]!=null)return this.toBeTiled[E];var p=n.getChild();if(p==null)return this.toBeTiled[E]=!1,!1;for(var m=p.getNodes(),y=0;y0)return this.toBeTiled[E]=!1,!1;if(I.getChild()==null){this.toBeTiled[I.id]=!1;continue}if(!this.getToBeTiled(I))return this.toBeTiled[E]=!1,!1}return this.toBeTiled[E]=!0,!0},M.prototype.getNodeDegree=function(n){n.id;for(var E=n.getEdges(),p=0,m=0;mQ&&(Q=X.rect.height)}p+=Q+n.verticalPadding}},M.prototype.tileCompoundMembers=function(n,E){var p=this;this.tiledMemberPack=[],Object.keys(n).forEach(function(m){var y=E[m];if(p.tiledMemberPack[m]=p.tileNodes(n[m],y.paddingLeft+y.paddingRight),y.rect.width=p.tiledMemberPack[m].width,y.rect.height=p.tiledMemberPack[m].height,y.setCenter(p.tiledMemberPack[m].centerX,p.tiledMemberPack[m].centerY),y.labelMarginLeft=0,y.labelMarginTop=0,o.NODE_DIMENSIONS_INCLUDE_LABELS){var I=y.rect.width,O=y.rect.height;y.labelWidth&&(y.labelPosHorizontal=="left"?(y.rect.x-=y.labelWidth,y.setWidth(I+y.labelWidth),y.labelMarginLeft=y.labelWidth):y.labelPosHorizontal=="center"&&y.labelWidth>I?(y.rect.x-=(y.labelWidth-I)/2,y.setWidth(y.labelWidth),y.labelMarginLeft=(y.labelWidth-I)/2):y.labelPosHorizontal=="right"&&y.setWidth(I+y.labelWidth)),y.labelHeight&&(y.labelPosVertical=="top"?(y.rect.y-=y.labelHeight,y.setHeight(O+y.labelHeight),y.labelMarginTop=y.labelHeight):y.labelPosVertical=="center"&&y.labelHeight>O?(y.rect.y-=(y.labelHeight-O)/2,y.setHeight(y.labelHeight),y.labelMarginTop=(y.labelHeight-O)/2):y.labelPosVertical=="bottom"&&y.setHeight(O+y.labelHeight))}})},M.prototype.tileNodes=function(n,E){var p=this.tileNodesByFavoringDim(n,E,!0),m=this.tileNodesByFavoringDim(n,E,!1),y=this.getOrgRatio(p),I=this.getOrgRatio(m),O;return IR&&(R=$.getWidth())});var W=I/y,x=O/y,Q=Math.pow(p-m,2)+4*(W+m)*(x+p)*y,z=(m-p+Math.sqrt(Q))/(2*(W+m)),X;E?(X=Math.ceil(z),X==z&&X++):X=Math.floor(z);var rt=X*(W+m)-m;return R>rt&&(rt=R),rt+=m*2,rt},M.prototype.tileNodesByFavoringDim=function(n,E,p){var m=o.TILING_PADDING_VERTICAL,y=o.TILING_PADDING_HORIZONTAL,I=o.TILING_COMPARE_BY,O={rows:[],rowWidth:[],rowHeight:[],width:0,height:E,verticalPadding:m,horizontalPadding:y,centerX:0,centerY:0};I&&(O.idealRowWidth=this.calcIdealRowWidth(n,p));var R=function(D){return D.rect.width*D.rect.height},W=function(D,H){return R(H)-R(D)};n.sort(function($,D){var H=W;return O.idealRowWidth?(H=I,H($.id,D.id)):H($,D)});for(var x=0,Q=0,z=0;z0&&(O+=n.horizontalPadding),n.rowWidth[p]=O,n.width0&&(R+=n.verticalPadding);var W=0;R>n.rowHeight[p]&&(W=n.rowHeight[p],n.rowHeight[p]=R,W=n.rowHeight[p]-W),n.height+=W,n.rows[p].push(E)},M.prototype.getShortestRowIndex=function(n){for(var E=-1,p=Number.MAX_VALUE,m=0;mp&&(E=m,p=n.rowWidth[m]);return E},M.prototype.canAddHorizontal=function(n,E,p){if(n.idealRowWidth){var m=n.rows.length-1,y=n.rowWidth[m];return y+E+n.horizontalPadding<=n.idealRowWidth}var I=this.getShortestRowIndex(n);if(I<0)return!0;var O=n.rowWidth[I];if(O+n.horizontalPadding+E<=n.width)return!0;var R=0;n.rowHeight[I]0&&(R=p+n.verticalPadding-n.rowHeight[I]);var W;n.width-O>=E+n.horizontalPadding?W=(n.height+R)/(O+E+n.horizontalPadding):W=(n.height+R)/n.width,R=p+n.verticalPadding;var x;return n.widthI&&E!=p){m.splice(-1,1),n.rows[p].push(y),n.rowWidth[E]=n.rowWidth[E]-I,n.rowWidth[p]=n.rowWidth[p]+I,n.width=n.rowWidth[instance.getLongestRowIndex(n)];for(var O=Number.MIN_VALUE,R=0;RO&&(O=m[R].height);E>0&&(O+=n.verticalPadding);var W=n.rowHeight[E]+n.rowHeight[p];n.rowHeight[E]=O,n.rowHeight[p]0)for(var rt=y;rt<=I;rt++)X[0]+=this.grid[rt][O-1].length+this.grid[rt][O].length-1;if(I0)for(var rt=O;rt<=R;rt++)X[3]+=this.grid[y-1][rt].length+this.grid[y][rt].length-1;for(var $=w.MAX_VALUE,D,H,k=0;k{var f=a(551).FDLayoutNode,e=a(551).IMath;function u(s,o,c,l){f.call(this,s,o,c,l)}u.prototype=Object.create(f.prototype);for(var t in f)u[t]=f[t];u.prototype.calculateDisplacement=function(){var s=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=s.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=s.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=s.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=s.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>s.coolingFactor*s.maxNodeDisplacement&&(this.displacementX=s.coolingFactor*s.maxNodeDisplacement*e.sign(this.displacementX)),Math.abs(this.displacementY)>s.coolingFactor*s.maxNodeDisplacement&&(this.displacementY=s.coolingFactor*s.maxNodeDisplacement*e.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},u.prototype.propogateDisplacementToChildren=function(s,o){for(var c=this.getChild().getNodes(),l,T=0;T{function f(c){if(Array.isArray(c)){for(var l=0,T=Array(c.length);l0){var Lt=0;ot.forEach(function(st){Z=="horizontal"?(et.set(st,g.has(st)?d[g.get(st)]:q.get(st)),Lt+=et.get(st)):(et.set(st,g.has(st)?C[g.get(st)]:q.get(st)),Lt+=et.get(st))}),Lt=Lt/ot.length,lt.forEach(function(st){K.has(st)||et.set(st,Lt)})}else{var ft=0;lt.forEach(function(st){Z=="horizontal"?ft+=g.has(st)?d[g.get(st)]:q.get(st):ft+=g.has(st)?C[g.get(st)]:q.get(st)}),ft=ft/lt.length,lt.forEach(function(st){et.set(st,ft)})}});for(var At=function(){var ot=dt.shift(),Lt=Y.get(ot);Lt.forEach(function(ft){if(et.get(ft.id)st&&(st=kt),KtXt&&(Xt=Kt)}}catch(ee){Ct=!0,Bt=ee}finally{try{!Tt&&bt.return&&bt.return()}finally{if(Ct)throw Bt}}var fe=(Lt+st)/2-(ft+Xt)/2,Qt=!0,jt=!1,_t=void 0;try{for(var Jt=lt[Symbol.iterator](),ne;!(Qt=(ne=Jt.next()).done);Qt=!0){var te=ne.value;et.set(te,et.get(te)+fe)}}catch(ee){jt=!0,_t=ee}finally{try{!Qt&&Jt.return&&Jt.return()}finally{if(jt)throw _t}}})}return et},_=function(Y){var Z=0,K=0,q=0,at=0;if(Y.forEach(function(j){j.left?d[g.get(j.left)]-d[g.get(j.right)]>=0?Z++:K++:C[g.get(j.top)]-C[g.get(j.bottom)]>=0?q++:at++}),Z>K&&q>at)for(var ct=0;ctK)for(var nt=0;ntat)for(var et=0;et1)l.fixedNodeConstraint.forEach(function(F,Y){m[Y]=[F.position.x,F.position.y],y[Y]=[d[g.get(F.nodeId)],C[g.get(F.nodeId)]]}),I=!0;else if(l.alignmentConstraint)(function(){var F=0;if(l.alignmentConstraint.vertical){for(var Y=l.alignmentConstraint.vertical,Z=function(et){var j=new Set;Y[et].forEach(function(pt){j.add(pt)});var dt=new Set([].concat(f(j)).filter(function(pt){return R.has(pt)})),At=void 0;dt.size>0?At=d[g.get(dt.values().next().value)]:At=V(j).x,Y[et].forEach(function(pt){m[F]=[At,C[g.get(pt)]],y[F]=[d[g.get(pt)],C[g.get(pt)]],F++})},K=0;K0?At=d[g.get(dt.values().next().value)]:At=V(j).y,q[et].forEach(function(pt){m[F]=[d[g.get(pt)],At],y[F]=[d[g.get(pt)],C[g.get(pt)]],F++})},ct=0;ctz&&(z=Q[rt].length,X=rt);if(z0){var mt={x:0,y:0};l.fixedNodeConstraint.forEach(function(F,Y){var Z={x:d[g.get(F.nodeId)],y:C[g.get(F.nodeId)]},K=F.position,q=U(K,Z);mt.x+=q.x,mt.y+=q.y}),mt.x/=l.fixedNodeConstraint.length,mt.y/=l.fixedNodeConstraint.length,d.forEach(function(F,Y){d[Y]+=mt.x}),C.forEach(function(F,Y){C[Y]+=mt.y}),l.fixedNodeConstraint.forEach(function(F){d[g.get(F.nodeId)]=F.position.x,C[g.get(F.nodeId)]=F.position.y})}if(l.alignmentConstraint){if(l.alignmentConstraint.vertical)for(var Dt=l.alignmentConstraint.vertical,Rt=function(Y){var Z=new Set;Dt[Y].forEach(function(at){Z.add(at)});var K=new Set([].concat(f(Z)).filter(function(at){return R.has(at)})),q=void 0;K.size>0?q=d[g.get(K.values().next().value)]:q=V(Z).x,Z.forEach(function(at){R.has(at)||(d[g.get(at)]=q)})},Ht=0;Ht0?q=C[g.get(K.values().next().value)]:q=V(Z).y,Z.forEach(function(at){R.has(at)||(C[g.get(at)]=q)})},Ft=0;Ft{i.exports=A})},N={};function v(i){var r=N[i];if(r!==void 0)return r.exports;var a=N[i]={exports:{}};return G[i](a,a.exports,v),a.exports}var h=v(45);return h})()})})(he)),he.exports}var pr=se.exports,De;function yr(){return De||(De=1,(function(L,b){(function(G,N){L.exports=N(vr())})(pr,function(A){return(()=>{var G={658:(i=>{i.exports=Object.assign!=null?Object.assign.bind(Object):function(r){for(var a=arguments.length,f=Array(a>1?a-1:0),e=1;e{var f=(function(){function t(s,o){var c=[],l=!0,T=!1,g=void 0;try{for(var d=s[Symbol.iterator](),C;!(l=(C=d.next()).done)&&(c.push(C.value),!(o&&c.length===o));l=!0);}catch(S){T=!0,g=S}finally{try{!l&&d.return&&d.return()}finally{if(T)throw g}}return c}return function(s,o){if(Array.isArray(s))return s;if(Symbol.iterator in Object(s))return t(s,o);throw new TypeError("Invalid attempt to destructure non-iterable instance")}})(),e=a(140).layoutBase.LinkedList,u={};u.getTopMostNodes=function(t){for(var s={},o=0;o0&&I.merge(x)});for(var O=0;O1){C=g[0],S=C.connectedEdges().length,g.forEach(function(y){y.connectedEdges().length0&&c.set("dummy"+(c.size+1),B),U},u.relocateComponent=function(t,s,o){if(!o.fixedNodeConstraint){var c=Number.POSITIVE_INFINITY,l=Number.NEGATIVE_INFINITY,T=Number.POSITIVE_INFINITY,g=Number.NEGATIVE_INFINITY;if(o.quality=="draft"){var d=!0,C=!1,S=void 0;try{for(var w=s.nodeIndexes[Symbol.iterator](),P;!(d=(P=w.next()).done);d=!0){var B=P.value,U=f(B,2),V=U[0],M=U[1],_=o.cy.getElementById(V);if(_){var n=_.boundingBox(),E=s.xCoords[M]-n.w/2,p=s.xCoords[M]+n.w/2,m=s.yCoords[M]-n.h/2,y=s.yCoords[M]+n.h/2;El&&(l=p),mg&&(g=y)}}}catch(x){C=!0,S=x}finally{try{!d&&w.return&&w.return()}finally{if(C)throw S}}var I=t.x-(l+c)/2,O=t.y-(g+T)/2;s.xCoords=s.xCoords.map(function(x){return x+I}),s.yCoords=s.yCoords.map(function(x){return x+O})}else{Object.keys(s).forEach(function(x){var Q=s[x],z=Q.getRect().x,X=Q.getRect().x+Q.getRect().width,rt=Q.getRect().y,$=Q.getRect().y+Q.getRect().height;zl&&(l=X),rtg&&(g=$)});var R=t.x-(l+c)/2,W=t.y-(g+T)/2;Object.keys(s).forEach(function(x){var Q=s[x];Q.setCenter(Q.getCenterX()+R,Q.getCenterY()+W)})}}},u.calcBoundingBox=function(t,s,o,c){for(var l=Number.MAX_SAFE_INTEGER,T=Number.MIN_SAFE_INTEGER,g=Number.MAX_SAFE_INTEGER,d=Number.MIN_SAFE_INTEGER,C=void 0,S=void 0,w=void 0,P=void 0,B=t.descendants().not(":parent"),U=B.length,V=0;VC&&(l=C),Tw&&(g=w),d{var f=a(548),e=a(140).CoSELayout,u=a(140).CoSENode,t=a(140).layoutBase.PointD,s=a(140).layoutBase.DimensionD,o=a(140).layoutBase.LayoutConstants,c=a(140).layoutBase.FDLayoutConstants,l=a(140).CoSEConstants,T=function(d,C){var S=d.cy,w=d.eles,P=w.nodes(),B=w.edges(),U=void 0,V=void 0,M=void 0,_={};d.randomize&&(U=C.nodeIndexes,V=C.xCoords,M=C.yCoords);var n=function(x){return typeof x=="function"},E=function(x,Q){return n(x)?x(Q):x},p=f.calcParentsWithoutChildren(S,w),m=function W(x,Q,z,X){for(var rt=Q.length,$=0;$0){var J=void 0;J=z.getGraphManager().add(z.newGraph(),k),W(J,H,z,X)}}},y=function(x,Q,z){for(var X=0,rt=0,$=0;$0?l.DEFAULT_EDGE_LENGTH=c.DEFAULT_EDGE_LENGTH=X/rt:n(d.idealEdgeLength)?l.DEFAULT_EDGE_LENGTH=c.DEFAULT_EDGE_LENGTH=50:l.DEFAULT_EDGE_LENGTH=c.DEFAULT_EDGE_LENGTH=d.idealEdgeLength,l.MIN_REPULSION_DIST=c.MIN_REPULSION_DIST=c.DEFAULT_EDGE_LENGTH/10,l.DEFAULT_RADIAL_SEPARATION=c.DEFAULT_EDGE_LENGTH)},I=function(x,Q){Q.fixedNodeConstraint&&(x.constraints.fixedNodeConstraint=Q.fixedNodeConstraint),Q.alignmentConstraint&&(x.constraints.alignmentConstraint=Q.alignmentConstraint),Q.relativePlacementConstraint&&(x.constraints.relativePlacementConstraint=Q.relativePlacementConstraint)};d.nestingFactor!=null&&(l.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=c.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=d.nestingFactor),d.gravity!=null&&(l.DEFAULT_GRAVITY_STRENGTH=c.DEFAULT_GRAVITY_STRENGTH=d.gravity),d.numIter!=null&&(l.MAX_ITERATIONS=c.MAX_ITERATIONS=d.numIter),d.gravityRange!=null&&(l.DEFAULT_GRAVITY_RANGE_FACTOR=c.DEFAULT_GRAVITY_RANGE_FACTOR=d.gravityRange),d.gravityCompound!=null&&(l.DEFAULT_COMPOUND_GRAVITY_STRENGTH=c.DEFAULT_COMPOUND_GRAVITY_STRENGTH=d.gravityCompound),d.gravityRangeCompound!=null&&(l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=c.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=d.gravityRangeCompound),d.initialEnergyOnIncremental!=null&&(l.DEFAULT_COOLING_FACTOR_INCREMENTAL=c.DEFAULT_COOLING_FACTOR_INCREMENTAL=d.initialEnergyOnIncremental),d.tilingCompareBy!=null&&(l.TILING_COMPARE_BY=d.tilingCompareBy),d.quality=="proof"?o.QUALITY=2:o.QUALITY=0,l.NODE_DIMENSIONS_INCLUDE_LABELS=c.NODE_DIMENSIONS_INCLUDE_LABELS=o.NODE_DIMENSIONS_INCLUDE_LABELS=d.nodeDimensionsIncludeLabels,l.DEFAULT_INCREMENTAL=c.DEFAULT_INCREMENTAL=o.DEFAULT_INCREMENTAL=!d.randomize,l.ANIMATE=c.ANIMATE=o.ANIMATE=d.animate,l.TILE=d.tile,l.TILING_PADDING_VERTICAL=typeof d.tilingPaddingVertical=="function"?d.tilingPaddingVertical.call():d.tilingPaddingVertical,l.TILING_PADDING_HORIZONTAL=typeof d.tilingPaddingHorizontal=="function"?d.tilingPaddingHorizontal.call():d.tilingPaddingHorizontal,l.DEFAULT_INCREMENTAL=c.DEFAULT_INCREMENTAL=o.DEFAULT_INCREMENTAL=!0,l.PURE_INCREMENTAL=!d.randomize,o.DEFAULT_UNIFORM_LEAF_NODE_SIZES=d.uniformNodeDimensions,d.step=="transformed"&&(l.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,l.ENFORCE_CONSTRAINTS=!1,l.APPLY_LAYOUT=!1),d.step=="enforced"&&(l.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,l.ENFORCE_CONSTRAINTS=!0,l.APPLY_LAYOUT=!1),d.step=="cose"&&(l.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,l.ENFORCE_CONSTRAINTS=!1,l.APPLY_LAYOUT=!0),d.step=="all"&&(d.randomize?l.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:l.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,l.ENFORCE_CONSTRAINTS=!0,l.APPLY_LAYOUT=!0),d.fixedNodeConstraint||d.alignmentConstraint||d.relativePlacementConstraint?l.TREE_REDUCTION_ON_INCREMENTAL=!1:l.TREE_REDUCTION_ON_INCREMENTAL=!0;var O=new e,R=O.newGraphManager();return m(R.addRoot(),f.getTopMostNodes(P),O,d),y(O,R,B),I(O,d),O.runLayout(),_};i.exports={coseLayout:T}}),212:((i,r,a)=>{var f=(function(){function d(C,S){for(var w=0;w0)if(p){var I=t.getTopMostNodes(w.eles.nodes());if(M=t.connectComponents(P,w.eles,I),M.forEach(function(vt){var it=vt.boundingBox();_.push({x:it.x1+it.w/2,y:it.y1+it.h/2})}),w.randomize&&M.forEach(function(vt){w.eles=vt,U.push(o(w))}),w.quality=="default"||w.quality=="proof"){var O=P.collection();if(w.tile){var R=new Map,W=[],x=[],Q=0,z={nodeIndexes:R,xCoords:W,yCoords:x},X=[];if(M.forEach(function(vt,it){vt.edges().length==0&&(vt.nodes().forEach(function(ut,Et){O.merge(vt.nodes()[Et]),ut.isParent()||(z.nodeIndexes.set(vt.nodes()[Et].id(),Q++),z.xCoords.push(vt.nodes()[0].position().x),z.yCoords.push(vt.nodes()[0].position().y))}),X.push(it))}),O.length>1){var rt=O.boundingBox();_.push({x:rt.x1+rt.w/2,y:rt.y1+rt.h/2}),M.push(O),U.push(z);for(var $=X.length-1;$>=0;$--)M.splice(X[$],1),U.splice(X[$],1),_.splice(X[$],1)}}M.forEach(function(vt,it){w.eles=vt,V.push(l(w,U[it])),t.relocateComponent(_[it],V[it],w)})}else M.forEach(function(vt,it){t.relocateComponent(_[it],U[it],w)});var D=new Set;if(M.length>1){var H=[],k=B.filter(function(vt){return vt.css("display")=="none"});M.forEach(function(vt,it){var ut=void 0;if(w.quality=="draft"&&(ut=U[it].nodeIndexes),vt.nodes().not(k).length>0){var Et={};Et.edges=[],Et.nodes=[];var wt=void 0;vt.nodes().not(k).forEach(function(Ot){if(w.quality=="draft")if(!Ot.isParent())wt=ut.get(Ot.id()),Et.nodes.push({x:U[it].xCoords[wt]-Ot.boundingbox().w/2,y:U[it].yCoords[wt]-Ot.boundingbox().h/2,width:Ot.boundingbox().w,height:Ot.boundingbox().h});else{var mt=t.calcBoundingBox(Ot,U[it].xCoords,U[it].yCoords,ut);Et.nodes.push({x:mt.topLeftX,y:mt.topLeftY,width:mt.width,height:mt.height})}else V[it][Ot.id()]&&Et.nodes.push({x:V[it][Ot.id()].getLeft(),y:V[it][Ot.id()].getTop(),width:V[it][Ot.id()].getWidth(),height:V[it][Ot.id()].getHeight()})}),vt.edges().forEach(function(Ot){var mt=Ot.source(),Dt=Ot.target();if(mt.css("display")!="none"&&Dt.css("display")!="none")if(w.quality=="draft"){var Rt=ut.get(mt.id()),Ht=ut.get(Dt.id()),Ut=[],Pt=[];if(mt.isParent()){var Ft=t.calcBoundingBox(mt,U[it].xCoords,U[it].yCoords,ut);Ut.push(Ft.topLeftX+Ft.width/2),Ut.push(Ft.topLeftY+Ft.height/2)}else Ut.push(U[it].xCoords[Rt]),Ut.push(U[it].yCoords[Rt]);if(Dt.isParent()){var Yt=t.calcBoundingBox(Dt,U[it].xCoords,U[it].yCoords,ut);Pt.push(Yt.topLeftX+Yt.width/2),Pt.push(Yt.topLeftY+Yt.height/2)}else Pt.push(U[it].xCoords[Ht]),Pt.push(U[it].yCoords[Ht]);Et.edges.push({startX:Ut[0],startY:Ut[1],endX:Pt[0],endY:Pt[1]})}else V[it][mt.id()]&&V[it][Dt.id()]&&Et.edges.push({startX:V[it][mt.id()].getCenterX(),startY:V[it][mt.id()].getCenterY(),endX:V[it][Dt.id()].getCenterX(),endY:V[it][Dt.id()].getCenterY()})}),Et.nodes.length>0&&(H.push(Et),D.add(it))}});var tt=E.packComponents(H,w.randomize).shifts;if(w.quality=="draft")U.forEach(function(vt,it){var ut=vt.xCoords.map(function(wt){return wt+tt[it].dx}),Et=vt.yCoords.map(function(wt){return wt+tt[it].dy});vt.xCoords=ut,vt.yCoords=Et});else{var ht=0;D.forEach(function(vt){Object.keys(V[vt]).forEach(function(it){var ut=V[vt][it];ut.setCenter(ut.getCenterX()+tt[ht].dx,ut.getCenterY()+tt[ht].dy)}),ht++})}}}else{var m=w.eles.boundingBox();if(_.push({x:m.x1+m.w/2,y:m.y1+m.h/2}),w.randomize){var y=o(w);U.push(y)}w.quality=="default"||w.quality=="proof"?(V.push(l(w,U[0])),t.relocateComponent(_[0],V[0],w)):t.relocateComponent(_[0],U[0],w)}var J=function(it,ut){if(w.quality=="default"||w.quality=="proof"){typeof it=="number"&&(it=ut);var Et=void 0,wt=void 0,Ot=it.data("id");return V.forEach(function(Dt){Ot in Dt&&(Et={x:Dt[Ot].getRect().getCenterX(),y:Dt[Ot].getRect().getCenterY()},wt=Dt[Ot])}),w.nodeDimensionsIncludeLabels&&(wt.labelWidth&&(wt.labelPosHorizontal=="left"?Et.x+=wt.labelWidth/2:wt.labelPosHorizontal=="right"&&(Et.x-=wt.labelWidth/2)),wt.labelHeight&&(wt.labelPosVertical=="top"?Et.y+=wt.labelHeight/2:wt.labelPosVertical=="bottom"&&(Et.y-=wt.labelHeight/2))),Et==null&&(Et={x:it.position("x"),y:it.position("y")}),{x:Et.x,y:Et.y}}else{var mt=void 0;return U.forEach(function(Dt){var Rt=Dt.nodeIndexes.get(it.id());Rt!=null&&(mt={x:Dt.xCoords[Rt],y:Dt.yCoords[Rt]})}),mt==null&&(mt={x:it.position("x"),y:it.position("y")}),{x:mt.x,y:mt.y}}};if(w.quality=="default"||w.quality=="proof"||w.randomize){var It=t.calcParentsWithoutChildren(P,B),Nt=B.filter(function(vt){return vt.css("display")=="none"});w.eles=B.not(Nt),B.nodes().not(":parent").not(Nt).layoutPositions(S,w,J),It.length>0&&It.forEach(function(vt){vt.position(J(vt))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")}}]),d})();i.exports=g}),657:((i,r,a)=>{var f=a(548),e=a(140).layoutBase.Matrix,u=a(140).layoutBase.SVD,t=function(o){var c=o.cy,l=o.eles,T=l.nodes(),g=l.nodes(":parent"),d=new Map,C=new Map,S=new Map,w=[],P=[],B=[],U=[],V=[],M=[],_=[],n=[],E=void 0,p=1e8,m=1e-9,y=o.piTol,I=o.samplingType,O=o.nodeSeparation,R=void 0,W=function(){for(var Y=0,Z=0,K=!1;Z=at;){nt=q[at++];for(var xt=w[nt],lt=0;ltdt&&(dt=V[Lt],At=Lt)}return At},Q=function(Y){var Z=void 0;if(Y){Z=Math.floor(Math.random()*E);for(var q=0;q=1)break;j=et}for(var pt=0;pt=1)break;j=et}for(var lt=0;lt0&&(Z.isParent()?w[Y].push(S.get(Z.id())):w[Y].push(Z.id()))})});var Nt=function(Y){var Z=C.get(Y),K=void 0;d.get(Y).forEach(function(q){c.getElementById(q).isParent()?K=S.get(q):K=q,w[Z].push(K),w[C.get(K)].push(Y)})},vt=!0,it=!1,ut=void 0;try{for(var Et=d.keys()[Symbol.iterator](),wt;!(vt=(wt=Et.next()).done);vt=!0){var Ot=wt.value;Nt(Ot)}}catch(F){it=!0,ut=F}finally{try{!vt&&Et.return&&Et.return()}finally{if(it)throw ut}}E=C.size;var mt=void 0;if(E>2){R=E{var f=a(212),e=function(t){t&&t("layout","fcose",f)};typeof cytoscape<"u"&&e(cytoscape),i.exports=e}),140:(i=>{i.exports=A})},N={};function v(i){var r=N[i];if(r!==void 0)return r.exports;var a=N[i]={exports:{}};return G[i](a,a.exports,v),a.exports}var h=v(579);return h})()})})(se)),se.exports}var mr=yr();const Er=cr(mr);var xe={L:"left",R:"right",T:"top",B:"bottom"},Ie={L:gt(L=>`${L},${L/2} 0,${L} 0,0`,"L"),R:gt(L=>`0,${L/2} ${L},0 ${L},${L}`,"R"),T:gt(L=>`0,0 ${L},0 ${L/2},${L}`,"T"),B:gt(L=>`${L/2},0 ${L},${L} 0,${L}`,"B")},oe={L:gt((L,b)=>L-b+2,"L"),R:gt((L,b)=>L-2,"R"),T:gt((L,b)=>L-b+2,"T"),B:gt((L,b)=>L-2,"B")},Tr=gt(function(L){return Wt(L)?L==="L"?"R":"L":L==="T"?"B":"T"},"getOppositeArchitectureDirection"),Re=gt(function(L){const b=L;return b==="L"||b==="R"||b==="T"||b==="B"},"isArchitectureDirection"),Wt=gt(function(L){const b=L;return b==="L"||b==="R"},"isArchitectureDirectionX"),qt=gt(function(L){const b=L;return b==="T"||b==="B"},"isArchitectureDirectionY"),Te=gt(function(L,b){const A=Wt(L)&&qt(b),G=qt(L)&&Wt(b);return A||G},"isArchitectureDirectionXY"),Nr=gt(function(L){const b=L[0],A=L[1],G=Wt(b)&&qt(A),N=qt(b)&&Wt(A);return G||N},"isArchitecturePairXY"),Lr=gt(function(L){return L!=="LL"&&L!=="RR"&&L!=="TT"&&L!=="BB"},"isValidArchitectureDirectionPair"),pe=gt(function(L,b){const A=`${L}${b}`;return Lr(A)?A:void 0},"getArchitectureDirectionPair"),Cr=gt(function([L,b],A){const G=A[0],N=A[1];return Wt(G)?qt(N)?[L+(G==="L"?-1:1),b+(N==="T"?1:-1)]:[L+(G==="L"?-1:1),b]:Wt(N)?[L+(N==="L"?1:-1),b+(G==="T"?1:-1)]:[L,b+(G==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),wr=gt(function(L){return L==="LT"||L==="TL"?[1,1]:L==="BL"||L==="LB"?[1,-1]:L==="BR"||L==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),Ar=gt(function(L,b){return Te(L,b)?"bend":Wt(L)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),Mr=gt(function(L){return L.type==="service"},"isArchitectureService"),Or=gt(function(L){return L.type==="junction"},"isArchitectureJunction"),be=gt(L=>L.data(),"edgeData"),ie=gt(L=>L.data(),"nodeData"),Dr=ar.architecture,Pe=class{constructor(){this.nodes={},this.groups={},this.edges=[],this.layoutHints=[],this.registeredIds={},this.elements={},this.diagramId="",this.setAccTitle=Qe,this.getAccTitle=Je,this.setDiagramTitle=Ke,this.getDiagramTitle=je,this.getAccDescription=_e,this.setAccDescription=tr,this.clear()}static{gt(this,"ArchitectureDB")}setDiagramId(L){this.diagramId=L}getDiagramId(){return this.diagramId}clear(){this.nodes={},this.groups={},this.edges=[],this.layoutHints=[],this.registeredIds={},this.dataStructures=void 0,this.elements={},this.diagramId="",er()}addService({id:L,icon:b,in:A,title:G,iconText:N}){if(this.registeredIds[L]!==void 0)throw new Error(`The service id [${L}] is already in use by another ${this.registeredIds[L]}`);if(A!==void 0){if(L===A)throw new Error(`The service [${L}] cannot be placed within itself`);if(this.registeredIds[A]===void 0)throw new Error(`The service [${L}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds[A]==="node")throw new Error(`The service [${L}]'s parent is not a group`)}this.registeredIds[L]="node",this.nodes[L]={id:L,type:"service",icon:b,iconText:N,title:G,edges:[],in:A}}getServices(){return Object.values(this.nodes).filter(Mr)}addJunction({id:L,in:b}){if(this.registeredIds[L]!==void 0)throw new Error(`The junction id [${L}] is already in use by another ${this.registeredIds[L]}`);if(b!==void 0){if(L===b)throw new Error(`The junction [${L}] cannot be placed within itself`);if(this.registeredIds[b]===void 0)throw new Error(`The junction [${L}]'s parent does not exist. Please make sure the parent is created before this junction`);if(this.registeredIds[b]==="node")throw new Error(`The junction [${L}]'s parent is not a group`)}this.registeredIds[L]="node",this.nodes[L]={id:L,type:"junction",edges:[],in:b}}getJunctions(){return Object.values(this.nodes).filter(Or)}getNodes(){return Object.values(this.nodes)}getNode(L){return this.nodes[L]??null}addGroup({id:L,icon:b,in:A,title:G}){if(this.registeredIds?.[L]!==void 0)throw new Error(`The group id [${L}] is already in use by another ${this.registeredIds[L]}`);if(A!==void 0){if(L===A)throw new Error(`The group [${L}] cannot be placed within itself`);if(this.registeredIds?.[A]===void 0)throw new Error(`The group [${L}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds?.[A]==="node")throw new Error(`The group [${L}]'s parent is not a group`)}this.registeredIds[L]="group",this.groups[L]={id:L,icon:b,title:G,in:A}}getGroups(){return Object.values(this.groups)}addEdge({lhsId:L,rhsId:b,lhsDir:A,rhsDir:G,lhsInto:N,rhsInto:v,lhsGroup:h,rhsGroup:i,title:r}){if(!Re(A))throw new Error(`Invalid direction given for left hand side of edge ${L}--${b}. Expected (L,R,T,B) got ${String(A)}`);if(!Re(G))throw new Error(`Invalid direction given for right hand side of edge ${L}--${b}. Expected (L,R,T,B) got ${String(G)}`);if(this.nodes[L]===void 0&&this.groups[L]===void 0)throw new Error(`The left-hand id [${L}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(this.nodes[b]===void 0&&this.groups[b]===void 0)throw new Error(`The right-hand id [${b}] does not yet exist. Please create the service/group before declaring an edge to it.`);const a=this.nodes[L].in,f=this.nodes[b].in;if(h&&a&&f&&a==f)throw new Error(`The left-hand id [${L}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(i&&a&&f&&a==f)throw new Error(`The right-hand id [${b}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);const e={lhsId:L,lhsDir:A,lhsInto:N,lhsGroup:h,rhsId:b,rhsDir:G,rhsInto:v,rhsGroup:i,title:r};this.edges.push(e),this.nodes[L]&&this.nodes[b]&&(this.nodes[L].edges.push(this.edges[this.edges.length-1]),this.nodes[b].edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}addLayoutHint(L){if(L.members.length<2)throw new Error(`An align directive requires at least two members; got ${L.members.length}`);const b=new Set;L.members.forEach(A=>{if(this.registeredIds[A]!=="node")throw new Error(`align ${L.direction} references [${A}], which is not a service or junction`);if(b.has(A))throw new Error(`align ${L.direction} lists [${A}] more than once`);b.add(A)}),this.layoutHints.push(L)}getLayoutHints(){return this.layoutHints}getDataStructures(){if(this.dataStructures===void 0){const L={},b=Object.entries(this.nodes).reduce((i,[r,a])=>(i[r]=a.edges.reduce((f,e)=>{const u=this.getNode(e.lhsId)?.in,t=this.getNode(e.rhsId)?.in;if(u&&t&&u!==t){const s=Ar(e.lhsDir,e.rhsDir);s!=="bend"&&(L[u]??={},L[u][t]=s,L[t]??={},L[t][u]=s)}if(e.lhsId===r){const s=pe(e.lhsDir,e.rhsDir);s&&(f[s]=e.rhsId)}else{const s=pe(e.rhsDir,e.lhsDir);s&&(f[s]=e.lhsId)}return f},{}),i),{}),A=Object.keys(b)[0],G={[A]:1},N=Object.keys(b).reduce((i,r)=>r===A?i:{...i,[r]:1},{}),v=gt(i=>{const r={[i]:[0,0]},a=[i];for(;a.length>0;){const f=a.shift();if(f){G[f]=1,delete N[f];const e=b[f],[u,t]=r[f];Object.entries(e).forEach(([s,o])=>{G[o]||(r[o]=Cr([u,t],s),a.push(o))})}}return r},"BFS"),h=[v(A)];for(;Object.keys(N).length>0;)h.push(v(Object.keys(N)[0]));this.dataStructures={adjList:b,spatialMaps:h,groupAlignments:L}}return this.dataStructures}setElementForId(L,b){this.elements[L]=b}getElementById(L){return this.elements[L]}getConfig(){return rr({...Dr,...ir().architecture})}getConfigField(L){return this.getConfig()[L]}},xr=gt((L,b)=>{ke(L,b),L.groups.map(A=>b.addGroup(A)),L.services.map(A=>b.addService({...A,type:"service"})),L.junctions.map(A=>b.addJunction({...A,type:"junction"})),L.edges.map(A=>b.addEdge(A)),L.alignments?.map(A=>b.addLayoutHint({direction:A.direction,members:[...A.members]}))},"populateDb"),Ge={parser:{yy:void 0},parse:gt(async L=>{const b=await fr("architecture",L);Se.debug(b);const A=Ge.parser?.yy;if(!(A instanceof Pe))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");xr(b,A)},"parse")},Ir=gt(L=>` - .edge { - stroke-width: ${L.archEdgeWidth}; - stroke: ${L.archEdgeColor}; - fill: none; - } - - .arrow { - fill: ${L.archEdgeArrowColor}; - } - - .node-bkg { - fill: none; - stroke: ${L.archGroupBorderColor}; - stroke-width: ${L.archGroupBorderWidth}; - stroke-dasharray: 8; - } - .node-icon-text { - display: flex; - align-items: center; - } - - .node-icon-text > div { - color: #fff; - margin: 1px; - height: fit-content; - text-align: center; - overflow: hidden; - display: -webkit-box; - -webkit-box-orient: vertical; - } -`,"getStyles"),Rr=Ir;function ye(L,b){if(L===0)return b();const A=Math.random;let G=L>>>0;Math.random=function(){G=G+1831565813>>>0;let N=G;return N=Math.imul(N^N>>>15,N|1),N^=N+Math.imul(N^N>>>7,N|61),((N^N>>>14)>>>0)/4294967296};try{return b()}finally{Math.random=A}}gt(ye,"withSeededRandom");var re=gt(L=>`${L}`,"wrapIcon"),ae={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:re('')},server:{body:re('')},disk:{body:re('')},internet:{body:re('')},cloud:{body:re('')},unknown:lr,blank:{body:re("")}}},Sr=gt(async function(L,b,A,G){const N=A.getConfigField("padding"),v=A.getConfigField("iconSize"),h=v/2,i=v/6,r=i/2;await Promise.all(b.edges().map(async a=>{const{source:f,sourceDir:e,sourceArrow:u,sourceGroup:t,target:s,targetDir:o,targetArrow:c,targetGroup:l,label:T}=be(a);let{x:g,y:d}=a[0].sourceEndpoint();const{x:C,y:S}=a[0].midpoint();let{x:w,y:P}=a[0].targetEndpoint();const B=N+4;if(t&&(Wt(e)?g+=e==="L"?-B:B:d+=e==="T"?-B:B+18),l&&(Wt(o)?w+=o==="L"?-B:B:P+=o==="T"?-B:B+18),!t&&A.getNode(f)?.type==="junction"&&(Wt(e)?g+=e==="L"?h:-h:d+=e==="T"?h:-h),!l&&A.getNode(s)?.type==="junction"&&(Wt(o)?w+=o==="L"?h:-h:P+=o==="T"?h:-h),a[0]._private.rscratch){const U=L.insert("g");if(U.insert("path").attr("d",`M ${g},${d} L ${C},${S} L${w},${P} `).attr("class","edge").attr("id",`${G}-${sr(f,s,{prefix:"L"})}`),u){const V=Wt(e)?oe[e](g,i):g-r,M=qt(e)?oe[e](d,i):d-r;U.insert("polygon").attr("points",Ie[e](i)).attr("transform",`translate(${V},${M})`).attr("class","arrow")}if(c){const V=Wt(o)?oe[o](w,i):w-r,M=qt(o)?oe[o](P,i):P-r;U.insert("polygon").attr("points",Ie[o](i)).attr("transform",`translate(${V},${M})`).attr("class","arrow")}if(T){const V=Te(e,o)?"XY":Wt(e)?"X":"Y";let M=0;V==="X"?M=Math.abs(g-w):V==="Y"?M=Math.abs(d-P)/1.5:M=Math.abs(g-w)/2;const _=U.append("g");if(await Ee(_,T,{useHtmlLabels:!1,width:M,classes:"architecture-service-label"},me()),_.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),V==="X")_.attr("transform","translate("+C+", "+S+")");else if(V==="Y")_.attr("transform","translate("+C+", "+S+") rotate(-90)");else if(V==="XY"){const n=pe(e,o);if(n&&Nr(n)){const E=_.node().getBoundingClientRect(),[p,m]=wr(n);_.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*p*m*45})`);const y=_.node().getBoundingClientRect();_.attr("transform",` - translate(${C}, ${S-E.height/2}) - translate(${p*y.width/2}, ${m*y.height/2}) - rotate(${-1*p*m*45}, 0, ${E.height/2}) - `)}}}}}))},"drawEdges"),Fr=gt(async function(L,b,A,G){const v=A.getConfigField("padding")*.75,h=A.getConfigField("fontSize"),r=A.getConfigField("iconSize")/2;await Promise.all(b.nodes().map(async a=>{const f=ie(a);if(f.type==="group"){const{h:e,w:u,x1:t,y1:s}=a.boundingBox(),o=L.append("rect");o.attr("id",`${G}-group-${f.id}`).attr("x",t+r).attr("y",s+r).attr("width",u).attr("height",e).attr("class","node-bkg");const c=L.append("g");let l=t,T=s;if(f.icon){const g=c.append("g");g.html(`${await ve(f.icon,{height:v,width:v,fallbackPrefix:ae.prefix})}`),g.attr("transform","translate("+(l+r+1)+", "+(T+r+1)+")"),l+=v,T+=h/2-1-2}if(f.label){const g=c.append("g");await Ee(g,f.label,{useHtmlLabels:!1,width:u,classes:"architecture-service-label"},me()),g.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),g.attr("transform","translate("+(l+r+4)+", "+(T+r+2)+")")}A.setElementForId(f.id,o)}}))},"drawGroups"),br=gt(async function(L,b,A,G){const N=me();for(const v of A){const h=b.append("g"),i=L.getConfigField("iconSize");if(v.title){const e=h.append("g");await Ee(e,v.title,{useHtmlLabels:!1,width:i*1.5,classes:"architecture-service-label"},N),e.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),e.attr("transform","translate("+i/2+", "+i+")")}const r=h.append("g");if(v.icon)r.html(`${await ve(v.icon,{height:i,width:i,fallbackPrefix:ae.prefix})}`);else if(v.iconText){r.html(`${await ve("blank",{height:i,width:i,fallbackPrefix:ae.prefix})}`);const t=r.append("g").append("foreignObject").attr("width",i).attr("height",i).append("div").attr("class","node-icon-text").attr("style",`height: ${i}px;`).append("div").html(nr(v.iconText,N)),s=parseInt(window.getComputedStyle(t.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;t.attr("style",`-webkit-line-clamp: ${Math.floor((i-2)/s)};`)}else r.append("path").attr("class","node-bkg").attr("id",`${G}-node-${v.id}`).attr("d",`M0,${i} V5 Q0,0 5,0 H${i-5} Q${i},0 ${i},5 V${i} Z`);h.attr("id",`${G}-service-${v.id}`).attr("class","architecture-service");const{width:a,height:f}=h.node().getBBox();v.width=a,v.height=f,L.setElementForId(v.id,h)}return 0},"drawServices"),Pr=gt(function(L,b,A,G){A.forEach(N=>{const v=b.append("g"),h=L.getConfigField("iconSize");v.append("g").append("rect").attr("id",`${G}-node-${N.id}`).attr("fill-opacity","0").attr("width",h).attr("height",h),v.attr("class","architecture-junction");const{width:r,height:a}=v._groups[0][0].getBBox();v.width=r,v.height=a,L.setElementForId(N.id,v)})},"drawJunctions");hr([{name:ae.prefix,icons:ae}]);Fe.use(Er);function Ue(L,b,A){L.forEach(G=>{b.add({group:"nodes",data:{type:"service",id:G.id,icon:G.icon,label:G.title,parent:G.in,width:A.getConfigField("iconSize"),height:A.getConfigField("iconSize")},classes:"node-service"})})}gt(Ue,"addServices");function Ye(L,b,A){L.forEach(G=>{b.add({group:"nodes",data:{type:"junction",id:G.id,parent:G.in,width:A.getConfigField("iconSize"),height:A.getConfigField("iconSize")},classes:"node-junction"})})}gt(Ye,"addJunctions");function Xe(L,b){b.nodes().map(A=>{const G=ie(A);if(G.type==="group")return;G.x=A.position().x,G.y=A.position().y,L.getElementById(G.id).attr("transform","translate("+(G.x||0)+","+(G.y||0)+")")})}gt(Xe,"positionNodes");function He(L,b){L.forEach(A=>{b.add({group:"nodes",data:{type:"group",id:A.id,icon:A.icon,label:A.title,parent:A.in},classes:"node-group"})})}gt(He,"addGroups");function We(L,b){L.forEach(A=>{const{lhsId:G,rhsId:N,lhsInto:v,lhsGroup:h,rhsInto:i,lhsDir:r,rhsDir:a,rhsGroup:f,title:e}=A,u=Te(A.lhsDir,A.rhsDir)?"segments":"straight",t={id:`${G}-${N}`,label:e,source:G,sourceDir:r,sourceArrow:v,sourceGroup:h,sourceEndpoint:r==="L"?"0 50%":r==="R"?"100% 50%":r==="T"?"50% 0":"50% 100%",target:N,targetDir:a,targetArrow:i,targetGroup:f,targetEndpoint:a==="L"?"0 50%":a==="R"?"100% 50%":a==="T"?"50% 0":"50% 100%"};b.add({group:"edges",data:t,classes:u})})}gt(We,"addEdges");function Ve(L,b,A,G=[]){const N=gt((u,t)=>Object.entries(u).reduce((s,[o,c])=>{let l=0;const T=Object.entries(c);if(T.length===1)return s[o]=T[0][1],s;for(let g=0;g{const t={},s={};return Object.entries(u).forEach(([o,[c,l]])=>{const T=L.getNode(o)?.in??"default";t[l]??={},t[l][T]??=[],t[l][T].push(o),s[c]??={},s[c][T]??=[],s[c][T].push(o)}),{horiz:Object.values(N(t,"horizontal")).filter(o=>o.length>1),vert:Object.values(N(s,"vertical")).filter(o=>o.length>1)}}),[h,i]=v.reduce(([u,t],{horiz:s,vert:o})=>[[...u,...s],[...t,...o]],[[],[]]),r=new Set;G.forEach(u=>u.members.forEach(t=>r.add(t)));const a=gt(u=>u.filter(t=>!t.some(s=>r.has(s))),"dropOverlapping"),f=a(h),e=a(i);return G.forEach(u=>{u.members.length<2||(u.direction==="row"?f.push([...u.members]):e.push([...u.members]))}),{horizontal:f,vertical:e}}gt(Ve,"getAlignments");function ze(L,b,A=[]){const G=[],N=b.getConfigField("iconSize"),v=b.getConfigField("idealEdgeLengthMultiplier"),h=v*N,i=new Set;A.forEach(f=>{for(let e=0;e`${f[0]},${f[1]}`,"posToStr"),a=gt(f=>f.split(",").map(e=>parseInt(e)),"strToPos");return L.forEach(f=>{const e=Object.fromEntries(Object.entries(f).map(([o,c])=>[r(c),o])),u=[r([0,0])],t={},s={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;u.length>0;){const o=u.shift();if(o){t[o]=1;const c=e[o];if(c){const l=a(o);Object.entries(s).forEach(([T,g])=>{const d=r([l[0]+g[0],l[1]+g[1]]),C=e[d];if(C&&!t[d]){if(u.push(d),i.has(`${c}|${C}`))return;G.push({[xe[T]]:C,[xe[Tr(T)]]:c,gap:v*N})}})}}}}),G}gt(ze,"getRelativeConstraints");function Be(L,b,A,G,N,{spatialMaps:v,groupAlignments:h}){return new Promise(i=>{const r=or("body").append("div").attr("id","cy").attr("style","display:none"),a=Fe({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge[label]",style:{label:"data(label)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${N.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${N.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});r.remove(),He(A,a),Ue(L,a,N),Ye(b,a,N),We(G,a);const f=N.getLayoutHints(),e=Ve(N,v,h,f),u=ze(v,N,f),t=N.getConfigField("iconSize"),s=N.getConfigField("idealEdgeLengthMultiplier")*t,o=.5*t,c=N.getConfigField("edgeElasticity"),l=N.getConfigField("seed"),T=a.layout({name:"fcose",quality:"proof",randomize:N.getConfigField("randomize"),nodeSeparation:N.getConfigField("nodeSeparation"),numIter:N.getConfigField("numIter"),styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(g){const[d,C]=g.connectedNodes(),{parent:S}=ie(d),{parent:w}=ie(C);return S===w?s:o},edgeElasticity(g){const[d,C]=g.connectedNodes(),{parent:S}=ie(d),{parent:w}=ie(C);return S===w?c:.001},alignmentConstraint:e,relativePlacementConstraint:u});T.one("layoutstop",()=>{function g(d,C,S,w){let P,B;const{x:U,y:V}=d,{x:M,y:_}=C;B=(w-V+(U-S)*(V-_)/(U-M))/Math.sqrt(1+Math.pow((V-_)/(U-M),2)),P=Math.sqrt(Math.pow(w-V,2)+Math.pow(S-U,2)-Math.pow(B,2));const n=Math.sqrt(Math.pow(M-U,2)+Math.pow(_-V,2));P=P/n;let E=(M-U)*(w-V)-(_-V)*(S-U);switch(!0){case E>=0:E=1;break;case E<0:E=-1;break}let p=(M-U)*(S-U)+(_-V)*(w-V);switch(!0){case p>=0:p=1;break;case p<0:p=-1;break}return B=Math.abs(B)*E,P=P*p,{distances:B,weights:P}}gt(g,"getSegmentWeights"),a.startBatch();for(const d of Object.values(a.edges()))if(d.data?.()){const{x:C,y:S}=d.source().position(),{x:w,y:P}=d.target().position();if(C!==w&&S!==P){const B=d.sourceEndpoint(),U=d.targetEndpoint(),{sourceDir:V}=be(d),[M,_]=qt(V)?[B.x,U.y]:[U.x,B.y],{weights:n,distances:E}=g(B,U,M,_);d.style("segment-distances",E),d.style("segment-weights",n)}}a.endBatch(),ye(l,()=>T.run())});try{ye(l,()=>T.run())}catch(g){throw g instanceof RangeError&&g.message.includes("Invalid array length")?new Error("Architecture layout failed: a declared `align row|column` directive likely contradicts the edge directions, or two declared alignments overlap on a shared node. Check that the order of members in each `align` chain is consistent with the edges between them, and that no node appears in two `align` directives along the same axis."):g}a.ready(g=>{Se.info("Ready",g),i(a)})})}gt(Be,"layoutArchitecture");var Gr=gt(async(L,b,A,G)=>{const N=G.db;N.setDiagramId(b);const v=N.getServices(),h=N.getJunctions(),i=N.getGroups(),r=N.getEdges(),a=N.getDataStructures(),f=Ze(b),e=f.append("g");e.attr("class","architecture-edges");const u=f.append("g");u.attr("class","architecture-services");const t=f.append("g");t.attr("class","architecture-groups"),await br(N,u,v,b),Pr(N,u,h,b);const s=await Be(v,h,i,r,N,a);await Sr(e,s,N,b),await Fr(t,s,N,b),Xe(N,s),qe(void 0,f,N.getConfigField("padding"),N.getConfigField("useMaxWidth"))},"draw"),Ur={draw:Gr},Br={parser:Ge,get db(){return new Pe},renderer:Ur,styles:Rr};export{Br as diagram}; diff --git a/apps/kimi-code/dist-web/assets/architectureDiagram-ZJ3FMSHR-ddPbJ_Dn.js b/apps/kimi-code/dist-web/assets/architectureDiagram-ZJ3FMSHR-ddPbJ_Dn.js new file mode 100644 index 0000000000..07d9bd414e --- /dev/null +++ b/apps/kimi-code/dist-web/assets/architectureDiagram-ZJ3FMSHR-ddPbJ_Dn.js @@ -0,0 +1,36 @@ +import{p as ke}from"./chunk-JWPE2WC7-CFaSk12U.js";import{b7 as Ze,_ as gt,F as qe,ad as Qe,l as Se,b as Je,a as Ke,o as je,p as _e,g as tr,s as er,q as rr,B as ir,z as ar,D as nr,c as me,a$ as Ee,ai as ve,i as or,d as sr,r as hr,aj as lr,b8 as fr}from"./mermaid.core-AN7v7N47.js";import{p as cr}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import{c as Fe}from"./cytoscape.esm-OyMbaexL.js";import"./index-Dnz6Zudc.js";var se={exports:{}},he={exports:{}},le={exports:{}},gr=le.exports,Me;function ur(){return Me||(Me=1,(function(L,b){(function(G,N){L.exports=N()})(gr,function(){return(function(A){var G={};function N(v){if(G[v])return G[v].exports;var h=G[v]={i:v,l:!1,exports:{}};return A[v].call(h.exports,h,h.exports,N),h.l=!0,h.exports}return N.m=A,N.c=G,N.i=function(v){return v},N.d=function(v,h,i){N.o(v,h)||Object.defineProperty(v,h,{configurable:!1,enumerable:!0,get:i})},N.n=function(v){var h=v&&v.__esModule?function(){return v.default}:function(){return v};return N.d(h,"a",h),h},N.o=function(v,h){return Object.prototype.hasOwnProperty.call(v,h)},N.p="",N(N.s=28)})([(function(A,G,N){function v(){}v.QUALITY=1,v.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,v.DEFAULT_INCREMENTAL=!1,v.DEFAULT_ANIMATION_ON_LAYOUT=!0,v.DEFAULT_ANIMATION_DURING_LAYOUT=!1,v.DEFAULT_ANIMATION_PERIOD=50,v.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,v.DEFAULT_GRAPH_MARGIN=15,v.NODE_DIMENSIONS_INCLUDE_LABELS=!1,v.SIMPLE_NODE_SIZE=40,v.SIMPLE_NODE_HALF_SIZE=v.SIMPLE_NODE_SIZE/2,v.EMPTY_COMPOUND_NODE_SIZE=40,v.MIN_EDGE_LENGTH=1,v.WORLD_BOUNDARY=1e6,v.INITIAL_WORLD_BOUNDARY=v.WORLD_BOUNDARY/1e3,v.WORLD_CENTER_X=1200,v.WORLD_CENTER_Y=900,A.exports=v}),(function(A,G,N){var v=N(2),h=N(8),i=N(9);function r(f,e,u){v.call(this,u),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=u,this.bendpoints=[],this.source=f,this.target=e}r.prototype=Object.create(v.prototype);for(var a in v)r[a]=v[a];r.prototype.getSource=function(){return this.source},r.prototype.getTarget=function(){return this.target},r.prototype.isInterGraph=function(){return this.isInterGraph},r.prototype.getLength=function(){return this.length},r.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},r.prototype.getBendpoints=function(){return this.bendpoints},r.prototype.getLca=function(){return this.lca},r.prototype.getSourceInLca=function(){return this.sourceInLca},r.prototype.getTargetInLca=function(){return this.targetInLca},r.prototype.getOtherEnd=function(f){if(this.source===f)return this.target;if(this.target===f)return this.source;throw"Node is not incident with this edge"},r.prototype.getOtherEndInGraph=function(f,e){for(var u=this.getOtherEnd(f),t=e.getGraphManager().getRoot();;){if(u.getOwner()==e)return u;if(u.getOwner()==t)break;u=u.getOwner().getParent()}return null},r.prototype.updateLength=function(){var f=new Array(4);this.isOverlapingSourceAndTarget=h.getIntersection(this.target.getRect(),this.source.getRect(),f),this.isOverlapingSourceAndTarget||(this.lengthX=f[0]-f[2],this.lengthY=f[1]-f[3],Math.abs(this.lengthX)<1&&(this.lengthX=i.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=i.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},r.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=i.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=i.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},A.exports=r}),(function(A,G,N){function v(h){this.vGraphObject=h}A.exports=v}),(function(A,G,N){var v=N(2),h=N(10),i=N(13),r=N(0),a=N(16),f=N(5);function e(t,s,o,c){o==null&&c==null&&(c=s),v.call(this,c),t.graphManager!=null&&(t=t.graphManager),this.estimatedSize=h.MIN_VALUE,this.inclusionTreeDepth=h.MAX_VALUE,this.vGraphObject=c,this.edges=[],this.graphManager=t,o!=null&&s!=null?this.rect=new i(s.x,s.y,o.width,o.height):this.rect=new i}e.prototype=Object.create(v.prototype);for(var u in v)e[u]=v[u];e.prototype.getEdges=function(){return this.edges},e.prototype.getChild=function(){return this.child},e.prototype.getOwner=function(){return this.owner},e.prototype.getWidth=function(){return this.rect.width},e.prototype.setWidth=function(t){this.rect.width=t},e.prototype.getHeight=function(){return this.rect.height},e.prototype.setHeight=function(t){this.rect.height=t},e.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},e.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},e.prototype.getCenter=function(){return new f(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},e.prototype.getLocation=function(){return new f(this.rect.x,this.rect.y)},e.prototype.getRect=function(){return this.rect},e.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},e.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},e.prototype.setRect=function(t,s){this.rect.x=t.x,this.rect.y=t.y,this.rect.width=s.width,this.rect.height=s.height},e.prototype.setCenter=function(t,s){this.rect.x=t-this.rect.width/2,this.rect.y=s-this.rect.height/2},e.prototype.setLocation=function(t,s){this.rect.x=t,this.rect.y=s},e.prototype.moveBy=function(t,s){this.rect.x+=t,this.rect.y+=s},e.prototype.getEdgeListToNode=function(t){var s=[],o=this;return o.edges.forEach(function(c){if(c.target==t){if(c.source!=o)throw"Incorrect edge source!";s.push(c)}}),s},e.prototype.getEdgesBetween=function(t){var s=[],o=this;return o.edges.forEach(function(c){if(!(c.source==o||c.target==o))throw"Incorrect edge source and/or target";(c.target==t||c.source==t)&&s.push(c)}),s},e.prototype.getNeighborsList=function(){var t=new Set,s=this;return s.edges.forEach(function(o){if(o.source==s)t.add(o.target);else{if(o.target!=s)throw"Incorrect incidency!";t.add(o.source)}}),t},e.prototype.withChildren=function(){var t=new Set,s,o;if(t.add(this),this.child!=null)for(var c=this.child.getNodes(),l=0;ls?(this.rect.x-=(this.labelWidth-s)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(s+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(o+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>o?(this.rect.y-=(this.labelHeight-o)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(o+this.labelHeight))}}},e.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==h.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},e.prototype.transform=function(t){var s=this.rect.x;s>r.WORLD_BOUNDARY?s=r.WORLD_BOUNDARY:s<-r.WORLD_BOUNDARY&&(s=-r.WORLD_BOUNDARY);var o=this.rect.y;o>r.WORLD_BOUNDARY?o=r.WORLD_BOUNDARY:o<-r.WORLD_BOUNDARY&&(o=-r.WORLD_BOUNDARY);var c=new f(s,o),l=t.inverseTransformPoint(c);this.setLocation(l.x,l.y)},e.prototype.getLeft=function(){return this.rect.x},e.prototype.getRight=function(){return this.rect.x+this.rect.width},e.prototype.getTop=function(){return this.rect.y},e.prototype.getBottom=function(){return this.rect.y+this.rect.height},e.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},A.exports=e}),(function(A,G,N){var v=N(0);function h(){}for(var i in v)h[i]=v[i];h.MAX_ITERATIONS=2500,h.DEFAULT_EDGE_LENGTH=50,h.DEFAULT_SPRING_STRENGTH=.45,h.DEFAULT_REPULSION_STRENGTH=4500,h.DEFAULT_GRAVITY_STRENGTH=.4,h.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,h.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,h.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,h.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,h.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,h.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,h.COOLING_ADAPTATION_FACTOR=.33,h.ADAPTATION_LOWER_NODE_LIMIT=1e3,h.ADAPTATION_UPPER_NODE_LIMIT=5e3,h.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,h.MAX_NODE_DISPLACEMENT=h.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,h.MIN_REPULSION_DIST=h.DEFAULT_EDGE_LENGTH/10,h.CONVERGENCE_CHECK_PERIOD=100,h.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,h.MIN_EDGE_LENGTH=1,h.GRID_CALCULATION_CHECK_PERIOD=10,A.exports=h}),(function(A,G,N){function v(h,i){h==null&&i==null?(this.x=0,this.y=0):(this.x=h,this.y=i)}v.prototype.getX=function(){return this.x},v.prototype.getY=function(){return this.y},v.prototype.setX=function(h){this.x=h},v.prototype.setY=function(h){this.y=h},v.prototype.getDifference=function(h){return new DimensionD(this.x-h.x,this.y-h.y)},v.prototype.getCopy=function(){return new v(this.x,this.y)},v.prototype.translate=function(h){return this.x+=h.width,this.y+=h.height,this},A.exports=v}),(function(A,G,N){var v=N(2),h=N(10),i=N(0),r=N(7),a=N(3),f=N(1),e=N(13),u=N(12),t=N(11);function s(c,l,T){v.call(this,T),this.estimatedSize=h.MIN_VALUE,this.margin=i.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=c,l!=null&&l instanceof r?this.graphManager=l:l!=null&&l instanceof Layout&&(this.graphManager=l.graphManager)}s.prototype=Object.create(v.prototype);for(var o in v)s[o]=v[o];s.prototype.getNodes=function(){return this.nodes},s.prototype.getEdges=function(){return this.edges},s.prototype.getGraphManager=function(){return this.graphManager},s.prototype.getParent=function(){return this.parent},s.prototype.getLeft=function(){return this.left},s.prototype.getRight=function(){return this.right},s.prototype.getTop=function(){return this.top},s.prototype.getBottom=function(){return this.bottom},s.prototype.isConnected=function(){return this.isConnected},s.prototype.add=function(c,l,T){if(l==null&&T==null){var g=c;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(g)>-1)throw"Node already in graph!";return g.owner=this,this.getNodes().push(g),g}else{var d=c;if(!(this.getNodes().indexOf(l)>-1&&this.getNodes().indexOf(T)>-1))throw"Source or target not in graph!";if(!(l.owner==T.owner&&l.owner==this))throw"Both owners must be this graph!";return l.owner!=T.owner?null:(d.source=l,d.target=T,d.isInterGraph=!1,this.getEdges().push(d),l.edges.push(d),T!=l&&T.edges.push(d),d)}},s.prototype.remove=function(c){var l=c;if(c instanceof a){if(l==null)throw"Node is null!";if(!(l.owner!=null&&l.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var T=l.edges.slice(),g,d=T.length,C=0;C-1&&P>-1))throw"Source and/or target doesn't know this edge!";g.source.edges.splice(w,1),g.target!=g.source&&g.target.edges.splice(P,1);var S=g.source.owner.getEdges().indexOf(g);if(S==-1)throw"Not in owner's edge list!";g.source.owner.getEdges().splice(S,1)}},s.prototype.updateLeftTop=function(){for(var c=h.MAX_VALUE,l=h.MAX_VALUE,T,g,d,C=this.getNodes(),S=C.length,w=0;wT&&(c=T),l>g&&(l=g)}return c==h.MAX_VALUE?null:(C[0].getParent().paddingLeft!=null?d=C[0].getParent().paddingLeft:d=this.margin,this.left=l-d,this.top=c-d,new u(this.left,this.top))},s.prototype.updateBounds=function(c){for(var l=h.MAX_VALUE,T=-h.MAX_VALUE,g=h.MAX_VALUE,d=-h.MAX_VALUE,C,S,w,P,B,U=this.nodes,V=U.length,M=0;MC&&(l=C),Tw&&(g=w),dC&&(l=C),Tw&&(g=w),d=this.nodes.length){var V=0;T.forEach(function(M){M.owner==c&&V++}),V==this.nodes.length&&(this.isConnected=!0)}},A.exports=s}),(function(A,G,N){var v,h=N(1);function i(r){v=N(6),this.layout=r,this.graphs=[],this.edges=[]}i.prototype.addRoot=function(){var r=this.layout.newGraph(),a=this.layout.newNode(null),f=this.add(r,a);return this.setRootGraph(f),this.rootGraph},i.prototype.add=function(r,a,f,e,u){if(f==null&&e==null&&u==null){if(r==null)throw"Graph is null!";if(a==null)throw"Parent node is null!";if(this.graphs.indexOf(r)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(r),r.parent!=null)throw"Already has a parent!";if(a.child!=null)throw"Already has a child!";return r.parent=a,a.child=r,r}else{u=f,e=a,f=r;var t=e.getOwner(),s=u.getOwner();if(!(t!=null&&t.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(s!=null&&s.getGraphManager()==this))throw"Target not in this graph mgr!";if(t==s)return f.isInterGraph=!1,t.add(f,e,u);if(f.isInterGraph=!0,f.source=e,f.target=u,this.edges.indexOf(f)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(f),!(f.source!=null&&f.target!=null))throw"Edge source and/or target is null!";if(!(f.source.edges.indexOf(f)==-1&&f.target.edges.indexOf(f)==-1))throw"Edge already in source and/or target incidency list!";return f.source.edges.push(f),f.target.edges.push(f),f}},i.prototype.remove=function(r){if(r instanceof v){var a=r;if(a.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(a==this.rootGraph||a.parent!=null&&a.parent.graphManager==this))throw"Invalid parent node!";var f=[];f=f.concat(a.getEdges());for(var e,u=f.length,t=0;t=r.getRight()?a[0]+=Math.min(r.getX()-i.getX(),i.getRight()-r.getRight()):r.getX()<=i.getX()&&r.getRight()>=i.getRight()&&(a[0]+=Math.min(i.getX()-r.getX(),r.getRight()-i.getRight())),i.getY()<=r.getY()&&i.getBottom()>=r.getBottom()?a[1]+=Math.min(r.getY()-i.getY(),i.getBottom()-r.getBottom()):r.getY()<=i.getY()&&r.getBottom()>=i.getBottom()&&(a[1]+=Math.min(i.getY()-r.getY(),r.getBottom()-i.getBottom()));var u=Math.abs((r.getCenterY()-i.getCenterY())/(r.getCenterX()-i.getCenterX()));r.getCenterY()===i.getCenterY()&&r.getCenterX()===i.getCenterX()&&(u=1);var t=u*a[0],s=a[1]/u;a[0]t)return a[0]=f,a[1]=o,a[2]=u,a[3]=U,!1;if(eu)return a[0]=s,a[1]=e,a[2]=P,a[3]=t,!1;if(fu?(a[0]=l,a[1]=T,n=!0):(a[0]=c,a[1]=o,n=!0):p===y&&(f>u?(a[0]=s,a[1]=o,n=!0):(a[0]=g,a[1]=T,n=!0)),-m===y?u>f?(a[2]=B,a[3]=U,E=!0):(a[2]=P,a[3]=w,E=!0):m===y&&(u>f?(a[2]=S,a[3]=w,E=!0):(a[2]=V,a[3]=U,E=!0)),n&&E)return!1;if(f>u?e>t?(I=this.getCardinalDirection(p,y,4),O=this.getCardinalDirection(m,y,2)):(I=this.getCardinalDirection(-p,y,3),O=this.getCardinalDirection(-m,y,1)):e>t?(I=this.getCardinalDirection(-p,y,1),O=this.getCardinalDirection(-m,y,3)):(I=this.getCardinalDirection(p,y,2),O=this.getCardinalDirection(m,y,4)),!n)switch(I){case 1:W=o,R=f+-C/y,a[0]=R,a[1]=W;break;case 2:R=g,W=e+d*y,a[0]=R,a[1]=W;break;case 3:W=T,R=f+C/y,a[0]=R,a[1]=W;break;case 4:R=l,W=e+-d*y,a[0]=R,a[1]=W;break}if(!E)switch(O){case 1:Q=w,x=u+-_/y,a[2]=x,a[3]=Q;break;case 2:x=V,Q=t+M*y,a[2]=x,a[3]=Q;break;case 3:Q=U,x=u+_/y,a[2]=x,a[3]=Q;break;case 4:x=B,Q=t+-M*y,a[2]=x,a[3]=Q;break}}return!1},h.getCardinalDirection=function(i,r,a){return i>r?a:1+a%4},h.getIntersection=function(i,r,a,f){if(f==null)return this.getIntersection2(i,r,a);var e=i.x,u=i.y,t=r.x,s=r.y,o=a.x,c=a.y,l=f.x,T=f.y,g=void 0,d=void 0,C=void 0,S=void 0,w=void 0,P=void 0,B=void 0,U=void 0,V=void 0;return C=s-u,w=e-t,B=t*u-e*s,S=T-c,P=o-l,U=l*c-o*T,V=C*P-S*w,V===0?null:(g=(w*U-P*B)/V,d=(S*B-C*U)/V,new v(g,d))},h.angleOfVector=function(i,r,a,f){var e=void 0;return i!==a?(e=Math.atan((f-r)/(a-i)),a=0){var T=(-o+Math.sqrt(o*o-4*s*c))/(2*s),g=(-o-Math.sqrt(o*o-4*s*c))/(2*s),d=null;return T>=0&&T<=1?[T]:g>=0&&g<=1?[g]:d}else return null},h.HALF_PI=.5*Math.PI,h.ONE_AND_HALF_PI=1.5*Math.PI,h.TWO_PI=2*Math.PI,h.THREE_PI=3*Math.PI,A.exports=h}),(function(A,G,N){function v(){}v.sign=function(h){return h>0?1:h<0?-1:0},v.floor=function(h){return h<0?Math.ceil(h):Math.floor(h)},v.ceil=function(h){return h<0?Math.floor(h):Math.ceil(h)},A.exports=v}),(function(A,G,N){function v(){}v.MAX_VALUE=2147483647,v.MIN_VALUE=-2147483648,A.exports=v}),(function(A,G,N){var v=(function(){function e(u,t){for(var s=0;s"u"?"undefined":v(i);return i==null||r!="object"&&r!="function"},A.exports=h}),(function(A,G,N){function v(o){if(Array.isArray(o)){for(var c=0,l=Array(o.length);c0&&c;){for(C.push(w[0]);C.length>0&&c;){var P=C[0];C.splice(0,1),d.add(P);for(var B=P.getEdges(),g=0;g-1&&w.splice(_,1)}d=new Set,S=new Map}}return o},s.prototype.createDummyNodesForBendpoints=function(o){for(var c=[],l=o.source,T=this.graphManager.calcLowestCommonAncestor(o.source,o.target),g=0;g0){for(var T=this.edgeToDummyNodes.get(l),g=0;g=0&&c.splice(U,1);var V=S.getNeighborsList();V.forEach(function(n){if(l.indexOf(n)<0){var E=T.get(n),p=E-1;p==1&&P.push(n),T.set(n,p)}})}l=l.concat(P),(c.length==1||c.length==2)&&(g=!0,d=c[0])}return d},s.prototype.setGraphManager=function(o){this.graphManager=o},A.exports=s}),(function(A,G,N){function v(){}v.seed=1,v.x=0,v.nextDouble=function(){return v.x=Math.sin(v.seed++)*1e4,v.x-Math.floor(v.x)},A.exports=v}),(function(A,G,N){var v=N(5);function h(i,r){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}h.prototype.getWorldOrgX=function(){return this.lworldOrgX},h.prototype.setWorldOrgX=function(i){this.lworldOrgX=i},h.prototype.getWorldOrgY=function(){return this.lworldOrgY},h.prototype.setWorldOrgY=function(i){this.lworldOrgY=i},h.prototype.getWorldExtX=function(){return this.lworldExtX},h.prototype.setWorldExtX=function(i){this.lworldExtX=i},h.prototype.getWorldExtY=function(){return this.lworldExtY},h.prototype.setWorldExtY=function(i){this.lworldExtY=i},h.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},h.prototype.setDeviceOrgX=function(i){this.ldeviceOrgX=i},h.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},h.prototype.setDeviceOrgY=function(i){this.ldeviceOrgY=i},h.prototype.getDeviceExtX=function(){return this.ldeviceExtX},h.prototype.setDeviceExtX=function(i){this.ldeviceExtX=i},h.prototype.getDeviceExtY=function(){return this.ldeviceExtY},h.prototype.setDeviceExtY=function(i){this.ldeviceExtY=i},h.prototype.transformX=function(i){var r=0,a=this.lworldExtX;return a!=0&&(r=this.ldeviceOrgX+(i-this.lworldOrgX)*this.ldeviceExtX/a),r},h.prototype.transformY=function(i){var r=0,a=this.lworldExtY;return a!=0&&(r=this.ldeviceOrgY+(i-this.lworldOrgY)*this.ldeviceExtY/a),r},h.prototype.inverseTransformX=function(i){var r=0,a=this.ldeviceExtX;return a!=0&&(r=this.lworldOrgX+(i-this.ldeviceOrgX)*this.lworldExtX/a),r},h.prototype.inverseTransformY=function(i){var r=0,a=this.ldeviceExtY;return a!=0&&(r=this.lworldOrgY+(i-this.ldeviceOrgY)*this.lworldExtY/a),r},h.prototype.inverseTransformPoint=function(i){var r=new v(this.inverseTransformX(i.x),this.inverseTransformY(i.y));return r},A.exports=h}),(function(A,G,N){function v(t){if(Array.isArray(t)){for(var s=0,o=Array(t.length);si.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*i.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(t-i.ADAPTATION_LOWER_NODE_LIMIT)/(i.ADAPTATION_UPPER_NODE_LIMIT-i.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-i.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=i.MAX_NODE_DISPLACEMENT_INCREMENTAL):(t>i.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(i.COOLING_ADAPTATION_FACTOR,1-(t-i.ADAPTATION_LOWER_NODE_LIMIT)/(i.ADAPTATION_UPPER_NODE_LIMIT-i.ADAPTATION_LOWER_NODE_LIMIT)*(1-i.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=i.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*i.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},e.prototype.calcSpringForces=function(){for(var t=this.getAllEdges(),s,o=0;o0&&arguments[0]!==void 0?arguments[0]:!0,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,o,c,l,T,g=this.getAllNodes(),d;if(this.useFRGridVariant)for(this.totalIterations%i.GRID_CALCULATION_CHECK_PERIOD==1&&t&&this.updateGrid(),d=new Set,o=0;oC||d>C)&&(t.gravitationForceX=-this.gravityConstant*l,t.gravitationForceY=-this.gravityConstant*T)):(C=s.getEstimatedSize()*this.compoundGravityRangeFactor,(g>C||d>C)&&(t.gravitationForceX=-this.gravityConstant*l*this.compoundGravityConstant,t.gravitationForceY=-this.gravityConstant*T*this.compoundGravityConstant))},e.prototype.isConverged=function(){var t,s=!1;return this.totalIterations>this.maxIterations/3&&(s=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),t=this.totalDisplacement=g.length||C>=g[0].length)){for(var S=0;Se}}]),a})();A.exports=r}),(function(A,G,N){function v(){}v.svd=function(h){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=h.length,this.n=h[0].length;var i=Math.min(this.m,this.n);this.s=(function(Tt){for(var Ct=[];Tt-- >0;)Ct.push(0);return Ct})(Math.min(this.m+1,this.n)),this.U=(function(Tt){var Ct=function Bt(bt){if(bt.length==0)return 0;for(var zt=[],St=0;St0;)Ct.push(0);return Ct})(this.n),a=(function(Tt){for(var Ct=[];Tt-- >0;)Ct.push(0);return Ct})(this.m),f=!0,e=Math.min(this.m-1,this.n),u=Math.max(0,Math.min(this.n-2,this.m)),t=0;t=0;m--)if(this.s[m]!==0){for(var y=m+1;y=0;z--){if((function(Tt,Ct){return Tt&&Ct})(z0;){var J=void 0,It=void 0;for(J=n-2;J>=-1&&J!==-1;J--)if(Math.abs(r[J])<=ht+tt*(Math.abs(this.s[J])+Math.abs(this.s[J+1]))){r[J]=0;break}if(J===n-2)It=4;else{var Nt=void 0;for(Nt=n-1;Nt>=J&&Nt!==J;Nt--){var vt=(Nt!==n?Math.abs(r[Nt]):0)+(Nt!==J+1?Math.abs(r[Nt-1]):0);if(Math.abs(this.s[Nt])<=ht+tt*vt){this.s[Nt]=0;break}}Nt===J?It=3:Nt===n-1?It=1:(It=2,J=Nt)}switch(J++,It){case 1:{var it=r[n-2];r[n-2]=0;for(var ut=n-2;ut>=J;ut--){var Et=v.hypot(this.s[ut],it),wt=this.s[ut]/Et,Ot=it/Et;this.s[ut]=Et,ut!==J&&(it=-Ot*r[ut-1],r[ut-1]=wt*r[ut-1]);for(var mt=0;mt=this.s[J+1]);){var Lt=this.s[J];if(this.s[J]=this.s[J+1],this.s[J+1]=Lt,JMath.abs(i)?(r=i/h,r=Math.abs(h)*Math.sqrt(1+r*r)):i!=0?(r=h/i,r=Math.abs(i)*Math.sqrt(1+r*r)):r=0,r},A.exports=v}),(function(A,G,N){var v=(function(){function r(a,f){for(var e=0;e2&&arguments[2]!==void 0?arguments[2]:1,u=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,t=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;h(this,r),this.sequence1=a,this.sequence2=f,this.match_score=e,this.mismatch_penalty=u,this.gap_penalty=t,this.iMax=a.length+1,this.jMax=f.length+1,this.grid=new Array(this.iMax);for(var s=0;s=0;a--){var f=this.listeners[a];f.event===i&&f.callback===r&&this.listeners.splice(a,1)}},h.emit=function(i,r){for(var a=0;a{var G={45:((i,r,a)=>{var f={};f.layoutBase=a(551),f.CoSEConstants=a(806),f.CoSEEdge=a(767),f.CoSEGraph=a(880),f.CoSEGraphManager=a(578),f.CoSELayout=a(765),f.CoSENode=a(991),f.ConstraintHandler=a(902),i.exports=f}),806:((i,r,a)=>{var f=a(551).FDLayoutConstants;function e(){}for(var u in f)e[u]=f[u];e.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,e.DEFAULT_RADIAL_SEPARATION=f.DEFAULT_EDGE_LENGTH,e.DEFAULT_COMPONENT_SEPERATION=60,e.TILE=!0,e.TILING_PADDING_VERTICAL=10,e.TILING_PADDING_HORIZONTAL=10,e.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,e.ENFORCE_CONSTRAINTS=!0,e.APPLY_LAYOUT=!0,e.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,e.TREE_REDUCTION_ON_INCREMENTAL=!0,e.PURE_INCREMENTAL=e.DEFAULT_INCREMENTAL,i.exports=e}),767:((i,r,a)=>{var f=a(551).FDLayoutEdge;function e(t,s,o){f.call(this,t,s,o)}e.prototype=Object.create(f.prototype);for(var u in f)e[u]=f[u];i.exports=e}),880:((i,r,a)=>{var f=a(551).LGraph;function e(t,s,o){f.call(this,t,s,o)}e.prototype=Object.create(f.prototype);for(var u in f)e[u]=f[u];i.exports=e}),578:((i,r,a)=>{var f=a(551).LGraphManager;function e(t){f.call(this,t)}e.prototype=Object.create(f.prototype);for(var u in f)e[u]=f[u];i.exports=e}),765:((i,r,a)=>{var f=a(551).FDLayout,e=a(578),u=a(880),t=a(991),s=a(767),o=a(806),c=a(902),l=a(551).FDLayoutConstants,T=a(551).LayoutConstants,g=a(551).Point,d=a(551).PointD,C=a(551).DimensionD,S=a(551).Layout,w=a(551).Integer,P=a(551).IGeometry,B=a(551).LGraph,U=a(551).Transform,V=a(551).LinkedList;function M(){f.call(this),this.toBeTiled={},this.constraints={}}M.prototype=Object.create(f.prototype);for(var _ in f)M[_]=f[_];M.prototype.newGraphManager=function(){var n=new e(this);return this.graphManager=n,n},M.prototype.newGraph=function(n){return new u(null,this.graphManager,n)},M.prototype.newNode=function(n){return new t(this.graphManager,n)},M.prototype.newEdge=function(n){return new s(null,null,n)},M.prototype.initParameters=function(){f.prototype.initParameters.call(this,arguments),this.isSubLayout||(o.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=o.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=o.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=l.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=l.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=l.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},M.prototype.initSpringEmbedder=function(){f.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/l.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},M.prototype.layout=function(){var n=T.DEFAULT_CREATE_BENDS_AS_NEEDED;return n&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},M.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(o.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),p=this.nodesWithGravity.filter(function(I){return E.has(I)});this.graphManager.setAllNodesToApplyGravitation(p)}}else{var n=this.getFlatForest();if(n.length>0)this.positionNodesRadially(n);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),p=this.nodesWithGravity.filter(function(m){return E.has(m)});this.graphManager.setAllNodesToApplyGravitation(p),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(c.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),o.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},M.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%l.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var n=new Set(this.getAllNodes()),E=this.nodesWithGravity.filter(function(y){return n.has(y)});this.graphManager.setAllNodesToApplyGravitation(E),this.graphManager.updateBounds(),this.updateGrid(),o.PURE_INCREMENTAL?this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),o.PURE_INCREMENTAL?this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var p=!this.isTreeGrowing&&!this.isGrowthFinished,m=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(p,m),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},M.prototype.getPositionsData=function(){for(var n=this.graphManager.getAllNodes(),E={},p=0;p0&&this.updateDisplacements();for(var p=0;p0&&(m.fixedNodeWeight=I)}}if(this.constraints.relativePlacementConstraint){var O=new Map,R=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(D){n.fixedNodesOnHorizontal.add(D),n.fixedNodesOnVertical.add(D)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var W=this.constraints.alignmentConstraint.vertical,p=0;p=2*D.length/3;tt--)H=Math.floor(Math.random()*(tt+1)),k=D[tt],D[tt]=D[H],D[H]=k;return D},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(D){if(D.left){var H=O.has(D.left)?O.get(D.left):D.left,k=O.has(D.right)?O.get(D.right):D.right;n.nodesInRelativeHorizontal.includes(H)||(n.nodesInRelativeHorizontal.push(H),n.nodeToRelativeConstraintMapHorizontal.set(H,[]),n.dummyToNodeForVerticalAlignment.has(H)?n.nodeToTempPositionMapHorizontal.set(H,n.idToNodeMap.get(n.dummyToNodeForVerticalAlignment.get(H)[0]).getCenterX()):n.nodeToTempPositionMapHorizontal.set(H,n.idToNodeMap.get(H).getCenterX())),n.nodesInRelativeHorizontal.includes(k)||(n.nodesInRelativeHorizontal.push(k),n.nodeToRelativeConstraintMapHorizontal.set(k,[]),n.dummyToNodeForVerticalAlignment.has(k)?n.nodeToTempPositionMapHorizontal.set(k,n.idToNodeMap.get(n.dummyToNodeForVerticalAlignment.get(k)[0]).getCenterX()):n.nodeToTempPositionMapHorizontal.set(k,n.idToNodeMap.get(k).getCenterX())),n.nodeToRelativeConstraintMapHorizontal.get(H).push({right:k,gap:D.gap}),n.nodeToRelativeConstraintMapHorizontal.get(k).push({left:H,gap:D.gap})}else{var tt=R.has(D.top)?R.get(D.top):D.top,ht=R.has(D.bottom)?R.get(D.bottom):D.bottom;n.nodesInRelativeVertical.includes(tt)||(n.nodesInRelativeVertical.push(tt),n.nodeToRelativeConstraintMapVertical.set(tt,[]),n.dummyToNodeForHorizontalAlignment.has(tt)?n.nodeToTempPositionMapVertical.set(tt,n.idToNodeMap.get(n.dummyToNodeForHorizontalAlignment.get(tt)[0]).getCenterY()):n.nodeToTempPositionMapVertical.set(tt,n.idToNodeMap.get(tt).getCenterY())),n.nodesInRelativeVertical.includes(ht)||(n.nodesInRelativeVertical.push(ht),n.nodeToRelativeConstraintMapVertical.set(ht,[]),n.dummyToNodeForHorizontalAlignment.has(ht)?n.nodeToTempPositionMapVertical.set(ht,n.idToNodeMap.get(n.dummyToNodeForHorizontalAlignment.get(ht)[0]).getCenterY()):n.nodeToTempPositionMapVertical.set(ht,n.idToNodeMap.get(ht).getCenterY())),n.nodeToRelativeConstraintMapVertical.get(tt).push({bottom:ht,gap:D.gap}),n.nodeToRelativeConstraintMapVertical.get(ht).push({top:tt,gap:D.gap})}});else{var Q=new Map,z=new Map;this.constraints.relativePlacementConstraint.forEach(function(D){if(D.left){var H=O.has(D.left)?O.get(D.left):D.left,k=O.has(D.right)?O.get(D.right):D.right;Q.has(H)?Q.get(H).push(k):Q.set(H,[k]),Q.has(k)?Q.get(k).push(H):Q.set(k,[H])}else{var tt=R.has(D.top)?R.get(D.top):D.top,ht=R.has(D.bottom)?R.get(D.bottom):D.bottom;z.has(tt)?z.get(tt).push(ht):z.set(tt,[ht]),z.has(ht)?z.get(ht).push(tt):z.set(ht,[tt])}});var X=function(H,k){var tt=[],ht=[],J=new V,It=new Set,Nt=0;return H.forEach(function(vt,it){if(!It.has(it)){tt[Nt]=[],ht[Nt]=!1;var ut=it;for(J.push(ut),It.add(ut),tt[Nt].push(ut);J.length!=0;){ut=J.shift(),k.has(ut)&&(ht[Nt]=!0);var Et=H.get(ut);Et.forEach(function(wt){It.has(wt)||(J.push(wt),It.add(wt),tt[Nt].push(wt))})}Nt++}}),{components:tt,isFixed:ht}},rt=X(Q,n.fixedNodesOnHorizontal);this.componentsOnHorizontal=rt.components,this.fixedComponentsOnHorizontal=rt.isFixed;var $=X(z,n.fixedNodesOnVertical);this.componentsOnVertical=$.components,this.fixedComponentsOnVertical=$.isFixed}}},M.prototype.updateDisplacements=function(){var n=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function($){var D=n.idToNodeMap.get($.nodeId);D.displacementX=0,D.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var E=this.constraints.alignmentConstraint.vertical,p=0;p1){var R;for(R=0;Rm&&(m=Math.floor(O.y)),I=Math.floor(O.x+o.DEFAULT_COMPONENT_SEPERATION)}this.transform(new d(T.WORLD_CENTER_X-O.x/2,T.WORLD_CENTER_Y-O.y/2))},M.radialLayout=function(n,E,p){var m=Math.max(this.maxDiagonalInTree(n),o.DEFAULT_RADIAL_SEPARATION);M.branchRadialLayout(E,null,0,359,0,m);var y=B.calculateBounds(n),I=new U;I.setDeviceOrgX(y.getMinX()),I.setDeviceOrgY(y.getMinY()),I.setWorldOrgX(p.x),I.setWorldOrgY(p.y);for(var O=0;O1;){var k=H[0];H.splice(0,1);var tt=z.indexOf(k);tt>=0&&z.splice(tt,1),$--,X--}E!=null?D=(z.indexOf(H[0])+1)%$:D=0;for(var ht=Math.abs(m-p)/X,J=D;rt!=X;J=++J%$){var It=z[J].getOtherEnd(n);if(It!=E){var Nt=(p+rt*ht)%360,vt=(Nt+ht)%360;M.branchRadialLayout(It,n,Nt,vt,y+I,I),rt++}}},M.maxDiagonalInTree=function(n){for(var E=w.MIN_VALUE,p=0;pE&&(E=y)}return E},M.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},M.prototype.groupZeroDegreeMembers=function(){var n=this,E={};this.memberGroups={},this.idToDummyNode={};for(var p=[],m=this.graphManager.getAllNodes(),y=0;y"u"&&(E[R]=[]),E[R]=E[R].concat(I)}Object.keys(E).forEach(function(W){if(E[W].length>1){var x="DummyCompound_"+W;n.memberGroups[x]=E[W];var Q=E[W][0].getParent(),z=new t(n.graphManager);z.id=x,z.paddingLeft=Q.paddingLeft||0,z.paddingRight=Q.paddingRight||0,z.paddingBottom=Q.paddingBottom||0,z.paddingTop=Q.paddingTop||0,n.idToDummyNode[x]=z;var X=n.getGraphManager().add(n.newGraph(),z),rt=Q.getChild();rt.add(z);for(var $=0;$y?(m.rect.x-=(m.labelWidth-y)/2,m.setWidth(m.labelWidth),m.labelMarginLeft=(m.labelWidth-y)/2):m.labelPosHorizontal=="right"&&m.setWidth(y+m.labelWidth)),m.labelHeight&&(m.labelPosVertical=="top"?(m.rect.y-=m.labelHeight,m.setHeight(I+m.labelHeight),m.labelMarginTop=m.labelHeight):m.labelPosVertical=="center"&&m.labelHeight>I?(m.rect.y-=(m.labelHeight-I)/2,m.setHeight(m.labelHeight),m.labelMarginTop=(m.labelHeight-I)/2):m.labelPosVertical=="bottom"&&m.setHeight(I+m.labelHeight))}})},M.prototype.repopulateCompounds=function(){for(var n=this.compoundOrder.length-1;n>=0;n--){var E=this.compoundOrder[n],p=E.id,m=E.paddingLeft,y=E.paddingTop,I=E.labelMarginLeft,O=E.labelMarginTop;this.adjustLocations(this.tiledMemberPack[p],E.rect.x,E.rect.y,m,y,I,O)}},M.prototype.repopulateZeroDegreeMembers=function(){var n=this,E=this.tiledZeroDegreePack;Object.keys(E).forEach(function(p){var m=n.idToDummyNode[p],y=m.paddingLeft,I=m.paddingTop,O=m.labelMarginLeft,R=m.labelMarginTop;n.adjustLocations(E[p],m.rect.x,m.rect.y,y,I,O,R)})},M.prototype.getToBeTiled=function(n){var E=n.id;if(this.toBeTiled[E]!=null)return this.toBeTiled[E];var p=n.getChild();if(p==null)return this.toBeTiled[E]=!1,!1;for(var m=p.getNodes(),y=0;y0)return this.toBeTiled[E]=!1,!1;if(I.getChild()==null){this.toBeTiled[I.id]=!1;continue}if(!this.getToBeTiled(I))return this.toBeTiled[E]=!1,!1}return this.toBeTiled[E]=!0,!0},M.prototype.getNodeDegree=function(n){n.id;for(var E=n.getEdges(),p=0,m=0;mQ&&(Q=X.rect.height)}p+=Q+n.verticalPadding}},M.prototype.tileCompoundMembers=function(n,E){var p=this;this.tiledMemberPack=[],Object.keys(n).forEach(function(m){var y=E[m];if(p.tiledMemberPack[m]=p.tileNodes(n[m],y.paddingLeft+y.paddingRight),y.rect.width=p.tiledMemberPack[m].width,y.rect.height=p.tiledMemberPack[m].height,y.setCenter(p.tiledMemberPack[m].centerX,p.tiledMemberPack[m].centerY),y.labelMarginLeft=0,y.labelMarginTop=0,o.NODE_DIMENSIONS_INCLUDE_LABELS){var I=y.rect.width,O=y.rect.height;y.labelWidth&&(y.labelPosHorizontal=="left"?(y.rect.x-=y.labelWidth,y.setWidth(I+y.labelWidth),y.labelMarginLeft=y.labelWidth):y.labelPosHorizontal=="center"&&y.labelWidth>I?(y.rect.x-=(y.labelWidth-I)/2,y.setWidth(y.labelWidth),y.labelMarginLeft=(y.labelWidth-I)/2):y.labelPosHorizontal=="right"&&y.setWidth(I+y.labelWidth)),y.labelHeight&&(y.labelPosVertical=="top"?(y.rect.y-=y.labelHeight,y.setHeight(O+y.labelHeight),y.labelMarginTop=y.labelHeight):y.labelPosVertical=="center"&&y.labelHeight>O?(y.rect.y-=(y.labelHeight-O)/2,y.setHeight(y.labelHeight),y.labelMarginTop=(y.labelHeight-O)/2):y.labelPosVertical=="bottom"&&y.setHeight(O+y.labelHeight))}})},M.prototype.tileNodes=function(n,E){var p=this.tileNodesByFavoringDim(n,E,!0),m=this.tileNodesByFavoringDim(n,E,!1),y=this.getOrgRatio(p),I=this.getOrgRatio(m),O;return IR&&(R=$.getWidth())});var W=I/y,x=O/y,Q=Math.pow(p-m,2)+4*(W+m)*(x+p)*y,z=(m-p+Math.sqrt(Q))/(2*(W+m)),X;E?(X=Math.ceil(z),X==z&&X++):X=Math.floor(z);var rt=X*(W+m)-m;return R>rt&&(rt=R),rt+=m*2,rt},M.prototype.tileNodesByFavoringDim=function(n,E,p){var m=o.TILING_PADDING_VERTICAL,y=o.TILING_PADDING_HORIZONTAL,I=o.TILING_COMPARE_BY,O={rows:[],rowWidth:[],rowHeight:[],width:0,height:E,verticalPadding:m,horizontalPadding:y,centerX:0,centerY:0};I&&(O.idealRowWidth=this.calcIdealRowWidth(n,p));var R=function(D){return D.rect.width*D.rect.height},W=function(D,H){return R(H)-R(D)};n.sort(function($,D){var H=W;return O.idealRowWidth?(H=I,H($.id,D.id)):H($,D)});for(var x=0,Q=0,z=0;z0&&(O+=n.horizontalPadding),n.rowWidth[p]=O,n.width0&&(R+=n.verticalPadding);var W=0;R>n.rowHeight[p]&&(W=n.rowHeight[p],n.rowHeight[p]=R,W=n.rowHeight[p]-W),n.height+=W,n.rows[p].push(E)},M.prototype.getShortestRowIndex=function(n){for(var E=-1,p=Number.MAX_VALUE,m=0;mp&&(E=m,p=n.rowWidth[m]);return E},M.prototype.canAddHorizontal=function(n,E,p){if(n.idealRowWidth){var m=n.rows.length-1,y=n.rowWidth[m];return y+E+n.horizontalPadding<=n.idealRowWidth}var I=this.getShortestRowIndex(n);if(I<0)return!0;var O=n.rowWidth[I];if(O+n.horizontalPadding+E<=n.width)return!0;var R=0;n.rowHeight[I]0&&(R=p+n.verticalPadding-n.rowHeight[I]);var W;n.width-O>=E+n.horizontalPadding?W=(n.height+R)/(O+E+n.horizontalPadding):W=(n.height+R)/n.width,R=p+n.verticalPadding;var x;return n.widthI&&E!=p){m.splice(-1,1),n.rows[p].push(y),n.rowWidth[E]=n.rowWidth[E]-I,n.rowWidth[p]=n.rowWidth[p]+I,n.width=n.rowWidth[instance.getLongestRowIndex(n)];for(var O=Number.MIN_VALUE,R=0;RO&&(O=m[R].height);E>0&&(O+=n.verticalPadding);var W=n.rowHeight[E]+n.rowHeight[p];n.rowHeight[E]=O,n.rowHeight[p]0)for(var rt=y;rt<=I;rt++)X[0]+=this.grid[rt][O-1].length+this.grid[rt][O].length-1;if(I0)for(var rt=O;rt<=R;rt++)X[3]+=this.grid[y-1][rt].length+this.grid[y][rt].length-1;for(var $=w.MAX_VALUE,D,H,k=0;k{var f=a(551).FDLayoutNode,e=a(551).IMath;function u(s,o,c,l){f.call(this,s,o,c,l)}u.prototype=Object.create(f.prototype);for(var t in f)u[t]=f[t];u.prototype.calculateDisplacement=function(){var s=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=s.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=s.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=s.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=s.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>s.coolingFactor*s.maxNodeDisplacement&&(this.displacementX=s.coolingFactor*s.maxNodeDisplacement*e.sign(this.displacementX)),Math.abs(this.displacementY)>s.coolingFactor*s.maxNodeDisplacement&&(this.displacementY=s.coolingFactor*s.maxNodeDisplacement*e.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},u.prototype.propogateDisplacementToChildren=function(s,o){for(var c=this.getChild().getNodes(),l,T=0;T{function f(c){if(Array.isArray(c)){for(var l=0,T=Array(c.length);l0){var Lt=0;ot.forEach(function(st){Z=="horizontal"?(et.set(st,g.has(st)?d[g.get(st)]:q.get(st)),Lt+=et.get(st)):(et.set(st,g.has(st)?C[g.get(st)]:q.get(st)),Lt+=et.get(st))}),Lt=Lt/ot.length,lt.forEach(function(st){K.has(st)||et.set(st,Lt)})}else{var ft=0;lt.forEach(function(st){Z=="horizontal"?ft+=g.has(st)?d[g.get(st)]:q.get(st):ft+=g.has(st)?C[g.get(st)]:q.get(st)}),ft=ft/lt.length,lt.forEach(function(st){et.set(st,ft)})}});for(var At=function(){var ot=dt.shift(),Lt=Y.get(ot);Lt.forEach(function(ft){if(et.get(ft.id)st&&(st=kt),KtXt&&(Xt=Kt)}}catch(ee){Ct=!0,Bt=ee}finally{try{!Tt&&bt.return&&bt.return()}finally{if(Ct)throw Bt}}var fe=(Lt+st)/2-(ft+Xt)/2,Qt=!0,jt=!1,_t=void 0;try{for(var Jt=lt[Symbol.iterator](),ne;!(Qt=(ne=Jt.next()).done);Qt=!0){var te=ne.value;et.set(te,et.get(te)+fe)}}catch(ee){jt=!0,_t=ee}finally{try{!Qt&&Jt.return&&Jt.return()}finally{if(jt)throw _t}}})}return et},_=function(Y){var Z=0,K=0,q=0,at=0;if(Y.forEach(function(j){j.left?d[g.get(j.left)]-d[g.get(j.right)]>=0?Z++:K++:C[g.get(j.top)]-C[g.get(j.bottom)]>=0?q++:at++}),Z>K&&q>at)for(var ct=0;ctK)for(var nt=0;ntat)for(var et=0;et1)l.fixedNodeConstraint.forEach(function(F,Y){m[Y]=[F.position.x,F.position.y],y[Y]=[d[g.get(F.nodeId)],C[g.get(F.nodeId)]]}),I=!0;else if(l.alignmentConstraint)(function(){var F=0;if(l.alignmentConstraint.vertical){for(var Y=l.alignmentConstraint.vertical,Z=function(et){var j=new Set;Y[et].forEach(function(pt){j.add(pt)});var dt=new Set([].concat(f(j)).filter(function(pt){return R.has(pt)})),At=void 0;dt.size>0?At=d[g.get(dt.values().next().value)]:At=V(j).x,Y[et].forEach(function(pt){m[F]=[At,C[g.get(pt)]],y[F]=[d[g.get(pt)],C[g.get(pt)]],F++})},K=0;K0?At=d[g.get(dt.values().next().value)]:At=V(j).y,q[et].forEach(function(pt){m[F]=[d[g.get(pt)],At],y[F]=[d[g.get(pt)],C[g.get(pt)]],F++})},ct=0;ctz&&(z=Q[rt].length,X=rt);if(z0){var mt={x:0,y:0};l.fixedNodeConstraint.forEach(function(F,Y){var Z={x:d[g.get(F.nodeId)],y:C[g.get(F.nodeId)]},K=F.position,q=U(K,Z);mt.x+=q.x,mt.y+=q.y}),mt.x/=l.fixedNodeConstraint.length,mt.y/=l.fixedNodeConstraint.length,d.forEach(function(F,Y){d[Y]+=mt.x}),C.forEach(function(F,Y){C[Y]+=mt.y}),l.fixedNodeConstraint.forEach(function(F){d[g.get(F.nodeId)]=F.position.x,C[g.get(F.nodeId)]=F.position.y})}if(l.alignmentConstraint){if(l.alignmentConstraint.vertical)for(var Dt=l.alignmentConstraint.vertical,Rt=function(Y){var Z=new Set;Dt[Y].forEach(function(at){Z.add(at)});var K=new Set([].concat(f(Z)).filter(function(at){return R.has(at)})),q=void 0;K.size>0?q=d[g.get(K.values().next().value)]:q=V(Z).x,Z.forEach(function(at){R.has(at)||(d[g.get(at)]=q)})},Ht=0;Ht0?q=C[g.get(K.values().next().value)]:q=V(Z).y,Z.forEach(function(at){R.has(at)||(C[g.get(at)]=q)})},Ft=0;Ft{i.exports=A})},N={};function v(i){var r=N[i];if(r!==void 0)return r.exports;var a=N[i]={exports:{}};return G[i](a,a.exports,v),a.exports}var h=v(45);return h})()})})(he)),he.exports}var pr=se.exports,De;function yr(){return De||(De=1,(function(L,b){(function(G,N){L.exports=N(vr())})(pr,function(A){return(()=>{var G={658:(i=>{i.exports=Object.assign!=null?Object.assign.bind(Object):function(r){for(var a=arguments.length,f=Array(a>1?a-1:0),e=1;e{var f=(function(){function t(s,o){var c=[],l=!0,T=!1,g=void 0;try{for(var d=s[Symbol.iterator](),C;!(l=(C=d.next()).done)&&(c.push(C.value),!(o&&c.length===o));l=!0);}catch(S){T=!0,g=S}finally{try{!l&&d.return&&d.return()}finally{if(T)throw g}}return c}return function(s,o){if(Array.isArray(s))return s;if(Symbol.iterator in Object(s))return t(s,o);throw new TypeError("Invalid attempt to destructure non-iterable instance")}})(),e=a(140).layoutBase.LinkedList,u={};u.getTopMostNodes=function(t){for(var s={},o=0;o0&&I.merge(x)});for(var O=0;O1){C=g[0],S=C.connectedEdges().length,g.forEach(function(y){y.connectedEdges().length0&&c.set("dummy"+(c.size+1),B),U},u.relocateComponent=function(t,s,o){if(!o.fixedNodeConstraint){var c=Number.POSITIVE_INFINITY,l=Number.NEGATIVE_INFINITY,T=Number.POSITIVE_INFINITY,g=Number.NEGATIVE_INFINITY;if(o.quality=="draft"){var d=!0,C=!1,S=void 0;try{for(var w=s.nodeIndexes[Symbol.iterator](),P;!(d=(P=w.next()).done);d=!0){var B=P.value,U=f(B,2),V=U[0],M=U[1],_=o.cy.getElementById(V);if(_){var n=_.boundingBox(),E=s.xCoords[M]-n.w/2,p=s.xCoords[M]+n.w/2,m=s.yCoords[M]-n.h/2,y=s.yCoords[M]+n.h/2;El&&(l=p),mg&&(g=y)}}}catch(x){C=!0,S=x}finally{try{!d&&w.return&&w.return()}finally{if(C)throw S}}var I=t.x-(l+c)/2,O=t.y-(g+T)/2;s.xCoords=s.xCoords.map(function(x){return x+I}),s.yCoords=s.yCoords.map(function(x){return x+O})}else{Object.keys(s).forEach(function(x){var Q=s[x],z=Q.getRect().x,X=Q.getRect().x+Q.getRect().width,rt=Q.getRect().y,$=Q.getRect().y+Q.getRect().height;zl&&(l=X),rtg&&(g=$)});var R=t.x-(l+c)/2,W=t.y-(g+T)/2;Object.keys(s).forEach(function(x){var Q=s[x];Q.setCenter(Q.getCenterX()+R,Q.getCenterY()+W)})}}},u.calcBoundingBox=function(t,s,o,c){for(var l=Number.MAX_SAFE_INTEGER,T=Number.MIN_SAFE_INTEGER,g=Number.MAX_SAFE_INTEGER,d=Number.MIN_SAFE_INTEGER,C=void 0,S=void 0,w=void 0,P=void 0,B=t.descendants().not(":parent"),U=B.length,V=0;VC&&(l=C),Tw&&(g=w),d{var f=a(548),e=a(140).CoSELayout,u=a(140).CoSENode,t=a(140).layoutBase.PointD,s=a(140).layoutBase.DimensionD,o=a(140).layoutBase.LayoutConstants,c=a(140).layoutBase.FDLayoutConstants,l=a(140).CoSEConstants,T=function(d,C){var S=d.cy,w=d.eles,P=w.nodes(),B=w.edges(),U=void 0,V=void 0,M=void 0,_={};d.randomize&&(U=C.nodeIndexes,V=C.xCoords,M=C.yCoords);var n=function(x){return typeof x=="function"},E=function(x,Q){return n(x)?x(Q):x},p=f.calcParentsWithoutChildren(S,w),m=function W(x,Q,z,X){for(var rt=Q.length,$=0;$0){var J=void 0;J=z.getGraphManager().add(z.newGraph(),k),W(J,H,z,X)}}},y=function(x,Q,z){for(var X=0,rt=0,$=0;$0?l.DEFAULT_EDGE_LENGTH=c.DEFAULT_EDGE_LENGTH=X/rt:n(d.idealEdgeLength)?l.DEFAULT_EDGE_LENGTH=c.DEFAULT_EDGE_LENGTH=50:l.DEFAULT_EDGE_LENGTH=c.DEFAULT_EDGE_LENGTH=d.idealEdgeLength,l.MIN_REPULSION_DIST=c.MIN_REPULSION_DIST=c.DEFAULT_EDGE_LENGTH/10,l.DEFAULT_RADIAL_SEPARATION=c.DEFAULT_EDGE_LENGTH)},I=function(x,Q){Q.fixedNodeConstraint&&(x.constraints.fixedNodeConstraint=Q.fixedNodeConstraint),Q.alignmentConstraint&&(x.constraints.alignmentConstraint=Q.alignmentConstraint),Q.relativePlacementConstraint&&(x.constraints.relativePlacementConstraint=Q.relativePlacementConstraint)};d.nestingFactor!=null&&(l.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=c.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=d.nestingFactor),d.gravity!=null&&(l.DEFAULT_GRAVITY_STRENGTH=c.DEFAULT_GRAVITY_STRENGTH=d.gravity),d.numIter!=null&&(l.MAX_ITERATIONS=c.MAX_ITERATIONS=d.numIter),d.gravityRange!=null&&(l.DEFAULT_GRAVITY_RANGE_FACTOR=c.DEFAULT_GRAVITY_RANGE_FACTOR=d.gravityRange),d.gravityCompound!=null&&(l.DEFAULT_COMPOUND_GRAVITY_STRENGTH=c.DEFAULT_COMPOUND_GRAVITY_STRENGTH=d.gravityCompound),d.gravityRangeCompound!=null&&(l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=c.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=d.gravityRangeCompound),d.initialEnergyOnIncremental!=null&&(l.DEFAULT_COOLING_FACTOR_INCREMENTAL=c.DEFAULT_COOLING_FACTOR_INCREMENTAL=d.initialEnergyOnIncremental),d.tilingCompareBy!=null&&(l.TILING_COMPARE_BY=d.tilingCompareBy),d.quality=="proof"?o.QUALITY=2:o.QUALITY=0,l.NODE_DIMENSIONS_INCLUDE_LABELS=c.NODE_DIMENSIONS_INCLUDE_LABELS=o.NODE_DIMENSIONS_INCLUDE_LABELS=d.nodeDimensionsIncludeLabels,l.DEFAULT_INCREMENTAL=c.DEFAULT_INCREMENTAL=o.DEFAULT_INCREMENTAL=!d.randomize,l.ANIMATE=c.ANIMATE=o.ANIMATE=d.animate,l.TILE=d.tile,l.TILING_PADDING_VERTICAL=typeof d.tilingPaddingVertical=="function"?d.tilingPaddingVertical.call():d.tilingPaddingVertical,l.TILING_PADDING_HORIZONTAL=typeof d.tilingPaddingHorizontal=="function"?d.tilingPaddingHorizontal.call():d.tilingPaddingHorizontal,l.DEFAULT_INCREMENTAL=c.DEFAULT_INCREMENTAL=o.DEFAULT_INCREMENTAL=!0,l.PURE_INCREMENTAL=!d.randomize,o.DEFAULT_UNIFORM_LEAF_NODE_SIZES=d.uniformNodeDimensions,d.step=="transformed"&&(l.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,l.ENFORCE_CONSTRAINTS=!1,l.APPLY_LAYOUT=!1),d.step=="enforced"&&(l.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,l.ENFORCE_CONSTRAINTS=!0,l.APPLY_LAYOUT=!1),d.step=="cose"&&(l.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,l.ENFORCE_CONSTRAINTS=!1,l.APPLY_LAYOUT=!0),d.step=="all"&&(d.randomize?l.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:l.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,l.ENFORCE_CONSTRAINTS=!0,l.APPLY_LAYOUT=!0),d.fixedNodeConstraint||d.alignmentConstraint||d.relativePlacementConstraint?l.TREE_REDUCTION_ON_INCREMENTAL=!1:l.TREE_REDUCTION_ON_INCREMENTAL=!0;var O=new e,R=O.newGraphManager();return m(R.addRoot(),f.getTopMostNodes(P),O,d),y(O,R,B),I(O,d),O.runLayout(),_};i.exports={coseLayout:T}}),212:((i,r,a)=>{var f=(function(){function d(C,S){for(var w=0;w0)if(p){var I=t.getTopMostNodes(w.eles.nodes());if(M=t.connectComponents(P,w.eles,I),M.forEach(function(vt){var it=vt.boundingBox();_.push({x:it.x1+it.w/2,y:it.y1+it.h/2})}),w.randomize&&M.forEach(function(vt){w.eles=vt,U.push(o(w))}),w.quality=="default"||w.quality=="proof"){var O=P.collection();if(w.tile){var R=new Map,W=[],x=[],Q=0,z={nodeIndexes:R,xCoords:W,yCoords:x},X=[];if(M.forEach(function(vt,it){vt.edges().length==0&&(vt.nodes().forEach(function(ut,Et){O.merge(vt.nodes()[Et]),ut.isParent()||(z.nodeIndexes.set(vt.nodes()[Et].id(),Q++),z.xCoords.push(vt.nodes()[0].position().x),z.yCoords.push(vt.nodes()[0].position().y))}),X.push(it))}),O.length>1){var rt=O.boundingBox();_.push({x:rt.x1+rt.w/2,y:rt.y1+rt.h/2}),M.push(O),U.push(z);for(var $=X.length-1;$>=0;$--)M.splice(X[$],1),U.splice(X[$],1),_.splice(X[$],1)}}M.forEach(function(vt,it){w.eles=vt,V.push(l(w,U[it])),t.relocateComponent(_[it],V[it],w)})}else M.forEach(function(vt,it){t.relocateComponent(_[it],U[it],w)});var D=new Set;if(M.length>1){var H=[],k=B.filter(function(vt){return vt.css("display")=="none"});M.forEach(function(vt,it){var ut=void 0;if(w.quality=="draft"&&(ut=U[it].nodeIndexes),vt.nodes().not(k).length>0){var Et={};Et.edges=[],Et.nodes=[];var wt=void 0;vt.nodes().not(k).forEach(function(Ot){if(w.quality=="draft")if(!Ot.isParent())wt=ut.get(Ot.id()),Et.nodes.push({x:U[it].xCoords[wt]-Ot.boundingbox().w/2,y:U[it].yCoords[wt]-Ot.boundingbox().h/2,width:Ot.boundingbox().w,height:Ot.boundingbox().h});else{var mt=t.calcBoundingBox(Ot,U[it].xCoords,U[it].yCoords,ut);Et.nodes.push({x:mt.topLeftX,y:mt.topLeftY,width:mt.width,height:mt.height})}else V[it][Ot.id()]&&Et.nodes.push({x:V[it][Ot.id()].getLeft(),y:V[it][Ot.id()].getTop(),width:V[it][Ot.id()].getWidth(),height:V[it][Ot.id()].getHeight()})}),vt.edges().forEach(function(Ot){var mt=Ot.source(),Dt=Ot.target();if(mt.css("display")!="none"&&Dt.css("display")!="none")if(w.quality=="draft"){var Rt=ut.get(mt.id()),Ht=ut.get(Dt.id()),Ut=[],Pt=[];if(mt.isParent()){var Ft=t.calcBoundingBox(mt,U[it].xCoords,U[it].yCoords,ut);Ut.push(Ft.topLeftX+Ft.width/2),Ut.push(Ft.topLeftY+Ft.height/2)}else Ut.push(U[it].xCoords[Rt]),Ut.push(U[it].yCoords[Rt]);if(Dt.isParent()){var Yt=t.calcBoundingBox(Dt,U[it].xCoords,U[it].yCoords,ut);Pt.push(Yt.topLeftX+Yt.width/2),Pt.push(Yt.topLeftY+Yt.height/2)}else Pt.push(U[it].xCoords[Ht]),Pt.push(U[it].yCoords[Ht]);Et.edges.push({startX:Ut[0],startY:Ut[1],endX:Pt[0],endY:Pt[1]})}else V[it][mt.id()]&&V[it][Dt.id()]&&Et.edges.push({startX:V[it][mt.id()].getCenterX(),startY:V[it][mt.id()].getCenterY(),endX:V[it][Dt.id()].getCenterX(),endY:V[it][Dt.id()].getCenterY()})}),Et.nodes.length>0&&(H.push(Et),D.add(it))}});var tt=E.packComponents(H,w.randomize).shifts;if(w.quality=="draft")U.forEach(function(vt,it){var ut=vt.xCoords.map(function(wt){return wt+tt[it].dx}),Et=vt.yCoords.map(function(wt){return wt+tt[it].dy});vt.xCoords=ut,vt.yCoords=Et});else{var ht=0;D.forEach(function(vt){Object.keys(V[vt]).forEach(function(it){var ut=V[vt][it];ut.setCenter(ut.getCenterX()+tt[ht].dx,ut.getCenterY()+tt[ht].dy)}),ht++})}}}else{var m=w.eles.boundingBox();if(_.push({x:m.x1+m.w/2,y:m.y1+m.h/2}),w.randomize){var y=o(w);U.push(y)}w.quality=="default"||w.quality=="proof"?(V.push(l(w,U[0])),t.relocateComponent(_[0],V[0],w)):t.relocateComponent(_[0],U[0],w)}var J=function(it,ut){if(w.quality=="default"||w.quality=="proof"){typeof it=="number"&&(it=ut);var Et=void 0,wt=void 0,Ot=it.data("id");return V.forEach(function(Dt){Ot in Dt&&(Et={x:Dt[Ot].getRect().getCenterX(),y:Dt[Ot].getRect().getCenterY()},wt=Dt[Ot])}),w.nodeDimensionsIncludeLabels&&(wt.labelWidth&&(wt.labelPosHorizontal=="left"?Et.x+=wt.labelWidth/2:wt.labelPosHorizontal=="right"&&(Et.x-=wt.labelWidth/2)),wt.labelHeight&&(wt.labelPosVertical=="top"?Et.y+=wt.labelHeight/2:wt.labelPosVertical=="bottom"&&(Et.y-=wt.labelHeight/2))),Et==null&&(Et={x:it.position("x"),y:it.position("y")}),{x:Et.x,y:Et.y}}else{var mt=void 0;return U.forEach(function(Dt){var Rt=Dt.nodeIndexes.get(it.id());Rt!=null&&(mt={x:Dt.xCoords[Rt],y:Dt.yCoords[Rt]})}),mt==null&&(mt={x:it.position("x"),y:it.position("y")}),{x:mt.x,y:mt.y}}};if(w.quality=="default"||w.quality=="proof"||w.randomize){var It=t.calcParentsWithoutChildren(P,B),Nt=B.filter(function(vt){return vt.css("display")=="none"});w.eles=B.not(Nt),B.nodes().not(":parent").not(Nt).layoutPositions(S,w,J),It.length>0&&It.forEach(function(vt){vt.position(J(vt))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")}}]),d})();i.exports=g}),657:((i,r,a)=>{var f=a(548),e=a(140).layoutBase.Matrix,u=a(140).layoutBase.SVD,t=function(o){var c=o.cy,l=o.eles,T=l.nodes(),g=l.nodes(":parent"),d=new Map,C=new Map,S=new Map,w=[],P=[],B=[],U=[],V=[],M=[],_=[],n=[],E=void 0,p=1e8,m=1e-9,y=o.piTol,I=o.samplingType,O=o.nodeSeparation,R=void 0,W=function(){for(var Y=0,Z=0,K=!1;Z=at;){nt=q[at++];for(var xt=w[nt],lt=0;ltdt&&(dt=V[Lt],At=Lt)}return At},Q=function(Y){var Z=void 0;if(Y){Z=Math.floor(Math.random()*E);for(var q=0;q=1)break;j=et}for(var pt=0;pt=1)break;j=et}for(var lt=0;lt0&&(Z.isParent()?w[Y].push(S.get(Z.id())):w[Y].push(Z.id()))})});var Nt=function(Y){var Z=C.get(Y),K=void 0;d.get(Y).forEach(function(q){c.getElementById(q).isParent()?K=S.get(q):K=q,w[Z].push(K),w[C.get(K)].push(Y)})},vt=!0,it=!1,ut=void 0;try{for(var Et=d.keys()[Symbol.iterator](),wt;!(vt=(wt=Et.next()).done);vt=!0){var Ot=wt.value;Nt(Ot)}}catch(F){it=!0,ut=F}finally{try{!vt&&Et.return&&Et.return()}finally{if(it)throw ut}}E=C.size;var mt=void 0;if(E>2){R=E{var f=a(212),e=function(t){t&&t("layout","fcose",f)};typeof cytoscape<"u"&&e(cytoscape),i.exports=e}),140:(i=>{i.exports=A})},N={};function v(i){var r=N[i];if(r!==void 0)return r.exports;var a=N[i]={exports:{}};return G[i](a,a.exports,v),a.exports}var h=v(579);return h})()})})(se)),se.exports}var mr=yr();const Er=Ze(mr);var xe={L:"left",R:"right",T:"top",B:"bottom"},Ie={L:gt(L=>`${L},${L/2} 0,${L} 0,0`,"L"),R:gt(L=>`0,${L/2} ${L},0 ${L},${L}`,"R"),T:gt(L=>`0,0 ${L},0 ${L/2},${L}`,"T"),B:gt(L=>`${L/2},0 ${L},${L} 0,${L}`,"B")},oe={L:gt((L,b)=>L-b+2,"L"),R:gt((L,b)=>L-2,"R"),T:gt((L,b)=>L-b+2,"T"),B:gt((L,b)=>L-2,"B")},Tr=gt(function(L){return Wt(L)?L==="L"?"R":"L":L==="T"?"B":"T"},"getOppositeArchitectureDirection"),Re=gt(function(L){const b=L;return b==="L"||b==="R"||b==="T"||b==="B"},"isArchitectureDirection"),Wt=gt(function(L){const b=L;return b==="L"||b==="R"},"isArchitectureDirectionX"),qt=gt(function(L){const b=L;return b==="T"||b==="B"},"isArchitectureDirectionY"),Te=gt(function(L,b){const A=Wt(L)&&qt(b),G=qt(L)&&Wt(b);return A||G},"isArchitectureDirectionXY"),Nr=gt(function(L){const b=L[0],A=L[1],G=Wt(b)&&qt(A),N=qt(b)&&Wt(A);return G||N},"isArchitecturePairXY"),Lr=gt(function(L){return L!=="LL"&&L!=="RR"&&L!=="TT"&&L!=="BB"},"isValidArchitectureDirectionPair"),pe=gt(function(L,b){const A=`${L}${b}`;return Lr(A)?A:void 0},"getArchitectureDirectionPair"),Cr=gt(function([L,b],A){const G=A[0],N=A[1];return Wt(G)?qt(N)?[L+(G==="L"?-1:1),b+(N==="T"?1:-1)]:[L+(G==="L"?-1:1),b]:Wt(N)?[L+(N==="L"?1:-1),b+(G==="T"?1:-1)]:[L,b+(G==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),wr=gt(function(L){return L==="LT"||L==="TL"?[1,1]:L==="BL"||L==="LB"?[1,-1]:L==="BR"||L==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),Ar=gt(function(L,b){return Te(L,b)?"bend":Wt(L)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),Mr=gt(function(L){return L.type==="service"},"isArchitectureService"),Or=gt(function(L){return L.type==="junction"},"isArchitectureJunction"),be=gt(L=>L.data(),"edgeData"),ie=gt(L=>L.data(),"nodeData"),Dr=nr.architecture,Pe=class{constructor(){this.nodes={},this.groups={},this.edges=[],this.layoutHints=[],this.registeredIds={},this.elements={},this.diagramId="",this.setAccTitle=Je,this.getAccTitle=Ke,this.setDiagramTitle=je,this.getDiagramTitle=_e,this.getAccDescription=tr,this.setAccDescription=er,this.clear()}static{gt(this,"ArchitectureDB")}setDiagramId(L){this.diagramId=L}getDiagramId(){return this.diagramId}clear(){this.nodes={},this.groups={},this.edges=[],this.layoutHints=[],this.registeredIds={},this.dataStructures=void 0,this.elements={},this.diagramId="",rr()}addService({id:L,icon:b,in:A,title:G,iconText:N}){if(this.registeredIds[L]!==void 0)throw new Error(`The service id [${L}] is already in use by another ${this.registeredIds[L]}`);if(A!==void 0){if(L===A)throw new Error(`The service [${L}] cannot be placed within itself`);if(this.registeredIds[A]===void 0)throw new Error(`The service [${L}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds[A]==="node")throw new Error(`The service [${L}]'s parent is not a group`)}this.registeredIds[L]="node",this.nodes[L]={id:L,type:"service",icon:b,iconText:N,title:G,edges:[],in:A}}getServices(){return Object.values(this.nodes).filter(Mr)}addJunction({id:L,in:b}){if(this.registeredIds[L]!==void 0)throw new Error(`The junction id [${L}] is already in use by another ${this.registeredIds[L]}`);if(b!==void 0){if(L===b)throw new Error(`The junction [${L}] cannot be placed within itself`);if(this.registeredIds[b]===void 0)throw new Error(`The junction [${L}]'s parent does not exist. Please make sure the parent is created before this junction`);if(this.registeredIds[b]==="node")throw new Error(`The junction [${L}]'s parent is not a group`)}this.registeredIds[L]="node",this.nodes[L]={id:L,type:"junction",edges:[],in:b}}getJunctions(){return Object.values(this.nodes).filter(Or)}getNodes(){return Object.values(this.nodes)}getNode(L){return this.nodes[L]??null}addGroup({id:L,icon:b,in:A,title:G}){if(this.registeredIds?.[L]!==void 0)throw new Error(`The group id [${L}] is already in use by another ${this.registeredIds[L]}`);if(A!==void 0){if(L===A)throw new Error(`The group [${L}] cannot be placed within itself`);if(this.registeredIds?.[A]===void 0)throw new Error(`The group [${L}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds?.[A]==="node")throw new Error(`The group [${L}]'s parent is not a group`)}this.registeredIds[L]="group",this.groups[L]={id:L,icon:b,title:G,in:A}}getGroups(){return Object.values(this.groups)}addEdge({lhsId:L,rhsId:b,lhsDir:A,rhsDir:G,lhsInto:N,rhsInto:v,lhsGroup:h,rhsGroup:i,title:r}){if(!Re(A))throw new Error(`Invalid direction given for left hand side of edge ${L}--${b}. Expected (L,R,T,B) got ${String(A)}`);if(!Re(G))throw new Error(`Invalid direction given for right hand side of edge ${L}--${b}. Expected (L,R,T,B) got ${String(G)}`);if(this.nodes[L]===void 0&&this.groups[L]===void 0)throw new Error(`The left-hand id [${L}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(this.nodes[b]===void 0&&this.groups[b]===void 0)throw new Error(`The right-hand id [${b}] does not yet exist. Please create the service/group before declaring an edge to it.`);const a=this.nodes[L].in,f=this.nodes[b].in;if(h&&a&&f&&a==f)throw new Error(`The left-hand id [${L}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(i&&a&&f&&a==f)throw new Error(`The right-hand id [${b}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);const e={lhsId:L,lhsDir:A,lhsInto:N,lhsGroup:h,rhsId:b,rhsDir:G,rhsInto:v,rhsGroup:i,title:r};this.edges.push(e),this.nodes[L]&&this.nodes[b]&&(this.nodes[L].edges.push(this.edges[this.edges.length-1]),this.nodes[b].edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}addLayoutHint(L){if(L.members.length<2)throw new Error(`An align directive requires at least two members; got ${L.members.length}`);const b=new Set;L.members.forEach(A=>{if(this.registeredIds[A]!=="node")throw new Error(`align ${L.direction} references [${A}], which is not a service or junction`);if(b.has(A))throw new Error(`align ${L.direction} lists [${A}] more than once`);b.add(A)}),this.layoutHints.push(L)}getLayoutHints(){return this.layoutHints}getDataStructures(){if(this.dataStructures===void 0){const L={},b=Object.entries(this.nodes).reduce((i,[r,a])=>(i[r]=a.edges.reduce((f,e)=>{const u=this.getNode(e.lhsId)?.in,t=this.getNode(e.rhsId)?.in;if(u&&t&&u!==t){const s=Ar(e.lhsDir,e.rhsDir);s!=="bend"&&(L[u]??={},L[u][t]=s,L[t]??={},L[t][u]=s)}if(e.lhsId===r){const s=pe(e.lhsDir,e.rhsDir);s&&(f[s]=e.rhsId)}else{const s=pe(e.rhsDir,e.lhsDir);s&&(f[s]=e.lhsId)}return f},{}),i),{}),A=Object.keys(b)[0],G={[A]:1},N=Object.keys(b).reduce((i,r)=>r===A?i:{...i,[r]:1},{}),v=gt(i=>{const r={[i]:[0,0]},a=[i];for(;a.length>0;){const f=a.shift();if(f){G[f]=1,delete N[f];const e=b[f],[u,t]=r[f];Object.entries(e).forEach(([s,o])=>{G[o]||(r[o]=Cr([u,t],s),a.push(o))})}}return r},"BFS"),h=[v(A)];for(;Object.keys(N).length>0;)h.push(v(Object.keys(N)[0]));this.dataStructures={adjList:b,spatialMaps:h,groupAlignments:L}}return this.dataStructures}setElementForId(L,b){this.elements[L]=b}getElementById(L){return this.elements[L]}getConfig(){return ir({...Dr,...ar().architecture})}getConfigField(L){return this.getConfig()[L]}},xr=gt((L,b)=>{ke(L,b),L.groups.map(A=>b.addGroup(A)),L.services.map(A=>b.addService({...A,type:"service"})),L.junctions.map(A=>b.addJunction({...A,type:"junction"})),L.edges.map(A=>b.addEdge(A)),L.alignments?.map(A=>b.addLayoutHint({direction:A.direction,members:[...A.members]}))},"populateDb"),Ge={parser:{yy:void 0},parse:gt(async L=>{const b=await cr("architecture",L);Se.debug(b);const A=Ge.parser?.yy;if(!(A instanceof Pe))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");xr(b,A)},"parse")},Ir=gt(L=>` + .edge { + stroke-width: ${L.archEdgeWidth}; + stroke: ${L.archEdgeColor}; + fill: none; + } + + .arrow { + fill: ${L.archEdgeArrowColor}; + } + + .node-bkg { + fill: none; + stroke: ${L.archGroupBorderColor}; + stroke-width: ${L.archGroupBorderWidth}; + stroke-dasharray: 8; + } + .node-icon-text { + display: flex; + align-items: center; + } + + .node-icon-text > div { + color: #fff; + margin: 1px; + height: fit-content; + text-align: center; + overflow: hidden; + display: -webkit-box; + -webkit-box-orient: vertical; + } +`,"getStyles"),Rr=Ir;function ye(L,b){if(L===0)return b();const A=Math.random;let G=L>>>0;Math.random=function(){G=G+1831565813>>>0;let N=G;return N=Math.imul(N^N>>>15,N|1),N^=N+Math.imul(N^N>>>7,N|61),((N^N>>>14)>>>0)/4294967296};try{return b()}finally{Math.random=A}}gt(ye,"withSeededRandom");var re=gt(L=>`${L}`,"wrapIcon"),ae={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:re('')},server:{body:re('')},disk:{body:re('')},internet:{body:re('')},cloud:{body:re('')},unknown:fr,blank:{body:re("")}}},Sr=gt(async function(L,b,A,G){const N=A.getConfigField("padding"),v=A.getConfigField("iconSize"),h=v/2,i=v/6,r=i/2;await Promise.all(b.edges().map(async a=>{const{source:f,sourceDir:e,sourceArrow:u,sourceGroup:t,target:s,targetDir:o,targetArrow:c,targetGroup:l,label:T}=be(a);let{x:g,y:d}=a[0].sourceEndpoint();const{x:C,y:S}=a[0].midpoint();let{x:w,y:P}=a[0].targetEndpoint();const B=N+4;if(t&&(Wt(e)?g+=e==="L"?-B:B:d+=e==="T"?-B:B+18),l&&(Wt(o)?w+=o==="L"?-B:B:P+=o==="T"?-B:B+18),!t&&A.getNode(f)?.type==="junction"&&(Wt(e)?g+=e==="L"?h:-h:d+=e==="T"?h:-h),!l&&A.getNode(s)?.type==="junction"&&(Wt(o)?w+=o==="L"?h:-h:P+=o==="T"?h:-h),a[0]._private.rscratch){const U=L.insert("g");if(U.insert("path").attr("d",`M ${g},${d} L ${C},${S} L${w},${P} `).attr("class","edge").attr("id",`${G}-${hr(f,s,{prefix:"L"})}`),u){const V=Wt(e)?oe[e](g,i):g-r,M=qt(e)?oe[e](d,i):d-r;U.insert("polygon").attr("points",Ie[e](i)).attr("transform",`translate(${V},${M})`).attr("class","arrow")}if(c){const V=Wt(o)?oe[o](w,i):w-r,M=qt(o)?oe[o](P,i):P-r;U.insert("polygon").attr("points",Ie[o](i)).attr("transform",`translate(${V},${M})`).attr("class","arrow")}if(T){const V=Te(e,o)?"XY":Wt(e)?"X":"Y";let M=0;V==="X"?M=Math.abs(g-w):V==="Y"?M=Math.abs(d-P)/1.5:M=Math.abs(g-w)/2;const _=U.append("g");if(await Ee(_,T,{useHtmlLabels:!1,width:M,classes:"architecture-service-label"},me()),_.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),V==="X")_.attr("transform","translate("+C+", "+S+")");else if(V==="Y")_.attr("transform","translate("+C+", "+S+") rotate(-90)");else if(V==="XY"){const n=pe(e,o);if(n&&Nr(n)){const E=_.node().getBoundingClientRect(),[p,m]=wr(n);_.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*p*m*45})`);const y=_.node().getBoundingClientRect();_.attr("transform",` + translate(${C}, ${S-E.height/2}) + translate(${p*y.width/2}, ${m*y.height/2}) + rotate(${-1*p*m*45}, 0, ${E.height/2}) + `)}}}}}))},"drawEdges"),Fr=gt(async function(L,b,A,G){const v=A.getConfigField("padding")*.75,h=A.getConfigField("fontSize"),r=A.getConfigField("iconSize")/2;await Promise.all(b.nodes().map(async a=>{const f=ie(a);if(f.type==="group"){const{h:e,w:u,x1:t,y1:s}=a.boundingBox(),o=L.append("rect");o.attr("id",`${G}-group-${f.id}`).attr("x",t+r).attr("y",s+r).attr("width",u).attr("height",e).attr("class","node-bkg");const c=L.append("g");let l=t,T=s;if(f.icon){const g=c.append("g");g.html(`${await ve(f.icon,{height:v,width:v,fallbackPrefix:ae.prefix})}`),g.attr("transform","translate("+(l+r+1)+", "+(T+r+1)+")"),l+=v,T+=h/2-1-2}if(f.label){const g=c.append("g");await Ee(g,f.label,{useHtmlLabels:!1,width:u,classes:"architecture-service-label"},me()),g.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),g.attr("transform","translate("+(l+r+4)+", "+(T+r+2)+")")}A.setElementForId(f.id,o)}}))},"drawGroups"),br=gt(async function(L,b,A,G){const N=me();for(const v of A){const h=b.append("g"),i=L.getConfigField("iconSize");if(v.title){const e=h.append("g");await Ee(e,v.title,{useHtmlLabels:!1,width:i*1.5,classes:"architecture-service-label"},N),e.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),e.attr("transform","translate("+i/2+", "+i+")")}const r=h.append("g");if(v.icon)r.html(`${await ve(v.icon,{height:i,width:i,fallbackPrefix:ae.prefix})}`);else if(v.iconText){r.html(`${await ve("blank",{height:i,width:i,fallbackPrefix:ae.prefix})}`);const t=r.append("g").append("foreignObject").attr("width",i).attr("height",i).append("div").attr("class","node-icon-text").attr("style",`height: ${i}px;`).append("div").html(or(v.iconText,N)),s=parseInt(window.getComputedStyle(t.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;t.attr("style",`-webkit-line-clamp: ${Math.floor((i-2)/s)};`)}else r.append("path").attr("class","node-bkg").attr("id",`${G}-node-${v.id}`).attr("d",`M0,${i} V5 Q0,0 5,0 H${i-5} Q${i},0 ${i},5 V${i} Z`);h.attr("id",`${G}-service-${v.id}`).attr("class","architecture-service");const{width:a,height:f}=h.node().getBBox();v.width=a,v.height=f,L.setElementForId(v.id,h)}return 0},"drawServices"),Pr=gt(function(L,b,A,G){A.forEach(N=>{const v=b.append("g"),h=L.getConfigField("iconSize");v.append("g").append("rect").attr("id",`${G}-node-${N.id}`).attr("fill-opacity","0").attr("width",h).attr("height",h),v.attr("class","architecture-junction");const{width:r,height:a}=v._groups[0][0].getBBox();v.width=r,v.height=a,L.setElementForId(N.id,v)})},"drawJunctions");lr([{name:ae.prefix,icons:ae}]);Fe.use(Er);function Ue(L,b,A){L.forEach(G=>{b.add({group:"nodes",data:{type:"service",id:G.id,icon:G.icon,label:G.title,parent:G.in,width:A.getConfigField("iconSize"),height:A.getConfigField("iconSize")},classes:"node-service"})})}gt(Ue,"addServices");function Ye(L,b,A){L.forEach(G=>{b.add({group:"nodes",data:{type:"junction",id:G.id,parent:G.in,width:A.getConfigField("iconSize"),height:A.getConfigField("iconSize")},classes:"node-junction"})})}gt(Ye,"addJunctions");function Xe(L,b){b.nodes().map(A=>{const G=ie(A);if(G.type==="group")return;G.x=A.position().x,G.y=A.position().y,L.getElementById(G.id).attr("transform","translate("+(G.x||0)+","+(G.y||0)+")")})}gt(Xe,"positionNodes");function He(L,b){L.forEach(A=>{b.add({group:"nodes",data:{type:"group",id:A.id,icon:A.icon,label:A.title,parent:A.in},classes:"node-group"})})}gt(He,"addGroups");function We(L,b){L.forEach(A=>{const{lhsId:G,rhsId:N,lhsInto:v,lhsGroup:h,rhsInto:i,lhsDir:r,rhsDir:a,rhsGroup:f,title:e}=A,u=Te(A.lhsDir,A.rhsDir)?"segments":"straight",t={id:`${G}-${N}`,label:e,source:G,sourceDir:r,sourceArrow:v,sourceGroup:h,sourceEndpoint:r==="L"?"0 50%":r==="R"?"100% 50%":r==="T"?"50% 0":"50% 100%",target:N,targetDir:a,targetArrow:i,targetGroup:f,targetEndpoint:a==="L"?"0 50%":a==="R"?"100% 50%":a==="T"?"50% 0":"50% 100%"};b.add({group:"edges",data:t,classes:u})})}gt(We,"addEdges");function Ve(L,b,A,G=[]){const N=gt((u,t)=>Object.entries(u).reduce((s,[o,c])=>{let l=0;const T=Object.entries(c);if(T.length===1)return s[o]=T[0][1],s;for(let g=0;g{const t={},s={};return Object.entries(u).forEach(([o,[c,l]])=>{const T=L.getNode(o)?.in??"default";t[l]??={},t[l][T]??=[],t[l][T].push(o),s[c]??={},s[c][T]??=[],s[c][T].push(o)}),{horiz:Object.values(N(t,"horizontal")).filter(o=>o.length>1),vert:Object.values(N(s,"vertical")).filter(o=>o.length>1)}}),[h,i]=v.reduce(([u,t],{horiz:s,vert:o})=>[[...u,...s],[...t,...o]],[[],[]]),r=new Set;G.forEach(u=>u.members.forEach(t=>r.add(t)));const a=gt(u=>u.filter(t=>!t.some(s=>r.has(s))),"dropOverlapping"),f=a(h),e=a(i);return G.forEach(u=>{u.members.length<2||(u.direction==="row"?f.push([...u.members]):e.push([...u.members]))}),{horizontal:f,vertical:e}}gt(Ve,"getAlignments");function ze(L,b,A=[]){const G=[],N=b.getConfigField("iconSize"),v=b.getConfigField("idealEdgeLengthMultiplier"),h=v*N,i=new Set;A.forEach(f=>{for(let e=0;e`${f[0]},${f[1]}`,"posToStr"),a=gt(f=>f.split(",").map(e=>parseInt(e)),"strToPos");return L.forEach(f=>{const e=Object.fromEntries(Object.entries(f).map(([o,c])=>[r(c),o])),u=[r([0,0])],t={},s={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;u.length>0;){const o=u.shift();if(o){t[o]=1;const c=e[o];if(c){const l=a(o);Object.entries(s).forEach(([T,g])=>{const d=r([l[0]+g[0],l[1]+g[1]]),C=e[d];if(C&&!t[d]){if(u.push(d),i.has(`${c}|${C}`))return;G.push({[xe[T]]:C,[xe[Tr(T)]]:c,gap:v*N})}})}}}}),G}gt(ze,"getRelativeConstraints");function Be(L,b,A,G,N,{spatialMaps:v,groupAlignments:h}){return new Promise(i=>{const r=sr("body").append("div").attr("id","cy").attr("style","display:none"),a=Fe({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge[label]",style:{label:"data(label)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${N.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${N.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});r.remove(),He(A,a),Ue(L,a,N),Ye(b,a,N),We(G,a);const f=N.getLayoutHints(),e=Ve(N,v,h,f),u=ze(v,N,f),t=N.getConfigField("iconSize"),s=N.getConfigField("idealEdgeLengthMultiplier")*t,o=.5*t,c=N.getConfigField("edgeElasticity"),l=N.getConfigField("seed"),T=a.layout({name:"fcose",quality:"proof",randomize:N.getConfigField("randomize"),nodeSeparation:N.getConfigField("nodeSeparation"),numIter:N.getConfigField("numIter"),styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(g){const[d,C]=g.connectedNodes(),{parent:S}=ie(d),{parent:w}=ie(C);return S===w?s:o},edgeElasticity(g){const[d,C]=g.connectedNodes(),{parent:S}=ie(d),{parent:w}=ie(C);return S===w?c:.001},alignmentConstraint:e,relativePlacementConstraint:u});T.one("layoutstop",()=>{function g(d,C,S,w){let P,B;const{x:U,y:V}=d,{x:M,y:_}=C;B=(w-V+(U-S)*(V-_)/(U-M))/Math.sqrt(1+Math.pow((V-_)/(U-M),2)),P=Math.sqrt(Math.pow(w-V,2)+Math.pow(S-U,2)-Math.pow(B,2));const n=Math.sqrt(Math.pow(M-U,2)+Math.pow(_-V,2));P=P/n;let E=(M-U)*(w-V)-(_-V)*(S-U);switch(!0){case E>=0:E=1;break;case E<0:E=-1;break}let p=(M-U)*(S-U)+(_-V)*(w-V);switch(!0){case p>=0:p=1;break;case p<0:p=-1;break}return B=Math.abs(B)*E,P=P*p,{distances:B,weights:P}}gt(g,"getSegmentWeights"),a.startBatch();for(const d of Object.values(a.edges()))if(d.data?.()){const{x:C,y:S}=d.source().position(),{x:w,y:P}=d.target().position();if(C!==w&&S!==P){const B=d.sourceEndpoint(),U=d.targetEndpoint(),{sourceDir:V}=be(d),[M,_]=qt(V)?[B.x,U.y]:[U.x,B.y],{weights:n,distances:E}=g(B,U,M,_);d.style("segment-distances",E),d.style("segment-weights",n)}}a.endBatch(),ye(l,()=>T.run())});try{ye(l,()=>T.run())}catch(g){throw g instanceof RangeError&&g.message.includes("Invalid array length")?new Error("Architecture layout failed: a declared `align row|column` directive likely contradicts the edge directions, or two declared alignments overlap on a shared node. Check that the order of members in each `align` chain is consistent with the edges between them, and that no node appears in two `align` directives along the same axis."):g}a.ready(g=>{Se.info("Ready",g),i(a)})})}gt(Be,"layoutArchitecture");var Gr=gt(async(L,b,A,G)=>{const N=G.db;N.setDiagramId(b);const v=N.getServices(),h=N.getJunctions(),i=N.getGroups(),r=N.getEdges(),a=N.getDataStructures(),f=qe(b),e=f.append("g");e.attr("class","architecture-edges");const u=f.append("g");u.attr("class","architecture-services");const t=f.append("g");t.attr("class","architecture-groups"),await br(N,u,v,b),Pr(N,u,h,b);const s=await Be(v,h,i,r,N,a);await Sr(e,s,N,b),await Fr(t,s,N,b),Xe(N,s),Qe(void 0,f,N.getConfigField("padding"),N.getConfigField("useMaxWidth"))},"draw"),Ur={draw:Gr},zr={parser:Ge,get db(){return new Pe},renderer:Ur,styles:Rr};export{zr as diagram}; diff --git a/apps/kimi-code/dist-web/assets/blockDiagram-677ZJIJ3-BTYvQjTR.js b/apps/kimi-code/dist-web/assets/blockDiagram-677ZJIJ3-BRka2cox.js similarity index 86% rename from apps/kimi-code/dist-web/assets/blockDiagram-677ZJIJ3-BTYvQjTR.js rename to apps/kimi-code/dist-web/assets/blockDiagram-677ZJIJ3-BRka2cox.js index 6ec2a2165a..1dfe87434b 100644 --- a/apps/kimi-code/dist-web/assets/blockDiagram-677ZJIJ3-BTYvQjTR.js +++ b/apps/kimi-code/dist-web/assets/blockDiagram-677ZJIJ3-BRka2cox.js @@ -1,4 +1,4 @@ -import{g as de}from"./chunk-5VM5RSS4-A5rXJcEF.js";import{aA as pe,aB as Kt,aC as fe,aD as xe,aE as ye,aF as be,aG as we,aH as me,aI as Se,aJ as Le,aK as ke,aL as ve,aM as Ee,aN as _e,aO as Te,aP as De,aQ as Be,aR as Ne,aS as Ie,aT as Ce,aU as Oe,aV as Re,aW as Ae,aX as ze,aY as Me,_ as g,y as rt,d as D,e as Pe,l as k,p as Fe,r as We,c as R,aZ as Ye,a7 as He,a8 as Ke,L as Ue,a_ as M,a$ as kt,b0 as Q,as as Xe,x as $,k as Ve,b1 as je,i as Ct,b2 as Ot,b3 as Ge}from"./mermaid.core-Dxfcv_J5.js";import{G as Ze}from"./graph-DOmOIIwC.js";import{c as qe}from"./channel-BWBJkLRL.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";function Je(e){return Array.isArray(e)}function Qe(e){if(pe(e))return e;const t=Kt(e);if(!$e(e))return{};if(Je(e)){const s=Array.from(e);return e.length>0&&typeof e[0]=="string"&&Object.hasOwn(e,"index")&&(s.index=e.index,s.input=e.input),s}if(fe(e)){const s=e,i=s.constructor;return new i(s.buffer,s.byteOffset,s.length)}if(t==="[object ArrayBuffer]")return new ArrayBuffer(e.byteLength);if(t==="[object DataView]"){const s=e,i=s.buffer,c=s.byteOffset,r=s.byteLength,n=new ArrayBuffer(r),l=new Uint8Array(i,c,r);return new Uint8Array(n).set(l),new DataView(n)}if(t==="[object Boolean]"||t==="[object Number]"||t==="[object String]"){const s=e.constructor,i=new s(e.valueOf());return t==="[object String]"?er(i,e):xt(i,e),i}if(t==="[object Date]")return new Date(Number(e));if(t==="[object RegExp]"){const s=e,i=new RegExp(s.source,s.flags);return i.lastIndex=s.lastIndex,i}if(t==="[object Symbol]")return Object(Symbol.prototype.valueOf.call(e));if(t==="[object Map]"){const s=e,i=new Map;return s.forEach((c,r)=>{i.set(r,c)}),i}if(t==="[object Set]"){const s=e,i=new Set;return s.forEach(c=>{i.add(c)}),i}if(t==="[object Arguments]"){const s=e,i={};return xt(i,s),i.length=s.length,i[Symbol.iterator]=s[Symbol.iterator],i}const a={};return rr(a,e),xt(a,e),tr(a,e),a}function $e(e){switch(Kt(e)){case Me:case ze:case Ae:case Re:case Oe:case Ce:case Ie:case Ne:case Be:case De:case Te:case _e:case Ee:case ve:case ke:case Le:case Se:case me:case we:case be:case ye:case xe:return!0;default:return!1}}function xt(e,t){for(const a in t)Object.hasOwn(t,a)&&(e[a]=t[a])}function tr(e,t){const a=Object.getOwnPropertySymbols(t);for(let s=0;s=a)&&(e[s]=t[s])}function rr(e,t){const a=Object.getPrototypeOf(t);a!==null&&typeof t.constructor=="function"&&Object.setPrototypeOf(e,a)}var bt=(function(){var e=g(function(T,m,p,x){for(p=p||{},x=T.length;x--;p[T[x]]=m);return p},"o"),t=[1,15],a=[1,7],s=[1,13],i=[1,14],c=[1,19],r=[1,16],n=[1,17],l=[1,18],u=[8,30],h=[8,10,21,28,29,30,31,39,43,46],d=[1,23],b=[1,24],w=[8,10,15,16,21,28,29,30,31,39,43,46],y=[8,10,15,16,21,27,28,29,30,31,39,43,46],v=[1,49],S={trace:g(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:g(function(m,p,x,L,E,o,F){var f=o.length-1;switch(E){case 4:L.getLogger().debug("Rule: separator (NL) ");break;case 5:L.getLogger().debug("Rule: separator (Space) ");break;case 6:L.getLogger().debug("Rule: separator (EOF) ");break;case 7:L.getLogger().debug("Rule: hierarchy: ",o[f-1]),L.setHierarchy(o[f-1]);break;case 8:L.getLogger().debug("Stop NL ");break;case 9:L.getLogger().debug("Stop EOF ");break;case 10:L.getLogger().debug("Stop NL2 ");break;case 11:L.getLogger().debug("Stop EOF2 ");break;case 12:L.getLogger().debug("Rule: statement: ",o[f]),typeof o[f].length=="number"?this.$=o[f]:this.$=[o[f]];break;case 13:L.getLogger().debug("Rule: statement #2: ",o[f-1]),this.$=[o[f-1]].concat(o[f]);break;case 14:L.getLogger().debug("Rule: link: ",o[f],m),this.$={edgeTypeStr:o[f],label:""};break;case 15:L.getLogger().debug("Rule: LABEL link: ",o[f-3],o[f-1],o[f]),this.$={edgeTypeStr:o[f],label:o[f-1]};break;case 18:const C=parseInt(o[f]),Z=L.generateId();this.$={id:Z,type:"space",label:"",width:C,children:[]};break;case 23:L.getLogger().debug("Rule: (nodeStatement link node) ",o[f-2],o[f-1],o[f]," typestr: ",o[f-1].edgeTypeStr);const V=L.edgeStrToEdgeData(o[f-1].edgeTypeStr),at=L.edgeStrToEdgeStartData(o[f-1].edgeTypeStr),gt=L.edgeStrToThickness(o[f-1].edgeTypeStr),O=L.edgeStrToPattern(o[f-1].edgeTypeStr);this.$=[{id:o[f-2].id,label:o[f-2].label,type:o[f-2].type,directions:o[f-2].directions},{id:o[f-2].id+"-"+o[f].id,start:o[f-2].id,end:o[f].id,label:o[f-1].label,type:"edge",thickness:gt,pattern:O,directions:o[f].directions,arrowTypeEnd:V,arrowTypeStart:at},{id:o[f].id,label:o[f].label,type:L.typeStr2Type(o[f].typeStr),directions:o[f].directions}];break;case 24:L.getLogger().debug("Rule: nodeStatement (abc88 node size) ",o[f-1],o[f]),this.$={id:o[f-1].id,label:o[f-1].label,type:L.typeStr2Type(o[f-1].typeStr),directions:o[f-1].directions,widthInColumns:parseInt(o[f],10)};break;case 25:L.getLogger().debug("Rule: nodeStatement (node) ",o[f]),this.$={id:o[f].id,label:o[f].label,type:L.typeStr2Type(o[f].typeStr),directions:o[f].directions,widthInColumns:1};break;case 26:L.getLogger().debug("APA123",this?this:"na"),L.getLogger().debug("COLUMNS: ",o[f]),this.$={type:"column-setting",columns:o[f]==="auto"?-1:parseInt(o[f])};break;case 27:L.getLogger().debug("Rule: id-block statement : ",o[f-2],o[f-1]),L.generateId(),this.$={...o[f-2],type:"composite",children:o[f-1]};break;case 28:L.getLogger().debug("Rule: blockStatement : ",o[f-2],o[f-1],o[f]);const j=L.generateId();this.$={id:j,type:"composite",label:"",children:o[f-1]};break;case 29:L.getLogger().debug("Rule: node (NODE_ID separator): ",o[f]),this.$={id:o[f]};break;case 30:L.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",o[f-1],o[f]),this.$={id:o[f-1],label:o[f].label,typeStr:o[f].typeStr,directions:o[f].directions};break;case 31:L.getLogger().debug("Rule: dirList: ",o[f]),this.$=[o[f]];break;case 32:L.getLogger().debug("Rule: dirList: ",o[f-1],o[f]),this.$=[o[f-1]].concat(o[f]);break;case 33:L.getLogger().debug("Rule: nodeShapeNLabel: ",o[f-2],o[f-1],o[f]),this.$={typeStr:o[f-2]+o[f],label:o[f-1]};break;case 34:L.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",o[f-3],o[f-2]," #3:",o[f-1],o[f]),this.$={typeStr:o[f-3]+o[f],label:o[f-2],directions:o[f-1]};break;case 35:case 36:this.$={type:"classDef",id:o[f-1].trim(),css:o[f].trim()};break;case 37:this.$={type:"applyClass",id:o[f-1].trim(),styleClass:o[f].trim()};break;case 38:this.$={type:"applyStyles",id:o[f-1].trim(),stylesStr:o[f].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:t,11:3,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{8:[1,20]},e(u,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:t,21:a,28:s,29:i,31:c,39:r,43:n,46:l}),e(h,[2,16],{14:22,15:d,16:b}),e(h,[2,17]),e(h,[2,18]),e(h,[2,19]),e(h,[2,20]),e(h,[2,21]),e(h,[2,22]),e(w,[2,25],{27:[1,25]}),e(h,[2,26]),{19:26,26:12,31:c},{10:t,11:27,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},e(y,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},e(u,[2,13]),{26:35,31:c},{31:[2,14]},{17:[1,36]},e(w,[2,24]),{10:t,11:37,13:4,14:22,15:d,16:b,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},e(y,[2,30]),{18:[1,43]},{18:[1,44]},e(w,[2,23]),{18:[1,45]},{30:[1,46]},e(h,[2,28]),e(h,[2,35]),e(h,[2,36]),e(h,[2,37]),e(h,[2,38]),{36:[1,47]},{33:48,34:v},{15:[1,50]},e(h,[2,27]),e(y,[2,33]),{38:[1,51]},{33:52,34:v,38:[2,31]},{31:[2,15]},e(y,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:g(function(m,p){if(p.recoverable)this.trace(m);else{var x=new Error(m);throw x.hash=p,x}},"parseError"),parse:g(function(m){var p=this,x=[0],L=[],E=[null],o=[],F=this.table,f="",C=0,Z=0,V=2,at=1,gt=o.slice.call(arguments,1),O=Object.create(this.lexer),j={yy:{}};for(var ut in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ut)&&(j.yy[ut]=this.yy[ut]);O.setInput(m,j.yy),j.yy.lexer=O,j.yy.parser=this,typeof O.yylloc>"u"&&(O.yylloc={});var dt=O.yylloc;o.push(dt);var ge=O.options&&O.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ue(W){x.length=x.length-2*W,E.length=E.length-W,o.length=o.length-W}g(ue,"popStack");function Nt(){var W;return W=L.pop()||O.lex()||at,typeof W!="number"&&(W instanceof Array&&(L=W,W=L.pop()),W=p.symbols_[W]||W),W}g(Nt,"lex");for(var P,q,H,pt,J={},st,G,It,it;;){if(q=x[x.length-1],this.defaultActions[q]?H=this.defaultActions[q]:((P===null||typeof P>"u")&&(P=Nt()),H=F[q]&&F[q][P]),typeof H>"u"||!H.length||!H[0]){var ft="";it=[];for(st in F[q])this.terminals_[st]&&st>V&&it.push("'"+this.terminals_[st]+"'");O.showPosition?ft="Parse error on line "+(C+1)+`: +import{g as de}from"./chunk-5VM5RSS4-CnrQ4AgJ.js";import{aA as pe,aB as Kt,aC as fe,aD as xe,aE as ye,aF as be,aG as we,aH as me,aI as Se,aJ as Le,aK as ke,aL as ve,aM as Ee,aN as _e,aO as Te,aP as De,aQ as Be,aR as Ne,aS as Ie,aT as Ce,aU as Oe,aV as Re,aW as Ae,aX as ze,aY as Me,_ as g,z as rt,d as D,e as Pe,l as k,q as Fe,t as We,c as R,aZ as Ye,a7 as He,a8 as Ke,a3 as Ue,a_ as M,a$ as kt,b0 as Q,as as Xe,y as $,k as Ve,b1 as je,i as Ct,b2 as Ot,b3 as Ge}from"./mermaid.core-AN7v7N47.js";import{G as Ze}from"./graph-DOmOIIwC.js";import{c as qe}from"./channel-CsfHBtue.js";import"./index-Dnz6Zudc.js";function Je(e){return Array.isArray(e)}function Qe(e){if(pe(e))return e;const t=Kt(e);if(!$e(e))return{};if(Je(e)){const s=Array.from(e);return e.length>0&&typeof e[0]=="string"&&Object.hasOwn(e,"index")&&(s.index=e.index,s.input=e.input),s}if(fe(e)){const s=e,i=s.constructor;return new i(s.buffer,s.byteOffset,s.length)}if(t==="[object ArrayBuffer]")return new ArrayBuffer(e.byteLength);if(t==="[object DataView]"){const s=e,i=s.buffer,c=s.byteOffset,r=s.byteLength,n=new ArrayBuffer(r),l=new Uint8Array(i,c,r);return new Uint8Array(n).set(l),new DataView(n)}if(t==="[object Boolean]"||t==="[object Number]"||t==="[object String]"){const s=e.constructor,i=new s(e.valueOf());return t==="[object String]"?er(i,e):xt(i,e),i}if(t==="[object Date]")return new Date(Number(e));if(t==="[object RegExp]"){const s=e,i=new RegExp(s.source,s.flags);return i.lastIndex=s.lastIndex,i}if(t==="[object Symbol]")return Object(Symbol.prototype.valueOf.call(e));if(t==="[object Map]"){const s=e,i=new Map;return s.forEach((c,r)=>{i.set(r,c)}),i}if(t==="[object Set]"){const s=e,i=new Set;return s.forEach(c=>{i.add(c)}),i}if(t==="[object Arguments]"){const s=e,i={};return xt(i,s),i.length=s.length,i[Symbol.iterator]=s[Symbol.iterator],i}const a={};return rr(a,e),xt(a,e),tr(a,e),a}function $e(e){switch(Kt(e)){case Me:case ze:case Ae:case Re:case Oe:case Ce:case Ie:case Ne:case Be:case De:case Te:case _e:case Ee:case ve:case ke:case Le:case Se:case me:case we:case be:case ye:case xe:return!0;default:return!1}}function xt(e,t){for(const a in t)Object.hasOwn(t,a)&&(e[a]=t[a])}function tr(e,t){const a=Object.getOwnPropertySymbols(t);for(let s=0;s=a)&&(e[s]=t[s])}function rr(e,t){const a=Object.getPrototypeOf(t);a!==null&&typeof t.constructor=="function"&&Object.setPrototypeOf(e,a)}var bt=(function(){var e=g(function(T,m,p,x){for(p=p||{},x=T.length;x--;p[T[x]]=m);return p},"o"),t=[1,15],a=[1,7],s=[1,13],i=[1,14],c=[1,19],r=[1,16],n=[1,17],l=[1,18],u=[8,30],h=[8,10,21,28,29,30,31,39,43,46],d=[1,23],b=[1,24],w=[8,10,15,16,21,28,29,30,31,39,43,46],y=[8,10,15,16,21,27,28,29,30,31,39,43,46],v=[1,49],S={trace:g(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:g(function(m,p,x,L,E,o,F){var f=o.length-1;switch(E){case 4:L.getLogger().debug("Rule: separator (NL) ");break;case 5:L.getLogger().debug("Rule: separator (Space) ");break;case 6:L.getLogger().debug("Rule: separator (EOF) ");break;case 7:L.getLogger().debug("Rule: hierarchy: ",o[f-1]),L.setHierarchy(o[f-1]);break;case 8:L.getLogger().debug("Stop NL ");break;case 9:L.getLogger().debug("Stop EOF ");break;case 10:L.getLogger().debug("Stop NL2 ");break;case 11:L.getLogger().debug("Stop EOF2 ");break;case 12:L.getLogger().debug("Rule: statement: ",o[f]),typeof o[f].length=="number"?this.$=o[f]:this.$=[o[f]];break;case 13:L.getLogger().debug("Rule: statement #2: ",o[f-1]),this.$=[o[f-1]].concat(o[f]);break;case 14:L.getLogger().debug("Rule: link: ",o[f],m),this.$={edgeTypeStr:o[f],label:""};break;case 15:L.getLogger().debug("Rule: LABEL link: ",o[f-3],o[f-1],o[f]),this.$={edgeTypeStr:o[f],label:o[f-1]};break;case 18:const C=parseInt(o[f]),Z=L.generateId();this.$={id:Z,type:"space",label:"",width:C,children:[]};break;case 23:L.getLogger().debug("Rule: (nodeStatement link node) ",o[f-2],o[f-1],o[f]," typestr: ",o[f-1].edgeTypeStr);const V=L.edgeStrToEdgeData(o[f-1].edgeTypeStr),at=L.edgeStrToEdgeStartData(o[f-1].edgeTypeStr),gt=L.edgeStrToThickness(o[f-1].edgeTypeStr),O=L.edgeStrToPattern(o[f-1].edgeTypeStr);this.$=[{id:o[f-2].id,label:o[f-2].label,type:o[f-2].type,directions:o[f-2].directions},{id:o[f-2].id+"-"+o[f].id,start:o[f-2].id,end:o[f].id,label:o[f-1].label,type:"edge",thickness:gt,pattern:O,directions:o[f].directions,arrowTypeEnd:V,arrowTypeStart:at},{id:o[f].id,label:o[f].label,type:L.typeStr2Type(o[f].typeStr),directions:o[f].directions}];break;case 24:L.getLogger().debug("Rule: nodeStatement (abc88 node size) ",o[f-1],o[f]),this.$={id:o[f-1].id,label:o[f-1].label,type:L.typeStr2Type(o[f-1].typeStr),directions:o[f-1].directions,widthInColumns:parseInt(o[f],10)};break;case 25:L.getLogger().debug("Rule: nodeStatement (node) ",o[f]),this.$={id:o[f].id,label:o[f].label,type:L.typeStr2Type(o[f].typeStr),directions:o[f].directions,widthInColumns:1};break;case 26:L.getLogger().debug("APA123",this?this:"na"),L.getLogger().debug("COLUMNS: ",o[f]),this.$={type:"column-setting",columns:o[f]==="auto"?-1:parseInt(o[f])};break;case 27:L.getLogger().debug("Rule: id-block statement : ",o[f-2],o[f-1]),L.generateId(),this.$={...o[f-2],type:"composite",children:o[f-1]};break;case 28:L.getLogger().debug("Rule: blockStatement : ",o[f-2],o[f-1],o[f]);const j=L.generateId();this.$={id:j,type:"composite",label:"",children:o[f-1]};break;case 29:L.getLogger().debug("Rule: node (NODE_ID separator): ",o[f]),this.$={id:o[f]};break;case 30:L.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",o[f-1],o[f]),this.$={id:o[f-1],label:o[f].label,typeStr:o[f].typeStr,directions:o[f].directions};break;case 31:L.getLogger().debug("Rule: dirList: ",o[f]),this.$=[o[f]];break;case 32:L.getLogger().debug("Rule: dirList: ",o[f-1],o[f]),this.$=[o[f-1]].concat(o[f]);break;case 33:L.getLogger().debug("Rule: nodeShapeNLabel: ",o[f-2],o[f-1],o[f]),this.$={typeStr:o[f-2]+o[f],label:o[f-1]};break;case 34:L.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",o[f-3],o[f-2]," #3:",o[f-1],o[f]),this.$={typeStr:o[f-3]+o[f],label:o[f-2],directions:o[f-1]};break;case 35:case 36:this.$={type:"classDef",id:o[f-1].trim(),css:o[f].trim()};break;case 37:this.$={type:"applyClass",id:o[f-1].trim(),styleClass:o[f].trim()};break;case 38:this.$={type:"applyStyles",id:o[f-1].trim(),stylesStr:o[f].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:t,11:3,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{8:[1,20]},e(u,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:t,21:a,28:s,29:i,31:c,39:r,43:n,46:l}),e(h,[2,16],{14:22,15:d,16:b}),e(h,[2,17]),e(h,[2,18]),e(h,[2,19]),e(h,[2,20]),e(h,[2,21]),e(h,[2,22]),e(w,[2,25],{27:[1,25]}),e(h,[2,26]),{19:26,26:12,31:c},{10:t,11:27,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},e(y,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},e(u,[2,13]),{26:35,31:c},{31:[2,14]},{17:[1,36]},e(w,[2,24]),{10:t,11:37,13:4,14:22,15:d,16:b,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},e(y,[2,30]),{18:[1,43]},{18:[1,44]},e(w,[2,23]),{18:[1,45]},{30:[1,46]},e(h,[2,28]),e(h,[2,35]),e(h,[2,36]),e(h,[2,37]),e(h,[2,38]),{36:[1,47]},{33:48,34:v},{15:[1,50]},e(h,[2,27]),e(y,[2,33]),{38:[1,51]},{33:52,34:v,38:[2,31]},{31:[2,15]},e(y,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:g(function(m,p){if(p.recoverable)this.trace(m);else{var x=new Error(m);throw x.hash=p,x}},"parseError"),parse:g(function(m){var p=this,x=[0],L=[],E=[null],o=[],F=this.table,f="",C=0,Z=0,V=2,at=1,gt=o.slice.call(arguments,1),O=Object.create(this.lexer),j={yy:{}};for(var ut in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ut)&&(j.yy[ut]=this.yy[ut]);O.setInput(m,j.yy),j.yy.lexer=O,j.yy.parser=this,typeof O.yylloc>"u"&&(O.yylloc={});var dt=O.yylloc;o.push(dt);var ge=O.options&&O.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ue(W){x.length=x.length-2*W,E.length=E.length-W,o.length=o.length-W}g(ue,"popStack");function Nt(){var W;return W=L.pop()||O.lex()||at,typeof W!="number"&&(W instanceof Array&&(L=W,W=L.pop()),W=p.symbols_[W]||W),W}g(Nt,"lex");for(var P,q,H,pt,J={},st,G,It,it;;){if(q=x[x.length-1],this.defaultActions[q]?H=this.defaultActions[q]:((P===null||typeof P>"u")&&(P=Nt()),H=F[q]&&F[q][P]),typeof H>"u"||!H.length||!H[0]){var ft="";it=[];for(st in F[q])this.terminals_[st]&&st>V&&it.push("'"+this.terminals_[st]+"'");O.showPosition?ft="Parse error on line "+(C+1)+`: `+O.showPosition()+` Expecting `+it.join(", ")+", got '"+(this.terminals_[P]||P)+"'":ft="Parse error on line "+(C+1)+": Unexpected "+(P==at?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(ft,{text:O.match,token:this.terminals_[P]||P,line:O.yylineno,loc:dt,expected:it})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+q+", token: "+P);switch(H[0]){case 1:x.push(P),E.push(O.yytext),o.push(O.yylloc),x.push(H[1]),P=null,Z=O.yyleng,f=O.yytext,C=O.yylineno,dt=O.yylloc;break;case 2:if(G=this.productions_[H[1]][1],J.$=E[E.length-G],J._$={first_line:o[o.length-(G||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(G||1)].first_column,last_column:o[o.length-1].last_column},ge&&(J._$.range=[o[o.length-(G||1)].range[0],o[o.length-1].range[1]]),pt=this.performAction.apply(J,[f,Z,C,j.yy,H[1],E,o].concat(gt)),typeof pt<"u")return pt;G&&(x=x.slice(0,-1*G*2),E=E.slice(0,-1*G),o=o.slice(0,-1*G)),x.push(this.productions_[H[1]][0]),E.push(J.$),o.push(J._$),It=F[x[x.length-2]][x[x.length-1]],x.push(It);break;case 3:return!0}}return!0},"parse")},N=(function(){var T={EOF:1,parseError:g(function(p,x){if(this.yy.parser)this.yy.parser.parseError(p,x);else throw new Error(p)},"parseError"),setInput:g(function(m,p){return this.yy=p||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:g(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var p=m.match(/(?:\r\n?|\n).*/g);return p?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},"input"),unput:g(function(m){var p=m.length,x=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-p),this.offset-=p;var L=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),x.length-1&&(this.yylineno-=x.length-1);var E=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:x?(x.length===L.length?this.yylloc.first_column:0)+L[L.length-x.length].length-x[0].length:this.yylloc.first_column-p},this.options.ranges&&(this.yylloc.range=[E[0],E[0]+this.yyleng-p]),this.yyleng=this.yytext.length,this},"unput"),more:g(function(){return this._more=!0,this},"more"),reject:g(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:g(function(m){this.unput(this.match.slice(m))},"less"),pastInput:g(function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:g(function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:g(function(){var m=this.pastInput(),p=new Array(m.length+1).join("-");return m+this.upcomingInput()+` @@ -129,4 +129,4 @@ Expecting `+it.join(", ")+", got '"+(this.terminals_[P]||P)+"'":ft="Parse error `,"getStyles"),Er=vr,_r=g((e,t,a,s)=>{t.forEach(i=>{zr[i](e,a,s)})},"insertMarkers"),Tr=g((e,t,a)=>{k.trace("Making markers for ",a),e.append("defs").append("marker").attr("id",a+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),Dr=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),Br=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),Nr=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),Ir=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),e.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),Cr=g((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",a+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),Or=g((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",a+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),Rr=g((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),e.append("marker").attr("id",a+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),Ar=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),zr={extension:Tr,composition:Dr,aggregation:Br,dependency:Nr,lollipop:Ir,point:Cr,circle:Or,cross:Rr,barb:Ar},Mr=_r;function mt(e,t){if(e===0||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);if(e<0)return{px:t,py:0};if(e===1)return{px:0,py:t};const a=t%e,s=Math.floor(t/e);return{px:a,py:s}}g(mt,"calculateBlockPosition");var Pr=g(e=>{let t=0,a=0;for(const s of e.children){const{width:i,height:c,x:r,y:n}=s.size??{width:0,height:0,x:0,y:0};if(k.debug("getMaxChildSize abc95 child:",s.id,"width:",i,"height:",c,"x:",r,"y:",n,s.type),s.type==="space")continue;const l=i/(s.widthInColumns??1);l>t&&(t=l),c>a&&(a=c)}return{width:t,height:a}},"getMaxChildSize");function lt(e,t,a=0,s=0,i=8){k.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"siblingWidth",a),e?.size?.width||(e.size={width:a,height:s,x:0,y:0});let c=0,r=0;if(e.children?.length>0){for(const y of e.children)lt(y,t,0,0,i);const n=Pr(e);c=n.width,r=n.height,k.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",c,r);for(const y of e.children)y.size&&(k.debug(`abc95 Setting size of children of ${e.id} id=${y.id} ${c} ${r} ${JSON.stringify(y.size)}`),y.size.width=c*(y.widthInColumns??1)+i*((y.widthInColumns??1)-1),y.size.height=r,y.size.x=0,y.size.y=0,k.debug(`abc95 updating size of ${e.id} children child:${y.id} maxWidth:${c} maxHeight:${r}`));for(const y of e.children)lt(y,t,c,r,i);const l=e.columns??-1;let u=0;for(const y of e.children)u+=y.widthInColumns??1;let h=e.children.length;l>0&&l0?Math.min(e.children.length,l):e.children.length;if(y>0){const v=(b-y*i-i)/y;k.debug("abc95 (growing to fit) width",e.id,b,e.size?.width,v);for(const S of e.children)S.size&&(S.size.width=v)}}e.size={width:b,height:w,x:0,y:0}}k.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}g(lt,"setBlockSizes");function Tt(e,t,a=8){k.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);const s=e.columns??-1;if(k.debug("layoutBlocks columns abc95",e.id,"=>",s,e),e.children&&e.children.length>0){const i=e?.children[0]?.size?.width??0,c=e.children.length*i+(e.children.length-1)*a;k.debug("widthOfChildren 88",c,"posX");const r=new Map;{let d=0;for(const b of e.children){if(!b.size)continue;const{py:w}=mt(s,d),y=r.get(w)??0;b.size.height>y&&r.set(w,b.size.height);let v=b?.widthInColumns??1;s>0&&(v=Math.min(v,s-d%s)),d+=v}}const n=new Map;{let d=0;const b=[...r.keys()].sort((w,y)=>w-y);for(const w of b)n.set(w,d),d+=(r.get(w)??0)+a}let l=0;k.debug("abc91 block?.size?.x",e.id,e?.size?.x);let u=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-a,h=0;for(const d of e.children){const b=e;if(!d.size)continue;const{width:w,height:y}=d.size,{px:v,py:S}=mt(s,l);if(S!=h&&(h=S,u=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-a,k.debug("New row in layout for block",e.id," and child ",d.id,h)),k.debug(`abc89 layout blocks (child) id: ${d.id} Pos: ${l} (px, py) ${v},${S} (${b?.size?.x},${b?.size?.y}) parent: ${b.id} width: ${w}${a}`),b.size){const _=w/2;d.size.x=u+a+_,k.debug(`abc91 layout blocks (calc) px, pyid:${d.id} startingPos=X${u} new startingPosX${d.size.x} ${_} padding=${a} width=${w} halfWidth=${_} => x:${d.size.x} y:${d.size.y} ${d.widthInColumns} (width * (child?.w || 1)) / 2 ${w*(d?.widthInColumns??1)/2}`),u=d.size.x+_;const T=n.get(S)??0,m=r.get(S)??y;d.size.y=b.size.y-b.size.height/2+T+m/2+a,k.debug(`abc88 layout blocks (calc) px, pyid:${d.id}startingPosX${u}${a}${_}=>x:${d.size.x}y:${d.size.y}${d.widthInColumns}(width * (child?.w || 1)) / 2${w*(d?.widthInColumns??1)/2}`)}d.children&&Tt(d,t,a);let N=d?.widthInColumns??1;s>0&&(N=Math.min(N,s-l%s)),l+=N,k.debug("abc88 columnsPos",d,l)}}k.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}g(Tt,"layoutBlocks");function Dt(e,{minX:t,minY:a,maxX:s,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&e.id!=="root"){const{x:c,y:r,width:n,height:l}=e.size;c-n/2s&&(s=c+n/2),r+l/2>i&&(i=r+l/2)}if(e.children)for(const c of e.children)({minX:t,minY:a,maxX:s,maxY:i}=Dt(c,{minX:t,minY:a,maxX:s,maxY:i}));return{minX:t,minY:a,maxX:s,maxY:i}}g(Dt,"findBounds");function Qt(e){const t=e.getBlock("root");if(!t)return;const a=R()?.block?.padding??8;lt(t,e,0,0,a),Tt(t,e,a),k.debug("getBlocks",JSON.stringify(t,null,2));const{minX:s,minY:i,maxX:c,maxY:r}=Dt(t),n=r-i,l=c-s;return{x:s,y:i,width:l,height:n}}g(Qt,"layout");var Fr=g(async(e,t,a,s=!1,i=!1)=>{let c=t||"";typeof c=="object"&&(c=c[0]);const r=R(),n=M(r);return await kt(e,c,{style:a,isTitle:s,useHtmlLabels:n,markdown:!1,isNode:i,width:Number.POSITIVE_INFINITY},r)},"createLabel"),K=Fr,Wr=g((e,t,a,s,i)=>{t.arrowTypeStart&&Mt(e,"start",t.arrowTypeStart,a,s,i),t.arrowTypeEnd&&Mt(e,"end",t.arrowTypeEnd,a,s,i)},"addEdgeMarkers"),Yr={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},Mt=g((e,t,a,s,i,c)=>{const r=Yr[a];if(!r){k.warn(`Unknown arrow type: ${a}`);return}const n=t==="start"?"Start":"End";e.attr(`marker-${t}`,`url(${s}#${i}_${c}-${r}${n})`)},"addEdgeMarker"),St={},z={},Hr=g(async(e,t)=>{const a=R(),s=M(a),i=e.insert("g").attr("class","edgeLabel"),c=i.insert("g").attr("class","label"),r=t.labelType==="markdown",n=await kt(e,t.label,{style:t.labelStyle,useHtmlLabels:s,addSvgBackground:r,isNode:!1,markdown:r,width:r?void 0:Number.POSITIVE_INFINITY},a);c.node().appendChild(n);let l=n.getBBox(),u=l;if(s){const d=n.children[0],b=D(n);l=d.getBoundingClientRect(),u=l,b.attr("width",l.width),b.attr("height",l.height)}else{const d=D(n).select("text").node();d&&typeof d.getBBox=="function"&&(u=d.getBBox())}c.attr("transform",Q(u,s)),St[t.id]=i,t.width=l.width,t.height=l.height;let h;if(t.startLabelLeft){const d=e.insert("g").attr("class","edgeTerminals"),b=d.insert("g").attr("class","inner"),w=await K(b,t.startLabelLeft,t.labelStyle);h=w;let y=w.getBBox();if(s){const v=w.children[0],S=D(w);y=v.getBoundingClientRect(),S.attr("width",y.width),S.attr("height",y.height)}b.attr("transform",Q(y,s)),z[t.id]||(z[t.id]={}),z[t.id].startLeft=d,tt(h,t.startLabelLeft)}if(t.startLabelRight){const d=e.insert("g").attr("class","edgeTerminals"),b=d.insert("g").attr("class","inner"),w=await K(b,t.startLabelRight,t.labelStyle);h=w;let y=w.getBBox();if(s){const v=w.children[0],S=D(w);y=v.getBoundingClientRect(),S.attr("width",y.width),S.attr("height",y.height)}b.attr("transform",Q(y,s)),z[t.id]||(z[t.id]={}),z[t.id].startRight=d,tt(h,t.startLabelRight)}if(t.endLabelLeft){const d=e.insert("g").attr("class","edgeTerminals"),b=d.insert("g").attr("class","inner"),w=await K(d,t.endLabelLeft,t.labelStyle);h=w;let y=w.getBBox();if(s){const v=w.children[0],S=D(w);y=v.getBoundingClientRect(),S.attr("width",y.width),S.attr("height",y.height)}b.attr("transform",Q(y,s)),z[t.id]||(z[t.id]={}),z[t.id].endLeft=d,tt(h,t.endLabelLeft)}if(t.endLabelRight){const d=e.insert("g").attr("class","edgeTerminals"),b=d.insert("g").attr("class","inner"),w=await K(d,t.endLabelRight,t.labelStyle);h=w;let y=w.getBBox();if(s){const v=w.children[0],S=D(w);y=v.getBoundingClientRect(),S.attr("width",y.width),S.attr("height",y.height)}b.attr("transform",Q(y,s)),z[t.id]||(z[t.id]={}),z[t.id].endRight=d,tt(h,t.endLabelRight)}return n},"insertEdgeLabel");function tt(e,t){M(R())&&e&&(e.style.width=t.length*9+"px",e.style.height="12px")}g(tt,"setTerminalWidth");var Kr=g((e,t)=>{k.debug("Moving label abc88 ",e.id,e.label,St[e.id],t);let a=t.updatedPath?t.updatedPath:t.originalPath;const s=R(),{subGraphTitleTotalMargin:i}=Xe(s);if(e.label){const c=St[e.id];let r=e.x,n=e.y;if(a){const l=$.calcLabelPosition(a);k.debug("Moving label "+e.label+" from (",r,",",n,") to (",l.x,",",l.y,") abc88"),t.updatedPath&&(r=l.x,n=l.y)}c.attr("transform",`translate(${r}, ${n+i/2})`)}if(e.startLabelLeft){const c=z[e.id].startLeft;let r=e.x,n=e.y;if(a){const l=$.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_left",a);r=l.x,n=l.y}c.attr("transform",`translate(${r}, ${n})`)}if(e.startLabelRight){const c=z[e.id].startRight;let r=e.x,n=e.y;if(a){const l=$.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_right",a);r=l.x,n=l.y}c.attr("transform",`translate(${r}, ${n})`)}if(e.endLabelLeft){const c=z[e.id].endLeft;let r=e.x,n=e.y;if(a){const l=$.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_left",a);r=l.x,n=l.y}c.attr("transform",`translate(${r}, ${n})`)}if(e.endLabelRight){const c=z[e.id].endRight;let r=e.x,n=e.y;if(a){const l=$.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_right",a);r=l.x,n=l.y}c.attr("transform",`translate(${r}, ${n})`)}},"positionEdgeLabel"),Ur=g((e,t)=>{const a=e.x,s=e.y,i=Math.abs(t.x-a),c=Math.abs(t.y-s),r=e.width/2,n=e.height/2;return i>=r||c>=n},"outsideNode"),Xr=g((e,t,a)=>{k.debug(`intersection calc abc89: outsidePoint: ${JSON.stringify(t)} insidePoint : ${JSON.stringify(a)} - node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);const s=e.x,i=e.y,c=Math.abs(s-a.x),r=e.width/2;let n=a.xMath.abs(s-t.x)*l){let d=a.y{k.debug("abc88 cutPathAtIntersect",e,t);let a=[],s=e[0],i=!1;return e.forEach(c=>{if(!Ur(t,c)&&!i){const r=Xr(t,s,c);let n=!1;a.forEach(l=>{n=n||l.x===r.x&&l.y===r.y}),a.some(l=>l.x===r.x&&l.y===r.y)||a.push(r),i=!0}else s=c,i||a.push(c)}),a},"cutPathAtIntersect"),Vr=g(function(e,t,a,s,i,c,r){let n=a.points;k.debug("abc88 InsertEdge: edge=",a,"e=",t);let l=!1;const u=c.node(t.v);var h=c.node(t.w);h?.intersect&&u?.intersect&&(n=n.slice(1,a.points.length-1),n.unshift(u.intersect(n[0])),n.push(h.intersect(n[n.length-1]))),a.toCluster&&(k.debug("to cluster abc88",s[a.toCluster]),n=Pt(a.points,s[a.toCluster].node),l=!0),a.fromCluster&&(k.debug("from cluster abc88",s[a.fromCluster]),n=Pt(n.reverse(),s[a.fromCluster].node).reverse(),l=!0);const d=n.filter(m=>!Number.isNaN(m.y));let b=Ke;a.curve&&(i==="graph"||i==="flowchart")&&(b=a.curve);const{x:w,y}=Ye(a),v=He().x(w).y(y).curve(b);let S;switch(a.thickness){case"normal":S="edge-thickness-normal";break;case"thick":S="edge-thickness-thick";break;case"invisible":S="edge-thickness-thick";break;default:S=""}switch(a.pattern){case"solid":S+=" edge-pattern-solid";break;case"dotted":S+=" edge-pattern-dotted";break;case"dashed":S+=" edge-pattern-dashed";break}const N=e.append("path").attr("d",v(d)).attr("id",a.id).attr("class"," "+S+(a.classes?" "+a.classes:"")).attr("style",a.style);let _="";(R().flowchart.arrowMarkerAbsolute||R().state.arrowMarkerAbsolute)&&(_=Ue(!0)),Wr(N,a,_,r,i);let T={};return l&&(T.updatedPath=n),T.originalPath=a.points,T},"insertEdge"),jr=g(e=>{const t=new Set;for(const a of e)switch(a){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(a);break}return t},"expandAndDeduplicateDirections"),Gr=g((e,t,a,s)=>{const i=jr(e),c=2,r=t.height+2*a.padding,n=r/c,l=s??t.width+2*n+a.padding,u=a.padding/2;return i.has("right")&&i.has("left")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:n,y:0},{x:l/2,y:2*u},{x:l-n,y:0},{x:l,y:0},{x:l,y:-r/3},{x:l+2*u,y:-r/2},{x:l,y:-2*r/3},{x:l,y:-r},{x:l-n,y:-r},{x:l/2,y:-r-2*u},{x:n,y:-r},{x:0,y:-r},{x:0,y:-2*r/3},{x:-2*u,y:-r/2},{x:0,y:-r/3}]:i.has("right")&&i.has("left")&&i.has("up")?[{x:n,y:0},{x:l-n,y:0},{x:l,y:-r/2},{x:l-n,y:-r},{x:n,y:-r},{x:0,y:-r/2}]:i.has("right")&&i.has("left")&&i.has("down")?[{x:0,y:0},{x:n,y:-r},{x:l-n,y:-r},{x:l,y:0}]:i.has("right")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:l,y:-n},{x:l,y:-r+n},{x:0,y:-r}]:i.has("left")&&i.has("up")&&i.has("down")?[{x:l,y:0},{x:0,y:-n},{x:0,y:-r+n},{x:l,y:-r}]:i.has("right")&&i.has("left")?[{x:n,y:0},{x:n,y:-u},{x:l-n,y:-u},{x:l-n,y:0},{x:l,y:-r/2},{x:l-n,y:-r},{x:l-n,y:-r+u},{x:n,y:-r+u},{x:n,y:-r},{x:0,y:-r/2}]:i.has("up")&&i.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:n,y:-u},{x:n,y:-r+u},{x:0,y:-r+u},{x:l/2,y:-r},{x:l,y:-r+u},{x:l-n,y:-r+u},{x:l-n,y:-u},{x:l,y:-u}]:i.has("right")&&i.has("up")?[{x:0,y:0},{x:l,y:-n},{x:0,y:-r}]:i.has("right")&&i.has("down")?[{x:0,y:0},{x:l,y:0},{x:0,y:-r}]:i.has("left")&&i.has("up")?[{x:l,y:0},{x:0,y:-n},{x:l,y:-r}]:i.has("left")&&i.has("down")?[{x:l,y:0},{x:0,y:0},{x:l,y:-r}]:i.has("right")?[{x:n,y:-u},{x:n,y:-u},{x:l-n,y:-u},{x:l-n,y:0},{x:l,y:-r/2},{x:l-n,y:-r},{x:l-n,y:-r+u},{x:n,y:-r+u},{x:n,y:-r+u}]:i.has("left")?[{x:n,y:0},{x:n,y:-u},{x:l-n,y:-u},{x:l-n,y:-r+u},{x:n,y:-r+u},{x:n,y:-r},{x:0,y:-r/2}]:i.has("up")?[{x:n,y:-u},{x:n,y:-r+u},{x:0,y:-r+u},{x:l/2,y:-r},{x:l,y:-r+u},{x:l-n,y:-r+u},{x:l-n,y:-u}]:i.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:n,y:-u},{x:n,y:-r+u},{x:l-n,y:-r+u},{x:l-n,y:-u},{x:l,y:-u}]:[{x:0,y:0}]},"getArrowPoints");function $t(e,t){return e.intersect(t)}g($t,"intersectNode");var Zr=$t;function te(e,t,a,s){var i=e.x,c=e.y,r=i-s.x,n=c-s.y,l=Math.sqrt(t*t*n*n+a*a*r*r),u=Math.abs(t*a*r/l);s.x0}g(Lt,"sameSign");var Jr=ae,Qr=se;function se(e,t,a){var s=e.x,i=e.y,c=[],r=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(y){r=Math.min(r,y.x),n=Math.min(n,y.y)}):(r=Math.min(r,t.x),n=Math.min(n,t.y));for(var l=s-e.width/2-r,u=i-e.height/2-n,h=0;h1&&c.sort(function(y,v){var S=y.x-a.x,N=y.y-a.y,_=Math.sqrt(S*S+N*N),T=v.x-a.x,m=v.y-a.y,p=Math.sqrt(T*T+m*m);return _{var a=e.x,s=e.y,i=t.x-a,c=t.y-s,r=e.width/2,n=e.height/2,l,u;return Math.abs(c)*r>Math.abs(i)*n?(c<0&&(n=-n),l=c===0?0:n*i/c,u=n):(i<0&&(r=-r),l=r,u=i===0?0:r*c/i),{x:a+l,y:s+u}},"intersectRect"),ta=$r,B={node:Zr,circle:qr,ellipse:ee,polygon:Qr,rect:ta},A=g(async(e,t,a,s)=>{const i=R();let c;const r=t.useHtmlLabels||M(i);a?c=a:c="node default";const n=e.insert("g").attr("class",c).attr("id",t.domId||t.id),l=n.insert("g").attr("class","label").attr("style",t.labelStyle);let u;t.labelText===void 0?u="":u=typeof t.labelText=="string"?t.labelText:t.labelText[0];let h;t.labelType==="markdown"?h=kt(l,Ct(Ot(u),i),{useHtmlLabels:r,width:t.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):h=await K(l,Ct(Ot(u),i),t.labelStyle,!1,s);let d=h.getBBox();const b=t.padding/2;if(M(i)){const w=h.children[0],y=D(h);await Ge(w,u),d=w.getBoundingClientRect(),y.attr("width",d.width),y.attr("height",d.height)}return r?l.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"):l.attr("transform","translate(0, "+-d.height/2+")"),t.centerLabel&&l.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),l.insert("rect",":first-child"),{shapeSvg:n,bbox:d,halfPadding:b,label:l}},"labelHelper"),I=g((e,t)=>{const a=t.node().getBBox();e.width=a.width,e.height=a.height},"updateNodeBounds");function X(e,t,a,s){return e.insert("polygon",":first-child").attr("points",s.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+a/2+")")}g(X,"insertPolygonShape");var ea=g(async(e,t)=>{t.useHtmlLabels||M(R())||(t.centerLabel=!0);const{shapeSvg:s,bbox:i,halfPadding:c}=await A(e,t,"node "+t.classes,!0);k.info("Classes = ",t.classes);const r=s.insert("rect",":first-child");return r.attr("rx",t.rx).attr("ry",t.ry).attr("x",-i.width/2-c).attr("y",-i.height/2-c).attr("width",i.width+t.padding).attr("height",i.height+t.padding),I(t,r),t.intersect=function(n){return B.rect(t,n)},s},"note"),ra=ea,Ft=g(e=>e?" "+e:"","formatClass"),Y=g((e,t)=>`${t||"node default"}${Ft(e.classes)} ${Ft(e.class)}`,"getClassesFromNode"),Wt=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=i+c,n=[{x:r/2,y:0},{x:r,y:-r/2},{x:r/2,y:-r},{x:0,y:-r/2}];k.info("Question main (Circle)");const l=X(a,r,r,n);return l.attr("style",t.style),I(t,l),t.intersect=function(u){return k.warn("Intersect called"),B.polygon(t,n,u)},a},"question"),aa=g((e,t)=>{const a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),s=28,i=[{x:0,y:s/2},{x:s/2,y:0},{x:0,y:-s/2},{x:-s/2,y:0}];return a.insert("polygon",":first-child").attr("points",i.map(function(r){return r.x+","+r.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(r){return B.circle(t,14,r)},a},"choice"),sa=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=4,c=t.positioned?t.height:s.height+t.padding,r=c/i,n=t.positioned?t.width:s.width+2*r+t.padding,l=[{x:r,y:0},{x:n-r,y:0},{x:n,y:-c/2},{x:n-r,y:-c},{x:r,y:-c},{x:0,y:-c/2}],u=X(a,n,c,l);return u.attr("style",t.style),I(t,u),t.intersect=function(h){return B.polygon(t,l,h)},a},"hexagon"),ia=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,void 0,!0),i=2,c=s.height+2*t.padding,r=c/i,n=s.width+2*r+t.padding,u=t.positioned&&(t.widthInColumns??1)>1&&t.width>n?t.width:n,h=Gr(t.directions,s,t,u),d=X(a,u,c,h);return d.attr("style",t.style),I(t,d),t.intersect=function(b){return B.polygon(t,h,b)},a},"block_arrow"),na=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:-c/2,y:0},{x:i,y:0},{x:i,y:-c},{x:-c/2,y:-c},{x:0,y:-c/2}];return X(a,i,c,r).attr("style",t.style),t.width=i+c,t.height=c,t.intersect=function(l){return B.polygon(t,r,l)},a},"rect_left_inv_arrow"),ca=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:-2*c/6,y:0},{x:i-c/6,y:0},{x:i+2*c/6,y:-c},{x:c/6,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"lean_right"),la=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:2*c/6,y:0},{x:i+c/6,y:0},{x:i-2*c/6,y:-c},{x:-c/6,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"lean_left"),oa=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:-2*c/6,y:0},{x:i+2*c/6,y:0},{x:i-c/6,y:-c},{x:c/6,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"trapezoid"),ha=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:c/6,y:0},{x:i-c/6,y:0},{x:i+2*c/6,y:-c},{x:-2*c/6,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"inv_trapezoid"),ga=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:0,y:0},{x:i+c/2,y:0},{x:i,y:-c/2},{x:i+c/2,y:-c},{x:0,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"rect_right_inv_arrow"),ua=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=i/2,r=c/(2.5+i/50),n=s.height+r+t.padding,l="M 0,"+r+" a "+c+","+r+" 0,0,0 "+i+" 0 a "+c+","+r+" 0,0,0 "+-i+" 0 l 0,"+n+" a "+c+","+r+" 0,0,0 "+i+" 0 l 0,"+-n,u=a.attr("label-offset-y",r).insert("path",":first-child").attr("style",t.style).attr("d",l).attr("transform","translate("+-i/2+","+-(n/2+r)+")");return I(t,u),t.intersect=function(h){const d=B.rect(t,h),b=d.x-t.x;if(c!=0&&(Math.abs(b)t.height/2-r)){let w=r*r*(1-b*b/(c*c));w!=0&&(w=Math.sqrt(w)),w=r-w,h.y-t.y>0&&(w=-w),d.y+=w}return d},a},"cylinder"),da=g(async(e,t)=>{const{shapeSvg:a,bbox:s,halfPadding:i}=await A(e,t,"node "+t.classes+" "+t.class,!0),c=a.insert("rect",":first-child"),r=t.positioned?t.width:s.width+t.padding,n=t.positioned?t.height:s.height+t.padding,l=t.positioned?-r/2:-s.width/2-i,u=t.positioned?-n/2:-s.height/2-i;if(c.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",l).attr("y",u).attr("width",r).attr("height",n),t.props){const h=new Set(Object.keys(t.props));t.props.borders&&(ot(c,t.props.borders,r,n),h.delete("borders")),h.forEach(d=>{k.warn(`Unknown node property ${d}`)})}return I(t,c),t.intersect=function(h){return B.rect(t,h)},a},"rect"),pa=g(async(e,t)=>{const{shapeSvg:a,bbox:s,halfPadding:i}=await A(e,t,"node "+t.classes,!0),c=a.insert("rect",":first-child"),r=t.positioned?t.width:s.width+t.padding,n=t.positioned?t.height:s.height+t.padding,l=t.positioned?-r/2:-s.width/2-i,u=t.positioned?-n/2:-s.height/2-i;if(c.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",l).attr("y",u).attr("width",r).attr("height",n),t.props){const h=new Set(Object.keys(t.props));t.props.borders&&(ot(c,t.props.borders,r,n),h.delete("borders")),h.forEach(d=>{k.warn(`Unknown node property ${d}`)})}return I(t,c),t.intersect=function(h){return B.rect(t,h)},a},"composite"),fa=g(async(e,t)=>{const{shapeSvg:a}=await A(e,t,"label",!0);k.trace("Classes = ",t.class);const s=a.insert("rect",":first-child"),i=0,c=0;if(s.attr("width",i).attr("height",c),a.attr("class","label edgeLabel"),t.props){const r=new Set(Object.keys(t.props));t.props.borders&&(ot(s,t.props.borders,i,c),r.delete("borders")),r.forEach(n=>{k.warn(`Unknown node property ${n}`)})}return I(t,s),t.intersect=function(r){return B.rect(t,r)},a},"labelRect");function ot(e,t,a,s){const i=[],c=g(n=>{i.push(n,0)},"addBorder"),r=g(n=>{i.push(0,n)},"skipBorder");t.includes("t")?(k.debug("add top border"),c(a)):r(a),t.includes("r")?(k.debug("add right border"),c(s)):r(s),t.includes("b")?(k.debug("add bottom border"),c(a)):r(a),t.includes("l")?(k.debug("add left border"),c(s)):r(s),e.attr("stroke-dasharray",i.join(" "))}g(ot,"applyNodePropertyBorders");var xa=g(async(e,t)=>{let a;t.classes?a="node "+t.classes:a="node default";const s=e.insert("g").attr("class",a).attr("id",t.domId||t.id),i=s.insert("rect",":first-child"),c=s.insert("line"),r=s.insert("g").attr("class","label"),n=t.labelText.flat?t.labelText.flat():t.labelText;let l="";typeof n=="object"?l=n[0]:l=n,k.info("Label text abc79",l,n,typeof n=="object");const u=await K(r,l,t.labelStyle,!0,!0);let h={width:0,height:0};if(M(R())){const v=u.children[0],S=D(u);h=v.getBoundingClientRect(),S.attr("width",h.width),S.attr("height",h.height)}k.info("Text 2",n);const d=n.slice(1,n.length);let b=u.getBBox();const w=await K(r,d.join?d.join("
"):d,t.labelStyle,!0,!0);if(M(R())){const v=w.children[0],S=D(w);h=v.getBoundingClientRect(),S.attr("width",h.width),S.attr("height",h.height)}const y=t.padding/2;return D(w).attr("transform","translate( "+(h.width>b.width?0:(b.width-h.width)/2)+", "+(b.height+y+5)+")"),D(u).attr("transform","translate( "+(h.width{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.height+t.padding,c=s.width+i/4+t.padding,r=a.insert("rect",":first-child").attr("style",t.style).attr("rx",i/2).attr("ry",i/2).attr("x",-c/2).attr("y",-i/2).attr("width",c).attr("height",i);return I(t,r),t.intersect=function(n){return B.rect(t,n)},a},"stadium"),ba=g(async(e,t)=>{const{shapeSvg:a,bbox:s,halfPadding:i}=await A(e,t,Y(t,void 0),!0),c=a.insert("circle",":first-child");return c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",s.width/2+i).attr("width",s.width+t.padding).attr("height",s.height+t.padding),k.info("Circle main"),I(t,c),t.intersect=function(r){return k.info("Circle intersect",t,s.width/2+i,r),B.circle(t,s.width/2+i,r)},a},"circle"),wa=g(async(e,t)=>{const{shapeSvg:a,bbox:s,halfPadding:i}=await A(e,t,Y(t,void 0),!0),c=5,r=a.insert("g",":first-child"),n=r.insert("circle"),l=r.insert("circle");return r.attr("class",t.class),n.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",s.width/2+i+c).attr("width",s.width+t.padding+c*2).attr("height",s.height+t.padding+c*2),l.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",s.width/2+i).attr("width",s.width+t.padding).attr("height",s.height+t.padding),k.info("DoubleCircle main"),I(t,n),t.intersect=function(u){return k.info("DoubleCircle intersect",t,s.width/2+i+c,u),B.circle(t,s.width/2+i+c,u)},a},"doublecircle"),ma=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:0,y:0},{x:i,y:0},{x:i,y:-c},{x:0,y:-c},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-c},{x:-8,y:-c},{x:-8,y:0}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"subroutine"),Sa=g((e,t)=>{const a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),s=a.insert("circle",":first-child");return s.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),I(t,s),t.intersect=function(i){return B.circle(t,7,i)},a},"start"),Yt=g((e,t,a)=>{const s=e.insert("g").attr("class","node default").attr("id",t.domId||t.id);let i=70,c=10;a==="LR"&&(i=10,c=70);const r=s.append("rect").attr("x",-1*i/2).attr("y",-1*c/2).attr("width",i).attr("height",c).attr("class","fork-join");return I(t,r),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(n){return B.rect(t,n)},s},"forkJoin"),La=g((e,t)=>{const a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),s=a.insert("circle",":first-child"),i=a.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),s.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),I(t,i),t.intersect=function(c){return B.circle(t,7,c)},a},"end"),ka=g(async(e,t)=>{const a=t.padding/2,s=4,i=8;let c;t.classes?c="node "+t.classes:c="node default";const r=e.insert("g").attr("class",c).attr("id",t.domId||t.id),n=r.insert("rect",":first-child"),l=r.insert("line"),u=r.insert("line");let h=0,d=s;const b=r.insert("g").attr("class","label");let w=0;const y=t.classData.annotations?.[0],v=t.classData.annotations[0]?"«"+t.classData.annotations[0]+"»":"",S=await K(b,v,t.labelStyle,!0,!0);let N=S.getBBox();if(M(R())){const E=S.children[0],o=D(S);N=E.getBoundingClientRect(),o.attr("width",N.width),o.attr("height",N.height)}t.classData.annotations[0]&&(d+=N.height+s,h+=N.width);let _=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(M(R())?_+="<"+t.classData.type+">":_+="<"+t.classData.type+">");const T=await K(b,_,t.labelStyle,!0,!0);D(T).attr("class","classTitle");let m=T.getBBox();if(M(R())){const E=T.children[0],o=D(T);m=E.getBoundingClientRect(),o.attr("width",m.width),o.attr("height",m.height)}d+=m.height+s,m.width>h&&(h=m.width);const p=[];t.classData.members.forEach(async E=>{const o=E.getDisplayDetails();let F=o.displayText;M(R())&&(F=F.replace(//g,">"));const f=await K(b,F,o.cssStyle?o.cssStyle:t.labelStyle,!0,!0);let C=f.getBBox();if(M(R())){const Z=f.children[0],V=D(f);C=Z.getBoundingClientRect(),V.attr("width",C.width),V.attr("height",C.height)}C.width>h&&(h=C.width),d+=C.height+s,p.push(f)}),d+=i;const x=[];if(t.classData.methods.forEach(async E=>{const o=E.getDisplayDetails();let F=o.displayText;M(R())&&(F=F.replace(//g,">"));const f=await K(b,F,o.cssStyle?o.cssStyle:t.labelStyle,!0,!0);let C=f.getBBox();if(M(R())){const Z=f.children[0],V=D(f);C=Z.getBoundingClientRect(),V.attr("width",C.width),V.attr("height",C.height)}C.width>h&&(h=C.width),d+=C.height+s,x.push(f)}),d+=i,y){let E=(h-N.width)/2;D(S).attr("transform","translate( "+(-1*h/2+E)+", "+-1*d/2+")"),w=N.height+s}let L=(h-m.width)/2;return D(T).attr("transform","translate( "+(-1*h/2+L)+", "+(-1*d/2+w)+")"),w+=m.height+s,l.attr("class","divider").attr("x1",-h/2-a).attr("x2",h/2+a).attr("y1",-d/2-a+i+w).attr("y2",-d/2-a+i+w),w+=i,p.forEach(E=>{D(E).attr("transform","translate( "+-h/2+", "+(-1*d/2+w+i/2)+")");const o=E?.getBBox();w+=(o?.height??0)+s}),w+=i,u.attr("class","divider").attr("x1",-h/2-a).attr("x2",h/2+a).attr("y1",-d/2-a+i+w).attr("y2",-d/2-a+i+w),w+=i,x.forEach(E=>{D(E).attr("transform","translate( "+-h/2+", "+(-1*d/2+w)+")");const o=E?.getBBox();w+=(o?.height??0)+s}),n.attr("style",t.style).attr("class","outer title-state").attr("x",-h/2-a).attr("y",-(d/2)-a).attr("width",h+t.padding).attr("height",d+t.padding),I(t,n),t.intersect=function(E){return B.rect(t,E)},r},"class_box"),Ht={rhombus:Wt,composite:pa,question:Wt,rect:da,labelRect:fa,rectWithTitle:xa,choice:aa,circle:ba,doublecircle:wa,stadium:ya,hexagon:sa,block_arrow:ia,rect_left_inv_arrow:na,lean_right:ca,lean_left:la,trapezoid:oa,inv_trapezoid:ha,rect_right_inv_arrow:ga,cylinder:ua,start:Sa,end:La,note:ra,subroutine:ma,fork:Yt,join:Yt,class_box:ka},nt={},ie=g(async(e,t,a)=>{let s,i;if(t.link){let c;R().securityLevel==="sandbox"?c="_top":t.linkTarget&&(c=t.linkTarget||"_blank"),s=e.insert("svg:a").attr("xlink:href",t.link).attr("target",c),i=await Ht[t.shape](s,t,a)}else i=await Ht[t.shape](e,t,a),s=i;return t.tooltip&&i.attr("title",t.tooltip),t.class&&i.attr("class","node default "+t.class),nt[t.id]=s,t.haveCallback&&nt[t.id].attr("class",nt[t.id].attr("class")+" clickable"),s},"insertNode"),va=g(e=>{const t=nt[e.id];k.trace("Transforming node",e.diff,e,"translate("+(e.x-e.width/2-5)+", "+e.width/2+")");const a=8,s=e.diff||0;return e.clusterNode?t.attr("transform","translate("+(e.x+s-e.width/2)+", "+(e.y-e.height/2-a)+")"):t.attr("transform","translate("+e.x+", "+e.y+")"),s},"positionNode");function Bt(e,t,a=!1){const s=e;let i="default";(s?.classes?.length||0)>0&&(i=(s?.classes??[]).join(" ")),i=i+" flowchart-label";let c=0,r="",n;switch(s.type){case"round":c=5,r="rect";break;case"composite":c=0,r="composite",n=0;break;case"square":r="rect";break;case"diamond":r="question";break;case"hexagon":r="hexagon";break;case"block_arrow":r="block_arrow";break;case"odd":r="rect_left_inv_arrow";break;case"lean_right":r="lean_right";break;case"lean_left":r="lean_left";break;case"trapezoid":r="trapezoid";break;case"inv_trapezoid":r="inv_trapezoid";break;case"rect_left_inv_arrow":r="rect_left_inv_arrow";break;case"circle":r="circle";break;case"ellipse":r="ellipse";break;case"stadium":r="stadium";break;case"subroutine":r="subroutine";break;case"cylinder":r="cylinder";break;case"group":r="rect";break;case"doublecircle":r="doublecircle";break;default:r="rect"}const l=je(s?.styles??[]),u=s.label,h=s.size??{width:0,height:0,x:0,y:0},d=t.getDiagramId();return{labelStyle:l.labelStyle,shape:r,labelText:u,rx:c,ry:c,class:i,style:l.style,id:s.id,domId:d?`${d}-${s.id}`:s.id,directions:s.directions,width:h.width,height:h.height,x:h.x,y:h.y,positioned:a,intersect:void 0,type:s.type,padding:n??rt()?.block?.padding??0,widthInColumns:s.widthInColumns??1}}g(Bt,"getNodeFromBlock");async function ne(e,t,a){const s=Bt(t,a,!1);if(s.type==="group")return;const i=rt(),c=await ie(e,s,{config:i}),r=c.node().getBBox(),n=a.getBlock(s.id);n.size={width:r.width,height:r.height,x:0,y:0,node:c},a.setBlock(n),c.remove()}g(ne,"calculateBlockSize");async function ce(e,t,a){const s=Bt(t,a,!0);if(a.getBlock(s.id).type!=="space"){const c=rt();await ie(e,s,{config:c}),t.intersect=s?.intersect,va(s)}}g(ce,"insertBlockPositioned");async function ht(e,t,a,s){for(const i of t)await s(e,i,a),i.children&&await ht(e,i.children,a,s)}g(ht,"performOperations");async function le(e,t,a){await ht(e,t,a,ne)}g(le,"calculateBlockSizes");async function oe(e,t,a){await ht(e,t,a,ce)}g(oe,"insertBlocks");async function he(e,t,a,s,i){const c=new Ze({multigraph:!0,compound:!0});c.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(const r of a)r.size&&c.setNode(r.id,{width:r.size.width,height:r.size.height,intersect:r.intersect});for(const r of t)if(r.start&&r.end){const n=s.getBlock(r.start),l=s.getBlock(r.end);if(n?.size&&l?.size){const u=n.size,h=l.size,d=[{x:u.x,y:u.y},{x:u.x+(h.x-u.x)/2,y:u.y+(h.y-u.y)/2},{x:h.x,y:h.y}],b=i?`${i}-${r.id}`:r.id,w=r.thickness==="thick"?"edge-thickness-thick":"edge-thickness-normal",y=r.pattern==="dotted"?"edge-pattern-dotted":"edge-pattern-solid",v=`${w} ${y} flowchart-link LS-a1 LE-b1`;Vr(e,{v:r.start,w:r.end,name:b},{...r,id:b,arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:d,classes:v},void 0,"block",c,i),r.label&&(await Hr(e,{...r,label:r.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:d,classes:v}),Kr({...r,x:d[1].x,y:d[1].y},{originalPath:d}))}}}g(he,"insertEdges");var Ea=g(function(e,t){return t.db.getClasses()},"getClasses"),_a=g(async function(e,t,a,s){const{securityLevel:i,block:c}=rt(),r=s.db;r.setDiagramId(t);let n;i==="sandbox"&&(n=D("#i"+t));const l=i==="sandbox"?D(n.nodes()[0].contentDocument.body):D("body"),u=i==="sandbox"?l.select(`[id="${t}"]`):D(`[id="${t}"]`);Mr(u,["point","circle","cross"],s.type,t);const d=r.getBlocks(),b=r.getBlocksFlat(),w=r.getEdges(),y=u.insert("g").attr("class","block");await le(y,d,r);const v=Qt(r);if(await oe(y,d,r),await he(y,w,b,r,t),v){const S=v,N=Math.max(1,Math.round(.125*(S.width/S.height))),_=S.height+N+10,T=S.width+10,{useMaxWidth:m}=c;Pe(u,_,T,!!m),k.debug("Here Bounds",v,S),u.attr("viewBox",`${S.x-5} ${S.y-5} ${S.width+10} ${S.height+10}`)}},"draw"),Ta={draw:_a,getClasses:Ea},Ra={parser:ar,db:kr,renderer:Ta,styles:Er};export{Ra as diagram}; + node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);const s=e.x,i=e.y,c=Math.abs(s-a.x),r=e.width/2;let n=a.xMath.abs(s-t.x)*l){let d=a.y{k.debug("abc88 cutPathAtIntersect",e,t);let a=[],s=e[0],i=!1;return e.forEach(c=>{if(!Ur(t,c)&&!i){const r=Xr(t,s,c);let n=!1;a.forEach(l=>{n=n||l.x===r.x&&l.y===r.y}),a.some(l=>l.x===r.x&&l.y===r.y)||a.push(r),i=!0}else s=c,i||a.push(c)}),a},"cutPathAtIntersect"),Vr=g(function(e,t,a,s,i,c,r){let n=a.points;k.debug("abc88 InsertEdge: edge=",a,"e=",t);let l=!1;const u=c.node(t.v);var h=c.node(t.w);h?.intersect&&u?.intersect&&(n=n.slice(1,a.points.length-1),n.unshift(u.intersect(n[0])),n.push(h.intersect(n[n.length-1]))),a.toCluster&&(k.debug("to cluster abc88",s[a.toCluster]),n=Pt(a.points,s[a.toCluster].node),l=!0),a.fromCluster&&(k.debug("from cluster abc88",s[a.fromCluster]),n=Pt(n.reverse(),s[a.fromCluster].node).reverse(),l=!0);const d=n.filter(m=>!Number.isNaN(m.y));let b=Ke;a.curve&&(i==="graph"||i==="flowchart")&&(b=a.curve);const{x:w,y}=Ye(a),v=He().x(w).y(y).curve(b);let S;switch(a.thickness){case"normal":S="edge-thickness-normal";break;case"thick":S="edge-thickness-thick";break;case"invisible":S="edge-thickness-thick";break;default:S=""}switch(a.pattern){case"solid":S+=" edge-pattern-solid";break;case"dotted":S+=" edge-pattern-dotted";break;case"dashed":S+=" edge-pattern-dashed";break}const N=e.append("path").attr("d",v(d)).attr("id",a.id).attr("class"," "+S+(a.classes?" "+a.classes:"")).attr("style",a.style);let _="";(R().flowchart.arrowMarkerAbsolute||R().state.arrowMarkerAbsolute)&&(_=Ue(!0)),Wr(N,a,_,r,i);let T={};return l&&(T.updatedPath=n),T.originalPath=a.points,T},"insertEdge"),jr=g(e=>{const t=new Set;for(const a of e)switch(a){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(a);break}return t},"expandAndDeduplicateDirections"),Gr=g((e,t,a,s)=>{const i=jr(e),c=2,r=t.height+2*a.padding,n=r/c,l=s??t.width+2*n+a.padding,u=a.padding/2;return i.has("right")&&i.has("left")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:n,y:0},{x:l/2,y:2*u},{x:l-n,y:0},{x:l,y:0},{x:l,y:-r/3},{x:l+2*u,y:-r/2},{x:l,y:-2*r/3},{x:l,y:-r},{x:l-n,y:-r},{x:l/2,y:-r-2*u},{x:n,y:-r},{x:0,y:-r},{x:0,y:-2*r/3},{x:-2*u,y:-r/2},{x:0,y:-r/3}]:i.has("right")&&i.has("left")&&i.has("up")?[{x:n,y:0},{x:l-n,y:0},{x:l,y:-r/2},{x:l-n,y:-r},{x:n,y:-r},{x:0,y:-r/2}]:i.has("right")&&i.has("left")&&i.has("down")?[{x:0,y:0},{x:n,y:-r},{x:l-n,y:-r},{x:l,y:0}]:i.has("right")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:l,y:-n},{x:l,y:-r+n},{x:0,y:-r}]:i.has("left")&&i.has("up")&&i.has("down")?[{x:l,y:0},{x:0,y:-n},{x:0,y:-r+n},{x:l,y:-r}]:i.has("right")&&i.has("left")?[{x:n,y:0},{x:n,y:-u},{x:l-n,y:-u},{x:l-n,y:0},{x:l,y:-r/2},{x:l-n,y:-r},{x:l-n,y:-r+u},{x:n,y:-r+u},{x:n,y:-r},{x:0,y:-r/2}]:i.has("up")&&i.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:n,y:-u},{x:n,y:-r+u},{x:0,y:-r+u},{x:l/2,y:-r},{x:l,y:-r+u},{x:l-n,y:-r+u},{x:l-n,y:-u},{x:l,y:-u}]:i.has("right")&&i.has("up")?[{x:0,y:0},{x:l,y:-n},{x:0,y:-r}]:i.has("right")&&i.has("down")?[{x:0,y:0},{x:l,y:0},{x:0,y:-r}]:i.has("left")&&i.has("up")?[{x:l,y:0},{x:0,y:-n},{x:l,y:-r}]:i.has("left")&&i.has("down")?[{x:l,y:0},{x:0,y:0},{x:l,y:-r}]:i.has("right")?[{x:n,y:-u},{x:n,y:-u},{x:l-n,y:-u},{x:l-n,y:0},{x:l,y:-r/2},{x:l-n,y:-r},{x:l-n,y:-r+u},{x:n,y:-r+u},{x:n,y:-r+u}]:i.has("left")?[{x:n,y:0},{x:n,y:-u},{x:l-n,y:-u},{x:l-n,y:-r+u},{x:n,y:-r+u},{x:n,y:-r},{x:0,y:-r/2}]:i.has("up")?[{x:n,y:-u},{x:n,y:-r+u},{x:0,y:-r+u},{x:l/2,y:-r},{x:l,y:-r+u},{x:l-n,y:-r+u},{x:l-n,y:-u}]:i.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:n,y:-u},{x:n,y:-r+u},{x:l-n,y:-r+u},{x:l-n,y:-u},{x:l,y:-u}]:[{x:0,y:0}]},"getArrowPoints");function $t(e,t){return e.intersect(t)}g($t,"intersectNode");var Zr=$t;function te(e,t,a,s){var i=e.x,c=e.y,r=i-s.x,n=c-s.y,l=Math.sqrt(t*t*n*n+a*a*r*r),u=Math.abs(t*a*r/l);s.x0}g(Lt,"sameSign");var Jr=ae,Qr=se;function se(e,t,a){var s=e.x,i=e.y,c=[],r=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(y){r=Math.min(r,y.x),n=Math.min(n,y.y)}):(r=Math.min(r,t.x),n=Math.min(n,t.y));for(var l=s-e.width/2-r,u=i-e.height/2-n,h=0;h1&&c.sort(function(y,v){var S=y.x-a.x,N=y.y-a.y,_=Math.sqrt(S*S+N*N),T=v.x-a.x,m=v.y-a.y,p=Math.sqrt(T*T+m*m);return _{var a=e.x,s=e.y,i=t.x-a,c=t.y-s,r=e.width/2,n=e.height/2,l,u;return Math.abs(c)*r>Math.abs(i)*n?(c<0&&(n=-n),l=c===0?0:n*i/c,u=n):(i<0&&(r=-r),l=r,u=i===0?0:r*c/i),{x:a+l,y:s+u}},"intersectRect"),ta=$r,B={node:Zr,circle:qr,ellipse:ee,polygon:Qr,rect:ta},A=g(async(e,t,a,s)=>{const i=R();let c;const r=t.useHtmlLabels||M(i);a?c=a:c="node default";const n=e.insert("g").attr("class",c).attr("id",t.domId||t.id),l=n.insert("g").attr("class","label").attr("style",t.labelStyle);let u;t.labelText===void 0?u="":u=typeof t.labelText=="string"?t.labelText:t.labelText[0];let h;t.labelType==="markdown"?h=kt(l,Ct(Ot(u),i),{useHtmlLabels:r,width:t.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):h=await K(l,Ct(Ot(u),i),t.labelStyle,!1,s);let d=h.getBBox();const b=t.padding/2;if(M(i)){const w=h.children[0],y=D(h);await Ge(w,u),d=w.getBoundingClientRect(),y.attr("width",d.width),y.attr("height",d.height)}return r?l.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"):l.attr("transform","translate(0, "+-d.height/2+")"),t.centerLabel&&l.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),l.insert("rect",":first-child"),{shapeSvg:n,bbox:d,halfPadding:b,label:l}},"labelHelper"),I=g((e,t)=>{const a=t.node().getBBox();e.width=a.width,e.height=a.height},"updateNodeBounds");function X(e,t,a,s){return e.insert("polygon",":first-child").attr("points",s.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+a/2+")")}g(X,"insertPolygonShape");var ea=g(async(e,t)=>{t.useHtmlLabels||M(R())||(t.centerLabel=!0);const{shapeSvg:s,bbox:i,halfPadding:c}=await A(e,t,"node "+t.classes,!0);k.info("Classes = ",t.classes);const r=s.insert("rect",":first-child");return r.attr("rx",t.rx).attr("ry",t.ry).attr("x",-i.width/2-c).attr("y",-i.height/2-c).attr("width",i.width+t.padding).attr("height",i.height+t.padding),I(t,r),t.intersect=function(n){return B.rect(t,n)},s},"note"),ra=ea,Ft=g(e=>e?" "+e:"","formatClass"),Y=g((e,t)=>`${t||"node default"}${Ft(e.classes)} ${Ft(e.class)}`,"getClassesFromNode"),Wt=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=i+c,n=[{x:r/2,y:0},{x:r,y:-r/2},{x:r/2,y:-r},{x:0,y:-r/2}];k.info("Question main (Circle)");const l=X(a,r,r,n);return l.attr("style",t.style),I(t,l),t.intersect=function(u){return k.warn("Intersect called"),B.polygon(t,n,u)},a},"question"),aa=g((e,t)=>{const a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),s=28,i=[{x:0,y:s/2},{x:s/2,y:0},{x:0,y:-s/2},{x:-s/2,y:0}];return a.insert("polygon",":first-child").attr("points",i.map(function(r){return r.x+","+r.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(r){return B.circle(t,14,r)},a},"choice"),sa=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=4,c=t.positioned?t.height:s.height+t.padding,r=c/i,n=t.positioned?t.width:s.width+2*r+t.padding,l=[{x:r,y:0},{x:n-r,y:0},{x:n,y:-c/2},{x:n-r,y:-c},{x:r,y:-c},{x:0,y:-c/2}],u=X(a,n,c,l);return u.attr("style",t.style),I(t,u),t.intersect=function(h){return B.polygon(t,l,h)},a},"hexagon"),ia=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,void 0,!0),i=2,c=s.height+2*t.padding,r=c/i,n=s.width+2*r+t.padding,u=t.positioned&&(t.widthInColumns??1)>1&&t.width>n?t.width:n,h=Gr(t.directions,s,t,u),d=X(a,u,c,h);return d.attr("style",t.style),I(t,d),t.intersect=function(b){return B.polygon(t,h,b)},a},"block_arrow"),na=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:-c/2,y:0},{x:i,y:0},{x:i,y:-c},{x:-c/2,y:-c},{x:0,y:-c/2}];return X(a,i,c,r).attr("style",t.style),t.width=i+c,t.height=c,t.intersect=function(l){return B.polygon(t,r,l)},a},"rect_left_inv_arrow"),ca=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:-2*c/6,y:0},{x:i-c/6,y:0},{x:i+2*c/6,y:-c},{x:c/6,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"lean_right"),la=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:2*c/6,y:0},{x:i+c/6,y:0},{x:i-2*c/6,y:-c},{x:-c/6,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"lean_left"),oa=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:-2*c/6,y:0},{x:i+2*c/6,y:0},{x:i-c/6,y:-c},{x:c/6,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"trapezoid"),ha=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:c/6,y:0},{x:i-c/6,y:0},{x:i+2*c/6,y:-c},{x:-2*c/6,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"inv_trapezoid"),ga=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:0,y:0},{x:i+c/2,y:0},{x:i,y:-c/2},{x:i+c/2,y:-c},{x:0,y:-c}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"rect_right_inv_arrow"),ua=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=i/2,r=c/(2.5+i/50),n=s.height+r+t.padding,l="M 0,"+r+" a "+c+","+r+" 0,0,0 "+i+" 0 a "+c+","+r+" 0,0,0 "+-i+" 0 l 0,"+n+" a "+c+","+r+" 0,0,0 "+i+" 0 l 0,"+-n,u=a.attr("label-offset-y",r).insert("path",":first-child").attr("style",t.style).attr("d",l).attr("transform","translate("+-i/2+","+-(n/2+r)+")");return I(t,u),t.intersect=function(h){const d=B.rect(t,h),b=d.x-t.x;if(c!=0&&(Math.abs(b)t.height/2-r)){let w=r*r*(1-b*b/(c*c));w!=0&&(w=Math.sqrt(w)),w=r-w,h.y-t.y>0&&(w=-w),d.y+=w}return d},a},"cylinder"),da=g(async(e,t)=>{const{shapeSvg:a,bbox:s,halfPadding:i}=await A(e,t,"node "+t.classes+" "+t.class,!0),c=a.insert("rect",":first-child"),r=t.positioned?t.width:s.width+t.padding,n=t.positioned?t.height:s.height+t.padding,l=t.positioned?-r/2:-s.width/2-i,u=t.positioned?-n/2:-s.height/2-i;if(c.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",l).attr("y",u).attr("width",r).attr("height",n),t.props){const h=new Set(Object.keys(t.props));t.props.borders&&(ot(c,t.props.borders,r,n),h.delete("borders")),h.forEach(d=>{k.warn(`Unknown node property ${d}`)})}return I(t,c),t.intersect=function(h){return B.rect(t,h)},a},"rect"),pa=g(async(e,t)=>{const{shapeSvg:a,bbox:s,halfPadding:i}=await A(e,t,"node "+t.classes,!0),c=a.insert("rect",":first-child"),r=t.positioned?t.width:s.width+t.padding,n=t.positioned?t.height:s.height+t.padding,l=t.positioned?-r/2:-s.width/2-i,u=t.positioned?-n/2:-s.height/2-i;if(c.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",l).attr("y",u).attr("width",r).attr("height",n),t.props){const h=new Set(Object.keys(t.props));t.props.borders&&(ot(c,t.props.borders,r,n),h.delete("borders")),h.forEach(d=>{k.warn(`Unknown node property ${d}`)})}return I(t,c),t.intersect=function(h){return B.rect(t,h)},a},"composite"),fa=g(async(e,t)=>{const{shapeSvg:a}=await A(e,t,"label",!0);k.trace("Classes = ",t.class);const s=a.insert("rect",":first-child"),i=0,c=0;if(s.attr("width",i).attr("height",c),a.attr("class","label edgeLabel"),t.props){const r=new Set(Object.keys(t.props));t.props.borders&&(ot(s,t.props.borders,i,c),r.delete("borders")),r.forEach(n=>{k.warn(`Unknown node property ${n}`)})}return I(t,s),t.intersect=function(r){return B.rect(t,r)},a},"labelRect");function ot(e,t,a,s){const i=[],c=g(n=>{i.push(n,0)},"addBorder"),r=g(n=>{i.push(0,n)},"skipBorder");t.includes("t")?(k.debug("add top border"),c(a)):r(a),t.includes("r")?(k.debug("add right border"),c(s)):r(s),t.includes("b")?(k.debug("add bottom border"),c(a)):r(a),t.includes("l")?(k.debug("add left border"),c(s)):r(s),e.attr("stroke-dasharray",i.join(" "))}g(ot,"applyNodePropertyBorders");var xa=g(async(e,t)=>{let a;t.classes?a="node "+t.classes:a="node default";const s=e.insert("g").attr("class",a).attr("id",t.domId||t.id),i=s.insert("rect",":first-child"),c=s.insert("line"),r=s.insert("g").attr("class","label"),n=t.labelText.flat?t.labelText.flat():t.labelText;let l="";typeof n=="object"?l=n[0]:l=n,k.info("Label text abc79",l,n,typeof n=="object");const u=await K(r,l,t.labelStyle,!0,!0);let h={width:0,height:0};if(M(R())){const v=u.children[0],S=D(u);h=v.getBoundingClientRect(),S.attr("width",h.width),S.attr("height",h.height)}k.info("Text 2",n);const d=n.slice(1,n.length);let b=u.getBBox();const w=await K(r,d.join?d.join("
"):d,t.labelStyle,!0,!0);if(M(R())){const v=w.children[0],S=D(w);h=v.getBoundingClientRect(),S.attr("width",h.width),S.attr("height",h.height)}const y=t.padding/2;return D(w).attr("transform","translate( "+(h.width>b.width?0:(b.width-h.width)/2)+", "+(b.height+y+5)+")"),D(u).attr("transform","translate( "+(h.width{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.height+t.padding,c=s.width+i/4+t.padding,r=a.insert("rect",":first-child").attr("style",t.style).attr("rx",i/2).attr("ry",i/2).attr("x",-c/2).attr("y",-i/2).attr("width",c).attr("height",i);return I(t,r),t.intersect=function(n){return B.rect(t,n)},a},"stadium"),ba=g(async(e,t)=>{const{shapeSvg:a,bbox:s,halfPadding:i}=await A(e,t,Y(t,void 0),!0),c=a.insert("circle",":first-child");return c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",s.width/2+i).attr("width",s.width+t.padding).attr("height",s.height+t.padding),k.info("Circle main"),I(t,c),t.intersect=function(r){return k.info("Circle intersect",t,s.width/2+i,r),B.circle(t,s.width/2+i,r)},a},"circle"),wa=g(async(e,t)=>{const{shapeSvg:a,bbox:s,halfPadding:i}=await A(e,t,Y(t,void 0),!0),c=5,r=a.insert("g",":first-child"),n=r.insert("circle"),l=r.insert("circle");return r.attr("class",t.class),n.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",s.width/2+i+c).attr("width",s.width+t.padding+c*2).attr("height",s.height+t.padding+c*2),l.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",s.width/2+i).attr("width",s.width+t.padding).attr("height",s.height+t.padding),k.info("DoubleCircle main"),I(t,n),t.intersect=function(u){return k.info("DoubleCircle intersect",t,s.width/2+i+c,u),B.circle(t,s.width/2+i+c,u)},a},"doublecircle"),ma=g(async(e,t)=>{const{shapeSvg:a,bbox:s}=await A(e,t,Y(t,void 0),!0),i=s.width+t.padding,c=s.height+t.padding,r=[{x:0,y:0},{x:i,y:0},{x:i,y:-c},{x:0,y:-c},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-c},{x:-8,y:-c},{x:-8,y:0}],n=X(a,i,c,r);return n.attr("style",t.style),I(t,n),t.intersect=function(l){return B.polygon(t,r,l)},a},"subroutine"),Sa=g((e,t)=>{const a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),s=a.insert("circle",":first-child");return s.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),I(t,s),t.intersect=function(i){return B.circle(t,7,i)},a},"start"),Yt=g((e,t,a)=>{const s=e.insert("g").attr("class","node default").attr("id",t.domId||t.id);let i=70,c=10;a==="LR"&&(i=10,c=70);const r=s.append("rect").attr("x",-1*i/2).attr("y",-1*c/2).attr("width",i).attr("height",c).attr("class","fork-join");return I(t,r),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(n){return B.rect(t,n)},s},"forkJoin"),La=g((e,t)=>{const a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),s=a.insert("circle",":first-child"),i=a.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),s.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),I(t,i),t.intersect=function(c){return B.circle(t,7,c)},a},"end"),ka=g(async(e,t)=>{const a=t.padding/2,s=4,i=8;let c;t.classes?c="node "+t.classes:c="node default";const r=e.insert("g").attr("class",c).attr("id",t.domId||t.id),n=r.insert("rect",":first-child"),l=r.insert("line"),u=r.insert("line");let h=0,d=s;const b=r.insert("g").attr("class","label");let w=0;const y=t.classData.annotations?.[0],v=t.classData.annotations[0]?"«"+t.classData.annotations[0]+"»":"",S=await K(b,v,t.labelStyle,!0,!0);let N=S.getBBox();if(M(R())){const E=S.children[0],o=D(S);N=E.getBoundingClientRect(),o.attr("width",N.width),o.attr("height",N.height)}t.classData.annotations[0]&&(d+=N.height+s,h+=N.width);let _=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(M(R())?_+="<"+t.classData.type+">":_+="<"+t.classData.type+">");const T=await K(b,_,t.labelStyle,!0,!0);D(T).attr("class","classTitle");let m=T.getBBox();if(M(R())){const E=T.children[0],o=D(T);m=E.getBoundingClientRect(),o.attr("width",m.width),o.attr("height",m.height)}d+=m.height+s,m.width>h&&(h=m.width);const p=[];t.classData.members.forEach(async E=>{const o=E.getDisplayDetails();let F=o.displayText;M(R())&&(F=F.replace(//g,">"));const f=await K(b,F,o.cssStyle?o.cssStyle:t.labelStyle,!0,!0);let C=f.getBBox();if(M(R())){const Z=f.children[0],V=D(f);C=Z.getBoundingClientRect(),V.attr("width",C.width),V.attr("height",C.height)}C.width>h&&(h=C.width),d+=C.height+s,p.push(f)}),d+=i;const x=[];if(t.classData.methods.forEach(async E=>{const o=E.getDisplayDetails();let F=o.displayText;M(R())&&(F=F.replace(//g,">"));const f=await K(b,F,o.cssStyle?o.cssStyle:t.labelStyle,!0,!0);let C=f.getBBox();if(M(R())){const Z=f.children[0],V=D(f);C=Z.getBoundingClientRect(),V.attr("width",C.width),V.attr("height",C.height)}C.width>h&&(h=C.width),d+=C.height+s,x.push(f)}),d+=i,y){let E=(h-N.width)/2;D(S).attr("transform","translate( "+(-1*h/2+E)+", "+-1*d/2+")"),w=N.height+s}let L=(h-m.width)/2;return D(T).attr("transform","translate( "+(-1*h/2+L)+", "+(-1*d/2+w)+")"),w+=m.height+s,l.attr("class","divider").attr("x1",-h/2-a).attr("x2",h/2+a).attr("y1",-d/2-a+i+w).attr("y2",-d/2-a+i+w),w+=i,p.forEach(E=>{D(E).attr("transform","translate( "+-h/2+", "+(-1*d/2+w+i/2)+")");const o=E?.getBBox();w+=(o?.height??0)+s}),w+=i,u.attr("class","divider").attr("x1",-h/2-a).attr("x2",h/2+a).attr("y1",-d/2-a+i+w).attr("y2",-d/2-a+i+w),w+=i,x.forEach(E=>{D(E).attr("transform","translate( "+-h/2+", "+(-1*d/2+w)+")");const o=E?.getBBox();w+=(o?.height??0)+s}),n.attr("style",t.style).attr("class","outer title-state").attr("x",-h/2-a).attr("y",-(d/2)-a).attr("width",h+t.padding).attr("height",d+t.padding),I(t,n),t.intersect=function(E){return B.rect(t,E)},r},"class_box"),Ht={rhombus:Wt,composite:pa,question:Wt,rect:da,labelRect:fa,rectWithTitle:xa,choice:aa,circle:ba,doublecircle:wa,stadium:ya,hexagon:sa,block_arrow:ia,rect_left_inv_arrow:na,lean_right:ca,lean_left:la,trapezoid:oa,inv_trapezoid:ha,rect_right_inv_arrow:ga,cylinder:ua,start:Sa,end:La,note:ra,subroutine:ma,fork:Yt,join:Yt,class_box:ka},nt={},ie=g(async(e,t,a)=>{let s,i;if(t.link){let c;R().securityLevel==="sandbox"?c="_top":t.linkTarget&&(c=t.linkTarget||"_blank"),s=e.insert("svg:a").attr("xlink:href",t.link).attr("target",c),i=await Ht[t.shape](s,t,a)}else i=await Ht[t.shape](e,t,a),s=i;return t.tooltip&&i.attr("title",t.tooltip),t.class&&i.attr("class","node default "+t.class),nt[t.id]=s,t.haveCallback&&nt[t.id].attr("class",nt[t.id].attr("class")+" clickable"),s},"insertNode"),va=g(e=>{const t=nt[e.id];k.trace("Transforming node",e.diff,e,"translate("+(e.x-e.width/2-5)+", "+e.width/2+")");const a=8,s=e.diff||0;return e.clusterNode?t.attr("transform","translate("+(e.x+s-e.width/2)+", "+(e.y-e.height/2-a)+")"):t.attr("transform","translate("+e.x+", "+e.y+")"),s},"positionNode");function Bt(e,t,a=!1){const s=e;let i="default";(s?.classes?.length||0)>0&&(i=(s?.classes??[]).join(" ")),i=i+" flowchart-label";let c=0,r="",n;switch(s.type){case"round":c=5,r="rect";break;case"composite":c=0,r="composite",n=0;break;case"square":r="rect";break;case"diamond":r="question";break;case"hexagon":r="hexagon";break;case"block_arrow":r="block_arrow";break;case"odd":r="rect_left_inv_arrow";break;case"lean_right":r="lean_right";break;case"lean_left":r="lean_left";break;case"trapezoid":r="trapezoid";break;case"inv_trapezoid":r="inv_trapezoid";break;case"rect_left_inv_arrow":r="rect_left_inv_arrow";break;case"circle":r="circle";break;case"ellipse":r="ellipse";break;case"stadium":r="stadium";break;case"subroutine":r="subroutine";break;case"cylinder":r="cylinder";break;case"group":r="rect";break;case"doublecircle":r="doublecircle";break;default:r="rect"}const l=je(s?.styles??[]),u=s.label,h=s.size??{width:0,height:0,x:0,y:0},d=t.getDiagramId();return{labelStyle:l.labelStyle,shape:r,labelText:u,rx:c,ry:c,class:i,style:l.style,id:s.id,domId:d?`${d}-${s.id}`:s.id,directions:s.directions,width:h.width,height:h.height,x:h.x,y:h.y,positioned:a,intersect:void 0,type:s.type,padding:n??rt()?.block?.padding??0,widthInColumns:s.widthInColumns??1}}g(Bt,"getNodeFromBlock");async function ne(e,t,a){const s=Bt(t,a,!1);if(s.type==="group")return;const i=rt(),c=await ie(e,s,{config:i}),r=c.node().getBBox(),n=a.getBlock(s.id);n.size={width:r.width,height:r.height,x:0,y:0,node:c},a.setBlock(n),c.remove()}g(ne,"calculateBlockSize");async function ce(e,t,a){const s=Bt(t,a,!0);if(a.getBlock(s.id).type!=="space"){const c=rt();await ie(e,s,{config:c}),t.intersect=s?.intersect,va(s)}}g(ce,"insertBlockPositioned");async function ht(e,t,a,s){for(const i of t)await s(e,i,a),i.children&&await ht(e,i.children,a,s)}g(ht,"performOperations");async function le(e,t,a){await ht(e,t,a,ne)}g(le,"calculateBlockSizes");async function oe(e,t,a){await ht(e,t,a,ce)}g(oe,"insertBlocks");async function he(e,t,a,s,i){const c=new Ze({multigraph:!0,compound:!0});c.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(const r of a)r.size&&c.setNode(r.id,{width:r.size.width,height:r.size.height,intersect:r.intersect});for(const r of t)if(r.start&&r.end){const n=s.getBlock(r.start),l=s.getBlock(r.end);if(n?.size&&l?.size){const u=n.size,h=l.size,d=[{x:u.x,y:u.y},{x:u.x+(h.x-u.x)/2,y:u.y+(h.y-u.y)/2},{x:h.x,y:h.y}],b=i?`${i}-${r.id}`:r.id,w=r.thickness==="thick"?"edge-thickness-thick":"edge-thickness-normal",y=r.pattern==="dotted"?"edge-pattern-dotted":"edge-pattern-solid",v=`${w} ${y} flowchart-link LS-a1 LE-b1`;Vr(e,{v:r.start,w:r.end,name:b},{...r,id:b,arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:d,classes:v},void 0,"block",c,i),r.label&&(await Hr(e,{...r,label:r.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:d,classes:v}),Kr({...r,x:d[1].x,y:d[1].y},{originalPath:d}))}}}g(he,"insertEdges");var Ea=g(function(e,t){return t.db.getClasses()},"getClasses"),_a=g(async function(e,t,a,s){const{securityLevel:i,block:c}=rt(),r=s.db;r.setDiagramId(t);let n;i==="sandbox"&&(n=D("#i"+t));const l=i==="sandbox"?D(n.nodes()[0].contentDocument.body):D("body"),u=i==="sandbox"?l.select(`[id="${t}"]`):D(`[id="${t}"]`);Mr(u,["point","circle","cross"],s.type,t);const d=r.getBlocks(),b=r.getBlocksFlat(),w=r.getEdges(),y=u.insert("g").attr("class","block");await le(y,d,r);const v=Qt(r);if(await oe(y,d,r),await he(y,w,b,r,t),v){const S=v,N=Math.max(1,Math.round(.125*(S.width/S.height))),_=S.height+N+10,T=S.width+10,{useMaxWidth:m}=c;Pe(u,_,T,!!m),k.debug("Here Bounds",v,S),u.attr("viewBox",`${S.x-5} ${S.y-5} ${S.width+10} ${S.height+10}`)}},"draw"),Ta={draw:_a,getClasses:Ea},Oa={parser:ar,db:kr,renderer:Ta,styles:Er};export{Oa as diagram}; diff --git a/apps/kimi-code/dist-web/assets/c4Diagram-LMCZKHZV-C0xqgo03.js b/apps/kimi-code/dist-web/assets/c4Diagram-LMCZKHZV-BDG3tEBQ.js similarity index 80% rename from apps/kimi-code/dist-web/assets/c4Diagram-LMCZKHZV-C0xqgo03.js rename to apps/kimi-code/dist-web/assets/c4Diagram-LMCZKHZV-BDG3tEBQ.js index fa773b5a84..7756d9b102 100644 --- a/apps/kimi-code/dist-web/assets/c4Diagram-LMCZKHZV-C0xqgo03.js +++ b/apps/kimi-code/dist-web/assets/c4Diagram-LMCZKHZV-BDG3tEBQ.js @@ -1,4 +1,4 @@ -import{g as Oe,d as Re}from"./chunk-32BRIVSS-3l6XZxpp.js";import{s as Se,g as De,a as Pe,b as Be,_ as y,c as Dt,d as Nt,l as he,e as Ie,f as Me,h as Tt,i as pe,j as Le,w as Ne,k as Jt,m as ue}from"./mermaid.core-Dxfcv_J5.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var jt=(function(){var e=y(function(_t,x,v,E){for(v=v||{},E=_t.length;E--;v[_t[E]]=x);return v},"o"),t=[1,24],s=[1,25],o=[1,26],l=[1,27],r=[1,28],a=[1,63],n=[1,64],i=[1,65],u=[1,66],d=[1,67],p=[1,68],g=[1,69],m=[1,29],O=[1,30],S=[1,31],P=[1,32],M=[1,33],U=[1,34],H=[1,35],q=[1,36],G=[1,37],K=[1,38],J=[1,39],Z=[1,40],$=[1,41],tt=[1,42],et=[1,43],at=[1,44],it=[1,45],nt=[1,46],st=[1,47],rt=[1,48],lt=[1,50],ot=[1,51],ct=[1,52],ht=[1,53],ut=[1,54],dt=[1,55],ft=[1,56],pt=[1,57],yt=[1,58],gt=[1,59],bt=[1,60],Ct=[14,42],Xt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ot=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],A=[1,82],k=[1,83],C=[1,84],w=[1,85],T=[12,14,42],se=[12,14,33,42],Bt=[12,14,33,42,76,77,79,80],vt=[12,33],Wt=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Qt={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:y(function(x,v,E,b,R,h,Rt){var f=h.length-1;switch(R){case 3:b.setDirection("TB");break;case 4:b.setDirection("BT");break;case 5:b.setDirection("RL");break;case 6:b.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:b.setC4Type(h[f-3]);break;case 19:b.setTitle(h[f].substring(6)),this.$=h[f].substring(6);break;case 20:b.setAccDescription(h[f].substring(15)),this.$=h[f].substring(15);break;case 21:this.$=h[f].trim(),b.setTitle(this.$);break;case 22:case 23:this.$=h[f].trim(),b.setAccDescription(this.$);break;case 28:h[f].splice(2,0,"ENTERPRISE"),b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 29:h[f].splice(2,0,"SYSTEM"),b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 30:b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 31:h[f].splice(2,0,"CONTAINER"),b.addContainerBoundary(...h[f]),this.$=h[f];break;case 32:b.addDeploymentNode("node",...h[f]),this.$=h[f];break;case 33:b.addDeploymentNode("nodeL",...h[f]),this.$=h[f];break;case 34:b.addDeploymentNode("nodeR",...h[f]),this.$=h[f];break;case 35:b.popBoundaryParseStack();break;case 39:b.addPersonOrSystem("person",...h[f]),this.$=h[f];break;case 40:b.addPersonOrSystem("external_person",...h[f]),this.$=h[f];break;case 41:b.addPersonOrSystem("system",...h[f]),this.$=h[f];break;case 42:b.addPersonOrSystem("system_db",...h[f]),this.$=h[f];break;case 43:b.addPersonOrSystem("system_queue",...h[f]),this.$=h[f];break;case 44:b.addPersonOrSystem("external_system",...h[f]),this.$=h[f];break;case 45:b.addPersonOrSystem("external_system_db",...h[f]),this.$=h[f];break;case 46:b.addPersonOrSystem("external_system_queue",...h[f]),this.$=h[f];break;case 47:b.addContainer("container",...h[f]),this.$=h[f];break;case 48:b.addContainer("container_db",...h[f]),this.$=h[f];break;case 49:b.addContainer("container_queue",...h[f]),this.$=h[f];break;case 50:b.addContainer("external_container",...h[f]),this.$=h[f];break;case 51:b.addContainer("external_container_db",...h[f]),this.$=h[f];break;case 52:b.addContainer("external_container_queue",...h[f]),this.$=h[f];break;case 53:b.addComponent("component",...h[f]),this.$=h[f];break;case 54:b.addComponent("component_db",...h[f]),this.$=h[f];break;case 55:b.addComponent("component_queue",...h[f]),this.$=h[f];break;case 56:b.addComponent("external_component",...h[f]),this.$=h[f];break;case 57:b.addComponent("external_component_db",...h[f]),this.$=h[f];break;case 58:b.addComponent("external_component_queue",...h[f]),this.$=h[f];break;case 60:b.addRel("rel",...h[f]),this.$=h[f];break;case 61:b.addRel("birel",...h[f]),this.$=h[f];break;case 62:b.addRel("rel_u",...h[f]),this.$=h[f];break;case 63:b.addRel("rel_d",...h[f]),this.$=h[f];break;case 64:b.addRel("rel_l",...h[f]),this.$=h[f];break;case 65:b.addRel("rel_r",...h[f]),this.$=h[f];break;case 66:b.addRel("rel_b",...h[f]),this.$=h[f];break;case 67:h[f].splice(0,1),b.addRel("rel",...h[f]),this.$=h[f];break;case 68:b.updateElStyle("update_el_style",...h[f]),this.$=h[f];break;case 69:b.updateRelStyle("update_rel_style",...h[f]),this.$=h[f];break;case 70:b.updateLayoutConfig("update_layout_config",...h[f]),this.$=h[f];break;case 71:this.$=[h[f]];break;case 72:h[f].unshift(h[f-1]),this.$=h[f];break;case 73:case 75:this.$=h[f].trim();break;case 74:let Et={};Et[h[f-1].trim()]=h[f].trim(),this.$=Et;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:70,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:71,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:72,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:73,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{14:[1,74]},e(Ct,[2,13],{43:23,29:49,30:61,32:62,20:75,34:a,36:n,37:i,38:u,39:d,40:p,41:g,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),e(Ct,[2,14]),e(Xt,[2,16],{12:[1,76]}),e(Ct,[2,36],{12:[1,77]}),e(Ot,[2,19]),e(Ot,[2,20]),{25:[1,78]},{27:[1,79]},e(Ot,[2,23]),{35:80,75:81,76:A,77:k,79:C,80:w},{35:86,75:81,76:A,77:k,79:C,80:w},{35:87,75:81,76:A,77:k,79:C,80:w},{35:88,75:81,76:A,77:k,79:C,80:w},{35:89,75:81,76:A,77:k,79:C,80:w},{35:90,75:81,76:A,77:k,79:C,80:w},{35:91,75:81,76:A,77:k,79:C,80:w},{35:92,75:81,76:A,77:k,79:C,80:w},{35:93,75:81,76:A,77:k,79:C,80:w},{35:94,75:81,76:A,77:k,79:C,80:w},{35:95,75:81,76:A,77:k,79:C,80:w},{35:96,75:81,76:A,77:k,79:C,80:w},{35:97,75:81,76:A,77:k,79:C,80:w},{35:98,75:81,76:A,77:k,79:C,80:w},{35:99,75:81,76:A,77:k,79:C,80:w},{35:100,75:81,76:A,77:k,79:C,80:w},{35:101,75:81,76:A,77:k,79:C,80:w},{35:102,75:81,76:A,77:k,79:C,80:w},{35:103,75:81,76:A,77:k,79:C,80:w},{35:104,75:81,76:A,77:k,79:C,80:w},e(T,[2,59]),{35:105,75:81,76:A,77:k,79:C,80:w},{35:106,75:81,76:A,77:k,79:C,80:w},{35:107,75:81,76:A,77:k,79:C,80:w},{35:108,75:81,76:A,77:k,79:C,80:w},{35:109,75:81,76:A,77:k,79:C,80:w},{35:110,75:81,76:A,77:k,79:C,80:w},{35:111,75:81,76:A,77:k,79:C,80:w},{35:112,75:81,76:A,77:k,79:C,80:w},{35:113,75:81,76:A,77:k,79:C,80:w},{35:114,75:81,76:A,77:k,79:C,80:w},{35:115,75:81,76:A,77:k,79:C,80:w},{20:116,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{12:[1,118],33:[1,117]},{35:119,75:81,76:A,77:k,79:C,80:w},{35:120,75:81,76:A,77:k,79:C,80:w},{35:121,75:81,76:A,77:k,79:C,80:w},{35:122,75:81,76:A,77:k,79:C,80:w},{35:123,75:81,76:A,77:k,79:C,80:w},{35:124,75:81,76:A,77:k,79:C,80:w},{35:125,75:81,76:A,77:k,79:C,80:w},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},e(Ct,[2,15]),e(Xt,[2,17],{21:22,19:130,22:t,23:s,24:o,26:l,28:r}),e(Ct,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:s,24:o,26:l,28:r,34:a,36:n,37:i,38:u,39:d,40:p,41:g,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),e(Ot,[2,21]),e(Ot,[2,22]),e(T,[2,39]),e(se,[2,71],{75:81,35:132,76:A,77:k,79:C,80:w}),e(Bt,[2,73]),{78:[1,133]},e(Bt,[2,75]),e(Bt,[2,76]),e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(T,[2,43]),e(T,[2,44]),e(T,[2,45]),e(T,[2,46]),e(T,[2,47]),e(T,[2,48]),e(T,[2,49]),e(T,[2,50]),e(T,[2,51]),e(T,[2,52]),e(T,[2,53]),e(T,[2,54]),e(T,[2,55]),e(T,[2,56]),e(T,[2,57]),e(T,[2,58]),e(T,[2,60]),e(T,[2,61]),e(T,[2,62]),e(T,[2,63]),e(T,[2,64]),e(T,[2,65]),e(T,[2,66]),e(T,[2,67]),e(T,[2,68]),e(T,[2,69]),e(T,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},e(vt,[2,28]),e(vt,[2,29]),e(vt,[2,30]),e(vt,[2,31]),e(vt,[2,32]),e(vt,[2,33]),e(vt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},e(Xt,[2,18]),e(Ct,[2,38]),e(se,[2,72]),e(Bt,[2,74]),e(T,[2,24]),e(T,[2,35]),e(Wt,[2,25]),e(Wt,[2,26],{12:[1,138]}),e(Wt,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:y(function(x,v){if(v.recoverable)this.trace(x);else{var E=new Error(x);throw E.hash=v,E}},"parseError"),parse:y(function(x){var v=this,E=[0],b=[],R=[null],h=[],Rt=this.table,f="",Et=0,re=0,ke=2,le=1,Ce=h.slice.call(arguments,1),D=Object.create(this.lexer),At={yy:{}};for(var Ht in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ht)&&(At.yy[Ht]=this.yy[Ht]);D.setInput(x,At.yy),At.yy.lexer=D,At.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var qt=D.yylloc;h.push(qt);var we=D.options&&D.options.ranges;typeof At.yy.parseError=="function"?this.parseError=At.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Te(L){E.length=E.length-2*L,R.length=R.length-L,h.length=h.length-L}y(Te,"popStack");function oe(){var L;return L=b.pop()||D.lex()||le,typeof L!="number"&&(L instanceof Array&&(b=L,L=b.pop()),L=v.symbols_[L]||L),L}y(oe,"lex");for(var I,kt,N,Gt,wt={},Mt,W,ce,Lt;;){if(kt=E[E.length-1],this.defaultActions[kt]?N=this.defaultActions[kt]:((I===null||typeof I>"u")&&(I=oe()),N=Rt[kt]&&Rt[kt][I]),typeof N>"u"||!N.length||!N[0]){var Kt="";Lt=[];for(Mt in Rt[kt])this.terminals_[Mt]&&Mt>ke&&Lt.push("'"+this.terminals_[Mt]+"'");D.showPosition?Kt="Parse error on line "+(Et+1)+`: +import{g as Oe,d as Re}from"./chunk-32BRIVSS-B8gSFtLK.js";import{s as Se,g as De,a as Pe,b as Be,_ as y,c as Dt,d as Nt,l as he,e as Ie,f as Me,h as Tt,i as pe,j as Le,w as Ne,k as Jt,m as ue}from"./mermaid.core-AN7v7N47.js";import"./index-Dnz6Zudc.js";var jt=(function(){var e=y(function(_t,x,v,E){for(v=v||{},E=_t.length;E--;v[_t[E]]=x);return v},"o"),t=[1,24],s=[1,25],o=[1,26],l=[1,27],r=[1,28],a=[1,63],n=[1,64],i=[1,65],u=[1,66],d=[1,67],p=[1,68],g=[1,69],m=[1,29],O=[1,30],S=[1,31],P=[1,32],M=[1,33],U=[1,34],H=[1,35],q=[1,36],G=[1,37],K=[1,38],J=[1,39],Z=[1,40],$=[1,41],tt=[1,42],et=[1,43],at=[1,44],it=[1,45],nt=[1,46],st=[1,47],rt=[1,48],lt=[1,50],ot=[1,51],ct=[1,52],ht=[1,53],ut=[1,54],dt=[1,55],ft=[1,56],pt=[1,57],yt=[1,58],gt=[1,59],bt=[1,60],Ct=[14,42],Xt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ot=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],A=[1,82],k=[1,83],C=[1,84],w=[1,85],T=[12,14,42],se=[12,14,33,42],Bt=[12,14,33,42,76,77,79,80],vt=[12,33],Wt=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Qt={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:y(function(x,v,E,b,R,h,Rt){var f=h.length-1;switch(R){case 3:b.setDirection("TB");break;case 4:b.setDirection("BT");break;case 5:b.setDirection("RL");break;case 6:b.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:b.setC4Type(h[f-3]);break;case 19:b.setTitle(h[f].substring(6)),this.$=h[f].substring(6);break;case 20:b.setAccDescription(h[f].substring(15)),this.$=h[f].substring(15);break;case 21:this.$=h[f].trim(),b.setTitle(this.$);break;case 22:case 23:this.$=h[f].trim(),b.setAccDescription(this.$);break;case 28:h[f].splice(2,0,"ENTERPRISE"),b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 29:h[f].splice(2,0,"SYSTEM"),b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 30:b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 31:h[f].splice(2,0,"CONTAINER"),b.addContainerBoundary(...h[f]),this.$=h[f];break;case 32:b.addDeploymentNode("node",...h[f]),this.$=h[f];break;case 33:b.addDeploymentNode("nodeL",...h[f]),this.$=h[f];break;case 34:b.addDeploymentNode("nodeR",...h[f]),this.$=h[f];break;case 35:b.popBoundaryParseStack();break;case 39:b.addPersonOrSystem("person",...h[f]),this.$=h[f];break;case 40:b.addPersonOrSystem("external_person",...h[f]),this.$=h[f];break;case 41:b.addPersonOrSystem("system",...h[f]),this.$=h[f];break;case 42:b.addPersonOrSystem("system_db",...h[f]),this.$=h[f];break;case 43:b.addPersonOrSystem("system_queue",...h[f]),this.$=h[f];break;case 44:b.addPersonOrSystem("external_system",...h[f]),this.$=h[f];break;case 45:b.addPersonOrSystem("external_system_db",...h[f]),this.$=h[f];break;case 46:b.addPersonOrSystem("external_system_queue",...h[f]),this.$=h[f];break;case 47:b.addContainer("container",...h[f]),this.$=h[f];break;case 48:b.addContainer("container_db",...h[f]),this.$=h[f];break;case 49:b.addContainer("container_queue",...h[f]),this.$=h[f];break;case 50:b.addContainer("external_container",...h[f]),this.$=h[f];break;case 51:b.addContainer("external_container_db",...h[f]),this.$=h[f];break;case 52:b.addContainer("external_container_queue",...h[f]),this.$=h[f];break;case 53:b.addComponent("component",...h[f]),this.$=h[f];break;case 54:b.addComponent("component_db",...h[f]),this.$=h[f];break;case 55:b.addComponent("component_queue",...h[f]),this.$=h[f];break;case 56:b.addComponent("external_component",...h[f]),this.$=h[f];break;case 57:b.addComponent("external_component_db",...h[f]),this.$=h[f];break;case 58:b.addComponent("external_component_queue",...h[f]),this.$=h[f];break;case 60:b.addRel("rel",...h[f]),this.$=h[f];break;case 61:b.addRel("birel",...h[f]),this.$=h[f];break;case 62:b.addRel("rel_u",...h[f]),this.$=h[f];break;case 63:b.addRel("rel_d",...h[f]),this.$=h[f];break;case 64:b.addRel("rel_l",...h[f]),this.$=h[f];break;case 65:b.addRel("rel_r",...h[f]),this.$=h[f];break;case 66:b.addRel("rel_b",...h[f]),this.$=h[f];break;case 67:h[f].splice(0,1),b.addRel("rel",...h[f]),this.$=h[f];break;case 68:b.updateElStyle("update_el_style",...h[f]),this.$=h[f];break;case 69:b.updateRelStyle("update_rel_style",...h[f]),this.$=h[f];break;case 70:b.updateLayoutConfig("update_layout_config",...h[f]),this.$=h[f];break;case 71:this.$=[h[f]];break;case 72:h[f].unshift(h[f-1]),this.$=h[f];break;case 73:case 75:this.$=h[f].trim();break;case 74:let Et={};Et[h[f-1].trim()]=h[f].trim(),this.$=Et;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:70,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:71,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:72,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:73,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:r,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{14:[1,74]},e(Ct,[2,13],{43:23,29:49,30:61,32:62,20:75,34:a,36:n,37:i,38:u,39:d,40:p,41:g,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),e(Ct,[2,14]),e(Xt,[2,16],{12:[1,76]}),e(Ct,[2,36],{12:[1,77]}),e(Ot,[2,19]),e(Ot,[2,20]),{25:[1,78]},{27:[1,79]},e(Ot,[2,23]),{35:80,75:81,76:A,77:k,79:C,80:w},{35:86,75:81,76:A,77:k,79:C,80:w},{35:87,75:81,76:A,77:k,79:C,80:w},{35:88,75:81,76:A,77:k,79:C,80:w},{35:89,75:81,76:A,77:k,79:C,80:w},{35:90,75:81,76:A,77:k,79:C,80:w},{35:91,75:81,76:A,77:k,79:C,80:w},{35:92,75:81,76:A,77:k,79:C,80:w},{35:93,75:81,76:A,77:k,79:C,80:w},{35:94,75:81,76:A,77:k,79:C,80:w},{35:95,75:81,76:A,77:k,79:C,80:w},{35:96,75:81,76:A,77:k,79:C,80:w},{35:97,75:81,76:A,77:k,79:C,80:w},{35:98,75:81,76:A,77:k,79:C,80:w},{35:99,75:81,76:A,77:k,79:C,80:w},{35:100,75:81,76:A,77:k,79:C,80:w},{35:101,75:81,76:A,77:k,79:C,80:w},{35:102,75:81,76:A,77:k,79:C,80:w},{35:103,75:81,76:A,77:k,79:C,80:w},{35:104,75:81,76:A,77:k,79:C,80:w},e(T,[2,59]),{35:105,75:81,76:A,77:k,79:C,80:w},{35:106,75:81,76:A,77:k,79:C,80:w},{35:107,75:81,76:A,77:k,79:C,80:w},{35:108,75:81,76:A,77:k,79:C,80:w},{35:109,75:81,76:A,77:k,79:C,80:w},{35:110,75:81,76:A,77:k,79:C,80:w},{35:111,75:81,76:A,77:k,79:C,80:w},{35:112,75:81,76:A,77:k,79:C,80:w},{35:113,75:81,76:A,77:k,79:C,80:w},{35:114,75:81,76:A,77:k,79:C,80:w},{35:115,75:81,76:A,77:k,79:C,80:w},{20:116,29:49,30:61,32:62,34:a,36:n,37:i,38:u,39:d,40:p,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{12:[1,118],33:[1,117]},{35:119,75:81,76:A,77:k,79:C,80:w},{35:120,75:81,76:A,77:k,79:C,80:w},{35:121,75:81,76:A,77:k,79:C,80:w},{35:122,75:81,76:A,77:k,79:C,80:w},{35:123,75:81,76:A,77:k,79:C,80:w},{35:124,75:81,76:A,77:k,79:C,80:w},{35:125,75:81,76:A,77:k,79:C,80:w},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},e(Ct,[2,15]),e(Xt,[2,17],{21:22,19:130,22:t,23:s,24:o,26:l,28:r}),e(Ct,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:s,24:o,26:l,28:r,34:a,36:n,37:i,38:u,39:d,40:p,41:g,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),e(Ot,[2,21]),e(Ot,[2,22]),e(T,[2,39]),e(se,[2,71],{75:81,35:132,76:A,77:k,79:C,80:w}),e(Bt,[2,73]),{78:[1,133]},e(Bt,[2,75]),e(Bt,[2,76]),e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(T,[2,43]),e(T,[2,44]),e(T,[2,45]),e(T,[2,46]),e(T,[2,47]),e(T,[2,48]),e(T,[2,49]),e(T,[2,50]),e(T,[2,51]),e(T,[2,52]),e(T,[2,53]),e(T,[2,54]),e(T,[2,55]),e(T,[2,56]),e(T,[2,57]),e(T,[2,58]),e(T,[2,60]),e(T,[2,61]),e(T,[2,62]),e(T,[2,63]),e(T,[2,64]),e(T,[2,65]),e(T,[2,66]),e(T,[2,67]),e(T,[2,68]),e(T,[2,69]),e(T,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},e(vt,[2,28]),e(vt,[2,29]),e(vt,[2,30]),e(vt,[2,31]),e(vt,[2,32]),e(vt,[2,33]),e(vt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},e(Xt,[2,18]),e(Ct,[2,38]),e(se,[2,72]),e(Bt,[2,74]),e(T,[2,24]),e(T,[2,35]),e(Wt,[2,25]),e(Wt,[2,26],{12:[1,138]}),e(Wt,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:y(function(x,v){if(v.recoverable)this.trace(x);else{var E=new Error(x);throw E.hash=v,E}},"parseError"),parse:y(function(x){var v=this,E=[0],b=[],R=[null],h=[],Rt=this.table,f="",Et=0,re=0,ke=2,le=1,Ce=h.slice.call(arguments,1),D=Object.create(this.lexer),At={yy:{}};for(var Ht in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ht)&&(At.yy[Ht]=this.yy[Ht]);D.setInput(x,At.yy),At.yy.lexer=D,At.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var qt=D.yylloc;h.push(qt);var we=D.options&&D.options.ranges;typeof At.yy.parseError=="function"?this.parseError=At.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Te(L){E.length=E.length-2*L,R.length=R.length-L,h.length=h.length-L}y(Te,"popStack");function oe(){var L;return L=b.pop()||D.lex()||le,typeof L!="number"&&(L instanceof Array&&(b=L,L=b.pop()),L=v.symbols_[L]||L),L}y(oe,"lex");for(var I,kt,N,Gt,wt={},Mt,W,ce,Lt;;){if(kt=E[E.length-1],this.defaultActions[kt]?N=this.defaultActions[kt]:((I===null||typeof I>"u")&&(I=oe()),N=Rt[kt]&&Rt[kt][I]),typeof N>"u"||!N.length||!N[0]){var Kt="";Lt=[];for(Mt in Rt[kt])this.terminals_[Mt]&&Mt>ke&&Lt.push("'"+this.terminals_[Mt]+"'");D.showPosition?Kt="Parse error on line "+(Et+1)+`: `+D.showPosition()+` Expecting `+Lt.join(", ")+", got '"+(this.terminals_[I]||I)+"'":Kt="Parse error on line "+(Et+1)+": Unexpected "+(I==le?"end of input":"'"+(this.terminals_[I]||I)+"'"),this.parseError(Kt,{text:D.match,token:this.terminals_[I]||I,line:D.yylineno,loc:qt,expected:Lt})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+kt+", token: "+I);switch(N[0]){case 1:E.push(I),R.push(D.yytext),h.push(D.yylloc),E.push(N[1]),I=null,re=D.yyleng,f=D.yytext,Et=D.yylineno,qt=D.yylloc;break;case 2:if(W=this.productions_[N[1]][1],wt.$=R[R.length-W],wt._$={first_line:h[h.length-(W||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(W||1)].first_column,last_column:h[h.length-1].last_column},we&&(wt._$.range=[h[h.length-(W||1)].range[0],h[h.length-1].range[1]]),Gt=this.performAction.apply(wt,[f,re,Et,At.yy,N[1],R,h].concat(Ce)),typeof Gt<"u")return Gt;W&&(E=E.slice(0,-1*W*2),R=R.slice(0,-1*W),h=h.slice(0,-1*W)),E.push(this.productions_[N[1]][0]),R.push(wt.$),h.push(wt._$),ce=Rt[E[E.length-2]][E[E.length-1]],E.push(ce);break;case 3:return!0}}return!0},"parse")},Ae=(function(){var _t={EOF:1,parseError:y(function(v,E){if(this.yy.parser)this.yy.parser.parseError(v,E);else throw new Error(v)},"parseError"),setInput:y(function(x,v){return this.yy=v||this.yy||{},this._input=x,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:y(function(){var x=this._input[0];this.yytext+=x,this.yyleng++,this.offset++,this.match+=x,this.matched+=x;var v=x.match(/(?:\r\n?|\n).*/g);return v?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),x},"input"),unput:y(function(x){var v=x.length,E=x.split(/(?:\r\n?|\n)/g);this._input=x+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-v),this.offset-=v;var b=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),E.length-1&&(this.yylineno-=E.length-1);var R=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:E?(E.length===b.length?this.yylloc.first_column:0)+b[b.length-E.length].length-E[0].length:this.yylloc.first_column-v},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-v]),this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(x){this.unput(this.match.slice(x))},"less"),pastInput:y(function(){var x=this.matched.substr(0,this.matched.length-this.match.length);return(x.length>20?"...":"")+x.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var x=this.match;return x.length<20&&(x+=this._input.substr(0,20-x.length)),(x.substr(0,20)+(x.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var x=this.pastInput(),v=new Array(x.length+1).join("-");return x+this.upcomingInput()+` @@ -7,4 +7,4 @@ Expecting `+Lt.join(", ")+", got '"+(this.terminals_[I]||I)+"'":Kt="Parse error stroke: ${e.personBorder}; fill: ${e.personBkg}; } -`,"getStyles"),R0=O0,I0={parser:Ye,db:Zt,renderer:fe,styles:R0,init:y(({c4:e,wrap:t})=>{fe.setConf(e),Zt.setWrap(t)},"init")};export{I0 as diagram}; +`,"getStyles"),R0=O0,B0={parser:Ye,db:Zt,renderer:fe,styles:R0,init:y(({c4:e,wrap:t})=>{fe.setConf(e),Zt.setWrap(t)},"init")};export{B0 as diagram}; diff --git a/apps/kimi-code/dist-web/assets/channel-BWBJkLRL.js b/apps/kimi-code/dist-web/assets/channel-BWBJkLRL.js deleted file mode 100644 index ade698a15d..0000000000 --- a/apps/kimi-code/dist-web/assets/channel-BWBJkLRL.js +++ /dev/null @@ -1 +0,0 @@ -import{U as a,O as n}from"./mermaid.core-Dxfcv_J5.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c}; diff --git a/apps/kimi-code/dist-web/assets/channel-CsfHBtue.js b/apps/kimi-code/dist-web/assets/channel-CsfHBtue.js new file mode 100644 index 0000000000..5e295a1e0c --- /dev/null +++ b/apps/kimi-code/dist-web/assets/channel-CsfHBtue.js @@ -0,0 +1 @@ +import{U as a,C as n}from"./mermaid.core-AN7v7N47.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c}; diff --git a/apps/kimi-code/dist-web/assets/chunk-2Q5K7J3B-BBRTtiB5.js b/apps/kimi-code/dist-web/assets/chunk-2Q5K7J3B-Bj3vlj3y.js similarity index 67% rename from apps/kimi-code/dist-web/assets/chunk-2Q5K7J3B-BBRTtiB5.js rename to apps/kimi-code/dist-web/assets/chunk-2Q5K7J3B-Bj3vlj3y.js index aaba2f00d0..667ff39cb3 100644 --- a/apps/kimi-code/dist-web/assets/chunk-2Q5K7J3B-BBRTtiB5.js +++ b/apps/kimi-code/dist-web/assets/chunk-2Q5K7J3B-Bj3vlj3y.js @@ -1 +1 @@ -import{_ as i}from"./mermaid.core-Dxfcv_J5.js";var r=class{constructor(t){this.init=t,this.records=this.init()}static{i(this,"ImperativeState")}reset(){this.records=this.init()}};export{r as I}; +import{_ as i}from"./mermaid.core-AN7v7N47.js";var r=class{constructor(t){this.init=t,this.records=this.init()}static{i(this,"ImperativeState")}reset(){this.records=this.init()}};export{r as I}; diff --git a/apps/kimi-code/dist-web/assets/chunk-32BRIVSS-3l6XZxpp.js b/apps/kimi-code/dist-web/assets/chunk-32BRIVSS-B8gSFtLK.js similarity index 96% rename from apps/kimi-code/dist-web/assets/chunk-32BRIVSS-3l6XZxpp.js rename to apps/kimi-code/dist-web/assets/chunk-32BRIVSS-B8gSFtLK.js index f43705de05..c06b9d4bf1 100644 --- a/apps/kimi-code/dist-web/assets/chunk-32BRIVSS-3l6XZxpp.js +++ b/apps/kimi-code/dist-web/assets/chunk-32BRIVSS-B8gSFtLK.js @@ -1 +1 @@ -import{_ as i,d as l,N as d,j as o}from"./mermaid.core-Dxfcv_J5.js";var x=i((r,t)=>{const e=r.append("rect");if(e.attr("x",t.x),e.attr("y",t.y),e.attr("fill",t.fill),e.attr("stroke",t.stroke),e.attr("width",t.width),e.attr("height",t.height),t.name&&e.attr("name",t.name),t.rx&&e.attr("rx",t.rx),t.ry&&e.attr("ry",t.ry),t.attrs!==void 0)for(const s in t.attrs)e.attr(s,t.attrs[s]);return t.class&&e.attr("class",t.class),e},"drawRect"),p=i((r,t)=>{const e={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};x(r,e).lower()},"drawBackgroundRect"),y=i((r,t)=>{const e=t.text.replace(d," "),s=r.append("text");s.attr("x",t.x),s.attr("y",t.y),s.attr("class","legend"),s.style("text-anchor",t.anchor),t.class&&s.attr("class",t.class);const a=s.append("tspan");return a.attr("x",t.x+t.textMargin*2),a.text(e),s},"drawText"),m=i((r,t,e,s)=>{const a=r.append("image");a.attr("x",t),a.attr("y",e);const n=o.sanitizeUrl(s);a.attr("xlink:href",n)},"drawImage"),g=i((r,t,e,s)=>{const a=r.append("use");a.attr("x",t),a.attr("y",e);const n=o.sanitizeUrl(s);a.attr("xlink:href",`#${n}`)},"drawEmbeddedImage"),h=i(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),f=i(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),w=i(()=>{let r=l(".mermaidTooltip");return r.empty()&&(r=l("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),r},"createTooltip");export{p as a,f as b,g as c,x as d,m as e,w as f,h as g,y as h}; +import{_ as i,d as l,n as d,j as o}from"./mermaid.core-AN7v7N47.js";var x=i((r,t)=>{const e=r.append("rect");if(e.attr("x",t.x),e.attr("y",t.y),e.attr("fill",t.fill),e.attr("stroke",t.stroke),e.attr("width",t.width),e.attr("height",t.height),t.name&&e.attr("name",t.name),t.rx&&e.attr("rx",t.rx),t.ry&&e.attr("ry",t.ry),t.attrs!==void 0)for(const s in t.attrs)e.attr(s,t.attrs[s]);return t.class&&e.attr("class",t.class),e},"drawRect"),p=i((r,t)=>{const e={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};x(r,e).lower()},"drawBackgroundRect"),y=i((r,t)=>{const e=t.text.replace(d," "),s=r.append("text");s.attr("x",t.x),s.attr("y",t.y),s.attr("class","legend"),s.style("text-anchor",t.anchor),t.class&&s.attr("class",t.class);const a=s.append("tspan");return a.attr("x",t.x+t.textMargin*2),a.text(e),s},"drawText"),m=i((r,t,e,s)=>{const a=r.append("image");a.attr("x",t),a.attr("y",e);const n=o.sanitizeUrl(s);a.attr("xlink:href",n)},"drawImage"),g=i((r,t,e,s)=>{const a=r.append("use");a.attr("x",t),a.attr("y",e);const n=o.sanitizeUrl(s);a.attr("xlink:href",`#${n}`)},"drawEmbeddedImage"),h=i(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),f=i(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),w=i(()=>{let r=l(".mermaidTooltip");return r.empty()&&(r=l("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),r},"createTooltip");export{p as a,f as b,g as c,x as d,m as e,w as f,h as g,y as h}; diff --git a/apps/kimi-code/dist-web/assets/chunk-5VM5RSS4-A5rXJcEF.js b/apps/kimi-code/dist-web/assets/chunk-5VM5RSS4-CnrQ4AgJ.js similarity index 83% rename from apps/kimi-code/dist-web/assets/chunk-5VM5RSS4-A5rXJcEF.js rename to apps/kimi-code/dist-web/assets/chunk-5VM5RSS4-CnrQ4AgJ.js index 437768997d..9d1faf7a4a 100644 --- a/apps/kimi-code/dist-web/assets/chunk-5VM5RSS4-A5rXJcEF.js +++ b/apps/kimi-code/dist-web/assets/chunk-5VM5RSS4-CnrQ4AgJ.js @@ -1,4 +1,4 @@ -import{_ as e}from"./mermaid.core-Dxfcv_J5.js";var l=e(()=>` +import{_ as e}from"./mermaid.core-AN7v7N47.js";var l=e(()=>` /* Font Awesome icon styling - consolidated */ .label-icon { display: inline-block; diff --git a/apps/kimi-code/dist-web/assets/chunk-EX3LRPZG-CCB7x_Qg.js b/apps/kimi-code/dist-web/assets/chunk-EX3LRPZG-4ZFETIzN.js similarity index 99% rename from apps/kimi-code/dist-web/assets/chunk-EX3LRPZG-CCB7x_Qg.js rename to apps/kimi-code/dist-web/assets/chunk-EX3LRPZG-4ZFETIzN.js index ebdbfc0ab3..32bfa0690e 100644 --- a/apps/kimi-code/dist-web/assets/chunk-EX3LRPZG-CCB7x_Qg.js +++ b/apps/kimi-code/dist-web/assets/chunk-EX3LRPZG-4ZFETIzN.js @@ -1,4 +1,4 @@ -import{g as te}from"./chunk-XXDRQBXY-C3GGkCwU.js";import{s as ee}from"./chunk-VR4S4FIN-gihGNGO1.js";import{_ as f,l as _,c as $,v as se,x as ie,a as re,b as ae,g as ne,s as oe,n as le,o as ce,a9 as he,k as j,p as ue,d as bt,a5 as de}from"./mermaid.core-Dxfcv_J5.js";import{f as fe}from"./chunk-32BRIVSS-3l6XZxpp.js";var vt=(function(){var t=f(function(V,a,d,r){for(d=d||{},r=V.length;r--;d[V[r]]=a);return d},"o"),e=[1,2],o=[1,3],s=[1,4],c=[2,4],h=[1,9],p=[1,11],y=[1,16],n=[1,17],T=[1,18],m=[1,19],O=[1,33],x=[1,20],k=[1,21],u=[1,22],L=[1,23],I=[1,24],v=[1,26],F=[1,27],C=[1,28],P=[1,29],w=[1,30],H=[1,31],it=[1,32],rt=[1,35],at=[1,36],nt=[1,37],ot=[1,38],z=[1,34],S=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],lt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],xt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],yt={trace:f(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:f(function(a,d,r,g,E,i,B){var l=i.length-1;switch(E){case 3:return g.setRootDoc(i[l]),i[l];case 4:this.$=[];break;case 5:i[l]!="nl"&&(i[l-1].push(i[l]),this.$=i[l-1]);break;case 6:case 7:this.$=i[l];break;case 8:this.$="nl";break;case 12:this.$=i[l];break;case 13:const Q=i[l-1];Q.description=g.trimColon(i[l]),this.$=Q;break;case 14:this.$={stmt:"relation",state1:i[l-2],state2:i[l]};break;case 15:const gt=g.trimColon(i[l]);this.$={stmt:"relation",state1:i[l-3],state2:i[l-1],description:gt};break;case 19:this.$={stmt:"state",id:i[l-3],type:"default",description:"",doc:i[l-1]};break;case 20:var Y=i[l],K=i[l-2].trim();if(i[l].match(":")){var ht=i[l].split(":");Y=ht[0],K=[K,ht[1]]}this.$={stmt:"state",id:Y,type:"default",description:K};break;case 21:this.$={stmt:"state",id:i[l-3],type:"default",description:i[l-5],doc:i[l-1]};break;case 22:this.$={stmt:"state",id:i[l],type:"fork"};break;case 23:this.$={stmt:"state",id:i[l],type:"join"};break;case 24:this.$={stmt:"state",id:i[l],type:"choice"};break;case 25:this.$={stmt:"state",id:g.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:i[l-1].trim(),note:{position:i[l-2].trim(),text:i[l].trim()}};break;case 29:this.$=i[l].trim(),g.setAccTitle(this.$);break;case 30:case 31:this.$=i[l].trim(),g.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:i[l-3],url:i[l-2],tooltip:i[l-1]};break;case 33:this.$={stmt:"click",id:i[l-3],url:i[l-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:i[l-1].trim(),classes:i[l].trim()};break;case 36:this.$={stmt:"style",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 37:this.$={stmt:"applyClass",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 38:g.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:g.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:g.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:g.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:i[l].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:o,6:s},{1:[3]},{3:5,4:e,5:o,6:s},{3:6,4:e,5:o,6:s},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],c,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:O,25:x,26:k,27:u,28:L,29:I,32:25,33:v,35:F,37:C,38:P,41:w,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:O,25:x,26:k,27:u,28:L,29:I,32:25,33:v,35:F,37:C,38:P,41:w,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,7]),t(S,[2,8]),t(S,[2,9]),t(S,[2,10]),t(S,[2,11]),t(S,[2,12],{14:[1,40],15:[1,41]}),t(S,[2,16]),{18:[1,42]},t(S,[2,18],{20:[1,43]}),{23:[1,44]},t(S,[2,22]),t(S,[2,23]),t(S,[2,24]),t(S,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(S,[2,28]),{34:[1,49]},{36:[1,50]},t(S,[2,31]),{13:51,24:O,57:z},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(lt,[2,44],{58:[1,56]}),t(lt,[2,45],{58:[1,57]}),t(S,[2,38]),t(S,[2,39]),t(S,[2,40]),t(S,[2,41]),t(S,[2,6]),t(S,[2,13]),{13:58,24:O,57:z},t(S,[2,17]),t(xt,c,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(S,[2,29]),t(S,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(S,[2,14],{14:[1,71]}),{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,72],22:m,24:O,25:x,26:k,27:u,28:L,29:I,32:25,33:v,35:F,37:C,38:P,41:w,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(S,[2,34]),t(S,[2,35]),t(S,[2,36]),t(S,[2,37]),t(lt,[2,46]),t(lt,[2,47]),t(S,[2,15]),t(S,[2,19]),t(xt,c,{7:78}),t(S,[2,26]),t(S,[2,27]),{5:[1,79]},{5:[1,80]},{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,81],22:m,24:O,25:x,26:k,27:u,28:L,29:I,32:25,33:v,35:F,37:C,38:P,41:w,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,32]),t(S,[2,33]),t(S,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:f(function(a,d){if(d.recoverable)this.trace(a);else{var r=new Error(a);throw r.hash=d,r}},"parseError"),parse:f(function(a){var d=this,r=[0],g=[],E=[null],i=[],B=this.table,l="",Y=0,K=0,ht=2,Q=1,gt=i.slice.call(arguments,1),b=Object.create(this.lexer),U={yy:{}};for(var Tt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Tt)&&(U.yy[Tt]=this.yy[Tt]);b.setInput(a,U.yy),U.yy.lexer=b,U.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var Et=b.yylloc;i.push(Et);var Qt=b.options&&b.options.ranges;typeof U.yy.parseError=="function"?this.parseError=U.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Zt(N){r.length=r.length-2*N,E.length=E.length-N,i.length=i.length-N}f(Zt,"popStack");function Lt(){var N;return N=g.pop()||b.lex()||Q,typeof N!="number"&&(N instanceof Array&&(g=N,N=g.pop()),N=d.symbols_[N]||N),N}f(Lt,"lex");for(var A,W,R,_t,X={},ut,G,It,dt;;){if(W=r[r.length-1],this.defaultActions[W]?R=this.defaultActions[W]:((A===null||typeof A>"u")&&(A=Lt()),R=B[W]&&B[W][A]),typeof R>"u"||!R.length||!R[0]){var mt="";dt=[];for(ut in B[W])this.terminals_[ut]&&ut>ht&&dt.push("'"+this.terminals_[ut]+"'");b.showPosition?mt="Parse error on line "+(Y+1)+`: +import{g as te}from"./chunk-XXDRQBXY-BRRtW_Of.js";import{s as ee}from"./chunk-VR4S4FIN-DMqAUMdK.js";import{_ as f,l as _,c as $,x as se,y as ie,a as re,b as ae,g as ne,s as oe,o as le,p as ce,a9 as he,k as j,q as ue,d as bt,a5 as de}from"./mermaid.core-AN7v7N47.js";import{f as fe}from"./chunk-32BRIVSS-B8gSFtLK.js";var vt=(function(){var t=f(function(V,a,d,r){for(d=d||{},r=V.length;r--;d[V[r]]=a);return d},"o"),e=[1,2],o=[1,3],s=[1,4],c=[2,4],h=[1,9],p=[1,11],y=[1,16],n=[1,17],T=[1,18],m=[1,19],O=[1,33],x=[1,20],k=[1,21],u=[1,22],L=[1,23],I=[1,24],v=[1,26],F=[1,27],C=[1,28],P=[1,29],w=[1,30],H=[1,31],it=[1,32],rt=[1,35],at=[1,36],nt=[1,37],ot=[1,38],z=[1,34],S=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],lt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],xt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],yt={trace:f(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:f(function(a,d,r,g,E,i,B){var l=i.length-1;switch(E){case 3:return g.setRootDoc(i[l]),i[l];case 4:this.$=[];break;case 5:i[l]!="nl"&&(i[l-1].push(i[l]),this.$=i[l-1]);break;case 6:case 7:this.$=i[l];break;case 8:this.$="nl";break;case 12:this.$=i[l];break;case 13:const Q=i[l-1];Q.description=g.trimColon(i[l]),this.$=Q;break;case 14:this.$={stmt:"relation",state1:i[l-2],state2:i[l]};break;case 15:const gt=g.trimColon(i[l]);this.$={stmt:"relation",state1:i[l-3],state2:i[l-1],description:gt};break;case 19:this.$={stmt:"state",id:i[l-3],type:"default",description:"",doc:i[l-1]};break;case 20:var Y=i[l],K=i[l-2].trim();if(i[l].match(":")){var ht=i[l].split(":");Y=ht[0],K=[K,ht[1]]}this.$={stmt:"state",id:Y,type:"default",description:K};break;case 21:this.$={stmt:"state",id:i[l-3],type:"default",description:i[l-5],doc:i[l-1]};break;case 22:this.$={stmt:"state",id:i[l],type:"fork"};break;case 23:this.$={stmt:"state",id:i[l],type:"join"};break;case 24:this.$={stmt:"state",id:i[l],type:"choice"};break;case 25:this.$={stmt:"state",id:g.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:i[l-1].trim(),note:{position:i[l-2].trim(),text:i[l].trim()}};break;case 29:this.$=i[l].trim(),g.setAccTitle(this.$);break;case 30:case 31:this.$=i[l].trim(),g.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:i[l-3],url:i[l-2],tooltip:i[l-1]};break;case 33:this.$={stmt:"click",id:i[l-3],url:i[l-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:i[l-1].trim(),classes:i[l].trim()};break;case 36:this.$={stmt:"style",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 37:this.$={stmt:"applyClass",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 38:g.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:g.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:g.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:g.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:i[l].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:o,6:s},{1:[3]},{3:5,4:e,5:o,6:s},{3:6,4:e,5:o,6:s},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],c,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:O,25:x,26:k,27:u,28:L,29:I,32:25,33:v,35:F,37:C,38:P,41:w,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:y,17:n,19:T,22:m,24:O,25:x,26:k,27:u,28:L,29:I,32:25,33:v,35:F,37:C,38:P,41:w,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,7]),t(S,[2,8]),t(S,[2,9]),t(S,[2,10]),t(S,[2,11]),t(S,[2,12],{14:[1,40],15:[1,41]}),t(S,[2,16]),{18:[1,42]},t(S,[2,18],{20:[1,43]}),{23:[1,44]},t(S,[2,22]),t(S,[2,23]),t(S,[2,24]),t(S,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(S,[2,28]),{34:[1,49]},{36:[1,50]},t(S,[2,31]),{13:51,24:O,57:z},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(lt,[2,44],{58:[1,56]}),t(lt,[2,45],{58:[1,57]}),t(S,[2,38]),t(S,[2,39]),t(S,[2,40]),t(S,[2,41]),t(S,[2,6]),t(S,[2,13]),{13:58,24:O,57:z},t(S,[2,17]),t(xt,c,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(S,[2,29]),t(S,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(S,[2,14],{14:[1,71]}),{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,72],22:m,24:O,25:x,26:k,27:u,28:L,29:I,32:25,33:v,35:F,37:C,38:P,41:w,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(S,[2,34]),t(S,[2,35]),t(S,[2,36]),t(S,[2,37]),t(lt,[2,46]),t(lt,[2,47]),t(S,[2,15]),t(S,[2,19]),t(xt,c,{7:78}),t(S,[2,26]),t(S,[2,27]),{5:[1,79]},{5:[1,80]},{4:h,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:y,17:n,19:T,21:[1,81],22:m,24:O,25:x,26:k,27:u,28:L,29:I,32:25,33:v,35:F,37:C,38:P,41:w,45:H,48:it,51:rt,52:at,53:nt,54:ot,57:z},t(S,[2,32]),t(S,[2,33]),t(S,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:f(function(a,d){if(d.recoverable)this.trace(a);else{var r=new Error(a);throw r.hash=d,r}},"parseError"),parse:f(function(a){var d=this,r=[0],g=[],E=[null],i=[],B=this.table,l="",Y=0,K=0,ht=2,Q=1,gt=i.slice.call(arguments,1),b=Object.create(this.lexer),U={yy:{}};for(var Tt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Tt)&&(U.yy[Tt]=this.yy[Tt]);b.setInput(a,U.yy),U.yy.lexer=b,U.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var Et=b.yylloc;i.push(Et);var Qt=b.options&&b.options.ranges;typeof U.yy.parseError=="function"?this.parseError=U.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Zt(N){r.length=r.length-2*N,E.length=E.length-N,i.length=i.length-N}f(Zt,"popStack");function Lt(){var N;return N=g.pop()||b.lex()||Q,typeof N!="number"&&(N instanceof Array&&(g=N,N=g.pop()),N=d.symbols_[N]||N),N}f(Lt,"lex");for(var A,W,R,_t,X={},ut,G,It,dt;;){if(W=r[r.length-1],this.defaultActions[W]?R=this.defaultActions[W]:((A===null||typeof A>"u")&&(A=Lt()),R=B[W]&&B[W][A]),typeof R>"u"||!R.length||!R[0]){var mt="";dt=[];for(ut in B[W])this.terminals_[ut]&&ut>ht&&dt.push("'"+this.terminals_[ut]+"'");b.showPosition?mt="Parse error on line "+(Y+1)+`: `+b.showPosition()+` Expecting `+dt.join(", ")+", got '"+(this.terminals_[A]||A)+"'":mt="Parse error on line "+(Y+1)+": Unexpected "+(A==Q?"end of input":"'"+(this.terminals_[A]||A)+"'"),this.parseError(mt,{text:b.match,token:this.terminals_[A]||A,line:b.yylineno,loc:Et,expected:dt})}if(R[0]instanceof Array&&R.length>1)throw new Error("Parse Error: multiple actions possible at state: "+W+", token: "+A);switch(R[0]){case 1:r.push(A),E.push(b.yytext),i.push(b.yylloc),r.push(R[1]),A=null,K=b.yyleng,l=b.yytext,Y=b.yylineno,Et=b.yylloc;break;case 2:if(G=this.productions_[R[1]][1],X.$=E[E.length-G],X._$={first_line:i[i.length-(G||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(G||1)].first_column,last_column:i[i.length-1].last_column},Qt&&(X._$.range=[i[i.length-(G||1)].range[0],i[i.length-1].range[1]]),_t=this.performAction.apply(X,[l,K,Y,U.yy,R[1],E,i].concat(gt)),typeof _t<"u")return _t;G&&(r=r.slice(0,-1*G*2),E=E.slice(0,-1*G),i=i.slice(0,-1*G)),r.push(this.productions_[R[1]][0]),E.push(X.$),i.push(X._$),It=B[r[r.length-2]][r[r.length-1]],r.push(It);break;case 3:return!0}}return!0},"parse")},qt=(function(){var V={EOF:1,parseError:f(function(d,r){if(this.yy.parser)this.yy.parser.parseError(d,r);else throw new Error(d)},"parseError"),setInput:f(function(a,d){return this.yy=d||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:f(function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var d=a.match(/(?:\r\n?|\n).*/g);return d?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},"input"),unput:f(function(a){var d=a.length,r=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-d),this.offset-=d;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),r.length-1&&(this.yylineno-=r.length-1);var E=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:r?(r.length===g.length?this.yylloc.first_column:0)+g[g.length-r.length].length-r[0].length:this.yylloc.first_column-d},this.options.ranges&&(this.yylloc.range=[E[0],E[0]+this.yyleng-d]),this.yyleng=this.yytext.length,this},"unput"),more:f(function(){return this._more=!0,this},"more"),reject:f(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:f(function(a){this.unput(this.match.slice(a))},"less"),pastInput:f(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:f(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:f(function(){var a=this.pastInput(),d=new Array(a.length+1).join("-");return a+this.upcomingInput()+` diff --git a/apps/kimi-code/dist-web/assets/chunk-JWPE2WC7-0N6Q_J0q.js b/apps/kimi-code/dist-web/assets/chunk-JWPE2WC7-CFaSk12U.js similarity index 71% rename from apps/kimi-code/dist-web/assets/chunk-JWPE2WC7-0N6Q_J0q.js rename to apps/kimi-code/dist-web/assets/chunk-JWPE2WC7-CFaSk12U.js index 1e5f01df7a..ef1789f986 100644 --- a/apps/kimi-code/dist-web/assets/chunk-JWPE2WC7-0N6Q_J0q.js +++ b/apps/kimi-code/dist-web/assets/chunk-JWPE2WC7-CFaSk12U.js @@ -1 +1 @@ -import{_ as i}from"./mermaid.core-Dxfcv_J5.js";function t(c,e){c.accDescr&&e.setAccDescription?.(c.accDescr),c.accTitle&&e.setAccTitle?.(c.accTitle),c.title&&e.setDiagramTitle?.(c.title)}i(t,"populateCommonDb");export{t as p}; +import{_ as i}from"./mermaid.core-AN7v7N47.js";function t(c,e){c.accDescr&&e.setAccDescription?.(c.accDescr),c.accTitle&&e.setAccTitle?.(c.accTitle),c.title&&e.setDiagramTitle?.(c.title)}i(t,"populateCommonDb");export{t as p}; diff --git a/apps/kimi-code/dist-web/assets/chunk-MOJQB5TN-DOlN8qtA.js b/apps/kimi-code/dist-web/assets/chunk-MOJQB5TN-nz6Iv7r_.js similarity index 97% rename from apps/kimi-code/dist-web/assets/chunk-MOJQB5TN-DOlN8qtA.js rename to apps/kimi-code/dist-web/assets/chunk-MOJQB5TN-nz6Iv7r_.js index d1c7b1799e..edb4cd829b 100644 --- a/apps/kimi-code/dist-web/assets/chunk-MOJQB5TN-DOlN8qtA.js +++ b/apps/kimi-code/dist-web/assets/chunk-MOJQB5TN-nz6Iv7r_.js @@ -1,5 +1,5 @@ -import{_ as p,l as w,D as L,y as E,p as I,E as X,e as H,i as q,c as G}from"./mermaid.core-Dxfcv_J5.js";var z="",b="",N="",A=[],R=new Map,k=p(e=>q(e,G()),"sanitizeText"),F=p(e=>{switch(e.type){case"terminal":return{...e,value:k(e.value)};case"nonterminal":return{...e,name:k(e.name)};case"sequence":return{...e,elements:e.elements.map(F)};case"choice":return{...e,alternatives:e.alternatives.map(F)};case"optional":return{...e,element:F(e.element)};case"repetition":return{...e,element:F(e.element),separator:e.separator?F(e.separator):void 0};case"special":return{...e,text:k(e.text)}}},"sanitizeAstNode"),U=p(()=>{z="",b="",N="",A.length=0,R.clear(),I(),w.debug("[Railroad] Database cleared")},"clear"),_=p(e=>{z=k(e),w.debug("[Railroad] Title set:",e)},"setTitle"),W=p(()=>z,"getTitle"),j=p(e=>{const i={...e,name:k(e.name),definition:F(e.definition),comment:e.comment?k(e.comment):void 0};w.debug("[Railroad] Adding rule:",i.name),R.has(i.name)&&w.warn(`[Railroad] Rule '${i.name}' is already defined. Overwriting.`),A.push(i),R.set(i.name,i)},"addRule"),K=p(()=>A,"getRules"),J=p(e=>R.get(e),"getRule"),Q=p(e=>{b=k(e).replace(/^\s+/g,""),w.debug("[Railroad] Accessibility title set:",e)},"setAccTitle"),Z=p(()=>b,"getAccTitle"),V=p(e=>{N=k(e).replace(/\n\s+/g,` -`),w.debug("[Railroad] Accessibility description set:",e)},"setAccDescription"),ee=p(()=>N,"getAccDescription"),te=_,re=W,ie={clear:U,setTitle:_,getTitle:W,addRule:j,getRules:K,getRule:J,setAccTitle:Q,getAccTitle:Z,setAccDescription:V,getAccDescription:ee,setDiagramTitle:te,getDiagramTitle:re},g={compactMode:!1,padding:10,verticalSeparation:8,horizontalSeparation:10,arcRadius:10,fontSize:14,fontFamily:"monospace",terminalFill:"#FFFFC0",terminalStroke:"#000000",terminalTextColor:"#000000",nonTerminalFill:"#FFFFFF",nonTerminalStroke:"#000000",nonTerminalTextColor:"#000000",lineColor:"#000000",strokeWidth:2,markerFill:"#000000",commentFill:"#E8E8E8",commentStroke:"#888888",commentTextColor:"#666666",specialFill:"#F0E0FF",specialStroke:"#8800CC",ruleNameColor:"#000066",showMarkers:!0,markerRadius:5},ne=/^#(?:[\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$|^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch)\([\d\s%+,./-]+\)$|^[a-z]+$/i,ae=/^[\w "',.-]+$/,oe=new Set(["compactMode","padding","verticalSeparation","horizontalSeparation","arcRadius","fontSize","fontFamily","terminalFill","terminalStroke","terminalTextColor","nonTerminalFill","nonTerminalStroke","nonTerminalTextColor","lineColor","strokeWidth","markerFill","commentFill","commentStroke","commentTextColor","specialFill","specialStroke","ruleNameColor","showMarkers","markerRadius"]),B=p(e=>e?Object.keys(e).every(i=>i==="railroad"||oe.has(i)):!1,"isRailroadStyleOptions"),le=p(e=>e?"railroad"in e&&e.railroad?e.railroad:B(e)?e:{}:{},"extractRailroadOverrides"),se=p(e=>{if(!e||B(e))return{};const{railroad:i,svgId:a,theme:r,look:t,...n}=e;return n},"extractThemeOverrides"),m=p((e,i)=>{if(typeof e!="string")return i;const a=e.trim();return ne.test(a)?a:i},"sanitizeColorValue"),Y=p((e,i)=>{if(typeof e!="string")return i;const a=e.trim();return ae.test(a)?a:i},"sanitizeFontFamilyValue"),S=p((e,i)=>{const a=typeof e=="number"?e:typeof e=="string"?Number.parseFloat(e):Number.NaN;return Number.isFinite(a)&&a>=0?a:i},"sanitizeNumberValue"),de=p(e=>{const i=typeof e=="number"?e:typeof e=="string"?Number.parseFloat(e):Number.NaN;return Number.isFinite(i)&&i>0?i:void 0},"parseThemeFontSize"),ce=p(e=>{const i=Y(e.fontFamily,g.fontFamily),a=de(e.fontSize)??g.fontSize;return{...g,fontFamily:i,fontSize:a,terminalFill:m(e.secondBkg??e.secondaryColor,g.terminalFill),terminalStroke:m(e.secondaryBorderColor??e.lineColor,g.terminalStroke),terminalTextColor:m(e.secondaryTextColor??e.textColor,g.terminalTextColor),nonTerminalFill:m(e.mainBkg??e.background,g.nonTerminalFill),nonTerminalStroke:m(e.primaryBorderColor??e.lineColor,g.nonTerminalStroke),nonTerminalTextColor:m(e.primaryTextColor??e.textColor,g.nonTerminalTextColor),lineColor:m(e.lineColor,g.lineColor),markerFill:m(e.lineColor,g.markerFill),commentFill:m(e.labelBackground??e.tertiaryColor,g.commentFill),commentStroke:m(e.tertiaryBorderColor??e.lineColor,g.commentStroke),commentTextColor:m(e.tertiaryTextColor??e.textColor,g.commentTextColor),specialFill:m(e.tertiaryColor??e.secondaryColor,g.specialFill),specialStroke:m(e.tertiaryBorderColor??e.secondaryBorderColor,g.specialStroke),ruleNameColor:m(e.titleColor??e.textColor,g.ruleNameColor)}},"buildThemeDefaults"),M=p(e=>{const i=E(),a={...X(),...i.themeVariables??{},...se(e)},r=ce(a),t={...i.railroad??{},...le(e)};return{compactMode:t.compactMode??r.compactMode,padding:S(t.padding,r.padding),verticalSeparation:S(t.verticalSeparation,r.verticalSeparation),horizontalSeparation:S(t.horizontalSeparation,r.horizontalSeparation),arcRadius:S(t.arcRadius,r.arcRadius),fontSize:S(t.fontSize,r.fontSize),fontFamily:Y(t.fontFamily,r.fontFamily),terminalFill:m(t.terminalFill,r.terminalFill),terminalStroke:m(t.terminalStroke,r.terminalStroke),terminalTextColor:m(t.terminalTextColor,r.terminalTextColor),nonTerminalFill:m(t.nonTerminalFill,r.nonTerminalFill),nonTerminalStroke:m(t.nonTerminalStroke,r.nonTerminalStroke),nonTerminalTextColor:m(t.nonTerminalTextColor,r.nonTerminalTextColor),lineColor:m(t.lineColor,r.lineColor),strokeWidth:S(t.strokeWidth,r.strokeWidth),markerFill:m(t.markerFill,r.markerFill),commentFill:m(t.commentFill,r.commentFill),commentStroke:m(t.commentStroke,r.commentStroke),commentTextColor:m(t.commentTextColor,r.commentTextColor),specialFill:m(t.specialFill,r.specialFill),specialStroke:m(t.specialStroke,r.specialStroke),ruleNameColor:m(t.ruleNameColor,r.ruleNameColor),showMarkers:t.showMarkers??r.showMarkers,markerRadius:S(t.markerRadius,r.markerRadius)}},"buildRailroadStyleOptions"),ue=p(e=>{const{fontFamily:i,fontSize:a,terminalFill:r,terminalStroke:t,terminalTextColor:n,nonTerminalFill:h,nonTerminalStroke:s,nonTerminalTextColor:o,lineColor:u,strokeWidth:c,markerFill:d,commentFill:x,commentStroke:l,commentTextColor:f,specialFill:y,specialStroke:v,ruleNameColor:C}=M(e);return` +import{_ as p,l as w,F as L,z as E,q as I,W as X,e as q,i as H,c as G}from"./mermaid.core-AN7v7N47.js";var z="",b="",N="",A=[],R=new Map,k=p(e=>H(e,G()),"sanitizeText"),F=p(e=>{switch(e.type){case"terminal":return{...e,value:k(e.value)};case"nonterminal":return{...e,name:k(e.name)};case"sequence":return{...e,elements:e.elements.map(F)};case"choice":return{...e,alternatives:e.alternatives.map(F)};case"optional":return{...e,element:F(e.element)};case"repetition":return{...e,element:F(e.element),separator:e.separator?F(e.separator):void 0};case"special":return{...e,text:k(e.text)}}},"sanitizeAstNode"),U=p(()=>{z="",b="",N="",A.length=0,R.clear(),I(),w.debug("[Railroad] Database cleared")},"clear"),W=p(e=>{z=k(e),w.debug("[Railroad] Title set:",e)},"setTitle"),_=p(()=>z,"getTitle"),j=p(e=>{const i={...e,name:k(e.name),definition:F(e.definition),comment:e.comment?k(e.comment):void 0};w.debug("[Railroad] Adding rule:",i.name),R.has(i.name)&&w.warn(`[Railroad] Rule '${i.name}' is already defined. Overwriting.`),A.push(i),R.set(i.name,i)},"addRule"),K=p(()=>A,"getRules"),J=p(e=>R.get(e),"getRule"),Q=p(e=>{b=k(e).replace(/^\s+/g,""),w.debug("[Railroad] Accessibility title set:",e)},"setAccTitle"),Z=p(()=>b,"getAccTitle"),V=p(e=>{N=k(e).replace(/\n\s+/g,` +`),w.debug("[Railroad] Accessibility description set:",e)},"setAccDescription"),ee=p(()=>N,"getAccDescription"),te=W,re=_,ie={clear:U,setTitle:W,getTitle:_,addRule:j,getRules:K,getRule:J,setAccTitle:Q,getAccTitle:Z,setAccDescription:V,getAccDescription:ee,setDiagramTitle:te,getDiagramTitle:re},g={compactMode:!1,padding:10,verticalSeparation:8,horizontalSeparation:10,arcRadius:10,fontSize:14,fontFamily:"monospace",terminalFill:"#FFFFC0",terminalStroke:"#000000",terminalTextColor:"#000000",nonTerminalFill:"#FFFFFF",nonTerminalStroke:"#000000",nonTerminalTextColor:"#000000",lineColor:"#000000",strokeWidth:2,markerFill:"#000000",commentFill:"#E8E8E8",commentStroke:"#888888",commentTextColor:"#666666",specialFill:"#F0E0FF",specialStroke:"#8800CC",ruleNameColor:"#000066",showMarkers:!0,markerRadius:5},ne=/^#(?:[\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$|^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch)\([\d\s%+,./-]+\)$|^[a-z]+$/i,ae=/^[\w "',.-]+$/,oe=new Set(["compactMode","padding","verticalSeparation","horizontalSeparation","arcRadius","fontSize","fontFamily","terminalFill","terminalStroke","terminalTextColor","nonTerminalFill","nonTerminalStroke","nonTerminalTextColor","lineColor","strokeWidth","markerFill","commentFill","commentStroke","commentTextColor","specialFill","specialStroke","ruleNameColor","showMarkers","markerRadius"]),B=p(e=>e?Object.keys(e).every(i=>i==="railroad"||oe.has(i)):!1,"isRailroadStyleOptions"),le=p(e=>e?"railroad"in e&&e.railroad?e.railroad:B(e)?e:{}:{},"extractRailroadOverrides"),se=p(e=>{if(!e||B(e))return{};const{railroad:i,svgId:a,theme:r,look:t,...n}=e;return n},"extractThemeOverrides"),m=p((e,i)=>{if(typeof e!="string")return i;const a=e.trim();return ne.test(a)?a:i},"sanitizeColorValue"),Y=p((e,i)=>{if(typeof e!="string")return i;const a=e.trim();return ae.test(a)?a:i},"sanitizeFontFamilyValue"),S=p((e,i)=>{const a=typeof e=="number"?e:typeof e=="string"?Number.parseFloat(e):Number.NaN;return Number.isFinite(a)&&a>=0?a:i},"sanitizeNumberValue"),de=p(e=>{const i=typeof e=="number"?e:typeof e=="string"?Number.parseFloat(e):Number.NaN;return Number.isFinite(i)&&i>0?i:void 0},"parseThemeFontSize"),ce=p(e=>{const i=Y(e.fontFamily,g.fontFamily),a=de(e.fontSize)??g.fontSize;return{...g,fontFamily:i,fontSize:a,terminalFill:m(e.secondBkg??e.secondaryColor,g.terminalFill),terminalStroke:m(e.secondaryBorderColor??e.lineColor,g.terminalStroke),terminalTextColor:m(e.secondaryTextColor??e.textColor,g.terminalTextColor),nonTerminalFill:m(e.mainBkg??e.background,g.nonTerminalFill),nonTerminalStroke:m(e.primaryBorderColor??e.lineColor,g.nonTerminalStroke),nonTerminalTextColor:m(e.primaryTextColor??e.textColor,g.nonTerminalTextColor),lineColor:m(e.lineColor,g.lineColor),markerFill:m(e.lineColor,g.markerFill),commentFill:m(e.labelBackground??e.tertiaryColor,g.commentFill),commentStroke:m(e.tertiaryBorderColor??e.lineColor,g.commentStroke),commentTextColor:m(e.tertiaryTextColor??e.textColor,g.commentTextColor),specialFill:m(e.tertiaryColor??e.secondaryColor,g.specialFill),specialStroke:m(e.tertiaryBorderColor??e.secondaryBorderColor,g.specialStroke),ruleNameColor:m(e.titleColor??e.textColor,g.ruleNameColor)}},"buildThemeDefaults"),M=p(e=>{const i=E(),a={...X(),...i.themeVariables??{},...se(e)},r=ce(a),t={...i.railroad??{},...le(e)};return{compactMode:t.compactMode??r.compactMode,padding:S(t.padding,r.padding),verticalSeparation:S(t.verticalSeparation,r.verticalSeparation),horizontalSeparation:S(t.horizontalSeparation,r.horizontalSeparation),arcRadius:S(t.arcRadius,r.arcRadius),fontSize:S(t.fontSize,r.fontSize),fontFamily:Y(t.fontFamily,r.fontFamily),terminalFill:m(t.terminalFill,r.terminalFill),terminalStroke:m(t.terminalStroke,r.terminalStroke),terminalTextColor:m(t.terminalTextColor,r.terminalTextColor),nonTerminalFill:m(t.nonTerminalFill,r.nonTerminalFill),nonTerminalStroke:m(t.nonTerminalStroke,r.nonTerminalStroke),nonTerminalTextColor:m(t.nonTerminalTextColor,r.nonTerminalTextColor),lineColor:m(t.lineColor,r.lineColor),strokeWidth:S(t.strokeWidth,r.strokeWidth),markerFill:m(t.markerFill,r.markerFill),commentFill:m(t.commentFill,r.commentFill),commentStroke:m(t.commentStroke,r.commentStroke),commentTextColor:m(t.commentTextColor,r.commentTextColor),specialFill:m(t.specialFill,r.specialFill),specialStroke:m(t.specialStroke,r.specialStroke),ruleNameColor:m(t.ruleNameColor,r.ruleNameColor),showMarkers:t.showMarkers??r.showMarkers,markerRadius:S(t.markerRadius,r.markerRadius)}},"buildRailroadStyleOptions"),ue=p(e=>{const{fontFamily:i,fontSize:a,terminalFill:r,terminalStroke:t,terminalTextColor:n,nonTerminalFill:h,nonTerminalStroke:s,nonTerminalTextColor:o,lineColor:u,strokeWidth:c,markerFill:d,commentFill:x,commentStroke:l,commentTextColor:f,specialFill:y,specialStroke:v,ruleNameColor:C}=M(e);return` .railroad-diagram { font-family: ${i}; font-size: ${a}px; @@ -84,5 +84,5 @@ import{_ as p,l as w,D as L,y as E,p as I,E as X,e as H,i as q,c as G}from"./mer .railroad-group { /* Grouping container, no specific styles */ } -`},"getStyles"),T=class{constructor(){this.d=""}static{p(this,"PathBuilder")}moveTo(e,i){return this.d+=`M ${e} ${i} `,this}lineTo(e,i){return this.d+=`L ${e} ${i} `,this}horizontalTo(e){return this.d+=`H ${e} `,this}verticalTo(e){return this.d+=`V ${e} `,this}arcTo(e,i,a,r,t,n,h){return this.d+=`A ${e} ${i} ${a} ${r?1:0} ${t?1:0} ${n} ${h} `,this}build(){return this.d.trim()}},me=class{constructor(e,i=M()){this.textCache=new Map,this.svg=e,this.config=i}static{p(this,"RailroadRenderer")}measureText(e){if(this.textCache.has(e))return this.textCache.get(e);const i=this.svg.append("text").attr("font-family",this.config.fontFamily).attr("font-size",this.config.fontSize).text(e),a=i.node().getBBox(),r={width:a.width,height:a.height};return i.remove(),this.textCache.set(e,r),r}renderTerminal(e,i){const a=this.measureText(i),r=a.width+this.config.padding*2,t=a.height+this.config.padding*2,n=e.append("g").attr("class","railroad-terminal");return n.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",t).attr("rx",10).attr("ry",10),n.append("text").attr("x",r/2).attr("y",t/2).text(i),{element:n.node(),dimensions:{width:r,height:t,up:t/2,down:t/2}}}renderNonTerminal(e,i){const a=this.measureText(i),r=a.width+this.config.padding*2,t=a.height+this.config.padding*2,n=e.append("g").attr("class","railroad-nonterminal");return n.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",t),n.append("text").attr("x",r/2).attr("y",t/2).text(i),{element:n.node(),dimensions:{width:r,height:t,up:t/2,down:t/2}}}renderSequence(e,i){const a=i.map(o=>this.renderExpression(e,o));let r=0,t=0,n=0;for(const o of a)r+=o.dimensions.width,t=Math.max(t,o.dimensions.up),n=Math.max(n,o.dimensions.down);r+=(a.length-1)*this.config.horizontalSeparation;const h=e.append("g").attr("class","railroad-sequence");let s=0;for(let o=0;othis.renderExpression(e,d));let r=0,t=0;for(const d of a)r=Math.max(r,d.dimensions.width),t+=d.dimensions.height;t+=(a.length-1)*this.config.verticalSeparation;const n=this.config.arcRadius,h=n*4,s=r+h,o=e.append("g").attr("class","railroad-choice");let u=0;const c=t/2;for(const d of a){const x=u,l=x+d.dimensions.up,f=n*2+(r-d.dimensions.width)/2;o.node().appendChild(d.element).setAttribute("transform",`translate(${f}, ${x})`);const v=new T,C=l>c;l===c?v.moveTo(0,c).lineTo(f,l):v.moveTo(0,c).arcTo(n,n,0,!1,C,n,c+(C?n:-n)).lineTo(n,l-(C?n:-n)).arcTo(n,n,0,!1,!C,n*2,l).lineTo(f,l),o.append("path").attr("class","railroad-line").attr("d",v.build());const $=new T,O=f+d.dimensions.width,P=s-n*2;l===c?$.moveTo(O,l).lineTo(s,c):$.moveTo(O,l).lineTo(P,l).arcTo(n,n,0,!1,!C,s-n,l+(C?-n:n)).lineTo(s-n,c+(C?n:-n)).arcTo(n,n,0,!1,C,s,c),o.append("path").attr("class","railroad-line").attr("d",$.build()),u+=d.dimensions.height+this.config.verticalSeparation}return{element:o.node(),dimensions:{width:s,height:t,up:c,down:t-c}}}renderOptional(e,i){const a=this.renderExpression(e,i),r=this.config.arcRadius,t=r*2,n=a.dimensions.width+r*4,h=a.dimensions.height+t,s=e.append("g").attr("class","railroad-optional"),o=r*2,u=t;s.node().appendChild(a.element).setAttribute("transform",`translate(${o}, ${u})`);const d=u+a.dimensions.up,x=new T().moveTo(0,d).lineTo(r*2,d);s.append("path").attr("class","railroad-line").attr("d",x.build());const l=new T().moveTo(o+a.dimensions.width,d).lineTo(n,d);s.append("path").attr("class","railroad-line").attr("d",l.build());const f=new T().moveTo(0,d).arcTo(r,r,0,!1,!1,r,d-r).lineTo(r,r).arcTo(r,r,0,!1,!0,r*2,0).lineTo(n-r*2,0).arcTo(r,r,0,!1,!0,n-r,r).lineTo(n-r,d-r).arcTo(r,r,0,!1,!1,n,d);return s.append("path").attr("class","railroad-line").attr("d",f.build()),{element:s.node(),dimensions:{width:n,height:h,up:d,down:h-d}}}renderRepetition(e,i,a){const r=this.renderExpression(e,i),t=this.config.arcRadius,n=t*2,h=r.dimensions.width+t*4,s=a===0,o=r.dimensions.height+n+(s?n:0),u=e.append("g").attr("class","railroad-repetition"),c=t*2,d=s?n:0;u.node().appendChild(r.element).setAttribute("transform",`translate(${c}, ${d})`);const l=d+r.dimensions.up;u.append("path").attr("class","railroad-line").attr("d",new T().moveTo(0,l).lineTo(t*2,l).build()),u.append("path").attr("class","railroad-line").attr("d",new T().moveTo(c+r.dimensions.width,l).lineTo(h,l).build());const f=d+r.dimensions.height+t,y=new T().moveTo(c+r.dimensions.width,l).arcTo(t,t,0,!1,!0,c+r.dimensions.width+t,l+t).lineTo(c+r.dimensions.width+t,f).arcTo(t,t,0,!1,!0,c+r.dimensions.width,f+t).lineTo(t*2,f+t).arcTo(t,t,0,!1,!0,t,f).lineTo(t,l+t).arcTo(t,t,0,!1,!0,t*2,l);if(u.append("path").attr("class","railroad-line").attr("d",y.build()),s){const v=new T().moveTo(0,l).arcTo(t,t,0,!1,!1,t,l-t).lineTo(t,t).arcTo(t,t,0,!1,!0,t*2,0).lineTo(h-t*2,0).arcTo(t,t,0,!1,!0,h-t,t).lineTo(h-t,l-t).arcTo(t,t,0,!1,!1,h,l);u.append("path").attr("class","railroad-line").attr("d",v.build())}return{element:u.node(),dimensions:{width:h,height:o,up:l,down:o-l}}}renderSpecial(e,i){const a=this.measureText("? "+i+" ?"),r=a.width+this.config.padding*2,t=a.height+this.config.padding*2,n=e.append("g").attr("class","railroad-special");return n.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",t),n.append("text").attr("x",r/2).attr("y",t/2).text("? "+i+" ?"),{element:n.node(),dimensions:{width:r,height:t,up:t/2,down:t/2}}}renderExpression(e,i){switch(i.type){case"terminal":return this.renderTerminal(e,i.value);case"nonterminal":return this.renderNonTerminal(e,i.name);case"sequence":return this.renderSequence(e,i.elements);case"choice":return this.renderChoice(e,i.alternatives);case"optional":return this.renderOptional(e,i.element);case"repetition":return this.renderRepetition(e,i.element,i.min);case"special":return this.renderSpecial(e,i.text);default:throw new Error(`Unknown node type: ${i.type}`)}}renderRule(e,i){const a=this.svg.append("g").attr("class","railroad-rule").attr("transform",`translate(0, ${i})`),r=e.name+" =",t=this.measureText(r).width+20,n=t+20,h=a.append("g"),s=this.renderExpression(h,e.definition),o=Math.max(20,s.dimensions.up),u=o-s.dimensions.up;return h.attr("transform",`translate(${n}, ${u})`),a.append("g").attr("class","railroad-rule-name-group").append("text").attr("class","railroad-rule-name").attr("x",0).attr("y",o).text(r),a.append("g").attr("class","railroad-start").append("circle").attr("cx",t).attr("cy",o).attr("r",this.config.markerRadius),a.append("g").attr("class","railroad-end").append("circle").attr("cx",n+s.dimensions.width+10).attr("cy",o).attr("r",this.config.markerRadius),a.append("path").attr("class","railroad-line").attr("d",new T().moveTo(t+this.config.markerRadius,o).lineTo(n,o).build()),a.append("path").attr("class","railroad-line").attr("d",new T().moveTo(n+s.dimensions.width,o).lineTo(n+s.dimensions.width+10-this.config.markerRadius,o).build()),{height:Math.max(40,u+s.dimensions.height+this.config.padding*2),width:n+s.dimensions.width+10+this.config.markerRadius}}renderDiagram(e){let i=this.config.padding,a=0;for(const r of e){const t=this.renderRule(r,i);i+=t.height+this.config.verticalSeparation,a=Math.max(a,t.width)}return{width:a+this.config.padding*2,height:i+this.config.padding}}},D=p((e,i,a)=>{H(e,i.height,i.width,a),e.attr("viewBox",`0 0 ${i.width} ${i.height}`)},"configureRailroadSvgSize"),he=p((e,i,a)=>{w.debug(`[Railroad] Rendering diagram +`},"getStyles"),T=class{constructor(){this.d=""}static{p(this,"PathBuilder")}moveTo(e,i){return this.d+=`M ${e} ${i} `,this}lineTo(e,i){return this.d+=`L ${e} ${i} `,this}horizontalTo(e){return this.d+=`H ${e} `,this}verticalTo(e){return this.d+=`V ${e} `,this}arcTo(e,i,a,r,t,n,h){return this.d+=`A ${e} ${i} ${a} ${r?1:0} ${t?1:0} ${n} ${h} `,this}build(){return this.d.trim()}},me=class{constructor(e,i=M()){this.textCache=new Map,this.svg=e,this.config=i}static{p(this,"RailroadRenderer")}measureText(e){if(this.textCache.has(e))return this.textCache.get(e);const i=this.svg.append("text").attr("font-family",this.config.fontFamily).attr("font-size",this.config.fontSize).text(e),a=i.node().getBBox(),r={width:a.width,height:a.height};return i.remove(),this.textCache.set(e,r),r}renderTerminal(e,i){const a=this.measureText(i),r=a.width+this.config.padding*2,t=a.height+this.config.padding*2,n=e.append("g").attr("class","railroad-terminal");return n.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",t).attr("rx",10).attr("ry",10),n.append("text").attr("x",r/2).attr("y",t/2).text(i),{element:n.node(),dimensions:{width:r,height:t,up:t/2,down:t/2}}}renderNonTerminal(e,i){const a=this.measureText(i),r=a.width+this.config.padding*2,t=a.height+this.config.padding*2,n=e.append("g").attr("class","railroad-nonterminal");return n.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",t),n.append("text").attr("x",r/2).attr("y",t/2).text(i),{element:n.node(),dimensions:{width:r,height:t,up:t/2,down:t/2}}}renderSequence(e,i){const a=i.map(o=>this.renderExpression(e,o));let r=0,t=0,n=0;for(const o of a)r+=o.dimensions.width,t=Math.max(t,o.dimensions.up),n=Math.max(n,o.dimensions.down);r+=(a.length-1)*this.config.horizontalSeparation;const h=e.append("g").attr("class","railroad-sequence");let s=0;for(let o=0;othis.renderExpression(e,d));let r=0,t=0;for(const d of a)r=Math.max(r,d.dimensions.width),t+=d.dimensions.height;t+=(a.length-1)*this.config.verticalSeparation;const n=this.config.arcRadius,h=n*4,s=r+h,o=e.append("g").attr("class","railroad-choice");let u=0;const c=t/2;for(const d of a){const x=u,l=x+d.dimensions.up,f=n*2+(r-d.dimensions.width)/2;o.node().appendChild(d.element).setAttribute("transform",`translate(${f}, ${x})`);const v=new T,C=l>c;l===c?v.moveTo(0,c).lineTo(f,l):v.moveTo(0,c).arcTo(n,n,0,!1,C,n,c+(C?n:-n)).lineTo(n,l-(C?n:-n)).arcTo(n,n,0,!1,!C,n*2,l).lineTo(f,l),o.append("path").attr("class","railroad-line").attr("d",v.build());const $=new T,O=f+d.dimensions.width,P=s-n*2;l===c?$.moveTo(O,l).lineTo(s,c):$.moveTo(O,l).lineTo(P,l).arcTo(n,n,0,!1,!C,s-n,l+(C?-n:n)).lineTo(s-n,c+(C?n:-n)).arcTo(n,n,0,!1,C,s,c),o.append("path").attr("class","railroad-line").attr("d",$.build()),u+=d.dimensions.height+this.config.verticalSeparation}return{element:o.node(),dimensions:{width:s,height:t,up:c,down:t-c}}}renderOptional(e,i){const a=this.renderExpression(e,i),r=this.config.arcRadius,t=r*2,n=a.dimensions.width+r*4,h=a.dimensions.height+t,s=e.append("g").attr("class","railroad-optional"),o=r*2,u=t;s.node().appendChild(a.element).setAttribute("transform",`translate(${o}, ${u})`);const d=u+a.dimensions.up,x=new T().moveTo(0,d).lineTo(r*2,d);s.append("path").attr("class","railroad-line").attr("d",x.build());const l=new T().moveTo(o+a.dimensions.width,d).lineTo(n,d);s.append("path").attr("class","railroad-line").attr("d",l.build());const f=new T().moveTo(0,d).arcTo(r,r,0,!1,!1,r,d-r).lineTo(r,r).arcTo(r,r,0,!1,!0,r*2,0).lineTo(n-r*2,0).arcTo(r,r,0,!1,!0,n-r,r).lineTo(n-r,d-r).arcTo(r,r,0,!1,!1,n,d);return s.append("path").attr("class","railroad-line").attr("d",f.build()),{element:s.node(),dimensions:{width:n,height:h,up:d,down:h-d}}}renderRepetition(e,i,a){const r=this.renderExpression(e,i),t=this.config.arcRadius,n=t*2,h=r.dimensions.width+t*4,s=a===0,o=r.dimensions.height+n+(s?n:0),u=e.append("g").attr("class","railroad-repetition"),c=t*2,d=s?n:0;u.node().appendChild(r.element).setAttribute("transform",`translate(${c}, ${d})`);const l=d+r.dimensions.up;u.append("path").attr("class","railroad-line").attr("d",new T().moveTo(0,l).lineTo(t*2,l).build()),u.append("path").attr("class","railroad-line").attr("d",new T().moveTo(c+r.dimensions.width,l).lineTo(h,l).build());const f=d+r.dimensions.height+t,y=new T().moveTo(c+r.dimensions.width,l).arcTo(t,t,0,!1,!0,c+r.dimensions.width+t,l+t).lineTo(c+r.dimensions.width+t,f).arcTo(t,t,0,!1,!0,c+r.dimensions.width,f+t).lineTo(t*2,f+t).arcTo(t,t,0,!1,!0,t,f).lineTo(t,l+t).arcTo(t,t,0,!1,!0,t*2,l);if(u.append("path").attr("class","railroad-line").attr("d",y.build()),s){const v=new T().moveTo(0,l).arcTo(t,t,0,!1,!1,t,l-t).lineTo(t,t).arcTo(t,t,0,!1,!0,t*2,0).lineTo(h-t*2,0).arcTo(t,t,0,!1,!0,h-t,t).lineTo(h-t,l-t).arcTo(t,t,0,!1,!1,h,l);u.append("path").attr("class","railroad-line").attr("d",v.build())}return{element:u.node(),dimensions:{width:h,height:o,up:l,down:o-l}}}renderSpecial(e,i){const a=this.measureText("? "+i+" ?"),r=a.width+this.config.padding*2,t=a.height+this.config.padding*2,n=e.append("g").attr("class","railroad-special");return n.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",t),n.append("text").attr("x",r/2).attr("y",t/2).text("? "+i+" ?"),{element:n.node(),dimensions:{width:r,height:t,up:t/2,down:t/2}}}renderExpression(e,i){switch(i.type){case"terminal":return this.renderTerminal(e,i.value);case"nonterminal":return this.renderNonTerminal(e,i.name);case"sequence":return this.renderSequence(e,i.elements);case"choice":return this.renderChoice(e,i.alternatives);case"optional":return this.renderOptional(e,i.element);case"repetition":return this.renderRepetition(e,i.element,i.min);case"special":return this.renderSpecial(e,i.text);default:throw new Error(`Unknown node type: ${i.type}`)}}renderRule(e,i){const a=this.svg.append("g").attr("class","railroad-rule").attr("transform",`translate(0, ${i})`),r=e.name+" =",t=this.measureText(r).width+20,n=t+20,h=a.append("g"),s=this.renderExpression(h,e.definition),o=Math.max(20,s.dimensions.up),u=o-s.dimensions.up;return h.attr("transform",`translate(${n}, ${u})`),a.append("g").attr("class","railroad-rule-name-group").append("text").attr("class","railroad-rule-name").attr("x",0).attr("y",o).text(r),a.append("g").attr("class","railroad-start").append("circle").attr("cx",t).attr("cy",o).attr("r",this.config.markerRadius),a.append("g").attr("class","railroad-end").append("circle").attr("cx",n+s.dimensions.width+10).attr("cy",o).attr("r",this.config.markerRadius),a.append("path").attr("class","railroad-line").attr("d",new T().moveTo(t+this.config.markerRadius,o).lineTo(n,o).build()),a.append("path").attr("class","railroad-line").attr("d",new T().moveTo(n+s.dimensions.width,o).lineTo(n+s.dimensions.width+10-this.config.markerRadius,o).build()),{height:Math.max(40,u+s.dimensions.height+this.config.padding*2),width:n+s.dimensions.width+10+this.config.markerRadius}}renderDiagram(e){let i=this.config.padding,a=0;for(const r of e){const t=this.renderRule(r,i);i+=t.height+this.config.verticalSeparation,a=Math.max(a,t.width)}return{width:a+this.config.padding*2,height:i+this.config.padding}}},D=p((e,i,a)=>{q(e,i.height,i.width,a),e.attr("viewBox",`0 0 ${i.width} ${i.height}`)},"configureRailroadSvgSize"),he=p((e,i,a)=>{w.debug(`[Railroad] Rendering diagram `+e);try{const r=L(i);r.attr("class","railroad-diagram");const n=E().railroad?.useMaxWidth??!0,h=ie.getRules();if(w.debug(`[Railroad] Rendering ${h.length} rules`),h.length===0){w.warn("[Railroad] No rules to render"),D(r,{height:100,width:200},n);return}const o=new me(r,M()).renderDiagram(h);D(r,o,n),w.debug("[Railroad] Render complete")}catch(r){throw w.error("[Railroad] Render error:",r),r}},"draw"),ge={draw:he};export{ie as d,ue as g,ge as r}; diff --git a/apps/kimi-code/dist-web/assets/chunk-RYQCIY6F-KpXFcslK.js b/apps/kimi-code/dist-web/assets/chunk-RYQCIY6F-MtH8gVIz.js similarity index 99% rename from apps/kimi-code/dist-web/assets/chunk-RYQCIY6F-KpXFcslK.js rename to apps/kimi-code/dist-web/assets/chunk-RYQCIY6F-MtH8gVIz.js index 33512974f4..26e3730bc0 100644 --- a/apps/kimi-code/dist-web/assets/chunk-RYQCIY6F-KpXFcslK.js +++ b/apps/kimi-code/dist-web/assets/chunk-RYQCIY6F-MtH8gVIz.js @@ -1 +1 @@ -import{_ as u,l as i}from"./mermaid.core-Dxfcv_J5.js";import{i as m,G as y}from"./graph-DOmOIIwC.js";import{b as _,m as X}from"./map-DxJ2ADlA.js";var j=4;function p(e){return _(e,j)}function C(e){var r={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:F(e),edges:M(e)};return m(e.graph())||(r.value=p(e.graph())),r}function F(e){return X(e.nodes(),function(r){var n=e.node(r),s=e.parent(r),t={v:r};return m(n)||(t.value=n),m(s)||(t.parent=s),t})}function M(e){return X(e.edges(),function(r){var n=e.edge(r),s={v:r.v,w:r.w};return m(r.name)||(s.name=r.name),m(n)||(s.value=n),s})}var c=new Map,w=new Map,A=new Map,J=u(()=>{w.clear(),A.clear(),c.clear()},"clear"),v=u((e,r)=>{const n=w.get(r)||[];return i.trace("In isDescendant",r," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),R=u((e,r)=>{const n=w.get(r)||[];return i.info("Descendants of ",r," is ",n),i.info("Edge is ",e),e.v===r||e.w===r?!1:n?n.includes(e.v)||v(e.v,r)||v(e.w,r)||n.includes(e.w):(i.debug("Tilt, ",r,",not in descendants"),!1)},"edgeInCluster"),b=u((e,r,n,s)=>{i.warn("Copying children of ",e,"root",s,"data",r.node(e),s);const t=r.children(e)||[];e!==s&&t.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",t),t.forEach(o=>{if(r.children(o).length>0)b(o,r,n,s);else{const l=r.node(o);i.info("cp ",o," to ",s," with parent ",e),n.setNode(o,l),s!==r.parent(o)&&(i.warn("Setting parent",o,r.parent(o)),n.setParent(o,r.parent(o))),e!==s&&o!==e?(i.debug("Setting parent",o,e),n.setParent(o,e)):(i.info("In copy ",e,"root",s,"data",r.node(e),s),i.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==s,"node!==clusterId",o!==e));const f=r.edges(o);i.debug("Copying Edges",f),f.forEach(a=>{i.info("Edge",a);const d=r.edge(a.v,a.w,a.name);i.info("Edge data",d,s);try{if(R(a,s)){const g=w.get(s)||[],E=g.includes(a.v)||v(a.v,s)||a.v===s,x=g.includes(a.w)||v(a.w,s)||a.w===s;if(E&&x)i.info("Copying as ",a.v,a.w,d,a.name),n.setEdge(a.v,a.w,d,a.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]));else{const N=E?s:a.v,h=x?s:a.w;i.info("Rebinding cross-boundary edge as ",N,h,d,a.name),r.setEdge(N,h,d,a.name)}}else i.info("Skipping copy of edge ",a.v,"-->",a.w," rootId: ",s," clusterId:",e)}catch(g){i.error(g)}})}i.debug("Removing node",o),r.removeNode(o)})},"copy"),O=u((e,r)=>{const n=r.children(e);let s=[...n];for(const t of n)A.set(t,e),s=[...s,...O(t,r)];return s},"extractDescendants"),P=u((e,r,n)=>{const s=e.edges().filter(a=>a.v===r||a.w===r),t=e.edges().filter(a=>a.v===n||a.w===n),o=s.map(a=>({v:a.v===r?n:a.v,w:a.w===r?r:a.w})),l=t.map(a=>({v:a.v,w:a.w}));return o.filter(a=>l.some(d=>a.v===d.v&&a.w===d.w))},"findCommonEdges"),D=u((e,r,n)=>{const s=r.children(e);if(i.trace("Searching children of id ",e,s),s.length<1)return e;let t;for(const o of s){const l=D(o,r,n),f=P(r,n,l);if(l)if(f.length>0)t=l;else return l}return t},"findNonClusterChild"),S=u(e=>!c.has(e)||!c.get(e).externalConnections?e:c.has(e)?c.get(e).id:e,"getAnchorId"),U=u((e,r)=>{if(!e||r>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",D(n,e,n)),w.set(n,O(n,e)),c.set(n,{id:D(n,e,n),clusterData:e.node(n)}))}),e.nodes().forEach(function(n){const s=e.children(n),t=e.edges();s.length>0?(i.debug("Cluster identified",n,w),t.forEach(o=>{const l=v(o.v,n),f=v(o.w,n);l^f&&(i.warn("Edge: ",o," leaves cluster ",n),i.warn("Descendants of XXX ",n,": ",w.get(n)),c.get(n).externalConnections=!0)})):i.debug("Not a cluster ",n,w)});for(let n of c.keys()){const s=c.get(n).id,t=e.parent(s);t!==n&&c.has(t)&&!c.get(t).externalConnections&&(c.get(n).id=t);const o=e.edges().some(l=>l.v===n);if(s&&c.get(n)?.externalConnections&&o&&L(e,s,n)){const l=T(e,n,e.parent(s));l&&(c.get(n).id=l)}}e.edges().forEach(function(n){const s=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let t=n.v,o=n.w;if(i.warn("Fix XXX",c,"ids:",n.v,n.w,"Translating: ",c.get(n.v)," --- ",c.get(n.w)),c.get(n.v)||c.get(n.w)){if(i.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),t=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name),t!==n.v){const l=e.parent(t);c.get(l).externalConnections=!0,s.fromCluster=n.v}if(o!==n.w){const l=e.parent(o);c.get(l).externalConnections=!0,s.toCluster=n.w}i.warn("Fix Replacing with XXX",t,o,n.name),e.setEdge(t,o,s,n.name)}}),i.warn("Adjusted Graph",C(e)),k(e,0),i.trace(c)},"adjustClustersAndEdges"),k=u((e,r)=>{if(i.warn("extractor - ",r,C(e),e.children("D")),r>10){i.error("Bailing out");return}let n=e.nodes(),s=!1;for(const t of n){const o=e.children(t);s=s||o.length>0}if(!s){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,r);for(const t of n)if(i.debug("Extracting node",t,c,c.has(t)&&!c.get(t).externalConnections,!e.parent(t),e.node(t),e.children("D")," Depth ",r),!c.has(t))i.debug("Not a cluster",t,r);else if(c.get(t)?.clusterData?.explicitDir&&e.children(t)&&e.children(t).length>0){i.warn("Cluster with explicit dir, creating subgraph for children",t,r);const o=c.get(t).clusterData.dir,l=new y({multigraph:!0,compound:!0}).setGraph({rankdir:o,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});b(t,e,l,t);const f=e.node(t)||{};e.setNode(t,{...f,clusterNode:!0,id:t,clusterData:c.get(t).clusterData,label:c.get(t).label,graph:l}),i.warn("Subgraph for cluster with explicit dir created:",t,C(l))}else if(!c.get(t).externalConnections&&e.children(t)&&e.children(t).length>0){i.warn("Cluster without external connections, without a parent and with children",t,r);let l=e.graph().rankdir==="TB"?"LR":"TB";c.get(t)?.clusterData?.dir&&(l=c.get(t).clusterData.dir,i.warn("Fixing dir",c.get(t).clusterData.dir,l));const f=new y({multigraph:!0,compound:!0}).setGraph({rankdir:l,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});b(t,e,f,t);const a=e.node(t)||{};e.setNode(t,{...a,clusterNode:!0,id:t,clusterData:c.get(t).clusterData,label:c.get(t).label,graph:f}),i.debug("Old graph after copy",C(e))}else i.warn("Cluster ** ",t," **not meeting the criteria !externalConnections:",!c.get(t).externalConnections," no parent: ",!e.parent(t)," children ",e.children(t)&&e.children(t).length>0,e.children("D"),r),i.debug(c);n=e.nodes(),i.warn("New list of nodes",n);for(const t of n){const o=e.node(t);i.warn(" Now next level",t,o),o?.clusterNode&&k(o.graph,r+1)}},"extractor"),B=u((e,r)=>{if(r.length===0)return[];let n=Object.assign([],r);return r.forEach(s=>{const t=e.children(s),o=B(e,t);n=[...n,...o]}),n},"sorter"),W=u(e=>B(e,e.children()),"sortNodesByHierarchy"),L=u((e,r,n)=>{let s=e.parent(r);for(;s&&s!==n;){const t=c.get(s);if(t&&!t.externalConnections)return!0;s=e.parent(s)}return!1},"isNodeInExtractableCluster"),T=u((e,r,n)=>{const s=e.children(r)??[];for(const t of s){if(t===n||v(t,n))continue;const o=D(t,e,r);if(o&&!L(e,o,r))return o}return null},"findSafeAnchorNode");export{U as a,c as b,J as c,D as f,W as s,C as w}; +import{_ as u,l as i}from"./mermaid.core-AN7v7N47.js";import{i as m,G as y}from"./graph-DOmOIIwC.js";import{b as _,m as X}from"./map-DxJ2ADlA.js";var j=4;function p(e){return _(e,j)}function C(e){var r={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:F(e),edges:M(e)};return m(e.graph())||(r.value=p(e.graph())),r}function F(e){return X(e.nodes(),function(r){var n=e.node(r),s=e.parent(r),t={v:r};return m(n)||(t.value=n),m(s)||(t.parent=s),t})}function M(e){return X(e.edges(),function(r){var n=e.edge(r),s={v:r.v,w:r.w};return m(r.name)||(s.name=r.name),m(n)||(s.value=n),s})}var c=new Map,w=new Map,A=new Map,J=u(()=>{w.clear(),A.clear(),c.clear()},"clear"),v=u((e,r)=>{const n=w.get(r)||[];return i.trace("In isDescendant",r," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),R=u((e,r)=>{const n=w.get(r)||[];return i.info("Descendants of ",r," is ",n),i.info("Edge is ",e),e.v===r||e.w===r?!1:n?n.includes(e.v)||v(e.v,r)||v(e.w,r)||n.includes(e.w):(i.debug("Tilt, ",r,",not in descendants"),!1)},"edgeInCluster"),b=u((e,r,n,s)=>{i.warn("Copying children of ",e,"root",s,"data",r.node(e),s);const t=r.children(e)||[];e!==s&&t.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",t),t.forEach(o=>{if(r.children(o).length>0)b(o,r,n,s);else{const l=r.node(o);i.info("cp ",o," to ",s," with parent ",e),n.setNode(o,l),s!==r.parent(o)&&(i.warn("Setting parent",o,r.parent(o)),n.setParent(o,r.parent(o))),e!==s&&o!==e?(i.debug("Setting parent",o,e),n.setParent(o,e)):(i.info("In copy ",e,"root",s,"data",r.node(e),s),i.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==s,"node!==clusterId",o!==e));const f=r.edges(o);i.debug("Copying Edges",f),f.forEach(a=>{i.info("Edge",a);const d=r.edge(a.v,a.w,a.name);i.info("Edge data",d,s);try{if(R(a,s)){const g=w.get(s)||[],E=g.includes(a.v)||v(a.v,s)||a.v===s,x=g.includes(a.w)||v(a.w,s)||a.w===s;if(E&&x)i.info("Copying as ",a.v,a.w,d,a.name),n.setEdge(a.v,a.w,d,a.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]));else{const N=E?s:a.v,h=x?s:a.w;i.info("Rebinding cross-boundary edge as ",N,h,d,a.name),r.setEdge(N,h,d,a.name)}}else i.info("Skipping copy of edge ",a.v,"-->",a.w," rootId: ",s," clusterId:",e)}catch(g){i.error(g)}})}i.debug("Removing node",o),r.removeNode(o)})},"copy"),O=u((e,r)=>{const n=r.children(e);let s=[...n];for(const t of n)A.set(t,e),s=[...s,...O(t,r)];return s},"extractDescendants"),P=u((e,r,n)=>{const s=e.edges().filter(a=>a.v===r||a.w===r),t=e.edges().filter(a=>a.v===n||a.w===n),o=s.map(a=>({v:a.v===r?n:a.v,w:a.w===r?r:a.w})),l=t.map(a=>({v:a.v,w:a.w}));return o.filter(a=>l.some(d=>a.v===d.v&&a.w===d.w))},"findCommonEdges"),D=u((e,r,n)=>{const s=r.children(e);if(i.trace("Searching children of id ",e,s),s.length<1)return e;let t;for(const o of s){const l=D(o,r,n),f=P(r,n,l);if(l)if(f.length>0)t=l;else return l}return t},"findNonClusterChild"),S=u(e=>!c.has(e)||!c.get(e).externalConnections?e:c.has(e)?c.get(e).id:e,"getAnchorId"),U=u((e,r)=>{if(!e||r>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",D(n,e,n)),w.set(n,O(n,e)),c.set(n,{id:D(n,e,n),clusterData:e.node(n)}))}),e.nodes().forEach(function(n){const s=e.children(n),t=e.edges();s.length>0?(i.debug("Cluster identified",n,w),t.forEach(o=>{const l=v(o.v,n),f=v(o.w,n);l^f&&(i.warn("Edge: ",o," leaves cluster ",n),i.warn("Descendants of XXX ",n,": ",w.get(n)),c.get(n).externalConnections=!0)})):i.debug("Not a cluster ",n,w)});for(let n of c.keys()){const s=c.get(n).id,t=e.parent(s);t!==n&&c.has(t)&&!c.get(t).externalConnections&&(c.get(n).id=t);const o=e.edges().some(l=>l.v===n);if(s&&c.get(n)?.externalConnections&&o&&L(e,s,n)){const l=T(e,n,e.parent(s));l&&(c.get(n).id=l)}}e.edges().forEach(function(n){const s=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let t=n.v,o=n.w;if(i.warn("Fix XXX",c,"ids:",n.v,n.w,"Translating: ",c.get(n.v)," --- ",c.get(n.w)),c.get(n.v)||c.get(n.w)){if(i.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),t=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name),t!==n.v){const l=e.parent(t);c.get(l).externalConnections=!0,s.fromCluster=n.v}if(o!==n.w){const l=e.parent(o);c.get(l).externalConnections=!0,s.toCluster=n.w}i.warn("Fix Replacing with XXX",t,o,n.name),e.setEdge(t,o,s,n.name)}}),i.warn("Adjusted Graph",C(e)),k(e,0),i.trace(c)},"adjustClustersAndEdges"),k=u((e,r)=>{if(i.warn("extractor - ",r,C(e),e.children("D")),r>10){i.error("Bailing out");return}let n=e.nodes(),s=!1;for(const t of n){const o=e.children(t);s=s||o.length>0}if(!s){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,r);for(const t of n)if(i.debug("Extracting node",t,c,c.has(t)&&!c.get(t).externalConnections,!e.parent(t),e.node(t),e.children("D")," Depth ",r),!c.has(t))i.debug("Not a cluster",t,r);else if(c.get(t)?.clusterData?.explicitDir&&e.children(t)&&e.children(t).length>0){i.warn("Cluster with explicit dir, creating subgraph for children",t,r);const o=c.get(t).clusterData.dir,l=new y({multigraph:!0,compound:!0}).setGraph({rankdir:o,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});b(t,e,l,t);const f=e.node(t)||{};e.setNode(t,{...f,clusterNode:!0,id:t,clusterData:c.get(t).clusterData,label:c.get(t).label,graph:l}),i.warn("Subgraph for cluster with explicit dir created:",t,C(l))}else if(!c.get(t).externalConnections&&e.children(t)&&e.children(t).length>0){i.warn("Cluster without external connections, without a parent and with children",t,r);let l=e.graph().rankdir==="TB"?"LR":"TB";c.get(t)?.clusterData?.dir&&(l=c.get(t).clusterData.dir,i.warn("Fixing dir",c.get(t).clusterData.dir,l));const f=new y({multigraph:!0,compound:!0}).setGraph({rankdir:l,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});b(t,e,f,t);const a=e.node(t)||{};e.setNode(t,{...a,clusterNode:!0,id:t,clusterData:c.get(t).clusterData,label:c.get(t).label,graph:f}),i.debug("Old graph after copy",C(e))}else i.warn("Cluster ** ",t," **not meeting the criteria !externalConnections:",!c.get(t).externalConnections," no parent: ",!e.parent(t)," children ",e.children(t)&&e.children(t).length>0,e.children("D"),r),i.debug(c);n=e.nodes(),i.warn("New list of nodes",n);for(const t of n){const o=e.node(t);i.warn(" Now next level",t,o),o?.clusterNode&&k(o.graph,r+1)}},"extractor"),B=u((e,r)=>{if(r.length===0)return[];let n=Object.assign([],r);return r.forEach(s=>{const t=e.children(s),o=B(e,t);n=[...n,...o]}),n},"sorter"),W=u(e=>B(e,e.children()),"sortNodesByHierarchy"),L=u((e,r,n)=>{let s=e.parent(r);for(;s&&s!==n;){const t=c.get(s);if(t&&!t.externalConnections)return!0;s=e.parent(s)}return!1},"isNodeInExtractableCluster"),T=u((e,r,n)=>{const s=e.children(r)??[];for(const t of s){if(t===n||v(t,n))continue;const o=D(t,e,r);if(o&&!L(e,o,r))return o}return null},"findSafeAnchorNode");export{U as a,c as b,J as c,D as f,W as s,C as w}; diff --git a/apps/kimi-code/dist-web/assets/chunk-V7JOEXUC-CFknWZZI.js b/apps/kimi-code/dist-web/assets/chunk-V7JOEXUC-DUDFnGWS.js similarity index 99% rename from apps/kimi-code/dist-web/assets/chunk-V7JOEXUC-CFknWZZI.js rename to apps/kimi-code/dist-web/assets/chunk-V7JOEXUC-DUDFnGWS.js index 7d14469a3e..f25c4ef1b6 100644 --- a/apps/kimi-code/dist-web/assets/chunk-V7JOEXUC-CFknWZZI.js +++ b/apps/kimi-code/dist-web/assets/chunk-V7JOEXUC-DUDFnGWS.js @@ -1,4 +1,4 @@ -import{g as tt}from"./chunk-5VM5RSS4-A5rXJcEF.js";import{g as st}from"./chunk-XXDRQBXY-C3GGkCwU.js";import{s as it}from"./chunk-VR4S4FIN-gihGNGO1.js";import{_ as f,l as Ie,c as F,u as at,v as nt,x as Oe,d as de,a5 as rt,b as ut,a as lt,s as ct,g as ot,n as ht,o as dt,k as I,p as pt,q as At,i as ft,a6 as G}from"./mermaid.core-Dxfcv_J5.js";import{f as gt}from"./chunk-32BRIVSS-3l6XZxpp.js";var we=(function(){var t=f(function(O,o,h,p){for(h=h||{},p=O.length;p--;h[O[p]]=o);return h},"o"),i=[1,18],a=[1,19],n=[1,20],r=[1,41],c=[1,26],u=[1,42],d=[1,24],m=[1,25],g=[1,32],N=[1,33],Ae=[1,34],b=[1,45],fe=[1,35],ge=[1,36],me=[1,37],Ce=[1,38],be=[1,27],ke=[1,28],Ee=[1,29],Te=[1,30],ye=[1,31],k=[1,44],E=[1,46],T=[1,43],y=[1,47],De=[1,9],A=[1,8,9],Z=[1,58],$=[1,59],ee=[1,60],te=[1,61],se=[1,62],Fe=[1,63],Be=[1,64],_=[1,8,9,41],Pe=[1,77],M=[1,8,9,12,13,22,39,41,44,46,68,69,70,71,72,73,74,79,81],ie=[1,8,9,12,13,18,20,22,39,41,44,46,47,60,68,69,70,71,72,73,74,79,81,86,100,102,103],ae=[13,60,86,100,102,103],U=[13,60,73,74,86,100,102,103],Me=[13,60,68,69,70,71,72,86,100,102,103],ne=[1,103],z=[1,121],Y=[1,117],K=[1,113],W=[1,119],Q=[1,114],j=[1,115],X=[1,116],q=[1,118],H=[1,120],Re=[22,50,60,61,82,86,87,88,89,90],Ge=[1,128],re=[12,39],_e=[1,8,9,39,41,44,46],ue=[1,8,9,22],Ue=[1,153],ze=[1,8,9,61],x=[1,8,9,22,50,60,61,82,86,87,88,89,90],Se={trace:f(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,ANNOTATION_START:46,ANNOTATION_END:47,CLASS:48,emptyBody:49,SPACE:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"CLASS",50:"SPACE",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[38,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[24,4],[24,7],[24,6],[43,2],[43,3],[49,0],[49,2],[49,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:f(function(o,h,p,l,C,e,J){var s=e.length-1;switch(C){case 8:this.$=e[s-1];break;case 9:case 10:case 13:case 15:this.$=e[s];break;case 11:case 14:this.$=e[s-2]+"."+e[s];break;case 12:case 16:this.$=e[s-1]+e[s];break;case 17:case 18:this.$=e[s-1]+"~"+e[s]+"~";break;case 19:l.addRelation(e[s]);break;case 20:e[s-1].title=l.cleanupLabel(e[s]),l.addRelation(e[s-1]);break;case 31:this.$=e[s].trim(),l.setAccTitle(this.$);break;case 32:case 33:this.$=e[s].trim(),l.setAccDescription(this.$);break;case 34:l.addClassesToNamespace(e[s-3],e[s-1][0],e[s-1][1]),l.popNamespace();break;case 35:l.addClassesToNamespace(e[s-4],e[s-1][0],e[s-1][1]),l.popNamespace();break;case 36:this.$=l.addNamespace(e[s]);break;case 37:this.$=l.addNamespace(e[s-1],e[s]);break;case 38:this.$=[[e[s]],[]];break;case 39:this.$=[[e[s-1]],[]];break;case 40:e[s][0].unshift(e[s-2]),this.$=e[s];break;case 41:this.$=[[],[e[s]]];break;case 42:this.$=[[],[e[s-1]]];break;case 43:e[s][1].unshift(e[s-2]),this.$=e[s];break;case 44:case 45:this.$=[[],[]];break;case 46:this.$=e[s];break;case 48:l.setCssClass(e[s-2],e[s]);break;case 49:l.addMembers(e[s-3],e[s-1]);break;case 51:l.setCssClass(e[s-5],e[s-3]),l.addMembers(e[s-5],e[s-1]);break;case 52:l.addAnnotation(e[s-3],e[s-1]);break;case 53:l.addAnnotation(e[s-6],e[s-4]),l.addMembers(e[s-6],e[s-1]);break;case 54:l.addAnnotation(e[s-5],e[s-3]);break;case 55:this.$=e[s],l.addClass(e[s]);break;case 56:this.$=e[s-1],l.addClass(e[s-1]),l.setClassLabel(e[s-1],e[s]);break;case 60:l.addAnnotation(e[s],e[s-2]);break;case 61:case 74:this.$=[e[s]];break;case 62:e[s].push(e[s-1]),this.$=e[s];break;case 63:break;case 64:l.addMember(e[s-1],l.cleanupLabel(e[s]));break;case 65:break;case 66:break;case 67:this.$={id1:e[s-2],id2:e[s],relation:e[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 68:this.$={id1:e[s-3],id2:e[s],relation:e[s-1],relationTitle1:e[s-2],relationTitle2:"none"};break;case 69:this.$={id1:e[s-3],id2:e[s],relation:e[s-2],relationTitle1:"none",relationTitle2:e[s-1]};break;case 70:this.$={id1:e[s-4],id2:e[s],relation:e[s-2],relationTitle1:e[s-3],relationTitle2:e[s-1]};break;case 71:this.$=l.addNote(e[s],e[s-1]);break;case 72:this.$=l.addNote(e[s]);break;case 73:this.$=e[s-2],l.defineClass(e[s-1],e[s]);break;case 75:this.$=e[s-2].concat([e[s]]);break;case 76:l.setDirection("TB");break;case 77:l.setDirection("BT");break;case 78:l.setDirection("RL");break;case 79:l.setDirection("LR");break;case 80:this.$={type1:e[s-2],type2:e[s],lineType:e[s-1]};break;case 81:this.$={type1:"none",type2:e[s],lineType:e[s-1]};break;case 82:this.$={type1:e[s-1],type2:"none",lineType:e[s]};break;case 83:this.$={type1:"none",type2:"none",lineType:e[s]};break;case 84:this.$=l.relationType.AGGREGATION;break;case 85:this.$=l.relationType.EXTENSION;break;case 86:this.$=l.relationType.COMPOSITION;break;case 87:this.$=l.relationType.DEPENDENCY;break;case 88:this.$=l.relationType.LOLLIPOP;break;case 89:this.$=l.lineType.LINE;break;case 90:this.$=l.lineType.DOTTED_LINE;break;case 91:case 97:this.$=e[s-2],l.setClickEvent(e[s-1],e[s]);break;case 92:case 98:this.$=e[s-3],l.setClickEvent(e[s-2],e[s-1]),l.setTooltip(e[s-2],e[s]);break;case 93:this.$=e[s-2],l.setLink(e[s-1],e[s]);break;case 94:this.$=e[s-3],l.setLink(e[s-2],e[s-1],e[s]);break;case 95:this.$=e[s-3],l.setLink(e[s-2],e[s-1]),l.setTooltip(e[s-2],e[s]);break;case 96:this.$=e[s-4],l.setLink(e[s-3],e[s-2],e[s]),l.setTooltip(e[s-3],e[s-1]);break;case 99:this.$=e[s-3],l.setClickEvent(e[s-2],e[s-1],e[s]);break;case 100:this.$=e[s-4],l.setClickEvent(e[s-3],e[s-2],e[s-1]),l.setTooltip(e[s-3],e[s]);break;case 101:this.$=e[s-3],l.setLink(e[s-2],e[s]);break;case 102:this.$=e[s-4],l.setLink(e[s-3],e[s-1],e[s]);break;case 103:this.$=e[s-4],l.setLink(e[s-3],e[s-1]),l.setTooltip(e[s-3],e[s]);break;case 104:this.$=e[s-5],l.setLink(e[s-4],e[s-2],e[s]),l.setTooltip(e[s-4],e[s-1]);break;case 105:this.$=e[s-2],l.setCssStyle(e[s-1],e[s]);break;case 106:l.setCssClass(e[s-1],e[s]);break;case 107:this.$=[e[s]];break;case 108:e[s-2].push(e[s]),this.$=e[s-2];break;case 110:this.$=e[s-1]+e[s];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:a,37:n,38:22,42:r,43:23,46:c,48:u,51:d,52:m,54:g,56:N,57:Ae,60:b,62:fe,63:ge,64:me,65:Ce,75:be,76:ke,78:Ee,82:Te,83:ye,86:k,100:E,102:T,103:y},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(De,[2,5],{8:[1,48]}),{8:[1,49]},t(A,[2,19],{22:[1,50]}),t(A,[2,21]),t(A,[2,22]),t(A,[2,23]),t(A,[2,24]),t(A,[2,25]),t(A,[2,26]),t(A,[2,27]),t(A,[2,28]),t(A,[2,29]),t(A,[2,30]),{34:[1,51]},{36:[1,52]},t(A,[2,33]),t(A,[2,63],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:Z,69:$,70:ee,71:te,72:se,73:Fe,74:Be}),{39:[1,65]},t(_,[2,47],{39:[1,67],44:[1,66],46:[1,68]}),t(A,[2,65]),t(A,[2,66]),{16:69,60:b,86:k,100:E,102:T},{16:39,17:40,19:70,60:b,86:k,100:E,102:T,103:y},{16:39,17:40,19:71,60:b,86:k,100:E,102:T,103:y},{16:39,17:40,19:72,60:b,86:k,100:E,102:T,103:y},{60:[1,73]},{13:[1,74]},{16:39,17:40,19:75,60:b,86:k,100:E,102:T,103:y},{13:Pe,55:76},{58:78,60:[1,79]},t(A,[2,76]),t(A,[2,77]),t(A,[2,78]),t(A,[2,79]),t(M,[2,13],{16:39,17:40,19:81,18:[1,80],20:[1,82],60:b,86:k,100:E,102:T,103:y}),t(M,[2,15],{20:[1,83]}),{15:84,16:85,17:86,60:b,86:k,100:E,102:T,103:y},{16:39,17:40,19:87,60:b,86:k,100:E,102:T,103:y},t(ie,[2,133]),t(ie,[2,134]),t(ie,[2,135]),t(ie,[2,136]),t([1,8,9,12,13,20,22,39,41,44,46,68,69,70,71,72,73,74,79,81],[2,137]),t(De,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:88,33:i,35:a,37:n,42:r,46:c,48:u,51:d,52:m,54:g,56:N,57:Ae,60:b,62:fe,63:ge,64:me,65:Ce,75:be,76:ke,78:Ee,82:Te,83:ye,86:k,100:E,102:T,103:y}),{5:89,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:a,37:n,38:22,42:r,43:23,46:c,48:u,51:d,52:m,54:g,56:N,57:Ae,60:b,62:fe,63:ge,64:me,65:Ce,75:be,76:ke,78:Ee,82:Te,83:ye,86:k,100:E,102:T,103:y},t(A,[2,20]),t(A,[2,31]),t(A,[2,32]),{13:[1,91],16:39,17:40,19:90,60:b,86:k,100:E,102:T,103:y},{53:92,66:56,67:57,68:Z,69:$,70:ee,71:te,72:se,73:Fe,74:Be},t(A,[2,64]),{67:93,73:Fe,74:Be},t(ae,[2,83],{66:94,68:Z,69:$,70:ee,71:te,72:se}),t(U,[2,84]),t(U,[2,85]),t(U,[2,86]),t(U,[2,87]),t(U,[2,88]),t(Me,[2,89]),t(Me,[2,90]),{8:[1,96],23:99,24:97,30:98,38:22,40:95,42:r,43:23,48:u,54:g,56:N},{16:100,60:b,86:k,100:E,102:T},{41:[1,102],45:101,51:ne},{16:104,60:b,86:k,100:E,102:T},{47:[1,105]},{13:[1,106]},{13:[1,107]},{79:[1,108],81:[1,109]},{22:z,50:Y,59:110,60:K,82:W,84:111,85:112,86:Q,87:j,88:X,89:q,90:H},{60:[1,122]},{13:Pe,55:123},t(_,[2,72]),t(_,[2,138]),{22:z,50:Y,59:124,60:K,61:[1,125],82:W,84:111,85:112,86:Q,87:j,88:X,89:q,90:H},t(Re,[2,74]),{16:39,17:40,19:126,60:b,86:k,100:E,102:T,103:y},t(M,[2,16]),t(M,[2,17]),t(M,[2,18]),{11:127,12:Ge,39:[2,36]},t(re,[2,9],{16:85,17:86,15:130,18:[1,129],60:b,86:k,100:E,102:T,103:y}),t(re,[2,10]),t(_e,[2,55],{11:131,12:Ge}),t(De,[2,7]),{9:[1,132]},t(ue,[2,67]),{16:39,17:40,19:133,60:b,86:k,100:E,102:T,103:y},{13:[1,135],16:39,17:40,19:134,60:b,86:k,100:E,102:T,103:y},t(ae,[2,82],{66:136,68:Z,69:$,70:ee,71:te,72:se}),t(ae,[2,81]),{41:[1,137]},{23:99,24:97,30:98,38:22,40:138,42:r,43:23,48:u,54:g,56:N},{8:[1,139],41:[2,38]},{8:[1,140],41:[2,41]},{8:[1,141],41:[2,44]},t(_,[2,48],{39:[1,142]}),{41:[1,143]},t(_,[2,50]),{41:[2,61],45:144,51:ne},{47:[1,145]},{16:39,17:40,19:146,60:b,86:k,100:E,102:T,103:y},t(A,[2,91],{13:[1,147]}),t(A,[2,93],{13:[1,149],77:[1,148]}),t(A,[2,97],{13:[1,150],80:[1,151]}),{13:[1,152]},t(A,[2,105],{61:Ue}),t(ze,[2,107],{85:154,22:z,50:Y,60:K,82:W,86:Q,87:j,88:X,89:q,90:H}),t(x,[2,109]),t(x,[2,111]),t(x,[2,112]),t(x,[2,113]),t(x,[2,114]),t(x,[2,115]),t(x,[2,116]),t(x,[2,117]),t(x,[2,118]),t(x,[2,119]),t(A,[2,106]),t(_,[2,71]),t(A,[2,73],{61:Ue}),{60:[1,155]},t(M,[2,14]),{39:[2,37]},{13:[1,156]},{15:157,16:85,17:86,60:b,86:k,100:E,102:T,103:y},t(re,[2,12]),t(_e,[2,56]),{1:[2,4]},t(ue,[2,69]),t(ue,[2,68]),{16:39,17:40,19:158,60:b,86:k,100:E,102:T,103:y},t(ae,[2,80]),t(_,[2,34]),{41:[1,159]},{23:99,24:97,30:98,38:22,40:160,41:[2,39],42:r,43:23,48:u,54:g,56:N},{23:99,24:97,30:98,38:22,40:161,41:[2,42],42:r,43:23,48:u,54:g,56:N},{23:99,24:97,30:98,38:22,40:162,41:[2,45],42:r,43:23,48:u,54:g,56:N},{45:163,51:ne},t(_,[2,49]),{41:[2,62]},t(_,[2,52],{39:[1,164]}),t(A,[2,60]),t(A,[2,92]),t(A,[2,94]),t(A,[2,95],{77:[1,165]}),t(A,[2,98]),t(A,[2,99],{13:[1,166]}),t(A,[2,101],{13:[1,168],77:[1,167]}),{22:z,50:Y,60:K,82:W,84:169,85:112,86:Q,87:j,88:X,89:q,90:H},t(x,[2,110]),t(Re,[2,75]),{14:[1,170]},t(re,[2,11]),t(ue,[2,70]),t(_,[2,35]),{41:[2,40]},{41:[2,43]},{41:[2,46]},{41:[1,171]},{41:[1,173],45:172,51:ne},t(A,[2,96]),t(A,[2,100]),t(A,[2,102]),t(A,[2,103],{77:[1,174]}),t(ze,[2,108],{85:154,22:z,50:Y,60:K,82:W,86:Q,87:j,88:X,89:q,90:H}),t(_e,[2,8]),t(_,[2,51]),{41:[1,175]},t(_,[2,54]),t(A,[2,104]),t(_,[2,53])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],127:[2,37],132:[2,4],144:[2,62],160:[2,40],161:[2,43],162:[2,46]},parseError:f(function(o,h){if(h.recoverable)this.trace(o);else{var p=new Error(o);throw p.hash=h,p}},"parseError"),parse:f(function(o){var h=this,p=[0],l=[],C=[null],e=[],J=this.table,s="",ce=0,Ye=0,Je=2,Ke=1,Ze=e.slice.call(arguments,1),D=Object.create(this.lexer),w={yy:{}};for(var Ne in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ne)&&(w.yy[Ne]=this.yy[Ne]);D.setInput(o,w.yy),w.yy.lexer=D,w.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var Le=D.yylloc;e.push(Le);var $e=D.options&&D.options.ranges;typeof w.yy.parseError=="function"?this.parseError=w.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function et(S){p.length=p.length-2*S,C.length=C.length-S,e.length=e.length-S}f(et,"popStack");function We(){var S;return S=l.pop()||D.lex()||Ke,typeof S!="number"&&(S instanceof Array&&(l=S,S=l.pop()),S=h.symbols_[S]||S),S}f(We,"lex");for(var B,V,L,xe,R={},oe,v,Qe,he;;){if(V=p[p.length-1],this.defaultActions[V]?L=this.defaultActions[V]:((B===null||typeof B>"u")&&(B=We()),L=J[V]&&J[V][B]),typeof L>"u"||!L.length||!L[0]){var ve="";he=[];for(oe in J[V])this.terminals_[oe]&&oe>Je&&he.push("'"+this.terminals_[oe]+"'");D.showPosition?ve="Parse error on line "+(ce+1)+`: +import{g as tt}from"./chunk-5VM5RSS4-CnrQ4AgJ.js";import{g as st}from"./chunk-XXDRQBXY-BRRtW_Of.js";import{s as it}from"./chunk-VR4S4FIN-DMqAUMdK.js";import{_ as f,l as Ie,c as F,v as at,x as nt,y as Oe,d as de,a5 as rt,b as ut,a as lt,s as ct,g as ot,o as ht,p as dt,k as I,q as pt,r as At,i as ft,a6 as G}from"./mermaid.core-AN7v7N47.js";import{f as gt}from"./chunk-32BRIVSS-B8gSFtLK.js";var we=(function(){var t=f(function(O,o,h,p){for(h=h||{},p=O.length;p--;h[O[p]]=o);return h},"o"),i=[1,18],a=[1,19],n=[1,20],r=[1,41],c=[1,26],u=[1,42],d=[1,24],m=[1,25],g=[1,32],N=[1,33],Ae=[1,34],b=[1,45],fe=[1,35],ge=[1,36],me=[1,37],Ce=[1,38],be=[1,27],ke=[1,28],Ee=[1,29],Te=[1,30],ye=[1,31],k=[1,44],E=[1,46],T=[1,43],y=[1,47],De=[1,9],A=[1,8,9],Z=[1,58],$=[1,59],ee=[1,60],te=[1,61],se=[1,62],Fe=[1,63],Be=[1,64],_=[1,8,9,41],Pe=[1,77],M=[1,8,9,12,13,22,39,41,44,46,68,69,70,71,72,73,74,79,81],ie=[1,8,9,12,13,18,20,22,39,41,44,46,47,60,68,69,70,71,72,73,74,79,81,86,100,102,103],ae=[13,60,86,100,102,103],U=[13,60,73,74,86,100,102,103],Me=[13,60,68,69,70,71,72,86,100,102,103],ne=[1,103],z=[1,121],Y=[1,117],K=[1,113],W=[1,119],Q=[1,114],j=[1,115],X=[1,116],q=[1,118],H=[1,120],Re=[22,50,60,61,82,86,87,88,89,90],Ge=[1,128],re=[12,39],_e=[1,8,9,39,41,44,46],ue=[1,8,9,22],Ue=[1,153],ze=[1,8,9,61],x=[1,8,9,22,50,60,61,82,86,87,88,89,90],Se={trace:f(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,ANNOTATION_START:46,ANNOTATION_END:47,CLASS:48,emptyBody:49,SPACE:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"CLASS",50:"SPACE",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[38,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[24,4],[24,7],[24,6],[43,2],[43,3],[49,0],[49,2],[49,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:f(function(o,h,p,l,C,e,J){var s=e.length-1;switch(C){case 8:this.$=e[s-1];break;case 9:case 10:case 13:case 15:this.$=e[s];break;case 11:case 14:this.$=e[s-2]+"."+e[s];break;case 12:case 16:this.$=e[s-1]+e[s];break;case 17:case 18:this.$=e[s-1]+"~"+e[s]+"~";break;case 19:l.addRelation(e[s]);break;case 20:e[s-1].title=l.cleanupLabel(e[s]),l.addRelation(e[s-1]);break;case 31:this.$=e[s].trim(),l.setAccTitle(this.$);break;case 32:case 33:this.$=e[s].trim(),l.setAccDescription(this.$);break;case 34:l.addClassesToNamespace(e[s-3],e[s-1][0],e[s-1][1]),l.popNamespace();break;case 35:l.addClassesToNamespace(e[s-4],e[s-1][0],e[s-1][1]),l.popNamespace();break;case 36:this.$=l.addNamespace(e[s]);break;case 37:this.$=l.addNamespace(e[s-1],e[s]);break;case 38:this.$=[[e[s]],[]];break;case 39:this.$=[[e[s-1]],[]];break;case 40:e[s][0].unshift(e[s-2]),this.$=e[s];break;case 41:this.$=[[],[e[s]]];break;case 42:this.$=[[],[e[s-1]]];break;case 43:e[s][1].unshift(e[s-2]),this.$=e[s];break;case 44:case 45:this.$=[[],[]];break;case 46:this.$=e[s];break;case 48:l.setCssClass(e[s-2],e[s]);break;case 49:l.addMembers(e[s-3],e[s-1]);break;case 51:l.setCssClass(e[s-5],e[s-3]),l.addMembers(e[s-5],e[s-1]);break;case 52:l.addAnnotation(e[s-3],e[s-1]);break;case 53:l.addAnnotation(e[s-6],e[s-4]),l.addMembers(e[s-6],e[s-1]);break;case 54:l.addAnnotation(e[s-5],e[s-3]);break;case 55:this.$=e[s],l.addClass(e[s]);break;case 56:this.$=e[s-1],l.addClass(e[s-1]),l.setClassLabel(e[s-1],e[s]);break;case 60:l.addAnnotation(e[s],e[s-2]);break;case 61:case 74:this.$=[e[s]];break;case 62:e[s].push(e[s-1]),this.$=e[s];break;case 63:break;case 64:l.addMember(e[s-1],l.cleanupLabel(e[s]));break;case 65:break;case 66:break;case 67:this.$={id1:e[s-2],id2:e[s],relation:e[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 68:this.$={id1:e[s-3],id2:e[s],relation:e[s-1],relationTitle1:e[s-2],relationTitle2:"none"};break;case 69:this.$={id1:e[s-3],id2:e[s],relation:e[s-2],relationTitle1:"none",relationTitle2:e[s-1]};break;case 70:this.$={id1:e[s-4],id2:e[s],relation:e[s-2],relationTitle1:e[s-3],relationTitle2:e[s-1]};break;case 71:this.$=l.addNote(e[s],e[s-1]);break;case 72:this.$=l.addNote(e[s]);break;case 73:this.$=e[s-2],l.defineClass(e[s-1],e[s]);break;case 75:this.$=e[s-2].concat([e[s]]);break;case 76:l.setDirection("TB");break;case 77:l.setDirection("BT");break;case 78:l.setDirection("RL");break;case 79:l.setDirection("LR");break;case 80:this.$={type1:e[s-2],type2:e[s],lineType:e[s-1]};break;case 81:this.$={type1:"none",type2:e[s],lineType:e[s-1]};break;case 82:this.$={type1:e[s-1],type2:"none",lineType:e[s]};break;case 83:this.$={type1:"none",type2:"none",lineType:e[s]};break;case 84:this.$=l.relationType.AGGREGATION;break;case 85:this.$=l.relationType.EXTENSION;break;case 86:this.$=l.relationType.COMPOSITION;break;case 87:this.$=l.relationType.DEPENDENCY;break;case 88:this.$=l.relationType.LOLLIPOP;break;case 89:this.$=l.lineType.LINE;break;case 90:this.$=l.lineType.DOTTED_LINE;break;case 91:case 97:this.$=e[s-2],l.setClickEvent(e[s-1],e[s]);break;case 92:case 98:this.$=e[s-3],l.setClickEvent(e[s-2],e[s-1]),l.setTooltip(e[s-2],e[s]);break;case 93:this.$=e[s-2],l.setLink(e[s-1],e[s]);break;case 94:this.$=e[s-3],l.setLink(e[s-2],e[s-1],e[s]);break;case 95:this.$=e[s-3],l.setLink(e[s-2],e[s-1]),l.setTooltip(e[s-2],e[s]);break;case 96:this.$=e[s-4],l.setLink(e[s-3],e[s-2],e[s]),l.setTooltip(e[s-3],e[s-1]);break;case 99:this.$=e[s-3],l.setClickEvent(e[s-2],e[s-1],e[s]);break;case 100:this.$=e[s-4],l.setClickEvent(e[s-3],e[s-2],e[s-1]),l.setTooltip(e[s-3],e[s]);break;case 101:this.$=e[s-3],l.setLink(e[s-2],e[s]);break;case 102:this.$=e[s-4],l.setLink(e[s-3],e[s-1],e[s]);break;case 103:this.$=e[s-4],l.setLink(e[s-3],e[s-1]),l.setTooltip(e[s-3],e[s]);break;case 104:this.$=e[s-5],l.setLink(e[s-4],e[s-2],e[s]),l.setTooltip(e[s-4],e[s-1]);break;case 105:this.$=e[s-2],l.setCssStyle(e[s-1],e[s]);break;case 106:l.setCssClass(e[s-1],e[s]);break;case 107:this.$=[e[s]];break;case 108:e[s-2].push(e[s]),this.$=e[s-2];break;case 110:this.$=e[s-1]+e[s];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:a,37:n,38:22,42:r,43:23,46:c,48:u,51:d,52:m,54:g,56:N,57:Ae,60:b,62:fe,63:ge,64:me,65:Ce,75:be,76:ke,78:Ee,82:Te,83:ye,86:k,100:E,102:T,103:y},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(De,[2,5],{8:[1,48]}),{8:[1,49]},t(A,[2,19],{22:[1,50]}),t(A,[2,21]),t(A,[2,22]),t(A,[2,23]),t(A,[2,24]),t(A,[2,25]),t(A,[2,26]),t(A,[2,27]),t(A,[2,28]),t(A,[2,29]),t(A,[2,30]),{34:[1,51]},{36:[1,52]},t(A,[2,33]),t(A,[2,63],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:Z,69:$,70:ee,71:te,72:se,73:Fe,74:Be}),{39:[1,65]},t(_,[2,47],{39:[1,67],44:[1,66],46:[1,68]}),t(A,[2,65]),t(A,[2,66]),{16:69,60:b,86:k,100:E,102:T},{16:39,17:40,19:70,60:b,86:k,100:E,102:T,103:y},{16:39,17:40,19:71,60:b,86:k,100:E,102:T,103:y},{16:39,17:40,19:72,60:b,86:k,100:E,102:T,103:y},{60:[1,73]},{13:[1,74]},{16:39,17:40,19:75,60:b,86:k,100:E,102:T,103:y},{13:Pe,55:76},{58:78,60:[1,79]},t(A,[2,76]),t(A,[2,77]),t(A,[2,78]),t(A,[2,79]),t(M,[2,13],{16:39,17:40,19:81,18:[1,80],20:[1,82],60:b,86:k,100:E,102:T,103:y}),t(M,[2,15],{20:[1,83]}),{15:84,16:85,17:86,60:b,86:k,100:E,102:T,103:y},{16:39,17:40,19:87,60:b,86:k,100:E,102:T,103:y},t(ie,[2,133]),t(ie,[2,134]),t(ie,[2,135]),t(ie,[2,136]),t([1,8,9,12,13,20,22,39,41,44,46,68,69,70,71,72,73,74,79,81],[2,137]),t(De,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:88,33:i,35:a,37:n,42:r,46:c,48:u,51:d,52:m,54:g,56:N,57:Ae,60:b,62:fe,63:ge,64:me,65:Ce,75:be,76:ke,78:Ee,82:Te,83:ye,86:k,100:E,102:T,103:y}),{5:89,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:a,37:n,38:22,42:r,43:23,46:c,48:u,51:d,52:m,54:g,56:N,57:Ae,60:b,62:fe,63:ge,64:me,65:Ce,75:be,76:ke,78:Ee,82:Te,83:ye,86:k,100:E,102:T,103:y},t(A,[2,20]),t(A,[2,31]),t(A,[2,32]),{13:[1,91],16:39,17:40,19:90,60:b,86:k,100:E,102:T,103:y},{53:92,66:56,67:57,68:Z,69:$,70:ee,71:te,72:se,73:Fe,74:Be},t(A,[2,64]),{67:93,73:Fe,74:Be},t(ae,[2,83],{66:94,68:Z,69:$,70:ee,71:te,72:se}),t(U,[2,84]),t(U,[2,85]),t(U,[2,86]),t(U,[2,87]),t(U,[2,88]),t(Me,[2,89]),t(Me,[2,90]),{8:[1,96],23:99,24:97,30:98,38:22,40:95,42:r,43:23,48:u,54:g,56:N},{16:100,60:b,86:k,100:E,102:T},{41:[1,102],45:101,51:ne},{16:104,60:b,86:k,100:E,102:T},{47:[1,105]},{13:[1,106]},{13:[1,107]},{79:[1,108],81:[1,109]},{22:z,50:Y,59:110,60:K,82:W,84:111,85:112,86:Q,87:j,88:X,89:q,90:H},{60:[1,122]},{13:Pe,55:123},t(_,[2,72]),t(_,[2,138]),{22:z,50:Y,59:124,60:K,61:[1,125],82:W,84:111,85:112,86:Q,87:j,88:X,89:q,90:H},t(Re,[2,74]),{16:39,17:40,19:126,60:b,86:k,100:E,102:T,103:y},t(M,[2,16]),t(M,[2,17]),t(M,[2,18]),{11:127,12:Ge,39:[2,36]},t(re,[2,9],{16:85,17:86,15:130,18:[1,129],60:b,86:k,100:E,102:T,103:y}),t(re,[2,10]),t(_e,[2,55],{11:131,12:Ge}),t(De,[2,7]),{9:[1,132]},t(ue,[2,67]),{16:39,17:40,19:133,60:b,86:k,100:E,102:T,103:y},{13:[1,135],16:39,17:40,19:134,60:b,86:k,100:E,102:T,103:y},t(ae,[2,82],{66:136,68:Z,69:$,70:ee,71:te,72:se}),t(ae,[2,81]),{41:[1,137]},{23:99,24:97,30:98,38:22,40:138,42:r,43:23,48:u,54:g,56:N},{8:[1,139],41:[2,38]},{8:[1,140],41:[2,41]},{8:[1,141],41:[2,44]},t(_,[2,48],{39:[1,142]}),{41:[1,143]},t(_,[2,50]),{41:[2,61],45:144,51:ne},{47:[1,145]},{16:39,17:40,19:146,60:b,86:k,100:E,102:T,103:y},t(A,[2,91],{13:[1,147]}),t(A,[2,93],{13:[1,149],77:[1,148]}),t(A,[2,97],{13:[1,150],80:[1,151]}),{13:[1,152]},t(A,[2,105],{61:Ue}),t(ze,[2,107],{85:154,22:z,50:Y,60:K,82:W,86:Q,87:j,88:X,89:q,90:H}),t(x,[2,109]),t(x,[2,111]),t(x,[2,112]),t(x,[2,113]),t(x,[2,114]),t(x,[2,115]),t(x,[2,116]),t(x,[2,117]),t(x,[2,118]),t(x,[2,119]),t(A,[2,106]),t(_,[2,71]),t(A,[2,73],{61:Ue}),{60:[1,155]},t(M,[2,14]),{39:[2,37]},{13:[1,156]},{15:157,16:85,17:86,60:b,86:k,100:E,102:T,103:y},t(re,[2,12]),t(_e,[2,56]),{1:[2,4]},t(ue,[2,69]),t(ue,[2,68]),{16:39,17:40,19:158,60:b,86:k,100:E,102:T,103:y},t(ae,[2,80]),t(_,[2,34]),{41:[1,159]},{23:99,24:97,30:98,38:22,40:160,41:[2,39],42:r,43:23,48:u,54:g,56:N},{23:99,24:97,30:98,38:22,40:161,41:[2,42],42:r,43:23,48:u,54:g,56:N},{23:99,24:97,30:98,38:22,40:162,41:[2,45],42:r,43:23,48:u,54:g,56:N},{45:163,51:ne},t(_,[2,49]),{41:[2,62]},t(_,[2,52],{39:[1,164]}),t(A,[2,60]),t(A,[2,92]),t(A,[2,94]),t(A,[2,95],{77:[1,165]}),t(A,[2,98]),t(A,[2,99],{13:[1,166]}),t(A,[2,101],{13:[1,168],77:[1,167]}),{22:z,50:Y,60:K,82:W,84:169,85:112,86:Q,87:j,88:X,89:q,90:H},t(x,[2,110]),t(Re,[2,75]),{14:[1,170]},t(re,[2,11]),t(ue,[2,70]),t(_,[2,35]),{41:[2,40]},{41:[2,43]},{41:[2,46]},{41:[1,171]},{41:[1,173],45:172,51:ne},t(A,[2,96]),t(A,[2,100]),t(A,[2,102]),t(A,[2,103],{77:[1,174]}),t(ze,[2,108],{85:154,22:z,50:Y,60:K,82:W,86:Q,87:j,88:X,89:q,90:H}),t(_e,[2,8]),t(_,[2,51]),{41:[1,175]},t(_,[2,54]),t(A,[2,104]),t(_,[2,53])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],127:[2,37],132:[2,4],144:[2,62],160:[2,40],161:[2,43],162:[2,46]},parseError:f(function(o,h){if(h.recoverable)this.trace(o);else{var p=new Error(o);throw p.hash=h,p}},"parseError"),parse:f(function(o){var h=this,p=[0],l=[],C=[null],e=[],J=this.table,s="",ce=0,Ye=0,Je=2,Ke=1,Ze=e.slice.call(arguments,1),D=Object.create(this.lexer),w={yy:{}};for(var Ne in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ne)&&(w.yy[Ne]=this.yy[Ne]);D.setInput(o,w.yy),w.yy.lexer=D,w.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var Le=D.yylloc;e.push(Le);var $e=D.options&&D.options.ranges;typeof w.yy.parseError=="function"?this.parseError=w.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function et(S){p.length=p.length-2*S,C.length=C.length-S,e.length=e.length-S}f(et,"popStack");function We(){var S;return S=l.pop()||D.lex()||Ke,typeof S!="number"&&(S instanceof Array&&(l=S,S=l.pop()),S=h.symbols_[S]||S),S}f(We,"lex");for(var B,V,L,xe,R={},oe,v,Qe,he;;){if(V=p[p.length-1],this.defaultActions[V]?L=this.defaultActions[V]:((B===null||typeof B>"u")&&(B=We()),L=J[V]&&J[V][B]),typeof L>"u"||!L.length||!L[0]){var ve="";he=[];for(oe in J[V])this.terminals_[oe]&&oe>Je&&he.push("'"+this.terminals_[oe]+"'");D.showPosition?ve="Parse error on line "+(ce+1)+`: `+D.showPosition()+` Expecting `+he.join(", ")+", got '"+(this.terminals_[B]||B)+"'":ve="Parse error on line "+(ce+1)+": Unexpected "+(B==Ke?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(ve,{text:D.match,token:this.terminals_[B]||B,line:D.yylineno,loc:Le,expected:he})}if(L[0]instanceof Array&&L.length>1)throw new Error("Parse Error: multiple actions possible at state: "+V+", token: "+B);switch(L[0]){case 1:p.push(B),C.push(D.yytext),e.push(D.yylloc),p.push(L[1]),B=null,Ye=D.yyleng,s=D.yytext,ce=D.yylineno,Le=D.yylloc;break;case 2:if(v=this.productions_[L[1]][1],R.$=C[C.length-v],R._$={first_line:e[e.length-(v||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(v||1)].first_column,last_column:e[e.length-1].last_column},$e&&(R._$.range=[e[e.length-(v||1)].range[0],e[e.length-1].range[1]]),xe=this.performAction.apply(R,[s,Ye,ce,w.yy,L[1],C,e].concat(Ze)),typeof xe<"u")return xe;v&&(p=p.slice(0,-1*v*2),C=C.slice(0,-1*v),e=e.slice(0,-1*v)),p.push(this.productions_[L[1]][0]),C.push(R.$),e.push(R._$),Qe=J[p[p.length-2]][p[p.length-1]],p.push(Qe);break;case 3:return!0}}return!0},"parse")},He=(function(){var O={EOF:1,parseError:f(function(h,p){if(this.yy.parser)this.yy.parser.parseError(h,p);else throw new Error(h)},"parseError"),setInput:f(function(o,h){return this.yy=h||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:f(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var h=o.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:f(function(o){var h=o.length,p=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var l=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),p.length-1&&(this.yylineno-=p.length-1);var C=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:p?(p.length===l.length?this.yylloc.first_column:0)+l[l.length-p.length].length-p[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[C[0],C[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:f(function(){return this._more=!0,this},"more"),reject:f(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:f(function(o){this.unput(this.match.slice(o))},"less"),pastInput:f(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:f(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:f(function(){var o=this.pastInput(),h=new Array(o.length+1).join("-");return o+this.upcomingInput()+` diff --git a/apps/kimi-code/dist-web/assets/chunk-VR4S4FIN-gihGNGO1.js b/apps/kimi-code/dist-web/assets/chunk-VR4S4FIN-DMqAUMdK.js similarity index 87% rename from apps/kimi-code/dist-web/assets/chunk-VR4S4FIN-gihGNGO1.js rename to apps/kimi-code/dist-web/assets/chunk-VR4S4FIN-DMqAUMdK.js index 0793d55ab0..fdb8353dcc 100644 --- a/apps/kimi-code/dist-web/assets/chunk-VR4S4FIN-gihGNGO1.js +++ b/apps/kimi-code/dist-web/assets/chunk-VR4S4FIN-DMqAUMdK.js @@ -1 +1 @@ -import{_ as a,e as w,l as x}from"./mermaid.core-Dxfcv_J5.js";var d=a((e,t,i,r)=>{e.attr("class",i);const{width:o,height:h,x:n,y:c}=u(e,t);w(e,h,o,r);const s=l(n,c,o,h,t);e.attr("viewBox",s),x.debug(`viewBox configured: ${s} with padding: ${t}`)},"setupViewPortForSVG"),u=a((e,t)=>{const i=e.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:i.width+t*2,height:i.height+t*2,x:i.x,y:i.y}},"calculateDimensionsWithPadding"),l=a((e,t,i,r,o)=>`${e-o} ${t-o} ${i} ${r}`,"createViewBox");export{d as s}; +import{_ as a,e as w,l as x}from"./mermaid.core-AN7v7N47.js";var d=a((e,t,i,r)=>{e.attr("class",i);const{width:o,height:h,x:n,y:c}=u(e,t);w(e,h,o,r);const s=l(n,c,o,h,t);e.attr("viewBox",s),x.debug(`viewBox configured: ${s} with padding: ${t}`)},"setupViewPortForSVG"),u=a((e,t)=>{const i=e.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:i.width+t*2,height:i.height+t*2,x:i.x,y:i.y}},"calculateDimensionsWithPadding"),l=a((e,t,i,r,o)=>`${e-o} ${t-o} ${i} ${r}`,"createViewBox");export{d as s}; diff --git a/apps/kimi-code/dist-web/assets/chunk-XXDRQBXY-C3GGkCwU.js b/apps/kimi-code/dist-web/assets/chunk-XXDRQBXY-BRRtW_Of.js similarity index 72% rename from apps/kimi-code/dist-web/assets/chunk-XXDRQBXY-C3GGkCwU.js rename to apps/kimi-code/dist-web/assets/chunk-XXDRQBXY-BRRtW_Of.js index bffe7672d0..eea16bed34 100644 --- a/apps/kimi-code/dist-web/assets/chunk-XXDRQBXY-C3GGkCwU.js +++ b/apps/kimi-code/dist-web/assets/chunk-XXDRQBXY-BRRtW_Of.js @@ -1 +1 @@ -import{_ as a,d as o}from"./mermaid.core-Dxfcv_J5.js";var d=a((t,e)=>{let n;return e==="sandbox"&&(n=o("#i"+t)),(e==="sandbox"?o(n.nodes()[0].contentDocument.body):o("body")).select(`[id="${t}"]`)},"getDiagramElement");export{d as g}; +import{_ as a,d as o}from"./mermaid.core-AN7v7N47.js";var d=a((t,e)=>{let n;return e==="sandbox"&&(n=o("#i"+t)),(e==="sandbox"?o(n.nodes()[0].contentDocument.body):o("body")).select(`[id="${t}"]`)},"getDiagramElement");export{d as g}; diff --git a/apps/kimi-code/dist-web/assets/classDiagram-OUVF2IWQ-CaG1i1dL.js b/apps/kimi-code/dist-web/assets/classDiagram-OUVF2IWQ-CaG1i1dL.js deleted file mode 100644 index 6bf1ef715b..0000000000 --- a/apps/kimi-code/dist-web/assets/classDiagram-OUVF2IWQ-CaG1i1dL.js +++ /dev/null @@ -1 +0,0 @@ -import{s as a,c as s,a as e,C as t}from"./chunk-V7JOEXUC-CFknWZZI.js";import{_ as i}from"./mermaid.core-Dxfcv_J5.js";import"./chunk-5VM5RSS4-A5rXJcEF.js";import"./chunk-XXDRQBXY-C3GGkCwU.js";import"./chunk-VR4S4FIN-gihGNGO1.js";import"./chunk-32BRIVSS-3l6XZxpp.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var f={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{f as diagram}; diff --git a/apps/kimi-code/dist-web/assets/classDiagram-OUVF2IWQ-Cf1m8L1F.js b/apps/kimi-code/dist-web/assets/classDiagram-OUVF2IWQ-Cf1m8L1F.js new file mode 100644 index 0000000000..662d08904d --- /dev/null +++ b/apps/kimi-code/dist-web/assets/classDiagram-OUVF2IWQ-Cf1m8L1F.js @@ -0,0 +1 @@ +import{s as a,c as s,a as e,C as t}from"./chunk-V7JOEXUC-DUDFnGWS.js";import{_ as i}from"./mermaid.core-AN7v7N47.js";import"./chunk-5VM5RSS4-CnrQ4AgJ.js";import"./chunk-XXDRQBXY-BRRtW_Of.js";import"./chunk-VR4S4FIN-DMqAUMdK.js";import"./chunk-32BRIVSS-B8gSFtLK.js";import"./index-Dnz6Zudc.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram}; diff --git a/apps/kimi-code/dist-web/assets/classDiagram-v2-EOCWNBFH-CaG1i1dL.js b/apps/kimi-code/dist-web/assets/classDiagram-v2-EOCWNBFH-CaG1i1dL.js deleted file mode 100644 index 6bf1ef715b..0000000000 --- a/apps/kimi-code/dist-web/assets/classDiagram-v2-EOCWNBFH-CaG1i1dL.js +++ /dev/null @@ -1 +0,0 @@ -import{s as a,c as s,a as e,C as t}from"./chunk-V7JOEXUC-CFknWZZI.js";import{_ as i}from"./mermaid.core-Dxfcv_J5.js";import"./chunk-5VM5RSS4-A5rXJcEF.js";import"./chunk-XXDRQBXY-C3GGkCwU.js";import"./chunk-VR4S4FIN-gihGNGO1.js";import"./chunk-32BRIVSS-3l6XZxpp.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var f={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{f as diagram}; diff --git a/apps/kimi-code/dist-web/assets/classDiagram-v2-EOCWNBFH-Cf1m8L1F.js b/apps/kimi-code/dist-web/assets/classDiagram-v2-EOCWNBFH-Cf1m8L1F.js new file mode 100644 index 0000000000..662d08904d --- /dev/null +++ b/apps/kimi-code/dist-web/assets/classDiagram-v2-EOCWNBFH-Cf1m8L1F.js @@ -0,0 +1 @@ +import{s as a,c as s,a as e,C as t}from"./chunk-V7JOEXUC-DUDFnGWS.js";import{_ as i}from"./mermaid.core-AN7v7N47.js";import"./chunk-5VM5RSS4-CnrQ4AgJ.js";import"./chunk-XXDRQBXY-BRRtW_Of.js";import"./chunk-VR4S4FIN-DMqAUMdK.js";import"./chunk-32BRIVSS-B8gSFtLK.js";import"./index-Dnz6Zudc.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram}; diff --git a/apps/kimi-code/dist-web/assets/cose-bilkent-JH36ORCC-D8ns0-Kn.js b/apps/kimi-code/dist-web/assets/cose-bilkent-JH36ORCC-D8ns0-Kn.js new file mode 100644 index 0000000000..f7b6b8ba67 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/cose-bilkent-JH36ORCC-D8ns0-Kn.js @@ -0,0 +1 @@ +import{b7 as lt,_ as V,l as k,d as gt}from"./mermaid.core-AN7v7N47.js";import{c as tt}from"./cytoscape.esm-OyMbaexL.js";import"./index-Dnz6Zudc.js";var Z={exports:{}},$={exports:{}},Q={exports:{}},ut=Q.exports,j;function ft(){return j||(j=1,(function(G,b){(function(I,L){G.exports=L()})(ut,function(){return(function(N){var I={};function L(o){if(I[o])return I[o].exports;var e=I[o]={i:o,l:!1,exports:{}};return N[o].call(e.exports,e,e.exports,L),e.l=!0,e.exports}return L.m=N,L.c=I,L.i=function(o){return o},L.d=function(o,e,t){L.o(o,e)||Object.defineProperty(o,e,{configurable:!1,enumerable:!0,get:t})},L.n=function(o){var e=o&&o.__esModule?function(){return o.default}:function(){return o};return L.d(e,"a",e),e},L.o=function(o,e){return Object.prototype.hasOwnProperty.call(o,e)},L.p="",L(L.s=26)})([(function(N,I,L){function o(){}o.QUALITY=1,o.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,o.DEFAULT_INCREMENTAL=!1,o.DEFAULT_ANIMATION_ON_LAYOUT=!0,o.DEFAULT_ANIMATION_DURING_LAYOUT=!1,o.DEFAULT_ANIMATION_PERIOD=50,o.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,o.DEFAULT_GRAPH_MARGIN=15,o.NODE_DIMENSIONS_INCLUDE_LABELS=!1,o.SIMPLE_NODE_SIZE=40,o.SIMPLE_NODE_HALF_SIZE=o.SIMPLE_NODE_SIZE/2,o.EMPTY_COMPOUND_NODE_SIZE=40,o.MIN_EDGE_LENGTH=1,o.WORLD_BOUNDARY=1e6,o.INITIAL_WORLD_BOUNDARY=o.WORLD_BOUNDARY/1e3,o.WORLD_CENTER_X=1200,o.WORLD_CENTER_Y=900,N.exports=o}),(function(N,I,L){var o=L(2),e=L(8),t=L(9);function i(g,n,d){o.call(this,d),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=d,this.bendpoints=[],this.source=g,this.target=n}i.prototype=Object.create(o.prototype);for(var l in o)i[l]=o[l];i.prototype.getSource=function(){return this.source},i.prototype.getTarget=function(){return this.target},i.prototype.isInterGraph=function(){return this.isInterGraph},i.prototype.getLength=function(){return this.length},i.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},i.prototype.getBendpoints=function(){return this.bendpoints},i.prototype.getLca=function(){return this.lca},i.prototype.getSourceInLca=function(){return this.sourceInLca},i.prototype.getTargetInLca=function(){return this.targetInLca},i.prototype.getOtherEnd=function(g){if(this.source===g)return this.target;if(this.target===g)return this.source;throw"Node is not incident with this edge"},i.prototype.getOtherEndInGraph=function(g,n){for(var d=this.getOtherEnd(g),r=n.getGraphManager().getRoot();;){if(d.getOwner()==n)return d;if(d.getOwner()==r)break;d=d.getOwner().getParent()}return null},i.prototype.updateLength=function(){var g=new Array(4);this.isOverlapingSourceAndTarget=e.getIntersection(this.target.getRect(),this.source.getRect(),g),this.isOverlapingSourceAndTarget||(this.lengthX=g[0]-g[2],this.lengthY=g[1]-g[3],Math.abs(this.lengthX)<1&&(this.lengthX=t.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=t.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},i.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=t.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=t.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},N.exports=i}),(function(N,I,L){function o(e){this.vGraphObject=e}N.exports=o}),(function(N,I,L){var o=L(2),e=L(10),t=L(13),i=L(0),l=L(16),g=L(4);function n(r,h,a,p){a==null&&p==null&&(p=h),o.call(this,p),r.graphManager!=null&&(r=r.graphManager),this.estimatedSize=e.MIN_VALUE,this.inclusionTreeDepth=e.MAX_VALUE,this.vGraphObject=p,this.edges=[],this.graphManager=r,a!=null&&h!=null?this.rect=new t(h.x,h.y,a.width,a.height):this.rect=new t}n.prototype=Object.create(o.prototype);for(var d in o)n[d]=o[d];n.prototype.getEdges=function(){return this.edges},n.prototype.getChild=function(){return this.child},n.prototype.getOwner=function(){return this.owner},n.prototype.getWidth=function(){return this.rect.width},n.prototype.setWidth=function(r){this.rect.width=r},n.prototype.getHeight=function(){return this.rect.height},n.prototype.setHeight=function(r){this.rect.height=r},n.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},n.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},n.prototype.getCenter=function(){return new g(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},n.prototype.getLocation=function(){return new g(this.rect.x,this.rect.y)},n.prototype.getRect=function(){return this.rect},n.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},n.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},n.prototype.setRect=function(r,h){this.rect.x=r.x,this.rect.y=r.y,this.rect.width=h.width,this.rect.height=h.height},n.prototype.setCenter=function(r,h){this.rect.x=r-this.rect.width/2,this.rect.y=h-this.rect.height/2},n.prototype.setLocation=function(r,h){this.rect.x=r,this.rect.y=h},n.prototype.moveBy=function(r,h){this.rect.x+=r,this.rect.y+=h},n.prototype.getEdgeListToNode=function(r){var h=[],a=this;return a.edges.forEach(function(p){if(p.target==r){if(p.source!=a)throw"Incorrect edge source!";h.push(p)}}),h},n.prototype.getEdgesBetween=function(r){var h=[],a=this;return a.edges.forEach(function(p){if(!(p.source==a||p.target==a))throw"Incorrect edge source and/or target";(p.target==r||p.source==r)&&h.push(p)}),h},n.prototype.getNeighborsList=function(){var r=new Set,h=this;return h.edges.forEach(function(a){if(a.source==h)r.add(a.target);else{if(a.target!=h)throw"Incorrect incidency!";r.add(a.source)}}),r},n.prototype.withChildren=function(){var r=new Set,h,a;if(r.add(this),this.child!=null)for(var p=this.child.getNodes(),v=0;vh&&(this.rect.x-=(this.labelWidth-h)/2,this.setWidth(this.labelWidth)),this.labelHeight>a&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-a)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-a),this.setHeight(this.labelHeight))}}},n.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==e.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},n.prototype.transform=function(r){var h=this.rect.x;h>i.WORLD_BOUNDARY?h=i.WORLD_BOUNDARY:h<-i.WORLD_BOUNDARY&&(h=-i.WORLD_BOUNDARY);var a=this.rect.y;a>i.WORLD_BOUNDARY?a=i.WORLD_BOUNDARY:a<-i.WORLD_BOUNDARY&&(a=-i.WORLD_BOUNDARY);var p=new g(h,a),v=r.inverseTransformPoint(p);this.setLocation(v.x,v.y)},n.prototype.getLeft=function(){return this.rect.x},n.prototype.getRight=function(){return this.rect.x+this.rect.width},n.prototype.getTop=function(){return this.rect.y},n.prototype.getBottom=function(){return this.rect.y+this.rect.height},n.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},N.exports=n}),(function(N,I,L){function o(e,t){e==null&&t==null?(this.x=0,this.y=0):(this.x=e,this.y=t)}o.prototype.getX=function(){return this.x},o.prototype.getY=function(){return this.y},o.prototype.setX=function(e){this.x=e},o.prototype.setY=function(e){this.y=e},o.prototype.getDifference=function(e){return new DimensionD(this.x-e.x,this.y-e.y)},o.prototype.getCopy=function(){return new o(this.x,this.y)},o.prototype.translate=function(e){return this.x+=e.width,this.y+=e.height,this},N.exports=o}),(function(N,I,L){var o=L(2),e=L(10),t=L(0),i=L(6),l=L(3),g=L(1),n=L(13),d=L(12),r=L(11);function h(p,v,D){o.call(this,D),this.estimatedSize=e.MIN_VALUE,this.margin=t.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=p,v!=null&&v instanceof i?this.graphManager=v:v!=null&&v instanceof Layout&&(this.graphManager=v.graphManager)}h.prototype=Object.create(o.prototype);for(var a in o)h[a]=o[a];h.prototype.getNodes=function(){return this.nodes},h.prototype.getEdges=function(){return this.edges},h.prototype.getGraphManager=function(){return this.graphManager},h.prototype.getParent=function(){return this.parent},h.prototype.getLeft=function(){return this.left},h.prototype.getRight=function(){return this.right},h.prototype.getTop=function(){return this.top},h.prototype.getBottom=function(){return this.bottom},h.prototype.isConnected=function(){return this.isConnected},h.prototype.add=function(p,v,D){if(v==null&&D==null){var u=p;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(u)>-1)throw"Node already in graph!";return u.owner=this,this.getNodes().push(u),u}else{var T=p;if(!(this.getNodes().indexOf(v)>-1&&this.getNodes().indexOf(D)>-1))throw"Source or target not in graph!";if(!(v.owner==D.owner&&v.owner==this))throw"Both owners must be this graph!";return v.owner!=D.owner?null:(T.source=v,T.target=D,T.isInterGraph=!1,this.getEdges().push(T),v.edges.push(T),D!=v&&D.edges.push(T),T)}},h.prototype.remove=function(p){var v=p;if(p instanceof l){if(v==null)throw"Node is null!";if(!(v.owner!=null&&v.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var D=v.edges.slice(),u,T=D.length,y=0;y-1&&f>-1))throw"Source and/or target doesn't know this edge!";u.source.edges.splice(s,1),u.target!=u.source&&u.target.edges.splice(f,1);var O=u.source.owner.getEdges().indexOf(u);if(O==-1)throw"Not in owner's edge list!";u.source.owner.getEdges().splice(O,1)}},h.prototype.updateLeftTop=function(){for(var p=e.MAX_VALUE,v=e.MAX_VALUE,D,u,T,y=this.getNodes(),O=y.length,s=0;sD&&(p=D),v>u&&(v=u)}return p==e.MAX_VALUE?null:(y[0].getParent().paddingLeft!=null?T=y[0].getParent().paddingLeft:T=this.margin,this.left=v-T,this.top=p-T,new d(this.left,this.top))},h.prototype.updateBounds=function(p){for(var v=e.MAX_VALUE,D=-e.MAX_VALUE,u=e.MAX_VALUE,T=-e.MAX_VALUE,y,O,s,f,c,E=this.nodes,A=E.length,m=0;my&&(v=y),Ds&&(u=s),Ty&&(v=y),Ds&&(u=s),T=this.nodes.length){var A=0;D.forEach(function(m){m.owner==p&&A++}),A==this.nodes.length&&(this.isConnected=!0)}},N.exports=h}),(function(N,I,L){var o,e=L(1);function t(i){o=L(5),this.layout=i,this.graphs=[],this.edges=[]}t.prototype.addRoot=function(){var i=this.layout.newGraph(),l=this.layout.newNode(null),g=this.add(i,l);return this.setRootGraph(g),this.rootGraph},t.prototype.add=function(i,l,g,n,d){if(g==null&&n==null&&d==null){if(i==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(i)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(i),i.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return i.parent=l,l.child=i,i}else{d=g,n=l,g=i;var r=n.getOwner(),h=d.getOwner();if(!(r!=null&&r.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(h!=null&&h.getGraphManager()==this))throw"Target not in this graph mgr!";if(r==h)return g.isInterGraph=!1,r.add(g,n,d);if(g.isInterGraph=!0,g.source=n,g.target=d,this.edges.indexOf(g)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(g),!(g.source!=null&&g.target!=null))throw"Edge source and/or target is null!";if(!(g.source.edges.indexOf(g)==-1&&g.target.edges.indexOf(g)==-1))throw"Edge already in source and/or target incidency list!";return g.source.edges.push(g),g.target.edges.push(g),g}},t.prototype.remove=function(i){if(i instanceof o){var l=i;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var g=[];g=g.concat(l.getEdges());for(var n,d=g.length,r=0;r=i.getRight()?l[0]+=Math.min(i.getX()-t.getX(),t.getRight()-i.getRight()):i.getX()<=t.getX()&&i.getRight()>=t.getRight()&&(l[0]+=Math.min(t.getX()-i.getX(),i.getRight()-t.getRight())),t.getY()<=i.getY()&&t.getBottom()>=i.getBottom()?l[1]+=Math.min(i.getY()-t.getY(),t.getBottom()-i.getBottom()):i.getY()<=t.getY()&&i.getBottom()>=t.getBottom()&&(l[1]+=Math.min(t.getY()-i.getY(),i.getBottom()-t.getBottom()));var d=Math.abs((i.getCenterY()-t.getCenterY())/(i.getCenterX()-t.getCenterX()));i.getCenterY()===t.getCenterY()&&i.getCenterX()===t.getCenterX()&&(d=1);var r=d*l[0],h=l[1]/d;l[0]r)return l[0]=g,l[1]=a,l[2]=d,l[3]=E,!1;if(nd)return l[0]=h,l[1]=n,l[2]=f,l[3]=r,!1;if(gd?(l[0]=v,l[1]=D,R=!0):(l[0]=p,l[1]=a,R=!0):S===w&&(g>d?(l[0]=h,l[1]=a,R=!0):(l[0]=u,l[1]=D,R=!0)),-Y===w?d>g?(l[2]=c,l[3]=E,M=!0):(l[2]=f,l[3]=s,M=!0):Y===w&&(d>g?(l[2]=O,l[3]=s,M=!0):(l[2]=A,l[3]=E,M=!0)),R&&M)return!1;if(g>d?n>r?(x=this.getCardinalDirection(S,w,4),F=this.getCardinalDirection(Y,w,2)):(x=this.getCardinalDirection(-S,w,3),F=this.getCardinalDirection(-Y,w,1)):n>r?(x=this.getCardinalDirection(-S,w,1),F=this.getCardinalDirection(-Y,w,3)):(x=this.getCardinalDirection(S,w,2),F=this.getCardinalDirection(Y,w,4)),!R)switch(x){case 1:P=a,U=g+-y/w,l[0]=U,l[1]=P;break;case 2:U=u,P=n+T*w,l[0]=U,l[1]=P;break;case 3:P=D,U=g+y/w,l[0]=U,l[1]=P;break;case 4:U=v,P=n+-T*w,l[0]=U,l[1]=P;break}if(!M)switch(F){case 1:X=s,_=d+-C/w,l[2]=_,l[3]=X;break;case 2:_=A,X=r+m*w,l[2]=_,l[3]=X;break;case 3:X=E,_=d+C/w,l[2]=_,l[3]=X;break;case 4:_=c,X=r+-m*w,l[2]=_,l[3]=X;break}}return!1},e.getCardinalDirection=function(t,i,l){return t>i?l:1+l%4},e.getIntersection=function(t,i,l,g){if(g==null)return this.getIntersection2(t,i,l);var n=t.x,d=t.y,r=i.x,h=i.y,a=l.x,p=l.y,v=g.x,D=g.y,u=void 0,T=void 0,y=void 0,O=void 0,s=void 0,f=void 0,c=void 0,E=void 0,A=void 0;return y=h-d,s=n-r,c=r*d-n*h,O=D-p,f=a-v,E=v*p-a*D,A=y*f-O*s,A===0?null:(u=(s*E-f*c)/A,T=(O*c-y*E)/A,new o(u,T))},e.angleOfVector=function(t,i,l,g){var n=void 0;return t!==l?(n=Math.atan((g-i)/(l-t)),l0?1:e<0?-1:0},o.floor=function(e){return e<0?Math.ceil(e):Math.floor(e)},o.ceil=function(e){return e<0?Math.floor(e):Math.ceil(e)},N.exports=o}),(function(N,I,L){function o(){}o.MAX_VALUE=2147483647,o.MIN_VALUE=-2147483648,N.exports=o}),(function(N,I,L){var o=(function(){function n(d,r){for(var h=0;h"u"?"undefined":o(t);return t==null||i!="object"&&i!="function"},N.exports=e}),(function(N,I,L){function o(a){if(Array.isArray(a)){for(var p=0,v=Array(a.length);p0&&p;){for(y.push(s[0]);y.length>0&&p;){var f=y[0];y.splice(0,1),T.add(f);for(var c=f.getEdges(),u=0;u-1&&s.splice(C,1)}T=new Set,O=new Map}}return a},h.prototype.createDummyNodesForBendpoints=function(a){for(var p=[],v=a.source,D=this.graphManager.calcLowestCommonAncestor(a.source,a.target),u=0;u0){for(var D=this.edgeToDummyNodes.get(v),u=0;u=0&&p.splice(E,1);var A=O.getNeighborsList();A.forEach(function(R){if(v.indexOf(R)<0){var M=D.get(R),S=M-1;S==1&&f.push(R),D.set(R,S)}})}v=v.concat(f),(p.length==1||p.length==2)&&(u=!0,T=p[0])}return T},h.prototype.setGraphManager=function(a){this.graphManager=a},N.exports=h}),(function(N,I,L){function o(){}o.seed=1,o.x=0,o.nextDouble=function(){return o.x=Math.sin(o.seed++)*1e4,o.x-Math.floor(o.x)},N.exports=o}),(function(N,I,L){var o=L(4);function e(t,i){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}e.prototype.getWorldOrgX=function(){return this.lworldOrgX},e.prototype.setWorldOrgX=function(t){this.lworldOrgX=t},e.prototype.getWorldOrgY=function(){return this.lworldOrgY},e.prototype.setWorldOrgY=function(t){this.lworldOrgY=t},e.prototype.getWorldExtX=function(){return this.lworldExtX},e.prototype.setWorldExtX=function(t){this.lworldExtX=t},e.prototype.getWorldExtY=function(){return this.lworldExtY},e.prototype.setWorldExtY=function(t){this.lworldExtY=t},e.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},e.prototype.setDeviceOrgX=function(t){this.ldeviceOrgX=t},e.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},e.prototype.setDeviceOrgY=function(t){this.ldeviceOrgY=t},e.prototype.getDeviceExtX=function(){return this.ldeviceExtX},e.prototype.setDeviceExtX=function(t){this.ldeviceExtX=t},e.prototype.getDeviceExtY=function(){return this.ldeviceExtY},e.prototype.setDeviceExtY=function(t){this.ldeviceExtY=t},e.prototype.transformX=function(t){var i=0,l=this.lworldExtX;return l!=0&&(i=this.ldeviceOrgX+(t-this.lworldOrgX)*this.ldeviceExtX/l),i},e.prototype.transformY=function(t){var i=0,l=this.lworldExtY;return l!=0&&(i=this.ldeviceOrgY+(t-this.lworldOrgY)*this.ldeviceExtY/l),i},e.prototype.inverseTransformX=function(t){var i=0,l=this.ldeviceExtX;return l!=0&&(i=this.lworldOrgX+(t-this.ldeviceOrgX)*this.lworldExtX/l),i},e.prototype.inverseTransformY=function(t){var i=0,l=this.ldeviceExtY;return l!=0&&(i=this.lworldOrgY+(t-this.ldeviceOrgY)*this.lworldExtY/l),i},e.prototype.inverseTransformPoint=function(t){var i=new o(this.inverseTransformX(t.x),this.inverseTransformY(t.y));return i},N.exports=e}),(function(N,I,L){function o(r){if(Array.isArray(r)){for(var h=0,a=Array(r.length);ht.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*t.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(r-t.ADAPTATION_LOWER_NODE_LIMIT)/(t.ADAPTATION_UPPER_NODE_LIMIT-t.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-t.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=t.MAX_NODE_DISPLACEMENT_INCREMENTAL):(r>t.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(t.COOLING_ADAPTATION_FACTOR,1-(r-t.ADAPTATION_LOWER_NODE_LIMIT)/(t.ADAPTATION_UPPER_NODE_LIMIT-t.ADAPTATION_LOWER_NODE_LIMIT)*(1-t.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=t.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},n.prototype.calcSpringForces=function(){for(var r=this.getAllEdges(),h,a=0;a0&&arguments[0]!==void 0?arguments[0]:!0,h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a,p,v,D,u=this.getAllNodes(),T;if(this.useFRGridVariant)for(this.totalIterations%t.GRID_CALCULATION_CHECK_PERIOD==1&&r&&this.updateGrid(),T=new Set,a=0;ay||T>y)&&(r.gravitationForceX=-this.gravityConstant*v,r.gravitationForceY=-this.gravityConstant*D)):(y=h.getEstimatedSize()*this.compoundGravityRangeFactor,(u>y||T>y)&&(r.gravitationForceX=-this.gravityConstant*v*this.compoundGravityConstant,r.gravitationForceY=-this.gravityConstant*D*this.compoundGravityConstant))},n.prototype.isConverged=function(){var r,h=!1;return this.totalIterations>this.maxIterations/3&&(h=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),r=this.totalDisplacement=u.length||y>=u[0].length)){for(var O=0;On}}]),l})();N.exports=i}),(function(N,I,L){var o=(function(){function i(l,g){for(var n=0;n2&&arguments[2]!==void 0?arguments[2]:1,d=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,r=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;e(this,i),this.sequence1=l,this.sequence2=g,this.match_score=n,this.mismatch_penalty=d,this.gap_penalty=r,this.iMax=l.length+1,this.jMax=g.length+1,this.grid=new Array(this.iMax);for(var h=0;h=0;l--){var g=this.listeners[l];g.event===t&&g.callback===i&&this.listeners.splice(l,1)}},e.emit=function(t,i){for(var l=0;lg.coolingFactor*g.maxNodeDisplacement&&(this.displacementX=g.coolingFactor*g.maxNodeDisplacement*t.sign(this.displacementX)),Math.abs(this.displacementY)>g.coolingFactor*g.maxNodeDisplacement&&(this.displacementY=g.coolingFactor*g.maxNodeDisplacement*t.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),g.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},i.prototype.propogateDisplacementToChildren=function(g,n){for(var d=this.getChild().getNodes(),r,h=0;h0)this.positionNodesRadially(s);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var f=new Set(this.getAllNodes()),c=this.nodesWithGravity.filter(function(E){return f.has(E)});this.graphManager.setAllNodesToApplyGravitation(c),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},y.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%d.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var s=new Set(this.getAllNodes()),f=this.nodesWithGravity.filter(function(A){return s.has(A)});this.graphManager.setAllNodesToApplyGravitation(f),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var c=!this.isTreeGrowing&&!this.isGrowthFinished,E=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(c,E),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},y.prototype.getPositionsData=function(){for(var s=this.graphManager.getAllNodes(),f={},c=0;c1){var R;for(R=0;RE&&(E=Math.floor(C.y)),m=Math.floor(C.x+n.DEFAULT_COMPONENT_SEPERATION)}this.transform(new a(r.WORLD_CENTER_X-C.x/2,r.WORLD_CENTER_Y-C.y/2))},y.radialLayout=function(s,f,c){var E=Math.max(this.maxDiagonalInTree(s),n.DEFAULT_RADIAL_SEPARATION);y.branchRadialLayout(f,null,0,359,0,E);var A=u.calculateBounds(s),m=new T;m.setDeviceOrgX(A.getMinX()),m.setDeviceOrgY(A.getMinY()),m.setWorldOrgX(c.x),m.setWorldOrgY(c.y);for(var C=0;C1;){var X=_[0];_.splice(0,1);var H=w.indexOf(X);H>=0&&w.splice(H,1),U--,x--}f!=null?P=(w.indexOf(_[0])+1)%U:P=0;for(var W=Math.abs(E-c)/x,B=P;F!=x;B=++B%U){var K=w[B].getOtherEnd(s);if(K!=f){var q=(c+F*W)%360,ht=(q+W)%360;y.branchRadialLayout(K,s,q,ht,A+m,m),F++}}},y.maxDiagonalInTree=function(s){for(var f=v.MIN_VALUE,c=0;cf&&(f=A)}return f},y.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},y.prototype.groupZeroDegreeMembers=function(){var s=this,f={};this.memberGroups={},this.idToDummyNode={};for(var c=[],E=this.graphManager.getAllNodes(),A=0;A"u"&&(f[R]=[]),f[R]=f[R].concat(m)}Object.keys(f).forEach(function(M){if(f[M].length>1){var S="DummyCompound_"+M;s.memberGroups[S]=f[M];var Y=f[M][0].getParent(),w=new l(s.graphManager);w.id=S,w.paddingLeft=Y.paddingLeft||0,w.paddingRight=Y.paddingRight||0,w.paddingBottom=Y.paddingBottom||0,w.paddingTop=Y.paddingTop||0,s.idToDummyNode[S]=w;var x=s.getGraphManager().add(s.newGraph(),w),F=Y.getChild();F.add(w);for(var U=0;U=0;s--){var f=this.compoundOrder[s],c=f.id,E=f.paddingLeft,A=f.paddingTop;this.adjustLocations(this.tiledMemberPack[c],f.rect.x,f.rect.y,E,A)}},y.prototype.repopulateZeroDegreeMembers=function(){var s=this,f=this.tiledZeroDegreePack;Object.keys(f).forEach(function(c){var E=s.idToDummyNode[c],A=E.paddingLeft,m=E.paddingTop;s.adjustLocations(f[c],E.rect.x,E.rect.y,A,m)})},y.prototype.getToBeTiled=function(s){var f=s.id;if(this.toBeTiled[f]!=null)return this.toBeTiled[f];var c=s.getChild();if(c==null)return this.toBeTiled[f]=!1,!1;for(var E=c.getNodes(),A=0;A0)return this.toBeTiled[f]=!1,!1;if(m.getChild()==null){this.toBeTiled[m.id]=!1;continue}if(!this.getToBeTiled(m))return this.toBeTiled[f]=!1,!1}return this.toBeTiled[f]=!0,!0},y.prototype.getNodeDegree=function(s){s.id;for(var f=s.getEdges(),c=0,E=0;EM&&(M=Y.rect.height)}c+=M+s.verticalPadding}},y.prototype.tileCompoundMembers=function(s,f){var c=this;this.tiledMemberPack=[],Object.keys(s).forEach(function(E){var A=f[E];c.tiledMemberPack[E]=c.tileNodes(s[E],A.paddingLeft+A.paddingRight),A.rect.width=c.tiledMemberPack[E].width,A.rect.height=c.tiledMemberPack[E].height})},y.prototype.tileNodes=function(s,f){var c=n.TILING_PADDING_VERTICAL,E=n.TILING_PADDING_HORIZONTAL,A={rows:[],rowWidth:[],rowHeight:[],width:0,height:f,verticalPadding:c,horizontalPadding:E};s.sort(function(R,M){return R.rect.width*R.rect.height>M.rect.width*M.rect.height?-1:R.rect.width*R.rect.height0&&(C+=s.horizontalPadding),s.rowWidth[c]=C,s.width0&&(R+=s.verticalPadding);var M=0;R>s.rowHeight[c]&&(M=s.rowHeight[c],s.rowHeight[c]=R,M=s.rowHeight[c]-M),s.height+=M,s.rows[c].push(f)},y.prototype.getShortestRowIndex=function(s){for(var f=-1,c=Number.MAX_VALUE,E=0;Ec&&(f=E,c=s.rowWidth[E]);return f},y.prototype.canAddHorizontal=function(s,f,c){var E=this.getShortestRowIndex(s);if(E<0)return!0;var A=s.rowWidth[E];if(A+s.horizontalPadding+f<=s.width)return!0;var m=0;s.rowHeight[E]0&&(m=c+s.verticalPadding-s.rowHeight[E]);var C;s.width-A>=f+s.horizontalPadding?C=(s.height+m)/(A+f+s.horizontalPadding):C=(s.height+m)/s.width,m=c+s.verticalPadding;var R;return s.widthm&&f!=c){E.splice(-1,1),s.rows[c].push(A),s.rowWidth[f]=s.rowWidth[f]-m,s.rowWidth[c]=s.rowWidth[c]+m,s.width=s.rowWidth[instance.getLongestRowIndex(s)];for(var C=Number.MIN_VALUE,R=0;RC&&(C=E[R].height);f>0&&(C+=s.verticalPadding);var M=s.rowHeight[f]+s.rowHeight[c];s.rowHeight[f]=C,s.rowHeight[c]0)for(var F=A;F<=m;F++)x[0]+=this.grid[F][C-1].length+this.grid[F][C].length-1;if(m0)for(var F=C;F<=R;F++)x[3]+=this.grid[A-1][F].length+this.grid[A][F].length-1;for(var U=v.MAX_VALUE,P,_,X=0;X0){var R;R=T.getGraphManager().add(T.newGraph(),c),this.processChildrenList(R,f,T)}}},a.prototype.stop=function(){return this.stopped=!0,this};var v=function(u){u("layout","cose-bilkent",a)};typeof cytoscape<"u"&&v(cytoscape),I.exports=v})])})})(Z)),Z.exports}var yt=vt();const Et=lt(yt);tt.use(Et);function et(G,b){G.forEach(N=>{const I={id:N.id,labelText:N.label,height:N.height,width:N.width,padding:N.padding??0};Object.keys(N).forEach(L=>{["id","label","height","width","padding","x","y"].includes(L)||(I[L]=N[L])}),b.add({group:"nodes",data:I,position:{x:N.x??0,y:N.y??0}})})}V(et,"addNodes");function rt(G,b){G.forEach(N=>{const I={id:N.id,source:N.start,target:N.end};Object.keys(N).forEach(L=>{["id","start","end"].includes(L)||(I[L]=N[L])}),b.add({group:"edges",data:I})})}V(rt,"addEdges");function it(G){return new Promise(b=>{const N=gt("body").append("div").attr("id","cy").attr("style","display:none"),I=tt({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});N.remove(),et(G.nodes,I),rt(G.edges,I),I.nodes().forEach(function(o){o.layoutDimensions=()=>{const e=o.data();return{w:e.width,h:e.height}}});const L={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};I.layout(L).run(),I.ready(o=>{k.info("Cytoscape ready",o),b(I)})})}V(it,"createCytoscapeInstance");function nt(G){return G.nodes().map(b=>{const N=b.data(),I=b.position(),L={id:N.id,x:I.x,y:I.y};return Object.keys(N).forEach(o=>{o!=="id"&&(L[o]=N[o])}),L})}V(nt,"extractPositionedNodes");function ot(G){return G.edges().map(b=>{const N=b.data(),I=b._private.rscratch,L={id:N.id,source:N.source,target:N.target,startX:I.startX,startY:I.startY,midX:I.midX,midY:I.midY,endX:I.endX,endY:I.endY};return Object.keys(N).forEach(o=>{["id","source","target"].includes(o)||(L[o]=N[o])}),L})}V(ot,"extractPositionedEdges");async function st(G,b){k.debug("Starting cose-bilkent layout algorithm");try{at(G);const N=await it(G),I=nt(N),L=ot(N);return k.debug(`Layout completed: ${I.length} nodes, ${L.length} edges`),{nodes:I,edges:L}}catch(N){throw k.error("Error in cose-bilkent layout algorithm:",N),N}}V(st,"executeCoseBilkentLayout");function at(G){if(!G)throw new Error("Layout data is required");if(!G.config)throw new Error("Configuration is required in layout data");if(!G.rootNode)throw new Error("Root node is required");if(!G.nodes||!Array.isArray(G.nodes))throw new Error("No nodes found in layout data");if(!Array.isArray(G.edges))throw new Error("Edges array is required in layout data");return!0}V(at,"validateLayoutData");var Lt=V(async(G,b,{insertCluster:N,insertEdge:I,insertEdgeLabel:L,insertMarkers:o,insertNode:e,log:t,positionEdgeLabel:i},{algorithm:l})=>{const g={},n={},d=b.select("g");o(d,G.markers,G.type,G.diagramId);const r=d.insert("g").attr("class","subgraphs"),h=d.insert("g").attr("class","edgePaths"),a=d.insert("g").attr("class","edgeLabels"),p=d.insert("g").attr("class","nodes");t.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(G.nodes.map(async u=>{if(u.isGroup){const T={...u};n[u.id]=T,g[u.id]=T,await N(r,u)}else{const T={...u};g[u.id]=T;const y=await e(p,u,{config:G.config,dir:G.direction||"TB"}),O=y.node().getBBox();T.width=O.width,T.height=O.height,T.domId=y,t.debug(`Node ${u.id} dimensions: ${O.width}x${O.height}`)}})),t.debug("Running cose-bilkent layout algorithm");const v={...G,nodes:G.nodes.map(u=>{const T=g[u.id];return{...u,width:T.width,height:T.height}})},D=await st(v,G.config);t.debug("Positioning nodes based on layout results"),D.nodes.forEach(u=>{const T=g[u.id];T?.domId&&(T.domId.attr("transform",`translate(${u.x}, ${u.y})`),T.x=u.x,T.y=u.y,t.debug(`Positioned node ${T.id} at center (${u.x}, ${u.y})`))}),D.edges.forEach(u=>{const T=G.edges.find(y=>y.id===u.id);T&&(T.points=[{x:u.startX,y:u.startY},{x:u.midX,y:u.midY},{x:u.endX,y:u.endY}])}),t.debug("Inserting and positioning edges"),await Promise.all(G.edges.map(async u=>{await L(a,u);const T=g[u.start??""],y=g[u.end??""];if(T&&y){const O=D.edges.find(s=>s.id===u.id);if(O){t.debug("APA01 positionedEdge",O);const s={...u},f=I(h,s,n,G.type,T,y,G.diagramId);i(s,f)}else{const s={...u,points:[{x:T.x||0,y:T.y||0},{x:y.x||0,y:y.y||0}]},f=I(h,s,n,G.type,T,y,G.diagramId);i(s,f)}}})),t.debug("Cose-bilkent rendering completed")},"render"),Nt=Lt;export{Nt as render}; diff --git a/apps/kimi-code/dist-web/assets/cose-bilkent-JH36ORCC-f33uYY00.js b/apps/kimi-code/dist-web/assets/cose-bilkent-JH36ORCC-f33uYY00.js deleted file mode 100644 index 426750a3ee..0000000000 --- a/apps/kimi-code/dist-web/assets/cose-bilkent-JH36ORCC-f33uYY00.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as V,l as k,d as lt}from"./mermaid.core-Dxfcv_J5.js";import{c as tt}from"./cytoscape.esm-OyMbaexL.js";import{g as gt}from"./_commonjsHelpers-CqkleIqs.js";import"./index-HU0LCM-X.js";var Z={exports:{}},$={exports:{}},Q={exports:{}},ut=Q.exports,j;function ft(){return j||(j=1,(function(G,b){(function(I,L){G.exports=L()})(ut,function(){return(function(N){var I={};function L(o){if(I[o])return I[o].exports;var e=I[o]={i:o,l:!1,exports:{}};return N[o].call(e.exports,e,e.exports,L),e.l=!0,e.exports}return L.m=N,L.c=I,L.i=function(o){return o},L.d=function(o,e,t){L.o(o,e)||Object.defineProperty(o,e,{configurable:!1,enumerable:!0,get:t})},L.n=function(o){var e=o&&o.__esModule?function(){return o.default}:function(){return o};return L.d(e,"a",e),e},L.o=function(o,e){return Object.prototype.hasOwnProperty.call(o,e)},L.p="",L(L.s=26)})([(function(N,I,L){function o(){}o.QUALITY=1,o.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,o.DEFAULT_INCREMENTAL=!1,o.DEFAULT_ANIMATION_ON_LAYOUT=!0,o.DEFAULT_ANIMATION_DURING_LAYOUT=!1,o.DEFAULT_ANIMATION_PERIOD=50,o.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,o.DEFAULT_GRAPH_MARGIN=15,o.NODE_DIMENSIONS_INCLUDE_LABELS=!1,o.SIMPLE_NODE_SIZE=40,o.SIMPLE_NODE_HALF_SIZE=o.SIMPLE_NODE_SIZE/2,o.EMPTY_COMPOUND_NODE_SIZE=40,o.MIN_EDGE_LENGTH=1,o.WORLD_BOUNDARY=1e6,o.INITIAL_WORLD_BOUNDARY=o.WORLD_BOUNDARY/1e3,o.WORLD_CENTER_X=1200,o.WORLD_CENTER_Y=900,N.exports=o}),(function(N,I,L){var o=L(2),e=L(8),t=L(9);function i(g,n,d){o.call(this,d),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=d,this.bendpoints=[],this.source=g,this.target=n}i.prototype=Object.create(o.prototype);for(var l in o)i[l]=o[l];i.prototype.getSource=function(){return this.source},i.prototype.getTarget=function(){return this.target},i.prototype.isInterGraph=function(){return this.isInterGraph},i.prototype.getLength=function(){return this.length},i.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},i.prototype.getBendpoints=function(){return this.bendpoints},i.prototype.getLca=function(){return this.lca},i.prototype.getSourceInLca=function(){return this.sourceInLca},i.prototype.getTargetInLca=function(){return this.targetInLca},i.prototype.getOtherEnd=function(g){if(this.source===g)return this.target;if(this.target===g)return this.source;throw"Node is not incident with this edge"},i.prototype.getOtherEndInGraph=function(g,n){for(var d=this.getOtherEnd(g),r=n.getGraphManager().getRoot();;){if(d.getOwner()==n)return d;if(d.getOwner()==r)break;d=d.getOwner().getParent()}return null},i.prototype.updateLength=function(){var g=new Array(4);this.isOverlapingSourceAndTarget=e.getIntersection(this.target.getRect(),this.source.getRect(),g),this.isOverlapingSourceAndTarget||(this.lengthX=g[0]-g[2],this.lengthY=g[1]-g[3],Math.abs(this.lengthX)<1&&(this.lengthX=t.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=t.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},i.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=t.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=t.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},N.exports=i}),(function(N,I,L){function o(e){this.vGraphObject=e}N.exports=o}),(function(N,I,L){var o=L(2),e=L(10),t=L(13),i=L(0),l=L(16),g=L(4);function n(r,h,a,p){a==null&&p==null&&(p=h),o.call(this,p),r.graphManager!=null&&(r=r.graphManager),this.estimatedSize=e.MIN_VALUE,this.inclusionTreeDepth=e.MAX_VALUE,this.vGraphObject=p,this.edges=[],this.graphManager=r,a!=null&&h!=null?this.rect=new t(h.x,h.y,a.width,a.height):this.rect=new t}n.prototype=Object.create(o.prototype);for(var d in o)n[d]=o[d];n.prototype.getEdges=function(){return this.edges},n.prototype.getChild=function(){return this.child},n.prototype.getOwner=function(){return this.owner},n.prototype.getWidth=function(){return this.rect.width},n.prototype.setWidth=function(r){this.rect.width=r},n.prototype.getHeight=function(){return this.rect.height},n.prototype.setHeight=function(r){this.rect.height=r},n.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},n.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},n.prototype.getCenter=function(){return new g(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},n.prototype.getLocation=function(){return new g(this.rect.x,this.rect.y)},n.prototype.getRect=function(){return this.rect},n.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},n.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},n.prototype.setRect=function(r,h){this.rect.x=r.x,this.rect.y=r.y,this.rect.width=h.width,this.rect.height=h.height},n.prototype.setCenter=function(r,h){this.rect.x=r-this.rect.width/2,this.rect.y=h-this.rect.height/2},n.prototype.setLocation=function(r,h){this.rect.x=r,this.rect.y=h},n.prototype.moveBy=function(r,h){this.rect.x+=r,this.rect.y+=h},n.prototype.getEdgeListToNode=function(r){var h=[],a=this;return a.edges.forEach(function(p){if(p.target==r){if(p.source!=a)throw"Incorrect edge source!";h.push(p)}}),h},n.prototype.getEdgesBetween=function(r){var h=[],a=this;return a.edges.forEach(function(p){if(!(p.source==a||p.target==a))throw"Incorrect edge source and/or target";(p.target==r||p.source==r)&&h.push(p)}),h},n.prototype.getNeighborsList=function(){var r=new Set,h=this;return h.edges.forEach(function(a){if(a.source==h)r.add(a.target);else{if(a.target!=h)throw"Incorrect incidency!";r.add(a.source)}}),r},n.prototype.withChildren=function(){var r=new Set,h,a;if(r.add(this),this.child!=null)for(var p=this.child.getNodes(),v=0;vh&&(this.rect.x-=(this.labelWidth-h)/2,this.setWidth(this.labelWidth)),this.labelHeight>a&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-a)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-a),this.setHeight(this.labelHeight))}}},n.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==e.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},n.prototype.transform=function(r){var h=this.rect.x;h>i.WORLD_BOUNDARY?h=i.WORLD_BOUNDARY:h<-i.WORLD_BOUNDARY&&(h=-i.WORLD_BOUNDARY);var a=this.rect.y;a>i.WORLD_BOUNDARY?a=i.WORLD_BOUNDARY:a<-i.WORLD_BOUNDARY&&(a=-i.WORLD_BOUNDARY);var p=new g(h,a),v=r.inverseTransformPoint(p);this.setLocation(v.x,v.y)},n.prototype.getLeft=function(){return this.rect.x},n.prototype.getRight=function(){return this.rect.x+this.rect.width},n.prototype.getTop=function(){return this.rect.y},n.prototype.getBottom=function(){return this.rect.y+this.rect.height},n.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},N.exports=n}),(function(N,I,L){function o(e,t){e==null&&t==null?(this.x=0,this.y=0):(this.x=e,this.y=t)}o.prototype.getX=function(){return this.x},o.prototype.getY=function(){return this.y},o.prototype.setX=function(e){this.x=e},o.prototype.setY=function(e){this.y=e},o.prototype.getDifference=function(e){return new DimensionD(this.x-e.x,this.y-e.y)},o.prototype.getCopy=function(){return new o(this.x,this.y)},o.prototype.translate=function(e){return this.x+=e.width,this.y+=e.height,this},N.exports=o}),(function(N,I,L){var o=L(2),e=L(10),t=L(0),i=L(6),l=L(3),g=L(1),n=L(13),d=L(12),r=L(11);function h(p,v,D){o.call(this,D),this.estimatedSize=e.MIN_VALUE,this.margin=t.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=p,v!=null&&v instanceof i?this.graphManager=v:v!=null&&v instanceof Layout&&(this.graphManager=v.graphManager)}h.prototype=Object.create(o.prototype);for(var a in o)h[a]=o[a];h.prototype.getNodes=function(){return this.nodes},h.prototype.getEdges=function(){return this.edges},h.prototype.getGraphManager=function(){return this.graphManager},h.prototype.getParent=function(){return this.parent},h.prototype.getLeft=function(){return this.left},h.prototype.getRight=function(){return this.right},h.prototype.getTop=function(){return this.top},h.prototype.getBottom=function(){return this.bottom},h.prototype.isConnected=function(){return this.isConnected},h.prototype.add=function(p,v,D){if(v==null&&D==null){var u=p;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(u)>-1)throw"Node already in graph!";return u.owner=this,this.getNodes().push(u),u}else{var T=p;if(!(this.getNodes().indexOf(v)>-1&&this.getNodes().indexOf(D)>-1))throw"Source or target not in graph!";if(!(v.owner==D.owner&&v.owner==this))throw"Both owners must be this graph!";return v.owner!=D.owner?null:(T.source=v,T.target=D,T.isInterGraph=!1,this.getEdges().push(T),v.edges.push(T),D!=v&&D.edges.push(T),T)}},h.prototype.remove=function(p){var v=p;if(p instanceof l){if(v==null)throw"Node is null!";if(!(v.owner!=null&&v.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var D=v.edges.slice(),u,T=D.length,y=0;y-1&&f>-1))throw"Source and/or target doesn't know this edge!";u.source.edges.splice(s,1),u.target!=u.source&&u.target.edges.splice(f,1);var O=u.source.owner.getEdges().indexOf(u);if(O==-1)throw"Not in owner's edge list!";u.source.owner.getEdges().splice(O,1)}},h.prototype.updateLeftTop=function(){for(var p=e.MAX_VALUE,v=e.MAX_VALUE,D,u,T,y=this.getNodes(),O=y.length,s=0;sD&&(p=D),v>u&&(v=u)}return p==e.MAX_VALUE?null:(y[0].getParent().paddingLeft!=null?T=y[0].getParent().paddingLeft:T=this.margin,this.left=v-T,this.top=p-T,new d(this.left,this.top))},h.prototype.updateBounds=function(p){for(var v=e.MAX_VALUE,D=-e.MAX_VALUE,u=e.MAX_VALUE,T=-e.MAX_VALUE,y,O,s,f,c,E=this.nodes,A=E.length,m=0;my&&(v=y),Ds&&(u=s),Ty&&(v=y),Ds&&(u=s),T=this.nodes.length){var A=0;D.forEach(function(m){m.owner==p&&A++}),A==this.nodes.length&&(this.isConnected=!0)}},N.exports=h}),(function(N,I,L){var o,e=L(1);function t(i){o=L(5),this.layout=i,this.graphs=[],this.edges=[]}t.prototype.addRoot=function(){var i=this.layout.newGraph(),l=this.layout.newNode(null),g=this.add(i,l);return this.setRootGraph(g),this.rootGraph},t.prototype.add=function(i,l,g,n,d){if(g==null&&n==null&&d==null){if(i==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(i)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(i),i.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return i.parent=l,l.child=i,i}else{d=g,n=l,g=i;var r=n.getOwner(),h=d.getOwner();if(!(r!=null&&r.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(h!=null&&h.getGraphManager()==this))throw"Target not in this graph mgr!";if(r==h)return g.isInterGraph=!1,r.add(g,n,d);if(g.isInterGraph=!0,g.source=n,g.target=d,this.edges.indexOf(g)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(g),!(g.source!=null&&g.target!=null))throw"Edge source and/or target is null!";if(!(g.source.edges.indexOf(g)==-1&&g.target.edges.indexOf(g)==-1))throw"Edge already in source and/or target incidency list!";return g.source.edges.push(g),g.target.edges.push(g),g}},t.prototype.remove=function(i){if(i instanceof o){var l=i;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var g=[];g=g.concat(l.getEdges());for(var n,d=g.length,r=0;r=i.getRight()?l[0]+=Math.min(i.getX()-t.getX(),t.getRight()-i.getRight()):i.getX()<=t.getX()&&i.getRight()>=t.getRight()&&(l[0]+=Math.min(t.getX()-i.getX(),i.getRight()-t.getRight())),t.getY()<=i.getY()&&t.getBottom()>=i.getBottom()?l[1]+=Math.min(i.getY()-t.getY(),t.getBottom()-i.getBottom()):i.getY()<=t.getY()&&i.getBottom()>=t.getBottom()&&(l[1]+=Math.min(t.getY()-i.getY(),i.getBottom()-t.getBottom()));var d=Math.abs((i.getCenterY()-t.getCenterY())/(i.getCenterX()-t.getCenterX()));i.getCenterY()===t.getCenterY()&&i.getCenterX()===t.getCenterX()&&(d=1);var r=d*l[0],h=l[1]/d;l[0]r)return l[0]=g,l[1]=a,l[2]=d,l[3]=E,!1;if(nd)return l[0]=h,l[1]=n,l[2]=f,l[3]=r,!1;if(gd?(l[0]=v,l[1]=D,R=!0):(l[0]=p,l[1]=a,R=!0):S===w&&(g>d?(l[0]=h,l[1]=a,R=!0):(l[0]=u,l[1]=D,R=!0)),-Y===w?d>g?(l[2]=c,l[3]=E,M=!0):(l[2]=f,l[3]=s,M=!0):Y===w&&(d>g?(l[2]=O,l[3]=s,M=!0):(l[2]=A,l[3]=E,M=!0)),R&&M)return!1;if(g>d?n>r?(x=this.getCardinalDirection(S,w,4),F=this.getCardinalDirection(Y,w,2)):(x=this.getCardinalDirection(-S,w,3),F=this.getCardinalDirection(-Y,w,1)):n>r?(x=this.getCardinalDirection(-S,w,1),F=this.getCardinalDirection(-Y,w,3)):(x=this.getCardinalDirection(S,w,2),F=this.getCardinalDirection(Y,w,4)),!R)switch(x){case 1:P=a,U=g+-y/w,l[0]=U,l[1]=P;break;case 2:U=u,P=n+T*w,l[0]=U,l[1]=P;break;case 3:P=D,U=g+y/w,l[0]=U,l[1]=P;break;case 4:U=v,P=n+-T*w,l[0]=U,l[1]=P;break}if(!M)switch(F){case 1:X=s,_=d+-C/w,l[2]=_,l[3]=X;break;case 2:_=A,X=r+m*w,l[2]=_,l[3]=X;break;case 3:X=E,_=d+C/w,l[2]=_,l[3]=X;break;case 4:_=c,X=r+-m*w,l[2]=_,l[3]=X;break}}return!1},e.getCardinalDirection=function(t,i,l){return t>i?l:1+l%4},e.getIntersection=function(t,i,l,g){if(g==null)return this.getIntersection2(t,i,l);var n=t.x,d=t.y,r=i.x,h=i.y,a=l.x,p=l.y,v=g.x,D=g.y,u=void 0,T=void 0,y=void 0,O=void 0,s=void 0,f=void 0,c=void 0,E=void 0,A=void 0;return y=h-d,s=n-r,c=r*d-n*h,O=D-p,f=a-v,E=v*p-a*D,A=y*f-O*s,A===0?null:(u=(s*E-f*c)/A,T=(O*c-y*E)/A,new o(u,T))},e.angleOfVector=function(t,i,l,g){var n=void 0;return t!==l?(n=Math.atan((g-i)/(l-t)),l0?1:e<0?-1:0},o.floor=function(e){return e<0?Math.ceil(e):Math.floor(e)},o.ceil=function(e){return e<0?Math.floor(e):Math.ceil(e)},N.exports=o}),(function(N,I,L){function o(){}o.MAX_VALUE=2147483647,o.MIN_VALUE=-2147483648,N.exports=o}),(function(N,I,L){var o=(function(){function n(d,r){for(var h=0;h"u"?"undefined":o(t);return t==null||i!="object"&&i!="function"},N.exports=e}),(function(N,I,L){function o(a){if(Array.isArray(a)){for(var p=0,v=Array(a.length);p0&&p;){for(y.push(s[0]);y.length>0&&p;){var f=y[0];y.splice(0,1),T.add(f);for(var c=f.getEdges(),u=0;u-1&&s.splice(C,1)}T=new Set,O=new Map}}return a},h.prototype.createDummyNodesForBendpoints=function(a){for(var p=[],v=a.source,D=this.graphManager.calcLowestCommonAncestor(a.source,a.target),u=0;u0){for(var D=this.edgeToDummyNodes.get(v),u=0;u=0&&p.splice(E,1);var A=O.getNeighborsList();A.forEach(function(R){if(v.indexOf(R)<0){var M=D.get(R),S=M-1;S==1&&f.push(R),D.set(R,S)}})}v=v.concat(f),(p.length==1||p.length==2)&&(u=!0,T=p[0])}return T},h.prototype.setGraphManager=function(a){this.graphManager=a},N.exports=h}),(function(N,I,L){function o(){}o.seed=1,o.x=0,o.nextDouble=function(){return o.x=Math.sin(o.seed++)*1e4,o.x-Math.floor(o.x)},N.exports=o}),(function(N,I,L){var o=L(4);function e(t,i){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}e.prototype.getWorldOrgX=function(){return this.lworldOrgX},e.prototype.setWorldOrgX=function(t){this.lworldOrgX=t},e.prototype.getWorldOrgY=function(){return this.lworldOrgY},e.prototype.setWorldOrgY=function(t){this.lworldOrgY=t},e.prototype.getWorldExtX=function(){return this.lworldExtX},e.prototype.setWorldExtX=function(t){this.lworldExtX=t},e.prototype.getWorldExtY=function(){return this.lworldExtY},e.prototype.setWorldExtY=function(t){this.lworldExtY=t},e.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},e.prototype.setDeviceOrgX=function(t){this.ldeviceOrgX=t},e.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},e.prototype.setDeviceOrgY=function(t){this.ldeviceOrgY=t},e.prototype.getDeviceExtX=function(){return this.ldeviceExtX},e.prototype.setDeviceExtX=function(t){this.ldeviceExtX=t},e.prototype.getDeviceExtY=function(){return this.ldeviceExtY},e.prototype.setDeviceExtY=function(t){this.ldeviceExtY=t},e.prototype.transformX=function(t){var i=0,l=this.lworldExtX;return l!=0&&(i=this.ldeviceOrgX+(t-this.lworldOrgX)*this.ldeviceExtX/l),i},e.prototype.transformY=function(t){var i=0,l=this.lworldExtY;return l!=0&&(i=this.ldeviceOrgY+(t-this.lworldOrgY)*this.ldeviceExtY/l),i},e.prototype.inverseTransformX=function(t){var i=0,l=this.ldeviceExtX;return l!=0&&(i=this.lworldOrgX+(t-this.ldeviceOrgX)*this.lworldExtX/l),i},e.prototype.inverseTransformY=function(t){var i=0,l=this.ldeviceExtY;return l!=0&&(i=this.lworldOrgY+(t-this.ldeviceOrgY)*this.lworldExtY/l),i},e.prototype.inverseTransformPoint=function(t){var i=new o(this.inverseTransformX(t.x),this.inverseTransformY(t.y));return i},N.exports=e}),(function(N,I,L){function o(r){if(Array.isArray(r)){for(var h=0,a=Array(r.length);ht.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*t.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(r-t.ADAPTATION_LOWER_NODE_LIMIT)/(t.ADAPTATION_UPPER_NODE_LIMIT-t.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-t.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=t.MAX_NODE_DISPLACEMENT_INCREMENTAL):(r>t.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(t.COOLING_ADAPTATION_FACTOR,1-(r-t.ADAPTATION_LOWER_NODE_LIMIT)/(t.ADAPTATION_UPPER_NODE_LIMIT-t.ADAPTATION_LOWER_NODE_LIMIT)*(1-t.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=t.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},n.prototype.calcSpringForces=function(){for(var r=this.getAllEdges(),h,a=0;a0&&arguments[0]!==void 0?arguments[0]:!0,h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a,p,v,D,u=this.getAllNodes(),T;if(this.useFRGridVariant)for(this.totalIterations%t.GRID_CALCULATION_CHECK_PERIOD==1&&r&&this.updateGrid(),T=new Set,a=0;ay||T>y)&&(r.gravitationForceX=-this.gravityConstant*v,r.gravitationForceY=-this.gravityConstant*D)):(y=h.getEstimatedSize()*this.compoundGravityRangeFactor,(u>y||T>y)&&(r.gravitationForceX=-this.gravityConstant*v*this.compoundGravityConstant,r.gravitationForceY=-this.gravityConstant*D*this.compoundGravityConstant))},n.prototype.isConverged=function(){var r,h=!1;return this.totalIterations>this.maxIterations/3&&(h=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),r=this.totalDisplacement=u.length||y>=u[0].length)){for(var O=0;On}}]),l})();N.exports=i}),(function(N,I,L){var o=(function(){function i(l,g){for(var n=0;n2&&arguments[2]!==void 0?arguments[2]:1,d=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,r=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;e(this,i),this.sequence1=l,this.sequence2=g,this.match_score=n,this.mismatch_penalty=d,this.gap_penalty=r,this.iMax=l.length+1,this.jMax=g.length+1,this.grid=new Array(this.iMax);for(var h=0;h=0;l--){var g=this.listeners[l];g.event===t&&g.callback===i&&this.listeners.splice(l,1)}},e.emit=function(t,i){for(var l=0;lg.coolingFactor*g.maxNodeDisplacement&&(this.displacementX=g.coolingFactor*g.maxNodeDisplacement*t.sign(this.displacementX)),Math.abs(this.displacementY)>g.coolingFactor*g.maxNodeDisplacement&&(this.displacementY=g.coolingFactor*g.maxNodeDisplacement*t.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),g.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},i.prototype.propogateDisplacementToChildren=function(g,n){for(var d=this.getChild().getNodes(),r,h=0;h0)this.positionNodesRadially(s);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var f=new Set(this.getAllNodes()),c=this.nodesWithGravity.filter(function(E){return f.has(E)});this.graphManager.setAllNodesToApplyGravitation(c),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},y.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%d.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var s=new Set(this.getAllNodes()),f=this.nodesWithGravity.filter(function(A){return s.has(A)});this.graphManager.setAllNodesToApplyGravitation(f),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var c=!this.isTreeGrowing&&!this.isGrowthFinished,E=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(c,E),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},y.prototype.getPositionsData=function(){for(var s=this.graphManager.getAllNodes(),f={},c=0;c1){var R;for(R=0;RE&&(E=Math.floor(C.y)),m=Math.floor(C.x+n.DEFAULT_COMPONENT_SEPERATION)}this.transform(new a(r.WORLD_CENTER_X-C.x/2,r.WORLD_CENTER_Y-C.y/2))},y.radialLayout=function(s,f,c){var E=Math.max(this.maxDiagonalInTree(s),n.DEFAULT_RADIAL_SEPARATION);y.branchRadialLayout(f,null,0,359,0,E);var A=u.calculateBounds(s),m=new T;m.setDeviceOrgX(A.getMinX()),m.setDeviceOrgY(A.getMinY()),m.setWorldOrgX(c.x),m.setWorldOrgY(c.y);for(var C=0;C1;){var X=_[0];_.splice(0,1);var H=w.indexOf(X);H>=0&&w.splice(H,1),U--,x--}f!=null?P=(w.indexOf(_[0])+1)%U:P=0;for(var W=Math.abs(E-c)/x,B=P;F!=x;B=++B%U){var K=w[B].getOtherEnd(s);if(K!=f){var q=(c+F*W)%360,ht=(q+W)%360;y.branchRadialLayout(K,s,q,ht,A+m,m),F++}}},y.maxDiagonalInTree=function(s){for(var f=v.MIN_VALUE,c=0;cf&&(f=A)}return f},y.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},y.prototype.groupZeroDegreeMembers=function(){var s=this,f={};this.memberGroups={},this.idToDummyNode={};for(var c=[],E=this.graphManager.getAllNodes(),A=0;A"u"&&(f[R]=[]),f[R]=f[R].concat(m)}Object.keys(f).forEach(function(M){if(f[M].length>1){var S="DummyCompound_"+M;s.memberGroups[S]=f[M];var Y=f[M][0].getParent(),w=new l(s.graphManager);w.id=S,w.paddingLeft=Y.paddingLeft||0,w.paddingRight=Y.paddingRight||0,w.paddingBottom=Y.paddingBottom||0,w.paddingTop=Y.paddingTop||0,s.idToDummyNode[S]=w;var x=s.getGraphManager().add(s.newGraph(),w),F=Y.getChild();F.add(w);for(var U=0;U=0;s--){var f=this.compoundOrder[s],c=f.id,E=f.paddingLeft,A=f.paddingTop;this.adjustLocations(this.tiledMemberPack[c],f.rect.x,f.rect.y,E,A)}},y.prototype.repopulateZeroDegreeMembers=function(){var s=this,f=this.tiledZeroDegreePack;Object.keys(f).forEach(function(c){var E=s.idToDummyNode[c],A=E.paddingLeft,m=E.paddingTop;s.adjustLocations(f[c],E.rect.x,E.rect.y,A,m)})},y.prototype.getToBeTiled=function(s){var f=s.id;if(this.toBeTiled[f]!=null)return this.toBeTiled[f];var c=s.getChild();if(c==null)return this.toBeTiled[f]=!1,!1;for(var E=c.getNodes(),A=0;A0)return this.toBeTiled[f]=!1,!1;if(m.getChild()==null){this.toBeTiled[m.id]=!1;continue}if(!this.getToBeTiled(m))return this.toBeTiled[f]=!1,!1}return this.toBeTiled[f]=!0,!0},y.prototype.getNodeDegree=function(s){s.id;for(var f=s.getEdges(),c=0,E=0;EM&&(M=Y.rect.height)}c+=M+s.verticalPadding}},y.prototype.tileCompoundMembers=function(s,f){var c=this;this.tiledMemberPack=[],Object.keys(s).forEach(function(E){var A=f[E];c.tiledMemberPack[E]=c.tileNodes(s[E],A.paddingLeft+A.paddingRight),A.rect.width=c.tiledMemberPack[E].width,A.rect.height=c.tiledMemberPack[E].height})},y.prototype.tileNodes=function(s,f){var c=n.TILING_PADDING_VERTICAL,E=n.TILING_PADDING_HORIZONTAL,A={rows:[],rowWidth:[],rowHeight:[],width:0,height:f,verticalPadding:c,horizontalPadding:E};s.sort(function(R,M){return R.rect.width*R.rect.height>M.rect.width*M.rect.height?-1:R.rect.width*R.rect.height0&&(C+=s.horizontalPadding),s.rowWidth[c]=C,s.width0&&(R+=s.verticalPadding);var M=0;R>s.rowHeight[c]&&(M=s.rowHeight[c],s.rowHeight[c]=R,M=s.rowHeight[c]-M),s.height+=M,s.rows[c].push(f)},y.prototype.getShortestRowIndex=function(s){for(var f=-1,c=Number.MAX_VALUE,E=0;Ec&&(f=E,c=s.rowWidth[E]);return f},y.prototype.canAddHorizontal=function(s,f,c){var E=this.getShortestRowIndex(s);if(E<0)return!0;var A=s.rowWidth[E];if(A+s.horizontalPadding+f<=s.width)return!0;var m=0;s.rowHeight[E]0&&(m=c+s.verticalPadding-s.rowHeight[E]);var C;s.width-A>=f+s.horizontalPadding?C=(s.height+m)/(A+f+s.horizontalPadding):C=(s.height+m)/s.width,m=c+s.verticalPadding;var R;return s.widthm&&f!=c){E.splice(-1,1),s.rows[c].push(A),s.rowWidth[f]=s.rowWidth[f]-m,s.rowWidth[c]=s.rowWidth[c]+m,s.width=s.rowWidth[instance.getLongestRowIndex(s)];for(var C=Number.MIN_VALUE,R=0;RC&&(C=E[R].height);f>0&&(C+=s.verticalPadding);var M=s.rowHeight[f]+s.rowHeight[c];s.rowHeight[f]=C,s.rowHeight[c]0)for(var F=A;F<=m;F++)x[0]+=this.grid[F][C-1].length+this.grid[F][C].length-1;if(m0)for(var F=C;F<=R;F++)x[3]+=this.grid[A-1][F].length+this.grid[A][F].length-1;for(var U=v.MAX_VALUE,P,_,X=0;X0){var R;R=T.getGraphManager().add(T.newGraph(),c),this.processChildrenList(R,f,T)}}},a.prototype.stop=function(){return this.stopped=!0,this};var v=function(u){u("layout","cose-bilkent",a)};typeof cytoscape<"u"&&v(cytoscape),I.exports=v})])})})(Z)),Z.exports}var yt=vt();const Et=gt(yt);tt.use(Et);function et(G,b){G.forEach(N=>{const I={id:N.id,labelText:N.label,height:N.height,width:N.width,padding:N.padding??0};Object.keys(N).forEach(L=>{["id","label","height","width","padding","x","y"].includes(L)||(I[L]=N[L])}),b.add({group:"nodes",data:I,position:{x:N.x??0,y:N.y??0}})})}V(et,"addNodes");function rt(G,b){G.forEach(N=>{const I={id:N.id,source:N.start,target:N.end};Object.keys(N).forEach(L=>{["id","start","end"].includes(L)||(I[L]=N[L])}),b.add({group:"edges",data:I})})}V(rt,"addEdges");function it(G){return new Promise(b=>{const N=lt("body").append("div").attr("id","cy").attr("style","display:none"),I=tt({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});N.remove(),et(G.nodes,I),rt(G.edges,I),I.nodes().forEach(function(o){o.layoutDimensions=()=>{const e=o.data();return{w:e.width,h:e.height}}});const L={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};I.layout(L).run(),I.ready(o=>{k.info("Cytoscape ready",o),b(I)})})}V(it,"createCytoscapeInstance");function nt(G){return G.nodes().map(b=>{const N=b.data(),I=b.position(),L={id:N.id,x:I.x,y:I.y};return Object.keys(N).forEach(o=>{o!=="id"&&(L[o]=N[o])}),L})}V(nt,"extractPositionedNodes");function ot(G){return G.edges().map(b=>{const N=b.data(),I=b._private.rscratch,L={id:N.id,source:N.source,target:N.target,startX:I.startX,startY:I.startY,midX:I.midX,midY:I.midY,endX:I.endX,endY:I.endY};return Object.keys(N).forEach(o=>{["id","source","target"].includes(o)||(L[o]=N[o])}),L})}V(ot,"extractPositionedEdges");async function st(G,b){k.debug("Starting cose-bilkent layout algorithm");try{at(G);const N=await it(G),I=nt(N),L=ot(N);return k.debug(`Layout completed: ${I.length} nodes, ${L.length} edges`),{nodes:I,edges:L}}catch(N){throw k.error("Error in cose-bilkent layout algorithm:",N),N}}V(st,"executeCoseBilkentLayout");function at(G){if(!G)throw new Error("Layout data is required");if(!G.config)throw new Error("Configuration is required in layout data");if(!G.rootNode)throw new Error("Root node is required");if(!G.nodes||!Array.isArray(G.nodes))throw new Error("No nodes found in layout data");if(!Array.isArray(G.edges))throw new Error("Edges array is required in layout data");return!0}V(at,"validateLayoutData");var Lt=V(async(G,b,{insertCluster:N,insertEdge:I,insertEdgeLabel:L,insertMarkers:o,insertNode:e,log:t,positionEdgeLabel:i},{algorithm:l})=>{const g={},n={},d=b.select("g");o(d,G.markers,G.type,G.diagramId);const r=d.insert("g").attr("class","subgraphs"),h=d.insert("g").attr("class","edgePaths"),a=d.insert("g").attr("class","edgeLabels"),p=d.insert("g").attr("class","nodes");t.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(G.nodes.map(async u=>{if(u.isGroup){const T={...u};n[u.id]=T,g[u.id]=T,await N(r,u)}else{const T={...u};g[u.id]=T;const y=await e(p,u,{config:G.config,dir:G.direction||"TB"}),O=y.node().getBBox();T.width=O.width,T.height=O.height,T.domId=y,t.debug(`Node ${u.id} dimensions: ${O.width}x${O.height}`)}})),t.debug("Running cose-bilkent layout algorithm");const v={...G,nodes:G.nodes.map(u=>{const T=g[u.id];return{...u,width:T.width,height:T.height}})},D=await st(v,G.config);t.debug("Positioning nodes based on layout results"),D.nodes.forEach(u=>{const T=g[u.id];T?.domId&&(T.domId.attr("transform",`translate(${u.x}, ${u.y})`),T.x=u.x,T.y=u.y,t.debug(`Positioned node ${T.id} at center (${u.x}, ${u.y})`))}),D.edges.forEach(u=>{const T=G.edges.find(y=>y.id===u.id);T&&(T.points=[{x:u.startX,y:u.startY},{x:u.midX,y:u.midY},{x:u.endX,y:u.endY}])}),t.debug("Inserting and positioning edges"),await Promise.all(G.edges.map(async u=>{await L(a,u);const T=g[u.start??""],y=g[u.end??""];if(T&&y){const O=D.edges.find(s=>s.id===u.id);if(O){t.debug("APA01 positionedEdge",O);const s={...u},f=I(h,s,n,G.type,T,y,G.diagramId);i(s,f)}else{const s={...u,points:[{x:T.x||0,y:T.y||0},{x:y.x||0,y:y.y||0}]},f=I(h,s,n,G.type,T,y,G.diagramId);i(s,f)}}})),t.debug("Cose-bilkent rendering completed")},"render"),Ot=Lt;export{Ot as render}; diff --git a/apps/kimi-code/dist-web/assets/cynefin-VYW2F7L2-DQGCJnlE.js b/apps/kimi-code/dist-web/assets/cynefin-VYW2F7L2-Bp-nxK3W.js similarity index 99% rename from apps/kimi-code/dist-web/assets/cynefin-VYW2F7L2-DQGCJnlE.js rename to apps/kimi-code/dist-web/assets/cynefin-VYW2F7L2-Bp-nxK3W.js index 717e3f0fcc..90a700ee7d 100644 --- a/apps/kimi-code/dist-web/assets/cynefin-VYW2F7L2-DQGCJnlE.js +++ b/apps/kimi-code/dist-web/assets/cynefin-VYW2F7L2-Bp-nxK3W.js @@ -1,4 +1,4 @@ -import{bR as et}from"./index-HU0LCM-X.js";var RI=Object.create,Ds=Object.defineProperty,AI=Object.getOwnPropertyDescriptor,Ad=Object.getOwnPropertyNames,EI=Object.getPrototypeOf,CI=Object.prototype.hasOwnProperty,i=(e,t)=>Ds(e,"name",{value:t,configurable:!0}),bI=(e,t)=>function(){return e&&(t=(0,e[Ad(e)[0]])(e=0)),t},H=(e,t)=>function(){return t||(0,e[Ad(e)[0]])((t={exports:{}}).exports,t),t.exports},Vr=(e,t)=>{for(var r in t)Ds(e,r,{get:t[r],enumerable:!0})},Ed=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Ad(t))!CI.call(e,a)&&a!==r&&Ds(e,a,{get:()=>t[a],enumerable:!(n=AI(t,a))||n.enumerable});return e},Ll=(e,t,r)=>(Ed(e,t,"default"),r),Cd=(e,t,r)=>(r=e!=null?RI(EI(e)):{},Ed(Ds(r,"default",{value:e,enumerable:!0}),e)),bd=e=>Ed(Ds({},"__esModule",{value:!0}),e),Dl={};Vr(Dl,{AnnotatedTextEdit:()=>mr,ChangeAnnotation:()=>an,ChangeAnnotationIdentifier:()=>Ke,CodeAction:()=>ef,CodeActionContext:()=>Qc,CodeActionKind:()=>Zc,CodeActionTriggerKind:()=>Xi,CodeDescription:()=>Nc,CodeLens:()=>tf,Color:()=>Co,ColorInformation:()=>Cc,ColorPresentation:()=>bc,Command:()=>nn,CompletionItem:()=>zc,CompletionItemKind:()=>Lc,CompletionItemLabelDetails:()=>Fc,CompletionItemTag:()=>xc,CompletionList:()=>jc,CreateFile:()=>ya,DeleteFile:()=>va,Diagnostic:()=>Vi,DiagnosticRelatedInformation:()=>bo,DiagnosticSeverity:()=>wc,DiagnosticTag:()=>Ic,DocumentHighlight:()=>Vc,DocumentHighlightKind:()=>Wc,DocumentLink:()=>nf,DocumentSymbol:()=>Jc,DocumentUri:()=>Rc,EOL:()=>zg,FoldingRange:()=>Sc,FoldingRangeKind:()=>_c,FormattingOptions:()=>rf,Hover:()=>Bc,InlayHint:()=>pf,InlayHintKind:()=>wo,InlayHintLabelPart:()=>Io,InlineCompletionContext:()=>Tf,InlineCompletionItem:()=>hf,InlineCompletionList:()=>yf,InlineCompletionTriggerKind:()=>gf,InlineValueContext:()=>df,InlineValueEvaluatableExpression:()=>ff,InlineValueText:()=>uf,InlineValueVariableLookup:()=>cf,InsertReplaceEdit:()=>Mc,InsertTextFormat:()=>Dc,InsertTextMode:()=>Gc,Location:()=>Wi,LocationLink:()=>Ec,MarkedString:()=>Yi,MarkupContent:()=>Ta,MarkupKind:()=>So,OptionalVersionedTextDocumentIdentifier:()=>Hi,ParameterInformation:()=>Uc,Position:()=>ie,Range:()=>Q,RenameFile:()=>ga,SelectedCompletionInfo:()=>vf,SelectionRange:()=>af,SemanticTokenModifiers:()=>of,SemanticTokenTypes:()=>sf,SemanticTokens:()=>lf,SignatureInformation:()=>Kc,StringValue:()=>mf,SymbolInformation:()=>Yc,SymbolKind:()=>qc,SymbolTag:()=>Hc,TextDocument:()=>Rf,TextDocumentEdit:()=>qi,TextDocumentIdentifier:()=>Pc,TextDocumentItem:()=>Oc,TextEdit:()=>Yt,URI:()=>Eo,VersionedTextDocumentIdentifier:()=>kc,WorkspaceChange:()=>Fg,WorkspaceEdit:()=>_o,WorkspaceFolder:()=>$f,WorkspaceSymbol:()=>Xc,integer:()=>Ac,uinteger:()=>Ki});var Rc,Eo,Ac,Ki,ie,Q,Wi,Ec,Co,Cc,bc,_c,Sc,bo,wc,Ic,Nc,Vi,nn,Yt,an,Ke,mr,qi,ya,ga,va,_o,ki,Ku,Fg,Pc,kc,Hi,Oc,So,Ta,Lc,Dc,xc,Mc,Gc,Fc,zc,jc,Yi,Bc,Uc,Kc,Wc,Vc,qc,Hc,Yc,Xc,Jc,Zc,Xi,Qc,ef,tf,rf,nf,af,sf,of,lf,uf,cf,ff,df,wo,Io,pf,mf,hf,yf,gf,vf,Tf,$f,zg,Rf,lh,A,xs=bI({"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){(function(e){function t(r){return typeof r=="string"}i(t,"is"),e.is=t})(Rc||(Rc={})),(function(e){function t(r){return typeof r=="string"}i(t,"is"),e.is=t})(Eo||(Eo={})),(function(e){e.MIN_VALUE=-2147483648,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}i(t,"is"),e.is=t})(Ac||(Ac={})),(function(e){e.MIN_VALUE=0,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}i(t,"is"),e.is=t})(Ki||(Ki={})),(function(e){function t(n,a){return n===Number.MAX_VALUE&&(n=Ki.MAX_VALUE),a===Number.MAX_VALUE&&(a=Ki.MAX_VALUE),{line:n,character:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&A.uinteger(a.line)&&A.uinteger(a.character)}i(r,"is"),e.is=r})(ie||(ie={})),(function(e){function t(n,a,s,o){if(A.uinteger(n)&&A.uinteger(a)&&A.uinteger(s)&&A.uinteger(o))return{start:ie.create(n,a),end:ie.create(s,o)};if(ie.is(n)&&ie.is(a))return{start:n,end:a};throw new Error(`Range#create called with invalid arguments[${n}, ${a}, ${s}, ${o}]`)}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&ie.is(a.start)&&ie.is(a.end)}i(r,"is"),e.is=r})(Q||(Q={})),(function(e){function t(n,a){return{uri:n,range:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&Q.is(a.range)&&(A.string(a.uri)||A.undefined(a.uri))}i(r,"is"),e.is=r})(Wi||(Wi={})),(function(e){function t(n,a,s,o){return{targetUri:n,targetRange:a,targetSelectionRange:s,originSelectionRange:o}}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&Q.is(a.targetRange)&&A.string(a.targetUri)&&Q.is(a.targetSelectionRange)&&(Q.is(a.originSelectionRange)||A.undefined(a.originSelectionRange))}i(r,"is"),e.is=r})(Ec||(Ec={})),(function(e){function t(n,a,s,o){return{red:n,green:a,blue:s,alpha:o}}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&A.numberRange(a.red,0,1)&&A.numberRange(a.green,0,1)&&A.numberRange(a.blue,0,1)&&A.numberRange(a.alpha,0,1)}i(r,"is"),e.is=r})(Co||(Co={})),(function(e){function t(n,a){return{range:n,color:a}}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&Q.is(a.range)&&Co.is(a.color)}i(r,"is"),e.is=r})(Cc||(Cc={})),(function(e){function t(n,a,s){return{label:n,textEdit:a,additionalTextEdits:s}}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&A.string(a.label)&&(A.undefined(a.textEdit)||Yt.is(a))&&(A.undefined(a.additionalTextEdits)||A.typedArray(a.additionalTextEdits,Yt.is))}i(r,"is"),e.is=r})(bc||(bc={})),(function(e){e.Comment="comment",e.Imports="imports",e.Region="region"})(_c||(_c={})),(function(e){function t(n,a,s,o,l,u){const c={startLine:n,endLine:a};return A.defined(s)&&(c.startCharacter=s),A.defined(o)&&(c.endCharacter=o),A.defined(l)&&(c.kind=l),A.defined(u)&&(c.collapsedText=u),c}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&A.uinteger(a.startLine)&&A.uinteger(a.startLine)&&(A.undefined(a.startCharacter)||A.uinteger(a.startCharacter))&&(A.undefined(a.endCharacter)||A.uinteger(a.endCharacter))&&(A.undefined(a.kind)||A.string(a.kind))}i(r,"is"),e.is=r})(Sc||(Sc={})),(function(e){function t(n,a){return{location:n,message:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&Wi.is(a.location)&&A.string(a.message)}i(r,"is"),e.is=r})(bo||(bo={})),(function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4})(wc||(wc={})),(function(e){e.Unnecessary=1,e.Deprecated=2})(Ic||(Ic={})),(function(e){function t(r){const n=r;return A.objectLiteral(n)&&A.string(n.href)}i(t,"is"),e.is=t})(Nc||(Nc={})),(function(e){function t(n,a,s,o,l,u){let c={range:n,message:a};return A.defined(s)&&(c.severity=s),A.defined(o)&&(c.code=o),A.defined(l)&&(c.source=l),A.defined(u)&&(c.relatedInformation=u),c}i(t,"create"),e.create=t;function r(n){var a;let s=n;return A.defined(s)&&Q.is(s.range)&&A.string(s.message)&&(A.number(s.severity)||A.undefined(s.severity))&&(A.integer(s.code)||A.string(s.code)||A.undefined(s.code))&&(A.undefined(s.codeDescription)||A.string((a=s.codeDescription)===null||a===void 0?void 0:a.href))&&(A.string(s.source)||A.undefined(s.source))&&(A.undefined(s.relatedInformation)||A.typedArray(s.relatedInformation,bo.is))}i(r,"is"),e.is=r})(Vi||(Vi={})),(function(e){function t(n,a,...s){let o={title:n,command:a};return A.defined(s)&&s.length>0&&(o.arguments=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.title)&&A.string(a.command)}i(r,"is"),e.is=r})(nn||(nn={})),(function(e){function t(s,o){return{range:s,newText:o}}i(t,"replace"),e.replace=t;function r(s,o){return{range:{start:s,end:s},newText:o}}i(r,"insert"),e.insert=r;function n(s){return{range:s,newText:""}}i(n,"del"),e.del=n;function a(s){const o=s;return A.objectLiteral(o)&&A.string(o.newText)&&Q.is(o.range)}i(a,"is"),e.is=a})(Yt||(Yt={})),(function(e){function t(n,a,s){const o={label:n};return a!==void 0&&(o.needsConfirmation=a),s!==void 0&&(o.description=s),o}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&A.string(a.label)&&(A.boolean(a.needsConfirmation)||a.needsConfirmation===void 0)&&(A.string(a.description)||a.description===void 0)}i(r,"is"),e.is=r})(an||(an={})),(function(e){function t(r){const n=r;return A.string(n)}i(t,"is"),e.is=t})(Ke||(Ke={})),(function(e){function t(s,o,l){return{range:s,newText:o,annotationId:l}}i(t,"replace"),e.replace=t;function r(s,o,l){return{range:{start:s,end:s},newText:o,annotationId:l}}i(r,"insert"),e.insert=r;function n(s,o){return{range:s,newText:"",annotationId:o}}i(n,"del"),e.del=n;function a(s){const o=s;return Yt.is(o)&&(an.is(o.annotationId)||Ke.is(o.annotationId))}i(a,"is"),e.is=a})(mr||(mr={})),(function(e){function t(n,a){return{textDocument:n,edits:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&Hi.is(a.textDocument)&&Array.isArray(a.edits)}i(r,"is"),e.is=r})(qi||(qi={})),(function(e){function t(n,a,s){let o={kind:"create",uri:n};return a!==void 0&&(a.overwrite!==void 0||a.ignoreIfExists!==void 0)&&(o.options=a),s!==void 0&&(o.annotationId=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return a&&a.kind==="create"&&A.string(a.uri)&&(a.options===void 0||(a.options.overwrite===void 0||A.boolean(a.options.overwrite))&&(a.options.ignoreIfExists===void 0||A.boolean(a.options.ignoreIfExists)))&&(a.annotationId===void 0||Ke.is(a.annotationId))}i(r,"is"),e.is=r})(ya||(ya={})),(function(e){function t(n,a,s,o){let l={kind:"rename",oldUri:n,newUri:a};return s!==void 0&&(s.overwrite!==void 0||s.ignoreIfExists!==void 0)&&(l.options=s),o!==void 0&&(l.annotationId=o),l}i(t,"create"),e.create=t;function r(n){let a=n;return a&&a.kind==="rename"&&A.string(a.oldUri)&&A.string(a.newUri)&&(a.options===void 0||(a.options.overwrite===void 0||A.boolean(a.options.overwrite))&&(a.options.ignoreIfExists===void 0||A.boolean(a.options.ignoreIfExists)))&&(a.annotationId===void 0||Ke.is(a.annotationId))}i(r,"is"),e.is=r})(ga||(ga={})),(function(e){function t(n,a,s){let o={kind:"delete",uri:n};return a!==void 0&&(a.recursive!==void 0||a.ignoreIfNotExists!==void 0)&&(o.options=a),s!==void 0&&(o.annotationId=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return a&&a.kind==="delete"&&A.string(a.uri)&&(a.options===void 0||(a.options.recursive===void 0||A.boolean(a.options.recursive))&&(a.options.ignoreIfNotExists===void 0||A.boolean(a.options.ignoreIfNotExists)))&&(a.annotationId===void 0||Ke.is(a.annotationId))}i(r,"is"),e.is=r})(va||(va={})),(function(e){function t(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(a=>A.string(a.kind)?ya.is(a)||ga.is(a)||va.is(a):qi.is(a)))}i(t,"is"),e.is=t})(_o||(_o={})),ki=class{static{i(this,"TextEditChangeImpl")}constructor(e,t){this.edits=e,this.changeAnnotations=t}insert(e,t,r){let n,a;if(r===void 0?n=Yt.insert(e,t):Ke.is(r)?(a=r,n=mr.insert(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),a=this.changeAnnotations.manage(r),n=mr.insert(e,t,a)),this.edits.push(n),a!==void 0)return a}replace(e,t,r){let n,a;if(r===void 0?n=Yt.replace(e,t):Ke.is(r)?(a=r,n=mr.replace(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),a=this.changeAnnotations.manage(r),n=mr.replace(e,t,a)),this.edits.push(n),a!==void 0)return a}delete(e,t){let r,n;if(t===void 0?r=Yt.del(e):Ke.is(t)?(n=t,r=mr.del(e,t)):(this.assertChangeAnnotations(this.changeAnnotations),n=this.changeAnnotations.manage(t),r=mr.del(e,n)),this.edits.push(r),n!==void 0)return n}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(e===void 0)throw new Error("Text edit change is not configured to manage change annotations.")}},Ku=class{static{i(this,"ChangeAnnotations")}constructor(e){this._annotations=e===void 0?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,t){let r;if(Ke.is(e)?r=e:(r=this.nextId(),t=e),this._annotations[r]!==void 0)throw new Error(`Id ${r} is already in use.`);if(t===void 0)throw new Error(`No annotation provided for id ${r}`);return this._annotations[r]=t,this._size++,r}nextId(){return this._counter++,this._counter.toString()}},Fg=class{static{i(this,"WorkspaceChange")}constructor(e){this._textEditChanges=Object.create(null),e!==void 0?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new Ku(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(t=>{if(qi.is(t)){const r=new ki(t.edits,this._changeAnnotations);this._textEditChanges[t.textDocument.uri]=r}})):e.changes&&Object.keys(e.changes).forEach(t=>{const r=new ki(e.changes[t]);this._textEditChanges[t]=r})):this._workspaceEdit={}}get edit(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(e){if(Hi.is(e)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");const t={uri:e.uri,version:e.version};let r=this._textEditChanges[t.uri];if(!r){const n=[],a={textDocument:t,edits:n};this._workspaceEdit.documentChanges.push(a),r=new ki(n,this._changeAnnotations),this._textEditChanges[t.uri]=r}return r}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");let t=this._textEditChanges[e];if(!t){let r=[];this._workspaceEdit.changes[e]=r,t=new ki(r),this._textEditChanges[e]=t}return t}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new Ku,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,t,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let n;an.is(t)||Ke.is(t)?n=t:r=t;let a,s;if(n===void 0?a=ya.create(e,r):(s=Ke.is(n)?n:this._changeAnnotations.manage(n),a=ya.create(e,r,s)),this._workspaceEdit.documentChanges.push(a),s!==void 0)return s}renameFile(e,t,r,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let a;an.is(r)||Ke.is(r)?a=r:n=r;let s,o;if(a===void 0?s=ga.create(e,t,n):(o=Ke.is(a)?a:this._changeAnnotations.manage(a),s=ga.create(e,t,n,o)),this._workspaceEdit.documentChanges.push(s),o!==void 0)return o}deleteFile(e,t,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let n;an.is(t)||Ke.is(t)?n=t:r=t;let a,s;if(n===void 0?a=va.create(e,r):(s=Ke.is(n)?n:this._changeAnnotations.manage(n),a=va.create(e,r,s)),this._workspaceEdit.documentChanges.push(a),s!==void 0)return s}},(function(e){function t(n){return{uri:n}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.uri)}i(r,"is"),e.is=r})(Pc||(Pc={})),(function(e){function t(n,a){return{uri:n,version:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.uri)&&A.integer(a.version)}i(r,"is"),e.is=r})(kc||(kc={})),(function(e){function t(n,a){return{uri:n,version:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.uri)&&(a.version===null||A.integer(a.version))}i(r,"is"),e.is=r})(Hi||(Hi={})),(function(e){function t(n,a,s,o){return{uri:n,languageId:a,version:s,text:o}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.uri)&&A.string(a.languageId)&&A.integer(a.version)&&A.string(a.text)}i(r,"is"),e.is=r})(Oc||(Oc={})),(function(e){e.PlainText="plaintext",e.Markdown="markdown";function t(r){const n=r;return n===e.PlainText||n===e.Markdown}i(t,"is"),e.is=t})(So||(So={})),(function(e){function t(r){const n=r;return A.objectLiteral(r)&&So.is(n.kind)&&A.string(n.value)}i(t,"is"),e.is=t})(Ta||(Ta={})),(function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25})(Lc||(Lc={})),(function(e){e.PlainText=1,e.Snippet=2})(Dc||(Dc={})),(function(e){e.Deprecated=1})(xc||(xc={})),(function(e){function t(n,a,s){return{newText:n,insert:a,replace:s}}i(t,"create"),e.create=t;function r(n){const a=n;return a&&A.string(a.newText)&&Q.is(a.insert)&&Q.is(a.replace)}i(r,"is"),e.is=r})(Mc||(Mc={})),(function(e){e.asIs=1,e.adjustIndentation=2})(Gc||(Gc={})),(function(e){function t(r){const n=r;return n&&(A.string(n.detail)||n.detail===void 0)&&(A.string(n.description)||n.description===void 0)}i(t,"is"),e.is=t})(Fc||(Fc={})),(function(e){function t(r){return{label:r}}i(t,"create"),e.create=t})(zc||(zc={})),(function(e){function t(r,n){return{items:r||[],isIncomplete:!!n}}i(t,"create"),e.create=t})(jc||(jc={})),(function(e){function t(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}i(t,"fromPlainText"),e.fromPlainText=t;function r(n){const a=n;return A.string(a)||A.objectLiteral(a)&&A.string(a.language)&&A.string(a.value)}i(r,"is"),e.is=r})(Yi||(Yi={})),(function(e){function t(r){let n=r;return!!n&&A.objectLiteral(n)&&(Ta.is(n.contents)||Yi.is(n.contents)||A.typedArray(n.contents,Yi.is))&&(r.range===void 0||Q.is(r.range))}i(t,"is"),e.is=t})(Bc||(Bc={})),(function(e){function t(r,n){return n?{label:r,documentation:n}:{label:r}}i(t,"create"),e.create=t})(Uc||(Uc={})),(function(e){function t(r,n,...a){let s={label:r};return A.defined(n)&&(s.documentation=n),A.defined(a)?s.parameters=a:s.parameters=[],s}i(t,"create"),e.create=t})(Kc||(Kc={})),(function(e){e.Text=1,e.Read=2,e.Write=3})(Wc||(Wc={})),(function(e){function t(r,n){let a={range:r};return A.number(n)&&(a.kind=n),a}i(t,"create"),e.create=t})(Vc||(Vc={})),(function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26})(qc||(qc={})),(function(e){e.Deprecated=1})(Hc||(Hc={})),(function(e){function t(r,n,a,s,o){let l={name:r,kind:n,location:{uri:s,range:a}};return o&&(l.containerName=o),l}i(t,"create"),e.create=t})(Yc||(Yc={})),(function(e){function t(r,n,a,s){return s!==void 0?{name:r,kind:n,location:{uri:a,range:s}}:{name:r,kind:n,location:{uri:a}}}i(t,"create"),e.create=t})(Xc||(Xc={})),(function(e){function t(n,a,s,o,l,u){let c={name:n,detail:a,kind:s,range:o,selectionRange:l};return u!==void 0&&(c.children=u),c}i(t,"create"),e.create=t;function r(n){let a=n;return a&&A.string(a.name)&&A.number(a.kind)&&Q.is(a.range)&&Q.is(a.selectionRange)&&(a.detail===void 0||A.string(a.detail))&&(a.deprecated===void 0||A.boolean(a.deprecated))&&(a.children===void 0||Array.isArray(a.children))&&(a.tags===void 0||Array.isArray(a.tags))}i(r,"is"),e.is=r})(Jc||(Jc={})),(function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"})(Zc||(Zc={})),(function(e){e.Invoked=1,e.Automatic=2})(Xi||(Xi={})),(function(e){function t(n,a,s){let o={diagnostics:n};return a!=null&&(o.only=a),s!=null&&(o.triggerKind=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.typedArray(a.diagnostics,Vi.is)&&(a.only===void 0||A.typedArray(a.only,A.string))&&(a.triggerKind===void 0||a.triggerKind===Xi.Invoked||a.triggerKind===Xi.Automatic)}i(r,"is"),e.is=r})(Qc||(Qc={})),(function(e){function t(n,a,s){let o={title:n},l=!0;return typeof a=="string"?(l=!1,o.kind=a):nn.is(a)?o.command=a:o.edit=a,l&&s!==void 0&&(o.kind=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return a&&A.string(a.title)&&(a.diagnostics===void 0||A.typedArray(a.diagnostics,Vi.is))&&(a.kind===void 0||A.string(a.kind))&&(a.edit!==void 0||a.command!==void 0)&&(a.command===void 0||nn.is(a.command))&&(a.isPreferred===void 0||A.boolean(a.isPreferred))&&(a.edit===void 0||_o.is(a.edit))}i(r,"is"),e.is=r})(ef||(ef={})),(function(e){function t(n,a){let s={range:n};return A.defined(a)&&(s.data=a),s}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&Q.is(a.range)&&(A.undefined(a.command)||nn.is(a.command))}i(r,"is"),e.is=r})(tf||(tf={})),(function(e){function t(n,a){return{tabSize:n,insertSpaces:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.uinteger(a.tabSize)&&A.boolean(a.insertSpaces)}i(r,"is"),e.is=r})(rf||(rf={})),(function(e){function t(n,a,s){return{range:n,target:a,data:s}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&Q.is(a.range)&&(A.undefined(a.target)||A.string(a.target))}i(r,"is"),e.is=r})(nf||(nf={})),(function(e){function t(n,a){return{range:n,parent:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&Q.is(a.range)&&(a.parent===void 0||e.is(a.parent))}i(r,"is"),e.is=r})(af||(af={})),(function(e){e.namespace="namespace",e.type="type",e.class="class",e.enum="enum",e.interface="interface",e.struct="struct",e.typeParameter="typeParameter",e.parameter="parameter",e.variable="variable",e.property="property",e.enumMember="enumMember",e.event="event",e.function="function",e.method="method",e.macro="macro",e.keyword="keyword",e.modifier="modifier",e.comment="comment",e.string="string",e.number="number",e.regexp="regexp",e.operator="operator",e.decorator="decorator"})(sf||(sf={})),(function(e){e.declaration="declaration",e.definition="definition",e.readonly="readonly",e.static="static",e.deprecated="deprecated",e.abstract="abstract",e.async="async",e.modification="modification",e.documentation="documentation",e.defaultLibrary="defaultLibrary"})(of||(of={})),(function(e){function t(r){const n=r;return A.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}i(t,"is"),e.is=t})(lf||(lf={})),(function(e){function t(n,a){return{range:n,text:a}}i(t,"create"),e.create=t;function r(n){const a=n;return a!=null&&Q.is(a.range)&&A.string(a.text)}i(r,"is"),e.is=r})(uf||(uf={})),(function(e){function t(n,a,s){return{range:n,variableName:a,caseSensitiveLookup:s}}i(t,"create"),e.create=t;function r(n){const a=n;return a!=null&&Q.is(a.range)&&A.boolean(a.caseSensitiveLookup)&&(A.string(a.variableName)||a.variableName===void 0)}i(r,"is"),e.is=r})(cf||(cf={})),(function(e){function t(n,a){return{range:n,expression:a}}i(t,"create"),e.create=t;function r(n){const a=n;return a!=null&&Q.is(a.range)&&(A.string(a.expression)||a.expression===void 0)}i(r,"is"),e.is=r})(ff||(ff={})),(function(e){function t(n,a){return{frameId:n,stoppedLocation:a}}i(t,"create"),e.create=t;function r(n){const a=n;return A.defined(a)&&Q.is(n.stoppedLocation)}i(r,"is"),e.is=r})(df||(df={})),(function(e){e.Type=1,e.Parameter=2;function t(r){return r===1||r===2}i(t,"is"),e.is=t})(wo||(wo={})),(function(e){function t(n){return{value:n}}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&(a.tooltip===void 0||A.string(a.tooltip)||Ta.is(a.tooltip))&&(a.location===void 0||Wi.is(a.location))&&(a.command===void 0||nn.is(a.command))}i(r,"is"),e.is=r})(Io||(Io={})),(function(e){function t(n,a,s){const o={position:n,label:a};return s!==void 0&&(o.kind=s),o}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&ie.is(a.position)&&(A.string(a.label)||A.typedArray(a.label,Io.is))&&(a.kind===void 0||wo.is(a.kind))&&a.textEdits===void 0||A.typedArray(a.textEdits,Yt.is)&&(a.tooltip===void 0||A.string(a.tooltip)||Ta.is(a.tooltip))&&(a.paddingLeft===void 0||A.boolean(a.paddingLeft))&&(a.paddingRight===void 0||A.boolean(a.paddingRight))}i(r,"is"),e.is=r})(pf||(pf={})),(function(e){function t(r){return{kind:"snippet",value:r}}i(t,"createSnippet"),e.createSnippet=t})(mf||(mf={})),(function(e){function t(r,n,a,s){return{insertText:r,filterText:n,range:a,command:s}}i(t,"create"),e.create=t})(hf||(hf={})),(function(e){function t(r){return{items:r}}i(t,"create"),e.create=t})(yf||(yf={})),(function(e){e.Invoked=0,e.Automatic=1})(gf||(gf={})),(function(e){function t(r,n){return{range:r,text:n}}i(t,"create"),e.create=t})(vf||(vf={})),(function(e){function t(r,n){return{triggerKind:r,selectedCompletionInfo:n}}i(t,"create"),e.create=t})(Tf||(Tf={})),(function(e){function t(r){const n=r;return A.objectLiteral(n)&&Eo.is(n.uri)&&A.string(n.name)}i(t,"is"),e.is=t})($f||($f={})),zg=[` +import{bR as et}from"./index-Dnz6Zudc.js";var RI=Object.create,Ds=Object.defineProperty,AI=Object.getOwnPropertyDescriptor,Ad=Object.getOwnPropertyNames,EI=Object.getPrototypeOf,CI=Object.prototype.hasOwnProperty,i=(e,t)=>Ds(e,"name",{value:t,configurable:!0}),bI=(e,t)=>function(){return e&&(t=(0,e[Ad(e)[0]])(e=0)),t},H=(e,t)=>function(){return t||(0,e[Ad(e)[0]])((t={exports:{}}).exports,t),t.exports},Vr=(e,t)=>{for(var r in t)Ds(e,r,{get:t[r],enumerable:!0})},Ed=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of Ad(t))!CI.call(e,a)&&a!==r&&Ds(e,a,{get:()=>t[a],enumerable:!(n=AI(t,a))||n.enumerable});return e},Ll=(e,t,r)=>(Ed(e,t,"default"),r),Cd=(e,t,r)=>(r=e!=null?RI(EI(e)):{},Ed(Ds(r,"default",{value:e,enumerable:!0}),e)),bd=e=>Ed(Ds({},"__esModule",{value:!0}),e),Dl={};Vr(Dl,{AnnotatedTextEdit:()=>mr,ChangeAnnotation:()=>an,ChangeAnnotationIdentifier:()=>Ke,CodeAction:()=>ef,CodeActionContext:()=>Qc,CodeActionKind:()=>Zc,CodeActionTriggerKind:()=>Xi,CodeDescription:()=>Nc,CodeLens:()=>tf,Color:()=>Co,ColorInformation:()=>Cc,ColorPresentation:()=>bc,Command:()=>nn,CompletionItem:()=>zc,CompletionItemKind:()=>Lc,CompletionItemLabelDetails:()=>Fc,CompletionItemTag:()=>xc,CompletionList:()=>jc,CreateFile:()=>ya,DeleteFile:()=>va,Diagnostic:()=>Vi,DiagnosticRelatedInformation:()=>bo,DiagnosticSeverity:()=>wc,DiagnosticTag:()=>Ic,DocumentHighlight:()=>Vc,DocumentHighlightKind:()=>Wc,DocumentLink:()=>nf,DocumentSymbol:()=>Jc,DocumentUri:()=>Rc,EOL:()=>zg,FoldingRange:()=>Sc,FoldingRangeKind:()=>_c,FormattingOptions:()=>rf,Hover:()=>Bc,InlayHint:()=>pf,InlayHintKind:()=>wo,InlayHintLabelPart:()=>Io,InlineCompletionContext:()=>Tf,InlineCompletionItem:()=>hf,InlineCompletionList:()=>yf,InlineCompletionTriggerKind:()=>gf,InlineValueContext:()=>df,InlineValueEvaluatableExpression:()=>ff,InlineValueText:()=>uf,InlineValueVariableLookup:()=>cf,InsertReplaceEdit:()=>Mc,InsertTextFormat:()=>Dc,InsertTextMode:()=>Gc,Location:()=>Wi,LocationLink:()=>Ec,MarkedString:()=>Yi,MarkupContent:()=>Ta,MarkupKind:()=>So,OptionalVersionedTextDocumentIdentifier:()=>Hi,ParameterInformation:()=>Uc,Position:()=>ie,Range:()=>Q,RenameFile:()=>ga,SelectedCompletionInfo:()=>vf,SelectionRange:()=>af,SemanticTokenModifiers:()=>of,SemanticTokenTypes:()=>sf,SemanticTokens:()=>lf,SignatureInformation:()=>Kc,StringValue:()=>mf,SymbolInformation:()=>Yc,SymbolKind:()=>qc,SymbolTag:()=>Hc,TextDocument:()=>Rf,TextDocumentEdit:()=>qi,TextDocumentIdentifier:()=>Pc,TextDocumentItem:()=>Oc,TextEdit:()=>Yt,URI:()=>Eo,VersionedTextDocumentIdentifier:()=>kc,WorkspaceChange:()=>Fg,WorkspaceEdit:()=>_o,WorkspaceFolder:()=>$f,WorkspaceSymbol:()=>Xc,integer:()=>Ac,uinteger:()=>Ki});var Rc,Eo,Ac,Ki,ie,Q,Wi,Ec,Co,Cc,bc,_c,Sc,bo,wc,Ic,Nc,Vi,nn,Yt,an,Ke,mr,qi,ya,ga,va,_o,ki,Ku,Fg,Pc,kc,Hi,Oc,So,Ta,Lc,Dc,xc,Mc,Gc,Fc,zc,jc,Yi,Bc,Uc,Kc,Wc,Vc,qc,Hc,Yc,Xc,Jc,Zc,Xi,Qc,ef,tf,rf,nf,af,sf,of,lf,uf,cf,ff,df,wo,Io,pf,mf,hf,yf,gf,vf,Tf,$f,zg,Rf,lh,A,xs=bI({"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){(function(e){function t(r){return typeof r=="string"}i(t,"is"),e.is=t})(Rc||(Rc={})),(function(e){function t(r){return typeof r=="string"}i(t,"is"),e.is=t})(Eo||(Eo={})),(function(e){e.MIN_VALUE=-2147483648,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}i(t,"is"),e.is=t})(Ac||(Ac={})),(function(e){e.MIN_VALUE=0,e.MAX_VALUE=2147483647;function t(r){return typeof r=="number"&&e.MIN_VALUE<=r&&r<=e.MAX_VALUE}i(t,"is"),e.is=t})(Ki||(Ki={})),(function(e){function t(n,a){return n===Number.MAX_VALUE&&(n=Ki.MAX_VALUE),a===Number.MAX_VALUE&&(a=Ki.MAX_VALUE),{line:n,character:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&A.uinteger(a.line)&&A.uinteger(a.character)}i(r,"is"),e.is=r})(ie||(ie={})),(function(e){function t(n,a,s,o){if(A.uinteger(n)&&A.uinteger(a)&&A.uinteger(s)&&A.uinteger(o))return{start:ie.create(n,a),end:ie.create(s,o)};if(ie.is(n)&&ie.is(a))return{start:n,end:a};throw new Error(`Range#create called with invalid arguments[${n}, ${a}, ${s}, ${o}]`)}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&ie.is(a.start)&&ie.is(a.end)}i(r,"is"),e.is=r})(Q||(Q={})),(function(e){function t(n,a){return{uri:n,range:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&Q.is(a.range)&&(A.string(a.uri)||A.undefined(a.uri))}i(r,"is"),e.is=r})(Wi||(Wi={})),(function(e){function t(n,a,s,o){return{targetUri:n,targetRange:a,targetSelectionRange:s,originSelectionRange:o}}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&Q.is(a.targetRange)&&A.string(a.targetUri)&&Q.is(a.targetSelectionRange)&&(Q.is(a.originSelectionRange)||A.undefined(a.originSelectionRange))}i(r,"is"),e.is=r})(Ec||(Ec={})),(function(e){function t(n,a,s,o){return{red:n,green:a,blue:s,alpha:o}}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&A.numberRange(a.red,0,1)&&A.numberRange(a.green,0,1)&&A.numberRange(a.blue,0,1)&&A.numberRange(a.alpha,0,1)}i(r,"is"),e.is=r})(Co||(Co={})),(function(e){function t(n,a){return{range:n,color:a}}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&Q.is(a.range)&&Co.is(a.color)}i(r,"is"),e.is=r})(Cc||(Cc={})),(function(e){function t(n,a,s){return{label:n,textEdit:a,additionalTextEdits:s}}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&A.string(a.label)&&(A.undefined(a.textEdit)||Yt.is(a))&&(A.undefined(a.additionalTextEdits)||A.typedArray(a.additionalTextEdits,Yt.is))}i(r,"is"),e.is=r})(bc||(bc={})),(function(e){e.Comment="comment",e.Imports="imports",e.Region="region"})(_c||(_c={})),(function(e){function t(n,a,s,o,l,u){const c={startLine:n,endLine:a};return A.defined(s)&&(c.startCharacter=s),A.defined(o)&&(c.endCharacter=o),A.defined(l)&&(c.kind=l),A.defined(u)&&(c.collapsedText=u),c}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&A.uinteger(a.startLine)&&A.uinteger(a.startLine)&&(A.undefined(a.startCharacter)||A.uinteger(a.startCharacter))&&(A.undefined(a.endCharacter)||A.uinteger(a.endCharacter))&&(A.undefined(a.kind)||A.string(a.kind))}i(r,"is"),e.is=r})(Sc||(Sc={})),(function(e){function t(n,a){return{location:n,message:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&Wi.is(a.location)&&A.string(a.message)}i(r,"is"),e.is=r})(bo||(bo={})),(function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4})(wc||(wc={})),(function(e){e.Unnecessary=1,e.Deprecated=2})(Ic||(Ic={})),(function(e){function t(r){const n=r;return A.objectLiteral(n)&&A.string(n.href)}i(t,"is"),e.is=t})(Nc||(Nc={})),(function(e){function t(n,a,s,o,l,u){let c={range:n,message:a};return A.defined(s)&&(c.severity=s),A.defined(o)&&(c.code=o),A.defined(l)&&(c.source=l),A.defined(u)&&(c.relatedInformation=u),c}i(t,"create"),e.create=t;function r(n){var a;let s=n;return A.defined(s)&&Q.is(s.range)&&A.string(s.message)&&(A.number(s.severity)||A.undefined(s.severity))&&(A.integer(s.code)||A.string(s.code)||A.undefined(s.code))&&(A.undefined(s.codeDescription)||A.string((a=s.codeDescription)===null||a===void 0?void 0:a.href))&&(A.string(s.source)||A.undefined(s.source))&&(A.undefined(s.relatedInformation)||A.typedArray(s.relatedInformation,bo.is))}i(r,"is"),e.is=r})(Vi||(Vi={})),(function(e){function t(n,a,...s){let o={title:n,command:a};return A.defined(s)&&s.length>0&&(o.arguments=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.title)&&A.string(a.command)}i(r,"is"),e.is=r})(nn||(nn={})),(function(e){function t(s,o){return{range:s,newText:o}}i(t,"replace"),e.replace=t;function r(s,o){return{range:{start:s,end:s},newText:o}}i(r,"insert"),e.insert=r;function n(s){return{range:s,newText:""}}i(n,"del"),e.del=n;function a(s){const o=s;return A.objectLiteral(o)&&A.string(o.newText)&&Q.is(o.range)}i(a,"is"),e.is=a})(Yt||(Yt={})),(function(e){function t(n,a,s){const o={label:n};return a!==void 0&&(o.needsConfirmation=a),s!==void 0&&(o.description=s),o}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&A.string(a.label)&&(A.boolean(a.needsConfirmation)||a.needsConfirmation===void 0)&&(A.string(a.description)||a.description===void 0)}i(r,"is"),e.is=r})(an||(an={})),(function(e){function t(r){const n=r;return A.string(n)}i(t,"is"),e.is=t})(Ke||(Ke={})),(function(e){function t(s,o,l){return{range:s,newText:o,annotationId:l}}i(t,"replace"),e.replace=t;function r(s,o,l){return{range:{start:s,end:s},newText:o,annotationId:l}}i(r,"insert"),e.insert=r;function n(s,o){return{range:s,newText:"",annotationId:o}}i(n,"del"),e.del=n;function a(s){const o=s;return Yt.is(o)&&(an.is(o.annotationId)||Ke.is(o.annotationId))}i(a,"is"),e.is=a})(mr||(mr={})),(function(e){function t(n,a){return{textDocument:n,edits:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&Hi.is(a.textDocument)&&Array.isArray(a.edits)}i(r,"is"),e.is=r})(qi||(qi={})),(function(e){function t(n,a,s){let o={kind:"create",uri:n};return a!==void 0&&(a.overwrite!==void 0||a.ignoreIfExists!==void 0)&&(o.options=a),s!==void 0&&(o.annotationId=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return a&&a.kind==="create"&&A.string(a.uri)&&(a.options===void 0||(a.options.overwrite===void 0||A.boolean(a.options.overwrite))&&(a.options.ignoreIfExists===void 0||A.boolean(a.options.ignoreIfExists)))&&(a.annotationId===void 0||Ke.is(a.annotationId))}i(r,"is"),e.is=r})(ya||(ya={})),(function(e){function t(n,a,s,o){let l={kind:"rename",oldUri:n,newUri:a};return s!==void 0&&(s.overwrite!==void 0||s.ignoreIfExists!==void 0)&&(l.options=s),o!==void 0&&(l.annotationId=o),l}i(t,"create"),e.create=t;function r(n){let a=n;return a&&a.kind==="rename"&&A.string(a.oldUri)&&A.string(a.newUri)&&(a.options===void 0||(a.options.overwrite===void 0||A.boolean(a.options.overwrite))&&(a.options.ignoreIfExists===void 0||A.boolean(a.options.ignoreIfExists)))&&(a.annotationId===void 0||Ke.is(a.annotationId))}i(r,"is"),e.is=r})(ga||(ga={})),(function(e){function t(n,a,s){let o={kind:"delete",uri:n};return a!==void 0&&(a.recursive!==void 0||a.ignoreIfNotExists!==void 0)&&(o.options=a),s!==void 0&&(o.annotationId=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return a&&a.kind==="delete"&&A.string(a.uri)&&(a.options===void 0||(a.options.recursive===void 0||A.boolean(a.options.recursive))&&(a.options.ignoreIfNotExists===void 0||A.boolean(a.options.ignoreIfNotExists)))&&(a.annotationId===void 0||Ke.is(a.annotationId))}i(r,"is"),e.is=r})(va||(va={})),(function(e){function t(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(a=>A.string(a.kind)?ya.is(a)||ga.is(a)||va.is(a):qi.is(a)))}i(t,"is"),e.is=t})(_o||(_o={})),ki=class{static{i(this,"TextEditChangeImpl")}constructor(e,t){this.edits=e,this.changeAnnotations=t}insert(e,t,r){let n,a;if(r===void 0?n=Yt.insert(e,t):Ke.is(r)?(a=r,n=mr.insert(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),a=this.changeAnnotations.manage(r),n=mr.insert(e,t,a)),this.edits.push(n),a!==void 0)return a}replace(e,t,r){let n,a;if(r===void 0?n=Yt.replace(e,t):Ke.is(r)?(a=r,n=mr.replace(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),a=this.changeAnnotations.manage(r),n=mr.replace(e,t,a)),this.edits.push(n),a!==void 0)return a}delete(e,t){let r,n;if(t===void 0?r=Yt.del(e):Ke.is(t)?(n=t,r=mr.del(e,t)):(this.assertChangeAnnotations(this.changeAnnotations),n=this.changeAnnotations.manage(t),r=mr.del(e,n)),this.edits.push(r),n!==void 0)return n}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(e===void 0)throw new Error("Text edit change is not configured to manage change annotations.")}},Ku=class{static{i(this,"ChangeAnnotations")}constructor(e){this._annotations=e===void 0?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,t){let r;if(Ke.is(e)?r=e:(r=this.nextId(),t=e),this._annotations[r]!==void 0)throw new Error(`Id ${r} is already in use.`);if(t===void 0)throw new Error(`No annotation provided for id ${r}`);return this._annotations[r]=t,this._size++,r}nextId(){return this._counter++,this._counter.toString()}},Fg=class{static{i(this,"WorkspaceChange")}constructor(e){this._textEditChanges=Object.create(null),e!==void 0?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new Ku(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(t=>{if(qi.is(t)){const r=new ki(t.edits,this._changeAnnotations);this._textEditChanges[t.textDocument.uri]=r}})):e.changes&&Object.keys(e.changes).forEach(t=>{const r=new ki(e.changes[t]);this._textEditChanges[t]=r})):this._workspaceEdit={}}get edit(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(e){if(Hi.is(e)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");const t={uri:e.uri,version:e.version};let r=this._textEditChanges[t.uri];if(!r){const n=[],a={textDocument:t,edits:n};this._workspaceEdit.documentChanges.push(a),r=new ki(n,this._changeAnnotations),this._textEditChanges[t.uri]=r}return r}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");let t=this._textEditChanges[e];if(!t){let r=[];this._workspaceEdit.changes[e]=r,t=new ki(r),this._textEditChanges[e]=t}return t}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new Ku,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,t,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let n;an.is(t)||Ke.is(t)?n=t:r=t;let a,s;if(n===void 0?a=ya.create(e,r):(s=Ke.is(n)?n:this._changeAnnotations.manage(n),a=ya.create(e,r,s)),this._workspaceEdit.documentChanges.push(a),s!==void 0)return s}renameFile(e,t,r,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let a;an.is(r)||Ke.is(r)?a=r:n=r;let s,o;if(a===void 0?s=ga.create(e,t,n):(o=Ke.is(a)?a:this._changeAnnotations.manage(a),s=ga.create(e,t,n,o)),this._workspaceEdit.documentChanges.push(s),o!==void 0)return o}deleteFile(e,t,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let n;an.is(t)||Ke.is(t)?n=t:r=t;let a,s;if(n===void 0?a=va.create(e,r):(s=Ke.is(n)?n:this._changeAnnotations.manage(n),a=va.create(e,r,s)),this._workspaceEdit.documentChanges.push(a),s!==void 0)return s}},(function(e){function t(n){return{uri:n}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.uri)}i(r,"is"),e.is=r})(Pc||(Pc={})),(function(e){function t(n,a){return{uri:n,version:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.uri)&&A.integer(a.version)}i(r,"is"),e.is=r})(kc||(kc={})),(function(e){function t(n,a){return{uri:n,version:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.uri)&&(a.version===null||A.integer(a.version))}i(r,"is"),e.is=r})(Hi||(Hi={})),(function(e){function t(n,a,s,o){return{uri:n,languageId:a,version:s,text:o}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.string(a.uri)&&A.string(a.languageId)&&A.integer(a.version)&&A.string(a.text)}i(r,"is"),e.is=r})(Oc||(Oc={})),(function(e){e.PlainText="plaintext",e.Markdown="markdown";function t(r){const n=r;return n===e.PlainText||n===e.Markdown}i(t,"is"),e.is=t})(So||(So={})),(function(e){function t(r){const n=r;return A.objectLiteral(r)&&So.is(n.kind)&&A.string(n.value)}i(t,"is"),e.is=t})(Ta||(Ta={})),(function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25})(Lc||(Lc={})),(function(e){e.PlainText=1,e.Snippet=2})(Dc||(Dc={})),(function(e){e.Deprecated=1})(xc||(xc={})),(function(e){function t(n,a,s){return{newText:n,insert:a,replace:s}}i(t,"create"),e.create=t;function r(n){const a=n;return a&&A.string(a.newText)&&Q.is(a.insert)&&Q.is(a.replace)}i(r,"is"),e.is=r})(Mc||(Mc={})),(function(e){e.asIs=1,e.adjustIndentation=2})(Gc||(Gc={})),(function(e){function t(r){const n=r;return n&&(A.string(n.detail)||n.detail===void 0)&&(A.string(n.description)||n.description===void 0)}i(t,"is"),e.is=t})(Fc||(Fc={})),(function(e){function t(r){return{label:r}}i(t,"create"),e.create=t})(zc||(zc={})),(function(e){function t(r,n){return{items:r||[],isIncomplete:!!n}}i(t,"create"),e.create=t})(jc||(jc={})),(function(e){function t(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}i(t,"fromPlainText"),e.fromPlainText=t;function r(n){const a=n;return A.string(a)||A.objectLiteral(a)&&A.string(a.language)&&A.string(a.value)}i(r,"is"),e.is=r})(Yi||(Yi={})),(function(e){function t(r){let n=r;return!!n&&A.objectLiteral(n)&&(Ta.is(n.contents)||Yi.is(n.contents)||A.typedArray(n.contents,Yi.is))&&(r.range===void 0||Q.is(r.range))}i(t,"is"),e.is=t})(Bc||(Bc={})),(function(e){function t(r,n){return n?{label:r,documentation:n}:{label:r}}i(t,"create"),e.create=t})(Uc||(Uc={})),(function(e){function t(r,n,...a){let s={label:r};return A.defined(n)&&(s.documentation=n),A.defined(a)?s.parameters=a:s.parameters=[],s}i(t,"create"),e.create=t})(Kc||(Kc={})),(function(e){e.Text=1,e.Read=2,e.Write=3})(Wc||(Wc={})),(function(e){function t(r,n){let a={range:r};return A.number(n)&&(a.kind=n),a}i(t,"create"),e.create=t})(Vc||(Vc={})),(function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26})(qc||(qc={})),(function(e){e.Deprecated=1})(Hc||(Hc={})),(function(e){function t(r,n,a,s,o){let l={name:r,kind:n,location:{uri:s,range:a}};return o&&(l.containerName=o),l}i(t,"create"),e.create=t})(Yc||(Yc={})),(function(e){function t(r,n,a,s){return s!==void 0?{name:r,kind:n,location:{uri:a,range:s}}:{name:r,kind:n,location:{uri:a}}}i(t,"create"),e.create=t})(Xc||(Xc={})),(function(e){function t(n,a,s,o,l,u){let c={name:n,detail:a,kind:s,range:o,selectionRange:l};return u!==void 0&&(c.children=u),c}i(t,"create"),e.create=t;function r(n){let a=n;return a&&A.string(a.name)&&A.number(a.kind)&&Q.is(a.range)&&Q.is(a.selectionRange)&&(a.detail===void 0||A.string(a.detail))&&(a.deprecated===void 0||A.boolean(a.deprecated))&&(a.children===void 0||Array.isArray(a.children))&&(a.tags===void 0||Array.isArray(a.tags))}i(r,"is"),e.is=r})(Jc||(Jc={})),(function(e){e.Empty="",e.QuickFix="quickfix",e.Refactor="refactor",e.RefactorExtract="refactor.extract",e.RefactorInline="refactor.inline",e.RefactorRewrite="refactor.rewrite",e.Source="source",e.SourceOrganizeImports="source.organizeImports",e.SourceFixAll="source.fixAll"})(Zc||(Zc={})),(function(e){e.Invoked=1,e.Automatic=2})(Xi||(Xi={})),(function(e){function t(n,a,s){let o={diagnostics:n};return a!=null&&(o.only=a),s!=null&&(o.triggerKind=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.typedArray(a.diagnostics,Vi.is)&&(a.only===void 0||A.typedArray(a.only,A.string))&&(a.triggerKind===void 0||a.triggerKind===Xi.Invoked||a.triggerKind===Xi.Automatic)}i(r,"is"),e.is=r})(Qc||(Qc={})),(function(e){function t(n,a,s){let o={title:n},l=!0;return typeof a=="string"?(l=!1,o.kind=a):nn.is(a)?o.command=a:o.edit=a,l&&s!==void 0&&(o.kind=s),o}i(t,"create"),e.create=t;function r(n){let a=n;return a&&A.string(a.title)&&(a.diagnostics===void 0||A.typedArray(a.diagnostics,Vi.is))&&(a.kind===void 0||A.string(a.kind))&&(a.edit!==void 0||a.command!==void 0)&&(a.command===void 0||nn.is(a.command))&&(a.isPreferred===void 0||A.boolean(a.isPreferred))&&(a.edit===void 0||_o.is(a.edit))}i(r,"is"),e.is=r})(ef||(ef={})),(function(e){function t(n,a){let s={range:n};return A.defined(a)&&(s.data=a),s}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&Q.is(a.range)&&(A.undefined(a.command)||nn.is(a.command))}i(r,"is"),e.is=r})(tf||(tf={})),(function(e){function t(n,a){return{tabSize:n,insertSpaces:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&A.uinteger(a.tabSize)&&A.boolean(a.insertSpaces)}i(r,"is"),e.is=r})(rf||(rf={})),(function(e){function t(n,a,s){return{range:n,target:a,data:s}}i(t,"create"),e.create=t;function r(n){let a=n;return A.defined(a)&&Q.is(a.range)&&(A.undefined(a.target)||A.string(a.target))}i(r,"is"),e.is=r})(nf||(nf={})),(function(e){function t(n,a){return{range:n,parent:a}}i(t,"create"),e.create=t;function r(n){let a=n;return A.objectLiteral(a)&&Q.is(a.range)&&(a.parent===void 0||e.is(a.parent))}i(r,"is"),e.is=r})(af||(af={})),(function(e){e.namespace="namespace",e.type="type",e.class="class",e.enum="enum",e.interface="interface",e.struct="struct",e.typeParameter="typeParameter",e.parameter="parameter",e.variable="variable",e.property="property",e.enumMember="enumMember",e.event="event",e.function="function",e.method="method",e.macro="macro",e.keyword="keyword",e.modifier="modifier",e.comment="comment",e.string="string",e.number="number",e.regexp="regexp",e.operator="operator",e.decorator="decorator"})(sf||(sf={})),(function(e){e.declaration="declaration",e.definition="definition",e.readonly="readonly",e.static="static",e.deprecated="deprecated",e.abstract="abstract",e.async="async",e.modification="modification",e.documentation="documentation",e.defaultLibrary="defaultLibrary"})(of||(of={})),(function(e){function t(r){const n=r;return A.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}i(t,"is"),e.is=t})(lf||(lf={})),(function(e){function t(n,a){return{range:n,text:a}}i(t,"create"),e.create=t;function r(n){const a=n;return a!=null&&Q.is(a.range)&&A.string(a.text)}i(r,"is"),e.is=r})(uf||(uf={})),(function(e){function t(n,a,s){return{range:n,variableName:a,caseSensitiveLookup:s}}i(t,"create"),e.create=t;function r(n){const a=n;return a!=null&&Q.is(a.range)&&A.boolean(a.caseSensitiveLookup)&&(A.string(a.variableName)||a.variableName===void 0)}i(r,"is"),e.is=r})(cf||(cf={})),(function(e){function t(n,a){return{range:n,expression:a}}i(t,"create"),e.create=t;function r(n){const a=n;return a!=null&&Q.is(a.range)&&(A.string(a.expression)||a.expression===void 0)}i(r,"is"),e.is=r})(ff||(ff={})),(function(e){function t(n,a){return{frameId:n,stoppedLocation:a}}i(t,"create"),e.create=t;function r(n){const a=n;return A.defined(a)&&Q.is(n.stoppedLocation)}i(r,"is"),e.is=r})(df||(df={})),(function(e){e.Type=1,e.Parameter=2;function t(r){return r===1||r===2}i(t,"is"),e.is=t})(wo||(wo={})),(function(e){function t(n){return{value:n}}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&(a.tooltip===void 0||A.string(a.tooltip)||Ta.is(a.tooltip))&&(a.location===void 0||Wi.is(a.location))&&(a.command===void 0||nn.is(a.command))}i(r,"is"),e.is=r})(Io||(Io={})),(function(e){function t(n,a,s){const o={position:n,label:a};return s!==void 0&&(o.kind=s),o}i(t,"create"),e.create=t;function r(n){const a=n;return A.objectLiteral(a)&&ie.is(a.position)&&(A.string(a.label)||A.typedArray(a.label,Io.is))&&(a.kind===void 0||wo.is(a.kind))&&a.textEdits===void 0||A.typedArray(a.textEdits,Yt.is)&&(a.tooltip===void 0||A.string(a.tooltip)||Ta.is(a.tooltip))&&(a.paddingLeft===void 0||A.boolean(a.paddingLeft))&&(a.paddingRight===void 0||A.boolean(a.paddingRight))}i(r,"is"),e.is=r})(pf||(pf={})),(function(e){function t(r){return{kind:"snippet",value:r}}i(t,"createSnippet"),e.createSnippet=t})(mf||(mf={})),(function(e){function t(r,n,a,s){return{insertText:r,filterText:n,range:a,command:s}}i(t,"create"),e.create=t})(hf||(hf={})),(function(e){function t(r){return{items:r}}i(t,"create"),e.create=t})(yf||(yf={})),(function(e){e.Invoked=0,e.Automatic=1})(gf||(gf={})),(function(e){function t(r,n){return{range:r,text:n}}i(t,"create"),e.create=t})(vf||(vf={})),(function(e){function t(r,n){return{triggerKind:r,selectedCompletionInfo:n}}i(t,"create"),e.create=t})(Tf||(Tf={})),(function(e){function t(r){const n=r;return A.objectLiteral(n)&&Eo.is(n.uri)&&A.string(n.name)}i(t,"is"),e.is=t})($f||($f={})),zg=[` `,`\r `,"\r"],(function(e){function t(s,o,l,u){return new lh(s,o,l,u)}i(t,"create"),e.create=t;function r(s){let o=s;return!!(A.defined(o)&&A.string(o.uri)&&(A.undefined(o.languageId)||A.string(o.languageId))&&A.uinteger(o.lineCount)&&A.func(o.getText)&&A.func(o.positionAt)&&A.func(o.offsetAt))}i(r,"is"),e.is=r;function n(s,o){let l=s.getText(),u=a(o,(f,d)=>{let m=f.range.start.line-d.range.start.line;return m===0?f.range.start.character-d.range.start.character:m}),c=l.length;for(let f=u.length-1;f>=0;f--){let d=u[f],m=s.offsetAt(d.range.start),g=s.offsetAt(d.range.end);if(g<=c)l=l.substring(0,m)+d.newText+l.substring(g,l.length);else throw new Error("Overlapping edit");c=m}return l}i(n,"applyEdits"),e.applyEdits=n;function a(s,o){if(s.length<=1)return s;const l=s.length/2|0,u=s.slice(0,l),c=s.slice(l);a(u,o),a(c,o);let f=0,d=0,m=0;for(;f({domains:new Map,transitions:[]}),"createDefaultData"),H=rt(),St=s(()=>H.domains,"getDomains"),Mt=s(()=>H.transitions,"getTransitions"),zt=s(t=>{if(t)for(const e of t){const n=e.domain,a=(e.items??[]).map(c=>({label:c.label}));H.domains.set(n,{name:n,items:a})}},"setDomains"),Lt=s(t=>{t&&(H.transitions=t.filter(e=>e.from===e.to?(O.warn(`Cynefin: self-loop transition on domain "${e.from}" is not meaningful and will be skipped.`),!1):!0).map(e=>({from:e.from,to:e.to,label:e.label||void 0})))},"setTransitions"),Nt=s(()=>U({...Tt.cynefin,...Q().cynefin}),"getConfig"),Pt=s(()=>{At(),H=rt()},"clear"),Y={getDomains:St,getTransitions:Mt,setDomains:zt,setTransitions:Lt,getConfig:Nt,clear:Pt,setAccTitle:vt,getAccTitle:Ct,setDiagramTitle:wt,getDiagramTitle:bt,getAccDescription:$t,setAccDescription:gt},It=s(t=>{xt(t,Y),Y.setDomains(t.domains),Y.setTransitions(t.transitions)},"populate"),Wt={parse:s(async t=>{const e=await Bt("cynefin",t);O.debug(e),It(e)},"parse")};function V(t){let e=t+1831565813|0;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}s(V,"seededRandom");function st(t){let e=0;for(let n=0;n{const n=t/2,a=e/2;return{complex:{cx:n/2,cy:a/2,x:0,y:0,w:n,h:a},complicated:{cx:n+n/2,cy:a/2,x:n,y:0,w:n,h:a},chaotic:{cx:n/2,cy:a+a/2,x:0,y:a,w:n,h:a},clear:{cx:n+n/2,cy:a+a/2,x:n,y:a,w:n,h:a},confusion:{cx:n,cy:a,x:n*.7,y:a*.7,w:n*.6,h:a*.6}}},"getDomainLayouts"),_t=s(()=>{const t=ot(),e=Q();return U(t,e.themeVariables).cynefin},"getCynefinDomainColors"),q=3,Et=s((t,e,n,a)=>{const c=a.db,m=c.getDomains(),v=c.getTransitions(),W=c.getDiagramTitle(),d=c.getAccTitle(),D=c.getAccDescription(),o=c.getConfig(),p=_t();O.debug("Rendering Cynefin diagram");const i=o.width,f=o.height,b=o.padding,h=o.showDomainDescriptions,R=o.boundaryAmplitude,_=i+b*2,E=f+b*2,z={complex:p.complexBg,complicated:p.complicatedBg,clear:p.clearBg,chaotic:p.chaoticBg,confusion:p.confusionBg},k=Dt(e);kt(k,E,_,o.useMaxWidth??!0),k.attr("viewBox",`0 0 ${_} ${E}`),d&&k.append("title").text(d),D&&k.append("desc").text(D);const A=k.append("g").attr("transform",`translate(${b}, ${b})`),F=Rt(i,f),Z=it(o.seed,e),mt=A.append("g").attr("class","cynefin-backgrounds"),X=["complex","complicated","chaotic","clear"];for(const l of X){const r=F[l];mt.append("rect").attr("class","cynefinDomain").attr("x",r.x).attr("y",r.y).attr("width",r.w).attr("height",r.h).attr("fill",z[l]).attr("fill-opacity",.4).attr("stroke","none")}const j=A.append("g").attr("class","cynefin-boundaries");j.append("path").attr("class","cynefinBoundary").attr("d",ct(i,f,Z,R)).attr("fill","none"),j.append("path").attr("class","cynefinBoundary").attr("d",lt(i,f,Z+100,R)).attr("fill","none"),j.append("path").attr("class","cynefinCliff").attr("d",dt(i,f)).attr("fill","none");const pt=i*.15,yt=f*.15;A.append("path").attr("class","cynefinConfusion").attr("d",ft(i/2,f/2,pt,yt)).attr("fill",z.confusion).attr("fill-opacity",.5);const J=A.append("g").attr("class","cynefin-labels");for(const l of X){const r=F[l];J.append("text").attr("class","cynefinDomainLabel").attr("x",r.cx).attr("y",h?r.cy-30:r.cy).attr("text-anchor","middle").attr("dominant-baseline","middle").text(l.charAt(0).toUpperCase()+l.slice(1))}if(J.append("text").attr("class","cynefinDomainLabel").attr("x",i/2).attr("y",h?f/2-10:f/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text("Confusion"),h){const l=A.append("g").attr("class","cynefin-subtitles");for(const r of X){const u=F[r],y=at[r];l.append("text").attr("class","cynefinSubtitle").attr("x",u.cx).attr("y",u.cy-10).attr("text-anchor","middle").attr("dominant-baseline","middle").text(y.model),l.append("text").attr("class","cynefinSubtitle").attr("x",u.cx).attr("y",u.cy+5).attr("text-anchor","middle").attr("dominant-baseline","middle").text(y.practice)}l.append("text").attr("class","cynefinSubtitle").attr("x",i/2).attr("y",f/2+8).attr("text-anchor","middle").attr("dominant-baseline","middle").text(at.confusion.practice)}const K=A.append("g").attr("class","cynefin-items"),T=26,tt=10,ut=["complex","complicated","chaotic","clear","confusion"];for(const l of ut){const r=m.get(l);if(!r||r.items.length===0)continue;const u=F[l],y=l==="confusion";let L=r.items,N=0;y&&r.items.length>q&&(N=r.items.length-q,L=r.items.slice(0,q));let B;if(y){const g=h?22:14;B=u.cy+g}else B=u.cy+(h?25:15);if([...L].forEach((g,S)=>{const w=B+S*(T+4),M=K.append("g"),P=M.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",T/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(g.label);let $=g.label.length*7;const x=P.node();if(x&&typeof x.getBBox=="function"){const G=x.getBBox();G.width>0&&($=G.width)}const C=$+tt*2,I=u.cx-C/2;M.attr("transform",`translate(${I}, ${w})`),M.insert("rect","text").attr("class","cynefinItem").attr("x",0).attr("y",0).attr("width",C).attr("height",T).attr("rx",4).attr("ry",4).attr("fill",z[l]).attr("fill-opacity",.95),P.attr("x",C/2).attr("y",T/2)}),N>0){const g=B+L.length*(T+4),S=`+${N} more`,w=K.append("g"),M=w.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",T/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(S);let P=S.length*7;const $=M.node();if($&&typeof $.getBBox=="function"){const I=$.getBBox();I.width>0&&(P=I.width)}const x=P+tt*2,C=u.cx-x/2;w.attr("transform",`translate(${C}, ${g})`),w.insert("rect","text").attr("class","cynefinItemOverflow").attr("x",0).attr("y",0).attr("width",x).attr("height",T).attr("rx",4).attr("ry",4).attr("fill",z[l]).attr("fill-opacity",.6),M.attr("x",x/2).attr("y",T/2)}}if(v.length>0){const l=k.select("defs").empty()?k.append("defs"):k.select("defs"),r=`cynefin-arrow-${e}`;l.append("marker").attr("id",r).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","cynefinArrowHead");const u=A.append("g").attr("class","cynefin-arrows");v.forEach(y=>{const L=F[y.from],N=F[y.to];if(!L||!N)return;if(y.from===y.to){O.warn(`Cynefin renderer: skipping self-loop on domain "${y.from}"`);return}const B=L.cx,g=L.cy,S=N.cx,w=N.cy,M=(B+S)/2,P=(g+w)/2,$=S-B,x=w-g,C=Math.sqrt($*$+x*x),I=C*.15,G=-x/C,ht=$/C,et=M+G*I,nt=P+ht*I;u.append("path").attr("class","cynefinArrowLine").attr("d",`M${B},${g} Q${et},${nt} ${S},${w}`).attr("fill","none").attr("marker-end",`url(#${r})`),y.label&&u.append("text").attr("class","cynefinArrowLabel").attr("x",et).attr("y",nt-6).attr("text-anchor","middle").attr("dominant-baseline","auto").text(y.label)})}W&&A.append("text").attr("class","cynefinTitle").attr("x",i/2).attr("y",-b/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text(W)},"draw"),Ft={draw:Et},Vt=s(()=>{const t=ot(),e=Q();return U(t,e.themeVariables).cynefin},"getCynefinTheme"),Ht=s(()=>{const t=Vt();return` - .cynefinDomain { - stroke: none; - } - .cynefinDomainLabel { - font-size: ${t.domainFontSize}px; - font-weight: bold; - fill: ${t.labelColor}; - } - .cynefinSubtitle { - font-size: ${t.itemFontSize-1}px; - fill: ${t.textColor}; - font-style: italic; - } - .cynefinItem { - fill-opacity: 0.95; - stroke: ${t.boundaryColor}; - stroke-width: 1; - } - .cynefinItemText { - font-size: ${t.itemFontSize}px; - fill: ${t.textColor}; - } - .cynefinItemOverflow { - fill-opacity: 0.6; - stroke: ${t.boundaryColor}; - stroke-width: 1; - stroke-dasharray: 3 2; - } - .cynefinBoundary { - stroke: ${t.boundaryColor}; - stroke-width: ${t.boundaryWidth}; - stroke-dasharray: 6 3; - } - .cynefinCliff { - stroke: ${t.cliffColor}; - stroke-width: ${t.cliffWidth}; - } - .cynefinConfusion { - stroke: ${t.boundaryColor}; - stroke-width: 1.5; - stroke-dasharray: 4 2; - } - .cynefinArrowLine { - stroke: ${t.arrowColor}; - stroke-width: ${t.arrowWidth}; - fill: none; - } - .cynefinArrowHead { - fill: ${t.arrowColor}; - stroke: none; - } - .cynefinArrowLabel { - font-size: ${t.itemFontSize-1}px; - fill: ${t.textColor}; - } - .cynefinTitle { - font-size: ${t.domainFontSize+2}px; - font-weight: bold; - fill: ${t.labelColor}; - } - `},"styles"),Gt=Ht,Ut={parser:Wt,db:Y,renderer:Ft,styles:Gt};export{Ut as diagram}; diff --git a/apps/kimi-code/dist-web/assets/cynefinDiagram-TSTJHNR4-PvbCPnDc.js b/apps/kimi-code/dist-web/assets/cynefinDiagram-TSTJHNR4-PvbCPnDc.js new file mode 100644 index 0000000000..af059e5831 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/cynefinDiagram-TSTJHNR4-PvbCPnDc.js @@ -0,0 +1,62 @@ +import{p as xt}from"./chunk-JWPE2WC7-CFaSk12U.js";import{s as gt,g as $t,p as bt,o as wt,a as Ct,b as vt,_ as s,l as O,F as Dt,e as kt,q as Tt,B as U,z as Q,D as At,W as ot}from"./mermaid.core-AN7v7N47.js";import{p as Bt}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import"./index-Dnz6Zudc.js";var rt=s(()=>({domains:new Map,transitions:[]}),"createDefaultData"),H=rt(),St=s(()=>H.domains,"getDomains"),Mt=s(()=>H.transitions,"getTransitions"),zt=s(t=>{if(t)for(const e of t){const n=e.domain,a=(e.items??[]).map(c=>({label:c.label}));H.domains.set(n,{name:n,items:a})}},"setDomains"),Lt=s(t=>{t&&(H.transitions=t.filter(e=>e.from===e.to?(O.warn(`Cynefin: self-loop transition on domain "${e.from}" is not meaningful and will be skipped.`),!1):!0).map(e=>({from:e.from,to:e.to,label:e.label||void 0})))},"setTransitions"),Nt=s(()=>U({...At.cynefin,...Q().cynefin}),"getConfig"),Pt=s(()=>{Tt(),H=rt()},"clear"),Y={getDomains:St,getTransitions:Mt,setDomains:zt,setTransitions:Lt,getConfig:Nt,clear:Pt,setAccTitle:vt,getAccTitle:Ct,setDiagramTitle:wt,getDiagramTitle:bt,getAccDescription:$t,setAccDescription:gt},Wt=s(t=>{xt(t,Y),Y.setDomains(t.domains),Y.setTransitions(t.transitions)},"populate"),It={parse:s(async t=>{const e=await Bt("cynefin",t);O.debug(e),Wt(e)},"parse")};function E(t){let e=t+1831565813|0;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}s(E,"seededRandom");function st(t){let e=0;for(let n=0;n{const n=t/2,a=e/2;return{complex:{cx:n/2,cy:a/2,x:0,y:0,w:n,h:a},complicated:{cx:n+n/2,cy:a/2,x:n,y:0,w:n,h:a},chaotic:{cx:n/2,cy:a+a/2,x:0,y:a,w:n,h:a},clear:{cx:n+n/2,cy:a+a/2,x:n,y:a,w:n,h:a},confusion:{cx:n,cy:a,x:n*.7,y:a*.7,w:n*.6,h:a*.6}}},"getDomainLayouts"),Rt=s(()=>{const t=ot(),e=Q();return U(t,e.themeVariables).cynefin},"getCynefinDomainColors"),q=3,_t=s((t,e,n,a)=>{const c=a.db,m=c.getDomains(),v=c.getTransitions(),I=c.getDiagramTitle(),d=c.getAccTitle(),D=c.getAccDescription(),o=c.getConfig(),p=Rt();O.debug("Rendering Cynefin diagram");const i=o.width,f=o.height,b=o.padding,h=o.showDomainDescriptions,F=o.boundaryAmplitude,R=i+b*2,_=f+b*2,z={complex:p.complexBg,complicated:p.complicatedBg,clear:p.clearBg,chaotic:p.chaoticBg,confusion:p.confusionBg},k=Dt(e);kt(k,_,R,o.useMaxWidth??!0),k.attr("viewBox",`0 0 ${R} ${_}`),d&&k.append("title").text(d),D&&k.append("desc").text(D);const T=k.append("g").attr("transform",`translate(${b}, ${b})`),V=Ft(i,f),Z=it(o.seed,e),mt=T.append("g").attr("class","cynefin-backgrounds"),X=["complex","complicated","chaotic","clear"];for(const l of X){const r=V[l];mt.append("rect").attr("class","cynefinDomain").attr("x",r.x).attr("y",r.y).attr("width",r.w).attr("height",r.h).attr("fill",z[l]).attr("fill-opacity",.4).attr("stroke","none")}const j=T.append("g").attr("class","cynefin-boundaries");j.append("path").attr("class","cynefinBoundary").attr("d",ct(i,f,Z,F)).attr("fill","none"),j.append("path").attr("class","cynefinBoundary").attr("d",lt(i,f,Z+100,F)).attr("fill","none"),j.append("path").attr("class","cynefinCliff").attr("d",dt(i,f)).attr("fill","none");const pt=i*.15,yt=f*.15;T.append("path").attr("class","cynefinConfusion").attr("d",ft(i/2,f/2,pt,yt)).attr("fill",z.confusion).attr("fill-opacity",.5);const J=T.append("g").attr("class","cynefin-labels");for(const l of X){const r=V[l];J.append("text").attr("class","cynefinDomainLabel").attr("x",r.cx).attr("y",h?r.cy-30:r.cy).attr("text-anchor","middle").attr("dominant-baseline","middle").text(l.charAt(0).toUpperCase()+l.slice(1))}if(J.append("text").attr("class","cynefinDomainLabel").attr("x",i/2).attr("y",h?f/2-10:f/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text("Confusion"),h){const l=T.append("g").attr("class","cynefin-subtitles");for(const r of X){const u=V[r],y=at[r];l.append("text").attr("class","cynefinSubtitle").attr("x",u.cx).attr("y",u.cy-10).attr("text-anchor","middle").attr("dominant-baseline","middle").text(y.model),l.append("text").attr("class","cynefinSubtitle").attr("x",u.cx).attr("y",u.cy+5).attr("text-anchor","middle").attr("dominant-baseline","middle").text(y.practice)}l.append("text").attr("class","cynefinSubtitle").attr("x",i/2).attr("y",f/2+8).attr("text-anchor","middle").attr("dominant-baseline","middle").text(at.confusion.practice)}const K=T.append("g").attr("class","cynefin-items"),A=26,tt=10,ut=["complex","complicated","chaotic","clear","confusion"];for(const l of ut){const r=m.get(l);if(!r||r.items.length===0)continue;const u=V[l],y=l==="confusion";let L=r.items,N=0;y&&r.items.length>q&&(N=r.items.length-q,L=r.items.slice(0,q));let B;if(y){const g=h?22:14;B=u.cy+g}else B=u.cy+(h?25:15);if([...L].forEach((g,S)=>{const w=B+S*(A+4),M=K.append("g"),P=M.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",A/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(g.label);let $=g.label.length*7;const x=P.node();if(x&&typeof x.getBBox=="function"){const G=x.getBBox();G.width>0&&($=G.width)}const C=$+tt*2,W=u.cx-C/2;M.attr("transform",`translate(${W}, ${w})`),M.insert("rect","text").attr("class","cynefinItem").attr("x",0).attr("y",0).attr("width",C).attr("height",A).attr("rx",4).attr("ry",4).attr("fill",z[l]).attr("fill-opacity",.95),P.attr("x",C/2).attr("y",A/2)}),N>0){const g=B+L.length*(A+4),S=`+${N} more`,w=K.append("g"),M=w.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",A/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(S);let P=S.length*7;const $=M.node();if($&&typeof $.getBBox=="function"){const W=$.getBBox();W.width>0&&(P=W.width)}const x=P+tt*2,C=u.cx-x/2;w.attr("transform",`translate(${C}, ${g})`),w.insert("rect","text").attr("class","cynefinItemOverflow").attr("x",0).attr("y",0).attr("width",x).attr("height",A).attr("rx",4).attr("ry",4).attr("fill",z[l]).attr("fill-opacity",.6),M.attr("x",x/2).attr("y",A/2)}}if(v.length>0){const l=k.select("defs").empty()?k.append("defs"):k.select("defs"),r=`cynefin-arrow-${e}`;l.append("marker").attr("id",r).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","cynefinArrowHead");const u=T.append("g").attr("class","cynefin-arrows");v.forEach(y=>{const L=V[y.from],N=V[y.to];if(!L||!N)return;if(y.from===y.to){O.warn(`Cynefin renderer: skipping self-loop on domain "${y.from}"`);return}const B=L.cx,g=L.cy,S=N.cx,w=N.cy,M=(B+S)/2,P=(g+w)/2,$=S-B,x=w-g,C=Math.sqrt($*$+x*x),W=C*.15,G=-x/C,ht=$/C,et=M+G*W,nt=P+ht*W;u.append("path").attr("class","cynefinArrowLine").attr("d",`M${B},${g} Q${et},${nt} ${S},${w}`).attr("fill","none").attr("marker-end",`url(#${r})`),y.label&&u.append("text").attr("class","cynefinArrowLabel").attr("x",et).attr("y",nt-6).attr("text-anchor","middle").attr("dominant-baseline","auto").text(y.label)})}I&&T.append("text").attr("class","cynefinTitle").attr("x",i/2).attr("y",-b/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text(I)},"draw"),Vt={draw:_t},Et=s(()=>{const t=ot(),e=Q();return U(t,e.themeVariables).cynefin},"getCynefinTheme"),Ht=s(()=>{const t=Et();return` + .cynefinDomain { + stroke: none; + } + .cynefinDomainLabel { + font-size: ${t.domainFontSize}px; + font-weight: bold; + fill: ${t.labelColor}; + } + .cynefinSubtitle { + font-size: ${t.itemFontSize-1}px; + fill: ${t.textColor}; + font-style: italic; + } + .cynefinItem { + fill-opacity: 0.95; + stroke: ${t.boundaryColor}; + stroke-width: 1; + } + .cynefinItemText { + font-size: ${t.itemFontSize}px; + fill: ${t.textColor}; + } + .cynefinItemOverflow { + fill-opacity: 0.6; + stroke: ${t.boundaryColor}; + stroke-width: 1; + stroke-dasharray: 3 2; + } + .cynefinBoundary { + stroke: ${t.boundaryColor}; + stroke-width: ${t.boundaryWidth}; + stroke-dasharray: 6 3; + } + .cynefinCliff { + stroke: ${t.cliffColor}; + stroke-width: ${t.cliffWidth}; + } + .cynefinConfusion { + stroke: ${t.boundaryColor}; + stroke-width: 1.5; + stroke-dasharray: 4 2; + } + .cynefinArrowLine { + stroke: ${t.arrowColor}; + stroke-width: ${t.arrowWidth}; + fill: none; + } + .cynefinArrowHead { + fill: ${t.arrowColor}; + stroke: none; + } + .cynefinArrowLabel { + font-size: ${t.itemFontSize-1}px; + fill: ${t.textColor}; + } + .cynefinTitle { + font-size: ${t.domainFontSize+2}px; + font-weight: bold; + fill: ${t.labelColor}; + } + `},"styles"),Gt=Ht,qt={parser:It,db:Y,renderer:Vt,styles:Gt};export{qt as diagram}; diff --git a/apps/kimi-code/dist-web/assets/dagre-VKFMJZFB-BzVLGs_J.js b/apps/kimi-code/dist-web/assets/dagre-VKFMJZFB-BzVLGs_J.js new file mode 100644 index 0000000000..3b3a4d87b1 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/dagre-VKFMJZFB-BzVLGs_J.js @@ -0,0 +1,4 @@ +import{c as O,w as I,a as J,f as P,b as E,s as A}from"./chunk-RYQCIY6F-MtH8gVIz.js";import{_ as w,am as v,an as D,ao as H,ap as Y,l,c as _,aq as W,ar as $,ag as j,as as q,ah as R,af as F,at as z,au as K,av as G}from"./mermaid.core-AN7v7N47.js";import{G as Q}from"./graph-DOmOIIwC.js";import{l as U}from"./layout-D-LzfAck.js";import"./map-DxJ2ADlA.js";import"./index-Dnz6Zudc.js";var C=w((s,t,g)=>Math.max(t,Math.min(g,s)),"clamp"),B=w((s="TB")=>{switch(s){case"BT":return"bottom";case"LR":return"right";case"RL":return"left";case"TB":default:return"top"}},"getDefaultSelfLoopSide"),V=w(s=>s==="flowchart"||s==="flowchart-v2"||s==="stateDiagram","shouldMergeSelfLoopSegments"),Z=w((s,t,g,y,c)=>{const o=[],r=new Set;if(g.forEach(({start:i,end:n})=>{i!==y&&r.add(i),n!==y&&r.add(n)}),r.forEach(i=>{const n=s.node(i);typeof n?.x=="number"&&typeof n?.y=="number"&&o.push(n)}),o.length===0&&g.forEach(({edge:i})=>{(i.points??[]).forEach(n=>{typeof n?.x=="number"&&typeof n?.y=="number"&&o.push(n)})}),o.length===0)return B(c);const f=o.reduce((i,n)=>({x:i.x+n.x/o.length,y:i.y+n.y/o.length}),{x:0,y:0}),h=f.x-t.x,a=f.y-t.y;return Math.abs(h)>Math.abs(a)?h>0?"right":"left":Math.abs(a)>0?a>0?"bottom":"top":B(c)},"getSelfLoopSide"),ee=w((s,t="top",g=0,y=0)=>{const c=s.x,o=s.y-g,r=s.width/2,f=s.height/2,h=Math.max(36,Math.min(100,s.width*.8)),a=C(Math.max(y,s.width*.35),36,h),i=C(Math.min(s.width,s.height)*.45,24,48);switch(t){case"bottom":{const n=o+f;return[{x:c-a/2,y:n},{x:c-a/2,y:n+i},{x:c+a/2,y:n+i},{x:c+a/2,y:n}]}case"right":{const n=c+r;return[{x:n,y:o-a/2},{x:n+i,y:o-a/2},{x:n+i,y:o+a/2},{x:n,y:o+a/2}]}case"left":{const n=c-r;return[{x:n,y:o-a/2},{x:n-i,y:o-a/2},{x:n-i,y:o+a/2},{x:n,y:o+a/2}]}case"top":default:{const n=o-f;return[{x:c-a/2,y:n},{x:c-a/2,y:n-i},{x:c+a/2,y:n-i},{x:c+a/2,y:n}]}}},"getSelfLoopPoints"),te=w((s,t,g="top",y=0,c={})=>{const r=s.x,f=s.y-y,h=c.width??0,a=c.height??0;switch(g){case"bottom":return{x:r,y:Math.max(...t.map(i=>i.y))+a/2+4};case"right":return{x:Math.max(...t.map(i=>i.x))+h/2+4,y:f};case"left":return{x:Math.min(...t.map(i=>i.x))-h/2-4,y:f};case"top":default:return{x:r,y:Math.min(...t.map(i=>i.y))-a/2-4}}},"getSelfLoopLabelPosition"),ne=w((s,t=0,{mergeSelfLoops:g=!0}={})=>{const y=new Map,c=[],o=s.graph()?.rankdir;return s.edges().forEach(r=>{const f=s.edge(r);if(g&&f.selfLoop){const h=f.selfLoop.id;y.has(h)||y.set(h,[]),y.get(h).push({edge:f,start:r.v,end:r.w})}else c.push({edge:f,start:r.v,end:r.w})}),y.forEach(r=>{if(r.length!==3){r.forEach(L=>c.push(L));return}r.sort((L,d)=>L.edge.selfLoop.order-d.edge.selfLoop.order);const[f,h,a]=r,i=f.edge.originalEdge??h.edge.originalEdge??a.edge.originalEdge??h.edge,n=s.node(i.start);if(!n){r.forEach(L=>c.push(L));return}const p={width:h.edge.width,height:h.edge.height},m=Z(s,n,r,i.start,o),X=ee(n,m,t,p.width??0),S=te(n,X,m,t,p),b={...h.edge,...i,id:i.id,points:X,start:i.start,end:i.end,x:S.x,y:S.y,width:p.width,height:p.height,labelStyle:h.edge.labelStyle,fromCluster:f.edge.fromCluster??h.edge.fromCluster??a.edge.fromCluster,toCluster:f.edge.toCluster??h.edge.toCluster??a.edge.toCluster};delete b.selfLoop,delete b.originalEdge,c.push({edge:b,start:b.start,end:b.end})}),c},"getEdgesToRender"),T=w(async(s,t,g,y,c,o)=>{l.warn("Graph in recursive render:XAX",I(t),c);const r=t.graph().rankdir;l.trace("Dir in recursive render - dir:",r);const f=s.insert("g").attr("class","root");t.nodes()?l.info("Recursive render XXX",t.nodes()):l.info("No nodes found for",t),t.edges().length>0&&l.info("Recursive edges",t.edge(t.edges()[0]));const h=f.insert("g").attr("class","clusters"),a=f.insert("g").attr("class","edgePaths"),i=f.insert("g").attr("class","edgeLabels"),n=f.insert("g").attr("class","nodes"),p=V(g);await Promise.all(t.nodes().map(async function(d){const e=t.node(d);if(c!==void 0){const u=JSON.parse(JSON.stringify(c.clusterData));l.trace(`Setting data for parent cluster XXX + Node.id = `,d,` + data=`,u.height,` +Parent cluster`,c.height),t.setNode(c.id,u),t.parent(d)||(l.trace("Setting parent",d,c.id),t.setParent(d,c.id,u))}if(l.info("(Insert) Node XXX"+d+": "+JSON.stringify(t.node(d))),e?.clusterNode){l.info("Cluster identified XBX",d,e.width,t.node(d));const{ranksep:u,nodesep:x}=t.graph();e.graph.setGraph({...e.graph.graph(),ranksep:u+25,nodesep:x});const N=await T(n,e.graph,g,y,t.node(d),o),M=N.elem;W(e,M),e.diff=N.diff||0,l.info("New compound node after recursive render XAX",d,"width",e.width,"height",e.height),$(M,e)}else t.children(d).length>0?(l.trace("Cluster - the non recursive path XBX",d,e.id,e,e.width,"Graph:",t),l.trace(P(e.id,t)),E.set(e.id,{id:P(e.id,t),node:e})):(l.trace("Node - the non recursive path XAX",d,n,t.node(d),r),await j(n,t.node(d),{config:o,dir:r}))})),await w(async()=>{const d=t.edges().map(async function(e){const u=t.edge(e.v,e.w,e.name);if(l.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),l.info("Edge "+e.v+" -> "+e.w+": ",e," ",JSON.stringify(t.edge(e))),l.info("Fix",E,"ids:",e.v,e.w,"Translating: ",E.get(e.v),E.get(e.w)),p&&u.selfLoop){if(u.selfLoop.order!==1)return;const x=u.id;u.id=u.selfLoop.id,await G(i,u),u.id=x;return}await G(i,u)});await Promise.all(d)},"processEdges")(),l.info("Graph before layout:",JSON.stringify(I(t))),l.info("############################################# XXX"),l.info("### Layout ### XXX"),l.info("############################################# XXX"),U(t),l.info("Graph after layout:",JSON.stringify(I(t)));let X=0,{subGraphTitleTotalMargin:S}=q(o);await Promise.all(A(t).map(async function(d){const e=t.node(d);if(l.info("Position XBX => "+d+": ("+e.x,","+e.y,") width: ",e.width," height: ",e.height),e?.clusterNode)e.y+=S,l.info("A tainted cluster node XBX1",d,e.id,e.width,e.height,e.x,e.y,t.parent(d)),E.get(e.id).node=e,R(e);else if(t.children(d).length>0){l.info("A pure cluster node XBX1",d,e.id,e.x,e.y,e.width,e.height,t.parent(d)),e.height+=S,t.node(e.parentId);const u=e?.padding/2||0,x=e?.labelBBox?.height||0,N=x-u||0;l.debug("OffsetY",N,"labelHeight",x,"halfPadding",u),await F(h,e),E.get(e.id).node=e}else{const u=t.node(e.parentId);e.y+=S/2,l.info("A regular node XBX1 - using the padding",e.id,"parent",e.parentId,e.width,e.height,e.x,e.y,"offsetY",e.offsetY,"parent",u,u?.offsetY,e),R(e)}}));const b=S/2;return ne(t,b,{mergeSelfLoops:p}).forEach(function({edge:d,start:e,end:u}){l.info("Edge "+e+" -> "+u+": "+JSON.stringify(d),d),d.points.forEach(k=>k.y+=b);const x=t.node(e),N=t.node(u),M=z(a,d,E,g,x,N,y);K(d,M)}),t.nodes().forEach(function(d){const e=t.node(d);l.info(d,e.type,e.diff),e.isGroup&&(X=e.diff)}),l.warn("Returning from recursive render XAX",f,X),{elem:f,diff:X}},"recursiveRender"),ce=w(async(s,t)=>{const g=new Q({multigraph:!0,compound:!0}).setGraph({rankdir:s.direction,nodesep:s.config?.nodeSpacing||s.config?.flowchart?.nodeSpacing||s.nodeSpacing,ranksep:s.config?.rankSpacing||s.config?.flowchart?.rankSpacing||s.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),y=t.select("g");v(y,s.markers,s.type,s.diagramId),D(),H(),Y(),O(),s.nodes.forEach(o=>{g.setNode(o.id,{...o}),o.parentId&&g.setParent(o.id,o.parentId)}),l.debug("Edges:",s.edges),s.edges.forEach(o=>{if(o.start===o.end){const r=o.start,f=r+"---"+r+"---1",h=r+"---"+r+"---2",a=g.node(r);g.setNode(f,{domId:f,id:f,parentId:a.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),g.setParent(f,a.parentId),g.setNode(h,{domId:h,id:h,parentId:a.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),g.setParent(h,a.parentId);const i=structuredClone(o),n=structuredClone(o),p=structuredClone(o),m=structuredClone(o);n.originalEdge=i,n.selfLoop={id:i.id,order:0},p.originalEdge=i,p.selfLoop={id:i.id,order:1},m.originalEdge=i,m.selfLoop={id:i.id,order:2},n.label="",n.arrowTypeEnd="none",n.endLabelLeft="",n.endLabelRight="",n.startLabelLeft="",n.id=r+"-cyclic-special-1",p.startLabelRight="",p.startLabelLeft="",p.endLabelLeft="",p.endLabelRight="",p.arrowTypeStart="none",p.arrowTypeEnd="none",p.id=r+"-cyclic-special-mid",m.label="",m.startLabelRight="",m.startLabelLeft="",m.arrowTypeStart="none",a.isGroup&&(n.fromCluster=r,m.toCluster=r),m.id=r+"-cyclic-special-2",m.arrowTypeStart="none",g.setEdge(r,f,n,r+"-cyclic-special-0"),g.setEdge(f,h,p,r+"-cyclic-special-1"),g.setEdge(h,r,m,r+"-cyclic-special-2")}else g.setEdge(o.start,o.end,{...o},o.id)}),l.warn("Graph at first:",JSON.stringify(I(g))),J(g),l.warn("Graph after XAX:",JSON.stringify(I(g)));const c=_();await T(y,g,s.type,s.diagramId,void 0,c)},"render");export{ne as getEdgesToRender,ce as render}; diff --git a/apps/kimi-code/dist-web/assets/dagre-VKFMJZFB-EsZwpbfr.js b/apps/kimi-code/dist-web/assets/dagre-VKFMJZFB-EsZwpbfr.js deleted file mode 100644 index 8abf83e2bb..0000000000 --- a/apps/kimi-code/dist-web/assets/dagre-VKFMJZFB-EsZwpbfr.js +++ /dev/null @@ -1,4 +0,0 @@ -import{c as O,w as I,a as J,f as P,b as E,s as A}from"./chunk-RYQCIY6F-KpXFcslK.js";import{_ as w,am as v,an as D,ao as H,ap as Y,l,c as _,aq as W,ar as $,ag as j,as as q,ah as R,af as F,at as z,au as K,av as G}from"./mermaid.core-Dxfcv_J5.js";import{G as Q}from"./graph-DOmOIIwC.js";import{l as U}from"./layout-D-LzfAck.js";import"./map-DxJ2ADlA.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var C=w((s,t,g)=>Math.max(t,Math.min(g,s)),"clamp"),B=w((s="TB")=>{switch(s){case"BT":return"bottom";case"LR":return"right";case"RL":return"left";case"TB":default:return"top"}},"getDefaultSelfLoopSide"),V=w(s=>s==="flowchart"||s==="flowchart-v2"||s==="stateDiagram","shouldMergeSelfLoopSegments"),Z=w((s,t,g,m,c)=>{const o=[],r=new Set;if(g.forEach(({start:i,end:n})=>{i!==m&&r.add(i),n!==m&&r.add(n)}),r.forEach(i=>{const n=s.node(i);typeof n?.x=="number"&&typeof n?.y=="number"&&o.push(n)}),o.length===0&&g.forEach(({edge:i})=>{(i.points??[]).forEach(n=>{typeof n?.x=="number"&&typeof n?.y=="number"&&o.push(n)})}),o.length===0)return B(c);const f=o.reduce((i,n)=>({x:i.x+n.x/o.length,y:i.y+n.y/o.length}),{x:0,y:0}),h=f.x-t.x,a=f.y-t.y;return Math.abs(h)>Math.abs(a)?h>0?"right":"left":Math.abs(a)>0?a>0?"bottom":"top":B(c)},"getSelfLoopSide"),ee=w((s,t="top",g=0,m=0)=>{const c=s.x,o=s.y-g,r=s.width/2,f=s.height/2,h=Math.max(36,Math.min(100,s.width*.8)),a=C(Math.max(m,s.width*.35),36,h),i=C(Math.min(s.width,s.height)*.45,24,48);switch(t){case"bottom":{const n=o+f;return[{x:c-a/2,y:n},{x:c-a/2,y:n+i},{x:c+a/2,y:n+i},{x:c+a/2,y:n}]}case"right":{const n=c+r;return[{x:n,y:o-a/2},{x:n+i,y:o-a/2},{x:n+i,y:o+a/2},{x:n,y:o+a/2}]}case"left":{const n=c-r;return[{x:n,y:o-a/2},{x:n-i,y:o-a/2},{x:n-i,y:o+a/2},{x:n,y:o+a/2}]}case"top":default:{const n=o-f;return[{x:c-a/2,y:n},{x:c-a/2,y:n-i},{x:c+a/2,y:n-i},{x:c+a/2,y:n}]}}},"getSelfLoopPoints"),te=w((s,t,g="top",m=0,c={})=>{const r=s.x,f=s.y-m,h=c.width??0,a=c.height??0;switch(g){case"bottom":return{x:r,y:Math.max(...t.map(i=>i.y))+a/2+4};case"right":return{x:Math.max(...t.map(i=>i.x))+h/2+4,y:f};case"left":return{x:Math.min(...t.map(i=>i.x))-h/2-4,y:f};case"top":default:return{x:r,y:Math.min(...t.map(i=>i.y))-a/2-4}}},"getSelfLoopLabelPosition"),ne=w((s,t=0,{mergeSelfLoops:g=!0}={})=>{const m=new Map,c=[],o=s.graph()?.rankdir;return s.edges().forEach(r=>{const f=s.edge(r);if(g&&f.selfLoop){const h=f.selfLoop.id;m.has(h)||m.set(h,[]),m.get(h).push({edge:f,start:r.v,end:r.w})}else c.push({edge:f,start:r.v,end:r.w})}),m.forEach(r=>{if(r.length!==3){r.forEach(L=>c.push(L));return}r.sort((L,d)=>L.edge.selfLoop.order-d.edge.selfLoop.order);const[f,h,a]=r,i=f.edge.originalEdge??h.edge.originalEdge??a.edge.originalEdge??h.edge,n=s.node(i.start);if(!n){r.forEach(L=>c.push(L));return}const p={width:h.edge.width,height:h.edge.height},y=Z(s,n,r,i.start,o),X=ee(n,y,t,p.width??0),S=te(n,X,y,t,p),b={...h.edge,...i,id:i.id,points:X,start:i.start,end:i.end,x:S.x,y:S.y,width:p.width,height:p.height,labelStyle:h.edge.labelStyle,fromCluster:f.edge.fromCluster??h.edge.fromCluster??a.edge.fromCluster,toCluster:f.edge.toCluster??h.edge.toCluster??a.edge.toCluster};delete b.selfLoop,delete b.originalEdge,c.push({edge:b,start:b.start,end:b.end})}),c},"getEdgesToRender"),T=w(async(s,t,g,m,c,o)=>{l.warn("Graph in recursive render:XAX",I(t),c);const r=t.graph().rankdir;l.trace("Dir in recursive render - dir:",r);const f=s.insert("g").attr("class","root");t.nodes()?l.info("Recursive render XXX",t.nodes()):l.info("No nodes found for",t),t.edges().length>0&&l.info("Recursive edges",t.edge(t.edges()[0]));const h=f.insert("g").attr("class","clusters"),a=f.insert("g").attr("class","edgePaths"),i=f.insert("g").attr("class","edgeLabels"),n=f.insert("g").attr("class","nodes"),p=V(g);await Promise.all(t.nodes().map(async function(d){const e=t.node(d);if(c!==void 0){const u=JSON.parse(JSON.stringify(c.clusterData));l.trace(`Setting data for parent cluster XXX - Node.id = `,d,` - data=`,u.height,` -Parent cluster`,c.height),t.setNode(c.id,u),t.parent(d)||(l.trace("Setting parent",d,c.id),t.setParent(d,c.id,u))}if(l.info("(Insert) Node XXX"+d+": "+JSON.stringify(t.node(d))),e?.clusterNode){l.info("Cluster identified XBX",d,e.width,t.node(d));const{ranksep:u,nodesep:x}=t.graph();e.graph.setGraph({...e.graph.graph(),ranksep:u+25,nodesep:x});const N=await T(n,e.graph,g,m,t.node(d),o),M=N.elem;W(e,M),e.diff=N.diff||0,l.info("New compound node after recursive render XAX",d,"width",e.width,"height",e.height),$(M,e)}else t.children(d).length>0?(l.trace("Cluster - the non recursive path XBX",d,e.id,e,e.width,"Graph:",t),l.trace(P(e.id,t)),E.set(e.id,{id:P(e.id,t),node:e})):(l.trace("Node - the non recursive path XAX",d,n,t.node(d),r),await j(n,t.node(d),{config:o,dir:r}))})),await w(async()=>{const d=t.edges().map(async function(e){const u=t.edge(e.v,e.w,e.name);if(l.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),l.info("Edge "+e.v+" -> "+e.w+": ",e," ",JSON.stringify(t.edge(e))),l.info("Fix",E,"ids:",e.v,e.w,"Translating: ",E.get(e.v),E.get(e.w)),p&&u.selfLoop){if(u.selfLoop.order!==1)return;const x=u.id;u.id=u.selfLoop.id,await G(i,u),u.id=x;return}await G(i,u)});await Promise.all(d)},"processEdges")(),l.info("Graph before layout:",JSON.stringify(I(t))),l.info("############################################# XXX"),l.info("### Layout ### XXX"),l.info("############################################# XXX"),U(t),l.info("Graph after layout:",JSON.stringify(I(t)));let X=0,{subGraphTitleTotalMargin:S}=q(o);await Promise.all(A(t).map(async function(d){const e=t.node(d);if(l.info("Position XBX => "+d+": ("+e.x,","+e.y,") width: ",e.width," height: ",e.height),e?.clusterNode)e.y+=S,l.info("A tainted cluster node XBX1",d,e.id,e.width,e.height,e.x,e.y,t.parent(d)),E.get(e.id).node=e,R(e);else if(t.children(d).length>0){l.info("A pure cluster node XBX1",d,e.id,e.x,e.y,e.width,e.height,t.parent(d)),e.height+=S,t.node(e.parentId);const u=e?.padding/2||0,x=e?.labelBBox?.height||0,N=x-u||0;l.debug("OffsetY",N,"labelHeight",x,"halfPadding",u),await F(h,e),E.get(e.id).node=e}else{const u=t.node(e.parentId);e.y+=S/2,l.info("A regular node XBX1 - using the padding",e.id,"parent",e.parentId,e.width,e.height,e.x,e.y,"offsetY",e.offsetY,"parent",u,u?.offsetY,e),R(e)}}));const b=S/2;return ne(t,b,{mergeSelfLoops:p}).forEach(function({edge:d,start:e,end:u}){l.info("Edge "+e+" -> "+u+": "+JSON.stringify(d),d),d.points.forEach(k=>k.y+=b);const x=t.node(e),N=t.node(u),M=z(a,d,E,g,x,N,m);K(d,M)}),t.nodes().forEach(function(d){const e=t.node(d);l.info(d,e.type,e.diff),e.isGroup&&(X=e.diff)}),l.warn("Returning from recursive render XAX",f,X),{elem:f,diff:X}},"recursiveRender"),le=w(async(s,t)=>{const g=new Q({multigraph:!0,compound:!0}).setGraph({rankdir:s.direction,nodesep:s.config?.nodeSpacing||s.config?.flowchart?.nodeSpacing||s.nodeSpacing,ranksep:s.config?.rankSpacing||s.config?.flowchart?.rankSpacing||s.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),m=t.select("g");v(m,s.markers,s.type,s.diagramId),D(),H(),Y(),O(),s.nodes.forEach(o=>{g.setNode(o.id,{...o}),o.parentId&&g.setParent(o.id,o.parentId)}),l.debug("Edges:",s.edges),s.edges.forEach(o=>{if(o.start===o.end){const r=o.start,f=r+"---"+r+"---1",h=r+"---"+r+"---2",a=g.node(r);g.setNode(f,{domId:f,id:f,parentId:a.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),g.setParent(f,a.parentId),g.setNode(h,{domId:h,id:h,parentId:a.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),g.setParent(h,a.parentId);const i=structuredClone(o),n=structuredClone(o),p=structuredClone(o),y=structuredClone(o);n.originalEdge=i,n.selfLoop={id:i.id,order:0},p.originalEdge=i,p.selfLoop={id:i.id,order:1},y.originalEdge=i,y.selfLoop={id:i.id,order:2},n.label="",n.arrowTypeEnd="none",n.endLabelLeft="",n.endLabelRight="",n.startLabelLeft="",n.id=r+"-cyclic-special-1",p.startLabelRight="",p.startLabelLeft="",p.endLabelLeft="",p.endLabelRight="",p.arrowTypeStart="none",p.arrowTypeEnd="none",p.id=r+"-cyclic-special-mid",y.label="",y.startLabelRight="",y.startLabelLeft="",y.arrowTypeStart="none",a.isGroup&&(n.fromCluster=r,y.toCluster=r),y.id=r+"-cyclic-special-2",y.arrowTypeStart="none",g.setEdge(r,f,n,r+"-cyclic-special-0"),g.setEdge(f,h,p,r+"-cyclic-special-1"),g.setEdge(h,r,y,r+"-cyclic-special-2")}else g.setEdge(o.start,o.end,{...o},o.id)}),l.warn("Graph at first:",JSON.stringify(I(g))),J(g),l.warn("Graph after XAX:",JSON.stringify(I(g)));const c=_();await T(m,g,s.type,s.diagramId,void 0,c)},"render");export{ne as getEdgesToRender,le as render}; diff --git a/apps/kimi-code/dist-web/assets/diagram-FQU43EPY-Bk8FGDJs.js b/apps/kimi-code/dist-web/assets/diagram-FQU43EPY-rDegz4b3.js similarity index 57% rename from apps/kimi-code/dist-web/assets/diagram-FQU43EPY-Bk8FGDJs.js rename to apps/kimi-code/dist-web/assets/diagram-FQU43EPY-rDegz4b3.js index c018655123..1bf057df77 100644 --- a/apps/kimi-code/dist-web/assets/diagram-FQU43EPY-Bk8FGDJs.js +++ b/apps/kimi-code/dist-web/assets/diagram-FQU43EPY-rDegz4b3.js @@ -1,3 +1,3 @@ -import{p as re}from"./chunk-JWPE2WC7-0N6Q_J0q.js";import{o as oe,n as se,s as de,g as le,a as ce,b as me,_ as o,l as g,c as T,d as ue,z as xe,p as fe,A as ge,y as M,B as he,i as y,w as P,ak as pe}from"./mermaid.core-Dxfcv_J5.js";import{p as be,i as ve}from"./cynefin-VYW2F7L2-DQGCJnlE.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var $="position frame",D="frame positioned",S="position relation",N="relation positioned",we=o(function(e){g.debug("options str",e)},"setOptions"),ye=o(function(){return{}},"getOptions"),Pe=o(function(){C(),fe()},"clear");function C(){B={}}o(C,"reset");var Se=he.eventmodeling,ke=o(()=>ge({...Se,...M().eventmodeling}),"getConfig"),B={};function O(){let e=Fe;const{ast:n}=B,t=E();if(!n)throw new Error("No data for EventModel");return n.frames.forEach((i,a)=>{const r=G(i,n.dataEntities,t);e=v(e,{$kind:$,index:a,frame:i,textProps:r});let d;K(i)?(g.debug("source frame",i.sourceFrames),d=n.frames.filter(l=>i.sourceFrames.some(c=>c.$refText===l.name)),d.forEach(l=>{e=v(e,{$kind:S,index:a,frame:i,sourceFrame:l})})):e=v(e,{$kind:S,index:a,frame:i})}),e={...e,sortedSwimlanesArray:A(e.swimlanes)},e}o(O,"getState");function I(e){B.ast=e}o(I,"setAst");var s={swimlaneMinHeight:70,swimlanePadding:15,swimlaneGap:10,boxPadding:10,boxOverlap:90,boxDefaultY:0,boxMinWidth:80,boxMaxWidth:450,boxMinHeight:80,boxMaxHeight:750,contentStartX:250,textMaxWidth:430,boxTextFontWeight:"bold",boxTextPadding:10,swimlaneTextFontWeight:"bold",labelUiAutomation:"UI/Automation",labelUiAutomationPrefix:"UI/A: ",labelCommandReadModel:"Command/Read Model",labelCommandReadModelPrefix:"C/RM: ",labelEvents:"Events",labelEventsPrefix:"Stream: "};function E(){return s}o(E,"getDiagramProps");var Fe={boxes:[],swimlanes:{},relations:[],maxR:0,sortedSwimlanesArray:[]};function W(e){const n=e.split(".");if(n.length===2)return n[0]}o(W,"extractNamespace");function H(e){const n=e.split(".");return n.length===2?n[1]:e}o(H,"extractName");function U(e,n){if(!(!n||n.length===0))return Object.values(e).find(t=>t.namespace===n)}o(U,"findSwimlaneByNamespace");function b(e,n,t){return Math.max(n,...Object.keys(e).filter(i=>{const a=Number.parseInt(i);return a>n&&aNumber.parseInt(i)))+1}o(b,"findNextAvailableIndex");function _(e,n){const t=W(e.entityIdentifier),i=U(n,t);switch(e.modelEntityType){case"ui":case"pcr":case"processor":return i?{index:i.index,label:i.namespace||s.labelUiAutomation}:t?{index:b(n,0,100),label:s.labelUiAutomationPrefix+t}:{index:0,label:s.labelUiAutomation};case"rmo":case"readmodel":case"cmd":case"command":return i?{index:i.index,label:i.namespace||s.labelCommandReadModel}:t?{index:b(n,100,200),label:s.labelCommandReadModelPrefix+t}:{index:100,label:s.labelCommandReadModel};case"evt":case"event":default:return i?{index:i.index,label:i.namespace||s.labelEvents}:t?{index:b(n,200,300),label:s.labelEventsPrefix+t}:{index:200,label:s.labelEvents}}}o(_,"calculateSwimlaneProps");function L(e){const{themeVariables:n}=M();switch(e.modelEntityType){case"ui":return{fill:n.emUiFill??"white",stroke:n.emUiStroke??"#dbdada"};case"pcr":case"processor":return{fill:n.emProcessorFill??"#edb3f6",stroke:n.emProcessorStroke??"#b88cbf"};case"rmo":case"readmodel":return{fill:n.emReadModelFill??"#d3f1a2",stroke:n.emReadModelStroke??"#a3b732"};case"cmd":case"command":return{fill:n.emCommandFill??"#bcd6fe",stroke:n.emCommandStroke??"#679ac3"};case"evt":case"event":return{fill:n.emEventFill??"#ffb778",stroke:n.emEventStroke??"#c19a0f"};default:return{fill:"red",stroke:"black"}}}o(L,"calculateEntityVisualProps");function G(e,n,t){const i=M(),a=y(H(e.entityIdentifier)??"",i);let r;const d={fontSize:16,fontWeight:700,fontFamily:'"trebuchet ms", verdana, arial, sans-serif',joinWith:"
"};let c=`${P(a,t.textMaxWidth,d)}`;if(e.dataInlineValue&&(r=e.dataInlineValue,r=r.substring(r.indexOf("{")+1),r=r.substring(0,r.lastIndexOf("}")-1),r=y(r,i),r=P(r,t.textMaxWidth,d),r=r.replaceAll(" "," ")),e.dataReference){const p=n.find(w=>w.name===e.dataReference?.$refText);p&&(r=p.dataBlockValue,r=r.substring(r.indexOf(`{ -`)+2),r=r.substring(0,r.lastIndexOf("}")-1),r=y(r,i),r=P(r,t.textMaxWidth,d),r=r.replaceAll(" "," "),r+="
")}const m=r!==void 0;m&&(c+=`

${r}`);const x={fontSize:d.fontSize,fontWeight:d.fontWeight,fontFamily:d.fontFamily},u=pe(c,x),h=m?u.width/3:u.width,f={content:c,width:h,height:u.height};return g.debug(`[${e.name}] ${e.entityIdentifier} text`,f),f}o(G,"calculateTextProps");function V(e,n){const t=n,i=L(t.frame),a={width:t.textProps.width+2*s.boxTextPadding,height:t.textProps.height+2*s.boxTextPadding};return[{$kind:D,frame:t.frame,index:t.index,visual:i,dimension:a,textProps:t.textProps}]}o(V,"decidePositionFrame");function X(e,n,t){return n===void 0?s.contentStartX:n.index===e.index&&e.r?e.r+s.boxPadding:t===void 0?s.contentStartX:t.r-s.boxOverlap+s.boxPadding}o(X,"calculateX");function j(e,n){const t=[...e.map(i=>i.r),n];return Math.max(...t)}o(j,"calculateMaxRight");function A(e){return Object.values(e).sort((n,t)=>n.index-t.index)}o(A,"sortedSwimlanesArray");function Y(e,n){const t=n,i=_(t.frame,e.swimlanes);let a;i.index in e.swimlanes?a=e.swimlanes[i.index]:a={index:i.index,label:i.label,r:0,y:i.index*s.swimlaneMinHeight+s.swimlaneGap,height:s.swimlaneMinHeight,maxHeight:s.swimlaneMinHeight};const r=e.boxes.length>0?e.boxes[e.boxes.length-1]:void 0,d=e.previousSwimlaneNumber!==void 0?e.swimlanes[e.previousSwimlaneNumber]:void 0,l={width:Math.max(s.boxMinWidth,Math.min(s.boxMaxWidth,t.dimension.width))+2*s.boxPadding,height:Math.max(s.boxMinHeight,Math.min(s.boxMaxHeight,t.dimension.height))+2*s.boxPadding},c=X(a,d,r),m=c+l.width+s.boxPadding,x=j(Object.values(e.swimlanes),m);a.r=c+l.width,a.maxHeight=Math.max(a.maxHeight,l.height),a.height=Math.max(s.swimlaneMinHeight,a.maxHeight)+2*s.swimlanePadding;const u={x:c,y:s.swimlanePadding+a.y,r:m,dimension:l,leftSibling:!1,swimlane:a,visual:t.visual,text:t.textProps.content,frame:t.frame,index:t.index},h={...e,boxes:[...e.boxes,u],swimlanes:{...e.swimlanes,[`${a.index}`]:a},previousSwimlaneNumber:i.index,previousFrame:t.frame,maxR:x},f=A(h.swimlanes);f.length>0&&(f[0].y=0);for(let p=1;p0}o(K,"hasSourceFrame");function k(e,n){if(n!=null)return e.find(t=>t.frame.name===n.name)}o(k,"findBoxByFrame");function q(e,n,t){if(!(t<0))for(let i=t;i>=0;i--){const a=e[i];if(a.swimlane.index!==n)return a}}o(q,"findBoxByLineIndex");function J(e,n){const t=n;if(ve(t.frame)||z(t.index,t.frame))return[];const i=k(e.boxes,t.frame);if(i===void 0)throw new Error(`Target box not found for frame ${t.frame.name}`);let a;return t.sourceFrame?a=k(e.boxes,t.sourceFrame):a=q(e.boxes,i.swimlane.index,t.index-1),a===void 0?[]:[{$kind:N,frame:t.frame,index:t.index,sourceBox:a,targetBox:i}]}o(J,"decidePositionRelation");function Q(e,n){const t=n,i={visual:{fill:"none",stroke:"#000"},source:{x:t.sourceBox.x,y:t.sourceBox.y},target:{x:t.targetBox.x,y:t.targetBox.y},sourceBox:t.sourceBox,targetBox:t.targetBox};return{...e,relations:[...e.relations,i]}}o(Q,"evolveRelationPositioned");var Me={[$]:V,[S]:J},Be={[D]:Y,[N]:Q};function Z(e,n){const t=Me[n.$kind];if(t==null)return[];const i=t(e,n);return g.debug("decided events",i),i}o(Z,"decide");function ee(e,n){const t=n.reduce((i,a)=>{const r=Be[a.$kind];return r==null?i:r(i,a)},e);return g.debug("evolve events",{state:e,newState:t,events:n}),t}o(ee,"evolve");function v(e,n){const t=Z(e,n);return ee(e,t)}o(v,"dispatch");var F={getConfig:ke,setOptions:we,getOptions:ye,clear:Pe,setAccTitle:me,getAccTitle:ce,getAccDescription:le,setAccDescription:de,setDiagramTitle:se,getDiagramTitle:oe,setAst:I,getDiagramProps:E,getState:O},Ee={parse:o(async e=>{const n=await be("eventmodeling",e);g.debug(n),F.setAst(n),re(n,F)},"parse")},Ae=T(),Re=Ae?.eventmodeling;function te(e,n){return t=>{const i=t.swimlane.y+n.swimlanePadding,a=e.append("g").attr("class","em-box");a.append("rect").attr("x",t.x).attr("y",i).attr("rx","3").attr("width",t.dimension.width).attr("height",t.dimension.height).attr("stroke",t.visual.stroke).attr("fill",t.visual.fill),a.append("foreignObject").attr("x",t.x+n.boxPadding).attr("y",i+10).attr("width",t.dimension.width-2*n.boxPadding).attr("height",t.dimension.height-2*n.boxPadding).append("xhtml:div").style("display","table").style("height","100%").style("width","100%").append("span").style("display","table-cell").style("text-align","center").style("vertical-align","middle").html(t.text)}}o(te,"renderD3Box");function ne(e,n){return e>n}o(ne,"dirUpwards");function ie(e,n,t,i){return a=>{const r=a.sourceBox.swimlane.y+n.swimlanePadding,d=a.targetBox.swimlane.y+n.swimlanePadding,l=ne(r,d),c=a.sourceBox.x+a.sourceBox.dimension.width*2/3,m=a.targetBox.x+a.targetBox.dimension.width/3;let x,u;g.debug(`rendering relation up=${l} for `,{sourceBox:a.sourceBox,targetBox:a.targetBox}),l?(x=r,u=d+a.targetBox.dimension.height):(x=r+a.sourceBox.dimension.height,u=d);const h=i.emRelationStroke??a.visual.stroke;e.append("path").attr("class","em-relation").attr("fill",a.visual.fill).attr("stroke",h).attr("stroke-width","1").attr("marker-end",`url(#${t})`).attr("d",`M${c} ${x} L${m} ${u}`)}}o(ie,"renderD3Relation");function ae(e,n,t,i){return a=>{const r=e.append("g").attr("class","em-swimlane"),d=i.emSwimlaneBackgroundOdd??"rgb(250,250,250)",l=i.emSwimlaneBackgroundStroke??"rgb(240,240,240)";r.append("rect").attr("x",0).attr("y",a.y).attr("rx","3").attr("width",n+t.swimlanePadding).attr("height",a.height).attr("fill",d).attr("stroke",l),r.append("text").attr("font-weight",t.swimlaneTextFontWeight).attr("x",30).attr("y",a.y+30).text(a.label)}}o(ae,"renderD3Swimlane");var Te=o(function(e,n,t,i){if(g.debug("in eventmodeling renderer",e+` -`,"id:",n,t),!Re)throw new Error("EventModeling config not found");const a=i.db,{themeVariables:r,eventmodeling:d}=T(),l=ue(`[id="${n}"]`),c=a.getDiagramProps(),m=a.getState(),x=`em-arrowhead-${n}`,u=r.emArrowhead??"#000000";m.sortedSwimlanesArray.forEach(ae(l,m.maxR,c,r)),m.boxes.forEach(te(l,c)),m.relations.forEach(ie(l,c,x,r)),l.append("defs").append("marker").attr("id",x).attr("markerWidth","10").attr("markerHeight","7").attr("refX","10").attr("refY","3.5").attr("orient","auto").append("polygon").attr("points","0 0, 10 3.5, 0 7").attr("fill",u),xe(void 0,l,d?.padding??30,d?.useMaxWidth)},"draw"),$e={draw:Te},De=o(e=>"","getStyles"),Ne=De,Ue={parser:Ee,db:F,renderer:$e,styles:Ne};export{Ue as diagram}; +import{p as re}from"./chunk-JWPE2WC7-CFaSk12U.js";import{p as oe,o as se,s as de,g as le,a as ce,b as me,_ as o,l as g,c as D,d as ue,A as xe,q as fe,B as ge,z as M,D as he,i as y,w as P,ak as pe}from"./mermaid.core-AN7v7N47.js";import{p as be,i as ve}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import"./index-Dnz6Zudc.js";var T="position frame",$="frame positioned",S="position relation",N="relation positioned",we=o(function(e){g.debug("options str",e)},"setOptions"),ye=o(function(){return{}},"getOptions"),Pe=o(function(){C(),fe()},"clear");function C(){B={}}o(C,"reset");var Se=he.eventmodeling,ke=o(()=>ge({...Se,...M().eventmodeling}),"getConfig"),B={};function O(){let e=Fe;const{ast:n}=B,t=E();if(!n)throw new Error("No data for EventModel");return n.frames.forEach((i,a)=>{const r=G(i,n.dataEntities,t);e=v(e,{$kind:T,index:a,frame:i,textProps:r});let d;K(i)?(g.debug("source frame",i.sourceFrames),d=n.frames.filter(l=>i.sourceFrames.some(c=>c.$refText===l.name)),d.forEach(l=>{e=v(e,{$kind:S,index:a,frame:i,sourceFrame:l})})):e=v(e,{$kind:S,index:a,frame:i})}),e={...e,sortedSwimlanesArray:A(e.swimlanes)},e}o(O,"getState");function I(e){B.ast=e}o(I,"setAst");var s={swimlaneMinHeight:70,swimlanePadding:15,swimlaneGap:10,boxPadding:10,boxOverlap:90,boxDefaultY:0,boxMinWidth:80,boxMaxWidth:450,boxMinHeight:80,boxMaxHeight:750,contentStartX:250,textMaxWidth:430,boxTextFontWeight:"bold",boxTextPadding:10,swimlaneTextFontWeight:"bold",labelUiAutomation:"UI/Automation",labelUiAutomationPrefix:"UI/A: ",labelCommandReadModel:"Command/Read Model",labelCommandReadModelPrefix:"C/RM: ",labelEvents:"Events",labelEventsPrefix:"Stream: "};function E(){return s}o(E,"getDiagramProps");var Fe={boxes:[],swimlanes:{},relations:[],maxR:0,sortedSwimlanesArray:[]};function W(e){const n=e.split(".");if(n.length===2)return n[0]}o(W,"extractNamespace");function H(e){const n=e.split(".");return n.length===2?n[1]:e}o(H,"extractName");function U(e,n){if(!(!n||n.length===0))return Object.values(e).find(t=>t.namespace===n)}o(U,"findSwimlaneByNamespace");function b(e,n,t){return Math.max(n,...Object.keys(e).filter(i=>{const a=Number.parseInt(i);return a>n&&aNumber.parseInt(i)))+1}o(b,"findNextAvailableIndex");function _(e,n){const t=W(e.entityIdentifier),i=U(n,t);switch(e.modelEntityType){case"ui":case"pcr":case"processor":return i?{index:i.index,label:i.namespace||s.labelUiAutomation}:t?{index:b(n,0,100),label:s.labelUiAutomationPrefix+t}:{index:0,label:s.labelUiAutomation};case"rmo":case"readmodel":case"cmd":case"command":return i?{index:i.index,label:i.namespace||s.labelCommandReadModel}:t?{index:b(n,100,200),label:s.labelCommandReadModelPrefix+t}:{index:100,label:s.labelCommandReadModel};case"evt":case"event":default:return i?{index:i.index,label:i.namespace||s.labelEvents}:t?{index:b(n,200,300),label:s.labelEventsPrefix+t}:{index:200,label:s.labelEvents}}}o(_,"calculateSwimlaneProps");function L(e){const{themeVariables:n}=M();switch(e.modelEntityType){case"ui":return{fill:n.emUiFill??"white",stroke:n.emUiStroke??"#dbdada"};case"pcr":case"processor":return{fill:n.emProcessorFill??"#edb3f6",stroke:n.emProcessorStroke??"#b88cbf"};case"rmo":case"readmodel":return{fill:n.emReadModelFill??"#d3f1a2",stroke:n.emReadModelStroke??"#a3b732"};case"cmd":case"command":return{fill:n.emCommandFill??"#bcd6fe",stroke:n.emCommandStroke??"#679ac3"};case"evt":case"event":return{fill:n.emEventFill??"#ffb778",stroke:n.emEventStroke??"#c19a0f"};default:return{fill:"red",stroke:"black"}}}o(L,"calculateEntityVisualProps");function G(e,n,t){const i=M(),a=y(H(e.entityIdentifier)??"",i);let r;const d={fontSize:16,fontWeight:700,fontFamily:'"trebuchet ms", verdana, arial, sans-serif',joinWith:"
"};let c=`${P(a,t.textMaxWidth,d)}`;if(e.dataInlineValue&&(r=e.dataInlineValue,r=r.substring(r.indexOf("{")+1),r=r.substring(0,r.lastIndexOf("}")-1),r=y(r,i),r=P(r,t.textMaxWidth,d),r=r.replaceAll(" "," ")),e.dataReference){const p=n.find(w=>w.name===e.dataReference?.$refText);p&&(r=p.dataBlockValue,r=r.substring(r.indexOf(`{ +`)+2),r=r.substring(0,r.lastIndexOf("}")-1),r=y(r,i),r=P(r,t.textMaxWidth,d),r=r.replaceAll(" "," "),r+="
")}const m=r!==void 0;m&&(c+=`

${r}`);const x={fontSize:d.fontSize,fontWeight:d.fontWeight,fontFamily:d.fontFamily},u=pe(c,x),h=m?u.width/3:u.width,f={content:c,width:h,height:u.height};return g.debug(`[${e.name}] ${e.entityIdentifier} text`,f),f}o(G,"calculateTextProps");function V(e,n){const t=n,i=L(t.frame),a={width:t.textProps.width+2*s.boxTextPadding,height:t.textProps.height+2*s.boxTextPadding};return[{$kind:$,frame:t.frame,index:t.index,visual:i,dimension:a,textProps:t.textProps}]}o(V,"decidePositionFrame");function X(e,n,t){return n===void 0?s.contentStartX:n.index===e.index&&e.r?e.r+s.boxPadding:t===void 0?s.contentStartX:t.r-s.boxOverlap+s.boxPadding}o(X,"calculateX");function j(e,n){const t=[...e.map(i=>i.r),n];return Math.max(...t)}o(j,"calculateMaxRight");function A(e){return Object.values(e).sort((n,t)=>n.index-t.index)}o(A,"sortedSwimlanesArray");function Y(e,n){const t=n,i=_(t.frame,e.swimlanes);let a;i.index in e.swimlanes?a=e.swimlanes[i.index]:a={index:i.index,label:i.label,r:0,y:i.index*s.swimlaneMinHeight+s.swimlaneGap,height:s.swimlaneMinHeight,maxHeight:s.swimlaneMinHeight};const r=e.boxes.length>0?e.boxes[e.boxes.length-1]:void 0,d=e.previousSwimlaneNumber!==void 0?e.swimlanes[e.previousSwimlaneNumber]:void 0,l={width:Math.max(s.boxMinWidth,Math.min(s.boxMaxWidth,t.dimension.width))+2*s.boxPadding,height:Math.max(s.boxMinHeight,Math.min(s.boxMaxHeight,t.dimension.height))+2*s.boxPadding},c=X(a,d,r),m=c+l.width+s.boxPadding,x=j(Object.values(e.swimlanes),m);a.r=c+l.width,a.maxHeight=Math.max(a.maxHeight,l.height),a.height=Math.max(s.swimlaneMinHeight,a.maxHeight)+2*s.swimlanePadding;const u={x:c,y:s.swimlanePadding+a.y,r:m,dimension:l,leftSibling:!1,swimlane:a,visual:t.visual,text:t.textProps.content,frame:t.frame,index:t.index},h={...e,boxes:[...e.boxes,u],swimlanes:{...e.swimlanes,[`${a.index}`]:a},previousSwimlaneNumber:i.index,previousFrame:t.frame,maxR:x},f=A(h.swimlanes);f.length>0&&(f[0].y=0);for(let p=1;p0}o(K,"hasSourceFrame");function k(e,n){if(n!=null)return e.find(t=>t.frame.name===n.name)}o(k,"findBoxByFrame");function q(e,n,t){if(!(t<0))for(let i=t;i>=0;i--){const a=e[i];if(a.swimlane.index!==n)return a}}o(q,"findBoxByLineIndex");function J(e,n){const t=n;if(ve(t.frame)||z(t.index,t.frame))return[];const i=k(e.boxes,t.frame);if(i===void 0)throw new Error(`Target box not found for frame ${t.frame.name}`);let a;return t.sourceFrame?a=k(e.boxes,t.sourceFrame):a=q(e.boxes,i.swimlane.index,t.index-1),a===void 0?[]:[{$kind:N,frame:t.frame,index:t.index,sourceBox:a,targetBox:i}]}o(J,"decidePositionRelation");function Q(e,n){const t=n,i={visual:{fill:"none",stroke:"#000"},source:{x:t.sourceBox.x,y:t.sourceBox.y},target:{x:t.targetBox.x,y:t.targetBox.y},sourceBox:t.sourceBox,targetBox:t.targetBox};return{...e,relations:[...e.relations,i]}}o(Q,"evolveRelationPositioned");var Me={[T]:V,[S]:J},Be={[$]:Y,[N]:Q};function Z(e,n){const t=Me[n.$kind];if(t==null)return[];const i=t(e,n);return g.debug("decided events",i),i}o(Z,"decide");function ee(e,n){const t=n.reduce((i,a)=>{const r=Be[a.$kind];return r==null?i:r(i,a)},e);return g.debug("evolve events",{state:e,newState:t,events:n}),t}o(ee,"evolve");function v(e,n){const t=Z(e,n);return ee(e,t)}o(v,"dispatch");var F={getConfig:ke,setOptions:we,getOptions:ye,clear:Pe,setAccTitle:me,getAccTitle:ce,getAccDescription:le,setAccDescription:de,setDiagramTitle:se,getDiagramTitle:oe,setAst:I,getDiagramProps:E,getState:O},Ee={parse:o(async e=>{const n=await be("eventmodeling",e);g.debug(n),F.setAst(n),re(n,F)},"parse")},Ae=D(),Re=Ae?.eventmodeling;function te(e,n){return t=>{const i=t.swimlane.y+n.swimlanePadding,a=e.append("g").attr("class","em-box");a.append("rect").attr("x",t.x).attr("y",i).attr("rx","3").attr("width",t.dimension.width).attr("height",t.dimension.height).attr("stroke",t.visual.stroke).attr("fill",t.visual.fill),a.append("foreignObject").attr("x",t.x+n.boxPadding).attr("y",i+10).attr("width",t.dimension.width-2*n.boxPadding).attr("height",t.dimension.height-2*n.boxPadding).append("xhtml:div").style("display","table").style("height","100%").style("width","100%").append("span").style("display","table-cell").style("text-align","center").style("vertical-align","middle").html(t.text)}}o(te,"renderD3Box");function ne(e,n){return e>n}o(ne,"dirUpwards");function ie(e,n,t,i){return a=>{const r=a.sourceBox.swimlane.y+n.swimlanePadding,d=a.targetBox.swimlane.y+n.swimlanePadding,l=ne(r,d),c=a.sourceBox.x+a.sourceBox.dimension.width*2/3,m=a.targetBox.x+a.targetBox.dimension.width/3;let x,u;g.debug(`rendering relation up=${l} for `,{sourceBox:a.sourceBox,targetBox:a.targetBox}),l?(x=r,u=d+a.targetBox.dimension.height):(x=r+a.sourceBox.dimension.height,u=d);const h=i.emRelationStroke??a.visual.stroke;e.append("path").attr("class","em-relation").attr("fill",a.visual.fill).attr("stroke",h).attr("stroke-width","1").attr("marker-end",`url(#${t})`).attr("d",`M${c} ${x} L${m} ${u}`)}}o(ie,"renderD3Relation");function ae(e,n,t,i){return a=>{const r=e.append("g").attr("class","em-swimlane"),d=i.emSwimlaneBackgroundOdd??"rgb(250,250,250)",l=i.emSwimlaneBackgroundStroke??"rgb(240,240,240)";r.append("rect").attr("x",0).attr("y",a.y).attr("rx","3").attr("width",n+t.swimlanePadding).attr("height",a.height).attr("fill",d).attr("stroke",l),r.append("text").attr("font-weight",t.swimlaneTextFontWeight).attr("x",30).attr("y",a.y+30).text(a.label)}}o(ae,"renderD3Swimlane");var De=o(function(e,n,t,i){if(g.debug("in eventmodeling renderer",e+` +`,"id:",n,t),!Re)throw new Error("EventModeling config not found");const a=i.db,{themeVariables:r,eventmodeling:d}=D(),l=ue(`[id="${n}"]`),c=a.getDiagramProps(),m=a.getState(),x=`em-arrowhead-${n}`,u=r.emArrowhead??"#000000";m.sortedSwimlanesArray.forEach(ae(l,m.maxR,c,r)),m.boxes.forEach(te(l,c)),m.relations.forEach(ie(l,c,x,r)),l.append("defs").append("marker").attr("id",x).attr("markerWidth","10").attr("markerHeight","7").attr("refX","10").attr("refY","3.5").attr("orient","auto").append("polygon").attr("points","0 0, 10 3.5, 0 7").attr("fill",u),xe(void 0,l,d?.padding??30,d?.useMaxWidth)},"draw"),Te={draw:De},$e=o(e=>"","getStyles"),Ne=$e,He={parser:Ee,db:F,renderer:Te,styles:Ne};export{He as diagram}; diff --git a/apps/kimi-code/dist-web/assets/diagram-G47NLZAW-B_XI4_LC.js b/apps/kimi-code/dist-web/assets/diagram-G47NLZAW-B_XI4_LC.js deleted file mode 100644 index 1116b5c1bb..0000000000 --- a/apps/kimi-code/dist-web/assets/diagram-G47NLZAW-B_XI4_LC.js +++ /dev/null @@ -1,24 +0,0 @@ -import{p as me}from"./chunk-JWPE2WC7-0N6Q_J0q.js";import{_ as w,E as ge,y as te,A as Q,D as ye,e as Se,l as ee,be as B,d as j,b as ve,a as xe,n as be,o as we,g as Ce,s as Te,B as Le,bf as $e,p as Ae}from"./mermaid.core-Dxfcv_J5.js";import{s as Fe}from"./chunk-VR4S4FIN-gihGNGO1.js";import{p as Ne}from"./cynefin-VYW2F7L2-DQGCJnlE.js";import{b as I}from"./defaultLocale-DX6XiGOO.js";import{o as K}from"./ordinal-Cboi1Yqb.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";import"./init-Gi6I4Gst.js";function Me(e){var a=0,n=e.children,l=n&&n.length;if(!l)a=1;else for(;--l>=0;)a+=n[l].value;e.value=a}function _e(){return this.eachAfter(Me)}function ke(e,a){let n=-1;for(const l of this)e.call(a,l,++n,this);return this}function ze(e,a){for(var n=this,l=[n],r,o,h=-1;n=l.pop();)if(e.call(a,n,++h,this),r=n.children)for(o=r.length-1;o>=0;--o)l.push(r[o]);return this}function Ve(e,a){for(var n=this,l=[n],r=[],o,h,d,g=-1;n=l.pop();)if(r.push(n),o=n.children)for(h=0,d=o.length;h=0;)n+=l[r].value;a.value=n})}function Be(e){return this.eachBefore(function(a){a.children&&a.children.sort(e)})}function Ee(e){for(var a=this,n=Re(a,e),l=[a];a!==n;)a=a.parent,l.push(a);for(var r=l.length;e!==n;)l.splice(r,0,e),e=e.parent;return l}function Re(e,a){if(e===a)return e;var n=e.ancestors(),l=a.ancestors(),r=null;for(e=n.pop(),a=l.pop();e===a;)r=e,e=n.pop(),a=l.pop();return r}function We(){for(var e=this,a=[e];e=e.parent;)a.push(e);return a}function He(){return Array.from(this)}function Ie(){var e=[];return this.eachBefore(function(a){a.children||e.push(a)}),e}function Oe(){var e=this,a=[];return e.each(function(n){n!==e&&a.push({source:n.parent,target:n})}),a}function*Ge(){var e=this,a,n=[e],l,r,o;do for(a=n.reverse(),n=[];e=a.pop();)if(yield e,l=e.children)for(r=0,o=l.length;r=0;--d)r.push(o=h[d]=new U(h[d])),o.parent=l,o.depth=l.depth+1;return n.eachBefore(Ue)}function qe(){return ae(this).eachBefore(je)}function Xe(e){return e.children}function Ye(e){return Array.isArray(e)?e[1]:null}function je(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function Ue(e){var a=0;do e.height=a;while((e=e.parent)&&e.height<++a)}function U(e){this.data=e,this.depth=this.height=0,this.parent=null}U.prototype=ae.prototype={constructor:U,count:_e,each:ke,eachAfter:Ve,eachBefore:ze,find:De,sum:Pe,sort:Be,path:Ee,ancestors:We,descendants:He,leaves:Ie,links:Oe,copy:qe,[Symbol.iterator]:Ge};function Ze(e){if(typeof e!="function")throw new Error;return e}function O(){return 0}function G(e){return function(){return e}}function Je(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function Ke(e,a,n,l,r){for(var o=e.children,h,d=-1,g=o.length,c=e.value&&(l-a)/e.value;++dN&&(N=c),M=u*u*R,$=Math.max(N/M,M/y),$>V){u-=c;break}V=$}h.push(g={value:u,dice:x1?l:1)},n})(et);function nt(){var e=at,a=!1,n=1,l=1,r=[0],o=O,h=O,d=O,g=O,c=O;function p(s){return s.x0=s.y0=0,s.x1=n,s.y1=l,s.eachBefore(b),r=[0],a&&s.eachBefore(Je),s}function b(s){var x=r[s.depth],S=s.x0+x,v=s.y0+x,u=s.x1-x,y=s.y1-x;u{$e(r)&&(n?.textStyles?n.textStyles.push(r):n.textStyles=[r]),n?.styles?n.styles.push(r):n.styles=[r]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){Ae(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function oe(e){if(!e.length)return[];const a=[],n=[];return e.forEach(l=>{const r={name:l.name,children:l.type==="Leaf"?void 0:[]};for(r.classSelector=l?.classSelector,l?.cssCompiledStyles&&(r.cssCompiledStyles=l.cssCompiledStyles),l.type==="Leaf"&&l.value!==void 0&&(r.value=l.value);n.length>0&&n[n.length-1].level>=l.level;)n.pop();if(n.length===0)a.push(r);else{const o=n[n.length-1].node;o.children?o.children.push(r):o.children=[r]}l.type!=="Leaf"&&n.push({node:r,level:l.level})}),a}w(oe,"buildHierarchy");var lt=w((e,a)=>{me(e,a);const n=[];for(const o of e.TreemapRows??[])o.$type==="ClassDefStatement"&&a.addClass(o.className??"",o.styleText??"");for(const o of e.TreemapRows??[]){const h=o.item;if(!h)continue;const d=o.indent?parseInt(o.indent):0,g=rt(h),c=h.classSelector?a.getStylesForClass(h.classSelector):[],p=c.length>0?c:void 0,b={level:d,name:g,type:h.$type,value:h.value,classSelector:h.classSelector,cssCompiledStyles:p};n.push(b)}const l=oe(n),r=w((o,h)=>{for(const d of o)a.addNode(d,h),d.children&&d.children.length>0&&r(d.children,h+1)},"addNodesRecursively");r(l,0)},"populate"),rt=w(e=>e.name?String(e.name):"","getItemName"),ce={parser:{yy:void 0},parse:w(async e=>{try{const n=await Ne("treemap",e);ee.debug("Treemap AST:",n);const l=ce.parser?.yy;if(!(l instanceof ie))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");lt(n,l)}catch(a){throw ee.error("Error parsing treemap:",a),a}},"parse")},st=10,E=10,q=25,it=w((e,a,n,l)=>{const r=l.db,o=r.getConfig(),h=o.padding??st,d=r.getDiagramTitle(),g=r.getRoot(),{themeVariables:c}=te();if(!g)return;const p=d?30:0,b=ye(a),s=o.nodeWidth?o.nodeWidth*E:960,x=o.nodeHeight?o.nodeHeight*E:500,S=s,v=x+p;b.attr("viewBox",`0 0 ${S} ${v}`),Se(b,v,S,o.useMaxWidth);let u;try{const t=o.valueFormat||",";if(t==="$0,0")u=w(i=>"$"+I(",")(i),"valueFormat");else if(t.startsWith("$")&&t.includes(",")){const i=/\.\d+/.exec(t),f=i?i[0]:"";u=w(C=>"$"+I(","+f)(C),"valueFormat")}else if(t.startsWith("$")){const i=t.substring(1);u=w(f=>"$"+I(i||"")(f),"valueFormat")}else u=I(t)}catch(t){ee.error("Error creating format function:",t),u=I(",")}const y=K().range(["transparent",c.cScale0,c.cScale1,c.cScale2,c.cScale3,c.cScale4,c.cScale5,c.cScale6,c.cScale7,c.cScale8,c.cScale9,c.cScale10,c.cScale11]),N=K().range(["transparent",c.cScalePeer0,c.cScalePeer1,c.cScalePeer2,c.cScalePeer3,c.cScalePeer4,c.cScalePeer5,c.cScalePeer6,c.cScalePeer7,c.cScalePeer8,c.cScalePeer9,c.cScalePeer10,c.cScalePeer11]),$=K().range([c.cScaleLabel0,c.cScaleLabel1,c.cScaleLabel2,c.cScaleLabel3,c.cScaleLabel4,c.cScaleLabel5,c.cScaleLabel6,c.cScaleLabel7,c.cScaleLabel8,c.cScaleLabel9,c.cScaleLabel10,c.cScaleLabel11]);d&&b.append("text").attr("x",S/2).attr("y",p/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(d);const V=b.append("g").attr("transform",`translate(0, ${p})`).attr("class","treemapContainer"),R=ae(g).sum(t=>t.value??0).sort((t,i)=>(i.value??0)-(t.value??0)),ne=nt().size([s,x]).paddingTop(t=>t.children&&t.children.length>0?q+E:0).paddingInner(h).paddingLeft(t=>t.children&&t.children.length>0?E:0).paddingRight(t=>t.children&&t.children.length>0?E:0).paddingBottom(t=>t.children&&t.children.length>0?E:0).round(!0)(R),he=ne.descendants().filter(t=>t.children&&t.children.length>0),W=V.selectAll(".treemapSection").data(he).enter().append("g").attr("class","treemapSection").attr("transform",t=>`translate(${t.x0},${t.y0})`);W.append("rect").attr("width",t=>t.x1-t.x0).attr("height",q).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",t=>t.depth===0?"display: none;":""),W.append("clipPath").attr("id",(t,i)=>`clip-section-${a}-${i}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-12)).attr("height",q),W.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class",(t,i)=>`treemapSection section${i}`).attr("fill",t=>y(t.data.name)).attr("fill-opacity",.6).attr("stroke",t=>N(t.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",t=>{if(t.depth===0)return"display: none;";const i=B({cssCompiledStyles:t.data.cssCompiledStyles});return i.nodeStyles+";"+i.borderStyles.join(";")}),W.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",q/2).attr("dominant-baseline","middle").text(t=>t.depth===0?"":t.data.name).attr("font-weight","bold").attr("clip-path",(t,i)=>`url(#clip-section-${a}-${i})`).attr("style",t=>{if(t.depth===0)return"display: none;";const i="dominant-baseline: middle; font-size: 12px; fill:"+$(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=B({cssCompiledStyles:t.data.cssCompiledStyles});return i+f.labelStyles.replace("color:","fill:")}).each(function(t){if(t.depth===0)return;const i=j(this),f=t.data.name;i.text(f);const C=t.x1-t.x0,L=6;let T;o.showValues!==!1&&t.value?T=C-10-30-10-L:T=C-L-6;const m=Math.max(15,T),_=i.node();if(_.getComputedTextLength()>m){let z=f;for(;z.length>0;){if(z=f.substring(0,z.length-1),z.length===0){i.text("..."),_.getComputedTextLength()>m&&i.text("");break}if(i.text(z+"..."),_.getComputedTextLength()<=m)break}}}),o.showValues!==!1&&W.append("text").attr("class","treemapSectionValue").attr("x",t=>t.x1-t.x0-10).attr("y",q/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(t=>t.value?u(t.value):"").attr("font-style","italic").attr("style",t=>{if(t.depth===0)return"display: none;";const i="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+$(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=B({cssCompiledStyles:t.data.cssCompiledStyles});return i+f.labelStyles.replace("color:","fill:")});const le=ne.leaves(),A=le.length>20,de=A?16:38,X=A?14:28,D=A?4:8,H=A?4:6,Z=A?2:4,re=A?8:10,J=A?1:2,Y=V.selectAll(".treemapLeafGroup").data(le).enter().append("g").attr("class",(t,i)=>`treemapNode treemapLeafGroup leaf${i}${t.data.classSelector?` ${t.data.classSelector}`:""}x`).attr("transform",t=>`translate(${t.x0},${t.y0})`);Y.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class","treemapLeaf").attr("fill",t=>t.parent?y(t.parent.data.name):y(t.data.name)).attr("style",t=>B({cssCompiledStyles:t.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",t=>t.parent?y(t.parent.data.name):y(t.data.name)).attr("stroke-width",3),Y.append("clipPath").attr("id",(t,i)=>`clip-${a}-${i}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-4)).attr("height",t=>Math.max(0,t.y1-t.y0-4)),Y.append("text").attr("class","treemapLabel").attr("x",t=>(t.x1-t.x0)/2).attr("y",t=>(t.y1-t.y0)/2).attr("style",t=>{const i=`text-anchor: middle; dominant-baseline: middle; font-size: ${de}px;fill:`+$(t.data.name)+";",f=B({cssCompiledStyles:t.data.cssCompiledStyles});return i+f.labelStyles.replace("color:","fill:")}).attr("clip-path",(t,i)=>`url(#clip-${a}-${i})`).text(t=>t.data.name).each(function(t){const i=j(this),f=t.x1-t.x0,C=t.y1-t.y0,L=i.node(),T=f-2*Z,P=C-2*Z;if(TT&&m>D;)m--,i.style("font-size",`${m}px`);let F=Math.max(H,Math.min(X,Math.round(m*_))),k=m+J+F;for(;k>P&&m>D&&(m--,F=Math.max(H,Math.min(X,Math.round(m*_))),!(FT||m(i.x1-i.x0)/2).attr("y",function(i){return(i.y1-i.y0)/2}).attr("style",i=>{const f=`text-anchor: middle; dominant-baseline: hanging; font-size: ${X}px;fill:`+$(i.data.name)+";",C=B({cssCompiledStyles:i.data.cssCompiledStyles});return f+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(i,f)=>`url(#clip-${a}-${f})`).text(i=>i.value?u(i.value):"").each(function(i){const f=j(this),C=this.parentNode;if(!C){f.style("display","none");return}const L=j(C).select(".treemapLabel");if(L.empty()||L.style("display")==="none"){f.style("display","none");return}const T=parseFloat(L.style("font-size")),m=Math.max(H,Math.min(X,Math.round(T*.6)));f.style("font-size",`${m}px`);const F=(i.y1-i.y0)/2+T/2+J;f.attr("y",F);const k=i.x1-i.x0,se=i.y1-i.y0-4,fe=k-2*Z;f.node().getComputedTextLength()>fe||F+m>se||m{const a=ge(),n=te(),l=Q(a,n.themeVariables),r=Q(ht,e),o=r.titleColor??l.titleColor,h=r.labelColor??l.textColor,d=r.valueColor??l.textColor;return` - .treemapNode.section { - stroke: ${r.sectionStrokeColor}; - stroke-width: ${r.sectionStrokeWidth}; - fill: ${r.sectionFillColor}; - } - .treemapNode.leaf { - stroke: ${r.leafStrokeColor}; - stroke-width: ${r.leafStrokeWidth}; - fill: ${r.leafFillColor}; - } - .treemapLabel { - fill: ${h}; - font-size: ${r.labelFontSize}; - } - .treemapValue { - fill: ${d}; - font-size: ${r.valueFontSize}; - } - .treemapTitle { - fill: ${o}; - font-size: ${r.titleFontSize}; - } - `},"getStyles"),pt=dt,Ct={parser:ce,get db(){return new ie},renderer:ct,styles:pt};export{Ct as diagram}; diff --git a/apps/kimi-code/dist-web/assets/diagram-G47NLZAW-D-K95T9W.js b/apps/kimi-code/dist-web/assets/diagram-G47NLZAW-D-K95T9W.js new file mode 100644 index 0000000000..c1cb02b1e2 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/diagram-G47NLZAW-D-K95T9W.js @@ -0,0 +1,24 @@ +import{p as me}from"./chunk-JWPE2WC7-CFaSk12U.js";import{_ as w,W as ge,z as te,B as Q,F as ye,e as Se,l as ee,bf as B,d as j,b as ve,a as xe,o as be,p as we,g as Ce,s as Te,D as Le,bg as $e,q as Ae}from"./mermaid.core-AN7v7N47.js";import{s as Fe}from"./chunk-VR4S4FIN-DMqAUMdK.js";import{p as Ne}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import{b as I}from"./defaultLocale-DX6XiGOO.js";import{o as K}from"./ordinal-Cboi1Yqb.js";import"./index-Dnz6Zudc.js";import"./init-Gi6I4Gst.js";function Me(e){var a=0,n=e.children,l=n&&n.length;if(!l)a=1;else for(;--l>=0;)a+=n[l].value;e.value=a}function _e(){return this.eachAfter(Me)}function ke(e,a){let n=-1;for(const l of this)e.call(a,l,++n,this);return this}function ze(e,a){for(var n=this,l=[n],r,o,h=-1;n=l.pop();)if(e.call(a,n,++h,this),r=n.children)for(o=r.length-1;o>=0;--o)l.push(r[o]);return this}function Ve(e,a){for(var n=this,l=[n],r=[],o,h,d,g=-1;n=l.pop();)if(r.push(n),o=n.children)for(h=0,d=o.length;h=0;)n+=l[r].value;a.value=n})}function Be(e){return this.eachBefore(function(a){a.children&&a.children.sort(e)})}function We(e){for(var a=this,n=Ee(a,e),l=[a];a!==n;)a=a.parent,l.push(a);for(var r=l.length;e!==n;)l.splice(r,0,e),e=e.parent;return l}function Ee(e,a){if(e===a)return e;var n=e.ancestors(),l=a.ancestors(),r=null;for(e=n.pop(),a=l.pop();e===a;)r=e,e=n.pop(),a=l.pop();return r}function Re(){for(var e=this,a=[e];e=e.parent;)a.push(e);return a}function He(){return Array.from(this)}function Ie(){var e=[];return this.eachBefore(function(a){a.children||e.push(a)}),e}function Oe(){var e=this,a=[];return e.each(function(n){n!==e&&a.push({source:n.parent,target:n})}),a}function*qe(){var e=this,a,n=[e],l,r,o;do for(a=n.reverse(),n=[];e=a.pop();)if(yield e,l=e.children)for(r=0,o=l.length;r=0;--d)r.push(o=h[d]=new U(h[d])),o.parent=l,o.depth=l.depth+1;return n.eachBefore(Ue)}function Ge(){return ae(this).eachBefore(je)}function Xe(e){return e.children}function Ye(e){return Array.isArray(e)?e[1]:null}function je(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function Ue(e){var a=0;do e.height=a;while((e=e.parent)&&e.height<++a)}function U(e){this.data=e,this.depth=this.height=0,this.parent=null}U.prototype=ae.prototype={constructor:U,count:_e,each:ke,eachAfter:Ve,eachBefore:ze,find:De,sum:Pe,sort:Be,path:We,ancestors:Re,descendants:He,leaves:Ie,links:Oe,copy:Ge,[Symbol.iterator]:qe};function Ze(e){if(typeof e!="function")throw new Error;return e}function O(){return 0}function q(e){return function(){return e}}function Je(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function Ke(e,a,n,l,r){for(var o=e.children,h,d=-1,g=o.length,c=e.value&&(l-a)/e.value;++dN&&(N=c),M=u*u*E,$=Math.max(N/M,M/y),$>V){u-=c;break}V=$}h.push(g={value:u,dice:x1?l:1)},n})(et);function nt(){var e=at,a=!1,n=1,l=1,r=[0],o=O,h=O,d=O,g=O,c=O;function p(s){return s.x0=s.y0=0,s.x1=n,s.y1=l,s.eachBefore(b),r=[0],a&&s.eachBefore(Je),s}function b(s){var x=r[s.depth],S=s.x0+x,v=s.y0+x,u=s.x1-x,y=s.y1-x;u{$e(r)&&(n?.textStyles?n.textStyles.push(r):n.textStyles=[r]),n?.styles?n.styles.push(r):n.styles=[r]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){Ae(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function oe(e){if(!e.length)return[];const a=[],n=[];return e.forEach(l=>{const r={name:l.name,children:l.type==="Leaf"?void 0:[]};for(r.classSelector=l?.classSelector,l?.cssCompiledStyles&&(r.cssCompiledStyles=l.cssCompiledStyles),l.type==="Leaf"&&l.value!==void 0&&(r.value=l.value);n.length>0&&n[n.length-1].level>=l.level;)n.pop();if(n.length===0)a.push(r);else{const o=n[n.length-1].node;o.children?o.children.push(r):o.children=[r]}l.type!=="Leaf"&&n.push({node:r,level:l.level})}),a}w(oe,"buildHierarchy");var lt=w((e,a)=>{me(e,a);const n=[];for(const o of e.TreemapRows??[])o.$type==="ClassDefStatement"&&a.addClass(o.className??"",o.styleText??"");for(const o of e.TreemapRows??[]){const h=o.item;if(!h)continue;const d=o.indent?parseInt(o.indent):0,g=rt(h),c=h.classSelector?a.getStylesForClass(h.classSelector):[],p=c.length>0?c:void 0,b={level:d,name:g,type:h.$type,value:h.value,classSelector:h.classSelector,cssCompiledStyles:p};n.push(b)}const l=oe(n),r=w((o,h)=>{for(const d of o)a.addNode(d,h),d.children&&d.children.length>0&&r(d.children,h+1)},"addNodesRecursively");r(l,0)},"populate"),rt=w(e=>e.name?String(e.name):"","getItemName"),ce={parser:{yy:void 0},parse:w(async e=>{try{const n=await Ne("treemap",e);ee.debug("Treemap AST:",n);const l=ce.parser?.yy;if(!(l instanceof ie))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");lt(n,l)}catch(a){throw ee.error("Error parsing treemap:",a),a}},"parse")},st=10,W=10,G=25,it=w((e,a,n,l)=>{const r=l.db,o=r.getConfig(),h=o.padding??st,d=r.getDiagramTitle(),g=r.getRoot(),{themeVariables:c}=te();if(!g)return;const p=d?30:0,b=ye(a),s=o.nodeWidth?o.nodeWidth*W:960,x=o.nodeHeight?o.nodeHeight*W:500,S=s,v=x+p;b.attr("viewBox",`0 0 ${S} ${v}`),Se(b,v,S,o.useMaxWidth);let u;try{const t=o.valueFormat||",";if(t==="$0,0")u=w(i=>"$"+I(",")(i),"valueFormat");else if(t.startsWith("$")&&t.includes(",")){const i=/\.\d+/.exec(t),f=i?i[0]:"";u=w(C=>"$"+I(","+f)(C),"valueFormat")}else if(t.startsWith("$")){const i=t.substring(1);u=w(f=>"$"+I(i||"")(f),"valueFormat")}else u=I(t)}catch(t){ee.error("Error creating format function:",t),u=I(",")}const y=K().range(["transparent",c.cScale0,c.cScale1,c.cScale2,c.cScale3,c.cScale4,c.cScale5,c.cScale6,c.cScale7,c.cScale8,c.cScale9,c.cScale10,c.cScale11]),N=K().range(["transparent",c.cScalePeer0,c.cScalePeer1,c.cScalePeer2,c.cScalePeer3,c.cScalePeer4,c.cScalePeer5,c.cScalePeer6,c.cScalePeer7,c.cScalePeer8,c.cScalePeer9,c.cScalePeer10,c.cScalePeer11]),$=K().range([c.cScaleLabel0,c.cScaleLabel1,c.cScaleLabel2,c.cScaleLabel3,c.cScaleLabel4,c.cScaleLabel5,c.cScaleLabel6,c.cScaleLabel7,c.cScaleLabel8,c.cScaleLabel9,c.cScaleLabel10,c.cScaleLabel11]);d&&b.append("text").attr("x",S/2).attr("y",p/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(d);const V=b.append("g").attr("transform",`translate(0, ${p})`).attr("class","treemapContainer"),E=ae(g).sum(t=>t.value??0).sort((t,i)=>(i.value??0)-(t.value??0)),ne=nt().size([s,x]).paddingTop(t=>t.children&&t.children.length>0?G+W:0).paddingInner(h).paddingLeft(t=>t.children&&t.children.length>0?W:0).paddingRight(t=>t.children&&t.children.length>0?W:0).paddingBottom(t=>t.children&&t.children.length>0?W:0).round(!0)(E),he=ne.descendants().filter(t=>t.children&&t.children.length>0),R=V.selectAll(".treemapSection").data(he).enter().append("g").attr("class","treemapSection").attr("transform",t=>`translate(${t.x0},${t.y0})`);R.append("rect").attr("width",t=>t.x1-t.x0).attr("height",G).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",t=>t.depth===0?"display: none;":""),R.append("clipPath").attr("id",(t,i)=>`clip-section-${a}-${i}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-12)).attr("height",G),R.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class",(t,i)=>`treemapSection section${i}`).attr("fill",t=>y(t.data.name)).attr("fill-opacity",.6).attr("stroke",t=>N(t.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",t=>{if(t.depth===0)return"display: none;";const i=B({cssCompiledStyles:t.data.cssCompiledStyles});return i.nodeStyles+";"+i.borderStyles.join(";")}),R.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",G/2).attr("dominant-baseline","middle").text(t=>t.depth===0?"":t.data.name).attr("font-weight","bold").attr("clip-path",(t,i)=>`url(#clip-section-${a}-${i})`).attr("style",t=>{if(t.depth===0)return"display: none;";const i="dominant-baseline: middle; font-size: 12px; fill:"+$(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=B({cssCompiledStyles:t.data.cssCompiledStyles});return i+f.labelStyles.replace("color:","fill:")}).each(function(t){if(t.depth===0)return;const i=j(this),f=t.data.name;i.text(f);const C=t.x1-t.x0,L=6;let T;o.showValues!==!1&&t.value?T=C-10-30-10-L:T=C-L-6;const m=Math.max(15,T),_=i.node();if(_.getComputedTextLength()>m){let z=f;for(;z.length>0;){if(z=f.substring(0,z.length-1),z.length===0){i.text("..."),_.getComputedTextLength()>m&&i.text("");break}if(i.text(z+"..."),_.getComputedTextLength()<=m)break}}}),o.showValues!==!1&&R.append("text").attr("class","treemapSectionValue").attr("x",t=>t.x1-t.x0-10).attr("y",G/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(t=>t.value?u(t.value):"").attr("font-style","italic").attr("style",t=>{if(t.depth===0)return"display: none;";const i="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+$(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=B({cssCompiledStyles:t.data.cssCompiledStyles});return i+f.labelStyles.replace("color:","fill:")});const le=ne.leaves(),A=le.length>20,de=A?16:38,X=A?14:28,D=A?4:8,H=A?4:6,Z=A?2:4,re=A?8:10,J=A?1:2,Y=V.selectAll(".treemapLeafGroup").data(le).enter().append("g").attr("class",(t,i)=>`treemapNode treemapLeafGroup leaf${i}${t.data.classSelector?` ${t.data.classSelector}`:""}x`).attr("transform",t=>`translate(${t.x0},${t.y0})`);Y.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class","treemapLeaf").attr("fill",t=>t.parent?y(t.parent.data.name):y(t.data.name)).attr("style",t=>B({cssCompiledStyles:t.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",t=>t.parent?y(t.parent.data.name):y(t.data.name)).attr("stroke-width",3),Y.append("clipPath").attr("id",(t,i)=>`clip-${a}-${i}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-4)).attr("height",t=>Math.max(0,t.y1-t.y0-4)),Y.append("text").attr("class","treemapLabel").attr("x",t=>(t.x1-t.x0)/2).attr("y",t=>(t.y1-t.y0)/2).attr("style",t=>{const i=`text-anchor: middle; dominant-baseline: middle; font-size: ${de}px;fill:`+$(t.data.name)+";",f=B({cssCompiledStyles:t.data.cssCompiledStyles});return i+f.labelStyles.replace("color:","fill:")}).attr("clip-path",(t,i)=>`url(#clip-${a}-${i})`).text(t=>t.data.name).each(function(t){const i=j(this),f=t.x1-t.x0,C=t.y1-t.y0,L=i.node(),T=f-2*Z,P=C-2*Z;if(TT&&m>D;)m--,i.style("font-size",`${m}px`);let F=Math.max(H,Math.min(X,Math.round(m*_))),k=m+J+F;for(;k>P&&m>D&&(m--,F=Math.max(H,Math.min(X,Math.round(m*_))),!(FT||m(i.x1-i.x0)/2).attr("y",function(i){return(i.y1-i.y0)/2}).attr("style",i=>{const f=`text-anchor: middle; dominant-baseline: hanging; font-size: ${X}px;fill:`+$(i.data.name)+";",C=B({cssCompiledStyles:i.data.cssCompiledStyles});return f+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(i,f)=>`url(#clip-${a}-${f})`).text(i=>i.value?u(i.value):"").each(function(i){const f=j(this),C=this.parentNode;if(!C){f.style("display","none");return}const L=j(C).select(".treemapLabel");if(L.empty()||L.style("display")==="none"){f.style("display","none");return}const T=parseFloat(L.style("font-size")),m=Math.max(H,Math.min(X,Math.round(T*.6)));f.style("font-size",`${m}px`);const F=(i.y1-i.y0)/2+T/2+J;f.attr("y",F);const k=i.x1-i.x0,se=i.y1-i.y0-4,fe=k-2*Z;f.node().getComputedTextLength()>fe||F+m>se||m{const a=ge(),n=te(),l=Q(a,n.themeVariables),r=Q(ht,e),o=r.titleColor??l.titleColor,h=r.labelColor??l.textColor,d=r.valueColor??l.textColor;return` + .treemapNode.section { + stroke: ${r.sectionStrokeColor}; + stroke-width: ${r.sectionStrokeWidth}; + fill: ${r.sectionFillColor}; + } + .treemapNode.leaf { + stroke: ${r.leafStrokeColor}; + stroke-width: ${r.leafStrokeWidth}; + fill: ${r.leafFillColor}; + } + .treemapLabel { + fill: ${h}; + font-size: ${r.labelFontSize}; + } + .treemapValue { + fill: ${d}; + font-size: ${r.valueFontSize}; + } + .treemapTitle { + fill: ${o}; + font-size: ${r.titleFontSize}; + } + `},"getStyles"),pt=dt,wt={parser:ce,get db(){return new ie},renderer:ct,styles:pt};export{wt as diagram}; diff --git a/apps/kimi-code/dist-web/assets/diagram-NH7WQ7WH-BQY-SQ3_.js b/apps/kimi-code/dist-web/assets/diagram-NH7WQ7WH-BQY-SQ3_.js deleted file mode 100644 index ee93396152..0000000000 --- a/apps/kimi-code/dist-web/assets/diagram-NH7WQ7WH-BQY-SQ3_.js +++ /dev/null @@ -1,24 +0,0 @@ -import{p as B}from"./chunk-JWPE2WC7-0N6Q_J0q.js";import{_ as b,A as u,D as $,e as C,l as m,b as S,a as D,n as T,o as P,g as z,s as A,y as E,B as F,p as W}from"./mermaid.core-Dxfcv_J5.js";import{p as _}from"./cynefin-VYW2F7L2-DQGCJnlE.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var N=F.packet,w=class{constructor(){this.packet=[],this.setAccTitle=S,this.getAccTitle=D,this.setDiagramTitle=T,this.getDiagramTitle=P,this.getAccDescription=z,this.setAccDescription=A}static{b(this,"PacketDB")}getConfig(){const t=u({...N,...E().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){W(),this.packet=[]}},L=1e4,M=b((t,e)=>{B(t,e);let r=-1,o=[],n=1;const{bitsPerRow:l}=e.getConfig();for(let{start:a,end:i,bits:d,label:c}of t.blocks){if(a!==void 0&&i!==void 0&&i{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*r)return[t,void 0];const o=e*r-1,n=e*r;return[{start:t.start,end:o,label:t.label,bits:o-t.start},{start:n,end:t.end,label:t.label,bits:t.end-n}]},"getNextFittingBlock"),v={parser:{yy:void 0},parse:b(async t=>{const e=await _("packet",t),r=v.parser?.yy;if(!(r instanceof w))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");m.debug(e),M(e,r)},"parse")},I=b((t,e,r,o)=>{const n=o.db,l=n.getConfig(),{rowHeight:a,paddingY:i,bitWidth:d,bitsPerRow:c}=l,p=n.getPacket(),s=n.getDiagramTitle(),h=a+i,g=h*(p.length+1)-(s?0:a),k=d*c+2,f=$(e);f.attr("viewBox",`0 0 ${k} ${g}`),C(f,g,k,l.useMaxWidth);for(const[x,y]of p.entries())O(f,y,x,l);f.append("text").text(s).attr("x",k/2).attr("y",g-h/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),O=b((t,e,r,{rowHeight:o,paddingX:n,paddingY:l,bitWidth:a,bitsPerRow:i,showBits:d})=>{const c=t.append("g"),p=r*(o+l)+l;for(const s of e){const h=s.start%i*a+1,g=(s.end-s.start+1)*a-n;if(c.append("rect").attr("x",h).attr("y",p).attr("width",g).attr("height",o).attr("class","packetBlock"),c.append("text").attr("x",h+g/2).attr("y",p+o/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(s.label),!d)continue;const k=s.end===s.start,f=p-2;c.append("text").attr("x",h+(k?g/2:0)).attr("y",f).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",k?"middle":"start").text(s.start),k||c.append("text").attr("x",h+g).attr("y",f).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(s.end)}},"drawWord"),j={draw:I},G={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},H=b(({packet:t}={})=>{const e=u(G,t);return` - .packetByte { - font-size: ${e.byteFontSize}; - } - .packetByte.start { - fill: ${e.startByteColor}; - } - .packetByte.end { - fill: ${e.endByteColor}; - } - .packetLabel { - fill: ${e.labelColor}; - font-size: ${e.labelFontSize}; - } - .packetTitle { - fill: ${e.titleColor}; - font-size: ${e.titleFontSize}; - } - .packetBlock { - stroke: ${e.blockStrokeColor}; - stroke-width: ${e.blockStrokeWidth}; - fill: ${e.blockFillColor}; - } - `},"styles"),J={parser:v,get db(){return new w},renderer:j,styles:H};export{J as diagram}; diff --git a/apps/kimi-code/dist-web/assets/diagram-NH7WQ7WH-vAxkrrkL.js b/apps/kimi-code/dist-web/assets/diagram-NH7WQ7WH-vAxkrrkL.js new file mode 100644 index 0000000000..553aa0f646 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/diagram-NH7WQ7WH-vAxkrrkL.js @@ -0,0 +1,24 @@ +import{p as B}from"./chunk-JWPE2WC7-CFaSk12U.js";import{_ as b,B as u,F as $,e as C,l as m,b as S,a as D,o as T,p as z,g as F,s as P,z as E,D as A,q as W}from"./mermaid.core-AN7v7N47.js";import{p as _}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import"./index-Dnz6Zudc.js";var N=A.packet,w=class{constructor(){this.packet=[],this.setAccTitle=S,this.getAccTitle=D,this.setDiagramTitle=T,this.getDiagramTitle=z,this.getAccDescription=F,this.setAccDescription=P}static{b(this,"PacketDB")}getConfig(){const t=u({...N,...E().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){W(),this.packet=[]}},L=1e4,M=b((t,e)=>{B(t,e);let r=-1,s=[],n=1;const{bitsPerRow:l}=e.getConfig();for(let{start:a,end:i,bits:d,label:c}of t.blocks){if(a!==void 0&&i!==void 0&&i{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*r)return[t,void 0];const s=e*r-1,n=e*r;return[{start:t.start,end:s,label:t.label,bits:s-t.start},{start:n,end:t.end,label:t.label,bits:t.end-n}]},"getNextFittingBlock"),v={parser:{yy:void 0},parse:b(async t=>{const e=await _("packet",t),r=v.parser?.yy;if(!(r instanceof w))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");m.debug(e),M(e,r)},"parse")},I=b((t,e,r,s)=>{const n=s.db,l=n.getConfig(),{rowHeight:a,paddingY:i,bitWidth:d,bitsPerRow:c}=l,p=n.getPacket(),o=n.getDiagramTitle(),h=a+i,g=h*(p.length+1)-(o?0:a),k=d*c+2,f=$(e);f.attr("viewBox",`0 0 ${k} ${g}`),C(f,g,k,l.useMaxWidth);for(const[x,y]of p.entries())O(f,y,x,l);f.append("text").text(o).attr("x",k/2).attr("y",g-h/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),O=b((t,e,r,{rowHeight:s,paddingX:n,paddingY:l,bitWidth:a,bitsPerRow:i,showBits:d})=>{const c=t.append("g"),p=r*(s+l)+l;for(const o of e){const h=o.start%i*a+1,g=(o.end-o.start+1)*a-n;if(c.append("rect").attr("x",h).attr("y",p).attr("width",g).attr("height",s).attr("class","packetBlock"),c.append("text").attr("x",h+g/2).attr("y",p+s/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(o.label),!d)continue;const k=o.end===o.start,f=p-2;c.append("text").attr("x",h+(k?g/2:0)).attr("y",f).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",k?"middle":"start").text(o.start),k||c.append("text").attr("x",h+g).attr("y",f).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(o.end)}},"drawWord"),j={draw:I},q={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},G=b(({packet:t}={})=>{const e=u(q,t);return` + .packetByte { + font-size: ${e.byteFontSize}; + } + .packetByte.start { + fill: ${e.startByteColor}; + } + .packetByte.end { + fill: ${e.endByteColor}; + } + .packetLabel { + fill: ${e.labelColor}; + font-size: ${e.labelFontSize}; + } + .packetTitle { + fill: ${e.titleColor}; + font-size: ${e.titleFontSize}; + } + .packetBlock { + stroke: ${e.blockStrokeColor}; + stroke-width: ${e.blockStrokeWidth}; + fill: ${e.blockFillColor}; + } + `},"styles"),X={parser:v,get db(){return new w},renderer:j,styles:G};export{X as diagram}; diff --git a/apps/kimi-code/dist-web/assets/diagram-OA4YK3LP-CTorHnPK.js b/apps/kimi-code/dist-web/assets/diagram-OA4YK3LP-BnCNL17Z.js similarity index 81% rename from apps/kimi-code/dist-web/assets/diagram-OA4YK3LP-CTorHnPK.js rename to apps/kimi-code/dist-web/assets/diagram-OA4YK3LP-BnCNL17Z.js index c4be171a10..75270b1a1f 100644 --- a/apps/kimi-code/dist-web/assets/diagram-OA4YK3LP-CTorHnPK.js +++ b/apps/kimi-code/dist-web/assets/diagram-OA4YK3LP-BnCNL17Z.js @@ -1,7 +1,7 @@ -import{I as X}from"./chunk-2Q5K7J3B-BBRTtiB5.js";import{p as O}from"./chunk-JWPE2WC7-0N6Q_J0q.js";import{n as G,b as Y,s as P,o as j,g as F,a as Z,_ as f,A,l as D,D as q,e as U,y as N,p as J,i as K,ai as Q,B as ee,aj as te}from"./mermaid.core-Dxfcv_J5.js";import{p as ne}from"./cynefin-VYW2F7L2-DQGCJnlE.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var E=/[─━│┃└┗├┣]/,S=/[└┗├┣]/,re=/[─━]/,V=/^[\s│┃]+$/,$=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,k=/^\s*%%/,ie=" ";function L(n){return n.some(e=>E.test(e))}f(L,"isBoxDrawingFormat");function _(n){for(const e of n){const t=S.exec(e);if(t?.index&&t.index>0)return t.index}return 4}f(_,"inferSegmentWidth");function M(n,e){return n.replace(/\bline\s+(\d+)\b/gi,(t,r)=>{const i=parseInt(r,10),a=e.get(i);return a?`line ${a}`:t})}f(M,"remapErrorLines");function R(n){const e=n.split(` +import{I as X}from"./chunk-2Q5K7J3B-Bj3vlj3y.js";import{p as O}from"./chunk-JWPE2WC7-CFaSk12U.js";import{o as G,b as Y,s as F,p as P,g as j,a as q,_ as f,B as A,l as D,F as Z,e as U,z as N,q as J,i as K,ai as Q,D as ee,aj as te}from"./mermaid.core-AN7v7N47.js";import{p as ne}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import"./index-Dnz6Zudc.js";var E=/[─━│┃└┗├┣]/,S=/[└┗├┣]/,re=/[─━]/,V=/^[\s│┃]+$/,$=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,k=/^\s*%%/,ie=" ";function L(n){return n.some(e=>E.test(e))}f(L,"isBoxDrawingFormat");function _(n){for(const e of n){const t=S.exec(e);if(t?.index&&t.index>0)return t.index}return 4}f(_,"inferSegmentWidth");function M(n,e){return n.replace(/\bline\s+(\d+)\b/gi,(t,r)=>{const i=parseInt(r,10),a=e.get(i);return a?`line ${a}`:t})}f(M,"remapErrorLines");function R(n){const e=n.split(` `),t=new Map;let r=-1;for(const[s,o]of e.entries())if(o.trim()==="treeView-beta"){r=s;break}if(r===-1)return{text:n,lineMap:t};const i=[];for(let s=r+1;s({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),oe=f(()=>{x.reset(),J()},"clear"),se=f(()=>x.records.stack[0],"getRoot"),ae=f(()=>x.records.cnt,"getCount"),ce=ee.treeView,le=f(()=>A(ce,N().treeView),"getConfig"),de=f((n,e,t,r,i,a)=>{for(;n<=x.records.stack[x.records.stack.length-1].level;)x.records.stack.pop();const c={id:x.records.cnt++,level:n,name:e,nodeType:t,icon:i,cssClass:r,description:a,children:[]};x.records.stack[x.records.stack.length-1].children.push(c),x.records.stack.push(c)},"addNode"),he={clear:oe,addNode:de,getRoot:se,getCount:ae,getConfig:le,getAccTitle:Z,getAccDescription:F,getDiagramTitle:j,setAccDescription:P,setAccTitle:Y,setDiagramTitle:G},I=he,pe=f(n=>{O(n,I);for(const e of n.nodes){const t=typeof e.indent=="number"?e.indent:0;let r=e.name;const i=r.endsWith("/");i&&(r=r.slice(0,-1));const a=i?"directory":"file",c=e.classAnnotation||void 0,l=e.iconAnnotation,s=l!==void 0?l||"none":void 0,o=e.descAnnotation||void 0,h=o?K(o,N()):void 0;I.addNode(t,r,a,c,s,h)}},"populate"),fe={parse:f(async n=>{const{text:e,lineMap:t}=R(n);try{const r=await ne("treeView",e);D.debug(r),pe(r)}catch(r){throw t.size>0&&r instanceof Error&&(r.message=M(r.message,t)),r}},"parse")},b={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:''},file:{body:''}}};function H(n,e){const t=e?.filenameIcons?.[n];if(t)return t;const r=n.lastIndexOf(".");if(r>0){const i=n.substring(r).toLowerCase(),a=e?.extensionIcons;return a?.[i]??a?.[i.slice(1)]}}f(H,"detectIcon");function C(n,e){return n.includes(":")?n:n in b.icons||!e?`${b.prefix}:${n}`:`${e}:${n}`}f(C,"qualifyIcon");function B(n,e){if(n.icon!=="none"){if(n.icon)return C(n.icon,e.defaultIconPack);if(e.showIcons){if(n.nodeType==="file"){const t=H(n.name,e);if(t==="none")return;if(t)return C(t,e.defaultIconPack)}return`${b.prefix}:${n.nodeType==="directory"?"folder":"file"}`}}}f(B,"getNodeIcon");te([{name:b.prefix,icons:b}]);var y=14,ge=4,ue=16,z=f((n,e)=>`tv-icon-${n}-${e.replace(/[^\w-]/g,"-")}`,"iconSymbolId"),we=f(async(n,e,t,r)=>{const i=new Set,a=f(s=>{const o=B(s,t);o&&i.add(o),s.children.forEach(a)},"collect");if(a(e),i.size===0)return;const c=await Promise.all([...i].map(async s=>({icon:s,svg:await Q(s,{height:y,width:y})}))),l=n.append("defs");for(const{icon:s,svg:o}of c)l.append("g").attr("id",z(r,s)).html(o)},"injectIconDefs"),me=f((n,e,t,r,i,a)=>{const c=r.append("g");let l="treeView-node-label";t.nodeType==="directory"&&(l+=" treeView-node-dir"),t.cssClass&&(l+=` ${t.cssClass}`);const s=y+ge,o=B(t,i),h=o!==void 0;o&&c.append("use").attr("xlink:href",`#${z(a,o)}`).attr("x",n+i.paddingX).attr("y",e+i.paddingY).attr("class","treeView-node-icon");const p=c.append("text").text(t.name).attr("dominant-baseline","middle").attr("class",l),{height:d,width:w}=p.node().getBBox(),g=d+i.paddingY*2,m=n+i.paddingX+(h?s:0);p.attr("x",m),p.attr("y",e+g/2);const u=m+w,v=w+i.paddingX*2+(h?s:0);return t.BBox={x:n,y:e,width:v,height:g},t.cssClass?.split(/\s+/).includes("highlight")&&c.insert("rect",":first-child").attr("x",n).attr("y",e+1).attr("width",0).attr("height",g-2).attr("rx",3).attr("class","treeView-highlight-bg"),{node:t,nodeGroup:c,labelRightEdge:u,centerY:e+g/2}},"positionLabel"),T=f((n,e,t,r,i,a)=>n.append("line").attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",i).attr("stroke-width",a).attr("class","treeView-node-line"),"positionLine"),xe=f((n,e,t,r)=>{let i=0,a=0;const c=[],l=f((h,p,d,w)=>{const g=w*(d.rowIndent+d.paddingX),m=me(g,i,p,h,d,r);c.push(m);const{height:u,width:v}=p.BBox;T(h,g-d.rowIndent,i+u/2,g,i+u/2,d.lineThickness),a=Math.max(a,g+v),i+=u},"drawNode"),s=f((h,p=0)=>{l(n,h,t,p),h.children.forEach(m=>{s(m,p+1)});const{x:d,y:w,height:g}=h.BBox;if(h.children.length){const{y:m,height:u}=h.children[h.children.length-1].BBox;T(n,d+t.paddingX,w+g,d+t.paddingX,m+u/2+t.lineThickness/2,t.lineThickness)}},"processNode");s(e);const o=c.filter(h=>h.node.description);if(o.length>0){const p=Math.max(...c.map(d=>d.labelRightEdge))+ue;for(const d of o){const g=d.nodeGroup.append("text").text(d.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",p).attr("y",d.centerY).node().getBBox();a=Math.max(a,p+g.width+t.paddingX)}}for(const h of c)if(h.node.cssClass?.split(/\s+/).includes("highlight")){const p=h.nodeGroup.select(".treeView-highlight-bg");if(!p.empty()){const d=a-h.node.BBox.x+8;p.attr("width",d),a=Math.max(a,h.node.BBox.x+d+2)}}return{totalHeight:i,totalWidth:a}},"drawTree"),ve=f(async(n,e,t,r)=>{D.debug(`Rendering treeView diagram -`+n);const i=r.db,a=i.getRoot(),c=i.getConfig(),l=q(e);await we(l,a,c,e);const s=l.append("g");s.attr("class","tree-view");const{totalHeight:o,totalWidth:h}=xe(s,a,c,e);l.attr("viewBox",`-${c.lineThickness/2} 0 ${h} ${o}`),U(l,o,h,c.useMaxWidth)},"draw"),be={draw:ve},Ie=be,Ce={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},ye=f(({treeView:n})=>{const{labelFontSize:e,labelColor:t,lineColor:r,iconColor:i,descriptionColor:a,highlightBg:c,highlightStroke:l}=A(Ce,n);return` +`),lineMap:t}}f(R,"preprocessBoxDrawing");var x=new X(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),oe=f(()=>{x.reset(),J()},"clear"),se=f(()=>x.records.stack[0],"getRoot"),ae=f(()=>x.records.cnt,"getCount"),ce=ee.treeView,le=f(()=>A(ce,N().treeView),"getConfig"),de=f((n,e,t,r,i,a)=>{for(;n<=x.records.stack[x.records.stack.length-1].level;)x.records.stack.pop();const c={id:x.records.cnt++,level:n,name:e,nodeType:t,icon:i,cssClass:r,description:a,children:[]};x.records.stack[x.records.stack.length-1].children.push(c),x.records.stack.push(c)},"addNode"),he={clear:oe,addNode:de,getRoot:se,getCount:ae,getConfig:le,getAccTitle:q,getAccDescription:j,getDiagramTitle:P,setAccDescription:F,setAccTitle:Y,setDiagramTitle:G},I=he,pe=f(n=>{O(n,I);for(const e of n.nodes){const t=typeof e.indent=="number"?e.indent:0;let r=e.name;const i=r.endsWith("/");i&&(r=r.slice(0,-1));const a=i?"directory":"file",c=e.classAnnotation||void 0,l=e.iconAnnotation,s=l!==void 0?l||"none":void 0,o=e.descAnnotation||void 0,h=o?K(o,N()):void 0;I.addNode(t,r,a,c,s,h)}},"populate"),fe={parse:f(async n=>{const{text:e,lineMap:t}=R(n);try{const r=await ne("treeView",e);D.debug(r),pe(r)}catch(r){throw t.size>0&&r instanceof Error&&(r.message=M(r.message,t)),r}},"parse")},b={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:''},file:{body:''}}};function z(n,e){const t=e?.filenameIcons?.[n];if(t)return t;const r=n.lastIndexOf(".");if(r>0){const i=n.substring(r).toLowerCase(),a=e?.extensionIcons;return a?.[i]??a?.[i.slice(1)]}}f(z,"detectIcon");function C(n,e){return n.includes(":")?n:n in b.icons||!e?`${b.prefix}:${n}`:`${e}:${n}`}f(C,"qualifyIcon");function B(n,e){if(n.icon!=="none"){if(n.icon)return C(n.icon,e.defaultIconPack);if(e.showIcons){if(n.nodeType==="file"){const t=z(n.name,e);if(t==="none")return;if(t)return C(t,e.defaultIconPack)}return`${b.prefix}:${n.nodeType==="directory"?"folder":"file"}`}}}f(B,"getNodeIcon");te([{name:b.prefix,icons:b}]);var y=14,ge=4,ue=16,H=f((n,e)=>`tv-icon-${n}-${e.replace(/[^\w-]/g,"-")}`,"iconSymbolId"),we=f(async(n,e,t,r)=>{const i=new Set,a=f(s=>{const o=B(s,t);o&&i.add(o),s.children.forEach(a)},"collect");if(a(e),i.size===0)return;const c=await Promise.all([...i].map(async s=>({icon:s,svg:await Q(s,{height:y,width:y})}))),l=n.append("defs");for(const{icon:s,svg:o}of c)l.append("g").attr("id",H(r,s)).html(o)},"injectIconDefs"),me=f((n,e,t,r,i,a)=>{const c=r.append("g");let l="treeView-node-label";t.nodeType==="directory"&&(l+=" treeView-node-dir"),t.cssClass&&(l+=` ${t.cssClass}`);const s=y+ge,o=B(t,i),h=o!==void 0;o&&c.append("use").attr("xlink:href",`#${H(a,o)}`).attr("x",n+i.paddingX).attr("y",e+i.paddingY).attr("class","treeView-node-icon");const p=c.append("text").text(t.name).attr("dominant-baseline","middle").attr("class",l),{height:d,width:w}=p.node().getBBox(),g=d+i.paddingY*2,m=n+i.paddingX+(h?s:0);p.attr("x",m),p.attr("y",e+g/2);const u=m+w,v=w+i.paddingX*2+(h?s:0);return t.BBox={x:n,y:e,width:v,height:g},t.cssClass?.split(/\s+/).includes("highlight")&&c.insert("rect",":first-child").attr("x",n).attr("y",e+1).attr("width",0).attr("height",g-2).attr("rx",3).attr("class","treeView-highlight-bg"),{node:t,nodeGroup:c,labelRightEdge:u,centerY:e+g/2}},"positionLabel"),T=f((n,e,t,r,i,a)=>n.append("line").attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",i).attr("stroke-width",a).attr("class","treeView-node-line"),"positionLine"),xe=f((n,e,t,r)=>{let i=0,a=0;const c=[],l=f((h,p,d,w)=>{const g=w*(d.rowIndent+d.paddingX),m=me(g,i,p,h,d,r);c.push(m);const{height:u,width:v}=p.BBox;T(h,g-d.rowIndent,i+u/2,g,i+u/2,d.lineThickness),a=Math.max(a,g+v),i+=u},"drawNode"),s=f((h,p=0)=>{l(n,h,t,p),h.children.forEach(m=>{s(m,p+1)});const{x:d,y:w,height:g}=h.BBox;if(h.children.length){const{y:m,height:u}=h.children[h.children.length-1].BBox;T(n,d+t.paddingX,w+g,d+t.paddingX,m+u/2+t.lineThickness/2,t.lineThickness)}},"processNode");s(e);const o=c.filter(h=>h.node.description);if(o.length>0){const p=Math.max(...c.map(d=>d.labelRightEdge))+ue;for(const d of o){const g=d.nodeGroup.append("text").text(d.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",p).attr("y",d.centerY).node().getBBox();a=Math.max(a,p+g.width+t.paddingX)}}for(const h of c)if(h.node.cssClass?.split(/\s+/).includes("highlight")){const p=h.nodeGroup.select(".treeView-highlight-bg");if(!p.empty()){const d=a-h.node.BBox.x+8;p.attr("width",d),a=Math.max(a,h.node.BBox.x+d+2)}}return{totalHeight:i,totalWidth:a}},"drawTree"),ve=f(async(n,e,t,r)=>{D.debug(`Rendering treeView diagram +`+n);const i=r.db,a=i.getRoot(),c=i.getConfig(),l=Z(e);await we(l,a,c,e);const s=l.append("g");s.attr("class","tree-view");const{totalHeight:o,totalWidth:h}=xe(s,a,c,e);l.attr("viewBox",`-${c.lineThickness/2} 0 ${h} ${o}`),U(l,o,h,c.useMaxWidth)},"draw"),be={draw:ve},Ie=be,Ce={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},ye=f(({treeView:n})=>{const{labelFontSize:e,labelColor:t,lineColor:r,iconColor:i,descriptionColor:a,highlightBg:c,highlightStroke:l}=A(Ce,n);return` .treeView-node-label { font-size: ${e}; fill: ${t}; @@ -27,4 +27,4 @@ import{I as X}from"./chunk-2Q5K7J3B-BBRTtiB5.js";import{p as O}from"./chunk-JWPE stroke: ${l}; stroke-width: 1; } - `},"styles"),Be=ye,Ne={db:I,renderer:Ie,parser:fe,styles:Be};export{Ne as diagram}; + `},"styles"),Be=ye,De={db:I,renderer:Ie,parser:fe,styles:Be};export{De as diagram}; diff --git a/apps/kimi-code/dist-web/assets/diagram-WEI45ONY-B3JjOxuA.js b/apps/kimi-code/dist-web/assets/diagram-WEI45ONY-B3JjOxuA.js deleted file mode 100644 index 38c305e792..0000000000 --- a/apps/kimi-code/dist-web/assets/diagram-WEI45ONY-B3JjOxuA.js +++ /dev/null @@ -1,41 +0,0 @@ -import{p as k}from"./chunk-JWPE2WC7-0N6Q_J0q.js";import{s as R,g as E,o as I,n as _,a as D,b as F,_ as c,D as P,p as z,A as y,y as C,B as G,l as B,E as W,e as V}from"./mermaid.core-Dxfcv_J5.js";import{p as H}from"./cynefin-VYW2F7L2-DQGCJnlE.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var m={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},w={axes:[],curves:[],options:m},x=structuredClone(w),j=G.radar,N=c(()=>y({...j,...C().radar}),"getConfig"),b=c(()=>x.axes,"getAxes"),U=c(()=>x.curves,"getCurves"),X=c(()=>x.options,"getOptions"),Y=c(a=>{x.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),Z=c(a=>{x.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:q(t.entries)}))},"setCurves"),q=c(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=b();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>s.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),J=c(a=>{const t=a.reduce((e,r)=>(e[r.name]=r,e),{});x.options={showLegend:t.showLegend?.value??m.showLegend,ticks:t.ticks?.value??m.ticks,max:t.max?.value??m.max,min:t.min?.value??m.min,graticule:t.graticule?.value??m.graticule}},"setOptions"),K=c(()=>{z(),x=structuredClone(w)},"clear"),$={getAxes:b,getCurves:U,getOptions:X,setAxes:Y,setCurves:Z,setOptions:J,getConfig:N,clear:K,setAccTitle:F,getAccTitle:D,setDiagramTitle:_,getDiagramTitle:I,getAccDescription:E,setAccDescription:R},Q=c(a=>{k(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),tt={parse:c(async a=>{const t=await H("radar",a);B.debug(t),Q(t)},"parse")},et=c((a,t,e,r)=>{const s=r.db,i=s.getAxes(),l=s.getCurves(),n=s.getOptions(),o=s.getConfig(),d=s.getDiagramTitle(),p=P(t),u=at(p,o),g=n.max??Math.max(...l.map(f=>Math.max(...f.entries))),h=n.min,v=Math.min(o.width,o.height)/2;rt(u,i,v,n.ticks,n.graticule),st(u,i,v,o),A(u,i,l,h,g,n.graticule,o),T(u,l,n.showLegend,o),u.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-o.height/2-o.marginTop)},"draw"),at=c((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return V(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`).attr("overflow","visible"),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),rt=c((a,t,e,r,s)=>{if(s==="circle")for(let i=0;i{const u=2*p*Math.PI/i-Math.PI/2,g=n*Math.cos(u),h=n*Math.sin(u);return`${g},${h}`}).join(" ");a.append("polygon").attr("points",o).attr("class","radarGraticule")}}},"drawGraticule"),st=c((a,t,e,r)=>{const s=t.length;for(let i=0;i.01?"start":o<-.01?"end":"middle",u=d>.01?"hanging":d<-.01?"auto":"central",g=4;a.append("text").text(l).attr("x",e*r.axisLabelFactor*o+g*o).attr("y",e*r.axisLabelFactor*d+g*d).attr("text-anchor",p).attr("dominant-baseline",u).attr("class","radarAxisLabel")}},"drawAxes");function A(a,t,e,r,s,i,l){const n=t.length,o=Math.min(l.width,l.height)/2;e.forEach((d,p)=>{if(d.entries.length!==n)return;const u=d.entries.map((g,h)=>{const v=2*Math.PI*h/n-Math.PI/2,f=M(g,r,s,o),S=f*Math.cos(v),O=f*Math.sin(v);return{x:S,y:O}});i==="circle"?a.append("path").attr("d",L(u,l.curveTension)).attr("class",`radarCurve-${p}`):i==="polygon"&&a.append("polygon").attr("points",u.map(g=>`${g.x},${g.y}`).join(" ")).attr("class",`radarCurve-${p}`)})}c(A,"drawCurves");function M(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}c(M,"relativeRadius");function L(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s{const d=a.append("g").attr("transform",`translate(${s}, ${i+o*l})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${o}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}c(T,"drawLegend");var nt={draw:et},ot=c((a,t)=>{let e="";for(let r=0;r{const t=W(),e=C(),r=y(t,e.themeVariables),s=y(r.radar,a);return{themeVariables:r,radarOptions:s}},"buildRadarStyleOptions"),lt=c(({radar:a}={})=>{const{themeVariables:t,radarOptions:e}=it(a);return` - .radarTitle { - font-size: ${t.fontSize}; - color: ${t.titleColor}; - dominant-baseline: hanging; - text-anchor: middle; - } - .radarAxisLine { - stroke: ${e.axisColor}; - stroke-width: ${e.axisStrokeWidth}; - } - .radarAxisLabel { - font-size: ${e.axisLabelFontSize}px; - color: ${e.axisColor}; - } - .radarGraticule { - fill: ${e.graticuleColor}; - fill-opacity: ${e.graticuleOpacity}; - stroke: ${e.graticuleColor}; - stroke-width: ${e.graticuleStrokeWidth}; - } - .radarLegendText { - text-anchor: start; - font-size: ${e.legendFontSize}px; - dominant-baseline: hanging; - } - ${ot(t,e)} - `},"styles"),xt={parser:tt,db:$,renderer:nt,styles:lt};export{xt as diagram}; diff --git a/apps/kimi-code/dist-web/assets/diagram-WEI45ONY-Cq5_ZmJn.js b/apps/kimi-code/dist-web/assets/diagram-WEI45ONY-Cq5_ZmJn.js new file mode 100644 index 0000000000..dc9c3daa89 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/diagram-WEI45ONY-Cq5_ZmJn.js @@ -0,0 +1,41 @@ +import{p as k}from"./chunk-JWPE2WC7-CFaSk12U.js";import{s as R,g as F,p as I,o as _,a as D,b as E,_ as c,F as z,q as P,B as y,z as C,D as G,l as B,W,e as V}from"./mermaid.core-AN7v7N47.js";import{p as H}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import"./index-Dnz6Zudc.js";var m={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},w={axes:[],curves:[],options:m},x=structuredClone(w),j=G.radar,q=c(()=>y({...j,...C().radar}),"getConfig"),b=c(()=>x.axes,"getAxes"),N=c(()=>x.curves,"getCurves"),U=c(()=>x.options,"getOptions"),X=c(a=>{x.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),Y=c(a=>{x.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:Z(t.entries)}))},"setCurves"),Z=c(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=b();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>s.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),J=c(a=>{const t=a.reduce((e,r)=>(e[r.name]=r,e),{});x.options={showLegend:t.showLegend?.value??m.showLegend,ticks:t.ticks?.value??m.ticks,max:t.max?.value??m.max,min:t.min?.value??m.min,graticule:t.graticule?.value??m.graticule}},"setOptions"),K=c(()=>{P(),x=structuredClone(w)},"clear"),$={getAxes:b,getCurves:N,getOptions:U,setAxes:X,setCurves:Y,setOptions:J,getConfig:q,clear:K,setAccTitle:E,getAccTitle:D,setDiagramTitle:_,getDiagramTitle:I,getAccDescription:F,setAccDescription:R},Q=c(a=>{k(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),tt={parse:c(async a=>{const t=await H("radar",a);B.debug(t),Q(t)},"parse")},et=c((a,t,e,r)=>{const s=r.db,i=s.getAxes(),l=s.getCurves(),n=s.getOptions(),o=s.getConfig(),d=s.getDiagramTitle(),p=z(t),u=at(p,o),g=n.max??Math.max(...l.map(f=>Math.max(...f.entries))),h=n.min,v=Math.min(o.width,o.height)/2;rt(u,i,v,n.ticks,n.graticule),st(u,i,v,o),A(u,i,l,h,g,n.graticule,o),T(u,l,n.showLegend,o),u.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-o.height/2-o.marginTop)},"draw"),at=c((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return V(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`).attr("overflow","visible"),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),rt=c((a,t,e,r,s)=>{if(s==="circle")for(let i=0;i{const u=2*p*Math.PI/i-Math.PI/2,g=n*Math.cos(u),h=n*Math.sin(u);return`${g},${h}`}).join(" ");a.append("polygon").attr("points",o).attr("class","radarGraticule")}}},"drawGraticule"),st=c((a,t,e,r)=>{const s=t.length;for(let i=0;i.01?"start":o<-.01?"end":"middle",u=d>.01?"hanging":d<-.01?"auto":"central",g=4;a.append("text").text(l).attr("x",e*r.axisLabelFactor*o+g*o).attr("y",e*r.axisLabelFactor*d+g*d).attr("text-anchor",p).attr("dominant-baseline",u).attr("class","radarAxisLabel")}},"drawAxes");function A(a,t,e,r,s,i,l){const n=t.length,o=Math.min(l.width,l.height)/2;e.forEach((d,p)=>{if(d.entries.length!==n)return;const u=d.entries.map((g,h)=>{const v=2*Math.PI*h/n-Math.PI/2,f=M(g,r,s,o),S=f*Math.cos(v),O=f*Math.sin(v);return{x:S,y:O}});i==="circle"?a.append("path").attr("d",L(u,l.curveTension)).attr("class",`radarCurve-${p}`):i==="polygon"&&a.append("polygon").attr("points",u.map(g=>`${g.x},${g.y}`).join(" ")).attr("class",`radarCurve-${p}`)})}c(A,"drawCurves");function M(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}c(M,"relativeRadius");function L(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s{const d=a.append("g").attr("transform",`translate(${s}, ${i+o*l})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${o}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}c(T,"drawLegend");var nt={draw:et},ot=c((a,t)=>{let e="";for(let r=0;r{const t=W(),e=C(),r=y(t,e.themeVariables),s=y(r.radar,a);return{themeVariables:r,radarOptions:s}},"buildRadarStyleOptions"),lt=c(({radar:a}={})=>{const{themeVariables:t,radarOptions:e}=it(a);return` + .radarTitle { + font-size: ${t.fontSize}; + color: ${t.titleColor}; + dominant-baseline: hanging; + text-anchor: middle; + } + .radarAxisLine { + stroke: ${e.axisColor}; + stroke-width: ${e.axisStrokeWidth}; + } + .radarAxisLabel { + font-size: ${e.axisLabelFontSize}px; + color: ${e.axisColor}; + } + .radarGraticule { + fill: ${e.graticuleColor}; + fill-opacity: ${e.graticuleOpacity}; + stroke: ${e.graticuleColor}; + stroke-width: ${e.graticuleStrokeWidth}; + } + .radarLegendText { + text-anchor: start; + font-size: ${e.legendFontSize}px; + dominant-baseline: hanging; + } + ${ot(t,e)} + `},"styles"),gt={parser:tt,db:$,renderer:nt,styles:lt};export{gt as diagram}; diff --git a/apps/kimi-code/dist-web/assets/ebnfDiagram-CCIWWBDH-DPm9WU6R.js b/apps/kimi-code/dist-web/assets/ebnfDiagram-CCIWWBDH-DPm9WU6R.js deleted file mode 100644 index 46ac3322fc..0000000000 --- a/apps/kimi-code/dist-web/assets/ebnfDiagram-CCIWWBDH-DPm9WU6R.js +++ /dev/null @@ -1 +0,0 @@ -import{g as l,r as m,d as n}from"./chunk-MOJQB5TN-DOlN8qtA.js";import{p}from"./chunk-JWPE2WC7-0N6Q_J0q.js";import{_ as t,l as o}from"./mermaid.core-Dxfcv_J5.js";import{M as u,a as f}from"./cynefin-VYW2F7L2-DQGCJnlE.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var c=f().RailroadEbnf.parser.LangiumParser,s=t(e=>{const r=e.alternatives.map(E);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformChoice"),E=t(e=>{const r=e.elements.map(d);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformSequence"),i=t(e=>{switch(e.$type){case"EbnfTerminal":return{type:"terminal",value:e.value};case"EbnfNonTerminal":return{type:"nonterminal",name:e.name};case"EbnfSpecial":return{type:"special",text:e.text};case"EbnfGroup":return s(e.element);case"EbnfOptional":return{type:"optional",element:s(e.element)};case"EbnfRepetition":return{type:"repetition",element:s(e.element),min:0,max:1/0};default:throw new Error(`Unsupported EBNF primary node: ${e.$type}`)}},"transformPrimary"),b=t((e,r)=>{switch(r.$type){case"EbnfOptionalPostfix":return{type:"optional",element:e};case"EbnfZeroOrMorePostfix":return{type:"repetition",element:e,min:0,max:1/0};case"EbnfOneOrMorePostfix":return{type:"repetition",element:e,min:1,max:1/0};case"EbnfExceptionPostfix":return{type:"sequence",elements:[e,{type:"terminal",value:"-"},i(r.except)]};default:throw new Error(`Unsupported EBNF postfix node: ${r.$type}`)}},"transformPostfix"),d=t(e=>e.postfixes.reduce((r,a)=>b(r,a),i(e.base)),"transformTerm"),y=t(e=>({name:e.name,definition:s(e.definition)}),"transformRule"),v=t(e=>{p(e,n),e.title&&n.setTitle(e.title),e.rules.map(r=>n.addRule(y(r)))},"populateDb"),g={parse:t(e=>{n.clear(),o.debug("[EBNF Parser] Starting Langium parse");const r=c.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new u(r);const a=r.value;o.debug("[EBNF Parser] Parsed rules:",a.rules.length),v(a),o.debug("[EBNF Parser] Parse complete")},"parse"),parser:{yy:n}},S={parser:g,db:n,renderer:m,styles:l};export{S as diagram}; diff --git a/apps/kimi-code/dist-web/assets/ebnfDiagram-CCIWWBDH-ydUyyG4g.js b/apps/kimi-code/dist-web/assets/ebnfDiagram-CCIWWBDH-ydUyyG4g.js new file mode 100644 index 0000000000..b75cc1189d --- /dev/null +++ b/apps/kimi-code/dist-web/assets/ebnfDiagram-CCIWWBDH-ydUyyG4g.js @@ -0,0 +1 @@ +import{g as l,r as m,d as n}from"./chunk-MOJQB5TN-nz6Iv7r_.js";import{p}from"./chunk-JWPE2WC7-CFaSk12U.js";import{_ as t,l as o}from"./mermaid.core-AN7v7N47.js";import{M as u,a as f}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import"./index-Dnz6Zudc.js";var c=f().RailroadEbnf.parser.LangiumParser,s=t(e=>{const r=e.alternatives.map(E);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformChoice"),E=t(e=>{const r=e.elements.map(d);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformSequence"),i=t(e=>{switch(e.$type){case"EbnfTerminal":return{type:"terminal",value:e.value};case"EbnfNonTerminal":return{type:"nonterminal",name:e.name};case"EbnfSpecial":return{type:"special",text:e.text};case"EbnfGroup":return s(e.element);case"EbnfOptional":return{type:"optional",element:s(e.element)};case"EbnfRepetition":return{type:"repetition",element:s(e.element),min:0,max:1/0};default:throw new Error(`Unsupported EBNF primary node: ${e.$type}`)}},"transformPrimary"),b=t((e,r)=>{switch(r.$type){case"EbnfOptionalPostfix":return{type:"optional",element:e};case"EbnfZeroOrMorePostfix":return{type:"repetition",element:e,min:0,max:1/0};case"EbnfOneOrMorePostfix":return{type:"repetition",element:e,min:1,max:1/0};case"EbnfExceptionPostfix":return{type:"sequence",elements:[e,{type:"terminal",value:"-"},i(r.except)]};default:throw new Error(`Unsupported EBNF postfix node: ${r.$type}`)}},"transformPostfix"),d=t(e=>e.postfixes.reduce((r,a)=>b(r,a),i(e.base)),"transformTerm"),y=t(e=>({name:e.name,definition:s(e.definition)}),"transformRule"),v=t(e=>{p(e,n),e.title&&n.setTitle(e.title),e.rules.map(r=>n.addRule(y(r)))},"populateDb"),g={parse:t(e=>{n.clear(),o.debug("[EBNF Parser] Starting Langium parse");const r=c.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new u(r);const a=r.value;o.debug("[EBNF Parser] Parsed rules:",a.rules.length),v(a),o.debug("[EBNF Parser] Parse complete")},"parse"),parser:{yy:n}},R={parser:g,db:n,renderer:m,styles:l};export{R as diagram}; diff --git a/apps/kimi-code/dist-web/assets/erDiagram-Q63AITRT-BF_M9qKN.js b/apps/kimi-code/dist-web/assets/erDiagram-Q63AITRT-1GF9mnaH.js similarity index 61% rename from apps/kimi-code/dist-web/assets/erDiagram-Q63AITRT-BF_M9qKN.js rename to apps/kimi-code/dist-web/assets/erDiagram-Q63AITRT-1GF9mnaH.js index ef92a21796..ff9eda334c 100644 --- a/apps/kimi-code/dist-web/assets/erDiagram-Q63AITRT-BF_M9qKN.js +++ b/apps/kimi-code/dist-web/assets/erDiagram-Q63AITRT-1GF9mnaH.js @@ -1,4 +1,4 @@ -import{g as Mt}from"./chunk-XXDRQBXY-C3GGkCwU.js";import{s as Bt}from"./chunk-VR4S4FIN-gihGNGO1.js";import{_ as l,b as Ft,a as Yt,s as Pt,g as zt,n as Gt,o as Kt,c as it,l as V,p as Ut,q as Zt,r as jt,t as Wt,u as qt,v as Qt,d as Xt,x as Ht}from"./mermaid.core-Dxfcv_J5.js";import{c as Jt}from"./channel-BWBJkLRL.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var _t=(function(){var e=l(function(I,n,c,o){for(c=c||{},o=I.length;o--;c[I[o]]=n);return c},"o"),i=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],h=[1,10],a=[1,11],u=[1,12],d=[1,13],y=[1,23],f=[1,24],m=[1,25],j=[1,26],W=[1,27],S=[1,19],q=[1,28],M=[1,29],D=[1,20],R=[1,18],T=[1,21],C=[1,22],nt=[1,36],at=[1,37],ct=[1,38],ot=[1,39],lt=[1,40],B=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,66,67,68,69,70],O=[1,45],N=[1,46],F=[1,55],Y=[40,48,50,51,52,71,72],P=[1,66],z=[1,64],A=[1,61],G=[1,65],K=[1,67],Q=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,66,67,68,69,70],gt=[66,67,68,69,70],bt=[1,85],kt=[1,84],mt=[1,82],Et=[1,83],St=[6,10,42,47],L=[6,10,13,41,42,47,48,49],X=[1,93],H=[1,92],J=[1,91],U=[19,58],Tt=[1,102],Ot=[1,101],ht=[19,58,61,63],ut={trace:l(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,"?":59,attributeKeyType:60,",":61,ATTRIBUTE_KEY:62,COMMENT:63,cardinality:64,relType:65,ZERO_OR_ONE:66,ZERO_OR_MORE:67,ONE_OR_MORE:68,ONLY_ONE:69,MD_PARENT:70,NON_IDENTIFYING:71,IDENTIFYING:72,WORD:73,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",51:"DECIMAL_NUM",52:"ENTITY_ONE",58:"ATTRIBUTE_WORD",59:"?",61:",",62:"ATTRIBUTE_KEY",63:"COMMENT",66:"ZERO_OR_ONE",67:"ZERO_OR_MORE",68:"ONE_OR_MORE",69:"ONLY_ONE",70:"MD_PARENT",71:"NON_IDENTIFYING",72:"IDENTIFYING",73:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[54,2],[55,1],[56,1],[56,3],[60,1],[57,1],[12,3],[64,1],[64,1],[64,1],[64,1],[64,1],[65,1],[65,1],[14,1],[14,1],[14,1]],performAction:l(function(n,c,o,r,p,t,Z){var s=t.length-1;switch(p){case 1:break;case 2:this.$=[];break;case 3:t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 5:this.$=t[s];break;case 6:case 7:this.$=[];break;case 8:r.addEntity(t[s-4]),r.addEntity(t[s-2]),r.addRelationship(t[s-4],t[s],t[s-2],t[s-3]);break;case 9:r.addEntity(t[s-8]),r.addEntity(t[s-4]),r.addRelationship(t[s-8],t[s],t[s-4],t[s-5]),r.setClass([t[s-8]],t[s-6]),r.setClass([t[s-4]],t[s-2]);break;case 10:r.addEntity(t[s-6]),r.addEntity(t[s-2]),r.addRelationship(t[s-6],t[s],t[s-2],t[s-3]),r.setClass([t[s-6]],t[s-4]);break;case 11:r.addEntity(t[s-6]),r.addEntity(t[s-4]),r.addRelationship(t[s-6],t[s],t[s-4],t[s-5]),r.setClass([t[s-4]],t[s-2]);break;case 12:r.addEntity(t[s-3]),r.addAttributes(t[s-3],t[s-1]);break;case 13:r.addEntity(t[s-5]),r.addAttributes(t[s-5],t[s-1]),r.setClass([t[s-5]],t[s-3]);break;case 14:r.addEntity(t[s-2]);break;case 15:r.addEntity(t[s-4]),r.setClass([t[s-4]],t[s-2]);break;case 16:r.addEntity(t[s]);break;case 17:r.addEntity(t[s-2]),r.setClass([t[s-2]],t[s]);break;case 18:r.addEntity(t[s-6],t[s-4]),r.addAttributes(t[s-6],t[s-1]);break;case 19:r.addEntity(t[s-8],t[s-6]),r.addAttributes(t[s-8],t[s-1]),r.setClass([t[s-8]],t[s-3]);break;case 20:r.addEntity(t[s-5],t[s-3]);break;case 21:r.addEntity(t[s-7],t[s-5]),r.setClass([t[s-7]],t[s-2]);break;case 22:r.addEntity(t[s-3],t[s-1]);break;case 23:r.addEntity(t[s-5],t[s-3]),r.setClass([t[s-5]],t[s]);break;case 24:case 25:this.$=t[s].trim(),r.setAccTitle(this.$);break;case 26:case 27:this.$=t[s].trim(),r.setAccDescription(this.$);break;case 32:r.setDirection("TB");break;case 33:r.setDirection("BT");break;case 34:r.setDirection("RL");break;case 35:r.setDirection("LR");break;case 36:this.$=t[s-3],r.addClass(t[s-2],t[s-1]);break;case 37:case 38:case 59:case 68:this.$=[t[s]];break;case 39:case 40:this.$=t[s-2].concat([t[s]]);break;case 41:this.$=t[s-2],r.setClass(t[s-1],t[s]);break;case 42:this.$=t[s-3],r.addCssStyles(t[s-2],t[s-1]);break;case 43:this.$=[t[s]];break;case 44:t[s-2].push(t[s]),this.$=t[s-2];break;case 46:this.$=t[s-1]+t[s];break;case 54:case 80:case 81:this.$=t[s].replace(/"/g,"");break;case 55:case 56:case 57:case 58:case 82:this.$=t[s];break;case 60:t[s].push(t[s-1]),this.$=t[s];break;case 61:this.$={type:t[s-1],name:t[s]};break;case 62:this.$={type:t[s-2],name:t[s-1],keys:t[s]};break;case 63:this.$={type:t[s-2],name:t[s-1],comment:t[s]};break;case 64:this.$={type:t[s-3],name:t[s-2],keys:t[s-1],comment:t[s]};break;case 65:case 67:case 70:this.$=t[s];break;case 66:this.$=t[s-1]+t[s];break;case 69:t[s-2].push(t[s]),this.$=t[s-2];break;case 71:this.$=t[s].replace(/"/g,"");break;case 72:this.$={cardA:t[s],relType:t[s-1],cardB:t[s-2]};break;case 73:this.$=r.Cardinality.ZERO_OR_ONE;break;case 74:this.$=r.Cardinality.ZERO_OR_MORE;break;case 75:this.$=r.Cardinality.ONE_OR_MORE;break;case 76:this.$=r.Cardinality.ONLY_ONE;break;case 77:this.$=r.Cardinality.MD_PARENT;break;case 78:this.$=r.Identification.NON_IDENTIFYING;break;case 79:this.$=r.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},e(i,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:h,24:a,26:u,28:d,29:14,30:15,31:16,32:17,33:y,34:f,35:m,36:j,37:W,40:S,43:q,44:M,48:D,50:R,51:T,52:C},e(i,[2,7],{1:[2,1]}),e(i,[2,3]),{9:30,11:9,22:h,24:a,26:u,28:d,29:14,30:15,31:16,32:17,33:y,34:f,35:m,36:j,37:W,40:S,43:q,44:M,48:D,50:R,51:T,52:C},e(i,[2,5]),e(i,[2,6]),e(i,[2,16],{12:31,64:35,15:[1,32],17:[1,33],20:[1,34],66:nt,67:at,68:ct,69:ot,70:lt}),{23:[1,41]},{25:[1,42]},{27:[1,43]},e(i,[2,27]),e(i,[2,28]),e(i,[2,29]),e(i,[2,30]),e(i,[2,31]),e(B,[2,54]),e(B,[2,55]),e(B,[2,56]),e(B,[2,57]),e(B,[2,58]),e(i,[2,32]),e(i,[2,33]),e(i,[2,34]),e(i,[2,35]),{16:44,40:O,41:N},{16:47,40:O,41:N},{16:48,40:O,41:N},e(i,[2,4]),{11:49,40:S,48:D,50:R,51:T,52:C},{16:50,40:O,41:N},{18:51,19:[1,52],53:53,54:54,58:F},{11:56,40:S,48:D,50:R,51:T,52:C},{65:57,71:[1,58],72:[1,59]},e(Y,[2,73]),e(Y,[2,74]),e(Y,[2,75]),e(Y,[2,76]),e(Y,[2,77]),e(i,[2,24]),e(i,[2,25]),e(i,[2,26]),{13:P,38:60,41:z,42:A,45:62,46:63,48:G,49:K},e(Q,[2,37]),e(Q,[2,38]),{16:68,40:O,41:N,42:A},{13:P,38:69,41:z,42:A,45:62,46:63,48:G,49:K},{13:[1,70],15:[1,71]},e(i,[2,17],{64:35,12:72,17:[1,73],42:A,66:nt,67:at,68:ct,69:ot,70:lt}),{19:[1,74]},e(i,[2,14]),{18:75,19:[2,59],53:53,54:54,58:F},{55:76,58:[1,77]},{58:[2,65],59:[1,78]},{21:[1,79]},{64:80,66:nt,67:at,68:ct,69:ot,70:lt},e(gt,[2,78]),e(gt,[2,79]),{6:bt,10:kt,39:81,42:mt,47:Et},{40:[1,86],41:[1,87]},e(St,[2,43],{46:88,13:P,41:z,48:G,49:K}),e(L,[2,45]),e(L,[2,50]),e(L,[2,51]),e(L,[2,52]),e(L,[2,53]),e(i,[2,41],{42:A}),{6:bt,10:kt,39:89,42:mt,47:Et},{14:90,40:X,50:H,73:J},{16:94,40:O,41:N},{11:95,40:S,48:D,50:R,51:T,52:C},{18:96,19:[1,97],53:53,54:54,58:F},e(i,[2,12]),{19:[2,60]},e(U,[2,61],{56:98,57:99,60:100,62:Tt,63:Ot}),e([19,58,62,63],[2,67]),{58:[2,66]},e(i,[2,22],{15:[1,104],17:[1,103]}),e([40,48,50,51,52],[2,72]),e(i,[2,36]),{13:P,41:z,45:105,46:63,48:G,49:K},e(i,[2,47]),e(i,[2,48]),e(i,[2,49]),e(Q,[2,39]),e(Q,[2,40]),e(L,[2,46]),e(i,[2,42]),e(i,[2,8]),e(i,[2,80]),e(i,[2,81]),e(i,[2,82]),{13:[1,106],42:A},{13:[1,108],15:[1,107]},{19:[1,109]},e(i,[2,15]),e(U,[2,62],{57:110,61:[1,111],63:Ot}),e(U,[2,63]),e(ht,[2,68]),e(U,[2,71]),e(ht,[2,70]),{18:112,19:[1,113],53:53,54:54,58:F},{16:114,40:O,41:N},e(St,[2,44],{46:88,13:P,41:z,48:G,49:K}),{14:115,40:X,50:H,73:J},{16:116,40:O,41:N},{14:117,40:X,50:H,73:J},e(i,[2,13]),e(U,[2,64]),{60:118,62:Tt},{19:[1,119]},e(i,[2,20]),e(i,[2,23],{17:[1,120],42:A}),e(i,[2,11]),{13:[1,121],42:A},e(i,[2,10]),e(ht,[2,69]),e(i,[2,18]),{18:122,19:[1,123],53:53,54:54,58:F},{14:124,40:X,50:H,73:J},{19:[1,125]},e(i,[2,21]),e(i,[2,9]),e(i,[2,19])],defaultActions:{75:[2,60],78:[2,66]},parseError:l(function(n,c){if(c.recoverable)this.trace(n);else{var o=new Error(n);throw o.hash=c,o}},"parseError"),parse:l(function(n){var c=this,o=[0],r=[],p=[null],t=[],Z=this.table,s="",tt=0,Nt=0,Dt=2,At=1,Lt=t.slice.call(arguments,1),_=Object.create(this.lexer),x={yy:{}};for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dt)&&(x.yy[dt]=this.yy[dt]);_.setInput(n,x.yy),x.yy.lexer=_,x.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var pt=_.yylloc;t.push(pt);var wt=_.options&&_.options.ranges;typeof x.yy.parseError=="function"?this.parseError=x.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Vt(b){o.length=o.length-2*b,p.length=p.length-b,t.length=t.length-b}l(Vt,"popStack");function It(){var b;return b=r.pop()||_.lex()||At,typeof b!="number"&&(b instanceof Array&&(r=b,b=r.pop()),b=c.symbols_[b]||b),b}l(It,"lex");for(var g,v,k,ft,w={},et,E,Rt,st;;){if(v=o[o.length-1],this.defaultActions[v]?k=this.defaultActions[v]:((g===null||typeof g>"u")&&(g=It()),k=Z[v]&&Z[v][g]),typeof k>"u"||!k.length||!k[0]){var yt="";st=[];for(et in Z[v])this.terminals_[et]&&et>Dt&&st.push("'"+this.terminals_[et]+"'");_.showPosition?yt="Parse error on line "+(tt+1)+`: +import{g as Mt}from"./chunk-XXDRQBXY-BRRtW_Of.js";import{s as Bt}from"./chunk-VR4S4FIN-DMqAUMdK.js";import{_ as l,b as Ft,a as Yt,s as Pt,g as zt,o as Gt,p as Kt,c as it,l as V,q as Ut,r as Zt,t as jt,u as Wt,v as qt,x as Qt,d as Xt,y as Ht}from"./mermaid.core-AN7v7N47.js";import{c as Jt}from"./channel-CsfHBtue.js";import"./index-Dnz6Zudc.js";var _t=(function(){var e=l(function(I,n,c,o){for(c=c||{},o=I.length;o--;c[I[o]]=n);return c},"o"),i=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],h=[1,10],a=[1,11],u=[1,12],d=[1,13],y=[1,23],f=[1,24],m=[1,25],j=[1,26],W=[1,27],S=[1,19],q=[1,28],M=[1,29],D=[1,20],R=[1,18],T=[1,21],C=[1,22],nt=[1,36],at=[1,37],ct=[1,38],ot=[1,39],lt=[1,40],B=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,66,67,68,69,70],O=[1,45],N=[1,46],F=[1,55],Y=[40,48,50,51,52,71,72],P=[1,66],z=[1,64],A=[1,61],G=[1,65],K=[1,67],Q=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,66,67,68,69,70],gt=[66,67,68,69,70],bt=[1,85],kt=[1,84],mt=[1,82],Et=[1,83],St=[6,10,42,47],L=[6,10,13,41,42,47,48,49],X=[1,93],H=[1,92],J=[1,91],U=[19,58],Tt=[1,102],Ot=[1,101],ht=[19,58,61,63],ut={trace:l(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,"?":59,attributeKeyType:60,",":61,ATTRIBUTE_KEY:62,COMMENT:63,cardinality:64,relType:65,ZERO_OR_ONE:66,ZERO_OR_MORE:67,ONE_OR_MORE:68,ONLY_ONE:69,MD_PARENT:70,NON_IDENTIFYING:71,IDENTIFYING:72,WORD:73,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",51:"DECIMAL_NUM",52:"ENTITY_ONE",58:"ATTRIBUTE_WORD",59:"?",61:",",62:"ATTRIBUTE_KEY",63:"COMMENT",66:"ZERO_OR_ONE",67:"ZERO_OR_MORE",68:"ONE_OR_MORE",69:"ONLY_ONE",70:"MD_PARENT",71:"NON_IDENTIFYING",72:"IDENTIFYING",73:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[54,2],[55,1],[56,1],[56,3],[60,1],[57,1],[12,3],[64,1],[64,1],[64,1],[64,1],[64,1],[65,1],[65,1],[14,1],[14,1],[14,1]],performAction:l(function(n,c,o,r,p,t,Z){var s=t.length-1;switch(p){case 1:break;case 2:this.$=[];break;case 3:t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 5:this.$=t[s];break;case 6:case 7:this.$=[];break;case 8:r.addEntity(t[s-4]),r.addEntity(t[s-2]),r.addRelationship(t[s-4],t[s],t[s-2],t[s-3]);break;case 9:r.addEntity(t[s-8]),r.addEntity(t[s-4]),r.addRelationship(t[s-8],t[s],t[s-4],t[s-5]),r.setClass([t[s-8]],t[s-6]),r.setClass([t[s-4]],t[s-2]);break;case 10:r.addEntity(t[s-6]),r.addEntity(t[s-2]),r.addRelationship(t[s-6],t[s],t[s-2],t[s-3]),r.setClass([t[s-6]],t[s-4]);break;case 11:r.addEntity(t[s-6]),r.addEntity(t[s-4]),r.addRelationship(t[s-6],t[s],t[s-4],t[s-5]),r.setClass([t[s-4]],t[s-2]);break;case 12:r.addEntity(t[s-3]),r.addAttributes(t[s-3],t[s-1]);break;case 13:r.addEntity(t[s-5]),r.addAttributes(t[s-5],t[s-1]),r.setClass([t[s-5]],t[s-3]);break;case 14:r.addEntity(t[s-2]);break;case 15:r.addEntity(t[s-4]),r.setClass([t[s-4]],t[s-2]);break;case 16:r.addEntity(t[s]);break;case 17:r.addEntity(t[s-2]),r.setClass([t[s-2]],t[s]);break;case 18:r.addEntity(t[s-6],t[s-4]),r.addAttributes(t[s-6],t[s-1]);break;case 19:r.addEntity(t[s-8],t[s-6]),r.addAttributes(t[s-8],t[s-1]),r.setClass([t[s-8]],t[s-3]);break;case 20:r.addEntity(t[s-5],t[s-3]);break;case 21:r.addEntity(t[s-7],t[s-5]),r.setClass([t[s-7]],t[s-2]);break;case 22:r.addEntity(t[s-3],t[s-1]);break;case 23:r.addEntity(t[s-5],t[s-3]),r.setClass([t[s-5]],t[s]);break;case 24:case 25:this.$=t[s].trim(),r.setAccTitle(this.$);break;case 26:case 27:this.$=t[s].trim(),r.setAccDescription(this.$);break;case 32:r.setDirection("TB");break;case 33:r.setDirection("BT");break;case 34:r.setDirection("RL");break;case 35:r.setDirection("LR");break;case 36:this.$=t[s-3],r.addClass(t[s-2],t[s-1]);break;case 37:case 38:case 59:case 68:this.$=[t[s]];break;case 39:case 40:this.$=t[s-2].concat([t[s]]);break;case 41:this.$=t[s-2],r.setClass(t[s-1],t[s]);break;case 42:this.$=t[s-3],r.addCssStyles(t[s-2],t[s-1]);break;case 43:this.$=[t[s]];break;case 44:t[s-2].push(t[s]),this.$=t[s-2];break;case 46:this.$=t[s-1]+t[s];break;case 54:case 80:case 81:this.$=t[s].replace(/"/g,"");break;case 55:case 56:case 57:case 58:case 82:this.$=t[s];break;case 60:t[s].push(t[s-1]),this.$=t[s];break;case 61:this.$={type:t[s-1],name:t[s]};break;case 62:this.$={type:t[s-2],name:t[s-1],keys:t[s]};break;case 63:this.$={type:t[s-2],name:t[s-1],comment:t[s]};break;case 64:this.$={type:t[s-3],name:t[s-2],keys:t[s-1],comment:t[s]};break;case 65:case 67:case 70:this.$=t[s];break;case 66:this.$=t[s-1]+t[s];break;case 69:t[s-2].push(t[s]),this.$=t[s-2];break;case 71:this.$=t[s].replace(/"/g,"");break;case 72:this.$={cardA:t[s],relType:t[s-1],cardB:t[s-2]};break;case 73:this.$=r.Cardinality.ZERO_OR_ONE;break;case 74:this.$=r.Cardinality.ZERO_OR_MORE;break;case 75:this.$=r.Cardinality.ONE_OR_MORE;break;case 76:this.$=r.Cardinality.ONLY_ONE;break;case 77:this.$=r.Cardinality.MD_PARENT;break;case 78:this.$=r.Identification.NON_IDENTIFYING;break;case 79:this.$=r.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},e(i,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:h,24:a,26:u,28:d,29:14,30:15,31:16,32:17,33:y,34:f,35:m,36:j,37:W,40:S,43:q,44:M,48:D,50:R,51:T,52:C},e(i,[2,7],{1:[2,1]}),e(i,[2,3]),{9:30,11:9,22:h,24:a,26:u,28:d,29:14,30:15,31:16,32:17,33:y,34:f,35:m,36:j,37:W,40:S,43:q,44:M,48:D,50:R,51:T,52:C},e(i,[2,5]),e(i,[2,6]),e(i,[2,16],{12:31,64:35,15:[1,32],17:[1,33],20:[1,34],66:nt,67:at,68:ct,69:ot,70:lt}),{23:[1,41]},{25:[1,42]},{27:[1,43]},e(i,[2,27]),e(i,[2,28]),e(i,[2,29]),e(i,[2,30]),e(i,[2,31]),e(B,[2,54]),e(B,[2,55]),e(B,[2,56]),e(B,[2,57]),e(B,[2,58]),e(i,[2,32]),e(i,[2,33]),e(i,[2,34]),e(i,[2,35]),{16:44,40:O,41:N},{16:47,40:O,41:N},{16:48,40:O,41:N},e(i,[2,4]),{11:49,40:S,48:D,50:R,51:T,52:C},{16:50,40:O,41:N},{18:51,19:[1,52],53:53,54:54,58:F},{11:56,40:S,48:D,50:R,51:T,52:C},{65:57,71:[1,58],72:[1,59]},e(Y,[2,73]),e(Y,[2,74]),e(Y,[2,75]),e(Y,[2,76]),e(Y,[2,77]),e(i,[2,24]),e(i,[2,25]),e(i,[2,26]),{13:P,38:60,41:z,42:A,45:62,46:63,48:G,49:K},e(Q,[2,37]),e(Q,[2,38]),{16:68,40:O,41:N,42:A},{13:P,38:69,41:z,42:A,45:62,46:63,48:G,49:K},{13:[1,70],15:[1,71]},e(i,[2,17],{64:35,12:72,17:[1,73],42:A,66:nt,67:at,68:ct,69:ot,70:lt}),{19:[1,74]},e(i,[2,14]),{18:75,19:[2,59],53:53,54:54,58:F},{55:76,58:[1,77]},{58:[2,65],59:[1,78]},{21:[1,79]},{64:80,66:nt,67:at,68:ct,69:ot,70:lt},e(gt,[2,78]),e(gt,[2,79]),{6:bt,10:kt,39:81,42:mt,47:Et},{40:[1,86],41:[1,87]},e(St,[2,43],{46:88,13:P,41:z,48:G,49:K}),e(L,[2,45]),e(L,[2,50]),e(L,[2,51]),e(L,[2,52]),e(L,[2,53]),e(i,[2,41],{42:A}),{6:bt,10:kt,39:89,42:mt,47:Et},{14:90,40:X,50:H,73:J},{16:94,40:O,41:N},{11:95,40:S,48:D,50:R,51:T,52:C},{18:96,19:[1,97],53:53,54:54,58:F},e(i,[2,12]),{19:[2,60]},e(U,[2,61],{56:98,57:99,60:100,62:Tt,63:Ot}),e([19,58,62,63],[2,67]),{58:[2,66]},e(i,[2,22],{15:[1,104],17:[1,103]}),e([40,48,50,51,52],[2,72]),e(i,[2,36]),{13:P,41:z,45:105,46:63,48:G,49:K},e(i,[2,47]),e(i,[2,48]),e(i,[2,49]),e(Q,[2,39]),e(Q,[2,40]),e(L,[2,46]),e(i,[2,42]),e(i,[2,8]),e(i,[2,80]),e(i,[2,81]),e(i,[2,82]),{13:[1,106],42:A},{13:[1,108],15:[1,107]},{19:[1,109]},e(i,[2,15]),e(U,[2,62],{57:110,61:[1,111],63:Ot}),e(U,[2,63]),e(ht,[2,68]),e(U,[2,71]),e(ht,[2,70]),{18:112,19:[1,113],53:53,54:54,58:F},{16:114,40:O,41:N},e(St,[2,44],{46:88,13:P,41:z,48:G,49:K}),{14:115,40:X,50:H,73:J},{16:116,40:O,41:N},{14:117,40:X,50:H,73:J},e(i,[2,13]),e(U,[2,64]),{60:118,62:Tt},{19:[1,119]},e(i,[2,20]),e(i,[2,23],{17:[1,120],42:A}),e(i,[2,11]),{13:[1,121],42:A},e(i,[2,10]),e(ht,[2,69]),e(i,[2,18]),{18:122,19:[1,123],53:53,54:54,58:F},{14:124,40:X,50:H,73:J},{19:[1,125]},e(i,[2,21]),e(i,[2,9]),e(i,[2,19])],defaultActions:{75:[2,60],78:[2,66]},parseError:l(function(n,c){if(c.recoverable)this.trace(n);else{var o=new Error(n);throw o.hash=c,o}},"parseError"),parse:l(function(n){var c=this,o=[0],r=[],p=[null],t=[],Z=this.table,s="",tt=0,Nt=0,Dt=2,At=1,Lt=t.slice.call(arguments,1),_=Object.create(this.lexer),x={yy:{}};for(var dt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,dt)&&(x.yy[dt]=this.yy[dt]);_.setInput(n,x.yy),x.yy.lexer=_,x.yy.parser=this,typeof _.yylloc>"u"&&(_.yylloc={});var pt=_.yylloc;t.push(pt);var wt=_.options&&_.options.ranges;typeof x.yy.parseError=="function"?this.parseError=x.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Vt(b){o.length=o.length-2*b,p.length=p.length-b,t.length=t.length-b}l(Vt,"popStack");function It(){var b;return b=r.pop()||_.lex()||At,typeof b!="number"&&(b instanceof Array&&(r=b,b=r.pop()),b=c.symbols_[b]||b),b}l(It,"lex");for(var g,v,k,ft,w={},et,E,Rt,st;;){if(v=o[o.length-1],this.defaultActions[v]?k=this.defaultActions[v]:((g===null||typeof g>"u")&&(g=It()),k=Z[v]&&Z[v][g]),typeof k>"u"||!k.length||!k[0]){var yt="";st=[];for(et in Z[v])this.terminals_[et]&&et>Dt&&st.push("'"+this.terminals_[et]+"'");_.showPosition?yt="Parse error on line "+(tt+1)+`: `+_.showPosition()+` Expecting `+st.join(", ")+", got '"+(this.terminals_[g]||g)+"'":yt="Parse error on line "+(tt+1)+": Unexpected "+(g==At?"end of input":"'"+(this.terminals_[g]||g)+"'"),this.parseError(yt,{text:_.match,token:this.terminals_[g]||g,line:_.yylineno,loc:pt,expected:st})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+g);switch(k[0]){case 1:o.push(g),p.push(_.yytext),t.push(_.yylloc),o.push(k[1]),g=null,Nt=_.yyleng,s=_.yytext,tt=_.yylineno,pt=_.yylloc;break;case 2:if(E=this.productions_[k[1]][1],w.$=p[p.length-E],w._$={first_line:t[t.length-(E||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(E||1)].first_column,last_column:t[t.length-1].last_column},wt&&(w._$.range=[t[t.length-(E||1)].range[0],t[t.length-1].range[1]]),ft=this.performAction.apply(w,[s,Nt,tt,x.yy,k[1],p,t].concat(Lt)),typeof ft<"u")return ft;E&&(o=o.slice(0,-1*E*2),p=p.slice(0,-1*E),t=t.slice(0,-1*E)),o.push(this.productions_[k[1]][0]),p.push(w.$),t.push(w._$),Rt=Z[o[o.length-2]][o[o.length-1]],o.push(Rt);break;case 3:return!0}}return!0},"parse")},vt=(function(){var I={EOF:1,parseError:l(function(c,o){if(this.yy.parser)this.yy.parser.parseError(c,o);else throw new Error(c)},"parseError"),setInput:l(function(n,c){return this.yy=c||this.yy||{},this._input=n,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:l(function(){var n=this._input[0];this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n;var c=n.match(/(?:\r\n?|\n).*/g);return c?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),n},"input"),unput:l(function(n){var c=n.length,o=n.split(/(?:\r\n?|\n)/g);this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),o.length-1&&(this.yylineno-=o.length-1);var p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:o?(o.length===r.length?this.yylloc.first_column:0)+r[r.length-o.length].length-o[0].length:this.yylloc.first_column-c},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-c]),this.yyleng=this.yytext.length,this},"unput"),more:l(function(){return this._more=!0,this},"more"),reject:l(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:l(function(n){this.unput(this.match.slice(n))},"less"),pastInput:l(function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:l(function(){var n=this.match;return n.length<20&&(n+=this._input.substr(0,20-n.length)),(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:l(function(){var n=this.pastInput(),c=new Array(n.length+1).join("-");return n+this.upcomingInput()+` @@ -82,4 +82,4 @@ Expecting `+st.join(", ")+", got '"+(this.terminals_[g]||g)+"'":yt="Parse error [data-look=neo].labelBkg { background-color: ${Ct(e.tertiaryColor,.5)}; } -`},"getStyles"),re=ie,ue={parser:$t,get db(){return new te},renderer:xt,styles:re};export{ue as diagram}; +`},"getStyles"),re=ie,he={parser:$t,get db(){return new te},renderer:xt,styles:re};export{he as diagram}; diff --git a/apps/kimi-code/dist-web/assets/flowDiagram-23GEKE2U-jc1IFMCM.js b/apps/kimi-code/dist-web/assets/flowDiagram-23GEKE2U-Dp3ubqO7.js similarity index 96% rename from apps/kimi-code/dist-web/assets/flowDiagram-23GEKE2U-jc1IFMCM.js rename to apps/kimi-code/dist-web/assets/flowDiagram-23GEKE2U-Dp3ubqO7.js index dd3feec8bf..371cff938e 100644 --- a/apps/kimi-code/dist-web/assets/flowDiagram-23GEKE2U-jc1IFMCM.js +++ b/apps/kimi-code/dist-web/assets/flowDiagram-23GEKE2U-Dp3ubqO7.js @@ -1,14 +1,14 @@ -import{g as He}from"./chunk-5VM5RSS4-A5rXJcEF.js";import{g as Xe}from"./chunk-XXDRQBXY-C3GGkCwU.js";import{s as Qe}from"./chunk-VR4S4FIN-gihGNGO1.js";import{_ as b,b6 as Je,F as Oe,l as J,c as g1,u as Ze,v as $e,x as ie,b as et,s as tt,n as st,a as it,g as rt,o as at,k as nt,G as ut,J as ot,bo as lt,q as te,d as se,a5 as ct,p as ht,b8 as dt,r as pt}from"./mermaid.core-Dxfcv_J5.js";import{f as ft}from"./chunk-32BRIVSS-3l6XZxpp.js";import{c as gt}from"./channel-BWBJkLRL.js";var bt="flowchart-",At=class{constructor(){this.vertexCounter=0,this.config=g1(),this.diagramId="",this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=et,this.setAccDescription=tt,this.setDiagramTitle=st,this.getAccTitle=it,this.getAccDescription=rt,this.getDiagramTitle=at,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{b(this,"FlowDB")}sanitizeText(e){return nt.sanitizeText(e,this.config)}sanitizeNodeLabelType(e){switch(e){case"markdown":case"string":case"text":return e;default:return"markdown"}}setDiagramId(e){this.diagramId=e}lookUpDomId(e){for(const i of this.vertices.values())if(i.id===e)return this.diagramId?`${this.diagramId}-${i.domId}`:i.domId;return this.diagramId?`${this.diagramId}-${e}`:e}addVertex(e,i,r,a,o,d,l={},A){if(!e||e.trim().length===0)return;let n;if(A!==void 0){let k;A.includes(` +import{g as He}from"./chunk-5VM5RSS4-CnrQ4AgJ.js";import{g as Xe}from"./chunk-XXDRQBXY-BRRtW_Of.js";import{s as Qe}from"./chunk-VR4S4FIN-DMqAUMdK.js";import{_ as b,b6 as Ze,X as Oe,l as Z,c as g1,v as Je,x as $e,y as ie,b as et,s as tt,o as st,a as it,g as rt,p as at,k as nt,Y as ut,Z as ot,bp as lt,r as te,d as se,a5 as ct,q as ht,b9 as dt,t as pt}from"./mermaid.core-AN7v7N47.js";import{f as ft}from"./chunk-32BRIVSS-B8gSFtLK.js";import{c as gt}from"./channel-CsfHBtue.js";var bt="flowchart-",At=class{constructor(){this.vertexCounter=0,this.config=g1(),this.diagramId="",this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=et,this.setAccDescription=tt,this.setDiagramTitle=st,this.getAccTitle=it,this.getAccDescription=rt,this.getDiagramTitle=at,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{b(this,"FlowDB")}sanitizeText(e){return nt.sanitizeText(e,this.config)}sanitizeNodeLabelType(e){switch(e){case"markdown":case"string":case"text":return e;default:return"markdown"}}setDiagramId(e){this.diagramId=e}lookUpDomId(e){for(const i of this.vertices.values())if(i.id===e)return this.diagramId?`${this.diagramId}-${i.domId}`:i.domId;return this.diagramId?`${this.diagramId}-${e}`:e}addVertex(e,i,r,a,o,d,l={},A){if(!e||e.trim().length===0)return;let n;if(A!==void 0){let k;A.includes(` `)?k=A+` `:k=`{ `+A+` -}`,n=ut(k,{schema:ot})}const g=this.edges.find(k=>k.id===e);if(g){const k=n;k?.animate!==void 0&&(g.animate=k.animate),k?.animation!==void 0&&(g.animation=k.animation),k?.curve!==void 0&&(g.interpolate=k.curve);return}let B,f=this.vertices.get(e);if(f===void 0&&(i===void 0&&r===void 0&&a!==void 0&&a!==null&&J.warn(`Style applied to unknown node "${e}". This may indicate a typo. The node will be created automatically.`),f={id:e,labelType:"text",domId:bt+e+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(e,f)),this.vertexCounter++,i!==void 0?(this.config=g1(),B=this.sanitizeText(i.text.trim()),f.labelType=i.type,B.startsWith('"')&&B.endsWith('"')&&(B=B.substring(1,B.length-1)),f.text=B):f.text===void 0&&(f.text=e),r!==void 0&&(f.type=r),a?.forEach(k=>{f.styles.push(k)}),o?.forEach(k=>{f.classes.push(k)}),d!==void 0&&(f.dir=d),f.props===void 0?f.props=l:l!==void 0&&Object.assign(f.props,l),n!==void 0){if(n.shape){if(n.shape!==n.shape.toLowerCase()||n.shape.includes("_"))throw new Error(`No such shape: ${n.shape}. Shape names should be lowercase.`);if(!lt(n.shape))throw new Error(`No such shape: ${n.shape}.`);f.type=n?.shape}n?.label&&(f.text=n?.label,f.labelType=this.sanitizeNodeLabelType(n?.labelType)),n?.icon&&(f.icon=n?.icon,!n.label?.trim()&&f.text===e&&(f.text="")),n?.form&&(f.form=n?.form),n?.pos&&(f.pos=n?.pos),n?.img&&(f.img=n?.img,!n.label?.trim()&&f.text===e&&(f.text="")),n?.constraint&&(f.constraint=n.constraint),n.w&&(f.assetWidth=Number(n.w)),n.h&&(f.assetHeight=Number(n.h))}}addSingleLink(e,i,r,a){const l={start:e,end:i,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};J.info("abc78 Got edge...",l);const A=r.text;if(A!==void 0&&(l.text=this.sanitizeText(A.text.trim()),l.text.startsWith('"')&&l.text.endsWith('"')&&(l.text=l.text.substring(1,l.text.length-1)),l.labelType=this.sanitizeNodeLabelType(A.type)),r!==void 0&&(l.type=r.type,l.stroke=r.stroke,l.length=r.length>10?10:r.length),a&&!this.edges.some(n=>n.id===a))l.id=a,l.isUserDefinedId=!0;else{const n=this.edges.filter(g=>g.start===l.start&&g.end===l.end);n.length===0?l.id=te(l.start,l.end,{counter:0,prefix:"L"}):l.id=te(l.start,l.end,{counter:n.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))J.info("Pushing edge..."),this.edges.push(l);else throw new Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}. +}`,n=ut(k,{schema:ot})}const g=this.edges.find(k=>k.id===e);if(g){const k=n;k?.animate!==void 0&&(g.animate=k.animate),k?.animation!==void 0&&(g.animation=k.animation),k?.curve!==void 0&&(g.interpolate=k.curve);return}let B,f=this.vertices.get(e);if(f===void 0&&(i===void 0&&r===void 0&&a!==void 0&&a!==null&&Z.warn(`Style applied to unknown node "${e}". This may indicate a typo. The node will be created automatically.`),f={id:e,labelType:"text",domId:bt+e+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(e,f)),this.vertexCounter++,i!==void 0?(this.config=g1(),B=this.sanitizeText(i.text.trim()),f.labelType=i.type,B.startsWith('"')&&B.endsWith('"')&&(B=B.substring(1,B.length-1)),f.text=B):f.text===void 0&&(f.text=e),r!==void 0&&(f.type=r),a?.forEach(k=>{f.styles.push(k)}),o?.forEach(k=>{f.classes.push(k)}),d!==void 0&&(f.dir=d),f.props===void 0?f.props=l:l!==void 0&&Object.assign(f.props,l),n!==void 0){if(n.shape){if(n.shape!==n.shape.toLowerCase()||n.shape.includes("_"))throw new Error(`No such shape: ${n.shape}. Shape names should be lowercase.`);if(!lt(n.shape))throw new Error(`No such shape: ${n.shape}.`);f.type=n?.shape}n?.label&&(f.text=n?.label,f.labelType=this.sanitizeNodeLabelType(n?.labelType)),n?.icon&&(f.icon=n?.icon,!n.label?.trim()&&f.text===e&&(f.text="")),n?.form&&(f.form=n?.form),n?.pos&&(f.pos=n?.pos),n?.img&&(f.img=n?.img,!n.label?.trim()&&f.text===e&&(f.text="")),n?.constraint&&(f.constraint=n.constraint),n.w&&(f.assetWidth=Number(n.w)),n.h&&(f.assetHeight=Number(n.h))}}addSingleLink(e,i,r,a){const l={start:e,end:i,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};Z.info("abc78 Got edge...",l);const A=r.text;if(A!==void 0&&(l.text=this.sanitizeText(A.text.trim()),l.text.startsWith('"')&&l.text.endsWith('"')&&(l.text=l.text.substring(1,l.text.length-1)),l.labelType=this.sanitizeNodeLabelType(A.type)),r!==void 0&&(l.type=r.type,l.stroke=r.stroke,l.length=r.length>10?10:r.length),a&&!this.edges.some(n=>n.id===a))l.id=a,l.isUserDefinedId=!0;else{const n=this.edges.filter(g=>g.start===l.start&&g.end===l.end);n.length===0?l.id=te(l.start,l.end,{counter:0,prefix:"L"}):l.id=te(l.start,l.end,{counter:n.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))Z.info("Pushing edge..."),this.edges.push(l);else throw new Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}. Initialize mermaid with maxEdges set to a higher number to allow more edges. You cannot set this config via configuration inside the diagram as it is a secure config. -You have to call mermaid.initialize.`)}isLinkData(e){return e!==null&&typeof e=="object"&&"id"in e&&typeof e.id=="string"}addLink(e,i,r){const a=this.isLinkData(r)?r.id.replace("@",""):void 0;J.info("addLink",e,i,a);for(const o of e)for(const d of i){const l=o===e[e.length-1],A=d===i[0];l&&A?this.addSingleLink(o,d,r,a):this.addSingleLink(o,d,r,void 0)}}updateLinkInterpolate(e,i){e.forEach(r=>{r==="default"?this.edges.defaultInterpolate=i:this.edges[r].interpolate=i})}updateLink(e,i){e.forEach(r=>{if(typeof r=="number"&&r>=this.edges.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?this.edges.defaultStyle=i:(this.edges[r].style=i,(this.edges[r]?.style?.length??0)>0&&!this.edges[r]?.style?.some(a=>a?.startsWith("fill"))&&this.edges[r]?.style?.push("fill:none"))})}addClass(e,i){const r=i.join().replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");e.split(",").forEach(a=>{let o=this.classes.get(a);o===void 0&&(o={id:a,styles:[],textStyles:[]},this.classes.set(a,o)),r?.forEach(d=>{if(/color/.exec(d)){const l=d.replace("fill","bgFill");o.textStyles.push(l)}o.styles.push(d)})})}setDirection(e){this.direction=e.trim(),/.*/.exec(this.direction)&&(this.direction="LR"),/.*v/.exec(this.direction)&&(this.direction="TB"),this.direction==="TD"&&(this.direction="TB")}setClass(e,i){for(const r of e.split(",")){const a=this.vertices.get(r);a&&a.classes.push(i);const o=this.edges.find(l=>l.id===r);o&&o.classes.push(i);const d=this.subGraphLookup.get(r);d&&d.classes.push(i)}}setTooltip(e,i){if(i!==void 0){i=this.sanitizeText(i);for(const r of e.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(r):r,i)}}setClickFun(e,i,r){if(g1().securityLevel!=="loose"||i===void 0)return;let a=[];if(typeof r=="string"){a=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let d=0;d{const d=this.lookUpDomId(e),l=document.querySelector(`[id="${d}"]`);l!==null&&l.addEventListener("click",()=>{ie.runFunc(i,...a)},!1)}))}setLink(e,i,r){e.split(",").forEach(a=>{const o=this.vertices.get(a);o!==void 0&&(o.link=ie.formatUrl(i,this.config),o.linkTarget=r)}),this.setClass(e,"clickable")}getTooltip(e){return this.tooltips.get(e)}setClickEvent(e,i,r){e.split(",").forEach(a=>{this.setClickFun(a,i,r)}),this.setClass(e,"clickable")}bindFunctions(e){this.funs.forEach(i=>{i(e)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(e){const i=ft();se(e).select("svg").selectAll("g.node").on("mouseover",o=>{const d=se(o.currentTarget),l=d.attr("title");if(l===null)return;const A=o.currentTarget?.getBoundingClientRect();i.transition().duration(200).style("opacity",".9"),i.text(d.attr("title")).style("left",window.scrollX+A.left+(A.right-A.left)/2+"px").style("top",window.scrollY+A.bottom+"px"),i.html(ct.sanitize(l)),d.classed("hover",!0)}).on("mouseout",o=>{i.transition().duration(500).style("opacity",0),se(o.currentTarget).classed("hover",!1)})}clear(e="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.diagramId="",this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=e,this.config=g1(),ht()}setGen(e){this.version=e||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(e,i,r){let a=e.text.trim(),o=r.text;e===r&&/\s/.exec(r.text)&&(a=void 0);const l=b(Y=>{const F={boolean:{},number:{},string:{}},_=[];let b1;return{nodeList:Y.filter(function(j){const h1=typeof j;return j.stmt&&j.stmt==="dir"?(b1=j.value,!1):j.trim()===""?!1:h1 in F?F[h1].hasOwnProperty(j)?!1:F[h1][j]=!0:_.includes(j)?!1:_.push(j)}),dir:b1}},"uniq")(i.flat()),A=l.nodeList,n=l.dir,g=n!==void 0,B=g1().flowchart??{},f=n??(B.inheritDir?this.getDirection()??g1().direction??void 0:void 0);if(this.version==="gen-1")for(let Y=0;Y2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=i,this.subGraphs[i].id===e)return{result:!0,count:0};let a=0,o=1;for(;a=0){const l=this.indexNodes2(e,d);if(l.result)return{result:!0,count:o+l.count};o=o+l.count}a=a+1}return{result:!1,count:o}}getDepthFirstPos(e){return this.posCrossRef[e]}indexNodes(){this.secCount=-1,this.subGraphs.length>0&&this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){return this.firstGraphFlag?(this.firstGraphFlag=!1,!0):!1}destructStartLink(e){let i=e.trim(),r="arrow_open";switch(i[0]){case"<":r="arrow_point",i=i.slice(1);break;case"x":r="arrow_cross",i=i.slice(1);break;case"o":r="arrow_circle",i=i.slice(1);break}let a="normal";return i.includes("=")&&(a="thick"),i.includes(".")&&(a="dotted"),{type:r,stroke:a}}countChar(e,i){const r=i.length;let a=0;for(let o=0;o":a="arrow_point",i.startsWith("<")&&(a="double_"+a,r=r.slice(1));break;case"o":a="arrow_circle",i.startsWith("o")&&(a="double_"+a,r=r.slice(1));break}let o="normal",d=r.length-1;r.startsWith("=")&&(o="thick"),r.startsWith("~")&&(o="invisible");const l=this.countChar(".",r);return l&&(o="dotted",d=l),{type:a,stroke:o,length:d}}destructLink(e,i){const r=this.destructEndLink(e);let a;if(i){if(a=this.destructStartLink(i),a.stroke!==r.stroke)return{type:"INVALID",stroke:"INVALID"};if(a.type==="arrow_open")a.type=r.type;else{if(a.type!==r.type)return{type:"INVALID",stroke:"INVALID"};a.type="double_"+a.type}return a.type==="double_arrow"&&(a.type="double_arrow_point"),a.length=r.length,a}return r}exists(e,i){for(const r of e)if(r.nodes.includes(i))return!0;return!1}makeUniq(e,i){const r=[];return e.nodes.forEach((a,o)=>{this.exists(i,a)||r.push(e.nodes[o])}),{nodes:r}}getTypeFromVertex(e){if(e.img)return"imageSquare";if(e.icon)return e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon";switch(e.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return e.type}}findNode(e,i){return e.find(r=>r.id===i)}destructEdgeType(e){let i="none",r="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":r=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":i=e.replace("double_",""),r=i;break}return{arrowTypeStart:i,arrowTypeEnd:r}}addNodeFromVertex(e,i,r,a,o,d){const l=r.get(e.id),A=a.get(e.id)??!1,n=this.findNode(i,e.id);if(n)n.cssStyles=e.styles,n.cssCompiledStyles=this.getCompiledStyles(e.classes),n.cssClasses=e.classes.join(" ");else{const g={id:e.id,label:e.text,labelType:e.labelType,labelStyle:"",parentId:l,padding:o.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),dir:e.dir,domId:e.domId,look:d,link:e.link,linkTarget:e.linkTarget,tooltip:this.getTooltip(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint};A?i.push({...g,isGroup:!0,shape:"rect"}):i.push({...g,isGroup:!1,shape:this.getTypeFromVertex(e)})}}getCompiledStyles(e){let i=[];for(const r of e){const a=this.classes.get(r);a?.styles&&(i=[...i,...a.styles??[]].map(o=>o.trim())),a?.textStyles&&(i=[...i,...a.textStyles??[]].map(o=>o.trim()))}return i}getData(){const e=g1(),i=[],r=[],a=this.getSubGraphs(),o=new Map,d=new Map;for(let n=a.length-1;n>=0;n--){const g=a[n];g.nodes.length>0&&d.set(g.id,!0);for(const B of g.nodes)o.set(B,g.id)}for(let n=a.length-1;n>=0;n--){const g=a[n];i.push({id:g.id,label:g.title,labelStyle:"",labelType:g.labelType,parentId:o.get(g.id),padding:8,cssCompiledStyles:this.getCompiledStyles(g.classes),cssClasses:g.classes.join(" "),shape:"rect",dir:g.dir==="TD"?"TB":g.dir,explicitDir:g.hasExplicitDir,isGroup:!0,look:e.look})}this.getVertices().forEach(n=>{this.addNodeFromVertex(n,i,o,d,e,e.look||"classic")});const A=this.getEdges();return A.forEach((n,g)=>{const{arrowTypeStart:B,arrowTypeEnd:f}=this.destructEdgeType(n.type),k=[...A.defaultStyle??[]];n.style&&k.push(...n.style);const Y={id:te(n.start,n.end,{counter:g,prefix:"L"},n.id),isUserDefinedId:n.isUserDefinedId,start:n.start,end:n.end,type:n.type??"normal",label:n.text,labelType:n.labelType,labelpos:"c",thickness:n.stroke,minlen:n.length,classes:n?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:n?.stroke==="invisible"||n?.type==="arrow_open"?"none":B,arrowTypeEnd:n?.stroke==="invisible"||n?.type==="arrow_open"?"none":f,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(n.classes),labelStyle:k,style:k,pattern:n.stroke,look:e.look,animate:n.animate,animation:n.animation,curve:n.interpolate||this.edges.defaultInterpolate||e.flowchart?.curve};r.push(Y)}),{nodes:i,edges:r,other:{},config:e}}defaultConfig(){return dt.flowchart}},kt=b(function(e,i){return i.db.getClasses()},"getClasses"),mt=b(async function(e,i,r,a,o){J.info("REF0:"),J.info("Drawing state diagram (v2)",i);const{securityLevel:d,flowchart:l,layout:A}=g1();a.db.setDiagramId(i),J.debug("Before getData: ");const n=a.db.getData();J.debug("Data: ",n);const g=Xe(i,d),B=a.db.getDirection();n.type=a.type,n.layoutAlgorithm=Ze(A),n.layoutAlgorithm==="dagre"&&A==="elk"&&J.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),n.direction=B,n.nodeSpacing=l?.nodeSpacing||50,n.rankSpacing=l?.rankSpacing||50,n.markers=["point","circle","cross"],n.diagramId=i,J.debug("REF1:",n),await $e(n,g,o);const f=n.config.flowchart?.diagramPadding??8;ie.insertTitle(g,"flowchartTitleText",l?.titleTopMargin||0,a.db.getDiagramTitle()),Qe(g,f,"flowchart",l?.useMaxWidth||!1)},"draw"),Dt={getClasses:kt,draw:mt},re=(function(){var e=b(function(f1,c,h,p){for(h=h||{},p=f1.length;p--;h[f1[p]]=c);return h},"o"),i=[1,4],r=[1,3],a=[1,5],o=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],d=[2,2],l=[1,13],A=[1,14],n=[1,15],g=[1,16],B=[1,23],f=[1,25],k=[1,26],Y=[1,27],F=[1,50],_=[1,49],b1=[1,29],N1=[1,30],j=[1,31],h1=[1,32],P1=[1,33],L=[1,45],V=[1,47],I=[1,43],w=[1,48],R=[1,44],N=[1,51],G=[1,46],P=[1,52],O=[1,53],O1=[1,34],M1=[1,35],U1=[1,36],z1=[1,37],W1=[1,38],d1=[1,58],T=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],$=[1,62],e1=[1,61],t1=[1,63],D1=[8,9,11,75,77,78],ae=[1,79],E1=[1,92],C1=[1,97],T1=[1,96],S1=[1,93],y1=[1,89],x1=[1,95],F1=[1,91],_1=[1,98],B1=[1,94],v1=[1,99],L1=[1,90],A1=[8,9,10,11,40,75,77,78],U=[8,9,10,11,40,46,75,77,78],q=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],ne=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],V1=[44,60,89,102,105,106,109,111,114,115,116],ue=[1,122],oe=[1,123],j1=[1,125],K1=[1,124],le=[44,60,62,74,89,102,105,106,109,111,114,115,116],ce=[1,134],he=[1,148],de=[1,149],pe=[1,150],fe=[1,151],ge=[1,136],be=[1,138],Ae=[1,142],ke=[1,143],me=[1,144],De=[1,145],Ee=[1,146],Ce=[1,147],Te=[1,152],Se=[1,153],ye=[1,132],xe=[1,133],Fe=[1,140],_e=[1,135],Be=[1,139],ve=[1,137],X1=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],Le=[1,155],Ve=[1,157],x=[8,9,11],H=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],m=[1,177],z=[1,173],W=[1,174],D=[1,178],E=[1,175],C=[1,176],I1=[77,116,119],S=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],Ie=[10,106],p1=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],s1=[1,248],i1=[1,246],r1=[1,250],a1=[1,244],n1=[1,245],u1=[1,247],o1=[1,249],l1=[1,251],w1=[1,269],we=[8,9,11,106],Z=[8,9,10,11,60,84,105,106,109,110,111,112],Q1={trace:b(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,direction_td:125,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr",125:"direction_td"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1],[33,1]],performAction:b(function(c,h,p,u,y,t,G1){var s=t.length-1;switch(y){case 2:this.$=[];break;case 3:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 183:this.$=t[s];break;case 11:u.setDirection("TB"),this.$="TB";break;case 12:u.setDirection(t[s-1]),this.$=t[s-1];break;case 27:this.$=t[s-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=u.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 34:this.$=u.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 35:this.$=u.addSubGraph(void 0,t[s-1],void 0);break;case 37:this.$=t[s].trim(),u.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),u.setAccDescription(this.$);break;case 43:this.$=t[s-1]+t[s];break;case 44:this.$=t[s];break;case 45:u.addVertex(t[s-1][t[s-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s]),u.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 46:u.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 47:u.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 48:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 49:u.addVertex(t[s-1][t[s-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s]),this.$={stmt:t[s-1],nodes:t[s-1],shapeData:t[s]};break;case 50:this.$={stmt:t[s],nodes:t[s]};break;case 51:this.$=[t[s]];break;case 52:u.addVertex(t[s-5][t[s-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s-4]),this.$=t[s-5].concat(t[s]);break;case 53:this.$=t[s-4].concat(t[s]);break;case 54:this.$=t[s];break;case 55:this.$=t[s-2],u.setClass(t[s-2],t[s]);break;case 56:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"square");break;case 57:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"doublecircle");break;case 58:this.$=t[s-5],u.addVertex(t[s-5],t[s-2],"circle");break;case 59:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"ellipse");break;case 60:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"stadium");break;case 61:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"subroutine");break;case 62:this.$=t[s-7],u.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 63:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"cylinder");break;case 64:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"round");break;case 65:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"diamond");break;case 66:this.$=t[s-5],u.addVertex(t[s-5],t[s-2],"hexagon");break;case 67:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"odd");break;case 68:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"trapezoid");break;case 69:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 70:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"lean_right");break;case 71:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"lean_left");break;case 72:this.$=t[s],u.addVertex(t[s]);break;case 73:t[s-1].text=t[s],this.$=t[s-1];break;case 74:case 75:t[s-2].text=t[s-1],this.$=t[s-2];break;case 76:this.$=t[s];break;case 77:var v=u.destructLink(t[s],t[s-2]);this.$={type:v.type,stroke:v.stroke,length:v.length,text:t[s-1]};break;case 78:var v=u.destructLink(t[s],t[s-2]);this.$={type:v.type,stroke:v.stroke,length:v.length,text:t[s-1],id:t[s-3]};break;case 79:this.$={text:t[s],type:"text"};break;case 80:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 81:this.$={text:t[s],type:"string"};break;case 82:this.$={text:t[s],type:"markdown"};break;case 83:var v=u.destructLink(t[s]);this.$={type:v.type,stroke:v.stroke,length:v.length};break;case 84:var v=u.destructLink(t[s]);this.$={type:v.type,stroke:v.stroke,length:v.length,id:t[s-1]};break;case 85:this.$=t[s-1];break;case 86:this.$={text:t[s],type:"text"};break;case 87:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 88:this.$={text:t[s],type:"string"};break;case 89:case 104:this.$={text:t[s],type:"markdown"};break;case 101:this.$={text:t[s],type:"text"};break;case 102:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 103:this.$={text:t[s],type:"text"};break;case 105:this.$=t[s-4],u.addClass(t[s-2],t[s]);break;case 106:this.$=t[s-4],u.setClass(t[s-2],t[s]);break;case 107:case 115:this.$=t[s-1],u.setClickEvent(t[s-1],t[s]);break;case 108:case 116:this.$=t[s-3],u.setClickEvent(t[s-3],t[s-2]),u.setTooltip(t[s-3],t[s]);break;case 109:this.$=t[s-2],u.setClickEvent(t[s-2],t[s-1],t[s]);break;case 110:this.$=t[s-4],u.setClickEvent(t[s-4],t[s-3],t[s-2]),u.setTooltip(t[s-4],t[s]);break;case 111:this.$=t[s-2],u.setLink(t[s-2],t[s]);break;case 112:this.$=t[s-4],u.setLink(t[s-4],t[s-2]),u.setTooltip(t[s-4],t[s]);break;case 113:this.$=t[s-4],u.setLink(t[s-4],t[s-2],t[s]);break;case 114:this.$=t[s-6],u.setLink(t[s-6],t[s-4],t[s]),u.setTooltip(t[s-6],t[s-2]);break;case 117:this.$=t[s-1],u.setLink(t[s-1],t[s]);break;case 118:this.$=t[s-3],u.setLink(t[s-3],t[s-2]),u.setTooltip(t[s-3],t[s]);break;case 119:this.$=t[s-3],u.setLink(t[s-3],t[s-2],t[s]);break;case 120:this.$=t[s-5],u.setLink(t[s-5],t[s-4],t[s]),u.setTooltip(t[s-5],t[s-2]);break;case 121:this.$=t[s-4],u.addVertex(t[s-2],void 0,void 0,t[s]);break;case 122:this.$=t[s-4],u.updateLink([t[s-2]],t[s]);break;case 123:this.$=t[s-4],u.updateLink(t[s-2],t[s]);break;case 124:this.$=t[s-8],u.updateLinkInterpolate([t[s-6]],t[s-2]),u.updateLink([t[s-6]],t[s]);break;case 125:this.$=t[s-8],u.updateLinkInterpolate(t[s-6],t[s-2]),u.updateLink(t[s-6],t[s]);break;case 126:this.$=t[s-6],u.updateLinkInterpolate([t[s-4]],t[s]);break;case 127:this.$=t[s-6],u.updateLinkInterpolate(t[s-4],t[s]);break;case 128:case 130:this.$=[t[s]];break;case 129:case 131:t[s-2].push(t[s]),this.$=t[s-2];break;case 133:this.$=t[s-1]+t[s];break;case 181:this.$=t[s];break;case 182:this.$=t[s-1]+""+t[s];break;case 184:this.$=t[s-1]+""+t[s];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break;case 189:this.$={stmt:"dir",value:"TD"};break}},"anonymous"),table:[{3:1,4:2,9:i,10:r,12:a},{1:[3]},e(o,d,{5:6}),{4:7,9:i,10:r,12:a},{4:8,9:i,10:r,12:a},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:l,9:A,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:B,33:24,34:f,36:k,38:Y,42:28,43:39,44:F,45:40,47:41,60:_,84:b1,85:N1,86:j,87:h1,88:P1,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:O1,122:M1,123:U1,124:z1,125:W1},e(o,[2,9]),e(o,[2,10]),e(o,[2,11]),{8:[1,55],9:[1,56],10:d1,15:54,18:57},e(T,[2,3]),e(T,[2,4]),e(T,[2,5]),e(T,[2,6]),e(T,[2,7]),e(T,[2,8]),{8:$,9:e1,11:t1,21:59,41:60,72:64,75:[1,65],77:[1,67],78:[1,66]},{8:$,9:e1,11:t1,21:68},{8:$,9:e1,11:t1,21:69},{8:$,9:e1,11:t1,21:70},{8:$,9:e1,11:t1,21:71},{8:$,9:e1,11:t1,21:72},{8:$,9:e1,10:[1,73],11:t1,21:74},e(T,[2,36]),{35:[1,75]},{37:[1,76]},e(T,[2,39]),e(D1,[2,50],{18:77,39:78,10:d1,40:ae}),{10:[1,80]},{10:[1,81]},{10:[1,82]},{10:[1,83]},{14:E1,44:C1,60:T1,80:[1,87],89:S1,95:[1,84],97:[1,85],101:86,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1,120:88},e(T,[2,185]),e(T,[2,186]),e(T,[2,187]),e(T,[2,188]),e(T,[2,189]),e(A1,[2,51]),e(A1,[2,54],{46:[1,100]}),e(U,[2,72],{113:113,29:[1,101],44:F,48:[1,102],50:[1,103],52:[1,104],54:[1,105],56:[1,106],58:[1,107],60:_,63:[1,108],65:[1,109],67:[1,110],68:[1,111],70:[1,112],89:L,102:V,105:I,106:w,109:R,111:N,114:G,115:P,116:O}),e(q,[2,181]),e(q,[2,142]),e(q,[2,143]),e(q,[2,144]),e(q,[2,145]),e(q,[2,146]),e(q,[2,147]),e(q,[2,148]),e(q,[2,149]),e(q,[2,150]),e(q,[2,151]),e(q,[2,152]),e(o,[2,12]),e(o,[2,18]),e(o,[2,19]),{9:[1,114]},e(ne,[2,26],{18:115,10:d1}),e(T,[2,27]),{42:116,43:39,44:F,45:40,47:41,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(V1,[2,76],{73:117,62:[1,119],74:[1,118]}),{76:120,79:121,80:ue,81:oe,116:j1,119:K1},{75:[1,126],77:[1,127]},e(le,[2,83]),e(T,[2,28]),e(T,[2,29]),e(T,[2,30]),e(T,[2,31]),e(T,[2,32]),{10:ce,12:he,14:de,27:pe,28:128,32:fe,44:ge,60:be,75:Ae,80:[1,130],81:[1,131],83:141,84:ke,85:me,86:De,87:Ee,88:Ce,89:Te,90:Se,91:129,105:ye,109:xe,111:Fe,114:_e,115:Be,116:ve},e(X1,d,{5:154}),e(T,[2,37]),e(T,[2,38]),e(D1,[2,48],{44:Le}),e(D1,[2,49],{18:156,10:d1,40:Ve}),e(A1,[2,44]),{44:F,47:158,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{102:[1,159],103:160,105:[1,161]},{44:F,47:162,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{44:F,47:163,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(x,[2,107],{10:[1,164],96:[1,165]}),{80:[1,166]},e(x,[2,115],{120:168,10:[1,167],14:E1,44:C1,60:T1,89:S1,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1}),e(x,[2,117],{10:[1,169]}),e(H,[2,183]),e(H,[2,170]),e(H,[2,171]),e(H,[2,172]),e(H,[2,173]),e(H,[2,174]),e(H,[2,175]),e(H,[2,176]),e(H,[2,177]),e(H,[2,178]),e(H,[2,179]),e(H,[2,180]),{44:F,47:170,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{30:171,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:179,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:181,50:[1,180],67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:182,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:183,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:184,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{109:[1,185]},{30:186,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:187,65:[1,188],67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:189,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:190,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:191,67:m,80:z,81:W,82:172,116:D,117:E,118:C},e(q,[2,182]),e(o,[2,20]),e(ne,[2,25]),e(D1,[2,46],{39:192,18:193,10:d1,40:ae}),e(V1,[2,73],{10:[1,194]}),{10:[1,195]},{30:196,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{77:[1,197],79:198,116:j1,119:K1},e(I1,[2,79]),e(I1,[2,81]),e(I1,[2,82]),e(I1,[2,168]),e(I1,[2,169]),{76:199,79:121,80:ue,81:oe,116:j1,119:K1},e(le,[2,84]),{8:$,9:e1,10:ce,11:t1,12:he,14:de,21:201,27:pe,29:[1,200],32:fe,44:ge,60:be,75:Ae,83:141,84:ke,85:me,86:De,87:Ee,88:Ce,89:Te,90:Se,91:202,105:ye,109:xe,111:Fe,114:_e,115:Be,116:ve},e(S,[2,101]),e(S,[2,103]),e(S,[2,104]),e(S,[2,157]),e(S,[2,158]),e(S,[2,159]),e(S,[2,160]),e(S,[2,161]),e(S,[2,162]),e(S,[2,163]),e(S,[2,164]),e(S,[2,165]),e(S,[2,166]),e(S,[2,167]),e(S,[2,90]),e(S,[2,91]),e(S,[2,92]),e(S,[2,93]),e(S,[2,94]),e(S,[2,95]),e(S,[2,96]),e(S,[2,97]),e(S,[2,98]),e(S,[2,99]),e(S,[2,100]),{6:11,7:12,8:l,9:A,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:B,32:[1,203],33:24,34:f,36:k,38:Y,42:28,43:39,44:F,45:40,47:41,60:_,84:b1,85:N1,86:j,87:h1,88:P1,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:O1,122:M1,123:U1,124:z1,125:W1},{10:d1,18:204},{44:[1,205]},e(A1,[2,43]),{10:[1,206],44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:113,114:G,115:P,116:O},{10:[1,207]},{10:[1,208],106:[1,209]},e(Ie,[2,128]),{10:[1,210],44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:113,114:G,115:P,116:O},{10:[1,211],44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:113,114:G,115:P,116:O},{80:[1,212]},e(x,[2,109],{10:[1,213]}),e(x,[2,111],{10:[1,214]}),{80:[1,215]},e(H,[2,184]),{80:[1,216],98:[1,217]},e(A1,[2,55],{113:113,44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,114:G,115:P,116:O}),{31:[1,218],67:m,82:219,116:D,117:E,118:C},e(p1,[2,86]),e(p1,[2,88]),e(p1,[2,89]),e(p1,[2,153]),e(p1,[2,154]),e(p1,[2,155]),e(p1,[2,156]),{49:[1,220],67:m,82:219,116:D,117:E,118:C},{30:221,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{51:[1,222],67:m,82:219,116:D,117:E,118:C},{53:[1,223],67:m,82:219,116:D,117:E,118:C},{55:[1,224],67:m,82:219,116:D,117:E,118:C},{57:[1,225],67:m,82:219,116:D,117:E,118:C},{60:[1,226]},{64:[1,227],67:m,82:219,116:D,117:E,118:C},{66:[1,228],67:m,82:219,116:D,117:E,118:C},{30:229,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{31:[1,230],67:m,82:219,116:D,117:E,118:C},{67:m,69:[1,231],71:[1,232],82:219,116:D,117:E,118:C},{67:m,69:[1,234],71:[1,233],82:219,116:D,117:E,118:C},e(D1,[2,45],{18:156,10:d1,40:Ve}),e(D1,[2,47],{44:Le}),e(V1,[2,75]),e(V1,[2,74]),{62:[1,235],67:m,82:219,116:D,117:E,118:C},e(V1,[2,77]),e(I1,[2,80]),{77:[1,236],79:198,116:j1,119:K1},{30:237,67:m,80:z,81:W,82:172,116:D,117:E,118:C},e(X1,d,{5:238}),e(S,[2,102]),e(T,[2,35]),{43:239,44:F,45:40,47:41,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{10:d1,18:240},{10:s1,60:i1,84:r1,92:241,105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{10:s1,60:i1,84:r1,92:252,104:[1,253],105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{10:s1,60:i1,84:r1,92:254,104:[1,255],105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{105:[1,256]},{10:s1,60:i1,84:r1,92:257,105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{44:F,47:258,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(x,[2,108]),{80:[1,259]},{80:[1,260],98:[1,261]},e(x,[2,116]),e(x,[2,118],{10:[1,262]}),e(x,[2,119]),e(U,[2,56]),e(p1,[2,87]),e(U,[2,57]),{51:[1,263],67:m,82:219,116:D,117:E,118:C},e(U,[2,64]),e(U,[2,59]),e(U,[2,60]),e(U,[2,61]),{109:[1,264]},e(U,[2,63]),e(U,[2,65]),{66:[1,265],67:m,82:219,116:D,117:E,118:C},e(U,[2,67]),e(U,[2,68]),e(U,[2,70]),e(U,[2,69]),e(U,[2,71]),e([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),e(V1,[2,78]),{31:[1,266],67:m,82:219,116:D,117:E,118:C},{6:11,7:12,8:l,9:A,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:B,32:[1,267],33:24,34:f,36:k,38:Y,42:28,43:39,44:F,45:40,47:41,60:_,84:b1,85:N1,86:j,87:h1,88:P1,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:O1,122:M1,123:U1,124:z1,125:W1},e(A1,[2,53]),{43:268,44:F,45:40,47:41,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(x,[2,121],{106:w1}),e(we,[2,130],{108:270,10:s1,60:i1,84:r1,105:a1,109:n1,110:u1,111:o1,112:l1}),e(Z,[2,132]),e(Z,[2,134]),e(Z,[2,135]),e(Z,[2,136]),e(Z,[2,137]),e(Z,[2,138]),e(Z,[2,139]),e(Z,[2,140]),e(Z,[2,141]),e(x,[2,122],{106:w1}),{10:[1,271]},e(x,[2,123],{106:w1}),{10:[1,272]},e(Ie,[2,129]),e(x,[2,105],{106:w1}),e(x,[2,106],{113:113,44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,114:G,115:P,116:O}),e(x,[2,110]),e(x,[2,112],{10:[1,273]}),e(x,[2,113]),{98:[1,274]},{51:[1,275]},{62:[1,276]},{66:[1,277]},{8:$,9:e1,11:t1,21:278},e(T,[2,34]),e(A1,[2,52]),{10:s1,60:i1,84:r1,105:a1,107:279,108:243,109:n1,110:u1,111:o1,112:l1},e(Z,[2,133]),{14:E1,44:C1,60:T1,89:S1,101:280,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1,120:88},{14:E1,44:C1,60:T1,89:S1,101:281,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1,120:88},{98:[1,282]},e(x,[2,120]),e(U,[2,58]),{30:283,67:m,80:z,81:W,82:172,116:D,117:E,118:C},e(U,[2,66]),e(X1,d,{5:284}),e(we,[2,131],{108:270,10:s1,60:i1,84:r1,105:a1,109:n1,110:u1,111:o1,112:l1}),e(x,[2,126],{120:168,10:[1,285],14:E1,44:C1,60:T1,89:S1,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1}),e(x,[2,127],{120:168,10:[1,286],14:E1,44:C1,60:T1,89:S1,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1}),e(x,[2,114]),{31:[1,287],67:m,82:219,116:D,117:E,118:C},{6:11,7:12,8:l,9:A,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:B,32:[1,288],33:24,34:f,36:k,38:Y,42:28,43:39,44:F,45:40,47:41,60:_,84:b1,85:N1,86:j,87:h1,88:P1,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:O1,122:M1,123:U1,124:z1,125:W1},{10:s1,60:i1,84:r1,92:289,105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{10:s1,60:i1,84:r1,92:290,105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},e(U,[2,62]),e(T,[2,33]),e(x,[2,124],{106:w1}),e(x,[2,125],{106:w1})],defaultActions:{},parseError:b(function(c,h){if(h.recoverable)this.trace(c);else{var p=new Error(c);throw p.hash=h,p}},"parseError"),parse:b(function(c){var h=this,p=[0],u=[],y=[null],t=[],G1=this.table,s="",v=0,Re=0,je=2,Ne=1,Ke=t.slice.call(arguments,1),M=Object.create(this.lexer),k1={yy:{}};for(var J1 in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J1)&&(k1.yy[J1]=this.yy[J1]);M.setInput(c,k1.yy),k1.yy.lexer=M,k1.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var Z1=M.yylloc;t.push(Z1);var Ye=M.options&&M.options.ranges;typeof k1.yy.parseError=="function"?this.parseError=k1.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function qe(X){p.length=p.length-2*X,y.length=y.length-X,t.length=t.length-X}b(qe,"popStack");function Ge(){var X;return X=u.pop()||M.lex()||Ne,typeof X!="number"&&(X instanceof Array&&(u=X,X=u.pop()),X=h.symbols_[X]||X),X}b(Ge,"lex");for(var K,m1,Q,$1,R1={},q1,c1,Pe,H1;;){if(m1=p[p.length-1],this.defaultActions[m1]?Q=this.defaultActions[m1]:((K===null||typeof K>"u")&&(K=Ge()),Q=G1[m1]&&G1[m1][K]),typeof Q>"u"||!Q.length||!Q[0]){var ee="";H1=[];for(q1 in G1[m1])this.terminals_[q1]&&q1>je&&H1.push("'"+this.terminals_[q1]+"'");M.showPosition?ee="Parse error on line "+(v+1)+`: +You have to call mermaid.initialize.`)}isLinkData(e){return e!==null&&typeof e=="object"&&"id"in e&&typeof e.id=="string"}addLink(e,i,r){const a=this.isLinkData(r)?r.id.replace("@",""):void 0;Z.info("addLink",e,i,a);for(const o of e)for(const d of i){const l=o===e[e.length-1],A=d===i[0];l&&A?this.addSingleLink(o,d,r,a):this.addSingleLink(o,d,r,void 0)}}updateLinkInterpolate(e,i){e.forEach(r=>{r==="default"?this.edges.defaultInterpolate=i:this.edges[r].interpolate=i})}updateLink(e,i){e.forEach(r=>{if(typeof r=="number"&&r>=this.edges.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?this.edges.defaultStyle=i:(this.edges[r].style=i,(this.edges[r]?.style?.length??0)>0&&!this.edges[r]?.style?.some(a=>a?.startsWith("fill"))&&this.edges[r]?.style?.push("fill:none"))})}addClass(e,i){const r=i.join().replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");e.split(",").forEach(a=>{let o=this.classes.get(a);o===void 0&&(o={id:a,styles:[],textStyles:[]},this.classes.set(a,o)),r?.forEach(d=>{if(/color/.exec(d)){const l=d.replace("fill","bgFill");o.textStyles.push(l)}o.styles.push(d)})})}setDirection(e){this.direction=e.trim(),/.*/.exec(this.direction)&&(this.direction="LR"),/.*v/.exec(this.direction)&&(this.direction="TB"),this.direction==="TD"&&(this.direction="TB")}setClass(e,i){for(const r of e.split(",")){const a=this.vertices.get(r);a&&a.classes.push(i);const o=this.edges.find(l=>l.id===r);o&&o.classes.push(i);const d=this.subGraphLookup.get(r);d&&d.classes.push(i)}}setTooltip(e,i){if(i!==void 0){i=this.sanitizeText(i);for(const r of e.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(r):r,i)}}setClickFun(e,i,r){if(g1().securityLevel!=="loose"||i===void 0)return;let a=[];if(typeof r=="string"){a=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let d=0;d{const d=this.lookUpDomId(e),l=document.querySelector(`[id="${d}"]`);l!==null&&l.addEventListener("click",()=>{ie.runFunc(i,...a)},!1)}))}setLink(e,i,r){e.split(",").forEach(a=>{const o=this.vertices.get(a);o!==void 0&&(o.link=ie.formatUrl(i,this.config),o.linkTarget=r)}),this.setClass(e,"clickable")}getTooltip(e){return this.tooltips.get(e)}setClickEvent(e,i,r){e.split(",").forEach(a=>{this.setClickFun(a,i,r)}),this.setClass(e,"clickable")}bindFunctions(e){this.funs.forEach(i=>{i(e)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(e){const i=ft();se(e).select("svg").selectAll("g.node").on("mouseover",o=>{const d=se(o.currentTarget),l=d.attr("title");if(l===null)return;const A=o.currentTarget?.getBoundingClientRect();i.transition().duration(200).style("opacity",".9"),i.text(d.attr("title")).style("left",window.scrollX+A.left+(A.right-A.left)/2+"px").style("top",window.scrollY+A.bottom+"px"),i.html(ct.sanitize(l)),d.classed("hover",!0)}).on("mouseout",o=>{i.transition().duration(500).style("opacity",0),se(o.currentTarget).classed("hover",!1)})}clear(e="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.diagramId="",this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=e,this.config=g1(),ht()}setGen(e){this.version=e||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(e,i,r){let a=e.text.trim(),o=r.text;e===r&&/\s/.exec(r.text)&&(a=void 0);const l=b(Y=>{const F={boolean:{},number:{},string:{}},_=[];let b1;return{nodeList:Y.filter(function(j){const h1=typeof j;return j.stmt&&j.stmt==="dir"?(b1=j.value,!1):j.trim()===""?!1:h1 in F?F[h1].hasOwnProperty(j)?!1:F[h1][j]=!0:_.includes(j)?!1:_.push(j)}),dir:b1}},"uniq")(i.flat()),A=l.nodeList,n=l.dir,g=n!==void 0,B=g1().flowchart??{},f=n??(B.inheritDir?this.getDirection()??g1().direction??void 0:void 0);if(this.version==="gen-1")for(let Y=0;Y2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=i,this.subGraphs[i].id===e)return{result:!0,count:0};let a=0,o=1;for(;a=0){const l=this.indexNodes2(e,d);if(l.result)return{result:!0,count:o+l.count};o=o+l.count}a=a+1}return{result:!1,count:o}}getDepthFirstPos(e){return this.posCrossRef[e]}indexNodes(){this.secCount=-1,this.subGraphs.length>0&&this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){return this.firstGraphFlag?(this.firstGraphFlag=!1,!0):!1}destructStartLink(e){let i=e.trim(),r="arrow_open";switch(i[0]){case"<":r="arrow_point",i=i.slice(1);break;case"x":r="arrow_cross",i=i.slice(1);break;case"o":r="arrow_circle",i=i.slice(1);break}let a="normal";return i.includes("=")&&(a="thick"),i.includes(".")&&(a="dotted"),{type:r,stroke:a}}countChar(e,i){const r=i.length;let a=0;for(let o=0;o":a="arrow_point",i.startsWith("<")&&(a="double_"+a,r=r.slice(1));break;case"o":a="arrow_circle",i.startsWith("o")&&(a="double_"+a,r=r.slice(1));break}let o="normal",d=r.length-1;r.startsWith("=")&&(o="thick"),r.startsWith("~")&&(o="invisible");const l=this.countChar(".",r);return l&&(o="dotted",d=l),{type:a,stroke:o,length:d}}destructLink(e,i){const r=this.destructEndLink(e);let a;if(i){if(a=this.destructStartLink(i),a.stroke!==r.stroke)return{type:"INVALID",stroke:"INVALID"};if(a.type==="arrow_open")a.type=r.type;else{if(a.type!==r.type)return{type:"INVALID",stroke:"INVALID"};a.type="double_"+a.type}return a.type==="double_arrow"&&(a.type="double_arrow_point"),a.length=r.length,a}return r}exists(e,i){for(const r of e)if(r.nodes.includes(i))return!0;return!1}makeUniq(e,i){const r=[];return e.nodes.forEach((a,o)=>{this.exists(i,a)||r.push(e.nodes[o])}),{nodes:r}}getTypeFromVertex(e){if(e.img)return"imageSquare";if(e.icon)return e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon";switch(e.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return e.type}}findNode(e,i){return e.find(r=>r.id===i)}destructEdgeType(e){let i="none",r="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":r=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":i=e.replace("double_",""),r=i;break}return{arrowTypeStart:i,arrowTypeEnd:r}}addNodeFromVertex(e,i,r,a,o,d){const l=r.get(e.id),A=a.get(e.id)??!1,n=this.findNode(i,e.id);if(n)n.cssStyles=e.styles,n.cssCompiledStyles=this.getCompiledStyles(e.classes),n.cssClasses=e.classes.join(" ");else{const g={id:e.id,label:e.text,labelType:e.labelType,labelStyle:"",parentId:l,padding:o.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),dir:e.dir,domId:e.domId,look:d,link:e.link,linkTarget:e.linkTarget,tooltip:this.getTooltip(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint};A?i.push({...g,isGroup:!0,shape:"rect"}):i.push({...g,isGroup:!1,shape:this.getTypeFromVertex(e)})}}getCompiledStyles(e){let i=[];for(const r of e){const a=this.classes.get(r);a?.styles&&(i=[...i,...a.styles??[]].map(o=>o.trim())),a?.textStyles&&(i=[...i,...a.textStyles??[]].map(o=>o.trim()))}return i}getData(){const e=g1(),i=[],r=[],a=this.getSubGraphs(),o=new Map,d=new Map;for(let n=a.length-1;n>=0;n--){const g=a[n];g.nodes.length>0&&d.set(g.id,!0);for(const B of g.nodes)o.set(B,g.id)}for(let n=a.length-1;n>=0;n--){const g=a[n];i.push({id:g.id,label:g.title,labelStyle:"",labelType:g.labelType,parentId:o.get(g.id),padding:8,cssCompiledStyles:this.getCompiledStyles(g.classes),cssClasses:g.classes.join(" "),shape:"rect",dir:g.dir==="TD"?"TB":g.dir,explicitDir:g.hasExplicitDir,isGroup:!0,look:e.look})}this.getVertices().forEach(n=>{this.addNodeFromVertex(n,i,o,d,e,e.look||"classic")});const A=this.getEdges();return A.forEach((n,g)=>{const{arrowTypeStart:B,arrowTypeEnd:f}=this.destructEdgeType(n.type),k=[...A.defaultStyle??[]];n.style&&k.push(...n.style);const Y={id:te(n.start,n.end,{counter:g,prefix:"L"},n.id),isUserDefinedId:n.isUserDefinedId,start:n.start,end:n.end,type:n.type??"normal",label:n.text,labelType:n.labelType,labelpos:"c",thickness:n.stroke,minlen:n.length,classes:n?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:n?.stroke==="invisible"||n?.type==="arrow_open"?"none":B,arrowTypeEnd:n?.stroke==="invisible"||n?.type==="arrow_open"?"none":f,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(n.classes),labelStyle:k,style:k,pattern:n.stroke,look:e.look,animate:n.animate,animation:n.animation,curve:n.interpolate||this.edges.defaultInterpolate||e.flowchart?.curve};r.push(Y)}),{nodes:i,edges:r,other:{},config:e}}defaultConfig(){return dt.flowchart}},kt=b(function(e,i){return i.db.getClasses()},"getClasses"),mt=b(async function(e,i,r,a,o){Z.info("REF0:"),Z.info("Drawing state diagram (v2)",i);const{securityLevel:d,flowchart:l,layout:A}=g1();a.db.setDiagramId(i),Z.debug("Before getData: ");const n=a.db.getData();Z.debug("Data: ",n);const g=Xe(i,d),B=a.db.getDirection();n.type=a.type,n.layoutAlgorithm=Je(A),n.layoutAlgorithm==="dagre"&&A==="elk"&&Z.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),n.direction=B,n.nodeSpacing=l?.nodeSpacing||50,n.rankSpacing=l?.rankSpacing||50,n.markers=["point","circle","cross"],n.diagramId=i,Z.debug("REF1:",n),await $e(n,g,o);const f=n.config.flowchart?.diagramPadding??8;ie.insertTitle(g,"flowchartTitleText",l?.titleTopMargin||0,a.db.getDiagramTitle()),Qe(g,f,"flowchart",l?.useMaxWidth||!1)},"draw"),Dt={getClasses:kt,draw:mt},re=(function(){var e=b(function(f1,c,h,p){for(h=h||{},p=f1.length;p--;h[f1[p]]=c);return h},"o"),i=[1,4],r=[1,3],a=[1,5],o=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],d=[2,2],l=[1,13],A=[1,14],n=[1,15],g=[1,16],B=[1,23],f=[1,25],k=[1,26],Y=[1,27],F=[1,50],_=[1,49],b1=[1,29],N1=[1,30],j=[1,31],h1=[1,32],P1=[1,33],L=[1,45],V=[1,47],I=[1,43],w=[1,48],R=[1,44],N=[1,51],G=[1,46],P=[1,52],O=[1,53],O1=[1,34],M1=[1,35],U1=[1,36],z1=[1,37],W1=[1,38],d1=[1,58],T=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],$=[1,62],e1=[1,61],t1=[1,63],D1=[8,9,11,75,77,78],ae=[1,79],E1=[1,92],C1=[1,97],T1=[1,96],S1=[1,93],y1=[1,89],x1=[1,95],F1=[1,91],_1=[1,98],B1=[1,94],v1=[1,99],L1=[1,90],A1=[8,9,10,11,40,75,77,78],U=[8,9,10,11,40,46,75,77,78],q=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],ne=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],V1=[44,60,89,102,105,106,109,111,114,115,116],ue=[1,122],oe=[1,123],j1=[1,125],K1=[1,124],le=[44,60,62,74,89,102,105,106,109,111,114,115,116],ce=[1,134],he=[1,148],de=[1,149],pe=[1,150],fe=[1,151],ge=[1,136],be=[1,138],Ae=[1,142],ke=[1,143],me=[1,144],De=[1,145],Ee=[1,146],Ce=[1,147],Te=[1,152],Se=[1,153],ye=[1,132],xe=[1,133],Fe=[1,140],_e=[1,135],Be=[1,139],ve=[1,137],X1=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],Le=[1,155],Ve=[1,157],x=[8,9,11],H=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],m=[1,177],z=[1,173],W=[1,174],D=[1,178],E=[1,175],C=[1,176],I1=[77,116,119],S=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],Ie=[10,106],p1=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],s1=[1,248],i1=[1,246],r1=[1,250],a1=[1,244],n1=[1,245],u1=[1,247],o1=[1,249],l1=[1,251],w1=[1,269],we=[8,9,11,106],J=[8,9,10,11,60,84,105,106,109,110,111,112],Q1={trace:b(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,direction_td:125,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr",125:"direction_td"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1],[33,1]],performAction:b(function(c,h,p,u,y,t,G1){var s=t.length-1;switch(y){case 2:this.$=[];break;case 3:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 183:this.$=t[s];break;case 11:u.setDirection("TB"),this.$="TB";break;case 12:u.setDirection(t[s-1]),this.$=t[s-1];break;case 27:this.$=t[s-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=u.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 34:this.$=u.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 35:this.$=u.addSubGraph(void 0,t[s-1],void 0);break;case 37:this.$=t[s].trim(),u.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),u.setAccDescription(this.$);break;case 43:this.$=t[s-1]+t[s];break;case 44:this.$=t[s];break;case 45:u.addVertex(t[s-1][t[s-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s]),u.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 46:u.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 47:u.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 48:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 49:u.addVertex(t[s-1][t[s-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s]),this.$={stmt:t[s-1],nodes:t[s-1],shapeData:t[s]};break;case 50:this.$={stmt:t[s],nodes:t[s]};break;case 51:this.$=[t[s]];break;case 52:u.addVertex(t[s-5][t[s-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s-4]),this.$=t[s-5].concat(t[s]);break;case 53:this.$=t[s-4].concat(t[s]);break;case 54:this.$=t[s];break;case 55:this.$=t[s-2],u.setClass(t[s-2],t[s]);break;case 56:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"square");break;case 57:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"doublecircle");break;case 58:this.$=t[s-5],u.addVertex(t[s-5],t[s-2],"circle");break;case 59:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"ellipse");break;case 60:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"stadium");break;case 61:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"subroutine");break;case 62:this.$=t[s-7],u.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 63:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"cylinder");break;case 64:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"round");break;case 65:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"diamond");break;case 66:this.$=t[s-5],u.addVertex(t[s-5],t[s-2],"hexagon");break;case 67:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"odd");break;case 68:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"trapezoid");break;case 69:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 70:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"lean_right");break;case 71:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"lean_left");break;case 72:this.$=t[s],u.addVertex(t[s]);break;case 73:t[s-1].text=t[s],this.$=t[s-1];break;case 74:case 75:t[s-2].text=t[s-1],this.$=t[s-2];break;case 76:this.$=t[s];break;case 77:var v=u.destructLink(t[s],t[s-2]);this.$={type:v.type,stroke:v.stroke,length:v.length,text:t[s-1]};break;case 78:var v=u.destructLink(t[s],t[s-2]);this.$={type:v.type,stroke:v.stroke,length:v.length,text:t[s-1],id:t[s-3]};break;case 79:this.$={text:t[s],type:"text"};break;case 80:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 81:this.$={text:t[s],type:"string"};break;case 82:this.$={text:t[s],type:"markdown"};break;case 83:var v=u.destructLink(t[s]);this.$={type:v.type,stroke:v.stroke,length:v.length};break;case 84:var v=u.destructLink(t[s]);this.$={type:v.type,stroke:v.stroke,length:v.length,id:t[s-1]};break;case 85:this.$=t[s-1];break;case 86:this.$={text:t[s],type:"text"};break;case 87:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 88:this.$={text:t[s],type:"string"};break;case 89:case 104:this.$={text:t[s],type:"markdown"};break;case 101:this.$={text:t[s],type:"text"};break;case 102:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 103:this.$={text:t[s],type:"text"};break;case 105:this.$=t[s-4],u.addClass(t[s-2],t[s]);break;case 106:this.$=t[s-4],u.setClass(t[s-2],t[s]);break;case 107:case 115:this.$=t[s-1],u.setClickEvent(t[s-1],t[s]);break;case 108:case 116:this.$=t[s-3],u.setClickEvent(t[s-3],t[s-2]),u.setTooltip(t[s-3],t[s]);break;case 109:this.$=t[s-2],u.setClickEvent(t[s-2],t[s-1],t[s]);break;case 110:this.$=t[s-4],u.setClickEvent(t[s-4],t[s-3],t[s-2]),u.setTooltip(t[s-4],t[s]);break;case 111:this.$=t[s-2],u.setLink(t[s-2],t[s]);break;case 112:this.$=t[s-4],u.setLink(t[s-4],t[s-2]),u.setTooltip(t[s-4],t[s]);break;case 113:this.$=t[s-4],u.setLink(t[s-4],t[s-2],t[s]);break;case 114:this.$=t[s-6],u.setLink(t[s-6],t[s-4],t[s]),u.setTooltip(t[s-6],t[s-2]);break;case 117:this.$=t[s-1],u.setLink(t[s-1],t[s]);break;case 118:this.$=t[s-3],u.setLink(t[s-3],t[s-2]),u.setTooltip(t[s-3],t[s]);break;case 119:this.$=t[s-3],u.setLink(t[s-3],t[s-2],t[s]);break;case 120:this.$=t[s-5],u.setLink(t[s-5],t[s-4],t[s]),u.setTooltip(t[s-5],t[s-2]);break;case 121:this.$=t[s-4],u.addVertex(t[s-2],void 0,void 0,t[s]);break;case 122:this.$=t[s-4],u.updateLink([t[s-2]],t[s]);break;case 123:this.$=t[s-4],u.updateLink(t[s-2],t[s]);break;case 124:this.$=t[s-8],u.updateLinkInterpolate([t[s-6]],t[s-2]),u.updateLink([t[s-6]],t[s]);break;case 125:this.$=t[s-8],u.updateLinkInterpolate(t[s-6],t[s-2]),u.updateLink(t[s-6],t[s]);break;case 126:this.$=t[s-6],u.updateLinkInterpolate([t[s-4]],t[s]);break;case 127:this.$=t[s-6],u.updateLinkInterpolate(t[s-4],t[s]);break;case 128:case 130:this.$=[t[s]];break;case 129:case 131:t[s-2].push(t[s]),this.$=t[s-2];break;case 133:this.$=t[s-1]+t[s];break;case 181:this.$=t[s];break;case 182:this.$=t[s-1]+""+t[s];break;case 184:this.$=t[s-1]+""+t[s];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break;case 189:this.$={stmt:"dir",value:"TD"};break}},"anonymous"),table:[{3:1,4:2,9:i,10:r,12:a},{1:[3]},e(o,d,{5:6}),{4:7,9:i,10:r,12:a},{4:8,9:i,10:r,12:a},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:l,9:A,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:B,33:24,34:f,36:k,38:Y,42:28,43:39,44:F,45:40,47:41,60:_,84:b1,85:N1,86:j,87:h1,88:P1,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:O1,122:M1,123:U1,124:z1,125:W1},e(o,[2,9]),e(o,[2,10]),e(o,[2,11]),{8:[1,55],9:[1,56],10:d1,15:54,18:57},e(T,[2,3]),e(T,[2,4]),e(T,[2,5]),e(T,[2,6]),e(T,[2,7]),e(T,[2,8]),{8:$,9:e1,11:t1,21:59,41:60,72:64,75:[1,65],77:[1,67],78:[1,66]},{8:$,9:e1,11:t1,21:68},{8:$,9:e1,11:t1,21:69},{8:$,9:e1,11:t1,21:70},{8:$,9:e1,11:t1,21:71},{8:$,9:e1,11:t1,21:72},{8:$,9:e1,10:[1,73],11:t1,21:74},e(T,[2,36]),{35:[1,75]},{37:[1,76]},e(T,[2,39]),e(D1,[2,50],{18:77,39:78,10:d1,40:ae}),{10:[1,80]},{10:[1,81]},{10:[1,82]},{10:[1,83]},{14:E1,44:C1,60:T1,80:[1,87],89:S1,95:[1,84],97:[1,85],101:86,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1,120:88},e(T,[2,185]),e(T,[2,186]),e(T,[2,187]),e(T,[2,188]),e(T,[2,189]),e(A1,[2,51]),e(A1,[2,54],{46:[1,100]}),e(U,[2,72],{113:113,29:[1,101],44:F,48:[1,102],50:[1,103],52:[1,104],54:[1,105],56:[1,106],58:[1,107],60:_,63:[1,108],65:[1,109],67:[1,110],68:[1,111],70:[1,112],89:L,102:V,105:I,106:w,109:R,111:N,114:G,115:P,116:O}),e(q,[2,181]),e(q,[2,142]),e(q,[2,143]),e(q,[2,144]),e(q,[2,145]),e(q,[2,146]),e(q,[2,147]),e(q,[2,148]),e(q,[2,149]),e(q,[2,150]),e(q,[2,151]),e(q,[2,152]),e(o,[2,12]),e(o,[2,18]),e(o,[2,19]),{9:[1,114]},e(ne,[2,26],{18:115,10:d1}),e(T,[2,27]),{42:116,43:39,44:F,45:40,47:41,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(V1,[2,76],{73:117,62:[1,119],74:[1,118]}),{76:120,79:121,80:ue,81:oe,116:j1,119:K1},{75:[1,126],77:[1,127]},e(le,[2,83]),e(T,[2,28]),e(T,[2,29]),e(T,[2,30]),e(T,[2,31]),e(T,[2,32]),{10:ce,12:he,14:de,27:pe,28:128,32:fe,44:ge,60:be,75:Ae,80:[1,130],81:[1,131],83:141,84:ke,85:me,86:De,87:Ee,88:Ce,89:Te,90:Se,91:129,105:ye,109:xe,111:Fe,114:_e,115:Be,116:ve},e(X1,d,{5:154}),e(T,[2,37]),e(T,[2,38]),e(D1,[2,48],{44:Le}),e(D1,[2,49],{18:156,10:d1,40:Ve}),e(A1,[2,44]),{44:F,47:158,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{102:[1,159],103:160,105:[1,161]},{44:F,47:162,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{44:F,47:163,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(x,[2,107],{10:[1,164],96:[1,165]}),{80:[1,166]},e(x,[2,115],{120:168,10:[1,167],14:E1,44:C1,60:T1,89:S1,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1}),e(x,[2,117],{10:[1,169]}),e(H,[2,183]),e(H,[2,170]),e(H,[2,171]),e(H,[2,172]),e(H,[2,173]),e(H,[2,174]),e(H,[2,175]),e(H,[2,176]),e(H,[2,177]),e(H,[2,178]),e(H,[2,179]),e(H,[2,180]),{44:F,47:170,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{30:171,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:179,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:181,50:[1,180],67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:182,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:183,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:184,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{109:[1,185]},{30:186,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:187,65:[1,188],67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:189,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:190,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{30:191,67:m,80:z,81:W,82:172,116:D,117:E,118:C},e(q,[2,182]),e(o,[2,20]),e(ne,[2,25]),e(D1,[2,46],{39:192,18:193,10:d1,40:ae}),e(V1,[2,73],{10:[1,194]}),{10:[1,195]},{30:196,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{77:[1,197],79:198,116:j1,119:K1},e(I1,[2,79]),e(I1,[2,81]),e(I1,[2,82]),e(I1,[2,168]),e(I1,[2,169]),{76:199,79:121,80:ue,81:oe,116:j1,119:K1},e(le,[2,84]),{8:$,9:e1,10:ce,11:t1,12:he,14:de,21:201,27:pe,29:[1,200],32:fe,44:ge,60:be,75:Ae,83:141,84:ke,85:me,86:De,87:Ee,88:Ce,89:Te,90:Se,91:202,105:ye,109:xe,111:Fe,114:_e,115:Be,116:ve},e(S,[2,101]),e(S,[2,103]),e(S,[2,104]),e(S,[2,157]),e(S,[2,158]),e(S,[2,159]),e(S,[2,160]),e(S,[2,161]),e(S,[2,162]),e(S,[2,163]),e(S,[2,164]),e(S,[2,165]),e(S,[2,166]),e(S,[2,167]),e(S,[2,90]),e(S,[2,91]),e(S,[2,92]),e(S,[2,93]),e(S,[2,94]),e(S,[2,95]),e(S,[2,96]),e(S,[2,97]),e(S,[2,98]),e(S,[2,99]),e(S,[2,100]),{6:11,7:12,8:l,9:A,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:B,32:[1,203],33:24,34:f,36:k,38:Y,42:28,43:39,44:F,45:40,47:41,60:_,84:b1,85:N1,86:j,87:h1,88:P1,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:O1,122:M1,123:U1,124:z1,125:W1},{10:d1,18:204},{44:[1,205]},e(A1,[2,43]),{10:[1,206],44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:113,114:G,115:P,116:O},{10:[1,207]},{10:[1,208],106:[1,209]},e(Ie,[2,128]),{10:[1,210],44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:113,114:G,115:P,116:O},{10:[1,211],44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:113,114:G,115:P,116:O},{80:[1,212]},e(x,[2,109],{10:[1,213]}),e(x,[2,111],{10:[1,214]}),{80:[1,215]},e(H,[2,184]),{80:[1,216],98:[1,217]},e(A1,[2,55],{113:113,44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,114:G,115:P,116:O}),{31:[1,218],67:m,82:219,116:D,117:E,118:C},e(p1,[2,86]),e(p1,[2,88]),e(p1,[2,89]),e(p1,[2,153]),e(p1,[2,154]),e(p1,[2,155]),e(p1,[2,156]),{49:[1,220],67:m,82:219,116:D,117:E,118:C},{30:221,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{51:[1,222],67:m,82:219,116:D,117:E,118:C},{53:[1,223],67:m,82:219,116:D,117:E,118:C},{55:[1,224],67:m,82:219,116:D,117:E,118:C},{57:[1,225],67:m,82:219,116:D,117:E,118:C},{60:[1,226]},{64:[1,227],67:m,82:219,116:D,117:E,118:C},{66:[1,228],67:m,82:219,116:D,117:E,118:C},{30:229,67:m,80:z,81:W,82:172,116:D,117:E,118:C},{31:[1,230],67:m,82:219,116:D,117:E,118:C},{67:m,69:[1,231],71:[1,232],82:219,116:D,117:E,118:C},{67:m,69:[1,234],71:[1,233],82:219,116:D,117:E,118:C},e(D1,[2,45],{18:156,10:d1,40:Ve}),e(D1,[2,47],{44:Le}),e(V1,[2,75]),e(V1,[2,74]),{62:[1,235],67:m,82:219,116:D,117:E,118:C},e(V1,[2,77]),e(I1,[2,80]),{77:[1,236],79:198,116:j1,119:K1},{30:237,67:m,80:z,81:W,82:172,116:D,117:E,118:C},e(X1,d,{5:238}),e(S,[2,102]),e(T,[2,35]),{43:239,44:F,45:40,47:41,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{10:d1,18:240},{10:s1,60:i1,84:r1,92:241,105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{10:s1,60:i1,84:r1,92:252,104:[1,253],105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{10:s1,60:i1,84:r1,92:254,104:[1,255],105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{105:[1,256]},{10:s1,60:i1,84:r1,92:257,105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{44:F,47:258,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(x,[2,108]),{80:[1,259]},{80:[1,260],98:[1,261]},e(x,[2,116]),e(x,[2,118],{10:[1,262]}),e(x,[2,119]),e(U,[2,56]),e(p1,[2,87]),e(U,[2,57]),{51:[1,263],67:m,82:219,116:D,117:E,118:C},e(U,[2,64]),e(U,[2,59]),e(U,[2,60]),e(U,[2,61]),{109:[1,264]},e(U,[2,63]),e(U,[2,65]),{66:[1,265],67:m,82:219,116:D,117:E,118:C},e(U,[2,67]),e(U,[2,68]),e(U,[2,70]),e(U,[2,69]),e(U,[2,71]),e([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),e(V1,[2,78]),{31:[1,266],67:m,82:219,116:D,117:E,118:C},{6:11,7:12,8:l,9:A,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:B,32:[1,267],33:24,34:f,36:k,38:Y,42:28,43:39,44:F,45:40,47:41,60:_,84:b1,85:N1,86:j,87:h1,88:P1,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:O1,122:M1,123:U1,124:z1,125:W1},e(A1,[2,53]),{43:268,44:F,45:40,47:41,60:_,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(x,[2,121],{106:w1}),e(we,[2,130],{108:270,10:s1,60:i1,84:r1,105:a1,109:n1,110:u1,111:o1,112:l1}),e(J,[2,132]),e(J,[2,134]),e(J,[2,135]),e(J,[2,136]),e(J,[2,137]),e(J,[2,138]),e(J,[2,139]),e(J,[2,140]),e(J,[2,141]),e(x,[2,122],{106:w1}),{10:[1,271]},e(x,[2,123],{106:w1}),{10:[1,272]},e(Ie,[2,129]),e(x,[2,105],{106:w1}),e(x,[2,106],{113:113,44:F,60:_,89:L,102:V,105:I,106:w,109:R,111:N,114:G,115:P,116:O}),e(x,[2,110]),e(x,[2,112],{10:[1,273]}),e(x,[2,113]),{98:[1,274]},{51:[1,275]},{62:[1,276]},{66:[1,277]},{8:$,9:e1,11:t1,21:278},e(T,[2,34]),e(A1,[2,52]),{10:s1,60:i1,84:r1,105:a1,107:279,108:243,109:n1,110:u1,111:o1,112:l1},e(J,[2,133]),{14:E1,44:C1,60:T1,89:S1,101:280,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1,120:88},{14:E1,44:C1,60:T1,89:S1,101:281,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1,120:88},{98:[1,282]},e(x,[2,120]),e(U,[2,58]),{30:283,67:m,80:z,81:W,82:172,116:D,117:E,118:C},e(U,[2,66]),e(X1,d,{5:284}),e(we,[2,131],{108:270,10:s1,60:i1,84:r1,105:a1,109:n1,110:u1,111:o1,112:l1}),e(x,[2,126],{120:168,10:[1,285],14:E1,44:C1,60:T1,89:S1,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1}),e(x,[2,127],{120:168,10:[1,286],14:E1,44:C1,60:T1,89:S1,105:y1,106:x1,109:F1,111:_1,114:B1,115:v1,116:L1}),e(x,[2,114]),{31:[1,287],67:m,82:219,116:D,117:E,118:C},{6:11,7:12,8:l,9:A,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:B,32:[1,288],33:24,34:f,36:k,38:Y,42:28,43:39,44:F,45:40,47:41,60:_,84:b1,85:N1,86:j,87:h1,88:P1,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:O1,122:M1,123:U1,124:z1,125:W1},{10:s1,60:i1,84:r1,92:289,105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},{10:s1,60:i1,84:r1,92:290,105:a1,107:242,108:243,109:n1,110:u1,111:o1,112:l1},e(U,[2,62]),e(T,[2,33]),e(x,[2,124],{106:w1}),e(x,[2,125],{106:w1})],defaultActions:{},parseError:b(function(c,h){if(h.recoverable)this.trace(c);else{var p=new Error(c);throw p.hash=h,p}},"parseError"),parse:b(function(c){var h=this,p=[0],u=[],y=[null],t=[],G1=this.table,s="",v=0,Re=0,je=2,Ne=1,Ke=t.slice.call(arguments,1),M=Object.create(this.lexer),k1={yy:{}};for(var Z1 in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Z1)&&(k1.yy[Z1]=this.yy[Z1]);M.setInput(c,k1.yy),k1.yy.lexer=M,k1.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var J1=M.yylloc;t.push(J1);var Ye=M.options&&M.options.ranges;typeof k1.yy.parseError=="function"?this.parseError=k1.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function qe(X){p.length=p.length-2*X,y.length=y.length-X,t.length=t.length-X}b(qe,"popStack");function Ge(){var X;return X=u.pop()||M.lex()||Ne,typeof X!="number"&&(X instanceof Array&&(u=X,X=u.pop()),X=h.symbols_[X]||X),X}b(Ge,"lex");for(var K,m1,Q,$1,R1={},q1,c1,Pe,H1;;){if(m1=p[p.length-1],this.defaultActions[m1]?Q=this.defaultActions[m1]:((K===null||typeof K>"u")&&(K=Ge()),Q=G1[m1]&&G1[m1][K]),typeof Q>"u"||!Q.length||!Q[0]){var ee="";H1=[];for(q1 in G1[m1])this.terminals_[q1]&&q1>je&&H1.push("'"+this.terminals_[q1]+"'");M.showPosition?ee="Parse error on line "+(v+1)+`: `+M.showPosition()+` -Expecting `+H1.join(", ")+", got '"+(this.terminals_[K]||K)+"'":ee="Parse error on line "+(v+1)+": Unexpected "+(K==Ne?"end of input":"'"+(this.terminals_[K]||K)+"'"),this.parseError(ee,{text:M.match,token:this.terminals_[K]||K,line:M.yylineno,loc:Z1,expected:H1})}if(Q[0]instanceof Array&&Q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+m1+", token: "+K);switch(Q[0]){case 1:p.push(K),y.push(M.yytext),t.push(M.yylloc),p.push(Q[1]),K=null,Re=M.yyleng,s=M.yytext,v=M.yylineno,Z1=M.yylloc;break;case 2:if(c1=this.productions_[Q[1]][1],R1.$=y[y.length-c1],R1._$={first_line:t[t.length-(c1||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(c1||1)].first_column,last_column:t[t.length-1].last_column},Ye&&(R1._$.range=[t[t.length-(c1||1)].range[0],t[t.length-1].range[1]]),$1=this.performAction.apply(R1,[s,Re,v,k1.yy,Q[1],y,t].concat(Ke)),typeof $1<"u")return $1;c1&&(p=p.slice(0,-1*c1*2),y=y.slice(0,-1*c1),t=t.slice(0,-1*c1)),p.push(this.productions_[Q[1]][0]),y.push(R1.$),t.push(R1._$),Pe=G1[p[p.length-2]][p[p.length-1]],p.push(Pe);break;case 3:return!0}}return!0},"parse")},We=(function(){var f1={EOF:1,parseError:b(function(h,p){if(this.yy.parser)this.yy.parser.parseError(h,p);else throw new Error(h)},"parseError"),setInput:b(function(c,h){return this.yy=h||this.yy||{},this._input=c,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:b(function(){var c=this._input[0];this.yytext+=c,this.yyleng++,this.offset++,this.match+=c,this.matched+=c;var h=c.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),c},"input"),unput:b(function(c){var h=c.length,p=c.split(/(?:\r\n?|\n)/g);this._input=c+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),p.length-1&&(this.yylineno-=p.length-1);var y=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:p?(p.length===u.length?this.yylloc.first_column:0)+u[u.length-p.length].length-p[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[y[0],y[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:b(function(){return this._more=!0,this},"more"),reject:b(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +Expecting `+H1.join(", ")+", got '"+(this.terminals_[K]||K)+"'":ee="Parse error on line "+(v+1)+": Unexpected "+(K==Ne?"end of input":"'"+(this.terminals_[K]||K)+"'"),this.parseError(ee,{text:M.match,token:this.terminals_[K]||K,line:M.yylineno,loc:J1,expected:H1})}if(Q[0]instanceof Array&&Q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+m1+", token: "+K);switch(Q[0]){case 1:p.push(K),y.push(M.yytext),t.push(M.yylloc),p.push(Q[1]),K=null,Re=M.yyleng,s=M.yytext,v=M.yylineno,J1=M.yylloc;break;case 2:if(c1=this.productions_[Q[1]][1],R1.$=y[y.length-c1],R1._$={first_line:t[t.length-(c1||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(c1||1)].first_column,last_column:t[t.length-1].last_column},Ye&&(R1._$.range=[t[t.length-(c1||1)].range[0],t[t.length-1].range[1]]),$1=this.performAction.apply(R1,[s,Re,v,k1.yy,Q[1],y,t].concat(Ke)),typeof $1<"u")return $1;c1&&(p=p.slice(0,-1*c1*2),y=y.slice(0,-1*c1),t=t.slice(0,-1*c1)),p.push(this.productions_[Q[1]][0]),y.push(R1.$),t.push(R1._$),Pe=G1[p[p.length-2]][p[p.length-1]],p.push(Pe);break;case 3:return!0}}return!0},"parse")},We=(function(){var f1={EOF:1,parseError:b(function(h,p){if(this.yy.parser)this.yy.parser.parseError(h,p);else throw new Error(h)},"parseError"),setInput:b(function(c,h){return this.yy=h||this.yy||{},this._input=c,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:b(function(){var c=this._input[0];this.yytext+=c,this.yyleng++,this.offset++,this.match+=c,this.matched+=c;var h=c.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),c},"input"),unput:b(function(c){var h=c.length,p=c.split(/(?:\r\n?|\n)/g);this._input=c+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),p.length-1&&(this.yylineno-=p.length-1);var y=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:p?(p.length===u.length?this.yylloc.first_column:0)+u[u.length-p.length].length-p[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[y[0],y[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:b(function(){return this._more=!0,this},"more"),reject:b(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:b(function(c){this.unput(this.match.slice(c))},"less"),pastInput:b(function(){var c=this.matched.substr(0,this.matched.length-this.match.length);return(c.length>20?"...":"")+c.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:b(function(){var c=this.match;return c.length<20&&(c+=this._input.substr(0,20-c.length)),(c.substr(0,20)+(c.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:b(function(){var c=this.pastInput(),h=new Array(c.length+1).join("-");return c+this.upcomingInput()+` `+h+"^"},"showPosition"),test_match:b(function(c,h){var p,u,y;if(this.options.backtrack_lexer&&(y={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(y.yylloc.range=this.yylloc.range.slice(0))),u=c[0].match(/(?:\r\n?|\n).*/g),u&&(this.yylineno+=u.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:u?u[u.length-1].length-u[u.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+c[0].length},this.yytext+=c[0],this.match+=c[0],this.matches=c,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(c[0].length),this.matched+=c[0],p=this.performAction.call(this,this.yy,this,h,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),p)return p;if(this._backtrack){for(var t in y)this[t]=y[t];return!1}return!1},"test_match"),next:b(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var c,h,p,u;this._more||(this.yytext="",this.match="");for(var y=this._currentRules(),t=0;th[0].length)){if(h=p,u=t,this.options.backtrack_lexer){if(c=this.test_match(p,y[t]),c!==!1)return c;if(this._backtrack){h=!1;continue}else return!1}else if(!this.options.flex)break}return h?(c=this.test_match(h,y[u]),c!==!1?c:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:b(function(){var h=this.next();return h||this.lex()},"lex"),begin:b(function(h){this.conditionStack.push(h)},"begin"),popState:b(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:b(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:b(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:b(function(h){this.begin(h)},"pushState"),stateStackSize:b(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:b(function(h,p,u,y){switch(u){case 0:return this.begin("acc_title"),34;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),36;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),p.yytext="",40;case 8:return this.pushState("shapeDataStr"),40;case 9:return this.popState(),40;case 10:const t=/\n\s*/g;return p.yytext=p.yytext.replace(t,"
"),40;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 17:this.popState();break;case 18:return 96;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 88;case 35:return h.lex.firstGraph()&&this.begin("dir"),12;case 36:return h.lex.firstGraph()&&this.begin("dir"),12;case 37:return h.lex.firstGraph()&&this.begin("dir"),12;case 38:return h.lex.firstGraph()&&this.begin("dir"),12;case 39:return 27;case 40:return 32;case 41:return 98;case 42:return 98;case 43:return 98;case 44:return 98;case 45:return this.popState(),13;case 46:return this.popState(),14;case 47:return this.popState(),14;case 48:return this.popState(),14;case 49:return this.popState(),14;case 50:return this.popState(),14;case 51:return this.popState(),14;case 52:return this.popState(),14;case 53:return this.popState(),14;case 54:return this.popState(),14;case 55:return this.popState(),14;case 56:return 121;case 57:return 122;case 58:return 123;case 59:return 124;case 60:return 125;case 61:return 78;case 62:return 105;case 63:return 111;case 64:return 46;case 65:return 60;case 66:return 44;case 67:return 8;case 68:return 106;case 69:return 115;case 70:return this.popState(),77;case 71:return this.pushState("edgeText"),75;case 72:return 119;case 73:return this.popState(),77;case 74:return this.pushState("thickEdgeText"),75;case 75:return 119;case 76:return this.popState(),77;case 77:return this.pushState("dottedEdgeText"),75;case 78:return 119;case 79:return 77;case 80:return this.popState(),53;case 81:return"TEXT";case 82:return this.pushState("ellipseText"),52;case 83:return this.popState(),55;case 84:return this.pushState("text"),54;case 85:return this.popState(),57;case 86:return this.pushState("text"),56;case 87:return 58;case 88:return this.pushState("text"),67;case 89:return this.popState(),64;case 90:return this.pushState("text"),63;case 91:return this.popState(),49;case 92:return this.pushState("text"),48;case 93:return this.popState(),69;case 94:return this.popState(),71;case 95:return 117;case 96:return this.pushState("trapText"),68;case 97:return this.pushState("trapText"),70;case 98:return 118;case 99:return 67;case 100:return 90;case 101:return"SEP";case 102:return 89;case 103:return 115;case 104:return 111;case 105:return 44;case 106:return 109;case 107:return 114;case 108:return 116;case 109:return this.popState(),62;case 110:return this.pushState("text"),62;case 111:return this.popState(),51;case 112:return this.pushState("text"),50;case 113:return this.popState(),31;case 114:return this.pushState("text"),29;case 115:return this.popState(),66;case 116:return this.pushState("text"),65;case 117:return"TEXT";case 118:return"QUOTE";case 119:return 9;case 120:return 10;case 121:return 11}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:swimlane-beta\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:.*direction\s+TD[^\n]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},shapeData:{rules:[8,11,12,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},callbackargs:{rules:[17,18,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},callbackname:{rules:[14,15,16,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},href:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},click:{rules:[21,24,33,34,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},dottedEdgeText:{rules:[21,24,76,78,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},thickEdgeText:{rules:[21,24,73,75,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},edgeText:{rules:[21,24,70,72,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},trapText:{rules:[21,24,79,82,84,86,90,92,93,94,95,96,97,110,112,114,116],inclusive:!1},ellipseText:{rules:[21,24,79,80,81,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},text:{rules:[21,24,79,82,83,84,85,86,89,90,91,92,96,97,109,110,111,112,113,114,115,116,117],inclusive:!1},vertex:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},dir:{rules:[21,24,45,46,47,48,49,50,51,52,53,54,55,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_descr:{rules:[3,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_title:{rules:[1,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},md_string:{rules:[19,20,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},string:{rules:[21,22,23,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,44,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,73,74,76,77,79,82,84,86,87,88,90,92,96,97,98,99,100,101,102,103,104,105,106,107,108,110,112,114,116,118,119,120,121],inclusive:!0}}};return f1})();Q1.lexer=We;function Y1(){this.yy={}}return b(Y1,"Parser"),Y1.prototype=Q1,Q1.Parser=Y1,new Y1})();re.parser=re;var Me=re,Ue=Object.assign({},Me);Ue.parse=e=>{const i=e.replace(/}\s*\n/g,`} @@ -153,4 +153,4 @@ Expecting `+H1.join(", ")+", got '"+(this.terminals_[K]||K)+"'":ee="Parse error text-align: center; } ${He()} -`,"getStyles"),St=Tt,ze=b(({defaultLayout:e,styles:i=St}={})=>({parser:Et,get db(){return new At},renderer:Dt,styles:i,init:b(r=>{r.flowchart||(r.flowchart={});const a=Je().layout??e??r.layout;a&&Oe({layout:a}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,Oe({flowchart:{arrowMarkerAbsolute:r.arrowMarkerAbsolute}})},"init")}),"createFlowDiagram"),yt=ze();const Vt=Object.freeze(Object.defineProperty({__proto__:null,createFlowDiagram:ze,diagram:yt},Symbol.toStringTag,{value:"Module"}));export{ze as c,Vt as f,St as s}; +`,"getStyles"),St=Tt,ze=b(({defaultLayout:e,styles:i=St}={})=>({parser:Et,get db(){return new At},renderer:Dt,styles:i,init:b(r=>{r.flowchart||(r.flowchart={});const a=Ze().layout??e??r.layout;a&&Oe({layout:a}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,Oe({flowchart:{arrowMarkerAbsolute:r.arrowMarkerAbsolute}})},"init")}),"createFlowDiagram"),yt=ze();const Vt=Object.freeze(Object.defineProperty({__proto__:null,createFlowDiagram:ze,diagram:yt},Symbol.toStringTag,{value:"Module"}));export{ze as c,Vt as f,St as s}; diff --git a/apps/kimi-code/dist-web/assets/ganttDiagram-NO4QXBWP-6TLLIXAF.js b/apps/kimi-code/dist-web/assets/ganttDiagram-NO4QXBWP-6TLLIXAF.js new file mode 100644 index 0000000000..d775ca2118 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/ganttDiagram-NO4QXBWP-6TLLIXAF.js @@ -0,0 +1,292 @@ +import{bh as on,bi as On,bj as cn,bk as un,bl as ln,bm as ue,bn as Hn,b7 as oe,g as Nn,s as Pn,p as Vn,o as Rn,a as zn,b as qn,_ as d,c as Yt,d as Zt,e as Bn,bo as it,l as Tt,k as Zn,j as Xn,q as Gn,y as jn}from"./mermaid.core-AN7v7N47.js";import{b as Qn,t as Ne,c as Jn,a as Kn,l as tr}from"./linear-rQmBrEzK.js";import{i as er}from"./init-Gi6I4Gst.js";import"./index-Dnz6Zudc.js";import"./defaultLocale-DX6XiGOO.js";function nr(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n=i)&&(n=i)}return n}function rr(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function ir(t){return t}var Gt=1,le=2,xe=3,Xt=4,Pe=1e-6;function sr(t){return"translate("+t+",0)"}function ar(t){return"translate(0,"+t+")"}function or(t){return e=>+t(e)}function cr(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),n=>+t(n)+e}function ur(){return!this.__axis}function fn(t,e){var n=[],r=null,i=null,s=6,a=6,y=3,F=typeof window<"u"&&window.devicePixelRatio>1?0:.5,S=t===Gt||t===Xt?-1:1,w=t===Xt||t===le?"x":"y",P=t===Gt||t===xe?sr:ar;function _(Y){var X=r??(e.ticks?e.ticks.apply(e,n):e.domain()),B=i??(e.tickFormat?e.tickFormat.apply(e,n):ir),v=Math.max(s,0)+y,U=e.range(),R=+U[0]+F,E=+U[U.length-1]+F,z=(e.bandwidth?cr:or)(e.copy(),F),G=Y.selection?Y.selection():Y,T=G.selectAll(".domain").data([null]),k=G.selectAll(".tick").data(X,e).order(),p=k.exit(),L=k.enter().append("g").attr("class","tick"),x=k.select("line"),C=k.select("text");T=T.merge(T.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),k=k.merge(L),x=x.merge(L.append("line").attr("stroke","currentColor").attr(w+"2",S*s)),C=C.merge(L.append("text").attr("fill","currentColor").attr(w,S*v).attr("dy",t===Gt?"0em":t===xe?"0.71em":"0.32em")),Y!==G&&(T=T.transition(Y),k=k.transition(Y),x=x.transition(Y),C=C.transition(Y),p=p.transition(Y).attr("opacity",Pe).attr("transform",function(M){return isFinite(M=z(M))?P(M+F):this.getAttribute("transform")}),L.attr("opacity",Pe).attr("transform",function(M){var D=this.parentNode.__axis;return P((D&&isFinite(D=D(M))?D:z(M))+F)})),p.remove(),T.attr("d",t===Xt||t===le?a?"M"+S*a+","+R+"H"+F+"V"+E+"H"+S*a:"M"+F+","+R+"V"+E:a?"M"+R+","+S*a+"V"+F+"H"+E+"V"+S*a:"M"+R+","+F+"H"+E),k.attr("opacity",1).attr("transform",function(M){return P(z(M)+F)}),x.attr(w+"2",S*s),C.attr(w,S*v).text(B),G.filter(ur).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===le?"start":t===Xt?"end":"middle"),G.each(function(){this.__axis=z})}return _.scale=function(Y){return arguments.length?(e=Y,_):e},_.ticks=function(){return n=Array.from(arguments),_},_.tickArguments=function(Y){return arguments.length?(n=Y==null?[]:Array.from(Y),_):n.slice()},_.tickValues=function(Y){return arguments.length?(r=Y==null?null:Array.from(Y),_):r&&r.slice()},_.tickFormat=function(Y){return arguments.length?(i=Y,_):i},_.tickSize=function(Y){return arguments.length?(s=a=+Y,_):s},_.tickSizeInner=function(Y){return arguments.length?(s=+Y,_):s},_.tickSizeOuter=function(Y){return arguments.length?(a=+Y,_):a},_.tickPadding=function(Y){return arguments.length?(y=+Y,_):y},_.offset=function(Y){return arguments.length?(F=+Y,_):F},_}function lr(t){return fn(Gt,t)}function fr(t){return fn(xe,t)}const dr=Math.PI/180,hr=180/Math.PI,ne=18,dn=.96422,hn=1,mn=.82521,gn=4/29,Ft=6/29,yn=3*Ft*Ft,mr=Ft*Ft*Ft;function kn(t){if(t instanceof ft)return new ft(t.l,t.a,t.b,t.opacity);if(t instanceof ht)return pn(t);t instanceof on||(t=On(t));var e=me(t.r),n=me(t.g),r=me(t.b),i=fe((.2225045*e+.7168786*n+.0606169*r)/hn),s,a;return e===n&&n===r?s=a=i:(s=fe((.4360747*e+.3850649*n+.1430804*r)/dn),a=fe((.0139322*e+.0971045*n+.7141733*r)/mn)),new ft(116*i-16,500*(s-i),200*(i-a),t.opacity)}function gr(t,e,n,r){return arguments.length===1?kn(t):new ft(t,e,n,r??1)}function ft(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}cn(ft,gr,un(ln,{brighter(t){return new ft(this.l+ne*(t??1),this.a,this.b,this.opacity)},darker(t){return new ft(this.l-ne*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return e=dn*de(e),t=hn*de(t),n=mn*de(n),new on(he(3.1338561*e-1.6168667*t-.4906146*n),he(-.9787684*e+1.9161415*t+.033454*n),he(.0719453*e-.2289914*t+1.4052427*n),this.opacity)}}));function fe(t){return t>mr?Math.pow(t,1/3):t/yn+gn}function de(t){return t>Ft?t*t*t:yn*(t-gn)}function he(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function me(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function yr(t){if(t instanceof ht)return new ht(t.h,t.c,t.l,t.opacity);if(t instanceof ft||(t=kn(t)),t.a===0&&t.b===0)return new ht(NaN,0(t(s=new Date(+s)),s),i.ceil=s=>(t(s=new Date(s-1)),e(s,1),t(s),s),i.round=s=>{const a=i(s),y=i.ceil(s);return s-a(e(s=new Date(+s),a==null?1:Math.floor(a)),s),i.range=(s,a,y)=>{const F=[];if(s=i.ceil(s),y=y==null?1:Math.floor(y),!(s0))return F;let S;do F.push(S=new Date(+s)),e(s,y),t(s);while(Snt(a=>{if(a>=a)for(;t(a),!s(a);)a.setTime(a-1)},(a,y)=>{if(a>=a)if(y<0)for(;++y<=0;)for(;e(a,-1),!s(a););else for(;--y>=0;)for(;e(a,1),!s(a););}),n&&(i.count=(s,a)=>(ge.setTime(+s),ye.setTime(+a),t(ge),t(ye),Math.floor(n(ge,ye))),i.every=s=>(s=Math.floor(s),!isFinite(s)||!(s>0)?null:s>1?i.filter(r?a=>r(a)%s===0:a=>i.count(0,a)%s===0):i)),i}const Et=nt(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);Et.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?nt(e=>{e.setTime(Math.floor(e/t)*t)},(e,n)=>{e.setTime(+e+n*t)},(e,n)=>(n-e)/t):Et);Et.range;const mt=1e3,ct=mt*60,gt=ct*60,yt=gt*24,Se=yt*7,Ve=yt*30,ke=yt*365,vt=nt(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*mt)},(t,e)=>(e-t)/mt,t=>t.getUTCSeconds());vt.range;const Nt=nt(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*mt)},(t,e)=>{t.setTime(+t+e*ct)},(t,e)=>(e-t)/ct,t=>t.getMinutes());Nt.range;const Tr=nt(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*ct)},(t,e)=>(e-t)/ct,t=>t.getUTCMinutes());Tr.range;const Pt=nt(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*mt-t.getMinutes()*ct)},(t,e)=>{t.setTime(+t+e*gt)},(t,e)=>(e-t)/gt,t=>t.getHours());Pt.range;const xr=nt(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*gt)},(t,e)=>(e-t)/gt,t=>t.getUTCHours());xr.range;const xt=nt(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*ct)/yt,t=>t.getDate()-1);xt.range;const _e=nt(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/yt,t=>t.getUTCDate()-1);_e.range;const br=nt(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/yt,t=>Math.floor(t/yt));br.range;function Dt(t){return nt(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,n)=>{e.setDate(e.getDate()+n*7)},(e,n)=>(n-e-(n.getTimezoneOffset()-e.getTimezoneOffset())*ct)/Se)}const zt=Dt(0),Vt=Dt(1),vn=Dt(2),Tn=Dt(3),bt=Dt(4),xn=Dt(5),bn=Dt(6);zt.range;Vt.range;vn.range;Tn.range;bt.range;xn.range;bn.range;function Mt(t){return nt(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCDate(e.getUTCDate()+n*7)},(e,n)=>(n-e)/Se)}const wn=Mt(0),re=Mt(1),wr=Mt(2),Dr=Mt(3),It=Mt(4),Mr=Mt(5),Cr=Mt(6);wn.range;re.range;wr.range;Dr.range;It.range;Mr.range;Cr.range;const Rt=nt(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth());Rt.range;const Sr=nt(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth());Sr.range;const kt=nt(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());kt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:nt(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,n)=>{e.setFullYear(e.getFullYear()+n*t)});kt.range;const wt=nt(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());wt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:nt(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCFullYear(e.getUTCFullYear()+n*t)});wt.range;function _r(t,e,n,r,i,s){const a=[[vt,1,mt],[vt,5,5*mt],[vt,15,15*mt],[vt,30,30*mt],[s,1,ct],[s,5,5*ct],[s,15,15*ct],[s,30,30*ct],[i,1,gt],[i,3,3*gt],[i,6,6*gt],[i,12,12*gt],[r,1,yt],[r,2,2*yt],[n,1,Se],[e,1,Ve],[e,3,3*Ve],[t,1,ke]];function y(S,w,P){const _=wv).right(a,_);if(Y===a.length)return t.every(Ne(S/ke,w/ke,P));if(Y===0)return Et.every(Math.max(Ne(S,w,P),1));const[X,B]=a[_/a[Y-1][2]53)return null;"w"in f||(f.w=1),"Z"in f?(A=ve($t(f.y,0,1)),Q=A.getUTCDay(),A=Q>4||Q===0?re.ceil(A):re(A),A=_e.offset(A,(f.V-1)*7),f.y=A.getUTCFullYear(),f.m=A.getUTCMonth(),f.d=A.getUTCDate()+(f.w+6)%7):(A=pe($t(f.y,0,1)),Q=A.getDay(),A=Q>4||Q===0?Vt.ceil(A):Vt(A),A=xt.offset(A,(f.V-1)*7),f.y=A.getFullYear(),f.m=A.getMonth(),f.d=A.getDate()+(f.w+6)%7)}else("W"in f||"U"in f)&&("w"in f||(f.w="u"in f?f.u%7:"W"in f?1:0),Q="Z"in f?ve($t(f.y,0,1)).getUTCDay():pe($t(f.y,0,1)).getDay(),f.m=0,f.d="W"in f?(f.w+6)%7+f.W*7-(Q+5)%7:f.w+f.U*7-(Q+6)%7);return"Z"in f?(f.H+=f.Z/100|0,f.M+=f.Z%100,ve(f)):pe(f)}}function p(h,N,V,f){for(var tt=0,A=N.length,Q=V.length,Z,st;tt=Q)return-1;if(Z=N.charCodeAt(tt++),Z===37){if(Z=N.charAt(tt++),st=G[Z in Re?N.charAt(tt++):Z],!st||(f=st(h,V,f))<0)return-1}else if(Z!=V.charCodeAt(f++))return-1}return f}function L(h,N,V){var f=S.exec(N.slice(V));return f?(h.p=w.get(f[0].toLowerCase()),V+f[0].length):-1}function x(h,N,V){var f=Y.exec(N.slice(V));return f?(h.w=X.get(f[0].toLowerCase()),V+f[0].length):-1}function C(h,N,V){var f=P.exec(N.slice(V));return f?(h.w=_.get(f[0].toLowerCase()),V+f[0].length):-1}function M(h,N,V){var f=U.exec(N.slice(V));return f?(h.m=R.get(f[0].toLowerCase()),V+f[0].length):-1}function D(h,N,V){var f=B.exec(N.slice(V));return f?(h.m=v.get(f[0].toLowerCase()),V+f[0].length):-1}function c(h,N,V){return p(h,e,N,V)}function g(h,N,V){return p(h,n,N,V)}function b(h,N,V){return p(h,r,N,V)}function m(h){return a[h.getDay()]}function I(h){return s[h.getDay()]}function o(h){return F[h.getMonth()]}function W(h){return y[h.getMonth()]}function u(h){return i[+(h.getHours()>=12)]}function K(h){return 1+~~(h.getMonth()/3)}function l(h){return a[h.getUTCDay()]}function $(h){return s[h.getUTCDay()]}function O(h){return F[h.getUTCMonth()]}function j(h){return y[h.getUTCMonth()]}function H(h){return i[+(h.getUTCHours()>=12)]}function J(h){return 1+~~(h.getUTCMonth()/3)}return{format:function(h){var N=T(h+="",E);return N.toString=function(){return h},N},parse:function(h){var N=k(h+="",!1);return N.toString=function(){return h},N},utcFormat:function(h){var N=T(h+="",z);return N.toString=function(){return h},N},utcParse:function(h){var N=k(h+="",!0);return N.toString=function(){return h},N}}}var Re={"-":"",_:" ",0:"0"},rt=/^\s*\d+/,Er=/^%/,Ir=/[\\^$*+?|[\]().{}]/g;function q(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",s=i.length;return r+(s[e.toLowerCase(),n]))}function Ar(t,e,n){var r=rt.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function Wr(t,e,n){var r=rt.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function $r(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function Or(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function Hr(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function ze(t,e,n){var r=rt.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function qe(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function Nr(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function Pr(t,e,n){var r=rt.exec(e.slice(n,n+1));return r?(t.q=r[0]*3-3,n+r[0].length):-1}function Vr(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function Be(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function Rr(t,e,n){var r=rt.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function Ze(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function zr(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function qr(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function Br(t,e,n){var r=rt.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function Zr(t,e,n){var r=rt.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Xr(t,e,n){var r=Er.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function Gr(t,e,n){var r=rt.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function jr(t,e,n){var r=rt.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function Xe(t,e){return q(t.getDate(),e,2)}function Qr(t,e){return q(t.getHours(),e,2)}function Jr(t,e){return q(t.getHours()%12||12,e,2)}function Kr(t,e){return q(1+xt.count(kt(t),t),e,3)}function Dn(t,e){return q(t.getMilliseconds(),e,3)}function ti(t,e){return Dn(t,e)+"000"}function ei(t,e){return q(t.getMonth()+1,e,2)}function ni(t,e){return q(t.getMinutes(),e,2)}function ri(t,e){return q(t.getSeconds(),e,2)}function ii(t){var e=t.getDay();return e===0?7:e}function si(t,e){return q(zt.count(kt(t)-1,t),e,2)}function Mn(t){var e=t.getDay();return e>=4||e===0?bt(t):bt.ceil(t)}function ai(t,e){return t=Mn(t),q(bt.count(kt(t),t)+(kt(t).getDay()===4),e,2)}function oi(t){return t.getDay()}function ci(t,e){return q(Vt.count(kt(t)-1,t),e,2)}function ui(t,e){return q(t.getFullYear()%100,e,2)}function li(t,e){return t=Mn(t),q(t.getFullYear()%100,e,2)}function fi(t,e){return q(t.getFullYear()%1e4,e,4)}function di(t,e){var n=t.getDay();return t=n>=4||n===0?bt(t):bt.ceil(t),q(t.getFullYear()%1e4,e,4)}function hi(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+q(e/60|0,"0",2)+q(e%60,"0",2)}function Ge(t,e){return q(t.getUTCDate(),e,2)}function mi(t,e){return q(t.getUTCHours(),e,2)}function gi(t,e){return q(t.getUTCHours()%12||12,e,2)}function yi(t,e){return q(1+_e.count(wt(t),t),e,3)}function Cn(t,e){return q(t.getUTCMilliseconds(),e,3)}function ki(t,e){return Cn(t,e)+"000"}function pi(t,e){return q(t.getUTCMonth()+1,e,2)}function vi(t,e){return q(t.getUTCMinutes(),e,2)}function Ti(t,e){return q(t.getUTCSeconds(),e,2)}function xi(t){var e=t.getUTCDay();return e===0?7:e}function bi(t,e){return q(wn.count(wt(t)-1,t),e,2)}function Sn(t){var e=t.getUTCDay();return e>=4||e===0?It(t):It.ceil(t)}function wi(t,e){return t=Sn(t),q(It.count(wt(t),t)+(wt(t).getUTCDay()===4),e,2)}function Di(t){return t.getUTCDay()}function Mi(t,e){return q(re.count(wt(t)-1,t),e,2)}function Ci(t,e){return q(t.getUTCFullYear()%100,e,2)}function Si(t,e){return t=Sn(t),q(t.getUTCFullYear()%100,e,2)}function _i(t,e){return q(t.getUTCFullYear()%1e4,e,4)}function Yi(t,e){var n=t.getUTCDay();return t=n>=4||n===0?It(t):It.ceil(t),q(t.getUTCFullYear()%1e4,e,4)}function Fi(){return"+0000"}function je(){return"%"}function Qe(t){return+t}function Je(t){return Math.floor(+t/1e3)}var St,ie;Ui({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ui(t){return St=Ur(t),ie=St.format,St.parse,St.utcFormat,St.utcParse,St}function Ei(t){return new Date(t)}function Ii(t){return t instanceof Date?+t:+new Date(+t)}function _n(t,e,n,r,i,s,a,y,F,S){var w=Jn(),P=w.invert,_=w.domain,Y=S(".%L"),X=S(":%S"),B=S("%I:%M"),v=S("%I %p"),U=S("%a %d"),R=S("%b %d"),E=S("%B"),z=S("%Y");function G(T){return(F(T)4&&(Y+=7),_.add(Y,n));return X.diff(B,"week")+1},y.isoWeekday=function(S){return this.$utils().u(S)?this.day()||7:this.day(this.day()%7?S:S-7)};var F=y.startOf;y.startOf=function(S,w){var P=this.$utils(),_=!!P.u(w)||w;return P.p(S)==="isoweek"?_?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):F.bind(this)(S,w)}}}))})(jt)),jt.exports}var $i=Wi();const Oi=oe($i);var Qt={exports:{}},Hi=Qt.exports,tn;function Ni(){return tn||(tn=1,(function(t,e){(function(n,r){t.exports=r()})(Hi,(function(){var n={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},r=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,i=/\d/,s=/\d\d/,a=/\d\d?/,y=/\d*[^-_:/,()\s\d]+/,F={},S=function(v){return(v=+v)+(v>68?1900:2e3)},w=function(v){return function(U){this[v]=+U}},P=[/[+-]\d\d:?(\d\d)?|Z/,function(v){(this.zone||(this.zone={})).offset=(function(U){if(!U||U==="Z")return 0;var R=U.match(/([+-]|\d\d)/g),E=60*R[1]+(+R[2]||0);return E===0?0:R[0]==="+"?-E:E})(v)}],_=function(v){var U=F[v];return U&&(U.indexOf?U:U.s.concat(U.f))},Y=function(v,U){var R,E=F.meridiem;if(E){for(var z=1;z<=24;z+=1)if(v.indexOf(E(z,0,U))>-1){R=z>12;break}}else R=v===(U?"pm":"PM");return R},X={A:[y,function(v){this.afternoon=Y(v,!1)}],a:[y,function(v){this.afternoon=Y(v,!0)}],Q:[i,function(v){this.month=3*(v-1)+1}],S:[i,function(v){this.milliseconds=100*+v}],SS:[s,function(v){this.milliseconds=10*+v}],SSS:[/\d{3}/,function(v){this.milliseconds=+v}],s:[a,w("seconds")],ss:[a,w("seconds")],m:[a,w("minutes")],mm:[a,w("minutes")],H:[a,w("hours")],h:[a,w("hours")],HH:[a,w("hours")],hh:[a,w("hours")],D:[a,w("day")],DD:[s,w("day")],Do:[y,function(v){var U=F.ordinal,R=v.match(/\d+/);if(this.day=R[0],U)for(var E=1;E<=31;E+=1)U(E).replace(/\[|\]/g,"")===v&&(this.day=E)}],w:[a,w("week")],ww:[s,w("week")],M:[a,w("month")],MM:[s,w("month")],MMM:[y,function(v){var U=_("months"),R=(_("monthsShort")||U.map((function(E){return E.slice(0,3)}))).indexOf(v)+1;if(R<1)throw new Error;this.month=R%12||R}],MMMM:[y,function(v){var U=_("months").indexOf(v)+1;if(U<1)throw new Error;this.month=U%12||U}],Y:[/[+-]?\d+/,w("year")],YY:[s,function(v){this.year=S(v)}],YYYY:[/\d{4}/,w("year")],Z:P,ZZ:P};function B(v){var U,R;U=v,R=F&&F.formats;for(var E=(v=U.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(x,C,M){var D=M&&M.toUpperCase();return C||R[M]||n[M]||R[D].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(c,g,b){return g||b.slice(1)}))}))).match(r),z=E.length,G=0;G-1)return new Date((I==="X"?1e3:1)*m);var u=B(I)(m),K=u.year,l=u.month,$=u.day,O=u.hours,j=u.minutes,H=u.seconds,J=u.milliseconds,h=u.zone,N=u.week,V=new Date,f=$||(K||l?1:V.getDate()),tt=K||V.getFullYear(),A=0;K&&!l||(A=l>0?l-1:V.getMonth());var Q,Z=O||0,st=j||0,at=H||0,pt=J||0;return h?new Date(Date.UTC(tt,A,f,Z,st,at,pt+60*h.offset*1e3)):o?new Date(Date.UTC(tt,A,f,Z,st,at,pt)):(Q=new Date(tt,A,f,Z,st,at,pt),N&&(Q=W(Q).week(N).toDate()),Q)}catch{return new Date("")}})(T,L,k,R),this.init(),D&&D!==!0&&(this.$L=this.locale(D).$L),M&&T!=this.format(L)&&(this.$d=new Date("")),F={}}else if(L instanceof Array)for(var c=L.length,g=1;g<=c;g+=1){p[1]=L[g-1];var b=R.apply(this,p);if(b.isValid()){this.$d=b.$d,this.$L=b.$L,this.init();break}g===c&&(this.$d=new Date(""))}else z.call(this,G)}}}))})(Qt)),Qt.exports}var Pi=Ni();const Vi=oe(Pi);var Jt={exports:{}},Ri=Jt.exports,en;function zi(){return en||(en=1,(function(t,e){(function(n,r){t.exports=r()})(Ri,(function(){return function(n,r){var i=r.prototype,s=i.format;i.format=function(a){var y=this,F=this.$locale();if(!this.isValid())return s.bind(this)(a);var S=this.$utils(),w=(a||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(P){switch(P){case"Q":return Math.ceil((y.$M+1)/3);case"Do":return F.ordinal(y.$D);case"gggg":return y.weekYear();case"GGGG":return y.isoWeekYear();case"wo":return F.ordinal(y.week(),"W");case"w":case"ww":return S.s(y.week(),P==="w"?1:2,"0");case"W":case"WW":return S.s(y.isoWeek(),P==="W"?1:2,"0");case"k":case"kk":return S.s(String(y.$H===0?24:y.$H),P==="k"?1:2,"0");case"X":return Math.floor(y.$d.getTime()/1e3);case"x":return y.$d.getTime();case"z":return"["+y.offsetName()+"]";case"zzz":return"["+y.offsetName("long")+"]";default:return P}}));return s.bind(this)(w)}}}))})(Jt)),Jt.exports}var qi=zi();const Bi=oe(qi);var Kt={exports:{}},Zi=Kt.exports,nn;function Xi(){return nn||(nn=1,(function(t,e){(function(n,r){t.exports=r()})(Zi,(function(){var n,r,i=1e3,s=6e4,a=36e5,y=864e5,F=31536e6,S=2628e6,w=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,P=/\[([^\]]+)]|YYYY|YY|Y|M{1,2}|D{1,2}|H{1,2}|m{1,2}|s{1,2}|SSS/g,_={years:F,months:S,days:y,hours:a,minutes:s,seconds:i,milliseconds:1,weeks:6048e5},Y=function(T){return T instanceof z},X=function(T,k,p){return new z(T,p,k.$l)},B=function(T){return r.p(T)+"s"},v=function(T){return T<0},U=function(T){return v(T)?Math.ceil(T):Math.floor(T)},R=function(T){return Math.abs(T)},E=function(T,k){return T?v(T)?{negative:!0,format:""+R(T)+k}:{negative:!1,format:""+T+k}:{negative:!1,format:""}},z=(function(){function T(p,L,x){var C=this;if(this.$d={},this.$l=x,p===void 0&&(this.$ms=0,this.parseFromMilliseconds()),L)return X(p*_[B(L)],this);if(typeof p=="number")return this.$ms=p,this.parseFromMilliseconds(),this;if(typeof p=="object")return Object.keys(p).forEach((function(c){C.$d[B(c)]=p[c]})),this.calMilliseconds(),this;if(typeof p=="string"){var M=p.match(w);if(M){var D=M.slice(2).map((function(c){return c!=null?Number(c):0}));return this.$d.years=D[0],this.$d.months=D[1],this.$d.weeks=D[2],this.$d.days=D[3],this.$d.hours=D[4],this.$d.minutes=D[5],this.$d.seconds=D[6],this.calMilliseconds(),this}}return this}var k=T.prototype;return k.calMilliseconds=function(){var p=this;this.$ms=Object.keys(this.$d).reduce((function(L,x){return L+(p.$d[x]||0)*_[x]}),0)},k.parseFromMilliseconds=function(){var p=this.$ms;this.$d.years=U(p/F),p%=F,this.$d.months=U(p/S),p%=S,this.$d.days=U(p/y),p%=y,this.$d.hours=U(p/a),p%=a,this.$d.minutes=U(p/s),p%=s,this.$d.seconds=U(p/i),p%=i,this.$d.milliseconds=p},k.toISOString=function(){var p=E(this.$d.years,"Y"),L=E(this.$d.months,"M"),x=+this.$d.days||0;this.$d.weeks&&(x+=7*this.$d.weeks);var C=E(x,"D"),M=E(this.$d.hours,"H"),D=E(this.$d.minutes,"M"),c=this.$d.seconds||0;this.$d.milliseconds&&(c+=this.$d.milliseconds/1e3,c=Math.round(1e3*c)/1e3);var g=E(c,"S"),b=p.negative||L.negative||C.negative||M.negative||D.negative||g.negative,m=M.format||D.format||g.format?"T":"",I=(b?"-":"")+"P"+p.format+L.format+C.format+m+M.format+D.format+g.format;return I==="P"||I==="-P"?"P0D":I},k.toJSON=function(){return this.toISOString()},k.format=function(p){var L=p||"YYYY-MM-DDTHH:mm:ss",x={Y:this.$d.years,YY:r.s(this.$d.years,2,"0"),YYYY:r.s(this.$d.years,4,"0"),M:this.$d.months,MM:r.s(this.$d.months,2,"0"),D:this.$d.days,DD:r.s(this.$d.days,2,"0"),H:this.$d.hours,HH:r.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:r.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:r.s(this.$d.seconds,2,"0"),SSS:r.s(this.$d.milliseconds,3,"0")};return L.replace(P,(function(C,M){return M||String(x[C])}))},k.as=function(p){return this.$ms/_[B(p)]},k.get=function(p){var L=this.$ms,x=B(p);return x==="milliseconds"?L%=1e3:L=x==="weeks"?U(L/_[x]):this.$d[x],L||0},k.add=function(p,L,x){var C;return C=L?p*_[B(L)]:Y(p)?p.$ms:X(p,this).$ms,X(this.$ms+C*(x?-1:1),this)},k.subtract=function(p,L){return this.add(p,L,!0)},k.locale=function(p){var L=this.clone();return L.$l=p,L},k.clone=function(){return X(this.$ms,this)},k.humanize=function(p){return n().add(this.$ms,"ms").locale(this.$l).fromNow(!p)},k.valueOf=function(){return this.asMilliseconds()},k.milliseconds=function(){return this.get("milliseconds")},k.asMilliseconds=function(){return this.as("milliseconds")},k.seconds=function(){return this.get("seconds")},k.asSeconds=function(){return this.as("seconds")},k.minutes=function(){return this.get("minutes")},k.asMinutes=function(){return this.as("minutes")},k.hours=function(){return this.get("hours")},k.asHours=function(){return this.as("hours")},k.days=function(){return this.get("days")},k.asDays=function(){return this.as("days")},k.weeks=function(){return this.get("weeks")},k.asWeeks=function(){return this.as("weeks")},k.months=function(){return this.get("months")},k.asMonths=function(){return this.as("months")},k.years=function(){return this.get("years")},k.asYears=function(){return this.as("years")},T})(),G=function(T,k,p){return T.add(k.years()*p,"y").add(k.months()*p,"M").add(k.days()*p,"d").add(k.hours()*p,"h").add(k.minutes()*p,"m").add(k.seconds()*p,"s").add(k.milliseconds()*p,"ms")};return function(T,k,p){n=p,r=p().$utils(),p.duration=function(C,M){var D=p.locale();return X(C,{$l:D},M)},p.isDuration=Y;var L=k.prototype.add,x=k.prototype.subtract;k.prototype.add=function(C,M){return Y(C)?G(this,C,1):L.bind(this)(C,M)},k.prototype.subtract=function(C,M){return Y(C)?G(this,C,-1):x.bind(this)(C,M)}}}))})(Kt)),Kt.exports}var Gi=Xi();const ji=oe(Gi);var we=(function(){var t=d(function(D,c,g,b){for(g=g||{},b=D.length;b--;g[D[b]]=c);return g},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],n=[1,26],r=[1,27],i=[1,28],s=[1,29],a=[1,30],y=[1,31],F=[1,32],S=[1,33],w=[1,34],P=[1,9],_=[1,10],Y=[1,11],X=[1,12],B=[1,13],v=[1,14],U=[1,15],R=[1,16],E=[1,19],z=[1,20],G=[1,21],T=[1,22],k=[1,23],p=[1,25],L=[1,35],x={trace:d(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:d(function(c,g,b,m,I,o,W){var u=o.length-1;switch(I){case 1:return o[u-1];case 2:this.$=[];break;case 3:o[u-1].push(o[u]),this.$=o[u-1];break;case 4:case 5:this.$=o[u];break;case 6:case 7:this.$=[];break;case 8:m.setWeekday("monday");break;case 9:m.setWeekday("tuesday");break;case 10:m.setWeekday("wednesday");break;case 11:m.setWeekday("thursday");break;case 12:m.setWeekday("friday");break;case 13:m.setWeekday("saturday");break;case 14:m.setWeekday("sunday");break;case 15:m.setWeekend("friday");break;case 16:m.setWeekend("saturday");break;case 17:m.setDateFormat(o[u].substr(11)),this.$=o[u].substr(11);break;case 18:m.enableInclusiveEndDates(),this.$=o[u].substr(18);break;case 19:m.TopAxis(),this.$=o[u].substr(8);break;case 20:m.setAxisFormat(o[u].substr(11)),this.$=o[u].substr(11);break;case 21:m.setTickInterval(o[u].substr(13)),this.$=o[u].substr(13);break;case 22:m.setExcludes(o[u].substr(9)),this.$=o[u].substr(9);break;case 23:m.setIncludes(o[u].substr(9)),this.$=o[u].substr(9);break;case 24:m.setTodayMarker(o[u].substr(12)),this.$=o[u].substr(12);break;case 27:m.setDiagramTitle(o[u].substr(6)),this.$=o[u].substr(6);break;case 28:this.$=o[u].trim(),m.setAccTitle(this.$);break;case 29:case 30:this.$=o[u].trim(),m.setAccDescription(this.$);break;case 31:m.addSection(o[u].substr(8)),this.$=o[u].substr(8);break;case 33:m.addTask(o[u-1],o[u]),this.$="task";break;case 34:this.$=o[u-1],m.setClickEvent(o[u-1],o[u],null);break;case 35:this.$=o[u-2],m.setClickEvent(o[u-2],o[u-1],o[u]);break;case 36:this.$=o[u-2],m.setClickEvent(o[u-2],o[u-1],null),m.setLink(o[u-2],o[u]);break;case 37:this.$=o[u-3],m.setClickEvent(o[u-3],o[u-2],o[u-1]),m.setLink(o[u-3],o[u]);break;case 38:this.$=o[u-2],m.setClickEvent(o[u-2],o[u],null),m.setLink(o[u-2],o[u-1]);break;case 39:this.$=o[u-3],m.setClickEvent(o[u-3],o[u-1],o[u]),m.setLink(o[u-3],o[u-2]);break;case 40:this.$=o[u-1],m.setLink(o[u-1],o[u]);break;case 41:case 47:this.$=o[u-1]+" "+o[u];break;case 42:case 43:case 45:this.$=o[u-2]+" "+o[u-1]+" "+o[u];break;case 44:case 46:this.$=o[u-3]+" "+o[u-2]+" "+o[u-1]+" "+o[u];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:n,13:r,14:i,15:s,16:a,17:y,18:F,19:18,20:S,21:w,22:P,23:_,24:Y,25:X,26:B,27:v,28:U,29:R,30:E,31:z,33:G,35:T,36:k,37:24,38:p,40:L},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:n,13:r,14:i,15:s,16:a,17:y,18:F,19:18,20:S,21:w,22:P,23:_,24:Y,25:X,26:B,27:v,28:U,29:R,30:E,31:z,33:G,35:T,36:k,37:24,38:p,40:L},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:d(function(c,g){if(g.recoverable)this.trace(c);else{var b=new Error(c);throw b.hash=g,b}},"parseError"),parse:d(function(c){var g=this,b=[0],m=[],I=[null],o=[],W=this.table,u="",K=0,l=0,$=2,O=1,j=o.slice.call(arguments,1),H=Object.create(this.lexer),J={yy:{}};for(var h in this.yy)Object.prototype.hasOwnProperty.call(this.yy,h)&&(J.yy[h]=this.yy[h]);H.setInput(c,J.yy),J.yy.lexer=H,J.yy.parser=this,typeof H.yylloc>"u"&&(H.yylloc={});var N=H.yylloc;o.push(N);var V=H.options&&H.options.ranges;typeof J.yy.parseError=="function"?this.parseError=J.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function f(ot){b.length=b.length-2*ot,I.length=I.length-ot,o.length=o.length-ot}d(f,"popStack");function tt(){var ot;return ot=m.pop()||H.lex()||O,typeof ot!="number"&&(ot instanceof Array&&(m=ot,ot=m.pop()),ot=g.symbols_[ot]||ot),ot}d(tt,"lex");for(var A,Q,Z,st,at={},pt,ut,He,Bt;;){if(Q=b[b.length-1],this.defaultActions[Q]?Z=this.defaultActions[Q]:((A===null||typeof A>"u")&&(A=tt()),Z=W[Q]&&W[Q][A]),typeof Z>"u"||!Z.length||!Z[0]){var ce="";Bt=[];for(pt in W[Q])this.terminals_[pt]&&pt>$&&Bt.push("'"+this.terminals_[pt]+"'");H.showPosition?ce="Parse error on line "+(K+1)+`: +`+H.showPosition()+` +Expecting `+Bt.join(", ")+", got '"+(this.terminals_[A]||A)+"'":ce="Parse error on line "+(K+1)+": Unexpected "+(A==O?"end of input":"'"+(this.terminals_[A]||A)+"'"),this.parseError(ce,{text:H.match,token:this.terminals_[A]||A,line:H.yylineno,loc:N,expected:Bt})}if(Z[0]instanceof Array&&Z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Q+", token: "+A);switch(Z[0]){case 1:b.push(A),I.push(H.yytext),o.push(H.yylloc),b.push(Z[1]),A=null,l=H.yyleng,u=H.yytext,K=H.yylineno,N=H.yylloc;break;case 2:if(ut=this.productions_[Z[1]][1],at.$=I[I.length-ut],at._$={first_line:o[o.length-(ut||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(ut||1)].first_column,last_column:o[o.length-1].last_column},V&&(at._$.range=[o[o.length-(ut||1)].range[0],o[o.length-1].range[1]]),st=this.performAction.apply(at,[u,l,K,J.yy,Z[1],I,o].concat(j)),typeof st<"u")return st;ut&&(b=b.slice(0,-1*ut*2),I=I.slice(0,-1*ut),o=o.slice(0,-1*ut)),b.push(this.productions_[Z[1]][0]),I.push(at.$),o.push(at._$),He=W[b[b.length-2]][b[b.length-1]],b.push(He);break;case 3:return!0}}return!0},"parse")},C=(function(){var D={EOF:1,parseError:d(function(g,b){if(this.yy.parser)this.yy.parser.parseError(g,b);else throw new Error(g)},"parseError"),setInput:d(function(c,g){return this.yy=g||this.yy||{},this._input=c,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:d(function(){var c=this._input[0];this.yytext+=c,this.yyleng++,this.offset++,this.match+=c,this.matched+=c;var g=c.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),c},"input"),unput:d(function(c){var g=c.length,b=c.split(/(?:\r\n?|\n)/g);this._input=c+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;var m=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),b.length-1&&(this.yylineno-=b.length-1);var I=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:b?(b.length===m.length?this.yylloc.first_column:0)+m[m.length-b.length].length-b[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[I[0],I[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:d(function(){return this._more=!0,this},"more"),reject:d(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:d(function(c){this.unput(this.match.slice(c))},"less"),pastInput:d(function(){var c=this.matched.substr(0,this.matched.length-this.match.length);return(c.length>20?"...":"")+c.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:d(function(){var c=this.match;return c.length<20&&(c+=this._input.substr(0,20-c.length)),(c.substr(0,20)+(c.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:d(function(){var c=this.pastInput(),g=new Array(c.length+1).join("-");return c+this.upcomingInput()+` +`+g+"^"},"showPosition"),test_match:d(function(c,g){var b,m,I;if(this.options.backtrack_lexer&&(I={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(I.yylloc.range=this.yylloc.range.slice(0))),m=c[0].match(/(?:\r\n?|\n).*/g),m&&(this.yylineno+=m.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:m?m[m.length-1].length-m[m.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+c[0].length},this.yytext+=c[0],this.match+=c[0],this.matches=c,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(c[0].length),this.matched+=c[0],b=this.performAction.call(this,this.yy,this,g,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),b)return b;if(this._backtrack){for(var o in I)this[o]=I[o];return!1}return!1},"test_match"),next:d(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var c,g,b,m;this._more||(this.yytext="",this.match="");for(var I=this._currentRules(),o=0;og[0].length)){if(g=b,m=o,this.options.backtrack_lexer){if(c=this.test_match(b,I[o]),c!==!1)return c;if(this._backtrack){g=!1;continue}else return!1}else if(!this.options.flex)break}return g?(c=this.test_match(g,I[m]),c!==!1?c:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:d(function(){var g=this.next();return g||this.lex()},"lex"),begin:d(function(g){this.conditionStack.push(g)},"begin"),popState:d(function(){var g=this.conditionStack.length-1;return g>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:d(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:d(function(g){return g=this.conditionStack.length-1-Math.abs(g||0),g>=0?this.conditionStack[g]:"INITIAL"},"topState"),pushState:d(function(g){this.begin(g)},"pushState"),stateStackSize:d(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:d(function(g,b,m,I){switch(m){case 0:return this.begin("open_directive"),"open_directive";case 1:return this.begin("acc_title"),31;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),33;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return D})();x.lexer=C;function M(){this.yy={}}return d(M,"Parser"),M.prototype=x,x.Parser=M,new M})();we.parser=we;var Qi=we;it.extend(Oi);it.extend(Vi);it.extend(Bi);var rn={friday:5,saturday:6},lt="",Ye="",Fe=void 0,Ue="",Lt=[],At=[],Ee=new Map,Ie=[],se=[],Wt="",Le="",Yn=["active","done","crit","milestone","vert"],Ae=[],_t="",qt=!1,We=!1,$e="sunday",ae="saturday",De=0,Ji=d(function(){Ie=[],se=[],Wt="",Ae=[],te=0,Ce=void 0,ee=void 0,et=[],lt="",Ye="",Le="",Fe=void 0,Ue="",Lt=[],At=[],qt=!1,We=!1,De=0,Ee=new Map,_t="",Gn(),$e="sunday",ae="saturday"},"clear"),Ki=d(function(t){_t=t},"setDiagramId"),ts=d(function(t){Ye=t},"setAxisFormat"),es=d(function(){return Ye},"getAxisFormat"),ns=d(function(t){Fe=t},"setTickInterval"),rs=d(function(){return Fe},"getTickInterval"),is=d(function(t){Ue=t},"setTodayMarker"),ss=d(function(){return Ue},"getTodayMarker"),as=d(function(t){lt=t},"setDateFormat"),os=d(function(){qt=!0},"enableInclusiveEndDates"),cs=d(function(){return qt},"endDatesAreInclusive"),us=d(function(){We=!0},"enableTopAxis"),ls=d(function(){return We},"topAxisEnabled"),fs=d(function(t){Le=t},"setDisplayMode"),ds=d(function(){return Le},"getDisplayMode"),hs=d(function(){return lt},"getDateFormat"),Fn=d((t,e)=>{const n=e.toLowerCase().split(/[\s,]+/).filter(r=>r!=="");return[...new Set([...t,...n])]},"mergeTokens"),ms=d(function(t){Lt=Fn(Lt,t)},"setIncludes"),gs=d(function(){return Lt},"getIncludes"),ys=d(function(t){At=Fn(At,t)},"setExcludes"),ks=d(function(){return At},"getExcludes"),ps=d(function(){return Ee},"getLinks"),vs=d(function(t){Wt=t,Ie.push(t)},"addSection"),Ts=d(function(){return Ie},"getSections"),xs=d(function(){let t=sn();const e=10;let n=0;for(;!t&&ny))throw new Error("Failed to find a valid date that was not excluded by `excludes` after 10,000 iterations.");t=t.add(1,"d")}return[e,a]},"fixTaskDates"),Me=d(function(t,e,n){if(n=n.trim(),d(y=>{const F=y.trim();return F==="x"||F==="X"},"isTimestampFormat")(e)&&/^\d+$/.test(n))return new Date(Number(n));const s=/^after\s+(?[\d\w- ]+)/.exec(n);if(s!==null){let y=null;for(const S of s.groups.ids.split(" ")){let w=Ct(S);w!==void 0&&(!y||w.endTime>y.endTime)&&(y=w)}if(y)return y.endTime;const F=new Date;return F.setHours(0,0,0,0),F}let a=it(n,e.trim(),!0);if(a.isValid())return a.toDate();{Tt.debug("Invalid date:"+n),Tt.debug("With date format:"+e.trim());const y=new Date(n);if(y===void 0||isNaN(y.getTime())||y.getFullYear()<-1e4||y.getFullYear()>1e4)throw new Error("Invalid date:"+n);return y}},"getStartDate"),In=d(function(t){const e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return e!==null?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]},"parseDuration"),Ln=d(function(t,e,n,r=!1){n=n.trim();const s=/^until\s+(?[\d\w- ]+)/.exec(n);if(s!==null){let w=null;for(const _ of s.groups.ids.split(" ")){let Y=Ct(_);Y!==void 0&&(!w||Y.startTime{window.open(n,"_self")}),Ee.set(r,n))}),Wn(t,"clickable")},"setLink"),Wn=d(function(t,e){t.split(",").forEach(function(n){let r=Ct(n);r!==void 0&&r.classes.push(e)})},"setClass"),Us=d(function(t,e,n){if(Yt().securityLevel!=="loose"||e===void 0)return;let r=[];if(typeof n=="string"){r=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let s=0;s{jn.runFunc(e,...r)})},"setClickFun"),$n=d(function(t,e){Ae.push(function(){const n=_t?`${_t}-${t}`:t,r=document.querySelector(`[id="${n}"]`);r!==null&&r.addEventListener("click",function(){e()})},function(){const n=_t?`${_t}-${t}`:t,r=document.querySelector(`[id="${n}-text"]`);r!==null&&r.addEventListener("click",function(){e()})})},"pushFun"),Es=d(function(t,e,n){t.split(",").forEach(function(r){Us(r,e,n)}),Wn(t,"clickable")},"setClickEvent"),Is=d(function(t){Ae.forEach(function(e){e(t)})},"bindFunctions"),Ls={getConfig:d(()=>Yt().gantt,"getConfig"),clear:Ji,setDateFormat:as,getDateFormat:hs,enableInclusiveEndDates:os,endDatesAreInclusive:cs,enableTopAxis:us,topAxisEnabled:ls,setAxisFormat:ts,getAxisFormat:es,setTickInterval:ns,getTickInterval:rs,setTodayMarker:is,getTodayMarker:ss,setAccTitle:qn,getAccTitle:zn,setDiagramTitle:Rn,getDiagramTitle:Vn,setDiagramId:Ki,setDisplayMode:fs,getDisplayMode:ds,setAccDescription:Pn,getAccDescription:Nn,addSection:vs,getSections:Ts,getTasks:xs,addTask:_s,findTaskById:Ct,addTaskOrg:Ys,setIncludes:ms,getIncludes:gs,setExcludes:ys,getExcludes:ks,setClickEvent:Es,setLink:Fs,getLinks:ps,bindFunctions:Is,parseDuration:In,isInvalidDate:Un,setWeekday:bs,getWeekday:ws,setWeekend:Ds};function Oe(t,e,n){let r=!0;for(;r;)r=!1,n.forEach(function(i){const s="^\\s*"+i+"\\s*$",a=new RegExp(s);t[0].match(a)&&(e[i]=!0,t.shift(1),r=!0)})}d(Oe,"getTaskTags");it.extend(ji);var As=d(function(){Tt.debug("Something is calling, setConf, remove the call")},"setConf"),an={monday:Vt,tuesday:vn,wednesday:Tn,thursday:bt,friday:xn,saturday:bn,sunday:zt},Ws=d((t,e)=>{let n=[...t].map(()=>-1/0),r=[...t].sort((s,a)=>s.startTime-a.startTime||s.order-a.order),i=0;for(const s of r)for(let a=0;a=n[a]){n[a]=s.endTime,s.order=a+e,a>i&&(i=a);break}return i},"getMaxIntersections"),dt,Te=1e4,$s=d(function(t,e,n,r){const i=Yt().gantt;r.db.setDiagramId(e);const s=Yt().securityLevel;let a;s==="sandbox"&&(a=Zt("#i"+e));const y=s==="sandbox"?Zt(a.nodes()[0].contentDocument.body):Zt("body"),F=s==="sandbox"?a.nodes()[0].contentDocument:document,S=F.getElementById(e);dt=S.parentElement.offsetWidth,dt===void 0&&(dt=1200),i.useWidth!==void 0&&(dt=i.useWidth);const w=r.db.getTasks(),P=w.filter(x=>!x.vert);let _=[];for(const x of P)_.push(x.type);_=L(_);const Y={};let X=2*i.topPadding;if(r.db.getDisplayMode()==="compact"||i.displayMode==="compact"){const x={};for(const M of P)x[M.section]===void 0?x[M.section]=[M]:x[M.section].push(M);let C=0;for(const M of Object.keys(x)){const D=Ws(x[M],C)+1;C+=D,X+=D*(i.barHeight+i.barGap),Y[M]=D}}else{X+=P.length*(i.barHeight+i.barGap);for(const x of _)Y[x]=P.filter(C=>C.type===x).length}S.setAttribute("viewBox","0 0 "+dt+" "+X);const B=y.select(`[id="${e}"]`),v=Li().domain([rr(w,function(x){return x.startTime}),nr(w,function(x){return x.endTime})]).rangeRound([0,dt-i.leftPadding-i.rightPadding]);function U(x,C){const M=x.startTime,D=C.startTime;let c=0;return M>D?c=1:Ml.vert===$.vert?0:l.vert?1:-1);const m=x.filter(l=>!l.vert),o=[...new Set(m.map(l=>l.order))].map(l=>m.find($=>$.order===l));B.append("g").selectAll("rect").data(o).enter().append("rect").attr("x",0).attr("y",function(l,$){return $=l.order,$*C+M-2}).attr("width",function(){return b-i.rightPadding/2}).attr("height",C).attr("class",function(l){for(const[$,O]of _.entries())if(l.type===O)return"section section"+$%i.numberSectionStyles;return"section section0"}).enter();const W=B.append("g").selectAll("rect").data(x).enter(),u=r.db.getLinks();if(W.append("rect").attr("id",function(l){return e+"-"+l.id}).attr("rx",3).attr("ry",3).attr("x",function(l){return l.milestone?v(l.startTime)+D+.5*(v(l.endTime)-v(l.startTime))-.5*c:v(l.startTime)+D}).attr("y",function(l,$){return $=l.order,l.vert?i.gridLineStartPadding:$*C+M}).attr("width",function(l){return l.milestone?c:l.vert?.08*c:v(l.renderEndTime||l.endTime)-v(l.startTime)}).attr("height",function(l){return l.vert?m.length*(i.barHeight+i.barGap)+i.barHeight*2:c}).attr("transform-origin",function(l,$){return $=l.order,(v(l.startTime)+D+.5*(v(l.endTime)-v(l.startTime))).toString()+"px "+($*C+M+.5*c).toString()+"px"}).attr("class",function(l){const $="task";let O="";l.classes.length>0&&(O=l.classes.join(" "));let j=0;for(const[J,h]of _.entries())l.type===h&&(j=J%i.numberSectionStyles);let H="";return l.active?l.crit?H+=" activeCrit":H=" active":l.done?l.crit?H=" doneCrit":H=" done":l.crit&&(H+=" crit"),H.length===0&&(H=" task"),l.milestone&&(H=" milestone "+H),l.vert&&(H=" vert "+H),H+=j,H+=" "+O,$+H}),W.append("text").attr("id",function(l){return e+"-"+l.id+"-text"}).text(function(l){return l.task}).attr("font-size",i.fontSize).attr("x",function(l){let $=v(l.startTime),O=v(l.renderEndTime||l.endTime);if(l.milestone&&($+=.5*(v(l.endTime)-v(l.startTime))-.5*c,O=$+c),l.vert)return v(l.startTime)+D;const j=this.getBBox().width;return j>O-$?O+j+1.5*i.leftPadding>b?$+D-5:O+D+5:(O-$)/2+$+D}).attr("y",function(l,$){return l.vert?i.gridLineStartPadding+m.length*(i.barHeight+i.barGap)+60:($=l.order,$*C+i.barHeight/2+(i.fontSize/2-2)+M)}).attr("text-height",c).attr("class",function(l){const $=v(l.startTime);let O=v(l.endTime);l.milestone&&(O=$+c);const j=this.getBBox().width;let H="";l.classes.length>0&&(H=l.classes.join(" "));let J=0;for(const[N,V]of _.entries())l.type===V&&(J=N%i.numberSectionStyles);let h="";return l.active&&(l.crit?h="activeCritText"+J:h="activeText"+J),l.done?l.crit?h=h+" doneCritText"+J:h=h+" doneText"+J:l.crit&&(h=h+" critText"+J),l.milestone&&(h+=" milestoneText"),l.vert&&(h+=" vertText"),j>O-$?O+j+1.5*i.leftPadding>b?H+" taskTextOutsideLeft taskTextOutside"+J+" "+h:H+" taskTextOutsideRight taskTextOutside"+J+" "+h+" width-"+j:H+" taskText taskText"+J+" "+h+" width-"+j}),Yt().securityLevel==="sandbox"){let l;l=Zt("#i"+e);const $=l.nodes()[0].contentDocument;W.filter(function(O){return u.has(O.id)}).each(function(O){var j=$.querySelector("#"+CSS.escape(e+"-"+O.id)),H=$.querySelector("#"+CSS.escape(e+"-"+O.id+"-text"));const J=j.parentNode;var h=$.createElement("a");h.setAttribute("xlink:href",u.get(O.id)),h.setAttribute("target","_top"),J.appendChild(h),h.appendChild(j),h.appendChild(H)})}}d(E,"drawRects");function z(x,C,M,D,c,g,b,m){if(b.length===0&&m.length===0)return;let I,o;for(const{startTime:O,endTime:j}of g)(I===void 0||Oo)&&(o=j);if(!I||!o)return;if(it(o).diff(it(I),"year")>5){Tt.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}const W=r.db.getDateFormat(),u=[];let K=null,l=it(I);for(;l.valueOf()<=o;)r.db.isInvalidDate(l,W,b,m)?K?K.end=l:K={start:l,end:l}:K&&(u.push(K),K=null),l=l.add(1,"d");B.append("g").selectAll("rect").data(u).enter().append("rect").attr("id",O=>e+"-exclude-"+O.start.format("YYYY-MM-DD")).attr("x",O=>v(O.start.startOf("day"))+M).attr("y",i.gridLineStartPadding).attr("width",O=>v(O.end.endOf("day"))-v(O.start.startOf("day"))).attr("height",c-C-i.gridLineStartPadding).attr("transform-origin",function(O,j){return(v(O.start)+M+.5*(v(O.end)-v(O.start))).toString()+"px "+(j*x+.5*c).toString()+"px"}).attr("class","exclude-range")}d(z,"drawExcludeDays");function G(x,C,M,D){if(M<=0||x>C)return 1/0;const c=C-x,g=it.duration({[D??"day"]:M}).asMilliseconds();return g<=0?1/0:Math.ceil(c/g)}d(G,"getEstimatedTickCount");function T(x,C,M,D){const c=r.db.getDateFormat(),g=r.db.getAxisFormat();let b;g?b=g:c==="D"?b="%d":b=i.axisFormat??"%Y-%m-%d";let m=fr(v).tickSize(-D+C+i.gridLineStartPadding).tickFormat(ie(b));const o=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(r.db.getTickInterval()||i.tickInterval);if(o!==null){const W=parseInt(o[1],10);if(isNaN(W)||W<=0)Tt.warn(`Invalid tick interval value: "${o[1]}". Skipping custom tick interval.`);else{const u=o[2],K=r.db.getWeekday()||i.weekday,l=v.domain(),$=l[0],O=l[1],j=G($,O,W,u);if(j>Te)Tt.warn(`The tick interval "${W}${u}" would generate ${j} ticks, which exceeds the maximum allowed (${Te}). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(u){case"millisecond":m.ticks(Et.every(W));break;case"second":m.ticks(vt.every(W));break;case"minute":m.ticks(Nt.every(W));break;case"hour":m.ticks(Pt.every(W));break;case"day":m.ticks(xt.every(W));break;case"week":m.ticks(an[K].every(W));break;case"month":m.ticks(Rt.every(W));break}}}if(B.append("g").attr("class","grid").attr("transform","translate("+x+", "+(D-50)+")").call(m).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),r.db.topAxisEnabled()||i.topAxis){let W=lr(v).tickSize(-D+C+i.gridLineStartPadding).tickFormat(ie(b));if(o!==null){const u=parseInt(o[1],10);if(isNaN(u)||u<=0)Tt.warn(`Invalid tick interval value: "${o[1]}". Skipping custom tick interval.`);else{const K=o[2],l=r.db.getWeekday()||i.weekday,$=v.domain(),O=$[0],j=$[1];if(G(O,j,u,K)<=Te)switch(K){case"millisecond":W.ticks(Et.every(u));break;case"second":W.ticks(vt.every(u));break;case"minute":W.ticks(Nt.every(u));break;case"hour":W.ticks(Pt.every(u));break;case"day":W.ticks(xt.every(u));break;case"week":W.ticks(an[l].every(u));break;case"month":W.ticks(Rt.every(u));break}}}B.append("g").attr("class","grid").attr("transform","translate("+x+", "+C+")").call(W).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}d(T,"makeGrid");function k(x,C){let M=0;const D=Object.keys(Y).map(c=>[c,Y[c]]);B.append("g").selectAll("text").data(D).enter().append(function(c){const g=c[0].split(Zn.lineBreakRegex),b=-(g.length-1)/2,m=F.createElementNS("http://www.w3.org/2000/svg","text");m.setAttribute("dy",b+"em");for(const[I,o]of g.entries()){const W=F.createElementNS("http://www.w3.org/2000/svg","tspan");W.setAttribute("alignment-baseline","central"),W.setAttribute("x","10"),I>0&&W.setAttribute("dy","1em"),W.textContent=o,m.appendChild(W)}return m}).attr("x",10).attr("y",function(c,g){if(g>0)for(let b=0;b` + .mermaid-main-font { + font-family: ${t.fontFamily}; + } + + .exclude-range { + fill: ${t.excludeBkgColor}; + } + + .section { + stroke: none; + opacity: 0.2; + } + + .section0 { + fill: ${t.sectionBkgColor}; + } + + .section2 { + fill: ${t.sectionBkgColor2}; + } + + .section1, + .section3 { + fill: ${t.altSectionBkgColor}; + opacity: 0.2; + } + + .sectionTitle0 { + fill: ${t.titleColor}; + } + + .sectionTitle1 { + fill: ${t.titleColor}; + } + + .sectionTitle2 { + fill: ${t.titleColor}; + } + + .sectionTitle3 { + fill: ${t.titleColor}; + } + + .sectionTitle { + text-anchor: start; + font-family: ${t.fontFamily}; + } + + + /* Grid and axis */ + + .grid .tick { + stroke: ${t.gridColor}; + opacity: 0.8; + shape-rendering: crispEdges; + } + + .grid .tick text { + font-family: ${t.fontFamily}; + fill: ${t.textColor}; + } + + .grid path { + stroke-width: 0; + } + + + /* Today line */ + + .today { + fill: none; + stroke: ${t.todayLineColor}; + stroke-width: 2px; + } + + + /* Task styling */ + + /* Default task */ + + .task { + stroke-width: 2; + } + + .taskText { + text-anchor: middle; + font-family: ${t.fontFamily}; + } + + .taskTextOutsideRight { + fill: ${t.taskTextDarkColor}; + text-anchor: start; + font-family: ${t.fontFamily}; + } + + .taskTextOutsideLeft { + fill: ${t.taskTextDarkColor}; + text-anchor: end; + } + + + /* Special case clickable */ + + .task.clickable { + cursor: pointer; + } + + .taskText.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideLeft.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideRight.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + + /* Specific task settings for the sections*/ + + .taskText0, + .taskText1, + .taskText2, + .taskText3 { + fill: ${t.taskTextColor}; + } + + .task0, + .task1, + .task2, + .task3 { + fill: ${t.taskBkgColor}; + stroke: ${t.taskBorderColor}; + } + + .taskTextOutside0, + .taskTextOutside2 + { + fill: ${t.taskTextOutsideColor}; + } + + .taskTextOutside1, + .taskTextOutside3 { + fill: ${t.taskTextOutsideColor}; + } + + + /* Active task */ + + .active0, + .active1, + .active2, + .active3 { + fill: ${t.activeTaskBkgColor}; + stroke: ${t.activeTaskBorderColor}; + } + + .activeText0, + .activeText1, + .activeText2, + .activeText3 { + fill: ${t.taskTextDarkColor} !important; + } + + + /* Completed task */ + + .done0, + .done1, + .done2, + .done3 { + stroke: ${t.doneTaskBorderColor}; + fill: ${t.doneTaskBkgColor}; + stroke-width: 2; + } + + .doneText0, + .doneText1, + .doneText2, + .doneText3 { + fill: ${t.taskTextDarkColor} !important; + } + + /* Done task text displayed outside the bar sits against the diagram background, + not against the done-task bar, so it must use the outside/contrast color. */ + .doneText0.taskTextOutsideLeft, + .doneText0.taskTextOutsideRight, + .doneText1.taskTextOutsideLeft, + .doneText1.taskTextOutsideRight, + .doneText2.taskTextOutsideLeft, + .doneText2.taskTextOutsideRight, + .doneText3.taskTextOutsideLeft, + .doneText3.taskTextOutsideRight { + fill: ${t.taskTextOutsideColor} !important; + } + + + /* Tasks on the critical line */ + + .crit0, + .crit1, + .crit2, + .crit3 { + stroke: ${t.critBorderColor}; + fill: ${t.critBkgColor}; + stroke-width: 2; + } + + .activeCrit0, + .activeCrit1, + .activeCrit2, + .activeCrit3 { + stroke: ${t.critBorderColor}; + fill: ${t.activeTaskBkgColor}; + stroke-width: 2; + } + + .doneCrit0, + .doneCrit1, + .doneCrit2, + .doneCrit3 { + stroke: ${t.critBorderColor}; + fill: ${t.doneTaskBkgColor}; + stroke-width: 2; + cursor: pointer; + shape-rendering: crispEdges; + } + + .milestone { + transform: rotate(45deg) scale(0.8,0.8); + } + + .milestoneText { + font-style: italic; + } + .doneCritText0, + .doneCritText1, + .doneCritText2, + .doneCritText3 { + fill: ${t.taskTextDarkColor} !important; + } + + /* Done-crit task text outside the bar — same reasoning as doneText above. */ + .doneCritText0.taskTextOutsideLeft, + .doneCritText0.taskTextOutsideRight, + .doneCritText1.taskTextOutsideLeft, + .doneCritText1.taskTextOutsideRight, + .doneCritText2.taskTextOutsideLeft, + .doneCritText2.taskTextOutsideRight, + .doneCritText3.taskTextOutsideLeft, + .doneCritText3.taskTextOutsideRight { + fill: ${t.taskTextOutsideColor} !important; + } + + .vert { + stroke: ${t.vertLineColor}; + } + + .vertText { + font-size: 15px; + text-anchor: middle; + fill: ${t.vertLineColor} !important; + } + + .activeCritText0, + .activeCritText1, + .activeCritText2, + .activeCritText3 { + fill: ${t.taskTextDarkColor} !important; + } + + .titleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.titleColor||t.textColor}; + font-family: ${t.fontFamily}; + } +`,"getStyles"),Ns=Hs,Bs={parser:Qi,db:Ls,renderer:Os,styles:Ns};export{Bs as diagram}; diff --git a/apps/kimi-code/dist-web/assets/ganttDiagram-NO4QXBWP-CCGkTOSq.js b/apps/kimi-code/dist-web/assets/ganttDiagram-NO4QXBWP-CCGkTOSq.js deleted file mode 100644 index fea01bb820..0000000000 --- a/apps/kimi-code/dist-web/assets/ganttDiagram-NO4QXBWP-CCGkTOSq.js +++ /dev/null @@ -1,292 +0,0 @@ -import{bg as on,bh as On,bi as cn,bj as un,bk as ln,bl as ue,bm as Hn,g as Nn,s as Pn,o as Vn,n as Rn,a as zn,b as qn,_ as d,c as Yt,d as Zt,e as Bn,bn as it,l as Tt,k as Zn,j as Xn,p as Gn,x as jn}from"./mermaid.core-Dxfcv_J5.js";import{g as oe}from"./_commonjsHelpers-CqkleIqs.js";import{b as Qn,t as Ne,c as Jn,a as Kn,l as tr}from"./linear-1g72tnQ_.js";import{i as er}from"./init-Gi6I4Gst.js";import"./index-HU0LCM-X.js";import"./defaultLocale-DX6XiGOO.js";function nr(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n=i)&&(n=i)}return n}function rr(t,e){let n;if(e===void 0)for(const r of t)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);else{let r=-1;for(let i of t)(i=e(i,++r,t))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function ir(t){return t}var Gt=1,le=2,xe=3,Xt=4,Pe=1e-6;function sr(t){return"translate("+t+",0)"}function ar(t){return"translate(0,"+t+")"}function or(t){return e=>+t(e)}function cr(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),n=>+t(n)+e}function ur(){return!this.__axis}function fn(t,e){var n=[],r=null,i=null,s=6,a=6,y=3,F=typeof window<"u"&&window.devicePixelRatio>1?0:.5,S=t===Gt||t===Xt?-1:1,w=t===Xt||t===le?"x":"y",P=t===Gt||t===xe?sr:ar;function _(Y){var X=r??(e.ticks?e.ticks.apply(e,n):e.domain()),B=i??(e.tickFormat?e.tickFormat.apply(e,n):ir),v=Math.max(s,0)+y,U=e.range(),R=+U[0]+F,E=+U[U.length-1]+F,z=(e.bandwidth?cr:or)(e.copy(),F),G=Y.selection?Y.selection():Y,T=G.selectAll(".domain").data([null]),k=G.selectAll(".tick").data(X,e).order(),p=k.exit(),L=k.enter().append("g").attr("class","tick"),x=k.select("line"),C=k.select("text");T=T.merge(T.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),k=k.merge(L),x=x.merge(L.append("line").attr("stroke","currentColor").attr(w+"2",S*s)),C=C.merge(L.append("text").attr("fill","currentColor").attr(w,S*v).attr("dy",t===Gt?"0em":t===xe?"0.71em":"0.32em")),Y!==G&&(T=T.transition(Y),k=k.transition(Y),x=x.transition(Y),C=C.transition(Y),p=p.transition(Y).attr("opacity",Pe).attr("transform",function(M){return isFinite(M=z(M))?P(M+F):this.getAttribute("transform")}),L.attr("opacity",Pe).attr("transform",function(M){var D=this.parentNode.__axis;return P((D&&isFinite(D=D(M))?D:z(M))+F)})),p.remove(),T.attr("d",t===Xt||t===le?a?"M"+S*a+","+R+"H"+F+"V"+E+"H"+S*a:"M"+F+","+R+"V"+E:a?"M"+R+","+S*a+"V"+F+"H"+E+"V"+S*a:"M"+R+","+F+"H"+E),k.attr("opacity",1).attr("transform",function(M){return P(z(M)+F)}),x.attr(w+"2",S*s),C.attr(w,S*v).text(B),G.filter(ur).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===le?"start":t===Xt?"end":"middle"),G.each(function(){this.__axis=z})}return _.scale=function(Y){return arguments.length?(e=Y,_):e},_.ticks=function(){return n=Array.from(arguments),_},_.tickArguments=function(Y){return arguments.length?(n=Y==null?[]:Array.from(Y),_):n.slice()},_.tickValues=function(Y){return arguments.length?(r=Y==null?null:Array.from(Y),_):r&&r.slice()},_.tickFormat=function(Y){return arguments.length?(i=Y,_):i},_.tickSize=function(Y){return arguments.length?(s=a=+Y,_):s},_.tickSizeInner=function(Y){return arguments.length?(s=+Y,_):s},_.tickSizeOuter=function(Y){return arguments.length?(a=+Y,_):a},_.tickPadding=function(Y){return arguments.length?(y=+Y,_):y},_.offset=function(Y){return arguments.length?(F=+Y,_):F},_}function lr(t){return fn(Gt,t)}function fr(t){return fn(xe,t)}const dr=Math.PI/180,hr=180/Math.PI,ne=18,dn=.96422,hn=1,mn=.82521,gn=4/29,Ft=6/29,yn=3*Ft*Ft,mr=Ft*Ft*Ft;function kn(t){if(t instanceof ft)return new ft(t.l,t.a,t.b,t.opacity);if(t instanceof ht)return pn(t);t instanceof on||(t=On(t));var e=me(t.r),n=me(t.g),r=me(t.b),i=fe((.2225045*e+.7168786*n+.0606169*r)/hn),s,a;return e===n&&n===r?s=a=i:(s=fe((.4360747*e+.3850649*n+.1430804*r)/dn),a=fe((.0139322*e+.0971045*n+.7141733*r)/mn)),new ft(116*i-16,500*(s-i),200*(i-a),t.opacity)}function gr(t,e,n,r){return arguments.length===1?kn(t):new ft(t,e,n,r??1)}function ft(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}cn(ft,gr,un(ln,{brighter(t){return new ft(this.l+ne*(t??1),this.a,this.b,this.opacity)},darker(t){return new ft(this.l-ne*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return e=dn*de(e),t=hn*de(t),n=mn*de(n),new on(he(3.1338561*e-1.6168667*t-.4906146*n),he(-.9787684*e+1.9161415*t+.033454*n),he(.0719453*e-.2289914*t+1.4052427*n),this.opacity)}}));function fe(t){return t>mr?Math.pow(t,1/3):t/yn+gn}function de(t){return t>Ft?t*t*t:yn*(t-gn)}function he(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function me(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function yr(t){if(t instanceof ht)return new ht(t.h,t.c,t.l,t.opacity);if(t instanceof ft||(t=kn(t)),t.a===0&&t.b===0)return new ht(NaN,0(t(s=new Date(+s)),s),i.ceil=s=>(t(s=new Date(s-1)),e(s,1),t(s),s),i.round=s=>{const a=i(s),y=i.ceil(s);return s-a(e(s=new Date(+s),a==null?1:Math.floor(a)),s),i.range=(s,a,y)=>{const F=[];if(s=i.ceil(s),y=y==null?1:Math.floor(y),!(s0))return F;let S;do F.push(S=new Date(+s)),e(s,y),t(s);while(Snt(a=>{if(a>=a)for(;t(a),!s(a);)a.setTime(a-1)},(a,y)=>{if(a>=a)if(y<0)for(;++y<=0;)for(;e(a,-1),!s(a););else for(;--y>=0;)for(;e(a,1),!s(a););}),n&&(i.count=(s,a)=>(ge.setTime(+s),ye.setTime(+a),t(ge),t(ye),Math.floor(n(ge,ye))),i.every=s=>(s=Math.floor(s),!isFinite(s)||!(s>0)?null:s>1?i.filter(r?a=>r(a)%s===0:a=>i.count(0,a)%s===0):i)),i}const Et=nt(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);Et.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?nt(e=>{e.setTime(Math.floor(e/t)*t)},(e,n)=>{e.setTime(+e+n*t)},(e,n)=>(n-e)/t):Et);Et.range;const mt=1e3,ct=mt*60,gt=ct*60,yt=gt*24,Se=yt*7,Ve=yt*30,ke=yt*365,vt=nt(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*mt)},(t,e)=>(e-t)/mt,t=>t.getUTCSeconds());vt.range;const Nt=nt(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*mt)},(t,e)=>{t.setTime(+t+e*ct)},(t,e)=>(e-t)/ct,t=>t.getMinutes());Nt.range;const Tr=nt(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*ct)},(t,e)=>(e-t)/ct,t=>t.getUTCMinutes());Tr.range;const Pt=nt(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*mt-t.getMinutes()*ct)},(t,e)=>{t.setTime(+t+e*gt)},(t,e)=>(e-t)/gt,t=>t.getHours());Pt.range;const xr=nt(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*gt)},(t,e)=>(e-t)/gt,t=>t.getUTCHours());xr.range;const xt=nt(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*ct)/yt,t=>t.getDate()-1);xt.range;const _e=nt(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/yt,t=>t.getUTCDate()-1);_e.range;const br=nt(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/yt,t=>Math.floor(t/yt));br.range;function Dt(t){return nt(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,n)=>{e.setDate(e.getDate()+n*7)},(e,n)=>(n-e-(n.getTimezoneOffset()-e.getTimezoneOffset())*ct)/Se)}const zt=Dt(0),Vt=Dt(1),vn=Dt(2),Tn=Dt(3),bt=Dt(4),xn=Dt(5),bn=Dt(6);zt.range;Vt.range;vn.range;Tn.range;bt.range;xn.range;bn.range;function Mt(t){return nt(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCDate(e.getUTCDate()+n*7)},(e,n)=>(n-e)/Se)}const wn=Mt(0),re=Mt(1),wr=Mt(2),Dr=Mt(3),It=Mt(4),Mr=Mt(5),Cr=Mt(6);wn.range;re.range;wr.range;Dr.range;It.range;Mr.range;Cr.range;const Rt=nt(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth());Rt.range;const Sr=nt(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth());Sr.range;const kt=nt(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());kt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:nt(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,n)=>{e.setFullYear(e.getFullYear()+n*t)});kt.range;const wt=nt(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());wt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:nt(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCFullYear(e.getUTCFullYear()+n*t)});wt.range;function _r(t,e,n,r,i,s){const a=[[vt,1,mt],[vt,5,5*mt],[vt,15,15*mt],[vt,30,30*mt],[s,1,ct],[s,5,5*ct],[s,15,15*ct],[s,30,30*ct],[i,1,gt],[i,3,3*gt],[i,6,6*gt],[i,12,12*gt],[r,1,yt],[r,2,2*yt],[n,1,Se],[e,1,Ve],[e,3,3*Ve],[t,1,ke]];function y(S,w,P){const _=wv).right(a,_);if(Y===a.length)return t.every(Ne(S/ke,w/ke,P));if(Y===0)return Et.every(Math.max(Ne(S,w,P),1));const[X,B]=a[_/a[Y-1][2]53)return null;"w"in f||(f.w=1),"Z"in f?(A=ve($t(f.y,0,1)),Q=A.getUTCDay(),A=Q>4||Q===0?re.ceil(A):re(A),A=_e.offset(A,(f.V-1)*7),f.y=A.getUTCFullYear(),f.m=A.getUTCMonth(),f.d=A.getUTCDate()+(f.w+6)%7):(A=pe($t(f.y,0,1)),Q=A.getDay(),A=Q>4||Q===0?Vt.ceil(A):Vt(A),A=xt.offset(A,(f.V-1)*7),f.y=A.getFullYear(),f.m=A.getMonth(),f.d=A.getDate()+(f.w+6)%7)}else("W"in f||"U"in f)&&("w"in f||(f.w="u"in f?f.u%7:"W"in f?1:0),Q="Z"in f?ve($t(f.y,0,1)).getUTCDay():pe($t(f.y,0,1)).getDay(),f.m=0,f.d="W"in f?(f.w+6)%7+f.W*7-(Q+5)%7:f.w+f.U*7-(Q+6)%7);return"Z"in f?(f.H+=f.Z/100|0,f.M+=f.Z%100,ve(f)):pe(f)}}function p(h,N,V,f){for(var tt=0,A=N.length,Q=V.length,Z,st;tt=Q)return-1;if(Z=N.charCodeAt(tt++),Z===37){if(Z=N.charAt(tt++),st=G[Z in Re?N.charAt(tt++):Z],!st||(f=st(h,V,f))<0)return-1}else if(Z!=V.charCodeAt(f++))return-1}return f}function L(h,N,V){var f=S.exec(N.slice(V));return f?(h.p=w.get(f[0].toLowerCase()),V+f[0].length):-1}function x(h,N,V){var f=Y.exec(N.slice(V));return f?(h.w=X.get(f[0].toLowerCase()),V+f[0].length):-1}function C(h,N,V){var f=P.exec(N.slice(V));return f?(h.w=_.get(f[0].toLowerCase()),V+f[0].length):-1}function M(h,N,V){var f=U.exec(N.slice(V));return f?(h.m=R.get(f[0].toLowerCase()),V+f[0].length):-1}function D(h,N,V){var f=B.exec(N.slice(V));return f?(h.m=v.get(f[0].toLowerCase()),V+f[0].length):-1}function c(h,N,V){return p(h,e,N,V)}function g(h,N,V){return p(h,n,N,V)}function b(h,N,V){return p(h,r,N,V)}function m(h){return a[h.getDay()]}function I(h){return s[h.getDay()]}function o(h){return F[h.getMonth()]}function W(h){return y[h.getMonth()]}function u(h){return i[+(h.getHours()>=12)]}function K(h){return 1+~~(h.getMonth()/3)}function l(h){return a[h.getUTCDay()]}function $(h){return s[h.getUTCDay()]}function O(h){return F[h.getUTCMonth()]}function j(h){return y[h.getUTCMonth()]}function H(h){return i[+(h.getUTCHours()>=12)]}function J(h){return 1+~~(h.getUTCMonth()/3)}return{format:function(h){var N=T(h+="",E);return N.toString=function(){return h},N},parse:function(h){var N=k(h+="",!1);return N.toString=function(){return h},N},utcFormat:function(h){var N=T(h+="",z);return N.toString=function(){return h},N},utcParse:function(h){var N=k(h+="",!0);return N.toString=function(){return h},N}}}var Re={"-":"",_:" ",0:"0"},rt=/^\s*\d+/,Er=/^%/,Ir=/[\\^$*+?|[\]().{}]/g;function q(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",s=i.length;return r+(s[e.toLowerCase(),n]))}function Ar(t,e,n){var r=rt.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function Wr(t,e,n){var r=rt.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function $r(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function Or(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function Hr(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function ze(t,e,n){var r=rt.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function qe(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function Nr(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function Pr(t,e,n){var r=rt.exec(e.slice(n,n+1));return r?(t.q=r[0]*3-3,n+r[0].length):-1}function Vr(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function Be(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function Rr(t,e,n){var r=rt.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function Ze(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function zr(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function qr(t,e,n){var r=rt.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function Br(t,e,n){var r=rt.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function Zr(t,e,n){var r=rt.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Xr(t,e,n){var r=Er.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function Gr(t,e,n){var r=rt.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function jr(t,e,n){var r=rt.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function Xe(t,e){return q(t.getDate(),e,2)}function Qr(t,e){return q(t.getHours(),e,2)}function Jr(t,e){return q(t.getHours()%12||12,e,2)}function Kr(t,e){return q(1+xt.count(kt(t),t),e,3)}function Dn(t,e){return q(t.getMilliseconds(),e,3)}function ti(t,e){return Dn(t,e)+"000"}function ei(t,e){return q(t.getMonth()+1,e,2)}function ni(t,e){return q(t.getMinutes(),e,2)}function ri(t,e){return q(t.getSeconds(),e,2)}function ii(t){var e=t.getDay();return e===0?7:e}function si(t,e){return q(zt.count(kt(t)-1,t),e,2)}function Mn(t){var e=t.getDay();return e>=4||e===0?bt(t):bt.ceil(t)}function ai(t,e){return t=Mn(t),q(bt.count(kt(t),t)+(kt(t).getDay()===4),e,2)}function oi(t){return t.getDay()}function ci(t,e){return q(Vt.count(kt(t)-1,t),e,2)}function ui(t,e){return q(t.getFullYear()%100,e,2)}function li(t,e){return t=Mn(t),q(t.getFullYear()%100,e,2)}function fi(t,e){return q(t.getFullYear()%1e4,e,4)}function di(t,e){var n=t.getDay();return t=n>=4||n===0?bt(t):bt.ceil(t),q(t.getFullYear()%1e4,e,4)}function hi(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+q(e/60|0,"0",2)+q(e%60,"0",2)}function Ge(t,e){return q(t.getUTCDate(),e,2)}function mi(t,e){return q(t.getUTCHours(),e,2)}function gi(t,e){return q(t.getUTCHours()%12||12,e,2)}function yi(t,e){return q(1+_e.count(wt(t),t),e,3)}function Cn(t,e){return q(t.getUTCMilliseconds(),e,3)}function ki(t,e){return Cn(t,e)+"000"}function pi(t,e){return q(t.getUTCMonth()+1,e,2)}function vi(t,e){return q(t.getUTCMinutes(),e,2)}function Ti(t,e){return q(t.getUTCSeconds(),e,2)}function xi(t){var e=t.getUTCDay();return e===0?7:e}function bi(t,e){return q(wn.count(wt(t)-1,t),e,2)}function Sn(t){var e=t.getUTCDay();return e>=4||e===0?It(t):It.ceil(t)}function wi(t,e){return t=Sn(t),q(It.count(wt(t),t)+(wt(t).getUTCDay()===4),e,2)}function Di(t){return t.getUTCDay()}function Mi(t,e){return q(re.count(wt(t)-1,t),e,2)}function Ci(t,e){return q(t.getUTCFullYear()%100,e,2)}function Si(t,e){return t=Sn(t),q(t.getUTCFullYear()%100,e,2)}function _i(t,e){return q(t.getUTCFullYear()%1e4,e,4)}function Yi(t,e){var n=t.getUTCDay();return t=n>=4||n===0?It(t):It.ceil(t),q(t.getUTCFullYear()%1e4,e,4)}function Fi(){return"+0000"}function je(){return"%"}function Qe(t){return+t}function Je(t){return Math.floor(+t/1e3)}var St,ie;Ui({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Ui(t){return St=Ur(t),ie=St.format,St.parse,St.utcFormat,St.utcParse,St}function Ei(t){return new Date(t)}function Ii(t){return t instanceof Date?+t:+new Date(+t)}function _n(t,e,n,r,i,s,a,y,F,S){var w=Jn(),P=w.invert,_=w.domain,Y=S(".%L"),X=S(":%S"),B=S("%I:%M"),v=S("%I %p"),U=S("%a %d"),R=S("%b %d"),E=S("%B"),z=S("%Y");function G(T){return(F(T)4&&(Y+=7),_.add(Y,n));return X.diff(B,"week")+1},y.isoWeekday=function(S){return this.$utils().u(S)?this.day()||7:this.day(this.day()%7?S:S-7)};var F=y.startOf;y.startOf=function(S,w){var P=this.$utils(),_=!!P.u(w)||w;return P.p(S)==="isoweek"?_?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):F.bind(this)(S,w)}}}))})(jt)),jt.exports}var $i=Wi();const Oi=oe($i);var Qt={exports:{}},Hi=Qt.exports,tn;function Ni(){return tn||(tn=1,(function(t,e){(function(n,r){t.exports=r()})(Hi,(function(){var n={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},r=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,i=/\d/,s=/\d\d/,a=/\d\d?/,y=/\d*[^-_:/,()\s\d]+/,F={},S=function(v){return(v=+v)+(v>68?1900:2e3)},w=function(v){return function(U){this[v]=+U}},P=[/[+-]\d\d:?(\d\d)?|Z/,function(v){(this.zone||(this.zone={})).offset=(function(U){if(!U||U==="Z")return 0;var R=U.match(/([+-]|\d\d)/g),E=60*R[1]+(+R[2]||0);return E===0?0:R[0]==="+"?-E:E})(v)}],_=function(v){var U=F[v];return U&&(U.indexOf?U:U.s.concat(U.f))},Y=function(v,U){var R,E=F.meridiem;if(E){for(var z=1;z<=24;z+=1)if(v.indexOf(E(z,0,U))>-1){R=z>12;break}}else R=v===(U?"pm":"PM");return R},X={A:[y,function(v){this.afternoon=Y(v,!1)}],a:[y,function(v){this.afternoon=Y(v,!0)}],Q:[i,function(v){this.month=3*(v-1)+1}],S:[i,function(v){this.milliseconds=100*+v}],SS:[s,function(v){this.milliseconds=10*+v}],SSS:[/\d{3}/,function(v){this.milliseconds=+v}],s:[a,w("seconds")],ss:[a,w("seconds")],m:[a,w("minutes")],mm:[a,w("minutes")],H:[a,w("hours")],h:[a,w("hours")],HH:[a,w("hours")],hh:[a,w("hours")],D:[a,w("day")],DD:[s,w("day")],Do:[y,function(v){var U=F.ordinal,R=v.match(/\d+/);if(this.day=R[0],U)for(var E=1;E<=31;E+=1)U(E).replace(/\[|\]/g,"")===v&&(this.day=E)}],w:[a,w("week")],ww:[s,w("week")],M:[a,w("month")],MM:[s,w("month")],MMM:[y,function(v){var U=_("months"),R=(_("monthsShort")||U.map((function(E){return E.slice(0,3)}))).indexOf(v)+1;if(R<1)throw new Error;this.month=R%12||R}],MMMM:[y,function(v){var U=_("months").indexOf(v)+1;if(U<1)throw new Error;this.month=U%12||U}],Y:[/[+-]?\d+/,w("year")],YY:[s,function(v){this.year=S(v)}],YYYY:[/\d{4}/,w("year")],Z:P,ZZ:P};function B(v){var U,R;U=v,R=F&&F.formats;for(var E=(v=U.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(x,C,M){var D=M&&M.toUpperCase();return C||R[M]||n[M]||R[D].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(c,g,b){return g||b.slice(1)}))}))).match(r),z=E.length,G=0;G-1)return new Date((I==="X"?1e3:1)*m);var u=B(I)(m),K=u.year,l=u.month,$=u.day,O=u.hours,j=u.minutes,H=u.seconds,J=u.milliseconds,h=u.zone,N=u.week,V=new Date,f=$||(K||l?1:V.getDate()),tt=K||V.getFullYear(),A=0;K&&!l||(A=l>0?l-1:V.getMonth());var Q,Z=O||0,st=j||0,at=H||0,pt=J||0;return h?new Date(Date.UTC(tt,A,f,Z,st,at,pt+60*h.offset*1e3)):o?new Date(Date.UTC(tt,A,f,Z,st,at,pt)):(Q=new Date(tt,A,f,Z,st,at,pt),N&&(Q=W(Q).week(N).toDate()),Q)}catch{return new Date("")}})(T,L,k,R),this.init(),D&&D!==!0&&(this.$L=this.locale(D).$L),M&&T!=this.format(L)&&(this.$d=new Date("")),F={}}else if(L instanceof Array)for(var c=L.length,g=1;g<=c;g+=1){p[1]=L[g-1];var b=R.apply(this,p);if(b.isValid()){this.$d=b.$d,this.$L=b.$L,this.init();break}g===c&&(this.$d=new Date(""))}else z.call(this,G)}}}))})(Qt)),Qt.exports}var Pi=Ni();const Vi=oe(Pi);var Jt={exports:{}},Ri=Jt.exports,en;function zi(){return en||(en=1,(function(t,e){(function(n,r){t.exports=r()})(Ri,(function(){return function(n,r){var i=r.prototype,s=i.format;i.format=function(a){var y=this,F=this.$locale();if(!this.isValid())return s.bind(this)(a);var S=this.$utils(),w=(a||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(P){switch(P){case"Q":return Math.ceil((y.$M+1)/3);case"Do":return F.ordinal(y.$D);case"gggg":return y.weekYear();case"GGGG":return y.isoWeekYear();case"wo":return F.ordinal(y.week(),"W");case"w":case"ww":return S.s(y.week(),P==="w"?1:2,"0");case"W":case"WW":return S.s(y.isoWeek(),P==="W"?1:2,"0");case"k":case"kk":return S.s(String(y.$H===0?24:y.$H),P==="k"?1:2,"0");case"X":return Math.floor(y.$d.getTime()/1e3);case"x":return y.$d.getTime();case"z":return"["+y.offsetName()+"]";case"zzz":return"["+y.offsetName("long")+"]";default:return P}}));return s.bind(this)(w)}}}))})(Jt)),Jt.exports}var qi=zi();const Bi=oe(qi);var Kt={exports:{}},Zi=Kt.exports,nn;function Xi(){return nn||(nn=1,(function(t,e){(function(n,r){t.exports=r()})(Zi,(function(){var n,r,i=1e3,s=6e4,a=36e5,y=864e5,F=31536e6,S=2628e6,w=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,P=/\[([^\]]+)]|YYYY|YY|Y|M{1,2}|D{1,2}|H{1,2}|m{1,2}|s{1,2}|SSS/g,_={years:F,months:S,days:y,hours:a,minutes:s,seconds:i,milliseconds:1,weeks:6048e5},Y=function(T){return T instanceof z},X=function(T,k,p){return new z(T,p,k.$l)},B=function(T){return r.p(T)+"s"},v=function(T){return T<0},U=function(T){return v(T)?Math.ceil(T):Math.floor(T)},R=function(T){return Math.abs(T)},E=function(T,k){return T?v(T)?{negative:!0,format:""+R(T)+k}:{negative:!1,format:""+T+k}:{negative:!1,format:""}},z=(function(){function T(p,L,x){var C=this;if(this.$d={},this.$l=x,p===void 0&&(this.$ms=0,this.parseFromMilliseconds()),L)return X(p*_[B(L)],this);if(typeof p=="number")return this.$ms=p,this.parseFromMilliseconds(),this;if(typeof p=="object")return Object.keys(p).forEach((function(c){C.$d[B(c)]=p[c]})),this.calMilliseconds(),this;if(typeof p=="string"){var M=p.match(w);if(M){var D=M.slice(2).map((function(c){return c!=null?Number(c):0}));return this.$d.years=D[0],this.$d.months=D[1],this.$d.weeks=D[2],this.$d.days=D[3],this.$d.hours=D[4],this.$d.minutes=D[5],this.$d.seconds=D[6],this.calMilliseconds(),this}}return this}var k=T.prototype;return k.calMilliseconds=function(){var p=this;this.$ms=Object.keys(this.$d).reduce((function(L,x){return L+(p.$d[x]||0)*_[x]}),0)},k.parseFromMilliseconds=function(){var p=this.$ms;this.$d.years=U(p/F),p%=F,this.$d.months=U(p/S),p%=S,this.$d.days=U(p/y),p%=y,this.$d.hours=U(p/a),p%=a,this.$d.minutes=U(p/s),p%=s,this.$d.seconds=U(p/i),p%=i,this.$d.milliseconds=p},k.toISOString=function(){var p=E(this.$d.years,"Y"),L=E(this.$d.months,"M"),x=+this.$d.days||0;this.$d.weeks&&(x+=7*this.$d.weeks);var C=E(x,"D"),M=E(this.$d.hours,"H"),D=E(this.$d.minutes,"M"),c=this.$d.seconds||0;this.$d.milliseconds&&(c+=this.$d.milliseconds/1e3,c=Math.round(1e3*c)/1e3);var g=E(c,"S"),b=p.negative||L.negative||C.negative||M.negative||D.negative||g.negative,m=M.format||D.format||g.format?"T":"",I=(b?"-":"")+"P"+p.format+L.format+C.format+m+M.format+D.format+g.format;return I==="P"||I==="-P"?"P0D":I},k.toJSON=function(){return this.toISOString()},k.format=function(p){var L=p||"YYYY-MM-DDTHH:mm:ss",x={Y:this.$d.years,YY:r.s(this.$d.years,2,"0"),YYYY:r.s(this.$d.years,4,"0"),M:this.$d.months,MM:r.s(this.$d.months,2,"0"),D:this.$d.days,DD:r.s(this.$d.days,2,"0"),H:this.$d.hours,HH:r.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:r.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:r.s(this.$d.seconds,2,"0"),SSS:r.s(this.$d.milliseconds,3,"0")};return L.replace(P,(function(C,M){return M||String(x[C])}))},k.as=function(p){return this.$ms/_[B(p)]},k.get=function(p){var L=this.$ms,x=B(p);return x==="milliseconds"?L%=1e3:L=x==="weeks"?U(L/_[x]):this.$d[x],L||0},k.add=function(p,L,x){var C;return C=L?p*_[B(L)]:Y(p)?p.$ms:X(p,this).$ms,X(this.$ms+C*(x?-1:1),this)},k.subtract=function(p,L){return this.add(p,L,!0)},k.locale=function(p){var L=this.clone();return L.$l=p,L},k.clone=function(){return X(this.$ms,this)},k.humanize=function(p){return n().add(this.$ms,"ms").locale(this.$l).fromNow(!p)},k.valueOf=function(){return this.asMilliseconds()},k.milliseconds=function(){return this.get("milliseconds")},k.asMilliseconds=function(){return this.as("milliseconds")},k.seconds=function(){return this.get("seconds")},k.asSeconds=function(){return this.as("seconds")},k.minutes=function(){return this.get("minutes")},k.asMinutes=function(){return this.as("minutes")},k.hours=function(){return this.get("hours")},k.asHours=function(){return this.as("hours")},k.days=function(){return this.get("days")},k.asDays=function(){return this.as("days")},k.weeks=function(){return this.get("weeks")},k.asWeeks=function(){return this.as("weeks")},k.months=function(){return this.get("months")},k.asMonths=function(){return this.as("months")},k.years=function(){return this.get("years")},k.asYears=function(){return this.as("years")},T})(),G=function(T,k,p){return T.add(k.years()*p,"y").add(k.months()*p,"M").add(k.days()*p,"d").add(k.hours()*p,"h").add(k.minutes()*p,"m").add(k.seconds()*p,"s").add(k.milliseconds()*p,"ms")};return function(T,k,p){n=p,r=p().$utils(),p.duration=function(C,M){var D=p.locale();return X(C,{$l:D},M)},p.isDuration=Y;var L=k.prototype.add,x=k.prototype.subtract;k.prototype.add=function(C,M){return Y(C)?G(this,C,1):L.bind(this)(C,M)},k.prototype.subtract=function(C,M){return Y(C)?G(this,C,-1):x.bind(this)(C,M)}}}))})(Kt)),Kt.exports}var Gi=Xi();const ji=oe(Gi);var we=(function(){var t=d(function(D,c,g,b){for(g=g||{},b=D.length;b--;g[D[b]]=c);return g},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],n=[1,26],r=[1,27],i=[1,28],s=[1,29],a=[1,30],y=[1,31],F=[1,32],S=[1,33],w=[1,34],P=[1,9],_=[1,10],Y=[1,11],X=[1,12],B=[1,13],v=[1,14],U=[1,15],R=[1,16],E=[1,19],z=[1,20],G=[1,21],T=[1,22],k=[1,23],p=[1,25],L=[1,35],x={trace:d(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:d(function(c,g,b,m,I,o,W){var u=o.length-1;switch(I){case 1:return o[u-1];case 2:this.$=[];break;case 3:o[u-1].push(o[u]),this.$=o[u-1];break;case 4:case 5:this.$=o[u];break;case 6:case 7:this.$=[];break;case 8:m.setWeekday("monday");break;case 9:m.setWeekday("tuesday");break;case 10:m.setWeekday("wednesday");break;case 11:m.setWeekday("thursday");break;case 12:m.setWeekday("friday");break;case 13:m.setWeekday("saturday");break;case 14:m.setWeekday("sunday");break;case 15:m.setWeekend("friday");break;case 16:m.setWeekend("saturday");break;case 17:m.setDateFormat(o[u].substr(11)),this.$=o[u].substr(11);break;case 18:m.enableInclusiveEndDates(),this.$=o[u].substr(18);break;case 19:m.TopAxis(),this.$=o[u].substr(8);break;case 20:m.setAxisFormat(o[u].substr(11)),this.$=o[u].substr(11);break;case 21:m.setTickInterval(o[u].substr(13)),this.$=o[u].substr(13);break;case 22:m.setExcludes(o[u].substr(9)),this.$=o[u].substr(9);break;case 23:m.setIncludes(o[u].substr(9)),this.$=o[u].substr(9);break;case 24:m.setTodayMarker(o[u].substr(12)),this.$=o[u].substr(12);break;case 27:m.setDiagramTitle(o[u].substr(6)),this.$=o[u].substr(6);break;case 28:this.$=o[u].trim(),m.setAccTitle(this.$);break;case 29:case 30:this.$=o[u].trim(),m.setAccDescription(this.$);break;case 31:m.addSection(o[u].substr(8)),this.$=o[u].substr(8);break;case 33:m.addTask(o[u-1],o[u]),this.$="task";break;case 34:this.$=o[u-1],m.setClickEvent(o[u-1],o[u],null);break;case 35:this.$=o[u-2],m.setClickEvent(o[u-2],o[u-1],o[u]);break;case 36:this.$=o[u-2],m.setClickEvent(o[u-2],o[u-1],null),m.setLink(o[u-2],o[u]);break;case 37:this.$=o[u-3],m.setClickEvent(o[u-3],o[u-2],o[u-1]),m.setLink(o[u-3],o[u]);break;case 38:this.$=o[u-2],m.setClickEvent(o[u-2],o[u],null),m.setLink(o[u-2],o[u-1]);break;case 39:this.$=o[u-3],m.setClickEvent(o[u-3],o[u-1],o[u]),m.setLink(o[u-3],o[u-2]);break;case 40:this.$=o[u-1],m.setLink(o[u-1],o[u]);break;case 41:case 47:this.$=o[u-1]+" "+o[u];break;case 42:case 43:case 45:this.$=o[u-2]+" "+o[u-1]+" "+o[u];break;case 44:case 46:this.$=o[u-3]+" "+o[u-2]+" "+o[u-1]+" "+o[u];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:n,13:r,14:i,15:s,16:a,17:y,18:F,19:18,20:S,21:w,22:P,23:_,24:Y,25:X,26:B,27:v,28:U,29:R,30:E,31:z,33:G,35:T,36:k,37:24,38:p,40:L},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:n,13:r,14:i,15:s,16:a,17:y,18:F,19:18,20:S,21:w,22:P,23:_,24:Y,25:X,26:B,27:v,28:U,29:R,30:E,31:z,33:G,35:T,36:k,37:24,38:p,40:L},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:d(function(c,g){if(g.recoverable)this.trace(c);else{var b=new Error(c);throw b.hash=g,b}},"parseError"),parse:d(function(c){var g=this,b=[0],m=[],I=[null],o=[],W=this.table,u="",K=0,l=0,$=2,O=1,j=o.slice.call(arguments,1),H=Object.create(this.lexer),J={yy:{}};for(var h in this.yy)Object.prototype.hasOwnProperty.call(this.yy,h)&&(J.yy[h]=this.yy[h]);H.setInput(c,J.yy),J.yy.lexer=H,J.yy.parser=this,typeof H.yylloc>"u"&&(H.yylloc={});var N=H.yylloc;o.push(N);var V=H.options&&H.options.ranges;typeof J.yy.parseError=="function"?this.parseError=J.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function f(ot){b.length=b.length-2*ot,I.length=I.length-ot,o.length=o.length-ot}d(f,"popStack");function tt(){var ot;return ot=m.pop()||H.lex()||O,typeof ot!="number"&&(ot instanceof Array&&(m=ot,ot=m.pop()),ot=g.symbols_[ot]||ot),ot}d(tt,"lex");for(var A,Q,Z,st,at={},pt,ut,He,Bt;;){if(Q=b[b.length-1],this.defaultActions[Q]?Z=this.defaultActions[Q]:((A===null||typeof A>"u")&&(A=tt()),Z=W[Q]&&W[Q][A]),typeof Z>"u"||!Z.length||!Z[0]){var ce="";Bt=[];for(pt in W[Q])this.terminals_[pt]&&pt>$&&Bt.push("'"+this.terminals_[pt]+"'");H.showPosition?ce="Parse error on line "+(K+1)+`: -`+H.showPosition()+` -Expecting `+Bt.join(", ")+", got '"+(this.terminals_[A]||A)+"'":ce="Parse error on line "+(K+1)+": Unexpected "+(A==O?"end of input":"'"+(this.terminals_[A]||A)+"'"),this.parseError(ce,{text:H.match,token:this.terminals_[A]||A,line:H.yylineno,loc:N,expected:Bt})}if(Z[0]instanceof Array&&Z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Q+", token: "+A);switch(Z[0]){case 1:b.push(A),I.push(H.yytext),o.push(H.yylloc),b.push(Z[1]),A=null,l=H.yyleng,u=H.yytext,K=H.yylineno,N=H.yylloc;break;case 2:if(ut=this.productions_[Z[1]][1],at.$=I[I.length-ut],at._$={first_line:o[o.length-(ut||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(ut||1)].first_column,last_column:o[o.length-1].last_column},V&&(at._$.range=[o[o.length-(ut||1)].range[0],o[o.length-1].range[1]]),st=this.performAction.apply(at,[u,l,K,J.yy,Z[1],I,o].concat(j)),typeof st<"u")return st;ut&&(b=b.slice(0,-1*ut*2),I=I.slice(0,-1*ut),o=o.slice(0,-1*ut)),b.push(this.productions_[Z[1]][0]),I.push(at.$),o.push(at._$),He=W[b[b.length-2]][b[b.length-1]],b.push(He);break;case 3:return!0}}return!0},"parse")},C=(function(){var D={EOF:1,parseError:d(function(g,b){if(this.yy.parser)this.yy.parser.parseError(g,b);else throw new Error(g)},"parseError"),setInput:d(function(c,g){return this.yy=g||this.yy||{},this._input=c,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:d(function(){var c=this._input[0];this.yytext+=c,this.yyleng++,this.offset++,this.match+=c,this.matched+=c;var g=c.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),c},"input"),unput:d(function(c){var g=c.length,b=c.split(/(?:\r\n?|\n)/g);this._input=c+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;var m=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),b.length-1&&(this.yylineno-=b.length-1);var I=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:b?(b.length===m.length?this.yylloc.first_column:0)+m[m.length-b.length].length-b[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[I[0],I[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:d(function(){return this._more=!0,this},"more"),reject:d(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:d(function(c){this.unput(this.match.slice(c))},"less"),pastInput:d(function(){var c=this.matched.substr(0,this.matched.length-this.match.length);return(c.length>20?"...":"")+c.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:d(function(){var c=this.match;return c.length<20&&(c+=this._input.substr(0,20-c.length)),(c.substr(0,20)+(c.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:d(function(){var c=this.pastInput(),g=new Array(c.length+1).join("-");return c+this.upcomingInput()+` -`+g+"^"},"showPosition"),test_match:d(function(c,g){var b,m,I;if(this.options.backtrack_lexer&&(I={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(I.yylloc.range=this.yylloc.range.slice(0))),m=c[0].match(/(?:\r\n?|\n).*/g),m&&(this.yylineno+=m.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:m?m[m.length-1].length-m[m.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+c[0].length},this.yytext+=c[0],this.match+=c[0],this.matches=c,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(c[0].length),this.matched+=c[0],b=this.performAction.call(this,this.yy,this,g,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),b)return b;if(this._backtrack){for(var o in I)this[o]=I[o];return!1}return!1},"test_match"),next:d(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var c,g,b,m;this._more||(this.yytext="",this.match="");for(var I=this._currentRules(),o=0;og[0].length)){if(g=b,m=o,this.options.backtrack_lexer){if(c=this.test_match(b,I[o]),c!==!1)return c;if(this._backtrack){g=!1;continue}else return!1}else if(!this.options.flex)break}return g?(c=this.test_match(g,I[m]),c!==!1?c:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:d(function(){var g=this.next();return g||this.lex()},"lex"),begin:d(function(g){this.conditionStack.push(g)},"begin"),popState:d(function(){var g=this.conditionStack.length-1;return g>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:d(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:d(function(g){return g=this.conditionStack.length-1-Math.abs(g||0),g>=0?this.conditionStack[g]:"INITIAL"},"topState"),pushState:d(function(g){this.begin(g)},"pushState"),stateStackSize:d(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:d(function(g,b,m,I){switch(m){case 0:return this.begin("open_directive"),"open_directive";case 1:return this.begin("acc_title"),31;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),33;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return D})();x.lexer=C;function M(){this.yy={}}return d(M,"Parser"),M.prototype=x,x.Parser=M,new M})();we.parser=we;var Qi=we;it.extend(Oi);it.extend(Vi);it.extend(Bi);var rn={friday:5,saturday:6},lt="",Ye="",Fe=void 0,Ue="",Lt=[],At=[],Ee=new Map,Ie=[],se=[],Wt="",Le="",Yn=["active","done","crit","milestone","vert"],Ae=[],_t="",qt=!1,We=!1,$e="sunday",ae="saturday",De=0,Ji=d(function(){Ie=[],se=[],Wt="",Ae=[],te=0,Ce=void 0,ee=void 0,et=[],lt="",Ye="",Le="",Fe=void 0,Ue="",Lt=[],At=[],qt=!1,We=!1,De=0,Ee=new Map,_t="",Gn(),$e="sunday",ae="saturday"},"clear"),Ki=d(function(t){_t=t},"setDiagramId"),ts=d(function(t){Ye=t},"setAxisFormat"),es=d(function(){return Ye},"getAxisFormat"),ns=d(function(t){Fe=t},"setTickInterval"),rs=d(function(){return Fe},"getTickInterval"),is=d(function(t){Ue=t},"setTodayMarker"),ss=d(function(){return Ue},"getTodayMarker"),as=d(function(t){lt=t},"setDateFormat"),os=d(function(){qt=!0},"enableInclusiveEndDates"),cs=d(function(){return qt},"endDatesAreInclusive"),us=d(function(){We=!0},"enableTopAxis"),ls=d(function(){return We},"topAxisEnabled"),fs=d(function(t){Le=t},"setDisplayMode"),ds=d(function(){return Le},"getDisplayMode"),hs=d(function(){return lt},"getDateFormat"),Fn=d((t,e)=>{const n=e.toLowerCase().split(/[\s,]+/).filter(r=>r!=="");return[...new Set([...t,...n])]},"mergeTokens"),ms=d(function(t){Lt=Fn(Lt,t)},"setIncludes"),gs=d(function(){return Lt},"getIncludes"),ys=d(function(t){At=Fn(At,t)},"setExcludes"),ks=d(function(){return At},"getExcludes"),ps=d(function(){return Ee},"getLinks"),vs=d(function(t){Wt=t,Ie.push(t)},"addSection"),Ts=d(function(){return Ie},"getSections"),xs=d(function(){let t=sn();const e=10;let n=0;for(;!t&&ny))throw new Error("Failed to find a valid date that was not excluded by `excludes` after 10,000 iterations.");t=t.add(1,"d")}return[e,a]},"fixTaskDates"),Me=d(function(t,e,n){if(n=n.trim(),d(y=>{const F=y.trim();return F==="x"||F==="X"},"isTimestampFormat")(e)&&/^\d+$/.test(n))return new Date(Number(n));const s=/^after\s+(?[\d\w- ]+)/.exec(n);if(s!==null){let y=null;for(const S of s.groups.ids.split(" ")){let w=Ct(S);w!==void 0&&(!y||w.endTime>y.endTime)&&(y=w)}if(y)return y.endTime;const F=new Date;return F.setHours(0,0,0,0),F}let a=it(n,e.trim(),!0);if(a.isValid())return a.toDate();{Tt.debug("Invalid date:"+n),Tt.debug("With date format:"+e.trim());const y=new Date(n);if(y===void 0||isNaN(y.getTime())||y.getFullYear()<-1e4||y.getFullYear()>1e4)throw new Error("Invalid date:"+n);return y}},"getStartDate"),In=d(function(t){const e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return e!==null?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]},"parseDuration"),Ln=d(function(t,e,n,r=!1){n=n.trim();const s=/^until\s+(?[\d\w- ]+)/.exec(n);if(s!==null){let w=null;for(const _ of s.groups.ids.split(" ")){let Y=Ct(_);Y!==void 0&&(!w||Y.startTime{window.open(n,"_self")}),Ee.set(r,n))}),Wn(t,"clickable")},"setLink"),Wn=d(function(t,e){t.split(",").forEach(function(n){let r=Ct(n);r!==void 0&&r.classes.push(e)})},"setClass"),Us=d(function(t,e,n){if(Yt().securityLevel!=="loose"||e===void 0)return;let r=[];if(typeof n=="string"){r=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let s=0;s{jn.runFunc(e,...r)})},"setClickFun"),$n=d(function(t,e){Ae.push(function(){const n=_t?`${_t}-${t}`:t,r=document.querySelector(`[id="${n}"]`);r!==null&&r.addEventListener("click",function(){e()})},function(){const n=_t?`${_t}-${t}`:t,r=document.querySelector(`[id="${n}-text"]`);r!==null&&r.addEventListener("click",function(){e()})})},"pushFun"),Es=d(function(t,e,n){t.split(",").forEach(function(r){Us(r,e,n)}),Wn(t,"clickable")},"setClickEvent"),Is=d(function(t){Ae.forEach(function(e){e(t)})},"bindFunctions"),Ls={getConfig:d(()=>Yt().gantt,"getConfig"),clear:Ji,setDateFormat:as,getDateFormat:hs,enableInclusiveEndDates:os,endDatesAreInclusive:cs,enableTopAxis:us,topAxisEnabled:ls,setAxisFormat:ts,getAxisFormat:es,setTickInterval:ns,getTickInterval:rs,setTodayMarker:is,getTodayMarker:ss,setAccTitle:qn,getAccTitle:zn,setDiagramTitle:Rn,getDiagramTitle:Vn,setDiagramId:Ki,setDisplayMode:fs,getDisplayMode:ds,setAccDescription:Pn,getAccDescription:Nn,addSection:vs,getSections:Ts,getTasks:xs,addTask:_s,findTaskById:Ct,addTaskOrg:Ys,setIncludes:ms,getIncludes:gs,setExcludes:ys,getExcludes:ks,setClickEvent:Es,setLink:Fs,getLinks:ps,bindFunctions:Is,parseDuration:In,isInvalidDate:Un,setWeekday:bs,getWeekday:ws,setWeekend:Ds};function Oe(t,e,n){let r=!0;for(;r;)r=!1,n.forEach(function(i){const s="^\\s*"+i+"\\s*$",a=new RegExp(s);t[0].match(a)&&(e[i]=!0,t.shift(1),r=!0)})}d(Oe,"getTaskTags");it.extend(ji);var As=d(function(){Tt.debug("Something is calling, setConf, remove the call")},"setConf"),an={monday:Vt,tuesday:vn,wednesday:Tn,thursday:bt,friday:xn,saturday:bn,sunday:zt},Ws=d((t,e)=>{let n=[...t].map(()=>-1/0),r=[...t].sort((s,a)=>s.startTime-a.startTime||s.order-a.order),i=0;for(const s of r)for(let a=0;a=n[a]){n[a]=s.endTime,s.order=a+e,a>i&&(i=a);break}return i},"getMaxIntersections"),dt,Te=1e4,$s=d(function(t,e,n,r){const i=Yt().gantt;r.db.setDiagramId(e);const s=Yt().securityLevel;let a;s==="sandbox"&&(a=Zt("#i"+e));const y=s==="sandbox"?Zt(a.nodes()[0].contentDocument.body):Zt("body"),F=s==="sandbox"?a.nodes()[0].contentDocument:document,S=F.getElementById(e);dt=S.parentElement.offsetWidth,dt===void 0&&(dt=1200),i.useWidth!==void 0&&(dt=i.useWidth);const w=r.db.getTasks(),P=w.filter(x=>!x.vert);let _=[];for(const x of P)_.push(x.type);_=L(_);const Y={};let X=2*i.topPadding;if(r.db.getDisplayMode()==="compact"||i.displayMode==="compact"){const x={};for(const M of P)x[M.section]===void 0?x[M.section]=[M]:x[M.section].push(M);let C=0;for(const M of Object.keys(x)){const D=Ws(x[M],C)+1;C+=D,X+=D*(i.barHeight+i.barGap),Y[M]=D}}else{X+=P.length*(i.barHeight+i.barGap);for(const x of _)Y[x]=P.filter(C=>C.type===x).length}S.setAttribute("viewBox","0 0 "+dt+" "+X);const B=y.select(`[id="${e}"]`),v=Li().domain([rr(w,function(x){return x.startTime}),nr(w,function(x){return x.endTime})]).rangeRound([0,dt-i.leftPadding-i.rightPadding]);function U(x,C){const M=x.startTime,D=C.startTime;let c=0;return M>D?c=1:Ml.vert===$.vert?0:l.vert?1:-1);const m=x.filter(l=>!l.vert),o=[...new Set(m.map(l=>l.order))].map(l=>m.find($=>$.order===l));B.append("g").selectAll("rect").data(o).enter().append("rect").attr("x",0).attr("y",function(l,$){return $=l.order,$*C+M-2}).attr("width",function(){return b-i.rightPadding/2}).attr("height",C).attr("class",function(l){for(const[$,O]of _.entries())if(l.type===O)return"section section"+$%i.numberSectionStyles;return"section section0"}).enter();const W=B.append("g").selectAll("rect").data(x).enter(),u=r.db.getLinks();if(W.append("rect").attr("id",function(l){return e+"-"+l.id}).attr("rx",3).attr("ry",3).attr("x",function(l){return l.milestone?v(l.startTime)+D+.5*(v(l.endTime)-v(l.startTime))-.5*c:v(l.startTime)+D}).attr("y",function(l,$){return $=l.order,l.vert?i.gridLineStartPadding:$*C+M}).attr("width",function(l){return l.milestone?c:l.vert?.08*c:v(l.renderEndTime||l.endTime)-v(l.startTime)}).attr("height",function(l){return l.vert?m.length*(i.barHeight+i.barGap)+i.barHeight*2:c}).attr("transform-origin",function(l,$){return $=l.order,(v(l.startTime)+D+.5*(v(l.endTime)-v(l.startTime))).toString()+"px "+($*C+M+.5*c).toString()+"px"}).attr("class",function(l){const $="task";let O="";l.classes.length>0&&(O=l.classes.join(" "));let j=0;for(const[J,h]of _.entries())l.type===h&&(j=J%i.numberSectionStyles);let H="";return l.active?l.crit?H+=" activeCrit":H=" active":l.done?l.crit?H=" doneCrit":H=" done":l.crit&&(H+=" crit"),H.length===0&&(H=" task"),l.milestone&&(H=" milestone "+H),l.vert&&(H=" vert "+H),H+=j,H+=" "+O,$+H}),W.append("text").attr("id",function(l){return e+"-"+l.id+"-text"}).text(function(l){return l.task}).attr("font-size",i.fontSize).attr("x",function(l){let $=v(l.startTime),O=v(l.renderEndTime||l.endTime);if(l.milestone&&($+=.5*(v(l.endTime)-v(l.startTime))-.5*c,O=$+c),l.vert)return v(l.startTime)+D;const j=this.getBBox().width;return j>O-$?O+j+1.5*i.leftPadding>b?$+D-5:O+D+5:(O-$)/2+$+D}).attr("y",function(l,$){return l.vert?i.gridLineStartPadding+m.length*(i.barHeight+i.barGap)+60:($=l.order,$*C+i.barHeight/2+(i.fontSize/2-2)+M)}).attr("text-height",c).attr("class",function(l){const $=v(l.startTime);let O=v(l.endTime);l.milestone&&(O=$+c);const j=this.getBBox().width;let H="";l.classes.length>0&&(H=l.classes.join(" "));let J=0;for(const[N,V]of _.entries())l.type===V&&(J=N%i.numberSectionStyles);let h="";return l.active&&(l.crit?h="activeCritText"+J:h="activeText"+J),l.done?l.crit?h=h+" doneCritText"+J:h=h+" doneText"+J:l.crit&&(h=h+" critText"+J),l.milestone&&(h+=" milestoneText"),l.vert&&(h+=" vertText"),j>O-$?O+j+1.5*i.leftPadding>b?H+" taskTextOutsideLeft taskTextOutside"+J+" "+h:H+" taskTextOutsideRight taskTextOutside"+J+" "+h+" width-"+j:H+" taskText taskText"+J+" "+h+" width-"+j}),Yt().securityLevel==="sandbox"){let l;l=Zt("#i"+e);const $=l.nodes()[0].contentDocument;W.filter(function(O){return u.has(O.id)}).each(function(O){var j=$.querySelector("#"+CSS.escape(e+"-"+O.id)),H=$.querySelector("#"+CSS.escape(e+"-"+O.id+"-text"));const J=j.parentNode;var h=$.createElement("a");h.setAttribute("xlink:href",u.get(O.id)),h.setAttribute("target","_top"),J.appendChild(h),h.appendChild(j),h.appendChild(H)})}}d(E,"drawRects");function z(x,C,M,D,c,g,b,m){if(b.length===0&&m.length===0)return;let I,o;for(const{startTime:O,endTime:j}of g)(I===void 0||Oo)&&(o=j);if(!I||!o)return;if(it(o).diff(it(I),"year")>5){Tt.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}const W=r.db.getDateFormat(),u=[];let K=null,l=it(I);for(;l.valueOf()<=o;)r.db.isInvalidDate(l,W,b,m)?K?K.end=l:K={start:l,end:l}:K&&(u.push(K),K=null),l=l.add(1,"d");B.append("g").selectAll("rect").data(u).enter().append("rect").attr("id",O=>e+"-exclude-"+O.start.format("YYYY-MM-DD")).attr("x",O=>v(O.start.startOf("day"))+M).attr("y",i.gridLineStartPadding).attr("width",O=>v(O.end.endOf("day"))-v(O.start.startOf("day"))).attr("height",c-C-i.gridLineStartPadding).attr("transform-origin",function(O,j){return(v(O.start)+M+.5*(v(O.end)-v(O.start))).toString()+"px "+(j*x+.5*c).toString()+"px"}).attr("class","exclude-range")}d(z,"drawExcludeDays");function G(x,C,M,D){if(M<=0||x>C)return 1/0;const c=C-x,g=it.duration({[D??"day"]:M}).asMilliseconds();return g<=0?1/0:Math.ceil(c/g)}d(G,"getEstimatedTickCount");function T(x,C,M,D){const c=r.db.getDateFormat(),g=r.db.getAxisFormat();let b;g?b=g:c==="D"?b="%d":b=i.axisFormat??"%Y-%m-%d";let m=fr(v).tickSize(-D+C+i.gridLineStartPadding).tickFormat(ie(b));const o=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(r.db.getTickInterval()||i.tickInterval);if(o!==null){const W=parseInt(o[1],10);if(isNaN(W)||W<=0)Tt.warn(`Invalid tick interval value: "${o[1]}". Skipping custom tick interval.`);else{const u=o[2],K=r.db.getWeekday()||i.weekday,l=v.domain(),$=l[0],O=l[1],j=G($,O,W,u);if(j>Te)Tt.warn(`The tick interval "${W}${u}" would generate ${j} ticks, which exceeds the maximum allowed (${Te}). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(u){case"millisecond":m.ticks(Et.every(W));break;case"second":m.ticks(vt.every(W));break;case"minute":m.ticks(Nt.every(W));break;case"hour":m.ticks(Pt.every(W));break;case"day":m.ticks(xt.every(W));break;case"week":m.ticks(an[K].every(W));break;case"month":m.ticks(Rt.every(W));break}}}if(B.append("g").attr("class","grid").attr("transform","translate("+x+", "+(D-50)+")").call(m).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),r.db.topAxisEnabled()||i.topAxis){let W=lr(v).tickSize(-D+C+i.gridLineStartPadding).tickFormat(ie(b));if(o!==null){const u=parseInt(o[1],10);if(isNaN(u)||u<=0)Tt.warn(`Invalid tick interval value: "${o[1]}". Skipping custom tick interval.`);else{const K=o[2],l=r.db.getWeekday()||i.weekday,$=v.domain(),O=$[0],j=$[1];if(G(O,j,u,K)<=Te)switch(K){case"millisecond":W.ticks(Et.every(u));break;case"second":W.ticks(vt.every(u));break;case"minute":W.ticks(Nt.every(u));break;case"hour":W.ticks(Pt.every(u));break;case"day":W.ticks(xt.every(u));break;case"week":W.ticks(an[l].every(u));break;case"month":W.ticks(Rt.every(u));break}}}B.append("g").attr("class","grid").attr("transform","translate("+x+", "+C+")").call(W).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}d(T,"makeGrid");function k(x,C){let M=0;const D=Object.keys(Y).map(c=>[c,Y[c]]);B.append("g").selectAll("text").data(D).enter().append(function(c){const g=c[0].split(Zn.lineBreakRegex),b=-(g.length-1)/2,m=F.createElementNS("http://www.w3.org/2000/svg","text");m.setAttribute("dy",b+"em");for(const[I,o]of g.entries()){const W=F.createElementNS("http://www.w3.org/2000/svg","tspan");W.setAttribute("alignment-baseline","central"),W.setAttribute("x","10"),I>0&&W.setAttribute("dy","1em"),W.textContent=o,m.appendChild(W)}return m}).attr("x",10).attr("y",function(c,g){if(g>0)for(let b=0;b` - .mermaid-main-font { - font-family: ${t.fontFamily}; - } - - .exclude-range { - fill: ${t.excludeBkgColor}; - } - - .section { - stroke: none; - opacity: 0.2; - } - - .section0 { - fill: ${t.sectionBkgColor}; - } - - .section2 { - fill: ${t.sectionBkgColor2}; - } - - .section1, - .section3 { - fill: ${t.altSectionBkgColor}; - opacity: 0.2; - } - - .sectionTitle0 { - fill: ${t.titleColor}; - } - - .sectionTitle1 { - fill: ${t.titleColor}; - } - - .sectionTitle2 { - fill: ${t.titleColor}; - } - - .sectionTitle3 { - fill: ${t.titleColor}; - } - - .sectionTitle { - text-anchor: start; - font-family: ${t.fontFamily}; - } - - - /* Grid and axis */ - - .grid .tick { - stroke: ${t.gridColor}; - opacity: 0.8; - shape-rendering: crispEdges; - } - - .grid .tick text { - font-family: ${t.fontFamily}; - fill: ${t.textColor}; - } - - .grid path { - stroke-width: 0; - } - - - /* Today line */ - - .today { - fill: none; - stroke: ${t.todayLineColor}; - stroke-width: 2px; - } - - - /* Task styling */ - - /* Default task */ - - .task { - stroke-width: 2; - } - - .taskText { - text-anchor: middle; - font-family: ${t.fontFamily}; - } - - .taskTextOutsideRight { - fill: ${t.taskTextDarkColor}; - text-anchor: start; - font-family: ${t.fontFamily}; - } - - .taskTextOutsideLeft { - fill: ${t.taskTextDarkColor}; - text-anchor: end; - } - - - /* Special case clickable */ - - .task.clickable { - cursor: pointer; - } - - .taskText.clickable { - cursor: pointer; - fill: ${t.taskTextClickableColor} !important; - font-weight: bold; - } - - .taskTextOutsideLeft.clickable { - cursor: pointer; - fill: ${t.taskTextClickableColor} !important; - font-weight: bold; - } - - .taskTextOutsideRight.clickable { - cursor: pointer; - fill: ${t.taskTextClickableColor} !important; - font-weight: bold; - } - - - /* Specific task settings for the sections*/ - - .taskText0, - .taskText1, - .taskText2, - .taskText3 { - fill: ${t.taskTextColor}; - } - - .task0, - .task1, - .task2, - .task3 { - fill: ${t.taskBkgColor}; - stroke: ${t.taskBorderColor}; - } - - .taskTextOutside0, - .taskTextOutside2 - { - fill: ${t.taskTextOutsideColor}; - } - - .taskTextOutside1, - .taskTextOutside3 { - fill: ${t.taskTextOutsideColor}; - } - - - /* Active task */ - - .active0, - .active1, - .active2, - .active3 { - fill: ${t.activeTaskBkgColor}; - stroke: ${t.activeTaskBorderColor}; - } - - .activeText0, - .activeText1, - .activeText2, - .activeText3 { - fill: ${t.taskTextDarkColor} !important; - } - - - /* Completed task */ - - .done0, - .done1, - .done2, - .done3 { - stroke: ${t.doneTaskBorderColor}; - fill: ${t.doneTaskBkgColor}; - stroke-width: 2; - } - - .doneText0, - .doneText1, - .doneText2, - .doneText3 { - fill: ${t.taskTextDarkColor} !important; - } - - /* Done task text displayed outside the bar sits against the diagram background, - not against the done-task bar, so it must use the outside/contrast color. */ - .doneText0.taskTextOutsideLeft, - .doneText0.taskTextOutsideRight, - .doneText1.taskTextOutsideLeft, - .doneText1.taskTextOutsideRight, - .doneText2.taskTextOutsideLeft, - .doneText2.taskTextOutsideRight, - .doneText3.taskTextOutsideLeft, - .doneText3.taskTextOutsideRight { - fill: ${t.taskTextOutsideColor} !important; - } - - - /* Tasks on the critical line */ - - .crit0, - .crit1, - .crit2, - .crit3 { - stroke: ${t.critBorderColor}; - fill: ${t.critBkgColor}; - stroke-width: 2; - } - - .activeCrit0, - .activeCrit1, - .activeCrit2, - .activeCrit3 { - stroke: ${t.critBorderColor}; - fill: ${t.activeTaskBkgColor}; - stroke-width: 2; - } - - .doneCrit0, - .doneCrit1, - .doneCrit2, - .doneCrit3 { - stroke: ${t.critBorderColor}; - fill: ${t.doneTaskBkgColor}; - stroke-width: 2; - cursor: pointer; - shape-rendering: crispEdges; - } - - .milestone { - transform: rotate(45deg) scale(0.8,0.8); - } - - .milestoneText { - font-style: italic; - } - .doneCritText0, - .doneCritText1, - .doneCritText2, - .doneCritText3 { - fill: ${t.taskTextDarkColor} !important; - } - - /* Done-crit task text outside the bar — same reasoning as doneText above. */ - .doneCritText0.taskTextOutsideLeft, - .doneCritText0.taskTextOutsideRight, - .doneCritText1.taskTextOutsideLeft, - .doneCritText1.taskTextOutsideRight, - .doneCritText2.taskTextOutsideLeft, - .doneCritText2.taskTextOutsideRight, - .doneCritText3.taskTextOutsideLeft, - .doneCritText3.taskTextOutsideRight { - fill: ${t.taskTextOutsideColor} !important; - } - - .vert { - stroke: ${t.vertLineColor}; - } - - .vertText { - font-size: 15px; - text-anchor: middle; - fill: ${t.vertLineColor} !important; - } - - .activeCritText0, - .activeCritText1, - .activeCritText2, - .activeCritText3 { - fill: ${t.taskTextDarkColor} !important; - } - - .titleText { - text-anchor: middle; - font-size: 18px; - fill: ${t.titleColor||t.textColor}; - font-family: ${t.fontFamily}; - } -`,"getStyles"),Ns=Hs,Zs={parser:Qi,db:Ls,renderer:Os,styles:Ns};export{Zs as diagram}; diff --git a/apps/kimi-code/dist-web/assets/gitGraphDiagram-IHSO6WYX-D3uFEC45.js b/apps/kimi-code/dist-web/assets/gitGraphDiagram-IHSO6WYX-D3uFEC45.js new file mode 100644 index 0000000000..f779a1ed36 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/gitGraphDiagram-IHSO6WYX-D3uFEC45.js @@ -0,0 +1,106 @@ +import{I as le}from"./chunk-2Q5K7J3B-Bj3vlj3y.js";import{p as he}from"./chunk-JWPE2WC7-CFaSk12U.js";import{p as $e,o as fe,s as ge,g as ue,a as ye,b as xe,_ as h,z as J,l as w,d as me,c as W,y as pe,A as be,q as we,k as B,B as ke,D as ve,E as Ce}from"./mermaid.core-AN7v7N47.js";import{p as Ee}from"./cynefin-VYW2F7L2-Bp-nxK3W.js";import"./index-Dnz6Zudc.js";var m={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},Be=ve.gitGraph,S=h(()=>ke({...Be,...J().gitGraph}),"getConfig"),d=new le(()=>{const e=S(),r=e.mainBranchName,t=e.mainBranchOrder;return{mainBranchName:r,commits:new Map,head:null,branchConfig:new Map([[r,{name:r,order:t}]]),branches:new Map([[r,null]]),currBranch:r,direction:"LR",seq:0,options:{}}});function Y(){return Ce({length:7})}h(Y,"getID");function te(e,r){const t=Object.create(null);return e.reduce((s,o)=>{const i=r(o);return t[i]||(t[i]=!0,s.push(o)),s},[])}h(te,"uniqBy");var Te=h(function(e){d.records.direction=e},"setDirection"),Le=h(function(e){w.debug("options str",e),e=e?.trim(),e=e||"{}";try{d.records.options=JSON.parse(e)}catch(r){w.error("error while parsing gitGraph options",r.message)}},"setOptions"),Me=h(function(){return d.records.options},"getOptions"),Re=h(function(e){let r=e.msg,t=e.id;const s=e.type;let o=e.tags;w.info("commit",r,t,s,o),w.debug("Entering commit:",r,t,s,o);const i=S();t=B.sanitizeText(t,i),r=B.sanitizeText(r,i),o=o?.map(a=>B.sanitizeText(a,i));const n={id:t||d.records.seq+"-"+Y(),message:r,seq:d.records.seq++,type:s??m.NORMAL,tags:o??[],parents:d.records.head==null?[]:[d.records.head.id],branch:d.records.currBranch};d.records.head=n,w.info("main branch",i.mainBranchName),d.records.commits.has(n.id)&&w.warn(`Commit ID ${n.id} already exists`),d.records.commits.set(n.id,n),d.records.branches.set(d.records.currBranch,n.id),w.debug("in pushCommit "+n.id)},"commit"),Ie=h(function(e){let r=e.name;const t=e.order;if(r=B.sanitizeText(r,S()),d.records.branches.has(r))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${r}")`);d.records.branches.set(r,d.records.head!=null?d.records.head.id:null),d.records.branchConfig.set(r,{name:r,order:t}),ae(r),w.debug("in createBranch")},"branch"),Oe=h(e=>{let r=e.branch,t=e.id;const s=e.type,o=e.tags,i=S();r=B.sanitizeText(r,i),t&&(t=B.sanitizeText(t,i));const n=d.records.branches.get(d.records.currBranch),a=d.records.branches.get(r),l=n?d.records.commits.get(n):void 0,f=a?d.records.commits.get(a):void 0;if(l&&f&&l.branch===r)throw new Error(`Cannot merge branch '${r}' into itself.`);if(d.records.currBranch===r){const c=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["branch abc"]},c}if(l===void 0||!l){const c=new Error(`Incorrect usage of "merge". Current branch (${d.records.currBranch})has no commits`);throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["commit"]},c}if(!d.records.branches.has(r)){const c=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") does not exist");throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:[`branch ${r}`]},c}if(f===void 0||!f){const c=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") has no commits");throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:['"commit"']},c}if(l===f){const c=new Error('Incorrect usage of "merge". Both branches have same head');throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["branch abc"]},c}if(t&&d.records.commits.has(t)){const c=new Error('Incorrect usage of "merge". Commit with id:'+t+" already exists, use different custom id");throw c.hash={text:`merge ${r} ${t} ${s} ${o?.join(" ")}`,token:`merge ${r} ${t} ${s} ${o?.join(" ")}`,expected:[`merge ${r} ${t}_UNIQUE ${s} ${o?.join(" ")}`]},c}const g=a||"",$={id:t||`${d.records.seq}-${Y()}`,message:`merged branch ${r} into ${d.records.currBranch}`,seq:d.records.seq++,parents:d.records.head==null?[]:[d.records.head.id,g],branch:d.records.currBranch,type:m.MERGE,customType:s,customId:!!t,tags:o??[]};d.records.head=$,d.records.commits.set($.id,$),d.records.branches.set(d.records.currBranch,$.id),w.debug(d.records.branches),w.debug("in mergeBranch")},"merge"),_e=h(function(e){let r=e.id,t=e.targetId,s=e.tags,o=e.parent;w.debug("Entering cherryPick:",r,t,s);const i=S();if(r=B.sanitizeText(r,i),t=B.sanitizeText(t,i),s=s?.map(l=>B.sanitizeText(l,i)),o=B.sanitizeText(o,i),!r||!d.records.commits.has(r)){const l=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw l.hash={text:`cherryPick ${r} ${t}`,token:`cherryPick ${r} ${t}`,expected:["cherry-pick abc"]},l}const n=d.records.commits.get(r);if(n===void 0||!n)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(o&&!(Array.isArray(n.parents)&&n.parents.includes(o)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");const a=n.branch;if(n.type===m.MERGE&&!o)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!t||!d.records.commits.has(t)){if(a===d.records.currBranch){const $=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw $.hash={text:`cherryPick ${r} ${t}`,token:`cherryPick ${r} ${t}`,expected:["cherry-pick abc"]},$}const l=d.records.branches.get(d.records.currBranch);if(l===void 0||!l){const $=new Error(`Incorrect usage of "cherry-pick". Current branch (${d.records.currBranch})has no commits`);throw $.hash={text:`cherryPick ${r} ${t}`,token:`cherryPick ${r} ${t}`,expected:["cherry-pick abc"]},$}const f=d.records.commits.get(l);if(f===void 0||!f){const $=new Error(`Incorrect usage of "cherry-pick". Current branch (${d.records.currBranch})has no commits`);throw $.hash={text:`cherryPick ${r} ${t}`,token:`cherryPick ${r} ${t}`,expected:["cherry-pick abc"]},$}const g={id:d.records.seq+"-"+Y(),message:`cherry-picked ${n?.message} into ${d.records.currBranch}`,seq:d.records.seq++,parents:d.records.head==null?[]:[d.records.head.id,n.id],branch:d.records.currBranch,type:m.CHERRY_PICK,tags:s?s.filter(Boolean):[`cherry-pick:${n.id}${n.type===m.MERGE?`|parent:${o}`:""}`]};d.records.head=g,d.records.commits.set(g.id,g),d.records.branches.set(d.records.currBranch,g.id),w.debug(d.records.branches),w.debug("in cherryPick")}},"cherryPick"),ae=h(function(e){if(e=B.sanitizeText(e,S()),d.records.branches.has(e)){d.records.currBranch=e;const r=d.records.branches.get(d.records.currBranch);r===void 0||!r?d.records.head=null:d.records.head=d.records.commits.get(r)??null}else{const r=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${e}")`);throw r.hash={text:`checkout ${e}`,token:`checkout ${e}`,expected:[`branch ${e}`]},r}},"checkout");function V(e,r,t){const s=e.indexOf(r);s===-1?e.push(t):e.splice(s,1,t)}h(V,"upsert");function Q(e){const r=e.reduce((o,i)=>o.seq>i.seq?o:i,e[0]);let t="";e.forEach(function(o){o===r?t+=" *":t+=" |"});const s=[t,r.id,r.seq];for(const o in d.records.branches)d.records.branches.get(o)===r.id&&s.push(o);if(w.debug(s.join(" ")),r.parents&&r.parents.length==2&&r.parents[0]&&r.parents[1]){const o=d.records.commits.get(r.parents[0]);V(e,r,o),r.parents[1]&&e.push(d.records.commits.get(r.parents[1]))}else{if(r.parents.length==0)return;if(r.parents[0]){const o=d.records.commits.get(r.parents[0]);V(e,r,o)}}e=te(e,o=>o.id),Q(e)}h(Q,"prettyPrintCommitHistory");var Ge=h(function(){w.debug(d.records.commits);const e=ne()[0];Q([e])},"prettyPrint"),He=h(function(){d.reset(),we()},"clear"),Se=h(function(){return[...d.records.branchConfig.values()].map((r,t)=>r.order!==null&&r.order!==void 0?r:{...r,order:parseFloat(`0.${t}`)}).sort((r,t)=>(r.order??0)-(t.order??0)).map(({name:r})=>({name:r}))},"getBranchesAsObjArray"),Ae=h(function(){return d.records.branches},"getBranches"),De=h(function(){return d.records.commits},"getCommits"),ne=h(function(){const e=[...d.records.commits.values()];return e.forEach(function(r){w.debug(r.id)}),e.sort((r,t)=>r.seq-t.seq),e},"getCommitsArray"),qe=h(function(){return d.records.currBranch},"getCurrentBranch"),Pe=h(function(){return d.records.direction},"getDirection"),We=h(function(){return d.records.head},"getHead"),se={commitType:m,getConfig:S,setDirection:Te,setOptions:Le,getOptions:Me,commit:Re,branch:Ie,merge:Oe,cherryPick:_e,checkout:ae,prettyPrint:Ge,clear:He,getBranchesAsObjArray:Se,getBranches:Ae,getCommits:De,getCommitsArray:ne,getCurrentBranch:qe,getDirection:Pe,getHead:We,setAccTitle:xe,getAccTitle:ye,getAccDescription:ue,setAccDescription:ge,setDiagramTitle:fe,getDiagramTitle:$e},Ne=h((e,r)=>{he(e,r),e.dir&&r.setDirection(e.dir);for(const t of e.statements)Fe(t,r)},"populate"),Fe=h((e,r)=>{const s={Commit:h(o=>r.commit(ze(o)),"Commit"),Branch:h(o=>r.branch(Ye(o)),"Branch"),Merge:h(o=>r.merge(je(o)),"Merge"),Checkout:h(o=>r.checkout(Ue(o)),"Checkout"),CherryPicking:h(o=>r.cherryPick(Ke(o)),"CherryPicking")}[e.$type];s?s(e):w.error(`Unknown statement type: ${e.$type}`)},"parseStatement"),ze=h(e=>({id:e.id,msg:e.message??"",type:e.type!==void 0?m[e.type]:m.NORMAL,tags:e.tags??void 0}),"parseCommit"),Ye=h(e=>({name:e.name,order:e.order??0}),"parseBranch"),je=h(e=>({branch:e.branch,id:e.id??"",type:e.type!==void 0?m[e.type]:void 0,tags:e.tags??void 0}),"parseMerge"),Ue=h(e=>e.branch,"parseCheckout"),Ke=h(e=>({id:e.id,targetId:"",tags:e.tags?.length===0?void 0:e.tags,parent:e.parent}),"parseCherryPicking"),Ve={parse:h(async e=>{const r=await Ee("gitGraph",e);w.debug(r),Ne(r,se)},"parse")},O=10,_=40,L=4,R=2,G=8,j=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),X=12,Z=new Set(["redux-color","redux-dark-color"]),Xe=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),H=h((e,r,t=!1)=>t&&e>0?(e-1)%(r-1)+1:e%r,"calcColorIndex"),C=new Map,E=new Map,F=30,q=new Map,z=[],I=0,y="LR",Je=h(()=>{C.clear(),E.clear(),q.clear(),I=0,z=[],y="LR"},"clear"),oe=h(e=>{const r=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof e=="string"?e.split(/\\n|\n|/gi):e).forEach(s=>{const o=document.createElementNS("http://www.w3.org/2000/svg","tspan");o.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),o.setAttribute("dy","1em"),o.setAttribute("x","0"),o.setAttribute("class","row"),o.textContent=s.trim(),r.appendChild(o)}),r},"drawText"),ce=h(e=>{let r,t,s;return y==="BT"?(t=h((o,i)=>o<=i,"comparisonFunc"),s=1/0):(t=h((o,i)=>o>=i,"comparisonFunc"),s=0),e.forEach(o=>{const i=y==="TB"||y=="BT"?E.get(o)?.y:E.get(o)?.x;i!==void 0&&t(i,s)&&(r=o,s=i)}),r},"findClosestParent"),Qe=h(e=>{let r="",t=1/0;return e.forEach(s=>{const o=E.get(s).y;o<=t&&(r=s,t=o)}),r||void 0},"findClosestParentBT"),Ze=h((e,r,t)=>{let s=t,o=t;const i=[];e.forEach(n=>{const a=r.get(n);if(!a)throw new Error(`Commit not found for key ${n}`);a.parents.length?(s=rr(a),o=Math.max(s,o)):i.push(a),tr(a,s)}),s=o,i.forEach(n=>{ar(n,s,t)}),e.forEach(n=>{const a=r.get(n);if(a?.parents.length){const l=Qe(a.parents);s=E.get(l).y-_,s<=o&&(o=s);const f=C.get(a.branch).pos,g=s-O;E.set(a.id,{x:f,y:g})}})},"setParallelBTPos"),er=h(e=>{const r=ce(e.parents.filter(s=>s!==null));if(!r)throw new Error(`Closest parent not found for commit ${e.id}`);const t=E.get(r)?.y;if(t===void 0)throw new Error(`Closest parent position not found for commit ${e.id}`);return t},"findClosestParentPos"),rr=h(e=>er(e)+_,"calculateCommitPosition"),tr=h((e,r)=>{const t=C.get(e.branch);if(!t)throw new Error(`Branch not found for commit ${e.id}`);const s=t.pos,o=r+O;return E.set(e.id,{x:s,y:o}),{x:s,y:o}},"setCommitPosition"),ar=h((e,r,t)=>{const s=C.get(e.branch);if(!s)throw new Error(`Branch not found for commit ${e.id}`);const o=r+t,i=s.pos;E.set(e.id,{x:i,y:o})},"setRootPosition"),nr=h((e,r,t,s,o,i)=>{const{theme:n}=W(),a=j.has(n??""),l=Z.has(n??""),f=Xe.has(n??"");if(i===m.HIGHLIGHT)e.append("rect").attr("x",t.x-10+(a?3:0)).attr("y",t.y-10+(a?3:0)).attr("width",a?14:20).attr("height",a?14:20).attr("class",`commit ${r.id} commit-highlight${H(o,G,l)} ${s}-outer`),e.append("rect").attr("x",t.x-6+(a?2:0)).attr("y",t.y-6+(a?2:0)).attr("width",a?8:12).attr("height",a?8:12).attr("class",`commit ${r.id} commit${H(o,G,l)} ${s}-inner`);else if(i===m.CHERRY_PICK)e.append("circle").attr("cx",t.x).attr("cy",t.y).attr("r",a?7:10).attr("class",`commit ${r.id} ${s}`),e.append("circle").attr("cx",t.x-3).attr("cy",t.y+2).attr("r",a?2.5:2.75).attr("fill",f?"#000000":"#fff").attr("class",`commit ${r.id} ${s}`),e.append("circle").attr("cx",t.x+3).attr("cy",t.y+2).attr("r",a?2.5:2.75).attr("fill",f?"#000000":"#fff").attr("class",`commit ${r.id} ${s}`),e.append("line").attr("x1",t.x+3).attr("y1",t.y+1).attr("x2",t.x).attr("y2",t.y-5).attr("stroke",f?"#000000":"#fff").attr("class",`commit ${r.id} ${s}`),e.append("line").attr("x1",t.x-3).attr("y1",t.y+1).attr("x2",t.x).attr("y2",t.y-5).attr("stroke",f?"#000000":"#fff").attr("class",`commit ${r.id} ${s}`);else{const g=e.append("circle");if(g.attr("cx",t.x),g.attr("cy",t.y),g.attr("r",a?7:10),g.attr("class",`commit ${r.id} commit${H(o,G,l)}`),i===m.MERGE){const $=e.append("circle");$.attr("cx",t.x),$.attr("cy",t.y),$.attr("r",a?5:6),$.attr("class",`commit ${s} ${r.id} commit${H(o,G,l)}`)}if(i===m.REVERSE){const $=e.append("path"),c=a?4:5;$.attr("d",`M ${t.x-c},${t.y-c}L${t.x+c},${t.y+c}M${t.x-c},${t.y+c}L${t.x+c},${t.y-c}`).attr("class",`commit ${s} ${r.id} commit${H(o,G,l)}`)}}},"drawCommitBullet"),sr=h((e,r,t,s,o)=>{if(r.type!==m.CHERRY_PICK&&(r.customId&&r.type===m.MERGE||r.type!==m.MERGE)&&o.showCommitLabel){const i=e.append("g"),n=i.insert("rect").attr("class","commit-label-bkg"),a=i.append("text").attr("x",s).attr("y",t.y+25).attr("class","commit-label").text(r.id),l=a.node()?.getBBox();if(l&&(n.attr("x",t.posWithOffset-l.width/2-R).attr("y",t.y+13.5).attr("width",l.width+2*R).attr("height",l.height+2*R),y==="TB"||y==="BT"?(n.attr("x",t.x-(l.width+4*L+5)).attr("y",t.y-12),a.attr("x",t.x-(l.width+4*L)).attr("y",t.y+l.height-12)):a.attr("x",t.posWithOffset-l.width/2),o.rotateCommitLabel))if(y==="TB"||y==="BT")a.attr("transform","rotate(-45, "+t.x+", "+t.y+")"),n.attr("transform","rotate(-45, "+t.x+", "+t.y+")");else{const f=-7.5-(l.width+10)/25*9.5,g=10+l.width/25*8.5;i.attr("transform","translate("+f+", "+g+") rotate(-45, "+s+", "+t.y+")")}}},"drawCommitLabel"),or=h((e,r,t,s)=>{if(r.tags.length>0){let o=0,i=0,n=0;const a=[];for(const l of r.tags.reverse()){const f=e.insert("polygon"),g=e.append("circle"),$=e.append("text").attr("y",t.y-16-o).attr("class","tag-label").text(l),c=$.node()?.getBBox();if(!c)throw new Error("Tag bbox not found");i=Math.max(i,c.width),n=Math.max(n,c.height),$.attr("x",t.posWithOffset-c.width/2),a.push({tag:$,hole:g,rect:f,yOffset:o}),o+=20}for(const{tag:l,hole:f,rect:g,yOffset:$}of a){const c=n/2,x=t.y-19.2-$;if(g.attr("class","tag-label-bkg").attr("points",` + ${s-i/2-L/2},${x+R} + ${s-i/2-L/2},${x-R} + ${t.posWithOffset-i/2-L},${x-c-R} + ${t.posWithOffset+i/2+L},${x-c-R} + ${t.posWithOffset+i/2+L},${x+c+R} + ${t.posWithOffset-i/2-L},${x+c+R}`),f.attr("cy",x).attr("cx",s-i/2+L/2).attr("r",1.5).attr("class","tag-hole"),y==="TB"||y==="BT"){const u=s+$;g.attr("class","tag-label-bkg").attr("points",` + ${t.x},${u+2} + ${t.x},${u-2} + ${t.x+O},${u-c-2} + ${t.x+O+i+4},${u-c-2} + ${t.x+O+i+4},${u+c+2} + ${t.x+O},${u+c+2}`).attr("transform","translate(12,12) rotate(45, "+t.x+","+s+")"),f.attr("cx",t.x+L/2).attr("cy",u).attr("transform","translate(12,12) rotate(45, "+t.x+","+s+")"),l.attr("x",t.x+5).attr("y",u+3).attr("transform","translate(14,14) rotate(45, "+t.x+","+s+")")}}}},"drawCommitTags"),cr=h(e=>{switch(e.customType??e.type){case m.NORMAL:return"commit-normal";case m.REVERSE:return"commit-reverse";case m.HIGHLIGHT:return"commit-highlight";case m.MERGE:return"commit-merge";case m.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),ir=h((e,r,t,s)=>{const o={x:0,y:0};if(e.parents.length>0){const i=ce(e.parents);if(i){const n=s.get(i)??o;return r==="TB"?n.y+_:r==="BT"?(s.get(e.id)??o).y-_:n.x+_}}else return r==="TB"?F:r==="BT"?(s.get(e.id)??o).y-_:0;return 0},"calculatePosition"),dr=h((e,r,t)=>{const s=y==="BT"&&t?r:r+O,o=C.get(e.branch)?.pos,i=y==="TB"||y==="BT"?C.get(e.branch)?.pos:s;if(i===void 0||o===void 0)throw new Error(`Position were undefined for commit ${e.id}`);const n=j.has(W().theme??""),a=y==="TB"||y==="BT"?s:o+(n?X/2+1:-2);return{x:i,y:a,posWithOffset:s}},"getCommitPosition"),re=h((e,r,t,s)=>{const o=e.append("g").attr("class","commit-bullets"),i=e.append("g").attr("class","commit-labels");let n=y==="TB"||y==="BT"?F:0;const a=[...r.keys()],l=s.parallelCommits??!1,f=h(($,c)=>{const x=r.get($)?.seq,u=r.get(c)?.seq;return x!==void 0&&u!==void 0?x-u:0},"sortKeys");let g=a.sort(f);y==="BT"&&(l&&Ze(g,r,n),g=g.reverse()),g.forEach($=>{const c=r.get($);if(!c)throw new Error(`Commit not found for key ${$}`);l&&(n=ir(c,y,n,E));const x=dr(c,n,l);if(t){const u=cr(c),p=c.customType??c.type,b=C.get(c.branch)?.index??0;nr(o,c,x,u,b,p),sr(i,c,x,n,s),or(i,c,x,n)}y==="TB"||y==="BT"?E.set(c.id,{x:x.x,y:x.posWithOffset}):E.set(c.id,{x:x.posWithOffset,y:x.y}),n=y==="BT"&&l?n+_:n+_+O,n>I&&(I=n)})},"drawCommits"),lr=h((e,r,t,s,o)=>{const n=(y==="TB"||y==="BT"?t.xf.branch===n,"isOnBranchToGetCurve"),l=h(f=>f.seq>e.seq&&f.seql(f)&&a(f))},"shouldRerouteArrow"),P=h((e,r,t=0)=>{const s=e+Math.abs(e-r)/2;if(t>5)return s;if(z.every(n=>Math.abs(n-s)>=10))return z.push(s),s;const i=Math.abs(e-r);return P(e,r-i/5,t+1)},"findLane"),hr=h((e,r,t,s)=>{const{theme:o}=W(),i=Z.has(o??""),n=E.get(r.id),a=E.get(t.id);if(n===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${r.id} and ${t.id}`);const l=lr(r,t,n,a,s);let f="",g="",$=0,c=0,x=C.get(t.branch)?.index;t.type===m.MERGE&&r.id!==t.parents[0]&&(x=C.get(r.branch)?.index);let u;if(l){f="A 10 10, 0, 0, 0,",g="A 10 10, 0, 0, 1,",$=10,c=10;const p=n.ya.x&&(f="A 20 20, 0, 0, 0,",g="A 20 20, 0, 0, 1,",$=20,c=20,t.type===m.MERGE&&r.id!==t.parents[0]?u=`M ${n.x} ${n.y} L ${n.x} ${a.y-$} ${g} ${n.x-c} ${a.y} L ${a.x} ${a.y}`:u=`M ${n.x} ${n.y} L ${a.x+$} ${n.y} ${f} ${a.x} ${n.y+c} L ${a.x} ${a.y}`),n.x===a.x&&(u=`M ${n.x} ${n.y} L ${a.x} ${a.y}`)):y==="BT"?(n.xa.x&&(f="A 20 20, 0, 0, 0,",g="A 20 20, 0, 0, 1,",$=20,c=20,t.type===m.MERGE&&r.id!==t.parents[0]?u=`M ${n.x} ${n.y} L ${n.x} ${a.y+$} ${f} ${n.x-c} ${a.y} L ${a.x} ${a.y}`:u=`M ${n.x} ${n.y} L ${a.x+$} ${n.y} ${g} ${a.x} ${n.y-c} L ${a.x} ${a.y}`),n.x===a.x&&(u=`M ${n.x} ${n.y} L ${a.x} ${a.y}`)):(n.ya.y&&(t.type===m.MERGE&&r.id!==t.parents[0]?u=`M ${n.x} ${n.y} L ${a.x-$} ${n.y} ${f} ${a.x} ${n.y-c} L ${a.x} ${a.y}`:u=`M ${n.x} ${n.y} L ${n.x} ${a.y+$} ${g} ${n.x+c} ${a.y} L ${a.x} ${a.y}`),n.y===a.y&&(u=`M ${n.x} ${n.y} L ${a.x} ${a.y}`));if(u===void 0)throw new Error("Line definition not found");e.append("path").attr("d",u).attr("class","arrow arrow"+H(x,G,i))},"drawArrow"),$r=h((e,r)=>{const t=e.append("g").attr("class","commit-arrows");[...r.keys()].forEach(s=>{const o=r.get(s);o.parents&&o.parents.length>0&&o.parents.forEach(i=>{hr(t,r.get(i),o,r)})})},"drawArrows"),fr=h((e,r,t,s)=>{const{look:o,theme:i,themeVariables:n}=W(),{dropShadow:a,THEME_COLOR_LIMIT:l}=n,f=j.has(i??""),g=Z.has(i??""),$=e.append("g");r.forEach((c,x)=>{const u=H(x,f?l:G,g),p=C.get(c.name)?.pos;if(p===void 0)throw new Error(`Position not found for branch ${c.name}`);const b=y==="TB"||y==="BT"?p:f?p+X/2+1:p-2,k=$.append("line");k.attr("x1",0),k.attr("y1",b),k.attr("x2",I),k.attr("y2",b),k.attr("class","branch branch"+u),y==="TB"?(k.attr("y1",F),k.attr("x1",p),k.attr("y2",I),k.attr("x2",p)):y==="BT"&&(k.attr("y1",I),k.attr("x1",p),k.attr("y2",F),k.attr("x2",p)),z.push(b);const U=c.name,D=oe(U),T=$.insert("rect"),M=$.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+u);M.node().appendChild(D);const v=D.getBBox(),ee=f?0:4,N=f?16:0,A=f?X:0;o==="neo"&&T.attr("data-look","neo"),T.attr("class","branchLabelBkg label"+u).attr("style",o==="neo"?`filter:${f?`url(#${s}-drop-shadow)`:a}`:"").attr("rx",ee).attr("ry",ee).attr("x",-v.width-4-(t.rotateCommitLabel===!0?30:0)).attr("y",-v.height/2+10).attr("width",v.width+18+N).attr("height",v.height+4+A),M.attr("transform","translate("+(-v.width-14-(t.rotateCommitLabel===!0?30:0)+N/2)+", "+(b-v.height/2-2)+")"),y==="TB"?(T.attr("x",p-v.width/2-10).attr("y",0),M.attr("transform","translate("+(p-v.width/2-5)+", 0)"),f&&(T.attr("transform",`translate(${-N/2-3}, ${-A-10})`),M.attr("transform","translate("+(p-v.width/2-5)+", "+(-A*2+7)+")"))):y==="BT"?(T.attr("x",p-v.width/2-10).attr("y",I),M.attr("transform","translate("+(p-v.width/2-5)+", "+I+")"),f&&(T.attr("transform",`translate(${-N/2-3}, ${A+10})`),M.attr("transform","translate("+(p-v.width/2-5)+", "+(I+A*2+4)+")"))):T.attr("transform","translate(-19, "+(b-12-A/2)+")")})},"drawBranches"),gr=h(function(e,r,t,s,o){return C.set(e,{pos:r,index:t}),r+=50+(o?40:0)+(y==="TB"||y==="BT"?s.width/2:0),r},"setBranchPosition"),ur=h(function(e,r,t,s){Je(),w.debug("in gitgraph renderer",e+` +`,"id:",r,t);const o=s.db;if(!o.getConfig){w.error("getConfig method is not available on db");return}const i=o.getConfig(),n=i.rotateCommitLabel??!1;q=o.getCommits();const a=o.getBranchesAsObjArray();y=o.getDirection();const l=me(`[id="${r}"]`),{look:f,theme:g,themeVariables:$}=W(),{useGradient:c,gradientStart:x,gradientStop:u,filterColor:p}=$;if(c){const k=l.append("defs").append("linearGradient").attr("id",r+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");k.append("stop").attr("offset","0%").attr("stop-color",x).attr("stop-opacity",1),k.append("stop").attr("offset","100%").attr("stop-color",u).attr("stop-opacity",1)}f==="neo"&&j.has(g??"")&&l.append("defs").append("filter").attr("id",r+"-drop-shadow").attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",p);let b=0;a.forEach((k,U)=>{const D=oe(k.name),T=l.append("g"),K=T.insert("g").attr("class","branchLabel"),M=K.insert("g").attr("class","label branch-label");M.node()?.appendChild(D);const v=D.getBBox();b=gr(k.name,b,U,v,n),M.remove(),K.remove(),T.remove()}),re(l,q,!1,i),i.showBranches&&fr(l,a,i,r),$r(l,q),re(l,q,!0,i),pe.insertTitle(l,"gitTitleText",i.titleTopMargin??0,o.getDiagramTitle()),be(void 0,l,i.diagramPadding,i.useMaxWidth)},"draw"),yr={draw:ur},ie=8,de=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),xr=new Set(["redux-color","redux-dark-color"]),mr=new Set(["neo","neo-dark"]),pr=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),br=new Set(["redux","redux-dark","redux-color","redux-dark-color","neo","neo-dark"]),wr=h(e=>{const{svgId:r}=e;let t="";if(e.useGradient&&r)for(let s=0;s{const r=J(),{theme:t,themeVariables:s}=r,{borderColorArray:o}=s,i=de.has(t);if(mr.has(t)){let n="";for(let a=0;a`${Array.from({length:e.THEME_COLOR_LIMIT},(r,t)=>t).map(r=>{const t=r%ie;return` + .branch-label${r} { fill: ${e["gitBranchLabel"+t]}; } + .commit${r} { stroke: ${e["git"+t]}; fill: ${e["git"+t]}; } + .commit-highlight${r} { stroke: ${e["gitInv"+t]}; fill: ${e["gitInv"+t]}; } + .label${r} { fill: ${e["git"+t]}; } + .arrow${r} { stroke: ${e["git"+t]}; } + `}).join(` +`)}`,"normalTheme"),Cr=h(e=>{const r=J(),{theme:t}=r,s=br.has(t);return` + .commit-id, + .commit-msg, + .branch-label { + fill: lightgrey; + color: lightgrey; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + + ${s?kr(e):vr(e)} + + .branch { + stroke-width: ${e.strokeWidth}; + stroke: ${e.commitLineColor??e.lineColor}; + stroke-dasharray: ${s?"4 2":"2"}; + } + .commit-label { font-size: ${e.commitLabelFontSize}; fill: ${s?e.nodeBorder:e.commitLabelColor}; ${s?`font-weight:${e.noteFontWeight};`:""}} + .commit-label-bkg { font-size: ${e.commitLabelFontSize}; fill: ${s?"transparent":e.commitLabelBackground}; opacity: ${s?"":.5}; } + .tag-label { font-size: ${e.tagLabelFontSize}; fill: ${e.tagLabelColor};} + .tag-label-bkg { fill: ${s?e.mainBkg:e.tagLabelBackground}; stroke: ${s?e.nodeBorder:e.tagLabelBorder}; ${s?`filter:${e.dropShadow}`:""} } + .tag-hole { fill: ${e.textColor}; } + + .commit-merge { + stroke: ${s?e.mainBkg:e.primaryColor}; + fill: ${s?e.mainBkg:e.primaryColor}; + } + .commit-reverse { + stroke: ${s?e.mainBkg:e.primaryColor}; + fill: ${s?e.mainBkg:e.primaryColor}; + stroke-width: ${s?e.strokeWidth:3}; + } + .commit-highlight-outer { + } + .commit-highlight-inner { + stroke: ${s?e.mainBkg:e.primaryColor}; + fill: ${s?e.mainBkg:e.primaryColor}; + } + + .arrow { + /* Intentional: neo themes keep the bold 8px arrow (like classic themes); only redux-geometry themes use the thinner options.strokeWidth. */ + stroke-width: ${de.has(t)?e.strokeWidth:8}; + stroke-linecap: round; + fill: none + } + .gitTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; + } +`},"getStyles"),Er=Cr,Ir={parser:Ve,db:se,renderer:yr,styles:Er};export{Ir as diagram}; diff --git a/apps/kimi-code/dist-web/assets/gitGraphDiagram-IHSO6WYX-EGCxWX3f.js b/apps/kimi-code/dist-web/assets/gitGraphDiagram-IHSO6WYX-EGCxWX3f.js deleted file mode 100644 index 5466e5e2dc..0000000000 --- a/apps/kimi-code/dist-web/assets/gitGraphDiagram-IHSO6WYX-EGCxWX3f.js +++ /dev/null @@ -1,106 +0,0 @@ -import{I as le}from"./chunk-2Q5K7J3B-BBRTtiB5.js";import{p as he}from"./chunk-JWPE2WC7-0N6Q_J0q.js";import{o as $e,n as fe,s as ge,g as ue,a as ye,b as xe,_ as h,y as J,l as w,d as me,c as q,x as pe,z as be,p as we,k as B,A as ke,B as ve,C as Ce}from"./mermaid.core-Dxfcv_J5.js";import{p as Ee}from"./cynefin-VYW2F7L2-DQGCJnlE.js";import"./index-HU0LCM-X.js";import"./_commonjsHelpers-CqkleIqs.js";var m={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},Be=ve.gitGraph,S=h(()=>ke({...Be,...J().gitGraph}),"getConfig"),d=new le(()=>{const e=S(),r=e.mainBranchName,t=e.mainBranchOrder;return{mainBranchName:r,commits:new Map,head:null,branchConfig:new Map([[r,{name:r,order:t}]]),branches:new Map([[r,null]]),currBranch:r,direction:"LR",seq:0,options:{}}});function Y(){return Ce({length:7})}h(Y,"getID");function te(e,r){const t=Object.create(null);return e.reduce((s,o)=>{const i=r(o);return t[i]||(t[i]=!0,s.push(o)),s},[])}h(te,"uniqBy");var Te=h(function(e){d.records.direction=e},"setDirection"),Le=h(function(e){w.debug("options str",e),e=e?.trim(),e=e||"{}";try{d.records.options=JSON.parse(e)}catch(r){w.error("error while parsing gitGraph options",r.message)}},"setOptions"),Me=h(function(){return d.records.options},"getOptions"),Re=h(function(e){let r=e.msg,t=e.id;const s=e.type;let o=e.tags;w.info("commit",r,t,s,o),w.debug("Entering commit:",r,t,s,o);const i=S();t=B.sanitizeText(t,i),r=B.sanitizeText(r,i),o=o?.map(a=>B.sanitizeText(a,i));const n={id:t||d.records.seq+"-"+Y(),message:r,seq:d.records.seq++,type:s??m.NORMAL,tags:o??[],parents:d.records.head==null?[]:[d.records.head.id],branch:d.records.currBranch};d.records.head=n,w.info("main branch",i.mainBranchName),d.records.commits.has(n.id)&&w.warn(`Commit ID ${n.id} already exists`),d.records.commits.set(n.id,n),d.records.branches.set(d.records.currBranch,n.id),w.debug("in pushCommit "+n.id)},"commit"),Ie=h(function(e){let r=e.name;const t=e.order;if(r=B.sanitizeText(r,S()),d.records.branches.has(r))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${r}")`);d.records.branches.set(r,d.records.head!=null?d.records.head.id:null),d.records.branchConfig.set(r,{name:r,order:t}),ae(r),w.debug("in createBranch")},"branch"),Oe=h(e=>{let r=e.branch,t=e.id;const s=e.type,o=e.tags,i=S();r=B.sanitizeText(r,i),t&&(t=B.sanitizeText(t,i));const n=d.records.branches.get(d.records.currBranch),a=d.records.branches.get(r),l=n?d.records.commits.get(n):void 0,f=a?d.records.commits.get(a):void 0;if(l&&f&&l.branch===r)throw new Error(`Cannot merge branch '${r}' into itself.`);if(d.records.currBranch===r){const c=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["branch abc"]},c}if(l===void 0||!l){const c=new Error(`Incorrect usage of "merge". Current branch (${d.records.currBranch})has no commits`);throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["commit"]},c}if(!d.records.branches.has(r)){const c=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") does not exist");throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:[`branch ${r}`]},c}if(f===void 0||!f){const c=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") has no commits");throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:['"commit"']},c}if(l===f){const c=new Error('Incorrect usage of "merge". Both branches have same head');throw c.hash={text:`merge ${r}`,token:`merge ${r}`,expected:["branch abc"]},c}if(t&&d.records.commits.has(t)){const c=new Error('Incorrect usage of "merge". Commit with id:'+t+" already exists, use different custom id");throw c.hash={text:`merge ${r} ${t} ${s} ${o?.join(" ")}`,token:`merge ${r} ${t} ${s} ${o?.join(" ")}`,expected:[`merge ${r} ${t}_UNIQUE ${s} ${o?.join(" ")}`]},c}const g=a||"",$={id:t||`${d.records.seq}-${Y()}`,message:`merged branch ${r} into ${d.records.currBranch}`,seq:d.records.seq++,parents:d.records.head==null?[]:[d.records.head.id,g],branch:d.records.currBranch,type:m.MERGE,customType:s,customId:!!t,tags:o??[]};d.records.head=$,d.records.commits.set($.id,$),d.records.branches.set(d.records.currBranch,$.id),w.debug(d.records.branches),w.debug("in mergeBranch")},"merge"),_e=h(function(e){let r=e.id,t=e.targetId,s=e.tags,o=e.parent;w.debug("Entering cherryPick:",r,t,s);const i=S();if(r=B.sanitizeText(r,i),t=B.sanitizeText(t,i),s=s?.map(l=>B.sanitizeText(l,i)),o=B.sanitizeText(o,i),!r||!d.records.commits.has(r)){const l=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw l.hash={text:`cherryPick ${r} ${t}`,token:`cherryPick ${r} ${t}`,expected:["cherry-pick abc"]},l}const n=d.records.commits.get(r);if(n===void 0||!n)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(o&&!(Array.isArray(n.parents)&&n.parents.includes(o)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");const a=n.branch;if(n.type===m.MERGE&&!o)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!t||!d.records.commits.has(t)){if(a===d.records.currBranch){const $=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw $.hash={text:`cherryPick ${r} ${t}`,token:`cherryPick ${r} ${t}`,expected:["cherry-pick abc"]},$}const l=d.records.branches.get(d.records.currBranch);if(l===void 0||!l){const $=new Error(`Incorrect usage of "cherry-pick". Current branch (${d.records.currBranch})has no commits`);throw $.hash={text:`cherryPick ${r} ${t}`,token:`cherryPick ${r} ${t}`,expected:["cherry-pick abc"]},$}const f=d.records.commits.get(l);if(f===void 0||!f){const $=new Error(`Incorrect usage of "cherry-pick". Current branch (${d.records.currBranch})has no commits`);throw $.hash={text:`cherryPick ${r} ${t}`,token:`cherryPick ${r} ${t}`,expected:["cherry-pick abc"]},$}const g={id:d.records.seq+"-"+Y(),message:`cherry-picked ${n?.message} into ${d.records.currBranch}`,seq:d.records.seq++,parents:d.records.head==null?[]:[d.records.head.id,n.id],branch:d.records.currBranch,type:m.CHERRY_PICK,tags:s?s.filter(Boolean):[`cherry-pick:${n.id}${n.type===m.MERGE?`|parent:${o}`:""}`]};d.records.head=g,d.records.commits.set(g.id,g),d.records.branches.set(d.records.currBranch,g.id),w.debug(d.records.branches),w.debug("in cherryPick")}},"cherryPick"),ae=h(function(e){if(e=B.sanitizeText(e,S()),d.records.branches.has(e)){d.records.currBranch=e;const r=d.records.branches.get(d.records.currBranch);r===void 0||!r?d.records.head=null:d.records.head=d.records.commits.get(r)??null}else{const r=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${e}")`);throw r.hash={text:`checkout ${e}`,token:`checkout ${e}`,expected:[`branch ${e}`]},r}},"checkout");function V(e,r,t){const s=e.indexOf(r);s===-1?e.push(t):e.splice(s,1,t)}h(V,"upsert");function Q(e){const r=e.reduce((o,i)=>o.seq>i.seq?o:i,e[0]);let t="";e.forEach(function(o){o===r?t+=" *":t+=" |"});const s=[t,r.id,r.seq];for(const o in d.records.branches)d.records.branches.get(o)===r.id&&s.push(o);if(w.debug(s.join(" ")),r.parents&&r.parents.length==2&&r.parents[0]&&r.parents[1]){const o=d.records.commits.get(r.parents[0]);V(e,r,o),r.parents[1]&&e.push(d.records.commits.get(r.parents[1]))}else{if(r.parents.length==0)return;if(r.parents[0]){const o=d.records.commits.get(r.parents[0]);V(e,r,o)}}e=te(e,o=>o.id),Q(e)}h(Q,"prettyPrintCommitHistory");var Ge=h(function(){w.debug(d.records.commits);const e=ne()[0];Q([e])},"prettyPrint"),He=h(function(){d.reset(),we()},"clear"),Se=h(function(){return[...d.records.branchConfig.values()].map((r,t)=>r.order!==null&&r.order!==void 0?r:{...r,order:parseFloat(`0.${t}`)}).sort((r,t)=>(r.order??0)-(t.order??0)).map(({name:r})=>({name:r}))},"getBranchesAsObjArray"),Ae=h(function(){return d.records.branches},"getBranches"),De=h(function(){return d.records.commits},"getCommits"),ne=h(function(){const e=[...d.records.commits.values()];return e.forEach(function(r){w.debug(r.id)}),e.sort((r,t)=>r.seq-t.seq),e},"getCommitsArray"),Pe=h(function(){return d.records.currBranch},"getCurrentBranch"),We=h(function(){return d.records.direction},"getDirection"),qe=h(function(){return d.records.head},"getHead"),se={commitType:m,getConfig:S,setDirection:Te,setOptions:Le,getOptions:Me,commit:Re,branch:Ie,merge:Oe,cherryPick:_e,checkout:ae,prettyPrint:Ge,clear:He,getBranchesAsObjArray:Se,getBranches:Ae,getCommits:De,getCommitsArray:ne,getCurrentBranch:Pe,getDirection:We,getHead:qe,setAccTitle:xe,getAccTitle:ye,getAccDescription:ue,setAccDescription:ge,setDiagramTitle:fe,getDiagramTitle:$e},Ne=h((e,r)=>{he(e,r),e.dir&&r.setDirection(e.dir);for(const t of e.statements)Fe(t,r)},"populate"),Fe=h((e,r)=>{const s={Commit:h(o=>r.commit(ze(o)),"Commit"),Branch:h(o=>r.branch(Ye(o)),"Branch"),Merge:h(o=>r.merge(je(o)),"Merge"),Checkout:h(o=>r.checkout(Ue(o)),"Checkout"),CherryPicking:h(o=>r.cherryPick(Ke(o)),"CherryPicking")}[e.$type];s?s(e):w.error(`Unknown statement type: ${e.$type}`)},"parseStatement"),ze=h(e=>({id:e.id,msg:e.message??"",type:e.type!==void 0?m[e.type]:m.NORMAL,tags:e.tags??void 0}),"parseCommit"),Ye=h(e=>({name:e.name,order:e.order??0}),"parseBranch"),je=h(e=>({branch:e.branch,id:e.id??"",type:e.type!==void 0?m[e.type]:void 0,tags:e.tags??void 0}),"parseMerge"),Ue=h(e=>e.branch,"parseCheckout"),Ke=h(e=>({id:e.id,targetId:"",tags:e.tags?.length===0?void 0:e.tags,parent:e.parent}),"parseCherryPicking"),Ve={parse:h(async e=>{const r=await Ee("gitGraph",e);w.debug(r),Ne(r,se)},"parse")},O=10,_=40,L=4,R=2,G=8,j=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),X=12,Z=new Set(["redux-color","redux-dark-color"]),Xe=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),H=h((e,r,t=!1)=>t&&e>0?(e-1)%(r-1)+1:e%r,"calcColorIndex"),C=new Map,E=new Map,F=30,P=new Map,z=[],I=0,y="LR",Je=h(()=>{C.clear(),E.clear(),P.clear(),I=0,z=[],y="LR"},"clear"),oe=h(e=>{const r=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof e=="string"?e.split(/\\n|\n|/gi):e).forEach(s=>{const o=document.createElementNS("http://www.w3.org/2000/svg","tspan");o.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),o.setAttribute("dy","1em"),o.setAttribute("x","0"),o.setAttribute("class","row"),o.textContent=s.trim(),r.appendChild(o)}),r},"drawText"),ce=h(e=>{let r,t,s;return y==="BT"?(t=h((o,i)=>o<=i,"comparisonFunc"),s=1/0):(t=h((o,i)=>o>=i,"comparisonFunc"),s=0),e.forEach(o=>{const i=y==="TB"||y=="BT"?E.get(o)?.y:E.get(o)?.x;i!==void 0&&t(i,s)&&(r=o,s=i)}),r},"findClosestParent"),Qe=h(e=>{let r="",t=1/0;return e.forEach(s=>{const o=E.get(s).y;o<=t&&(r=s,t=o)}),r||void 0},"findClosestParentBT"),Ze=h((e,r,t)=>{let s=t,o=t;const i=[];e.forEach(n=>{const a=r.get(n);if(!a)throw new Error(`Commit not found for key ${n}`);a.parents.length?(s=rr(a),o=Math.max(s,o)):i.push(a),tr(a,s)}),s=o,i.forEach(n=>{ar(n,s,t)}),e.forEach(n=>{const a=r.get(n);if(a?.parents.length){const l=Qe(a.parents);s=E.get(l).y-_,s<=o&&(o=s);const f=C.get(a.branch).pos,g=s-O;E.set(a.id,{x:f,y:g})}})},"setParallelBTPos"),er=h(e=>{const r=ce(e.parents.filter(s=>s!==null));if(!r)throw new Error(`Closest parent not found for commit ${e.id}`);const t=E.get(r)?.y;if(t===void 0)throw new Error(`Closest parent position not found for commit ${e.id}`);return t},"findClosestParentPos"),rr=h(e=>er(e)+_,"calculateCommitPosition"),tr=h((e,r)=>{const t=C.get(e.branch);if(!t)throw new Error(`Branch not found for commit ${e.id}`);const s=t.pos,o=r+O;return E.set(e.id,{x:s,y:o}),{x:s,y:o}},"setCommitPosition"),ar=h((e,r,t)=>{const s=C.get(e.branch);if(!s)throw new Error(`Branch not found for commit ${e.id}`);const o=r+t,i=s.pos;E.set(e.id,{x:i,y:o})},"setRootPosition"),nr=h((e,r,t,s,o,i)=>{const{theme:n}=q(),a=j.has(n??""),l=Z.has(n??""),f=Xe.has(n??"");if(i===m.HIGHLIGHT)e.append("rect").attr("x",t.x-10+(a?3:0)).attr("y",t.y-10+(a?3:0)).attr("width",a?14:20).attr("height",a?14:20).attr("class",`commit ${r.id} commit-highlight${H(o,G,l)} ${s}-outer`),e.append("rect").attr("x",t.x-6+(a?2:0)).attr("y",t.y-6+(a?2:0)).attr("width",a?8:12).attr("height",a?8:12).attr("class",`commit ${r.id} commit${H(o,G,l)} ${s}-inner`);else if(i===m.CHERRY_PICK)e.append("circle").attr("cx",t.x).attr("cy",t.y).attr("r",a?7:10).attr("class",`commit ${r.id} ${s}`),e.append("circle").attr("cx",t.x-3).attr("cy",t.y+2).attr("r",a?2.5:2.75).attr("fill",f?"#000000":"#fff").attr("class",`commit ${r.id} ${s}`),e.append("circle").attr("cx",t.x+3).attr("cy",t.y+2).attr("r",a?2.5:2.75).attr("fill",f?"#000000":"#fff").attr("class",`commit ${r.id} ${s}`),e.append("line").attr("x1",t.x+3).attr("y1",t.y+1).attr("x2",t.x).attr("y2",t.y-5).attr("stroke",f?"#000000":"#fff").attr("class",`commit ${r.id} ${s}`),e.append("line").attr("x1",t.x-3).attr("y1",t.y+1).attr("x2",t.x).attr("y2",t.y-5).attr("stroke",f?"#000000":"#fff").attr("class",`commit ${r.id} ${s}`);else{const g=e.append("circle");if(g.attr("cx",t.x),g.attr("cy",t.y),g.attr("r",a?7:10),g.attr("class",`commit ${r.id} commit${H(o,G,l)}`),i===m.MERGE){const $=e.append("circle");$.attr("cx",t.x),$.attr("cy",t.y),$.attr("r",a?5:6),$.attr("class",`commit ${s} ${r.id} commit${H(o,G,l)}`)}if(i===m.REVERSE){const $=e.append("path"),c=a?4:5;$.attr("d",`M ${t.x-c},${t.y-c}L${t.x+c},${t.y+c}M${t.x-c},${t.y+c}L${t.x+c},${t.y-c}`).attr("class",`commit ${s} ${r.id} commit${H(o,G,l)}`)}}},"drawCommitBullet"),sr=h((e,r,t,s,o)=>{if(r.type!==m.CHERRY_PICK&&(r.customId&&r.type===m.MERGE||r.type!==m.MERGE)&&o.showCommitLabel){const i=e.append("g"),n=i.insert("rect").attr("class","commit-label-bkg"),a=i.append("text").attr("x",s).attr("y",t.y+25).attr("class","commit-label").text(r.id),l=a.node()?.getBBox();if(l&&(n.attr("x",t.posWithOffset-l.width/2-R).attr("y",t.y+13.5).attr("width",l.width+2*R).attr("height",l.height+2*R),y==="TB"||y==="BT"?(n.attr("x",t.x-(l.width+4*L+5)).attr("y",t.y-12),a.attr("x",t.x-(l.width+4*L)).attr("y",t.y+l.height-12)):a.attr("x",t.posWithOffset-l.width/2),o.rotateCommitLabel))if(y==="TB"||y==="BT")a.attr("transform","rotate(-45, "+t.x+", "+t.y+")"),n.attr("transform","rotate(-45, "+t.x+", "+t.y+")");else{const f=-7.5-(l.width+10)/25*9.5,g=10+l.width/25*8.5;i.attr("transform","translate("+f+", "+g+") rotate(-45, "+s+", "+t.y+")")}}},"drawCommitLabel"),or=h((e,r,t,s)=>{if(r.tags.length>0){let o=0,i=0,n=0;const a=[];for(const l of r.tags.reverse()){const f=e.insert("polygon"),g=e.append("circle"),$=e.append("text").attr("y",t.y-16-o).attr("class","tag-label").text(l),c=$.node()?.getBBox();if(!c)throw new Error("Tag bbox not found");i=Math.max(i,c.width),n=Math.max(n,c.height),$.attr("x",t.posWithOffset-c.width/2),a.push({tag:$,hole:g,rect:f,yOffset:o}),o+=20}for(const{tag:l,hole:f,rect:g,yOffset:$}of a){const c=n/2,x=t.y-19.2-$;if(g.attr("class","tag-label-bkg").attr("points",` - ${s-i/2-L/2},${x+R} - ${s-i/2-L/2},${x-R} - ${t.posWithOffset-i/2-L},${x-c-R} - ${t.posWithOffset+i/2+L},${x-c-R} - ${t.posWithOffset+i/2+L},${x+c+R} - ${t.posWithOffset-i/2-L},${x+c+R}`),f.attr("cy",x).attr("cx",s-i/2+L/2).attr("r",1.5).attr("class","tag-hole"),y==="TB"||y==="BT"){const u=s+$;g.attr("class","tag-label-bkg").attr("points",` - ${t.x},${u+2} - ${t.x},${u-2} - ${t.x+O},${u-c-2} - ${t.x+O+i+4},${u-c-2} - ${t.x+O+i+4},${u+c+2} - ${t.x+O},${u+c+2}`).attr("transform","translate(12,12) rotate(45, "+t.x+","+s+")"),f.attr("cx",t.x+L/2).attr("cy",u).attr("transform","translate(12,12) rotate(45, "+t.x+","+s+")"),l.attr("x",t.x+5).attr("y",u+3).attr("transform","translate(14,14) rotate(45, "+t.x+","+s+")")}}}},"drawCommitTags"),cr=h(e=>{switch(e.customType??e.type){case m.NORMAL:return"commit-normal";case m.REVERSE:return"commit-reverse";case m.HIGHLIGHT:return"commit-highlight";case m.MERGE:return"commit-merge";case m.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),ir=h((e,r,t,s)=>{const o={x:0,y:0};if(e.parents.length>0){const i=ce(e.parents);if(i){const n=s.get(i)??o;return r==="TB"?n.y+_:r==="BT"?(s.get(e.id)??o).y-_:n.x+_}}else return r==="TB"?F:r==="BT"?(s.get(e.id)??o).y-_:0;return 0},"calculatePosition"),dr=h((e,r,t)=>{const s=y==="BT"&&t?r:r+O,o=C.get(e.branch)?.pos,i=y==="TB"||y==="BT"?C.get(e.branch)?.pos:s;if(i===void 0||o===void 0)throw new Error(`Position were undefined for commit ${e.id}`);const n=j.has(q().theme??""),a=y==="TB"||y==="BT"?s:o+(n?X/2+1:-2);return{x:i,y:a,posWithOffset:s}},"getCommitPosition"),re=h((e,r,t,s)=>{const o=e.append("g").attr("class","commit-bullets"),i=e.append("g").attr("class","commit-labels");let n=y==="TB"||y==="BT"?F:0;const a=[...r.keys()],l=s.parallelCommits??!1,f=h(($,c)=>{const x=r.get($)?.seq,u=r.get(c)?.seq;return x!==void 0&&u!==void 0?x-u:0},"sortKeys");let g=a.sort(f);y==="BT"&&(l&&Ze(g,r,n),g=g.reverse()),g.forEach($=>{const c=r.get($);if(!c)throw new Error(`Commit not found for key ${$}`);l&&(n=ir(c,y,n,E));const x=dr(c,n,l);if(t){const u=cr(c),p=c.customType??c.type,b=C.get(c.branch)?.index??0;nr(o,c,x,u,b,p),sr(i,c,x,n,s),or(i,c,x,n)}y==="TB"||y==="BT"?E.set(c.id,{x:x.x,y:x.posWithOffset}):E.set(c.id,{x:x.posWithOffset,y:x.y}),n=y==="BT"&&l?n+_:n+_+O,n>I&&(I=n)})},"drawCommits"),lr=h((e,r,t,s,o)=>{const n=(y==="TB"||y==="BT"?t.xf.branch===n,"isOnBranchToGetCurve"),l=h(f=>f.seq>e.seq&&f.seql(f)&&a(f))},"shouldRerouteArrow"),W=h((e,r,t=0)=>{const s=e+Math.abs(e-r)/2;if(t>5)return s;if(z.every(n=>Math.abs(n-s)>=10))return z.push(s),s;const i=Math.abs(e-r);return W(e,r-i/5,t+1)},"findLane"),hr=h((e,r,t,s)=>{const{theme:o}=q(),i=Z.has(o??""),n=E.get(r.id),a=E.get(t.id);if(n===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${r.id} and ${t.id}`);const l=lr(r,t,n,a,s);let f="",g="",$=0,c=0,x=C.get(t.branch)?.index;t.type===m.MERGE&&r.id!==t.parents[0]&&(x=C.get(r.branch)?.index);let u;if(l){f="A 10 10, 0, 0, 0,",g="A 10 10, 0, 0, 1,",$=10,c=10;const p=n.ya.x&&(f="A 20 20, 0, 0, 0,",g="A 20 20, 0, 0, 1,",$=20,c=20,t.type===m.MERGE&&r.id!==t.parents[0]?u=`M ${n.x} ${n.y} L ${n.x} ${a.y-$} ${g} ${n.x-c} ${a.y} L ${a.x} ${a.y}`:u=`M ${n.x} ${n.y} L ${a.x+$} ${n.y} ${f} ${a.x} ${n.y+c} L ${a.x} ${a.y}`),n.x===a.x&&(u=`M ${n.x} ${n.y} L ${a.x} ${a.y}`)):y==="BT"?(n.xa.x&&(f="A 20 20, 0, 0, 0,",g="A 20 20, 0, 0, 1,",$=20,c=20,t.type===m.MERGE&&r.id!==t.parents[0]?u=`M ${n.x} ${n.y} L ${n.x} ${a.y+$} ${f} ${n.x-c} ${a.y} L ${a.x} ${a.y}`:u=`M ${n.x} ${n.y} L ${a.x+$} ${n.y} ${g} ${a.x} ${n.y-c} L ${a.x} ${a.y}`),n.x===a.x&&(u=`M ${n.x} ${n.y} L ${a.x} ${a.y}`)):(n.ya.y&&(t.type===m.MERGE&&r.id!==t.parents[0]?u=`M ${n.x} ${n.y} L ${a.x-$} ${n.y} ${f} ${a.x} ${n.y-c} L ${a.x} ${a.y}`:u=`M ${n.x} ${n.y} L ${n.x} ${a.y+$} ${g} ${n.x+c} ${a.y} L ${a.x} ${a.y}`),n.y===a.y&&(u=`M ${n.x} ${n.y} L ${a.x} ${a.y}`));if(u===void 0)throw new Error("Line definition not found");e.append("path").attr("d",u).attr("class","arrow arrow"+H(x,G,i))},"drawArrow"),$r=h((e,r)=>{const t=e.append("g").attr("class","commit-arrows");[...r.keys()].forEach(s=>{const o=r.get(s);o.parents&&o.parents.length>0&&o.parents.forEach(i=>{hr(t,r.get(i),o,r)})})},"drawArrows"),fr=h((e,r,t,s)=>{const{look:o,theme:i,themeVariables:n}=q(),{dropShadow:a,THEME_COLOR_LIMIT:l}=n,f=j.has(i??""),g=Z.has(i??""),$=e.append("g");r.forEach((c,x)=>{const u=H(x,f?l:G,g),p=C.get(c.name)?.pos;if(p===void 0)throw new Error(`Position not found for branch ${c.name}`);const b=y==="TB"||y==="BT"?p:f?p+X/2+1:p-2,k=$.append("line");k.attr("x1",0),k.attr("y1",b),k.attr("x2",I),k.attr("y2",b),k.attr("class","branch branch"+u),y==="TB"?(k.attr("y1",F),k.attr("x1",p),k.attr("y2",I),k.attr("x2",p)):y==="BT"&&(k.attr("y1",I),k.attr("x1",p),k.attr("y2",F),k.attr("x2",p)),z.push(b);const U=c.name,D=oe(U),T=$.insert("rect"),M=$.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+u);M.node().appendChild(D);const v=D.getBBox(),ee=f?0:4,N=f?16:0,A=f?X:0;o==="neo"&&T.attr("data-look","neo"),T.attr("class","branchLabelBkg label"+u).attr("style",o==="neo"?`filter:${f?`url(#${s}-drop-shadow)`:a}`:"").attr("rx",ee).attr("ry",ee).attr("x",-v.width-4-(t.rotateCommitLabel===!0?30:0)).attr("y",-v.height/2+10).attr("width",v.width+18+N).attr("height",v.height+4+A),M.attr("transform","translate("+(-v.width-14-(t.rotateCommitLabel===!0?30:0)+N/2)+", "+(b-v.height/2-2)+")"),y==="TB"?(T.attr("x",p-v.width/2-10).attr("y",0),M.attr("transform","translate("+(p-v.width/2-5)+", 0)"),f&&(T.attr("transform",`translate(${-N/2-3}, ${-A-10})`),M.attr("transform","translate("+(p-v.width/2-5)+", "+(-A*2+7)+")"))):y==="BT"?(T.attr("x",p-v.width/2-10).attr("y",I),M.attr("transform","translate("+(p-v.width/2-5)+", "+I+")"),f&&(T.attr("transform",`translate(${-N/2-3}, ${A+10})`),M.attr("transform","translate("+(p-v.width/2-5)+", "+(I+A*2+4)+")"))):T.attr("transform","translate(-19, "+(b-12-A/2)+")")})},"drawBranches"),gr=h(function(e,r,t,s,o){return C.set(e,{pos:r,index:t}),r+=50+(o?40:0)+(y==="TB"||y==="BT"?s.width/2:0),r},"setBranchPosition"),ur=h(function(e,r,t,s){Je(),w.debug("in gitgraph renderer",e+` -`,"id:",r,t);const o=s.db;if(!o.getConfig){w.error("getConfig method is not available on db");return}const i=o.getConfig(),n=i.rotateCommitLabel??!1;P=o.getCommits();const a=o.getBranchesAsObjArray();y=o.getDirection();const l=me(`[id="${r}"]`),{look:f,theme:g,themeVariables:$}=q(),{useGradient:c,gradientStart:x,gradientStop:u,filterColor:p}=$;if(c){const k=l.append("defs").append("linearGradient").attr("id",r+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");k.append("stop").attr("offset","0%").attr("stop-color",x).attr("stop-opacity",1),k.append("stop").attr("offset","100%").attr("stop-color",u).attr("stop-opacity",1)}f==="neo"&&j.has(g??"")&&l.append("defs").append("filter").attr("id",r+"-drop-shadow").attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",p);let b=0;a.forEach((k,U)=>{const D=oe(k.name),T=l.append("g"),K=T.insert("g").attr("class","branchLabel"),M=K.insert("g").attr("class","label branch-label");M.node()?.appendChild(D);const v=D.getBBox();b=gr(k.name,b,U,v,n),M.remove(),K.remove(),T.remove()}),re(l,P,!1,i),i.showBranches&&fr(l,a,i,r),$r(l,P),re(l,P,!0,i),pe.insertTitle(l,"gitTitleText",i.titleTopMargin??0,o.getDiagramTitle()),be(void 0,l,i.diagramPadding,i.useMaxWidth)},"draw"),yr={draw:ur},ie=8,de=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),xr=new Set(["redux-color","redux-dark-color"]),mr=new Set(["neo","neo-dark"]),pr=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),br=new Set(["redux","redux-dark","redux-color","redux-dark-color","neo","neo-dark"]),wr=h(e=>{const{svgId:r}=e;let t="";if(e.useGradient&&r)for(let s=0;s{const r=J(),{theme:t,themeVariables:s}=r,{borderColorArray:o}=s,i=de.has(t);if(mr.has(t)){let n="";for(let a=0;a`${Array.from({length:e.THEME_COLOR_LIMIT},(r,t)=>t).map(r=>{const t=r%ie;return` - .branch-label${r} { fill: ${e["gitBranchLabel"+t]}; } - .commit${r} { stroke: ${e["git"+t]}; fill: ${e["git"+t]}; } - .commit-highlight${r} { stroke: ${e["gitInv"+t]}; fill: ${e["gitInv"+t]}; } - .label${r} { fill: ${e["git"+t]}; } - .arrow${r} { stroke: ${e["git"+t]}; } - `}).join(` -`)}`,"normalTheme"),Cr=h(e=>{const r=J(),{theme:t}=r,s=br.has(t);return` - .commit-id, - .commit-msg, - .branch-label { - fill: lightgrey; - color: lightgrey; - font-family: 'trebuchet ms', verdana, arial, sans-serif; - font-family: var(--mermaid-font-family); - } - - ${s?kr(e):vr(e)} - - .branch { - stroke-width: ${e.strokeWidth}; - stroke: ${e.commitLineColor??e.lineColor}; - stroke-dasharray: ${s?"4 2":"2"}; - } - .commit-label { font-size: ${e.commitLabelFontSize}; fill: ${s?e.nodeBorder:e.commitLabelColor}; ${s?`font-weight:${e.noteFontWeight};`:""}} - .commit-label-bkg { font-size: ${e.commitLabelFontSize}; fill: ${s?"transparent":e.commitLabelBackground}; opacity: ${s?"":.5}; } - .tag-label { font-size: ${e.tagLabelFontSize}; fill: ${e.tagLabelColor};} - .tag-label-bkg { fill: ${s?e.mainBkg:e.tagLabelBackground}; stroke: ${s?e.nodeBorder:e.tagLabelBorder}; ${s?`filter:${e.dropShadow}`:""} } - .tag-hole { fill: ${e.textColor}; } - - .commit-merge { - stroke: ${s?e.mainBkg:e.primaryColor}; - fill: ${s?e.mainBkg:e.primaryColor}; - } - .commit-reverse { - stroke: ${s?e.mainBkg:e.primaryColor}; - fill: ${s?e.mainBkg:e.primaryColor}; - stroke-width: ${s?e.strokeWidth:3}; - } - .commit-highlight-outer { - } - .commit-highlight-inner { - stroke: ${s?e.mainBkg:e.primaryColor}; - fill: ${s?e.mainBkg:e.primaryColor}; - } - - .arrow { - /* Intentional: neo themes keep the bold 8px arrow (like classic themes); only redux-geometry themes use the thinner options.strokeWidth. */ - stroke-width: ${de.has(t)?e.strokeWidth:8}; - stroke-linecap: round; - fill: none - } - .gitTitleText { - text-anchor: middle; - font-size: 18px; - fill: ${e.textColor}; - } -`},"getStyles"),Er=Cr,Or={parser:Ve,db:se,renderer:yr,styles:Er};export{Or as diagram}; diff --git a/apps/kimi-code/dist-web/assets/index-BAuXCnoo.js b/apps/kimi-code/dist-web/assets/index-BAuXCnoo.js deleted file mode 100644 index b6453b0040..0000000000 --- a/apps/kimi-code/dist-web/assets/index-BAuXCnoo.js +++ /dev/null @@ -1,1428 +0,0 @@ -import{t as pe,b as Ln,n as Or,c as Nr,a as Fr,d as zr,s as Ur,g as Vr,e as Br}from"./index-CWYttcZZ.js";import{f as Ld}from"./index-CWYttcZZ.js";import{bR as k}from"./index-HU0LCM-X.js";const Ei="diffs-container",$r=(()=>{try{return!1}catch{return!1}})(),Wr=/(?=^From [a-f0-9]+ .+$)/m,Ti=/(?=^diff --git)/gm,Ul=/(?=^---\s+\S)/gm,Vl=/(?=^@@ )/gm,Gr=/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@(?: (.*))?/m,jr=/(?<=\n)/,qr=/^(---|\+\+\+)\s+([^\t\r\n]+)/,Kr=/^(---|\+\+\+)\s+[ab]\/([^\t\r\n]+)/,Yr=/^diff --git (?:"a\/(.+?)"|a\/(.+?)) (?:"b\/(.+?)"|b\/(.+?))$/,Xr=/^index ([0-9a-f]+)\.\.([0-9a-f]+)(?: (\d+))?$/i,Bl=/^<{7,}(?:\s.*)?$/,$l=/^\|{7,}(?:\s.*)?$/,Wl=/^={7,}$/,Gl=/^>{7,}(?:\s.*)?$/,on="header-prefix",sn="header-metadata",an="header-custom",_={dark:"pierre-dark",light:"pierre-light"},Ii="data-theme-css",Ri="data-unsafe-css",Qr="data-core-css",Jr="data-diffs-scrollbar-measure",Ai="--diffs-scrollbar-gutter-measured",jl=1,Zr=1e5,ln={hunkLineCount:50,lineHeight:20,diffHeaderHeight:44,spacing:8},_e={...ln,hunkLineCount:1},eo={paddingTop:8,paddingBottom:8,gap:8},to={omega:.015,positionEpsilon:.5,velocityEpsilon:.05},no=Object.freeze({fromStart:0,fromEnd:0}),Ae={startingLine:0,totalLines:1/0,bufferBefore:0,bufferAfter:0},Hi={startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:0},Ie=new Set;let Re=null;function Y(e){Ie.add(e),Re??=requestAnimationFrame(Mi)}function io(e){Ie.delete(e),Ie.size===0&&Re!=null&&(cancelAnimationFrame(Re),Re=null)}function Mi(e){const t=new Set(Ie);Ie.clear();for(const n of t)try{n(e)}catch(i){console.error(i)}Ie.size>0?Re=requestAnimationFrame(Mi):Re=null}function He(e,t,n){if(e===t||e==null||t==null)return e===t;const i=new Set(n),r=Object.keys(e),o=new Set(Object.keys(t));for(const s of r)if(o.delete(s),!i.has(s)&&(!(s in t)||e[s]!==t[s]))return!1;for(const s of Array.from(o))if(!i.has(s))return!1;return!0}function De(e,t){return e==null||t==null||typeof e=="string"||typeof t=="string"?e===t:e.dark===t.dark&&e.light===t.light}function dn(e,t){const n=e?.theme??_,i=t?.theme??_,r=kn(e),o=kn(t);return De(n,i)&&He(e,t,["theme","parseDiffOptions"])&&He(r,o)}function kn(e){if(e!=null&&"parseDiffOptions"in e)return e.parseDiffOptions}function Wt(e,t){return e?.start===t?.start&&e?.end===t?.end&&e?.side===t?.side&&e?.endSide===t?.endSide}function Gt({scrollTop:e,scrollHeight:t,height:n,fitPerfectly:i=!1,fitPerfectlyOverscroll:r=0,overscrollSize:o}){const s=n+o*2,l=i?n+r*2:s;if(t=Math.max(t,l),s>=t||i){const h=Math.max(e-r,0),c=Math.min(e+l,t);return{top:h,bottom:Math.max(c,h)}}let a=e+n/2-s/2,d=a+s;return a<0&&(a=0),d>t&&(d=t),a=Math.floor(Math.max(a,0)),{top:a,bottom:Math.ceil(Math.max(Math.min(d,t),a))}}function ro(){return typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches}function W(e){return{type:"text",value:e}}function A({tagName:e,children:t=[],properties:n={}}){return{type:"element",tagName:e,properties:n,children:t}}function pt({name:e,width:t=16,height:n=16,properties:i}){return A({tagName:"svg",properties:{width:t,height:n,viewBox:"0 0 16 16",...i},children:[A({tagName:"use",properties:{href:`#${e.replace(/^#/,"")}`}})]})}function oo(e){let t=e.children[0];for(;t!=null;){if(t.type==="element"&&t.tagName==="code")return t;"children"in t?t=t.children[0]:t=null}}function Ee(e){return A({tagName:"div",properties:{"data-gutter":""},children:e})}function Di(e,t,n,i={}){return A({tagName:"div",properties:{"data-line-type":e,"data-column-number":t,"data-line-index":n,...i},children:t!=null?[A({tagName:"span",properties:{"data-line-number-content":""},children:[W(`${t}`)]})]:void 0})}function j(e,t,n){return A({tagName:"div",properties:{"data-gutter-buffer":t,"data-buffer-size":n,"data-line-type":t==="annotation"?void 0:e,style:t==="annotation"?`grid-row: span ${n};`:`grid-row: span ${n};min-height:calc(${n} * 1lh);`}})}function so(){return A({tagName:"button",properties:{"data-utility-button":"",type:"button"},children:[pt({name:"diffs-icon-plus",properties:{"data-icon":""}})]})}function ao(e,t){return e.lineNumber===t.lineNumber&&e.side===t.side}var Pi=class{mode;options;hoveredLine;hoveredToken;pre;gutterUtilityLine;gutterUtilityContainer;gutterUtilityButton;gutterUtilitySlot;interactiveLinesAttr=!1;interactiveLineNumbersAttr=!1;hasPointerListeners=!1;hasDocumentPointerListeners=!1;selectedRange=null;proposedSelectedRange;renderedSelectionRange;selectionAnchor;queuedSelectionRender;pointerSession={mode:"idle"};constructor(e,t){this.mode=e,this.options=t}setOptions(e){this.options=e}cleanUp(){this.pre?.removeEventListener("click",this.handlePointerClick),this.pre?.removeEventListener("pointerdown",this.handlePointerDown),this.pre?.removeEventListener("pointermove",this.handlePointerMove),this.pre?.removeEventListener("pointerleave",this.handlePointerLeave),this.pre?.removeAttribute("data-interactive-lines"),this.pre?.removeAttribute("data-interactive-line-numbers"),this.pre=void 0,this.gutterUtilityContainer?.remove(),this.gutterUtilityLine=void 0,this.gutterUtilityContainer=void 0,this.gutterUtilityButton=void 0,this.gutterUtilitySlot=void 0,this.clearHoveredLine(),this.clearHoveredToken(),this.detachDocumentPointerListeners(),this.clearPointerSession(),this.queuedSelectionRender!=null&&(cancelAnimationFrame(this.queuedSelectionRender),this.queuedSelectionRender=void 0),this.interactiveLinesAttr=!1,this.interactiveLineNumbersAttr=!1,this.hasPointerListeners=!1}setup(e){this.setSelectionDirty();const{usesCustomGutterUtility:t=!1,enableGutterUtility:n=!1}=this.options;this.pre!==e&&(this.cleanUp(),this.pre=e),n?this.ensureGutterUtilityNode(t):this.gutterUtilityContainer!=null&&(this.gutterUtilityContainer.remove(),this.gutterUtilityLine=void 0,this.gutterUtilityContainer=void 0,this.gutterUtilityButton=void 0,this.gutterUtilitySlot=void 0,this.pointerSession.mode==="gutterSelecting"&&(this.clearPointerSession(),this.detachDocumentPointerListeners())),this.syncPointerListeners(e),this.updateInteractiveLineAttributes(),this.renderSelection(),this.placeUtility()}setSelectionDirty(){this.renderedSelectionRange=void 0}isSelectionDirty(){return this.renderedSelectionRange===null}setSelection(e,t){const n=!(e===this.selectedRange||Wt(e??void 0,this.selectedRange??void 0));!this.isSelectionDirty()&&!n||(this.proposedSelectedRange=void 0,this.selectedRange=e,this.renderSelection(),this.placeUtility(),n&&t?.notify!==!1&&this.notifySelectionCommitted())}getSelection(){return this.selectedRange}getHoveredLine=()=>{const e=this.gutterUtilityLine??this.hoveredLine;if(e!=null){if(this.mode==="diff"&&e.type==="diff-line")return{lineNumber:e.lineNumber,side:e.annotationSide};if(this.mode==="file"&&e.type==="line")return{lineNumber:e.lineNumber}}};handlePointerClick=e=>{const{onHunkExpand:t,onLineClick:n,onLineNumberClick:i,onTokenClick:r,onMergeConflictActionClick:o}=this.options;t==null&&n==null&&i==null&&o==null&&r==null||this.options.onGutterUtilityClick!=null&&et(e.composedPath())||(he(this.options.__debugPointerEvents,"click","FileDiff.DEBUG.handlePointerClick:",e),this.handlePointerEvent({eventType:"click",event:e}))};handlePointerMove=e=>{if(e.pointerType!=="mouse")return;const{lineHoverHighlight:t="disabled",onLineEnter:n,onLineLeave:i,onTokenEnter:r,onTokenLeave:o,enableGutterUtility:s=!1}=this.options;t==="disabled"&&!s&&n==null&&i==null&&r==null&&o==null||(he(this.options.__debugPointerEvents,"move","FileDiff.DEBUG.handlePointerMove:",e),this.handlePointerEvent({eventType:"move",event:e}))};handlePointerLeave=e=>{const{__debugPointerEvents:t}=this.options;if(he(t,"move","FileDiff.DEBUG.handlePointerLeave: no event"),this.hoveredLine==null&&this.hoveredToken==null){he(t,"move","FileDiff.DEBUG.handlePointerLeave: returned early, no hovered line or token");return}this.hoveredToken!=null&&(this.options.onTokenLeave?.(this.hoveredToken,e),this.clearHoveredToken()),this.hoveredLine!=null&&(this.options.onLineLeave?.({...this.hoveredLine,event:e}),this.clearHoveredLine()),this.placeUtility()};handlePointerEvent({eventType:e,event:t}){const{__debugPointerEvents:n}=this.options,i=t.composedPath();he(n,e,"FileDiff.DEBUG.handlePointerEvent:",{eventType:e,composedPath:i});const r=this.resolvePointerTarget(i);he(n,e,"FileDiff.DEBUG.handlePointerEvent: resolvePointerTarget result:",r);const{onLineClick:o,onLineNumberClick:s,onLineEnter:l,onLineLeave:a,onTokenClick:d,onTokenEnter:h,onTokenLeave:c,onHunkExpand:u,onMergeConflictActionClick:f}=this.options;switch(e){case"move":{const g=Tt(r)&&this.hoveredLine?.lineElement===r.lineElement;ut(r)&&this.hoveredToken?.tokenElement===r.tokenElement||(this.hoveredToken!=null&&(c?.(this.hoveredToken,t),this.clearHoveredToken()),ut(r)&&(this.setHoveredToken(this.toTokenEventBaseProps(r)),h?.(this.hoveredToken,t))),g||(this.hoveredLine!=null&&(a?.({...this.hoveredLine,event:t}),this.clearHoveredLine()),Tt(r)?(this.setHoveredLine(this.toEventBaseProps(r)),this.placeUtility(),l?.({...this.hoveredLine,event:t})):this.placeUtility());break}case"click":{if(r==null)break;if(co(r)&&f!=null){f(r);break}if(ho(r)&&u!=null){u(r.hunkIndex,r.all||t.shiftKey?"both":r.direction,r.all||t.shiftKey?Number.POSITIVE_INFINITY:void 0);break}if(!Tt(r))break;ut(r)&&d!=null&&d(this.toTokenEventBaseProps(r),t);const g=this.toEventBaseProps(r);s!=null&&r.numberColumn?s({...g,event:t}):o?.({...g,event:t});break}}}syncPointerListeners(e){const{__debugPointerEvents:t,lineHoverHighlight:n="disabled",onLineClick:i,onLineNumberClick:r,onLineEnter:o,onLineLeave:s,onTokenClick:l,onTokenEnter:a,onTokenLeave:d,onHunkExpand:h,onMergeConflictActionClick:c,enableGutterUtility:u=!1,enableLineSelection:f=!1,onGutterUtilityClick:g}=this.options,b=g!=null,y=n!=="disabled"||i!=null||r!=null||o!=null||s!=null||l!=null||a!=null||d!=null||h!=null||c!=null||u||f||b;y&&!this.hasPointerListeners?(e.addEventListener("click",this.handlePointerClick),e.addEventListener("pointerdown",this.handlePointerDown),e.addEventListener("pointermove",this.handlePointerMove),e.addEventListener("pointerleave",this.handlePointerLeave),this.hasPointerListeners=!0,he(t,"click","FileDiff.DEBUG.attachEventListeners: Attaching click events for:",(()=>{const C=[];return(t==="both"||t==="click")&&(i!=null&&C.push("onLineClick"),r!=null&&C.push("onLineNumberClick"),h!=null&&C.push("expandable hunk separators"),c!=null&&C.push("merge conflict actions")),C})()),he(t,"move","FileDiff.DEBUG.attachEventListeners: Attaching pointer move event"),he(t,"move","FileDiff.DEBUG.attachEventListeners: Attaching pointer leave event")):!y&&this.hasPointerListeners&&(e.removeEventListener("click",this.handlePointerClick),e.removeEventListener("pointerdown",this.handlePointerDown),e.removeEventListener("pointermove",this.handlePointerMove),e.removeEventListener("pointerleave",this.handlePointerLeave),this.hasPointerListeners=!1);const m=this.pointerSession.mode==="selecting"||this.pointerSession.mode==="pendingSingleLineUnselect",p=this.pointerSession.mode==="gutterSelecting";(!f&&m||!b&&p)&&(this.clearPointerSession(),this.detachDocumentPointerListeners(),this.selectionAnchor=void 0,this.clearPendingSingleLineState())}updateInteractiveLineAttributes(){if(this.pre==null)return;const{onLineClick:e,onLineNumberClick:t,enableLineSelection:n=!1}=this.options,i=e!=null,r=t!=null||n;i&&!this.interactiveLinesAttr?(this.pre.setAttribute("data-interactive-lines",""),this.interactiveLinesAttr=!0):!i&&this.interactiveLinesAttr&&(this.pre.removeAttribute("data-interactive-lines"),this.interactiveLinesAttr=!1),r&&!this.interactiveLineNumbersAttr?(this.pre.setAttribute("data-interactive-line-numbers",""),this.interactiveLineNumbersAttr=!0):!r&&this.interactiveLineNumbersAttr&&(this.pre.removeAttribute("data-interactive-line-numbers"),this.interactiveLineNumbersAttr=!1)}handlePointerDown=e=>{if(e.pointerType==="mouse"&&e.button!==0||this.pre==null||this.pointerSession.mode!=="idle")return;const t=e.composedPath();et(t)&&this.options.onGutterUtilityClick!=null?this.startGutterSelectionFromPointerDown(e):(e.pointerType!=="mouse"&&this.revealUtilityFromGutterPath(t),this.startLineSelectionFromPointerDown(e))};startLineSelectionFromPointerDown(e){const{enableLineSelection:t=!1}=this.options;if(!t)return;const n=this.resolveSelectionInfo(e,{source:"event-path",requireNumberColumn:!0});if(n==null)return;const{pre:i}=this;if(i==null)return;const{lineNumber:r,eventSide:o,lineIndex:s}=n;if(e.shiftKey&&this.selectedRange!=null){const l=this.getIndexesFromSelection(this.selectedRange,i.getAttribute("data-diff-type")==="split");if(l==null)return;const a=l.start<=l.end?s>=l.start:s<=l.end;this.selectionAnchor={lineNumber:a?this.selectedRange.start:this.selectedRange.end,side:a?this.selectedRange.side:this.selectedRange.endSide??this.selectedRange.side},this.updateSelection(r,o,!1),this.notifySelectionStart(this.getCurrentSelectionRange()),this.pointerSession={mode:"selecting",pointerId:e.pointerId},this.attachDocumentPointerListeners();return}if(this.selectedRange?.start===r&&this.selectedRange?.end===r){const l={lineNumber:r,side:o};this.selectionAnchor=l,this.pointerSession={mode:"pendingSingleLineUnselect",pointerId:e.pointerId,anchor:l,pending:l},this.attachDocumentPointerListeners();return}this.options.controlledSelection===!0?this.proposedSelectedRange=null:this.selectedRange=null,this.placeUtility(),this.selectionAnchor={lineNumber:r,side:o},this.updateSelection(r,o,!1),this.notifySelectionStart(this.getCurrentSelectionRange()),this.pointerSession={mode:"selecting",pointerId:e.pointerId},this.attachDocumentPointerListeners()}startGutterSelectionFromPointerDown(e){const{enableLineSelection:t=!1,onGutterUtilityClick:n}=this.options;if(n==null)return;const i=this.currentSelectionEnds(),r=i?.bottom??this.resolveSelectionPoint(e,{source:"event-path",excludeUtility:!1}),o=i?.top??r;r==null||o==null||(e.preventDefault(),e.stopPropagation(),this.pointerSession={mode:"gutterSelecting",pointerId:e.pointerId,anchor:o,current:r},t&&(this.selectionAnchor={lineNumber:o.lineNumber,side:o.side},this.updateSelection(r.lineNumber,r.side,!1),this.notifySelectionStart(this.getCurrentSelectionRange())),this.attachDocumentPointerListeners())}handleDocumentPointerMove=e=>{const{enableLineSelection:t=!1}=this.options;switch(this.pointerSession.mode){case"idle":return;case"gutterSelecting":{if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault();const n=this.resolveSelectionPoint(e,{source:"coordinates-first"});if(n==null)return;this.pointerSession.current=n,t===!0&&this.updateSelection(n.lineNumber,n.side);return}case"selecting":{if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault();const n=this.resolveSelectionInfo(e,{source:"coordinates-first",requireNumberColumn:!1});if(n==null||this.selectionAnchor==null)return;this.updateSelection(n.lineNumber,n.eventSide);return}case"pendingSingleLineUnselect":{if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault();const n=this.resolveSelectionInfo(e,{source:"coordinates-first",requireNumberColumn:!1});if(n==null||this.selectionAnchor==null)return;const i={lineNumber:n.lineNumber,side:n.eventSide};if(ao(this.pointerSession.pending,i))return;this.updateSelection(n.lineNumber,n.eventSide,!1),this.notifySelectionStart(this.getCurrentSelectionRange()),this.notifySelectionChangeDelta(),this.pointerSession={mode:"selecting",pointerId:e.pointerId};return}}};handleDocumentPointerUp=e=>{const{enableLineSelection:t=!1,onGutterUtilityClick:n}=this.options;switch(this.pointerSession.mode){case"idle":return;case"gutterSelecting":{if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault();const i=this.resolveSelectionPoint(e,{source:"coordinates-first"});i!=null&&(this.pointerSession.current=i,t&&this.updateSelection(i.lineNumber,i.side)),n?.(this.buildSelectedLineRange(this.pointerSession.anchor,this.pointerSession.current)),this.selectionAnchor=void 0,t&&(this.notifySelectionEnd(this.getCurrentSelectionRange()),this.notifySelectionCommitted(),this.clearProposedSelection()),this.clearPointerSession(),this.detachDocumentPointerListeners();return}case"pendingSingleLineUnselect":if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault(),this.updateSelection(null,void 0,!1),this.selectionAnchor=void 0,this.clearPendingSingleLineState(),this.detachDocumentPointerListeners(),this.notifySelectionEnd(this.getCurrentSelectionRange()),this.notifySelectionCommitted(),this.clearProposedSelection();return;case"selecting":if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault(),this.selectionAnchor=void 0,this.detachDocumentPointerListeners(),this.clearPointerSession(),this.notifySelectionEnd(this.getCurrentSelectionRange()),this.notifySelectionCommitted(),this.clearProposedSelection()}};handleDocumentPointerCancel=e=>{switch(this.pointerSession.mode){case"idle":return;case"gutterSelecting":case"selecting":case"pendingSingleLineUnselect":if("pointerId"in this.pointerSession&&e.pointerId!==this.pointerSession.pointerId)return;this.selectionAnchor=void 0,this.clearProposedSelection(),this.clearPendingSingleLineState(),this.clearPointerSession(),this.detachDocumentPointerListeners()}};clearHoveredLine(){this.hoveredLine!=null&&(this.hoveredLine.lineElement.removeAttribute("data-hovered"),this.hoveredLine.numberElement.removeAttribute("data-hovered"),this.hoveredLine=void 0)}setHoveredLine(e){const{lineHoverHighlight:t="disabled"}=this.options;this.hoveredLine!=null&&this.clearHoveredLine(),this.hoveredLine=e,t!=="disabled"&&((t==="both"||t==="line")&&this.hoveredLine.lineElement.setAttribute("data-hovered",""),(t==="both"||t==="number")&&this.hoveredLine.numberElement.setAttribute("data-hovered",""))}clearHoveredToken(){this.hoveredToken!=null&&(this.hoveredToken=void 0)}setHoveredToken(e){this.hoveredToken!=null&&this.clearHoveredToken(),this.hoveredToken=e}ensureGutterUtilityNode(e){if(this.gutterUtilityContainer==null&&(this.gutterUtilityContainer=document.createElement("div"),this.gutterUtilityContainer.setAttribute("data-gutter-utility-slot","")),e)this.gutterUtilityButton!=null&&(this.gutterUtilityButton.remove(),this.gutterUtilityButton=void 0),this.gutterUtilitySlot==null&&(this.gutterUtilitySlot=document.createElement("slot"),this.gutterUtilitySlot.name="gutter-utility-slot"),this.gutterUtilitySlot.parentNode!==this.gutterUtilityContainer&&this.gutterUtilityContainer.replaceChildren(this.gutterUtilitySlot);else{if(this.gutterUtilitySlot?.remove(),this.gutterUtilitySlot=void 0,this.gutterUtilityButton==null){const t=document.createElement("div");t.innerHTML=pe(so());const n=t.firstElementChild;if(!(n instanceof HTMLButtonElement))throw new Error("InteractionManager.ensureGutterUtilityNode: Node element should be a button");n.remove(),this.gutterUtilityButton=n}this.gutterUtilityButton.parentNode!==this.gutterUtilityContainer&&this.gutterUtilityContainer.replaceChildren(this.gutterUtilityButton)}}revealUtilityFromGutterPath(e){if(this.placeUtilityFromSelection())return;const t=this.resolvePointerTarget(e);Ve(t)&&t.numberColumn&&this.showUtilityOnLine(this.toEventBaseProps(t))}placeUtility(){if(!this.placeUtilityFromSelection()){if(this.hoveredLine!=null){this.showUtilityOnLine(this.hoveredLine);return}this.hideUtility()}}placeUtilityFromSelection(){const e=this.currentSelectionEnds();if(e==null)return!1;const t=this.targetForSelectionPoint(e.bottom);return t==null?this.hideUtility():this.showUtilityOnLine(this.toEventBaseProps(t)),!0}showUtilityOnLine(e){this.gutterUtilityContainer!=null&&(this.gutterUtilityLine=e,e.numberElement.appendChild(this.gutterUtilityContainer))}hideUtility(){this.gutterUtilityContainer?.remove(),this.gutterUtilityLine=void 0}currentSelectionEnds(){const e=this.getCurrentSelectionRange();return e==null?void 0:this.selectionEnds(e)}selectionEnds(e){const t={lineNumber:e.start,side:e.side},n={lineNumber:e.end,side:e.endSide??e.side},i=this.selectionPointRowIndex(t),r=this.selectionPointRowIndex(n);if(!(i==null||r==null))return i>r?{top:n,bottom:t}:{top:t,bottom:n}}selectionPointRowIndex(e){const t=this.getLineIndex(e.lineNumber,e.side);if(t!=null)return this.isSplitDiff()?t[1]:t[0]}targetForSelectionPoint(e){if(this.pre==null)return;const t=this.getLineIndex(e.lineNumber,e.side);if(t==null)return;const n=this.mode==="diff"?`${t[0]},${t[1]}`:`${t[0]}`,i=this.pre.querySelectorAll(`[data-column-number="${e.lineNumber}"][data-line-index="${n}"]`);for(const r of i){if(!(r instanceof HTMLElement))continue;const o=this.resolvePointerTarget(Ze(r));if(Ve(o)&&!(this.mode==="diff"&&e.side!=null&&o.side!==e.side))return o}}attachDocumentPointerListeners(){this.hasDocumentPointerListeners||(document.addEventListener("pointermove",this.handleDocumentPointerMove),document.addEventListener("pointerup",this.handleDocumentPointerUp),document.addEventListener("pointercancel",this.handleDocumentPointerCancel),this.hasDocumentPointerListeners=!0)}detachDocumentPointerListeners(){this.hasDocumentPointerListeners&&(document.removeEventListener("pointermove",this.handleDocumentPointerMove),document.removeEventListener("pointerup",this.handleDocumentPointerUp),document.removeEventListener("pointercancel",this.handleDocumentPointerCancel),this.hasDocumentPointerListeners=!1)}clearPointerSession(){this.pointerSession={mode:"idle"}}clearPendingSingleLineState(){this.pointerSession.mode==="pendingSingleLineUnselect"&&(this.pointerSession={mode:"idle"})}selectionInfoFromPath(e,t){const n=this.resolvePointerTarget(e);if(Ve(n)&&!(t&&!n.numberColumn)&&n.splitLineIndex!=null)return{lineIndex:n.splitLineIndex,lineNumber:n.lineNumber,eventSide:this.mode==="diff"?n.side:void 0}}resolveSelectionInfo(e,t){const n=this.resolveSelectionPath(e,t);return n!=null?this.selectionInfoFromPath(n,t.requireNumberColumn):void 0}selectionPointFromPath(e){const t=this.resolvePointerTarget(e);if(Ve(t))return{lineNumber:t.lineNumber,side:this.mode==="diff"?t.side:void 0}}resolveSelectionPoint(e,t){const n=this.resolveSelectionPath(e,t);return n!=null?this.selectionPointFromPath(n):void 0}resolveSelectionPath(e,t){const n=t.excludeUtility!==!1;switch(t.source){case"event-path":return this.pathFromEventPath(e.composedPath(),n);case"coordinates-first":{const i=this.pathFromCoordinates(e,n);return i!==void 0?i??void 0:this.pathFromEventPath(e.composedPath(),n)}}}pathFromCoordinates(e,t){const n=this.hitTest(e);if(n!==void 0)return n===null?null:this.pathFromElement(n,t)??null}pathFromEventPath(e,t){if(!(t&&et(e))){for(const n of e)if(n instanceof Element)return this.pathFromElement(n,t)}}pathFromElement(e,t){const n=Ze(e);if(t&&et(n))return;const i=fo(e);return i!=null?Ze(i):this.pathFromAnnotationSlot(e)}pathFromAnnotationSlot(e){const t=go(po(e));if(t==null)return;const n=this.targetForSelectionPoint(t);return n!=null?Ze(n.lineElement):void 0}hitTest(e){if(!Number.isFinite(e.clientX)||!Number.isFinite(e.clientY))return;const t=this.pre?.getRootNode(),n=En(t)?t:En(document)?document:void 0;if(n!=null)return n.elementFromPoint(e.clientX,e.clientY)}getLineIndex(e,t){const{getLineIndex:n}=this.options;return n!=null?n(e,t):[e-1,e-1]}getCurrentSelectionRange(){return this.proposedSelectedRange!==void 0?this.proposedSelectedRange:this.selectedRange}clearProposedSelection(){this.proposedSelectedRange=void 0}updateSelection(e,t,n=!0){const i=this.getCurrentSelectionRange();let r;if(e==null)r=null;else{const o=this.selectionAnchor?.side??t,s=this.selectionAnchor?.lineNumber??e;r=this.buildSelectionRange(s,e,o,t)}Wt(i??void 0,r??void 0)||(this.options.controlledSelection===!0?this.proposedSelectedRange=r:(this.selectedRange=r,this.queuedSelectionRender??=requestAnimationFrame(this.renderSelection)),this.placeUtility(),n&&this.notifySelectionChangeDelta())}getIndexesFromSelection(e,t){if(this.pre==null)return;const n=this.getLineIndex(e.start,e.side),i=this.getLineIndex(e.end,e.endSide??e.side);return n!=null&&i!=null?{start:t?n[1]:n[0],end:t?i[1]:i[0]}:void 0}renderSelection=()=>{if(this.queuedSelectionRender!=null&&(cancelAnimationFrame(this.queuedSelectionRender),this.queuedSelectionRender=void 0),this.pre==null||this.renderedSelectionRange===this.selectedRange)return;const e=this.pre.querySelectorAll("[data-selected-line]");for(const l of e)l.removeAttribute("data-selected-line");if(this.renderedSelectionRange=this.selectedRange,this.selectedRange==null)return;const{children:t}=this.pre;if(t.length===0)return;if(t.length>2)throw console.error(t),new Error("InteractionManager.renderSelection: Somehow there are more than 2 code elements...");const n=this.pre.getAttribute("data-diff-type")==="split",i=this.getIndexesFromSelection(this.selectedRange,n);if(i==null)throw console.error({rowRange:i,selectedRange:this.selectedRange}),new Error("InteractionManager.renderSelection: No valid rowRange");const r=i.start===i.end,o=Math.min(i.start,i.end),s=Math.max(i.start,i.end);for(const l of t){const[a,d]=l.children,h=d.children.length;if(h!==a.children.length)throw new Error("InteractionManager.renderSelection: gutter and content children dont match, something is wrong");for(let c=0;cs)break;if(g==null||gNumber.parseInt(i,10)).filter(i=>!Number.isNaN(i));if(t&&n.length===2)return n[1];if(!t)return n[0]}};function Ke({enableTokenInteractionsOnWhitespace:e,enableGutterUtility:t,lineHoverHighlight:n,onGutterUtilityClick:i,onLineClick:r,onLineEnter:o,onLineLeave:s,onLineNumberClick:l,onTokenClick:a,onTokenEnter:d,onTokenLeave:h,renderGutterUtility:c,__debugPointerEvents:u,enableLineSelection:f,controlledSelection:g,onLineSelected:b,onLineSelectionStart:y,onLineSelectionChange:m,onLineSelectionEnd:p},C,v,x){return{enableTokenInteractionsOnWhitespace:e,enableGutterUtility:lo({enableGutterUtility:t,renderGutterUtility:c,onGutterUtilityClick:i}),usesCustomGutterUtility:c!=null,lineHoverHighlight:n,onGutterUtilityClick:i,onHunkExpand:C,onMergeConflictActionClick:x,onLineClick:r,onLineEnter:o,onLineLeave:s,onLineNumberClick:l,onTokenClick:a,onTokenEnter:d,onTokenLeave:h,__debugPointerEvents:u,enableLineSelection:f,controlledSelection:g,onLineSelected:b,onLineSelectionStart:y,onLineSelectionChange:m,onLineSelectionEnd:p,getLineIndex:v}}function lo({enableGutterUtility:e,renderGutterUtility:t,onGutterUtilityClick:n}){if(n!=null&&t!=null)throw new Error("Cannot use both 'onGutterUtilityClick' and 'renderGutterUtility'. Use only one gutter utility API.");return e??!1}function Ve(e){return e!=null&&"kind"in e&&e.kind==="line"}function ut(e){return e!=null&&"kind"in e&&e.kind==="token"}function Tt(e){return Ve(e)||ut(e)}function ho(e){return"type"in e&&e.type==="line-info"}function co(e){return"kind"in e&&e.kind==="merge-conflict-action"}function uo(e){return e==="current"||e==="incoming"||e==="both"}function wn(e,t){const n=e?.querySelector(t);return n instanceof HTMLElement?n:void 0}function Ze(e){const t=[];let n=e;for(;n!=null;)t.push(n),n=n.parentNode;return t}function fo(e){const t=e.closest("[data-line], [data-column-number]");if(t instanceof HTMLElement)return t;const n=e.closest('[data-line-annotation], [data-gutter-buffer="annotation"]');if(!(n instanceof HTMLElement))return;const i=n.previousElementSibling;return i instanceof HTMLElement&&(i.hasAttribute("data-line")||i.hasAttribute("data-column-number"))?i:void 0}function po(e){const t=e.closest('[slot^="annotation-"]');if(t instanceof HTMLElement)return t.getAttribute("slot")??void 0;if(e instanceof HTMLElement){const n=e.getAttribute("name")??void 0;return n!=null&&n.startsWith("annotation-")?n:void 0}}function go(e){if(e==null)return;const t=/^annotation-(?:(additions|deletions)-)?(\d+)$/.exec(e);if(t==null)return;const n=Number.parseInt(t[2],10);if(!(!Number.isFinite(n)||n<=0))return{lineNumber:n,side:t[1]}}function En(e){return e!=null&&typeof e.elementFromPoint=="function"}function Tn(e,t){switch(e){case"change-deletion":return"deletions";case"change-addition":return"additions";default:return t.hasAttribute("data-deletions")?"deletions":"additions"}}function In(e){const t=e.getAttribute("data-line-type");if(t!=null)switch(t){case"change-deletion":case"change-addition":case"context":case"context-expanded":return t;default:return}}function et(e){for(const t of e)if(t instanceof HTMLElement&&(t.hasAttribute("data-utility-button")||t.hasAttribute("data-gutter-utility-slot")||t.getAttribute("slot")==="gutter-utility-slot"||t.getAttribute("name")==="gutter-utility-slot"))return!0;return!1}function he(e="none",t,...n){switch(e){case"none":return;case"both":break;case"click":if(t!=="click")return;break;case"move":if(t!=="move")return;break}console.log(...n)}var _i=class ue{static resizeObserver;static managersByElement=new Map;static getResizeObserver(){const t=ue.resizeObserver??new ResizeObserver(ue.handleSharedResizeEntries);return ue.resizeObserver=t,t}static handleSharedResizeEntries(t){const n=new Map;for(const i of t){const r=ue.managersByElement.get(i.target);if(r==null)continue;const o=n.get(r);o==null?n.set(r,[i]):o.push(i)}for(const[i,r]of n)i.handleResizeEntries(r)}observedNodes=new Map;setup(t,n){const i=new Set;let r=0;const o=new Map(this.observedNodes);this.observedNodes.clear();for(const s of t.children){if(r===2)break;const l=(()=>{if(s instanceof HTMLElement&&s.tagName==="CODE")return s})();if(l==null)continue;r++;let a=o.get(l);if(a!=null&&a.type!=="code")throw new Error("ResizeManager.setup: somehow a code node is being used for an annotation, should be impossible");let d=l.firstElementChild;d instanceof HTMLElement||(d=null),a!=null?(this.observedNodes.set(l,a),o.delete(l),a.numberElement!==d?(a.numberElement!=null&&(this.unobserve(a.numberElement),o.delete(a.numberElement)),d!=null&&(this.observe(d),o.delete(d),this.observedNodes.set(d,a)),a.numberElement=d,a.numberWidth=0):a.numberElement!=null?(o.delete(a.numberElement),this.observedNodes.set(a.numberElement,a)):a.numberWidth=0):(a={type:"code",codeElement:l,numberElement:d,codeWidth:"auto",numberWidth:0},this.observedNodes.set(l,a),this.observe(l),d!=null&&(this.observedNodes.set(d,a),this.observe(d)))}if(r>1&&!n){const s=t.querySelectorAll('[data-line-annotation*=","]'),l=new Map;for(const a of s){if(!(a instanceof HTMLElement))continue;const d=a.getAttribute("data-line-annotation")??"";if(!/^-?\d+,-?\d+$/.test(d)){console.error("DiffFileRenderer.setupResizeObserver: Invalid element or annotation",{lineAnnotation:d,element:a});continue}let h=l.get(d);h==null&&(h=[],l.set(d,h)),h.push(a)}for(const[a,d]of l){if(d.length!==2){console.error("DiffFileRenderer.setupResizeObserver: Bad Pair",a,d);continue}const[h,c]=d,u=h.firstElementChild,f=c.firstElementChild;if(!(h instanceof HTMLElement)||!(c instanceof HTMLElement)||!(u instanceof HTMLElement)||!(f instanceof HTMLElement))continue;let g=o.get(u);if(g!=null){this.observedNodes.set(u,g),this.observedNodes.set(f,g),o.delete(u),o.delete(f);continue}const b=u.getBoundingClientRect().height,y=f.getBoundingClientRect().height;g={type:"annotations",column1:{container:h,child:u,childHeight:b},column2:{container:c,child:f,childHeight:y},currentHeight:"auto"},i.add({child1:u,child2:f,item:g,newHeight:Math.max(b,y)})}for(const a of i)this.applyNewHeight(a.item,a.newHeight),this.observedNodes.set(a.child1,a.item),this.observedNodes.set(a.child2,a.item),this.observe(a.child1),this.observe(a.child2);i.clear()}for(const[s,l]of o)this.unobserve(s),l.type==="code"?bo(l):Co(l);o.clear()}cleanUp(){for(const t of this.observedNodes.keys())this.unobserve(t);this.observedNodes.clear()}observe(t){const{managersByElement:n}=ue,i=n.get(t);if(i!==this){if(i!=null&&i!==this)throw new Error("ResizeManager.observe: element is already owned by another ResizeManager");n.set(t,this),ue.getResizeObserver().observe(t)}}unobserve(t){const{managersByElement:n,resizeObserver:i}=ue,r=n.get(t);if(r!=null){if(r!==this)throw new Error("ResizeManager.unobserve: element is owned by another ResizeManager");n.delete(t),i?.unobserve(t),i!=null&&n.size===0&&(i.disconnect(),ue.resizeObserver=void 0)}}handleResizeEntries(t){const n=new Map,i=new Set;for(const r of t){const{target:o,borderBoxSize:s,contentBoxSize:l}=r;if(!(o instanceof HTMLElement)){console.error("ResizeManager.handleResizeEntries: Invalid element for ResizeObserver",r);continue}const a=this.observedNodes.get(o);if(a==null){console.error("ResizeManager.handleResizeEntries: Not a valid observed node",r);continue}if(a.type==="annotations"){const d=(()=>{if(o===a.column1.child)return a.column1;if(o===a.column2.child)return a.column2})();if(d==null){console.error("ResizeManager.handleResizeEntries: Couldn't find a column for",{item:a,target:o});continue}d.childHeight=s[0].blockSize,i.add(a)}else if(a.type==="code"){const d=n.get(a)??{},h=l[0].inlineSize;o===a.codeElement?d.codeInlineSize=h:o===a.numberElement&&(d.numberInlineSize=h),n.set(a,d)}}this.applyAnnotationUpdates(i),i.clear(),this.applyColumnUpdates(n),n.clear()}applyAnnotationUpdates(t){for(const n of t)this.applyNewHeight(n,Math.max(n.column1.childHeight,n.column2.childHeight))}applyColumnUpdates=t=>{for(const[n,i]of t){const r=i.codeInlineSize!=null?mo(i.codeInlineSize):n.codeWidth,o=i.numberInlineSize!=null?vo(i.numberInlineSize):n.numberWidth,s=r!==n.codeWidth,l=o!==n.numberWidth;if(!(!s&&!l)&&(n.codeWidth=r,n.numberWidth=o,s&&n.codeElement.style.setProperty("--diffs-column-width",`${typeof r=="number"?`${r}px`:"auto"}`),l&&n.codeElement.style.setProperty("--diffs-column-number-width",`${o===0?"auto":`${o}px`}`),s||l&&r!=="auto")){const a=typeof r=="number"?Math.max(r-o,0):0;n.codeElement.style.setProperty("--diffs-column-content-width",`${a>0?`${a}px`:"auto"}`)}}};applyNewHeight(t,n){n!==t.currentHeight&&(t.currentHeight=Math.max(n,0),t.column1.container.style.setProperty("--diffs-annotation-min-height",`${t.currentHeight}px`),t.column2.container.style.setProperty("--diffs-annotation-min-height",`${t.currentHeight}px`))}};function mo(e){const t=Math.max(Math.floor(e),0);return t===0?"auto":t}function vo(e){return Math.max(Math.ceil(e),0)}function bo(e){e.codeElement.isConnected&&(e.codeElement.style.removeProperty("--diffs-column-content-width"),e.codeElement.style.removeProperty("--diffs-column-number-width"),e.codeElement.style.removeProperty("--diffs-column-width"))}function Co(e){e.column1.container.isConnected&&e.column1.container.style.removeProperty("--diffs-annotation-min-height"),e.column2.container.isConnected&&e.column2.container.style.removeProperty("--diffs-annotation-min-height")}const Se=new Map,It=new Map,jt=new Map,gt=new Set;function mt(e){for(const t of Array.isArray(e)?e:[e])if(!(t==="text"||t==="ansi")&&!gt.has(t))return!1;return!0}function Rn(e,t){e=Array.isArray(e)?e:[e];for(const n of e){if(gt.has(n.name))continue;let i=Se.get(n.name);i==null&&(i=n,Se.set(n.name,i)),gt.add(i.name),t.loadLanguageSync(i.data)}}function So(){Se.clear(),gt.clear()}function Oi(){return typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope}async function Ni(e){if(Oi())throw new Error(`resolveLanguage("${e}") cannot be called from a worker context. Languages must be pre-resolved on the main thread and passed to the worker via the resolvedLanguages parameter.`);const t=It.get(e);if(t!=null)return t;try{let n=jt.get(e);if(n==null&&Object.prototype.hasOwnProperty.call(Ln,e)&&(n=Ln[e]),n==null)throw new Error(`resolveLanguage: "${e}" not found in bundled or custom languages`);const i=n().then(({default:r})=>{const o={name:e,data:r};return Se.has(e)||Se.set(e,o),o});return It.set(e,i),await i}finally{It.delete(e)}}function Fi(e){return Se.get(e)??Ni(e)}const vt=new Set;function Ye(e){const t=[],n=new Set;for(const c of yo(e.themes)){const u=zi(c)?c.getThemes():[c];for(const f of u){if(n.has(f.name))throw new Error(`Theme collection already contains theme "${f.name}"`);n.add(f.name),t.push(f)}}const i=Object.freeze([...t]),r=Object.freeze(i.filter(c=>c.colorScheme==="light")),o=Object.freeze(i.filter(c=>c.colorScheme==="dark")),s=new Map(i.map(c=>[c.name,c])),l=Object.freeze(i.map(c=>c.name)),a=Object.freeze(r.map(c=>c.name)),d=Object.freeze(o.map(c=>c.name));function h(c){if(c==null)return i;const{colorScheme:u,collection:f}=c;return f==null?u==="light"?r:u==="dark"?o:i:i.filter(g=>g.collection!==f?!1:u==null||g.colorScheme===u)}return{getTheme(c){return s.get(c)},getThemes(c){return h(c)},getThemeNames(c){return c?.collection==null?c?.colorScheme==="light"?a:c?.colorScheme==="dark"?d:l:h(c).map(u=>u.name)},hasTheme(c){return s.has(c)},orderBy(c){return Ye({themes:i.map((u,f)=>({descriptor:u,index:f})).sort((u,f)=>{const g=c(u.descriptor,f.descriptor);return g!==0?g:u.index-f.index}).map(u=>u.descriptor)})},pick(c){const u=[],f=new Set;for(const g of c){if(f.has(g))throw new Error(`Theme collection pick already includes theme "${g}"`);f.add(g);const b=s.get(g);if(b==null)throw new Error(`Theme collection does not contain theme "${g}"`);u.push(b)}return Ye({themes:u})},registerInto(c){for(const u of i)c.registerThemeIfAbsent(u.name,u.load)}}}function yo(e){return xo(e)?[e]:e}function xo(e){return zi(e)||Lo(e)}function Lo(e){return typeof e.name=="string"&&typeof e.load=="function"}function zi(e){return typeof e.getThemes=="function"}function Ui(e){return e!==null&&typeof e=="object"&&"default"in e?e.default:e}var Vi=class extends Error{constructor(e){super(`Theme "${e}" is already registered`),this.name="DuplicateThemeError"}},ko=class extends Error{constructor(e){super(`No loader registered for theme "${e}"`),this.name="UnregisteredThemeError"}},wo=class extends Error{constructor(e){super(`Theme "${e}" has not been resolved`),this.name="UnresolvedThemeError"}};function Eo(){const e=new Map,t=new Map,n=new Map;let i=0;function r(m,p){if(e.has(m))throw new Vi(m);e.set(m,p)}function o(m,p){return e.has(m)?!1:(e.set(m,p),!0)}function s(m){return e.has(m)}function l(m){const p=t.get(m);if(p!==void 0)return Promise.resolve(p);const C=n.get(m);if(C!==void 0)return C;const v=e.get(m);if(v===void 0)return Promise.reject(new ko(m));const x=i,S=v().then(L=>{const E=Ui(L);return x===i&&t.set(m,E),n.get(m)===S&&n.delete(m),E}).catch(L=>{throw n.get(m)===S&&n.delete(m),L});return n.set(m,S),S}function a(m){return Promise.all(m.map(p=>l(p)))}function d(m,p){t.set(m,p)}function h(m){for(const[p,C]of m)d(p,C)}function c(m){return t.get(m)}function u(m){const p=[];for(const C of m){const v=t.get(C);if(v===void 0)throw new wo(C);p.push(v)}return p}function f(m){return t.has(m)}function g(m){for(const p of m)if(!t.has(p))return!1;return!0}function b(m){const p=t.get(m);return p!==void 0?p:l(m)}function y(){i++,t.clear(),n.clear()}return{clearResolvedThemes:y,getResolvedOrResolveTheme:b,getResolvedTheme:c,getResolvedThemes:u,hasRegisteredTheme:s,hasResolvedTheme:f,hasResolvedThemes:g,registerTheme:r,registerThemeIfAbsent:o,resolveTheme:l,resolveThemes:a,seedResolvedTheme:d,seedResolvedThemes:h}}const X=Eo();function An(e,t){e=Array.isArray(e)?e:[e];for(let n of e){let i;if(typeof n=="string"){if(i=X.getResolvedTheme(n),i==null)throw new Error(`loadResolvedThemes: ${n} is not resolved, you must resolve it before calling loadResolvedThemes`)}else i=n,n=n.name,X.getResolvedTheme(n)==null&&X.seedResolvedTheme(n,i);vt.has(n)||(vt.add(n),t.loadThemeSync(i))}}function To(){X.clearResolvedThemes(),vt.clear()}function hn({name:e,load:t,colorScheme:n,collection:i,displayName:r}){return{name:e,colorScheme:n,collection:i,displayName:r,load:Io(t)}}function Io(e){return async()=>Or(Ui(await e()))}const Ro="pierre",Ao=["pierre-dark","pierre-dark-soft","pierre-dark-vibrant","pierre-dark-protanopia-deuteranopia","pierre-dark-tritanopia"],Bi=["pierre-light","pierre-light-soft","pierre-light-vibrant","pierre-light-protanopia-deuteranopia","pierre-light-tritanopia"],Ho=[...Bi,...Ao],Mo=new Set(Bi);function Do(e){return Mo.has(e)?"light":"dark"}const Po={"pierre-dark":"Pierre Dark","pierre-dark-soft":"Pierre Dark Soft","pierre-dark-vibrant":"Pierre Dark Vibrant","pierre-dark-protanopia-deuteranopia":"Pierre Dark Protanopia & Deuteranopia","pierre-dark-tritanopia":"Pierre Dark Tritanopia","pierre-light":"Pierre Light","pierre-light-soft":"Pierre Light Soft","pierre-light-vibrant":"Pierre Light Vibrant","pierre-light-protanopia-deuteranopia":"Pierre Light Protanopia & Deuteranopia","pierre-light-tritanopia":"Pierre Light Tritanopia"},_o={"pierre-dark":()=>k(()=>import("./pierre-dark-CyvmCCZW.js"),[]),"pierre-dark-soft":()=>k(()=>import("./pierre-dark-soft-BHGpRqa4.js"),[]),"pierre-dark-vibrant":()=>k(()=>import("./pierre-dark-vibrant-BWBVywrn.js"),[]),"pierre-dark-protanopia-deuteranopia":()=>k(()=>import("./pierre-dark-protanopia-deuteranopia-Rgc0TwpF.js"),[]),"pierre-dark-tritanopia":()=>k(()=>import("./pierre-dark-tritanopia-Beq2gCRQ.js"),[]),"pierre-light":()=>k(()=>import("./pierre-light-480U9XYS.js"),[]),"pierre-light-soft":()=>k(()=>import("./pierre-light-soft-CVdyfjmI.js"),[]),"pierre-light-vibrant":()=>k(()=>import("./pierre-light-vibrant-DdTDNdfJ.js"),[]),"pierre-light-protanopia-deuteranopia":()=>k(()=>import("./pierre-light-protanopia-deuteranopia-CaVOBURG.js"),[]),"pierre-light-tritanopia":()=>k(()=>import("./pierre-light-tritanopia-B4_gpKOM.js"),[])};function Oo(e){return hn({name:e,collection:Ro,colorScheme:Do(e),displayName:Po[e],load:_o[e]})}const $i=Ye({themes:Ho.map(e=>Oo(e))}),No="shiki",Wi=["ayu-light","catppuccin-latte","everforest-light","github-light","github-light-default","github-light-high-contrast","gruvbox-light-hard","gruvbox-light-medium","gruvbox-light-soft","horizon-bright","kanagawa-lotus","light-plus","material-theme-lighter","min-light","night-owl-light","one-light","rose-pine-dawn","slack-ochin","snazzy-light","solarized-light","vitesse-light"],Fo=["andromeeda","aurora-x","ayu-dark","ayu-mirage","catppuccin-frappe","catppuccin-macchiato","catppuccin-mocha","dark-plus","dracula","dracula-soft","everforest-dark","github-dark","github-dark-default","github-dark-dimmed","github-dark-high-contrast","gruvbox-dark-hard","gruvbox-dark-medium","gruvbox-dark-soft","horizon","houston","kanagawa-dragon","kanagawa-wave","laserwave","material-theme","material-theme-darker","material-theme-ocean","material-theme-palenight","min-dark","monokai","night-owl","nord","one-dark-pro","plastic","poimandres","red","rose-pine","rose-pine-moon","slack-dark","solarized-dark","synthwave-84","tokyo-night","vesper","vitesse-black","vitesse-dark"],zo=new Set(Wi);function Uo(e){return zo.has(e)?"light":"dark"}const Vo={andromeeda:()=>k(()=>import("./andromeeda-C4gqWexZ.js"),[]),"aurora-x":()=>k(()=>import("./aurora-x-D-2ljcwZ.js"),[]),"ayu-dark":()=>k(()=>import("./ayu-dark-DYE7WIF3.js"),[]),"ayu-light":()=>k(()=>import("./ayu-light-BA47KaF1.js"),[]),"ayu-mirage":()=>k(()=>import("./ayu-mirage-32ctXXKs.js"),[]),"catppuccin-frappe":()=>k(()=>import("./catppuccin-frappe-DFWUc33u.js"),[]),"catppuccin-latte":()=>k(()=>import("./catppuccin-latte-C9dUb6Cb.js"),[]),"catppuccin-macchiato":()=>k(()=>import("./catppuccin-macchiato-DQyhUUbL.js"),[]),"catppuccin-mocha":()=>k(()=>import("./catppuccin-mocha-D87Tk5Gz.js"),[]),"dark-plus":()=>k(()=>import("./dark-plus-C3mMm8J8.js"),[]),dracula:()=>k(()=>import("./dracula-BzJJZx-M.js"),[]),"dracula-soft":()=>k(()=>import("./dracula-soft-BXkSAIEj.js"),[]),"everforest-dark":()=>k(()=>import("./everforest-dark-BgDCqdQA.js"),[]),"everforest-light":()=>k(()=>import("./everforest-light-C8M2exoo.js"),[]),"github-dark":()=>k(()=>import("./github-dark-DHJKELXO.js"),[]),"github-dark-default":()=>k(()=>import("./github-dark-default-Cuk6v7N8.js"),[]),"github-dark-dimmed":()=>k(()=>import("./github-dark-dimmed-DH5Ifo-i.js"),[]),"github-dark-high-contrast":()=>k(()=>import("./github-dark-high-contrast-E3gJ1_iC.js"),[]),"github-light":()=>k(()=>import("./github-light-DAi9KRSo.js"),[]),"github-light-default":()=>k(()=>import("./github-light-default-D7oLnXFd.js"),[]),"github-light-high-contrast":()=>k(()=>import("./github-light-high-contrast-BfjtVDDH.js"),[]),"gruvbox-dark-hard":()=>k(()=>import("./gruvbox-dark-hard-CFHQjOhq.js"),[]),"gruvbox-dark-medium":()=>k(()=>import("./gruvbox-dark-medium-GsRaNv29.js"),[]),"gruvbox-dark-soft":()=>k(()=>import("./gruvbox-dark-soft-CVdnzihN.js"),[]),"gruvbox-light-hard":()=>k(()=>import("./gruvbox-light-hard-CH1njM8p.js"),[]),"gruvbox-light-medium":()=>k(()=>import("./gruvbox-light-medium-DRw_LuNl.js"),[]),"gruvbox-light-soft":()=>k(()=>import("./gruvbox-light-soft-hJgmCMqR.js"),[]),horizon:()=>k(()=>import("./horizon-BUw7H-hv.js"),[]),"horizon-bright":()=>k(()=>import("./horizon-bright-CUuTKBJd.js"),[]),houston:()=>k(()=>import("./houston-DnULxvSX.js"),[]),"kanagawa-dragon":()=>k(()=>import("./kanagawa-dragon-CkXjmgJE.js"),[]),"kanagawa-lotus":()=>k(()=>import("./kanagawa-lotus-CfQXZHmo.js"),[]),"kanagawa-wave":()=>k(()=>import("./kanagawa-wave-DWedfzmr.js"),[]),laserwave:()=>k(()=>import("./laserwave-DUszq2jm.js"),[]),"light-plus":()=>k(()=>import("./light-plus-B7mTdjB0.js"),[]),"material-theme":()=>k(()=>import("./material-theme-D5KoaKCx.js"),[]),"material-theme-darker":()=>k(()=>import("./material-theme-darker-BfHTSMKl.js"),[]),"material-theme-lighter":()=>k(()=>import("./material-theme-lighter-B0m2ddpp.js"),[]),"material-theme-ocean":()=>k(()=>import("./material-theme-ocean-CyktbL80.js"),[]),"material-theme-palenight":()=>k(()=>import("./material-theme-palenight-Csfq5Kiy.js"),[]),"min-dark":()=>k(()=>import("./min-dark-CafNBF8u.js"),[]),"min-light":()=>k(()=>import("./min-light-CTRr51gU.js"),[]),monokai:()=>k(()=>import("./monokai-D4h5O-jR.js"),[]),"night-owl":()=>k(()=>import("./night-owl-C39BiMTA.js"),[]),"night-owl-light":()=>k(()=>import("./night-owl-light-CMTm3GFP.js"),[]),nord:()=>k(()=>import("./nord-Ddv68eIx.js"),[]),"one-dark-pro":()=>k(()=>import("./one-dark-pro-DVMEJ2y_.js"),[]),"one-light":()=>k(()=>import("./one-light-C3Wv6jpd.js"),[]),plastic:()=>k(()=>import("./plastic-3e1v2bzS.js"),[]),poimandres:()=>k(()=>import("./poimandres-CS3Unz2-.js"),[]),red:()=>k(()=>import("./red-bN70gL4F.js"),[]),"rose-pine":()=>k(()=>import("./rose-pine-qdsjHGoJ.js"),[]),"rose-pine-dawn":()=>k(()=>import("./rose-pine-dawn-DHQR4-dF.js"),[]),"rose-pine-moon":()=>k(()=>import("./rose-pine-moon-D4_iv3hh.js"),[]),"slack-dark":()=>k(()=>import("./slack-dark-BthQWCQV.js"),[]),"slack-ochin":()=>k(()=>import("./slack-ochin-DqwNpetd.js"),[]),"snazzy-light":()=>k(()=>import("./snazzy-light-Bw305WKR.js"),[]),"solarized-dark":()=>k(()=>import("./solarized-dark-DXbdFlpD.js"),[]),"solarized-light":()=>k(()=>import("./solarized-light-L9t79GZl.js"),[]),"synthwave-84":()=>k(()=>import("./synthwave-84-CbfX1IO0.js"),[]),"tokyo-night":()=>k(()=>import("./tokyo-night-hegEt444.js"),[]),vesper:()=>k(()=>import("./vesper-DRje8inN.js"),[]),"vitesse-black":()=>k(()=>import("./vitesse-black-Bkuqu6BP.js"),[]),"vitesse-dark":()=>k(()=>import("./vitesse-dark-D0r3Knsf.js"),[]),"vitesse-light":()=>k(()=>import("./vitesse-light-CVO1_9PV.js"),[])};function Hn(e){return hn({name:e,collection:No,colorScheme:Uo(e),load:Vo[e]})}const Gi=Ye({themes:Object.freeze([...Wi.map(e=>Hn(e)),...Fo.map(e=>Hn(e))])});Ye({themes:[$i,Gi]});function ji(e){if(Oi())throw new Error(`Theme "${e}" cannot be resolved from a worker context. Themes must be pre-resolved on the main thread and passed to the worker via the resolvedLanguages parameter.`);if(X.hasRegisteredTheme(e))return;const t=Gi.getTheme(e);if(t!=null){X.registerThemeIfAbsent(t.name,t.load);return}throw new Error(`No valid theme loader registered for "${e}"`)}function qi(e,t){if(t.name!==e)throw new Error(`resolvedTheme: themeName: ${e} does not match theme.name: ${t.name}`)}async function Bo(e){ji(e);const t=await X.resolveTheme(e);return qi(e,t),t}function $o(e){return X.getResolvedTheme(e)??Bo(e)}let $;async function xt({themes:e,langs:t,preferredHighlighter:n="shiki-js"}){$??=Nr({themes:[],langs:["text"],engine:n==="shiki-wasm"?Fr(k(()=>import("./wasm-CG6Dc4jp.js"),[])):zr()});const i=Wo($)?await $:$;$=i;const r=[];for(const s of t){if(s==="text"||s==="ansi")continue;const l=Fi(s);"then"in l?r.push(l):Rn(l,i)}const o=[];for(const s of e){const l=$o(s);"then"in l?o.push(l):An(l,$)}return(r.length>0||o.length>0)&&await Promise.all([Promise.all(r).then(s=>{Rn(s,i)}),Promise.all(o).then(s=>{An(s,i)})]),i}function ql(e=$){return e!=null&&!("then"in e)}function Ki(){if($!=null&&!("then"in $))return $}function Wo(e=$){return e!=null&&"then"in e}function Kl(e=$){return e==null}async function Yl(e){await xt(e)}async function Xl(){$!=null&&((await $).dispose(),So(),To(),$=void 0)}for(const e of $i.getThemes())X.registerThemeIfAbsent(e.name,e.load);function cn(e=_){const t=[];return typeof e=="string"?t.push(e):(t.push(e.dark),t.push(e.light)),t}function Ge(e){for(const t of cn(e))if(!vt.has(t))return!1;return!0}function Go(e){return X.hasResolvedThemes(e)}function Oe(e,t){return De(e.theme,t.theme)&&e.useTokenTransformer===t.useTokenTransformer&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength}function ae(e,t){return e?.cacheKey===t?.cacheKey&&e?.contents===t?.contents&&e?.name===t?.name&&e?.lang===t?.lang}function Lt(e,t){return e==null||t==null?e===t:e.startingLine===t.startingLine&&e.totalLines===t.totalLines&&e.bufferBefore===t.bufferBefore&&e.bufferAfter===t.bufferAfter}function qt(e){return A({tagName:"div",children:[A({tagName:"div",children:e.annotations?.map(t=>A({tagName:"slot",properties:{name:t}})),properties:{"data-annotation-content":""}})],properties:{"data-line-annotation":`${e.hunkIndex},${e.lineIndex}`}})}function jo(e){switch(e){case"file":return"diffs-icon-file-code";case"change":return"diffs-icon-symbol-modified";case"new":return"diffs-icon-symbol-added";case"deleted":return"diffs-icon-symbol-deleted";case"rename-pure":case"rename-changed":return"diffs-icon-symbol-moved"}}function Yi({fileOrDiff:e,mode:t,stickyHeader:n}){const i="type"in e?e:void 0,r={"data-diffs-header":t,"data-change-type":i?.type,"data-sticky":n?"":void 0};return A({tagName:"div",children:[t==="custom"?A({tagName:"slot",properties:{name:an}}):qo({name:e.name,prevName:"prevName"in e?e.prevName:void 0,iconType:i?.type??"file"}),...t==="custom"?[]:[Ko(i)]],properties:r})}function qo({name:e,prevName:t,iconType:n}){const i=[A({tagName:"slot",properties:{name:on}}),pt({name:jo(n),properties:{"data-change-icon":n}})];return t!=null&&(i.push(A({tagName:"div",children:[A({tagName:"bdi",children:[W(t)]})],properties:{"data-prev-name":""}})),i.push(pt({name:"diffs-icon-arrow-right-short",properties:{"data-rename-icon":""}}))),i.push(A({tagName:"div",children:[A({tagName:"bdi",children:[W(e)]})],properties:{"data-title":""}})),A({tagName:"div",children:i,properties:{"data-header-content":""}})}function Ko(e){const t=[];if(e!=null){let n=0,i=0;for(const r of e.hunks)n+=r.additionLines,i+=r.deletionLines;(i>0||n===0)&&t.push(A({tagName:"span",children:[W(`-${i}`)],properties:{"data-deletions-count":""}})),(n>0||i===0)&&t.push(A({tagName:"span",children:[W(`+${n}`)],properties:{"data-additions-count":""}}))}return t.push(A({tagName:"slot",properties:{name:sn}})),A({tagName:"div",children:t,properties:{"data-metadata":""}})}function Xi(e){return A({tagName:"pre",properties:Yo(e)})}function Yo({diffIndicators:e,disableBackground:t,disableLineNumbers:n,overflow:i,split:r,totalLines:o,type:s,customProperties:l}){return{...l,"data-diff":s==="diff"?"":void 0,"data-file":s==="file"?"":void 0,"data-diff-type":s==="diff"?r?"split":"single":void 0,"data-overflow":i,"data-disable-line-numbers":n?"":void 0,"data-background":t?void 0:"","data-indicators":e==="bars"||e==="classic"?e:void 0,style:`--diffs-min-number-column-width-default:${`${o}`.length}ch;`}}const Z=new Map;let bt=0;const Ne={"1c":"1c",abap:"abap",as:"actionscript-3",ada:"ada",adb:"ada",ads:"ada",adoc:"asciidoc",asciidoc:"asciidoc","component.html":"angular-html","component.ts":"angular-ts",conf:"nginx",htaccess:"apache",cls:"tex",trigger:"apex",apl:"apl",applescript:"applescript",scpt:"applescript",ara:"ara",asm:"asm",s:"riscv",astro:"astro",awk:"awk",bal:"ballerina",sh:"zsh",bash:"zsh",bat:"cmd",cmd:"cmd",be:"berry",beancount:"beancount",bib:"bibtex",bicep:"bicep","blade.php":"blade",bsl:"bsl",c:"c",h:"objective-cpp",cs:"csharp",cpp:"cpp",hpp:"cpp",cc:"cpp",cxx:"cpp",hh:"cpp",cdc:"cdc",cairo:"cairo",clar:"clarity",clj:"clojure",cljs:"clojure",cljc:"clojure",soy:"soy",cmake:"cmake","CMakeLists.txt":"cmake",cob:"cobol",cbl:"cobol",cobol:"cobol",CODEOWNERS:"codeowners",ql:"ql",coffee:"coffeescript",lisp:"lisp",cl:"lisp",lsp:"lisp",log:"log",v:"verilog",cql:"cql",cr:"crystal",css:"css",csv:"csv",cue:"cue",cypher:"cypher",cyp:"cypher",d:"d",dart:"dart",dax:"dax",desktop:"desktop",diff:"diff",patch:"diff",Dockerfile:"dockerfile",dockerfile:"dockerfile",env:"dotenv",dm:"dream-maker",edge:"edge",el:"emacs-lisp",ex:"elixir",exs:"elixir",elm:"elm",erb:"erb",erl:"erlang",hrl:"erlang",f:"fortran-fixed-form",for:"fortran-fixed-form",fs:"fsharp",fsi:"fsharp",fsx:"fsharp",f03:"f03",f08:"f08",f18:"f18",f77:"f77",f90:"fortran-free-form",f95:"fortran-free-form",fnl:"fennel",fish:"fish",ftl:"ftl",tres:"gdresource",res:"gdresource",gd:"gdscript",gdshader:"gdshader",gs:"genie",feature:"gherkin",COMMIT_EDITMSG:"git-commit","git-rebase-todo":"git-rebase",gjs:"glimmer-js",gleam:"gleam",gts:"glimmer-ts",glsl:"glsl",vert:"glsl",frag:"glsl",shader:"shaderlab",gp:"gnuplot",plt:"gnuplot",gnuplot:"gnuplot",go:"go",graphql:"graphql",gql:"graphql",groovy:"groovy",gvy:"groovy",hack:"hack",haml:"haml",hbs:"handlebars",handlebars:"handlebars",hs:"haskell",lhs:"haskell",hx:"haxe",hcl:"hcl",hjson:"hjson",hlsl:"hlsl",fx:"hlsl",html:"html",htm:"html",http:"http",rest:"http",hxml:"hxml",hy:"hy",imba:"imba",ini:"ini",cfg:"ini",jade:"pug",pug:"pug",java:"java",js:"javascript",mjs:"javascript",cjs:"javascript",jinja:"jinja",jinja2:"jinja",j2:"jinja",jison:"jison",jl:"julia",json:"json",json5:"json5",jsonc:"jsonc",jsonl:"jsonl",jsonnet:"jsonnet",libsonnet:"jsonnet",jssm:"jssm",jsx:"jsx",kt:"kotlin",kts:"kts",kql:"kusto",tex:"tex",ltx:"tex",lean:"lean4",less:"less",liquid:"liquid",lit:"lit",ll:"llvm",logo:"logo",lua:"lua",luau:"luau",Makefile:"makefile",mk:"makefile",makefile:"makefile",md:"markdown",markdown:"markdown",marko:"marko",m:"wolfram",mat:"matlab",mdc:"mdc",mdx:"mdx",wiki:"wikitext",mediawiki:"wikitext",mmd:"mermaid",mermaid:"mermaid",mips:"mipsasm",mojo:"mojo","🔥":"mojo",move:"move",nar:"narrat",nf:"nextflow",nim:"nim",nims:"nim",nimble:"nim",nix:"nix",nu:"nushell",mm:"objective-cpp",ml:"ocaml",mli:"ocaml",mll:"ocaml",mly:"ocaml",pas:"pascal",p:"pascal",pl:"prolog",pm:"perl",t:"perl",raku:"raku",p6:"raku",pl6:"raku",php:"php",phtml:"php",pls:"plsql",sql:"sql",po:"po",polar:"polar",pcss:"postcss",pot:"pot",potx:"potx",pq:"powerquery",pqm:"powerquery",ps1:"powershell",psm1:"powershell",psd1:"powershell",prisma:"prisma",pro:"prolog",P:"prolog",properties:"properties",proto:"protobuf",pp:"puppet",purs:"purescript",py:"python",pyw:"python",pyi:"python",qml:"qml",qmldir:"qmldir",qss:"qss",r:"r",R:"r",rkt:"racket",rktl:"racket",razor:"razor",cshtml:"razor",rb:"ruby",rbw:"ruby",reg:"reg",regex:"regexp",rel:"rel",rs:"rust",rst:"rst",rake:"ruby",gemspec:"ruby",jbuilder:"ruby",builder:"ruby",rabl:"ruby",arb:"ruby",ru:"ruby",podspec:"ruby",Gemfile:"ruby",Rakefile:"ruby",Guardfile:"ruby",Capfile:"ruby",Berksfile:"ruby",Brewfile:"ruby",Vagrantfile:"ruby",Thorfile:"ruby",Appraisals:"ruby",Dangerfile:"ruby",sas:"sas",sass:"sass",scala:"scala",sc:"scala",scm:"scheme",ss:"scheme",sld:"scheme",scss:"scss",sdbl:"sdbl",shadergraph:"shader",st:"smalltalk",sol:"solidity",sparql:"sparql",rq:"sparql",spl:"splunk",config:"ssh-config",do:"stata",ado:"stata",dta:"stata",styl:"stylus",stylus:"stylus",svelte:"svelte",swift:"swift",sv:"system-verilog",svh:"system-verilog",service:"systemd",socket:"systemd",device:"systemd",timer:"systemd",talon:"talonscript",tasl:"tasl",tcl:"tcl",templ:"templ",tf:"tf",tfvars:"tfvars",toml:"toml",ts:"typescript",tsp:"typespec",tsv:"tsv",tsx:"tsx",ttl:"turtle",twig:"twig",typ:"typst",vv:"v",vala:"vala",vapi:"vala",vb:"vb",vbs:"vb",bas:"vb",vh:"verilog",vhd:"vhdl",vhdl:"vhdl",vim:"vimscript",vue:"vue","vine.ts":"vue-vine",vy:"vyper",wasm:"wasm",wat:"wasm",wy:"文言",wgsl:"wgsl",wit:"wit",wl:"wolfram",nb:"wolfram",xml:"xml",xsl:"xsl",xslt:"xsl",yaml:"yaml",yml:"yml",zs:"zenscript",zig:"zig",zsh:"zsh",sty:"tex"};function Q(e){if(Z.has(e))return Z.get(e)??"text";if(Ne[e]!=null)return Ne[e];const t=e.match(/\.([^/\\]+\.[^/\\]+)$/);if(t!=null){if(Z.has(t[1]))return Z.get(t[1])??"text";if(Ne[t[1]]!=null)return Ne[t[1]]??"text"}const n=e.match(/\.([^.]+)$/)?.[1]??"";return Z.has(n)?Z.get(n)??"text":Ne[n]??"text"}function Ql(e,t){if(e<=bt)return!1;Z.clear();for(const n in t){const i=t[n];i!=null&&Z.set(n,i)}return bt=e,!0}function Jl(){return bt}function Xo(e,t){const n=Z.get(e);return n===t?!1:(n!=null&&console.warn(`setCustomExtension: overriding custom mapping for "${e}" from "${n}" to "${t}"`),Z.set(e,t),bt++,!0)}function Zl(){return Object.fromEntries(Z)}function un(e,{theme:t,preferredHighlighter:n="shiki-js"}){return{langs:[e??"text"],themes:cn(t),preferredHighlighter:n}}function ge(e){return`annotation-${"side"in e?`${e.side}-`:""}${e.lineNumber}`}function xe(e){return e.replace(/\n$|\r\n$/,"")}function Qo(e,t,n){const i=typeof n.lineInfo=="function"?n.lineInfo(t):n.lineInfo[t-1];if(i==null){const r=`processLine: line ${t}, contains no state.lineInfo`;throw console.error(r,{node:e,line:t,state:n}),new Error(r)}return e.tagName="div",e.properties["data-line"]=i.lineNumber,e.properties["data-alt-line"]=i.altLineNumber,e.properties["data-line-type"]=i.type,e.properties["data-line-index"]=i.lineIndex,e.children.length===0&&e.children.push(W(` -`)),e}const tt=Symbol("no-token"),Rt=Symbol("multiple-tokens");function Qi(e){const t=Jo(e);if(t!=null)return t;let n=tt;const i=[];let r=[],o;const s=()=>{if(r.length===0||o==null){r=[],o=void 0;return}if(r.length===1){const a=r[0];if(a?.type==="element"){Zo(a,o);for(const d of a.children)ft(d)}else ft(a);i.push(a),r=[],o=void 0;return}for(const a of r)ft(a);i.push(A({tagName:"span",properties:{"data-char":o},children:r})),r=[],o=void 0},l=a=>{if(a!==tt){if(a===Rt){n=Rt;return}if(n===tt){n=a;return}n!==a&&(n=Rt)}};for(const a of e.children){const d=a.type==="element"?Qi(a):tt;if(l(d),typeof d!="number"){s(),i.push(a);continue}o!=null&&o!==d&&s(),o??=d,r.push(a)}return s(),e.children=i,n}function Jo(e){const t=e.properties["data-char"];if(typeof t=="number")return t}function ft(e){if(e.type==="element"){e.properties["data-char"]=void 0;for(const t of e.children)ft(t)}}function Zo(e,t){e.properties["data-char"]=t}function es(e={}){const{classPrefix:t="__shiki_",classSuffix:n="",classReplacer:i=l=>l}=e,r=new Map;function o(l){return Object.entries(l).map(([a,d])=>`${a}:${d}`).join(";")}function s(l){let a=t+ts(typeof l=="string"?l:o(l))+n;return a=i(a),r.has(a)||r.set(a,typeof l=="string"?l:{...l}),a}return{name:"@shikijs/transformers:style-to-class",pre(l){if(!l.properties.style)return;const a=s(l.properties.style);delete l.properties.style,this.addClassToHast(l,a)},tokens(l){for(const a of l)for(const d of a){if(!d.htmlStyle)continue;const h=s(d.htmlStyle);d.htmlStyle={},d.htmlAttrs||={},d.htmlAttrs.class?d.htmlAttrs.class+=` ${h}`:d.htmlAttrs.class=h}},getClassRegistry(){return r},getCSS(){let l="";for(const[a,d]of r.entries())l+=`.${a}{${typeof d=="string"?d:o(d)}}`;return l},clearRegistry(){r.clear()}}}function ts(e,t=0){let n=3735928559^t,i=1103547991^t;for(let r=0,o;r>>16,2246822507),n^=Math.imul(i^i>>>13,3266489909),i=Math.imul(i^i>>>16,2246822507),i^=Math.imul(n^n>>>13,3266489909),(4294967296*(2097151&i)+(n>>>0)).toString(36).slice(0,6)}function Ji(e=!1,t=!1){const n={lineInfo:[]},i=[{line(r){return delete r.properties.class,r},pre(r){const o=oo(r),s=[];if(o!=null){let l=1;for(const a of o.children)a.type==="element"&&(e&&Qi(a),s.push(Qo(a,l,n)),l++);o.children=s}return r},...e?{tokens(r){for(const o of r){let s=0;for(const l of o){const a=l;a.__lineChar??=s,s+=l.content.length}}},preprocess(r,o){o.mergeWhitespaces="never"},span(r,o,s,l,a){if(a?.offset!=null&&a.content!=null){const d=a.__lineChar;return d!=null&&(r.properties["data-char"]=d),r}return r}}:null}];return t&&i.push(ns,Mn),{state:n,transformers:i,toClass:Mn}}const Mn=es({classPrefix:"hl-"}),ns={name:"token-style-normalizer",tokens(e){for(const t of e)for(const n of t){if(n.htmlStyle!=null)continue;const i={};n.color!=null&&(i.color=n.color),n.bgColor!=null&&(i["background-color"]=n.bgColor),n.fontStyle!=null&&n.fontStyle!==0&&((n.fontStyle&1)!==0&&(i["font-style"]="italic"),(n.fontStyle&2)!==0&&(i["font-weight"]="bold"),(n.fontStyle&4)!==0&&(i["text-decoration"]="underline")),Object.keys(i).length>0&&(n.htmlStyle=i)}}};function B(e){return`--${e==="token"?"diffs-token":"diffs"}-`}const is=/^#(?:[0-9a-f]{3}0|[0-9a-f]{6}00)$/i,rs=/^0(?:\.0+)?%?$/;function os(e){const t=e.indexOf("(");if(t<=0||!e.endsWith(")"))return;const n=e.slice(0,t).trim();if(!/^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch|color)$/i.test(n))return;const i=e.slice(t+1,-1).trim();if(i.length===0)return;const r=i.lastIndexOf("/");if(r!==-1)return i.slice(r+1).trim();if(/^(?:rgba|hsla)$/i.test(n)){const o=i.split(",");if(o.length===4)return o[3]?.trim()}}function ss(e){const t=/^#([0-9a-f]{3}|[0-9a-f]{6}|[0-9a-f]{8})\b/i.exec(e.trim());if(t==null)return null;const n=t[1];let i,r=1;return n.length===3?i=n.split("").map(o=>o+o).join(""):n.length===6?i=n:(i=n.slice(0,6),r=parseInt(n.slice(6,8),16)/255),[parseInt(i.slice(0,2),16),parseInt(i.slice(2,4),16),parseInt(i.slice(4,6),16),r]}function At(e){if(e==null)return null;const t=ss(e);if(t==null)return null;const n=t[0]/255,i=t[1]/255,r=t[2]/255,o=s=>s<=.03928?s/12.92:((s+.055)/1.055)**2.4;return .2126*o(n)+.7152*o(i)+.0722*o(r)}function Dn(e){if(e==null)return!1;const t=e.trim().toLowerCase();if(t==="transparent"||is.test(t))return!0;const n=os(t);return n!=null&&rs.test(n)}function as(e,t,n){if(t==null||n==null)return!1;const i=At(e),r=At(t),o=At(n);return i==null||r==null||o==null?!1:Math.abs(i-o){const s=e.at(-1);return s===""||s===` -`||s===`\r -`||s==="\r"?Math.max(0,e.length-2):e.length-1})();for(let s=t;s0||l<1/0,{state:h,transformers:c}=Ji(r),u=o?"text":e.lang??Q(e.name),f=typeof n=="string"?t.getTheme(n).type:void 0,g=fn({theme:n,highlighter:t});h.lineInfo=p=>({type:"context",lineIndex:p-1+s,lineNumber:p+s});const b=typeof n=="string"?{lang:u,theme:n,transformers:c,defaultColor:!1,cssVariablePrefix:B("token"),tokenizeMaxLineLength:i,tokenizeTimeLimit:0}:{lang:u,themes:n,transformers:c,defaultColor:!1,cssVariablePrefix:B("token"),tokenizeMaxLineLength:i,tokenizeTimeLimit:0},y=Kt(t.codeToHast(d?cs(a??St(e.contents),s,l):xe(e.contents),b)),m=d?new Array(s):y;return d&&m.push(...y),{code:m,themeStyles:g,baseThemeType:f}}function cs(e,t,n){let i="";return Ct({lines:e,startingLine:t,totalLines:n,callback({content:r}){i+=r}}),i}const Zi="-1,-1";function Yt(e){return e?.some(t=>t.lineNumber===0)??!1}function Xt(e){const t=e[0];return t!=null&&t.length>0?t:void 0}function kt(e){return e.startingLine===0&&e.totalLines>0}function er(e,t){return A({tagName:"div",children:e,properties:{"data-content":"",style:`grid-row: span ${t}`}})}function Qt(e){return(e.lang??Q(e.name))==="text"}function tr(e){return e.useTokenTransformer===!0||e.onTokenClick!=null||e.onTokenEnter!=null||e.onTokenLeave!=null}let us=-1;var fs=class{options;onRenderUpdate;workerManager;__id=`file-renderer:${++us}`;highlighter;renderCache;computedLang="text";lineAnnotations={};lineCache;constructor(e={theme:_},t,n){this.options=e,this.onRenderUpdate=t,this.workerManager=n,n?.isWorkingPool()!==!0&&(this.highlighter=Ge(e.theme??_)?Ki():void 0)}setOptions(e){this.options=e}mergeOptions(e){this.options={...this.options,...e}}setLineAnnotations(e){this.lineAnnotations={};for(const t of e){const n=this.lineAnnotations[t.lineNumber]??[];this.lineAnnotations[t.lineNumber]=n,n.push(t)}}cleanUp(){this.recycle(),this.workerManager=void 0,this.onRenderUpdate=void 0}recycle(){this.clearRenderCache(),this.highlighter=void 0,this.workerManager?.cleanUpTasks(this),this.lineCache=void 0}clearRenderCache(){this.renderCache=void 0}hydrate(e){const{options:t}=this.getRenderOptions(e),n=Pt(this.getOrCreateLineCache(e).length,this.getTokenizeMaxLength());let i=this.workerManager?.getFileResultCache(e);i!=null&&!Oe(t,i.options)&&(i=void 0),this.renderCache??={file:e,options:t,highlighted:!n&&!Qt(e),result:n?void 0:i?.result,renderRange:void 0},this.workerManager?.isWorkingPool()===!0?this.renderCache.result==null&&!n&&this.workerManager.highlightFileAST(this,e):this.highlighter==null&&(this.computedLang=e.lang??Q(e.name),this.initializeHighlighter())}getRenderOptions(e){const t=(()=>{if(this.workerManager?.isWorkingPool()===!0)return this.workerManager.getFileRenderOptions();const{theme:i=_,tokenizeMaxLineLength:r=1e3}=this.options;return{theme:i,useTokenTransformer:tr(this.options),tokenizeMaxLineLength:r}})(),{renderCache:n}=this;return n?.result==null?{options:t,forceHighlight:!0}:!ae(e,n.file)||!Oe(t,n.options)?{options:t,forceHighlight:!0}:{options:t,forceHighlight:!1}}getOrCreateLineCache(e){if(e.cacheKey==null)return this.lineCache=void 0,St(e.contents);let{lineCache:t}=this;return(t==null||t.cacheKey!==e.cacheKey)&&(t={cacheKey:e.cacheKey,lines:St(e.contents)}),this.lineCache=t,t.lines}renderFile(e=this.renderCache?.file,t=Ae){if(e==null)return;let{options:n,forceHighlight:i}=this.getRenderOptions(e);const r=this.getMatchingWorkerResultCache(e,n);r!=null&&!this.hasHighlightedRenderCache(e,n)&&(this.renderCache={file:e,highlighted:!0,renderRange:void 0,...r},i=!1),this.renderCache??={file:e,highlighted:!1,options:n,result:void 0,renderRange:void 0};const o=this.getOrCreateLineCache(e),s=e.contents.length>0,l=!s||Qt(e)||Pt(o.length,this.getTokenizeMaxLength()),a=!ae(e,this.renderCache.file),d=!Lt(this.renderCache.renderRange,t);if(this.workerManager?.isWorkingPool()===!0)(l||this.renderCache.result==null||!this.renderCache.highlighted&&(a||d))&&(this.renderCache.file=e,this.renderCache.options=n,this.renderCache.highlighted=!1,(this.renderCache.result==null||a||d||i)&&(this.renderCache.result=this.workerManager.getPlainFileAST(e,t.startingLine,t.totalLines,o)),this.renderCache.renderRange=t),!l&&s&&(!this.renderCache.highlighted||i)&&this.workerManager.highlightFileAST(this,e);else{this.computedLang=e.lang??Q(e.name);const h=this.highlighter!=null&&Ge(n.theme),c=this.highlighter!=null&&mt(this.computedLang),u=!l&&c;if(this.highlighter!=null&&h&&(i||l||!this.renderCache.highlighted&&u||this.renderCache.result==null)){const{result:f,options:g}=this.renderFileWithHighlighter(e,this.highlighter,l||!c);this.renderCache={file:e,options:g,highlighted:u,result:f,renderRange:void 0}}(!h||!l&&!c)&&this.asyncHighlight(e).then(({result:f,options:g})=>{this.renderCache!=null&&(this.renderCache.highlighted=!1),this.onHighlightSuccess(e,f,g,!l)})}return this.renderCache.result!=null?this.processFileResult(this.renderCache.file,t,this.renderCache.result):void 0}async asyncRender(e,t=Ae){const{result:n}=await this.asyncHighlight(e);return this.processFileResult(e,t,n)}async asyncHighlight(e){const t=Pt(this.getOrCreateLineCache(e).length,this.getTokenizeMaxLength());this.computedLang=t?"text":e.lang??Q(e.name);const n=this.highlighter!=null&&Go(cn(this.options.theme)),i=t||this.highlighter!=null&&mt(this.computedLang);return(this.highlighter==null||!n||!i)&&(this.highlighter=await this.initializeHighlighter()),this.renderFileWithHighlighter(e,this.highlighter,t)}renderFileWithHighlighter(e,t,n=!1){const{options:i}=this.getRenderOptions(e);return{result:hs(e,t,i,{forcePlainText:n}),options:i}}processFileResult(e,t,{code:n,themeStyles:i,baseThemeType:r}){const{disableFileHeader:o=!1}=this.options,s=[],l=Ee(),a=this.getOrCreateLineCache(e);let d=0;const h=kt(t)?Xt(this.lineAnnotations):void 0;return h!=null&&(l.children.push(j("context","annotation",1)),s.push(qt({hunkIndex:-1,lineIndex:-1,annotations:h.map(c=>ge(c))})),d++),Ct({lines:a,startingLine:t.startingLine,totalLines:t.totalLines,callback:({lineIndex:c,lineNumber:u})=>{const f=n[c];if(f==null){const g="FileRenderer.processFileResult: Line doesnt exist";throw console.error(g,{name:e.name,lineIndex:c,lineNumber:u,lines:a}),new Error(g)}if(f!=null){l.children.push(Di("context",u,`${c}`)),s.push(f),d++;const g=this.lineAnnotations[u];g!=null&&(l.children.push(j("context","annotation",1)),s.push(qt({hunkIndex:0,lineIndex:u,annotations:g.map(b=>ge(b))})),d++)}}}),l.properties.style=`grid-row: span ${d}`,{gutterAST:l.children??[],contentAST:s,preAST:this.createPreElement(a.length),headerAST:o?void 0:this.renderHeader(e),totalLines:a.length,rowCount:d,themeStyles:i,baseThemeType:r,bufferBefore:t.bufferBefore,bufferAfter:t.bufferAfter,css:""}}renderHeader(e){const{headerRenderMode:t="default",stickyHeader:n=!1}=this.options;return Yi({fileOrDiff:e,mode:t,stickyHeader:n})}renderFullHTML(e){return pe(this.renderFullAST(e))}renderFullAST(e,t=[]){return t.push(A({tagName:"code",children:this.renderCodeAST(e),properties:{"data-code":""}})),{...e.preAST,children:t}}renderCodeAST(e){const t=Ee();return t.children=e.gutterAST,t.properties.style=`grid-row: span ${e.rowCount}`,[t,er(e.contentAST,e.rowCount)]}renderPartialHTML(e,t=!1){return t?pe(A({tagName:"code",children:e,properties:{"data-code":""}})):pe(e)}async initializeHighlighter(){return this.highlighter=await xt(un(this.computedLang,this.options)),this.highlighter}onHighlightSuccess(e,t,n,i=!0){if(this.renderCache==null)return;const r=!ae(e,this.renderCache.file)||!this.renderCache.highlighted||!Oe(n,this.renderCache.options);this.renderCache={file:e,options:n,highlighted:i,result:t,renderRange:void 0},r&&this.onRenderUpdate?.()}getMatchingWorkerResultCache(e,t){const n=this.workerManager?.getFileResultCache(e);if(!(n==null||!Oe(t,n.options)))return n}hasHighlightedRenderCache(e,t){const{renderCache:n}=this;return n?.result!=null&&n.highlighted&&ae(e,n.file)&&Oe(t,n.options)}onHighlightError(e){console.error(e)}getTokenizeMaxLength(){return this.options.tokenizeMaxLength??1e5}createPreElement(e){const{disableLineNumbers:t=!1,overflow:n="scroll"}=this.options;return Xi({type:"file",diffIndicators:"none",disableBackground:!0,disableLineNumbers:t,overflow:n,split:!1,totalLines:e})}};function Pt(e,t){return e>t}const nr=``;function ps(e,t){return e.lineNumber===t.lineNumber&&e.metadata===t.metadata}function ir(e,t){return e==null||t==null?e===t:gs(e.customProperties,t.customProperties)&&e.type===t.type&&e.diffIndicators===t.diffIndicators&&e.disableBackground===t.disableBackground&&e.disableLineNumbers===t.disableLineNumbers&&e.overflow===t.overflow&&e.split===t.split&&e.totalLines===t.totalLines}const _n={};function gs(e=_n,t=_n){if(e===t)return!0;const n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;for(const r of n)if(e[r]!==t[r])return!1;return!0}function pn(e){const t=document.createElement("div");return t.dataset.annotationSlot="",t.slot=e,t.style.whiteSpace="normal",t}function rr(){const e=document.createElement("div");return e.slot="gutter-utility-slot",e.style.position="absolute",e.style.top="0",e.style.bottom="0",e.style.textAlign="center",e.style.whiteSpace="normal",e.style.touchAction="none",e}function or(){const e=document.createElement("style");return e.setAttribute(Ri,""),e}var sr=`@layer base { - :host { - --diffs-font-fallback: "SF Mono", Monaco, Consolas, "Ubuntu Mono", "Liberation Mono", - "Courier New", monospace; - --diffs-header-font-fallback: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", - "Noto Sans", "Liberation Sans", Arial, sans-serif; - --diffs-mixer: light-dark(#000, #fff); - --diffs-gap-fallback: 8px; - --diffs-scrollbar-gutter-fallback: 6px; - --diffs-scrollbar-gutter: var(--diffs-scrollbar-gutter-override, var(--diffs-scrollbar-gutter-measured, var(--diffs-scrollbar-gutter-fallback))); - --diffs-added-light: #0dbe4e; - --diffs-added-dark: #5ecc71; - --diffs-modified-light: #009fff; - --diffs-modified-dark: #69b1ff; - --diffs-deleted-light: #ff2e3f; - --diffs-deleted-dark: #ff6762; - color-scheme: light dark; - font-family: var(--diffs-header-font-family, var(--diffs-header-font-fallback)); - font-size: var(--diffs-font-size, 13px); - line-height: var(--diffs-line-height, 20px); - font-feature-settings: var(--diffs-font-features); - --diffs-bg: light-dark(var(--diffs-light-bg, #fff), var(--diffs-dark-bg, #000)); - --diffs-bg-buffer: var(--diffs-bg-buffer-override, light-dark(color-mix(in lab, var(--diffs-bg) 92%, var(--diffs-mixer)), color-mix(in lab, var(--diffs-bg) 92%, var(--diffs-mixer)))); - --diffs-bg-context: var(--diffs-bg-context-override, light-dark(color-mix(in lab, var(--diffs-bg) 98.5%, var(--diffs-mixer)), color-mix(in lab, var(--diffs-bg) 92.5%, var(--diffs-mixer)))); - --diffs-bg-context-gutter: var(--diffs-bg-context-gutter-override, light-dark(color-mix(in lab, var(--diffs-bg-context) 90%, var(--diffs-bg)), color-mix(in lab, var(--diffs-bg-context) 45%, var(--diffs-bg)))); - --diffs-bg-separator: var(--diffs-bg-separator-override, light-dark(color-mix(in lab, var(--diffs-bg) 96%, var(--diffs-mixer)), color-mix(in lab, var(--diffs-bg) 85%, var(--diffs-mixer)))); - --diffs-fg: light-dark(var(--diffs-light, #000), var(--diffs-dark, #fff)); - --diffs-fg-number: var(--diffs-fg-number-override, light-dark(color-mix(in lab, var(--diffs-fg) 65%, var(--diffs-bg)), color-mix(in lab, var(--diffs-fg) 65%, var(--diffs-bg)))); - --diffs-fg-conflict-marker: var(--diffs-fg-conflict-marker-override, var(--diffs-fg-number)); - --diffs-deletion-base: var(--diffs-deletion-color-override, light-dark(var(--diffs-light-deletion-color, var(--diffs-deletion-color, var(--diffs-deleted-light))), var(--diffs-dark-deletion-color, var(--diffs-deletion-color, var(--diffs-deleted-dark))))); - --diffs-addition-base: var(--diffs-addition-color-override, light-dark(var(--diffs-light-addition-color, var(--diffs-addition-color, var(--diffs-added-light))), var(--diffs-dark-addition-color, var(--diffs-addition-color, var(--diffs-added-dark))))); - --diffs-modified-base: var(--diffs-modified-color-override, light-dark(var(--diffs-light-modified-color, var(--diffs-modified-color, var(--diffs-modified-light))), var(--diffs-dark-modified-color, var(--diffs-modified-color, var(--diffs-modified-dark))))); - --diffs-bg-deletion: var(--diffs-bg-deletion-override, light-dark(color-mix(in lab, var(--diffs-bg) 88%, var(--diffs-deletion-base)), color-mix(in lab, var(--diffs-bg) 80%, var(--diffs-deletion-base)))); - --diffs-bg-deletion-emphasis: var(--diffs-bg-deletion-emphasis-override, light-dark(rgb(from var(--diffs-deletion-base) r g b / .15), rgb(from var(--diffs-deletion-base) r g b / .2))); - --diffs-bg-addition: var(--diffs-bg-addition-override, light-dark(color-mix(in lab, var(--diffs-bg) 88%, var(--diffs-addition-base)), color-mix(in lab, var(--diffs-bg) 80%, var(--diffs-addition-base)))); - --diffs-bg-addition-emphasis: var(--diffs-bg-addition-emphasis-override, light-dark(rgb(from var(--diffs-addition-base) r g b / .15), rgb(from var(--diffs-addition-base) r g b / .2))); - --diffs-selection-base: var(--diffs-modified-base); - --diffs-selection-number-fg: light-dark(color-mix(in lab, var(--diffs-selection-base) 65%, var(--diffs-mixer)), color-mix(in lab, var(--diffs-selection-base) 75%, var(--diffs-mixer))); - background-color: var(--diffs-bg); - color: var(--diffs-fg); - display: block; - } - - pre, code, [data-error-wrapper] { - isolation: isolate; - font-family: var(--diffs-font-family, var(--diffs-font-fallback)); - outline: none; - margin: 0; - padding: 0; - display: block; - } - - pre, code { - background-color: var(--diffs-bg); - } - - code { - contain: content; - } - - *, :before, :after { - box-sizing: border-box; - } - - [data-icon-sprite] { - display: none; - } - - [data-diffs-header], [data-separator] { - font-family: var(--diffs-header-font-family, var(--diffs-header-font-fallback)); - } - - [data-diffs-header][data-sticky] { - z-index: 1; - background-color: var(--diffs-bg); - position: sticky; - top: 0; - } - - [data-file-info] { - color: var(--fg); - background-color: color-mix(in lab, var(--bg) 98%, var(--fg)); - border-block: 1px solid color-mix(in lab, var(--bg) 95%, var(--fg)); - padding: 10px; - font-weight: 700; - } - - [data-diff], [data-file] { - --diffs-grid-number-column-width: minmax(min-content, max-content); - --diffs-code-grid: var(--diffs-grid-number-column-width) 1fr; - - &[data-dehydrated] { - --diffs-code-grid: var(--diffs-grid-number-column-width) minmax(0, 1fr); - } - - &:hover [data-code]::-webkit-scrollbar-thumb { - background-color: var(--diffs-bg-context); - } - } - - @supports (-webkit-touch-callout: none) { - :host { - --diffs-scrollbar-gutter-fallback: 0px; - } - } - - [data-line] span { - color: light-dark(var(--diffs-token-light, var(--diffs-light)), var(--diffs-token-dark, var(--diffs-dark))); - background-color: light-dark(var(--diffs-token-light-bg, inherit), var(--diffs-token-dark-bg, inherit)); - font-weight: light-dark(var(--diffs-token-light-font-weight, inherit), var(--diffs-token-dark-font-weight, inherit)); - font-style: light-dark(var(--diffs-token-light-font-style, inherit), var(--diffs-token-dark-font-style, inherit)); - text-decoration: light-dark(var(--diffs-token-light-text-decoration, inherit), var(--diffs-token-dark-text-decoration, inherit)); - } - - [data-line], [data-gutter-buffer], [data-column-number], [data-line-annotation], [data-no-newline], [data-merge-conflict], [data-merge-conflict-actions] { - --diffs-computed-decoration-bg: var(--diffs-bg); - --diffs-computed-diff-line-bg: var(--diffs-bg); - --diffs-computed-selected-line-bg: var(--diffs-bg); - color: var(--diffs-fg); - background-color: var(--diffs-line-bg, var(--diffs-bg)); - - @media (pointer: fine) { - &:where([data-hovered]) { - --diffs-computed-hovered-line-bg: light-dark(color-mix(in lab, - var(--diffs-computed-selected-line-bg) 97%, - var(--diffs-bg-hover-override, var(--diffs-mixer))), color-mix(in lab, - var(--diffs-computed-selected-line-bg) 91%, - var(--diffs-bg-hover-override, var(--diffs-mixer)))); - --diffs-line-bg: var(--diffs-computed-hovered-line-bg, inherit); - } - } - } - - [data-line], [data-no-newline] { - &[data-decoration-bg] { - --mix-deco-light: 92%; - --mix-deco-dark: 85%; - - &[data-decoration-bg-depth="2"] { - --mix-deco-light: 88%; - --mix-deco-dark: 80%; - } - - &[data-decoration-bg-depth="3"] { - --mix-deco-light: 85%; - --mix-deco-dark: 78%; - } - - @media (pointer: fine) { - &[data-hovered]:not([data-selected-line]) { - --mix-deco-light: 85%; - --mix-deco-dark: 85%; - } - - &[data-hovered]:not([data-selected-line])[data-decoration-bg-depth="2"] { - --mix-deco-light: 83%; - --mix-deco-dark: 83%; - } - - &[data-hovered]:not([data-selected-line])[data-decoration-bg-depth="3"] { - --mix-deco-light: 81%; - --mix-deco-dark: 81%; - } - } - - --diffs-computed-decoration-bg: light-dark(color-mix(in lab, - var(--diffs-bg) var(--mix-deco-light), - var(--diffs-decoration-bg)), color-mix(in lab, - var(--diffs-bg) var(--mix-deco-dark), - var(--diffs-decoration-bg))); - --diffs-computed-diff-line-bg: var(--diffs-computed-decoration-bg); - --diffs-computed-selected-line-bg: var(--diffs-computed-decoration-bg); - --diffs-line-bg: var(--diffs-computed-decoration-bg); - } - } - - [data-line-annotation], [data-gutter-buffer="annotation"] { - --diffs-annotation-bg: var(--diffs-bg-context); - --diffs-computed-decoration-bg: var(--diffs-annotation-bg); - --diffs-computed-diff-line-bg: var(--diffs-annotation-bg); - --diffs-computed-selected-line-bg: var(--diffs-annotation-bg); - --diffs-line-bg: var(--diffs-annotation-bg); - } - - [data-merge-conflict-actions], [data-gutter-buffer="merge-conflict-action"], [data-gutter-buffer="merge-conflict-marker-base"], [data-gutter-buffer="merge-conflict-marker-separator"], [data-merge-conflict="marker-base"], [data-merge-conflict="marker-separator"] { - --diffs-computed-decoration-bg: var(--diffs-bg-context); - --diffs-computed-diff-line-bg: var(--diffs-bg-context); - --diffs-computed-selected-line-bg: var(--diffs-bg-context); - --diffs-line-bg: var(--diffs-bg-context); - } - - [data-gutter-buffer="merge-conflict-marker-start"], [data-merge-conflict="marker-start"] { - --diffs-computed-decoration-bg: light-dark(color-mix(in lab, - var(--diffs-bg) 78%, - var(--conflict-bg-current-header-override, var(--diffs-addition-base))), color-mix(in lab, - var(--diffs-bg) 68%, - var(--conflict-bg-current-header-override, var(--diffs-addition-base)))); - --diffs-computed-diff-line-bg: var(--diffs-computed-decoration-bg); - --diffs-computed-selected-line-bg: var(--diffs-computed-decoration-bg); - --diffs-line-bg: var(--diffs-computed-decoration-bg); - } - - [data-gutter-buffer="merge-conflict-marker-end"], [data-merge-conflict="marker-end"] { - --diffs-computed-decoration-bg: light-dark(color-mix(in lab, - var(--diffs-bg) 78%, - var(--conflict-bg-incoming-header-override, var(--diffs-modified-base))), color-mix(in lab, - var(--diffs-bg) 68%, - var(--conflict-bg-incoming-header-override, var(--diffs-modified-base)))); - --diffs-computed-diff-line-bg: var(--diffs-computed-decoration-bg); - --diffs-computed-selected-line-bg: var(--diffs-computed-decoration-bg); - --diffs-line-bg: var(--diffs-computed-decoration-bg); - } - - [data-has-merge-conflict] [data-line-annotation], [data-has-merge-conflict] [data-gutter-buffer="annotation"] { - --diffs-computed-decoration-bg: var(--diffs-bg); - --diffs-computed-diff-line-bg: var(--diffs-bg); - --diffs-computed-selected-line-bg: var(--diffs-bg); - --diffs-line-bg: var(--diffs-bg); - } - - :where([data-background]) { - & [data-gutter-buffer], & [data-column-number] { - --mix-light: 91%; - --mix-dark: 85%; - } - - & [data-line], & [data-no-newline] { - --mix-light: 88%; - --mix-dark: 80%; - } - - & [data-gutter-buffer], & [data-column-number], & [data-line], & [data-no-newline] { - --diffs-diff-line-mix-target: var(--diffs-bg); - - &[data-line-type="change-deletion"] { - --diffs-diff-line-mix-target: var(--diffs-bg-deletion-override, var(--diffs-deletion-base)); - - @media (pointer: fine) { - &[data-hovered] { - --mix-light: 80%; - --mix-dark: 75%; - } - } - - &:where([data-gutter-buffer], [data-column-number]) { - color: var(--diffs-fg-number-deletion-override, var(--diffs-deletion-base)); - --diffs-diff-line-mix-target: var(--diffs-bg-deletion-number-override, var(--diffs-deletion-base)); - } - - --diffs-computed-diff-line-bg: light-dark(color-mix(in lab, - var(--diffs-computed-decoration-bg) var(--mix-light), - var(--diffs-diff-line-mix-target)), color-mix(in lab, - var(--diffs-computed-decoration-bg) var(--mix-dark), - var(--diffs-diff-line-mix-target))); - --diffs-computed-selected-line-bg: var(--diffs-computed-diff-line-bg); - --diffs-line-bg: var(--diffs-computed-diff-line-bg, inherit); - } - - &[data-line-type="change-addition"] { - --diffs-diff-line-mix-target: var(--diffs-bg-addition-override, var(--diffs-addition-base)); - - @media (pointer: fine) { - &[data-hovered] { - --mix-light: 80%; - --mix-dark: 70%; - } - } - - &:where([data-gutter-buffer], [data-column-number]) { - color: var(--diffs-fg-number-addition-override, var(--diffs-addition-base)); - --diffs-diff-line-mix-target: var(--diffs-bg-addition-number-override, var(--diffs-addition-base)); - } - - --diffs-computed-diff-line-bg: light-dark(color-mix(in lab, - var(--diffs-computed-decoration-bg) var(--mix-light), - var(--diffs-diff-line-mix-target)), color-mix(in lab, - var(--diffs-computed-decoration-bg) var(--mix-dark), - var(--diffs-diff-line-mix-target))); - --diffs-computed-selected-line-bg: var(--diffs-computed-diff-line-bg); - --diffs-line-bg: var(--diffs-computed-diff-line-bg, inherit); - } - - &[data-merge-conflict="current"] { - --diffs-diff-line-mix-target: var(--conflict-bg-current-override, var(--diffs-addition-base)); - - &:where([data-gutter-buffer], [data-column-number]) { - color: var(--diffs-fg-number-addition-override, var(--diffs-addition-base)); - --diffs-diff-line-mix-target: var(--conflict-bg-current-number-override, var(--diffs-addition-base)); - } - - @media (pointer: fine) { - &[data-hovered] { - --mix-light: 80%; - --mix-dark: 70%; - } - } - - --diffs-computed-diff-line-bg: light-dark(color-mix(in lab, - var(--diffs-computed-decoration-bg) var(--mix-light), - var(--diffs-diff-line-mix-target)), color-mix(in lab, - var(--diffs-computed-decoration-bg) var(--mix-dark), - var(--diffs-diff-line-mix-target))); - --diffs-computed-selected-line-bg: var(--diffs-computed-diff-line-bg); - --diffs-line-bg: var(--diffs-computed-diff-line-bg, inherit); - } - - &[data-merge-conflict="incoming"] { - --diffs-diff-line-mix-target: var(--conflict-bg-incoming-override, var(--diffs-modified-base)); - - &:where([data-gutter-buffer], [data-column-number]) { - color: var(--diffs-modified-base); - --diffs-diff-line-mix-target: var(--conflict-bg-incoming-number-override, var(--diffs-modified-base)); - } - - @media (pointer: fine) { - &[data-hovered] { - --mix-light: 80%; - --mix-dark: 70%; - } - } - - --diffs-computed-diff-line-bg: light-dark(color-mix(in lab, - var(--diffs-computed-decoration-bg) var(--mix-light), - var(--diffs-diff-line-mix-target)), color-mix(in lab, - var(--diffs-computed-decoration-bg) var(--mix-dark), - var(--diffs-diff-line-mix-target))); - --diffs-computed-selected-line-bg: var(--diffs-computed-diff-line-bg); - --diffs-line-bg: var(--diffs-computed-diff-line-bg, inherit); - } - } - } - - [data-gutter-buffer], [data-column-number], [data-line], [data-line-annotation], [data-merge-conflict], [data-merge-conflict-actions], [data-no-newline] { - --diffs-selection-mix-target: var(--diffs-bg-selection-override, var(--diffs-selection-base)); - - &:where([data-line], [data-line-annotation], [data-merge-conflict], [data-merge-conflict-actions], [data-no-newline])[data-selected-line] { - --mix-selection-light: 82%; - --mix-selection-dark: 75%; - - @media (pointer: fine) { - &[data-hovered]:not([data-merge-conflict], [data-line-type="change-addition"], [data-line-type="change-deletion"]) { - --mix-selection-light: 75%; - --mix-selection-dark: 70%; - } - } - } - - &:where([data-gutter-buffer], [data-column-number])[data-selected-line] { - --mix-selection-light: 75%; - --mix-selection-dark: 60%; - --diffs-selection-mix-target: var(--diffs-bg-selection-number-override, var(--diffs-selection-base)); - - @media (pointer: fine) { - &[data-hovered]:not([data-merge-conflict], [data-line-type="change-addition"], [data-line-type="change-deletion"]) { - --mix-selection-light: 70%; - --mix-selection-dark: 55%; - } - } - } - - &[data-selected-line] { - --diffs-computed-selected-line-bg: light-dark(color-mix(in lab, - var(--diffs-computed-diff-line-bg) var(--mix-selection-light), - var(--diffs-selection-mix-target)), color-mix(in lab, - var(--diffs-computed-diff-line-bg) var(--mix-selection-dark), - var(--diffs-selection-mix-target))); - --diffs-line-bg: var(--diffs-computed-selected-line-bg, inherit); - } - } - - [data-gutter-buffer], [data-column-number] { - &[data-selected-line] { - color: var(--diffs-selection-number-fg); - } - } - - [data-no-newline] { - user-select: none; - - & span { - opacity: .6; - } - } - - [data-diff-type="split"][data-overflow="scroll"] { - grid-template-columns: 1fr 1fr; - display: grid; - - & [data-additions] { - border-left: 1px solid var(--diffs-bg); - } - - & [data-deletions] { - border-right: 1px solid var(--diffs-bg); - } - } - - [data-code] { - grid-auto-flow: dense; - grid-template-columns: var(--diffs-code-grid); - overflow: var(--diffs-overflow-override, scroll) clip; - overscroll-behavior-x: none; - tab-size: var(--diffs-tab-size, 2); - padding-top: var(--diffs-gap-block, var(--diffs-gap-fallback)); - padding-bottom: max(0px, - calc(var(--diffs-gap-block, var(--diffs-gap-fallback)) - - var(--diffs-scrollbar-gutter))); - scrollbar-gutter: stable; - align-self: flex-start; - display: grid; - } - - [data-diffs-scrollbar-measure] { - opacity: 0; - pointer-events: none; - scrollbar-gutter: auto; - grid-template-columns: none; - width: 100px; - height: 100px; - padding: 0; - position: absolute; - top: -200px; - left: -200px; - } - - [data-container-size] { - container-type: inline-size; - } - - [data-code]::-webkit-scrollbar { - width: 0; - height: var(--diffs-scrollbar-gutter); - } - - [data-code]::-webkit-scrollbar-track { - background: none; - } - - [data-code]::-webkit-scrollbar-thumb { - background-color: #0000; - background-clip: content-box; - border: 1px solid #0000; - border-radius: 3px; - } - - [data-code]::-webkit-scrollbar-corner { - background-color: #0000; - } - - @supports ((-moz-appearance: none)) { - [data-code] { - scrollbar-width: thin; - scrollbar-color: var(--diffs-bg-context) transparent; - padding-bottom: var(--diffs-gap-block, var(--diffs-gap-fallback)); - } - } - - [data-diffs-header] ~ [data-diff], [data-diffs-header] ~ [data-file] { - & [data-code], &[data-overflow="wrap"] { - padding-top: 0; - } - } - - [data-gutter] { - grid-template-rows: subgrid; - grid-template-columns: subgrid; - z-index: 3; - background-color: var(--diffs-bg); - grid-column: 1; - display: grid; - position: relative; - - & [data-gutter-buffer], & [data-column-number] { - border-right: var(--diffs-gap-style, 2px solid var(--diffs-bg)); - } - } - - [data-content] { - grid-template-rows: subgrid; - grid-template-columns: subgrid; - background-color: var(--diffs-bg); - grid-column: 2; - min-width: 0; - display: grid; - } - - [data-diff-type="split"][data-overflow="wrap"] { - grid-auto-flow: dense; - grid-template-columns: repeat(2, var(--diffs-code-grid)); - padding-block: var(--diffs-gap-block, var(--diffs-gap-fallback)); - display: grid; - - & [data-deletions] { - display: contents; - - & [data-gutter] { - grid-column: 1; - } - - & [data-content] { - border-right: 1px solid var(--diffs-bg); - grid-column: 2; - } - } - - & [data-additions] { - display: contents; - - & [data-gutter] { - border-left: 1px solid var(--diffs-bg); - grid-column: 3; - } - - & [data-content] { - grid-column: 4; - } - } - } - - [data-overflow="scroll"] [data-gutter] { - position: sticky; - left: 0; - } - - [data-interactive-lines] [data-line] { - cursor: pointer; - } - - [data-interactive-line-numbers] [data-column-number] { - cursor: pointer; - touch-action: none; - } - - [data-content-buffer], [data-gutter-buffer] { - user-select: none; - min-height: 1lh; - position: relative; - } - - [data-gutter-buffer] { - padding-left: 2ch; - padding-right: 1ch; - - &:before { - content: ""; - min-width: var(--diffs-min-number-column-width, var(--diffs-min-number-column-width-default, 3ch)); - display: block; - } - } - - [data-gutter-buffer="annotation"] { - --diffs-annotation-bg: var(--diffs-bg-context-gutter); - min-height: 0; - } - - [data-gutter-buffer="buffer"] { - --diffs-line-bg: var(--diffs-bg-context-gutter); - } - - [data-content-buffer] { - background-position: 5px 0; - background-size: 8px 8px; - background-origin: border-box; - background-image: repeating-linear-gradient(-45deg, - transparent, - transparent calc(3px * 1.414), - var(--diffs-bg-buffer) calc(3px * 1.414), - var(--diffs-bg-buffer) calc(4px * 1.414)); - grid-column: 1; - } - - [data-separator] { - box-sizing: content-box; - background-color: var(--diffs-bg); - } - - [data-separator="simple"] { - min-height: 4px; - } - - [data-separator="line-info"], [data-separator="line-info-basic"], [data-separator="metadata"], [data-separator="simple"] { - background-color: var(--diffs-bg-separator); - } - - [data-separator="line-info"], [data-separator="line-info-basic"], [data-separator="metadata"] { - height: 32px; - position: relative; - } - - [data-separator-wrapper] { - user-select: none; - fill: currentColor; - background-color: var(--diffs-bg); - align-items: center; - height: 100%; - display: flex; - position: absolute; - inset-inline: 0; - } - - [data-content] [data-separator-wrapper] { - display: none; - } - - [data-separator="metadata"] [data-separator-wrapper] { - background-color: var(--diffs-bg-separator); - height: 100%; - color: var(--diffs-fg-number); - white-space: nowrap; - text-overflow: ellipsis; - min-width: min-content; - padding-inline: 1ch; - inset-inline: 100% auto; - overflow: hidden; - } - - [data-separator="line-info"] { - margin-block: var(--diffs-gap-block, var(--diffs-gap-fallback)); - - & [data-separator-wrapper] { - min-width: 16px; - } - } - - [data-separator="line-info-basic"], [data-separator="metadata"] { - margin-block: 0; - } - - [data-separator="line-info"][data-separator-first] { - margin-top: 0; - } - - [data-separator="line-info"][data-separator-last] { - margin-bottom: 0; - } - - [data-expand-index] [data-separator-wrapper] { - grid-template-columns: 32px auto; - display: grid; - } - - [data-expand-index] [data-separator-wrapper][data-separator-multi-button] { - grid-template-columns: 32px 32px auto; - } - - [data-expand-button], [data-separator-content] { - background-color: var(--diffs-bg-separator); - flex: none; - align-items: center; - display: flex; - } - - [data-expand-index] [data-separator-content]:hover { - cursor: pointer; - text-decoration: underline; - } - - [data-expand-button] { - cursor: pointer; - min-width: 32px; - color: var(--diffs-fg-number); - border-right: 2px solid var(--diffs-bg); - flex-shrink: 0; - justify-content: center; - align-self: stretch; - - &:hover { - color: var(--diffs-fg); - } - - &[data-expand-all-button] { - display: none; - } - } - - [data-expand-down] [data-icon] { - transform: scaleY(-1); - } - - [data-separator-content] { - height: 100%; - color: var(--diffs-fg-number); - flex: auto; - justify-content: flex-start; - padding: 0 1ch; - overflow: hidden; - } - - [data-separator="line-info"], [data-separator="line-info-basic"] { - & [data-separator-content] { - user-select: none; - height: 100%; - overflow: clip; - } - } - - [data-unmodified-lines] { - text-overflow: ellipsis; - white-space: nowrap; - flex: 0 auto; - min-width: 0; - display: block; - overflow: hidden; - } - - @supports (width: 1cqi) { - [data-unified] { - & [data-separator="line-info"] [data-separator-wrapper] { - padding-inline: var(--diffs-gap-inline, var(--diffs-gap-fallback)); - width: 100cqi; - - & [data-separator-content] { - border-radius: 6px; - } - } - - & [data-separator="line-info"][data-expand-index] [data-separator-wrapper] [data-separator-content] { - border-top-left-radius: unset; - border-bottom-left-radius: unset; - } - } - - [data-gutter] { - & [data-separator="line-info"] [data-separator-wrapper] { - padding-left: var(--diffs-gap-inline, var(--diffs-gap-fallback)); - } - - & [data-separator="line-info"] [data-separator-content] { - border-top-left-radius: 6px; - border-bottom-left-radius: 6px; - } - - & [data-separator="line-info"][data-expand-index] [data-separator-content] { - border-top-left-radius: unset; - border-bottom-left-radius: unset; - } - } - - [data-additions] { - & [data-content] [data-separator="line-info"] { - background-color: var(--diffs-bg); - - & [data-separator-wrapper] { - display: none; - } - } - - & [data-gutter] [data-separator="line-info"] [data-separator-wrapper] { - background-color: var(--diffs-bg-separator); - border-top-right-radius: 6px; - border-bottom-right-radius: 6px; - height: 100%; - display: block; - - & [data-separator-content], & [data-expand-button] { - display: none; - } - } - } - - [data-overflow="scroll"] [data-additions] [data-gutter] [data-separator="line-info"] [data-separator-wrapper] { - width: calc(100cqi - var(--diffs-gap-inline, var(--diffs-gap-fallback))); - } - - [data-overflow="wrap"] [data-additions] [data-content] [data-separator="line-info"] [data-separator-wrapper] { - background-color: var(--diffs-bg-separator); - height: 100%; - margin-right: var(--diffs-gap-inline, var(--diffs-gap-fallback)); - border-top-right-radius: 6px; - border-bottom-right-radius: 6px; - display: block; - - & [data-separator-content], & [data-expand-button] { - display: none; - } - } - - [data-separator="line-info"] [data-separator-wrapper] { - & [data-expand-both], & [data-expand-down], & [data-expand-up] { - border-top-left-radius: 6px; - border-bottom-left-radius: 6px; - } - } - - @media (pointer: fine) { - [data-separator="line-info"] [data-separator-wrapper] { - &[data-separator-multi-button] { - & [data-expand-up] { - border-top-left-radius: 6px; - border-bottom-left-radius: unset; - } - - & [data-expand-down] { - border-bottom-left-radius: 6px; - border-top-left-radius: unset; - } - } - } - } - } - - @media (pointer: coarse) { - [data-separator="line-info-basic"] [data-separator-wrapper][data-separator-multi-button] { - grid-template-columns: 34px 34px auto; - - & [data-separator-content] { - grid-column: unset; - grid-row: unset; - } - } - - @supports (width: 1cqi) { - [data-separator="line-info"] [data-separator-wrapper] { - & [data-expand-both], & [data-expand-down], & [data-expand-up] { - border-top-left-radius: 6px; - border-bottom-left-radius: 6px; - } - - &[data-separator-multi-button] { - & [data-expand-up] { - border-top-left-radius: 6px; - border-bottom-left-radius: 6px; - } - - & [data-expand-down] { - border-bottom-left-radius: unset; - border-top-left-radius: unset; - } - } - } - } - } - - @media (pointer: fine) { - [data-separator-wrapper][data-separator-multi-button] { - grid-template-rows: 50% 50%; - display: grid; - - & [data-separator-content] { - grid-area: 1 / 2 / -1; - min-width: min-content; - } - - & [data-expand-button] { - grid-column: 1; - } - } - - [data-separator="line-info"] [data-separator-wrapper], [data-separator="line-info"] [data-separator-wrapper][data-separator-multi-button] { - grid-template-columns: 34px auto; - } - - [data-separator="line-info-basic"][data-expand-index] [data-separator-wrapper] { - grid-template-columns: 100% auto; - } - - [data-separator="line-info"], [data-separator="line-info-basic"] { - & [data-separator-multi-button] { - & [data-expand-up] { - border-bottom: 1px solid var(--diffs-bg); - border-right: 2px solid var(--diffs-bg); - } - - & [data-expand-down] { - border-top: 1px solid var(--diffs-bg); - border-right: 2px solid var(--diffs-bg); - } - } - } - } - - [data-additions] [data-gutter] [data-separator-wrapper], [data-additions] [data-separator="line-info-basic"] [data-separator-wrapper], [data-content] [data-separator-wrapper] { - display: none; - } - - [data-line-annotation] { - min-height: var(--diffs-annotation-min-height, 0); - z-index: 2; - } - - [data-merge-conflict-actions] { - z-index: 2; - } - - [data-separator="custom"] { - grid-template-columns: subgrid; - display: grid; - } - - [data-line], [data-column-number], [data-no-newline] { - padding-inline: 1ch; - position: relative; - } - - [data-indicators="classic"] [data-line] { - padding-inline-start: 2ch; - } - - [data-indicators="classic"] { - & [data-line-type="change-addition"], & [data-line-type="change-deletion"] { - &[data-no-newline], &[data-line] { - &:before { - user-select: none; - width: 1ch; - height: 1lh; - display: inline-block; - position: absolute; - top: 0; - left: 0; - } - } - } - - & [data-line-type="change-addition"] { - &[data-line], &[data-no-newline] { - &:before { - content: "+"; - color: var(--diffs-addition-base); - } - } - } - - & [data-line-type="change-deletion"] { - &[data-line], &[data-no-newline] { - &:before { - content: "-"; - color: var(--diffs-deletion-base); - } - } - } - } - - [data-indicators="bars"] { - & [data-line-type="change-deletion"], & [data-line-type="change-addition"] { - &[data-column-number] { - &:before { - content: ""; - user-select: none; - contain: strict; - width: 4px; - height: 100%; - display: block; - position: absolute; - top: 0; - left: 0; - } - } - } - - & [data-line-type="change-deletion"] { - &[data-column-number] { - &:before { - background-image: linear-gradient(0deg, - var(--diffs-bg-deletion) 50%, - var(--diffs-deletion-base) 50%); - background-repeat: repeat; - background-size: 2px 2px; - background-size: calc(1lh / round(1lh / 2px)) - calc(1lh / round(1lh / 2px)); - } - } - } - - & [data-line-type="change-addition"] { - &[data-column-number] { - &:before { - background-color: var(--diffs-addition-base); - } - } - } - } - - [data-overflow="wrap"] { - & [data-line], & [data-annotation-content] { - white-space: pre-wrap; - word-break: break-word; - } - } - - [data-overflow="scroll"] [data-line] { - white-space: pre; - min-height: 1lh; - } - - [data-column-number] { - box-sizing: content-box; - text-align: right; - user-select: none; - color: var(--diffs-fg-number); - padding-left: 2ch; - } - - [data-line-number-content] { - min-width: var(--diffs-min-number-column-width, var(--diffs-min-number-column-width-default, 3ch)); - z-index: 1; - display: inline-block; - position: relative; - } - - [data-disable-line-numbers] { - & [data-gutter-buffer], & [data-column-number] { - min-width: 4px; - padding: 0; - - &:before { - min-width: 0; - } - } - - & [data-line-number-content] { - display: none; - } - - & [data-gutter-utility-slot] { - right: unset; - justify-content: flex-start; - left: 0; - } - - &[data-indicators="bars"] [data-gutter-utility-slot] { - left: 6px; - } - } - - [data-file][data-disable-line-numbers] { - & [data-gutter-buffer], & [data-column-number] { - border-right: 0; - min-width: 0; - } - } - - [data-diff-span] { - box-decoration-break: clone; - border-radius: 3px; - } - - [data-line-type="change-addition"] [data-diff-span] { - background-color: var(--diffs-bg-addition-emphasis); - } - - [data-line-type="change-deletion"] [data-diff-span] { - background-color: var(--diffs-bg-deletion-emphasis); - } - - [data-merge-conflict="marker-start"], [data-merge-conflict="marker-base"], [data-merge-conflict="marker-separator"], [data-merge-conflict="marker-end"] { - color: var(--diffs-fg); - padding-left: 1ch; - } - - [data-merge-conflict="marker-start"], [data-merge-conflict="marker-end"] { - align-items: center; - display: flex; - - &:after { - color: var(--diffs-fg-conflict-marker); - font-size: .75rem; - font-style: normal; - line-height: 1.25rem; - font-family: var(--diffs-header-font-family, var(--diffs-header-font-fallback)); - padding-left: 1ch; - } - } - - [data-merge-conflict="marker-start"]:after { - content: "(Current Change)"; - } - - [data-merge-conflict="marker-end"]:after { - content: "(Incoming Change)"; - } - - [data-merge-conflict-actions-content] { - min-height: 1.75rem; - font-family: var(--diffs-header-font-family, var(--diffs-header-font-fallback)); - color: var(--diffs-fg); - align-items: center; - gap: .25rem; - padding-inline: .5rem; - font-size: .75rem; - line-height: 1.2; - display: flex; - } - - [data-merge-conflict-action] { - appearance: none; - color: var(--diffs-fg-number); - font: inherit; - cursor: pointer; - background: none; - border: 0; - padding: 0; - font-style: normal; - } - - [data-merge-conflict-action]:hover { - color: var(--diffs-fg); - } - - [data-merge-conflict-action="current"]:hover { - color: var(--diffs-addition-base); - } - - [data-merge-conflict-action="incoming"]:hover { - color: var(--diffs-modified-base); - } - - [data-merge-conflict-action-separator] { - color: var(--diffs-fg-number); - opacity: .6; - user-select: none; - } - - [data-diffs-header="default"] { - background-color: var(--diffs-bg); - justify-content: space-between; - align-items: center; - gap: var(--diffs-gap-inline, var(--diffs-gap-fallback)); - min-height: calc(1lh + (var(--diffs-gap-block, var(--diffs-gap-fallback)) * 3)); - z-index: 2; - flex-direction: row; - padding-inline: 16px; - display: flex; - position: relative; - top: 0; - } - - [data-header-content] { - align-items: center; - gap: var(--diffs-gap-inline, var(--diffs-gap-fallback)); - white-space: nowrap; - flex-direction: row; - min-width: 0; - display: flex; - } - - [data-header-content] [data-prev-name], [data-header-content] [data-title] { - text-overflow: ellipsis; - white-space: nowrap; - direction: rtl; - min-width: 0; - overflow: hidden; - } - - [data-prev-name] { - opacity: .7; - } - - [data-rename-icon] { - fill: currentColor; - flex-grow: 0; - flex-shrink: 0; - } - - [data-diffs-header="default"] [data-metadata] { - white-space: nowrap; - align-items: center; - gap: 1ch; - display: flex; - } - - [data-diffs-header="default"] [data-additions-count] { - font-family: var(--diffs-font-family, var(--diffs-font-fallback)); - color: var(--diffs-addition-base); - } - - [data-diffs-header="default"] [data-deletions-count] { - font-family: var(--diffs-font-family, var(--diffs-font-fallback)); - color: var(--diffs-deletion-base); - } - - [data-change-icon] { - fill: currentColor; - flex-shrink: 0; - } - - [data-change-icon="change"], [data-change-icon="rename-pure"], [data-change-icon="rename-changed"] { - color: var(--diffs-modified-base); - } - - [data-change-icon="new"] { - color: var(--diffs-addition-base); - } - - [data-change-icon="deleted"] { - color: var(--diffs-deletion-base); - } - - [data-change-icon="file"] { - opacity: .6; - } - - [data-annotation-content] { - z-index: 2; - isolation: isolate; - align-self: flex-start; - min-width: 0; - display: flow-root; - position: relative; - } - - [data-overflow="scroll"] [data-annotation-content], [data-overflow="scroll"] [data-merge-conflict-actions-content] { - width: var(--diffs-column-content-width, auto); - left: var(--diffs-column-number-width, 0); - position: sticky; - } - - [data-annotation-slot] { - text-wrap-mode: wrap; - word-break: normal; - white-space-collapse: collapse; - } - - [data-gutter-utility-slot] { - touch-action: none; - justify-content: flex-end; - display: flex; - position: absolute; - top: 0; - bottom: 0; - right: 0; - } - - [data-utility-button] { - appearance: none; - cursor: pointer; - width: 1lh; - height: 1lh; - font-size: var(--diffs-font-size, 13px); - line-height: var(--diffs-line-height, 20px); - background-color: var(--diffs-modified-base); - color: var(--diffs-bg); - fill: currentColor; - z-index: 4; - touch-action: none; - border: none; - border-radius: 4px; - justify-content: center; - align-items: center; - margin-right: calc(-1lh + 1ch); - padding: 0; - display: flex; - position: relative; - - &:before { - content: ""; - display: block; - position: absolute; - inset: 0 0 0 -4px; - } - } - - [data-decoration-bar-stack] { - pointer-events: none; - isolation: isolate; - z-index: 1; - background-color: var(--diffs-decoration-bar-color, transparent); - box-sizing: content-box; - border-left: 2px solid var(--diffs-bg); - border-right: 2px solid var(--diffs-bg); - width: 6px; - position: absolute; - top: 0; - bottom: 0; - right: -2px; - - [data-decoration-bar-depth="1"] & { - background-color: color-mix(in lab, - var(--diffs-bg) 20%, - var(--diffs-decoration-bar-color, transparent)); - } - - [data-decoration-bar-depth="2"] & { - background-color: color-mix(in lab, - var(--diffs-bg) 45%, - var(--diffs-decoration-bar-color, transparent)); - } - - [data-decoration-bar-depth="3"] & { - background-color: color-mix(in lab, - var(--diffs-bg) 65%, - var(--diffs-decoration-bar-color, transparent)); - } - - [data-decoration-bar-start] & { - border-top-left-radius: 5px; - border-top-right-radius: 5px; - } - - [data-decoration-bar-end] & { - z-index: 3; - border-bottom-right-radius: 5px; - border-bottom-left-radius: 5px; - } - } - - [data-placeholder] { - contain: strict; - } - - [data-error-wrapper] { - padding: var(--diffs-gap-block, var(--diffs-gap-fallback)) - var(--diffs-gap-inline, var(--diffs-gap-fallback)); - scrollbar-width: none; - max-height: 400px; - overflow: auto; - - & [data-error-message] { - color: var(--diffs-deletion-base); - font-size: 18px; - font-weight: bold; - } - - & [data-error-stack] { - color: var(--diffs-fg-number); - } - } -} - -@layer theme, rendered, unsafe; -`;let nt;function Me(e){if(nt!=null)return nt;const t=e.host;if(typeof HTMLElement<"u"&&t instanceof HTMLElement&&!t.isConnected)return;const n=document.createElement("div");n.setAttribute("data-code",""),n.setAttribute(Jr,"true");const i=document.createElement("div");return i.style.position="relative",i.style.width="200%",i.style.height="200%",n.appendChild(i),e.appendChild(n),nt=Math.max(n.offsetHeight-n.clientHeight,0),n.remove(),nt}function ar(e){return`${Ai}: ${e==null?"var(--diffs-scrollbar-gutter-fallback)":`${e}px`};`}const gn="@layer base, theme, rendered, unsafe;",ms=new RegExp(`${bs(Ai)}\\s*:\\s*[^;]+;`);function vs(e){return`${gn} -${sr} -@layer theme { - ${e} -}`}function mn(e){return`${gn} -@layer unsafe { - ${e} -}`}function vn(e,t="system",n){return`${gn} -@layer rendered { - :host {${t==="system"?"":` - color-scheme: ${t};`} - ${ar(n)} - ${e} - } -}`}function lr(e,t){const n=ar(t);return e.replace(ms,n)}function bs(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function je({code:e,pre:t,columnType:n,rowSpan:i,containerSize:r=!1}={}){return e==null&&(e=document.createElement("code"),e.setAttribute("data-code",""),n!=null&&e.setAttribute(`data-${n}`,""),t?.appendChild(e)),i!=null?e.style.setProperty("grid-row",`span ${i}`):e.style.removeProperty("grid-row"),r?e.setAttribute("data-container-size",""):e.removeAttribute("data-container-size"),e}function dr(e,t){if(t==null)return;const n=e.shadowRoot??e.attachShadow({mode:"open"});n.innerHTML===""&&(n.innerHTML=t)}function bn(e,{type:t,diffIndicators:n,disableBackground:i,disableLineNumbers:r,overflow:o,split:s,totalLines:l,customProperties:a}){if(a!=null)for(const d in a){const h=a[d];h!=null&&e.setAttribute(d,`${h}`)}switch(t==="diff"?(e.setAttribute("data-diff",""),e.removeAttribute("data-file")):(e.setAttribute("data-file",""),e.removeAttribute("data-diff")),n){case"bars":case"classic":e.setAttribute("data-indicators",n);break;case"none":e.removeAttribute("data-indicators");break}return r?e.setAttribute("data-disable-line-numbers",""):e.removeAttribute("data-disable-line-numbers"),i?e.removeAttribute("data-background"):e.setAttribute("data-background",""),t==="diff"?e.setAttribute("data-diff-type",s?"split":"single"):e.removeAttribute("data-diff-type"),e.setAttribute("data-overflow",o),e.style.setProperty("--diffs-min-number-column-width-default",`${`${l}`.length}ch`),e}function Xe(e){if(typeof HTMLStyleElement<"u"&&e instanceof HTMLStyleElement)return!0;const t=e.tagName??e.nodeName;return typeof t=="string"&&t.toLowerCase()==="style"}function On(e){return{theme:e?.theme,disableLineNumbers:e?.disableLineNumbers,overflow:e?.overflow,themeType:e?.themeType,collapsed:e?.collapsed,disableFileHeader:e?.disableFileHeader,disableVirtualizationBuffers:e?.disableVirtualizationBuffers,stickyHeader:e?.stickyHeader,preferredHighlighter:e?.preferredHighlighter,useCSSClasses:e?.useCSSClasses,useTokenTransformer:e?.useTokenTransformer,tokenizeMaxLineLength:e?.tokenizeMaxLineLength,tokenizeMaxLength:e?.tokenizeMaxLength,unsafeCSS:e?.unsafeCSS,headerRenderMode:e?.renderCustomHeader!=null?"custom":"default"}}function Cn({shadowRoot:e,currentNode:t,themeCSS:n}){if(n.trim()===""){t?.remove();return}return t??=Cs(),t.textContent=n,t.parentNode!==e&&e.appendChild(t),t}function Cs(){const e=document.createElement("style");return e.setAttribute(Ii,""),e}if(typeof HTMLElement<"u"&&customElements.get("diffs-container")==null){let e;class t extends HTMLElement{constructor(){if(super(),this.shadowRoot!=null)return;const i=this.attachShadow({mode:"open"});e==null&&(e=new CSSStyleSheet,e.replaceSync(sr)),i.adoptedStyleSheets=[e]}connectedCallback(){Me(this.shadowRoot??this.attachShadow({mode:"open"}))}}customElements.define(Ei,t)}const Ss=[];let ys=-1;var xs=class{options;workerManager;isContainerManaged;static LoadedCustomComponent=!0;__id=`file:${++ys}`;type="file";fileContainer;spriteSVG;pre;code;bufferBefore;bufferAfter;themeCSSStyle;appliedThemeCSS;hasAdoptedThemeCSS=!1;unsafeCSSStyle;appliedUnsafeCSS;gutterUtilityContent;errorWrapper;placeHolder;lastRenderedHeaderHTML;cachedHeaderHTML;appliedPreAttributes;lastRowCount;mounted=!1;headerElement;headerCustom;headerPrefix;headerMetadata;fileRenderer;resizeManager;interactionManager;annotationCache=new Map;lineAnnotations=[];managersDirty=!1;file;renderRange;enabled=!0;constructor(e={theme:_},t,n=!1){this.options=e,this.workerManager=t,this.isContainerManaged=n,this.fileRenderer=new fs(e,this.handleHighlightRender,this.workerManager),this.resizeManager=new _i,this.interactionManager=new Pi("file",Ke(e)),this.workerManager?.subscribeToThemeChanges(this)}handleHighlightRender=()=>{this.rerender()};rerender(){!this.enabled||this.file==null||this.render({file:this.file,forceRender:!0,renderRange:this.renderRange})}onThemeChange(){this.fileRenderer.clearRenderCache(),this.rerender()}setOptions(e){e!=null&&(this.options=e,this.cachedHeaderHTML=void 0,this.syncInteractionOptions())}syncInteractionOptions(){this.interactionManager.setOptions(Ke(this.options))}mergeOptions(e){this.options={...this.options,...e}}setThemeType(e){(this.options.themeType??"system")!==e&&(this.mergeOptions({themeType:e}),this.applyCachedThemeState(e))}applyCachedThemeState(e){if(typeof this.options.theme=="string"||this.fileContainer==null||this.appliedThemeCSS==null)return!1;const t=this.appliedThemeCSS.baseThemeType??e;return this.appliedThemeCSS.themeType===t?!1:(this.applyThemeState(this.fileContainer,this.appliedThemeCSS.themeStyles,e,this.appliedThemeCSS.baseThemeType),!0)}hasThemeChanged(){return this.appliedThemeCSS!=null&&!De(this.appliedThemeCSS.theme,this.options.theme??_)}getHoveredLine=()=>this.interactionManager.getHoveredLine();setLineAnnotations(e){this.lineAnnotations=e}setSelectedLines(e,t){this.interactionManager.setSelection(e,t)}flushManagers(){if(!this.managersDirty||this.pre==null){this.managersDirty=!1;return}const{overflow:e="scroll"}=this.options;this.interactionManager.setup(this.pre),this.resizeManager.setup(this.pre,e==="wrap"),this.managersDirty=!1}cleanUp(e=!1){this.emitPostRender(!0),this.resizeManager.cleanUp(),this.interactionManager.cleanUp(),this.managersDirty=!1,this.workerManager?.unsubscribeToThemeChanges(this),this.renderRange=void 0,this.isContainerManaged||this.fileContainer?.remove(),this.fileContainer=void 0,this.mounted=!1,e||(this.lineAnnotations=[]),this.annotationCache.clear(),this.pre=void 0,this.bufferBefore=void 0,this.bufferAfter=void 0,this.appliedPreAttributes=void 0,this.lastRowCount=void 0,this.headerElement=void 0,this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0,this.lastRenderedHeaderHTML=void 0,e||(this.cachedHeaderHTML=void 0),this.errorWrapper=void 0,this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0,this.hasAdoptedThemeCSS=!1,this.unsafeCSSStyle=void 0,this.appliedUnsafeCSS=void 0,this.placeHolder=void 0,this.unsafeCSSStyle=void 0,e?this.fileRenderer.recycle():(this.fileRenderer.cleanUp(),this.workerManager=void 0,this.file=void 0),this.enabled=!1}virtualizedSetup(){this.enabled=!0,this.workerManager?.subscribeToThemeChanges(this)}hydrate(e){const{fileContainer:t,prerenderedHTML:n,preventEmit:i=!1,file:r,lineAnnotations:o}=e;this.hydrateElements(t,n),Ls(this.pre,r,this.options.collapsed)||ks(this.headerElement,r,this.options.disableFileHeader)?this.render({...e,preventEmit:!0}):this.hydrationSetup({file:r,lineAnnotations:o}),i||this.emitPostRender()}hydrateElements(e,t){this.fileContainer!==e&&this.emitPostRender(!0),dr(e,t);for(const n of Array.from(e.shadowRoot?.children??[])){if(n instanceof SVGElement){this.spriteSVG=n;continue}if(n instanceof HTMLElement){if(n instanceof HTMLPreElement){this.pre=n,this.appliedPreAttributes=void 0;continue}if(n instanceof HTMLStyleElement&&n.hasAttribute("data-theme-css")){this.themeCSSStyle=n;continue}if(n instanceof HTMLStyleElement&&n.hasAttribute("data-unsafe-css")){this.unsafeCSSStyle=n,this.appliedUnsafeCSS=n.textContent;continue}if("diffsHeader"in n.dataset){this.headerElement=n,this.lastRenderedHeaderHTML=void 0;continue}}}this.pre!=null&&(this.syncCodeNodeFromPre(this.pre),this.pre.removeAttribute("data-dehydrated")),this.fileContainer=e,this.hydrateMeasuredScrollbar()}hydrationSetup({file:e,lineAnnotations:t}){this.lineAnnotations=t??this.lineAnnotations,this.file=e,this.fileRenderer.setOptions(On(this.options)),this.syncInteractionOptions(),this.pre!=null&&(this.fileRenderer.hydrate(e),this.renderAnnotations(),this.renderGutterUtility(),this.injectUnsafeCSS(),this.managersDirty=!0,this.flushManagers())}getOrCreateLineCache(e=this.file){return e!=null?this.fileRenderer.getOrCreateLineCache(e):Ss}render({file:e,fileContainer:t,forceRender:n=!1,preventEmit:i=!1,containerWrapper:r,deferManagers:o=!1,lineAnnotations:s,renderRange:l}){const{collapsed:a=!1,themeType:d="system"}=this.options;if(!this.enabled)throw new Error("File.render: attempting to call render after cleaned up");const h=a?void 0:l,c=this.renderRange,u=this.hasThemeChanged(),f=s!=null&&(s.length>0||this.lineAnnotations.length>0)?s!==this.lineAnnotations:!1,g=!ae(this.file,e);if(!a&&!n&&Lt(h,this.renderRange)&&!g&&!f&&!u)return this.applyCachedThemeState(d);this.renderRange=h,g&&(this.cachedHeaderHTML=void 0),this.file=e,this.fileRenderer.setOptions(On(this.options)),this.syncInteractionOptions(),s!=null&&this.setLineAnnotations(s),this.fileRenderer.setLineAnnotations(this.lineAnnotations);const{disableErrorHandling:b=!1,disableFileHeader:y=!1}=this.options;if(y&&(this.headerElement!=null&&(this.headerElement.remove(),this.headerElement=void 0,this.lastRenderedHeaderHTML=void 0),this.clearHeaderSlots()),t=this.getOrCreateFileContainerNode(t,r),this.applyCachedThemeState(d),a){this.removeRenderedCode(),this.clearAuxiliaryNodes();try{const m=this.fileRenderer.renderFile(e,Hi);m!=null&&this.applyThemeState(t,m.themeStyles,d,m.baseThemeType),m?.headerAST!=null&&this.applyHeaderToDOM(m.headerAST,t),this.injectUnsafeCSS()}catch(m){if(b)throw m;console.error(m),m instanceof Error&&this.applyErrorToDOM(m,t)}return i||this.emitPostRender(),!0}try{const m=this.getOrCreatePreNode(t);if(!this.canPartiallyRender(n,f,g||u)||!this.applyPartialRender(c,h)){const p=this.fileRenderer.renderFile(e,h);if(p==null)return this.workerManager?.isInitialized()===!1&&this.workerManager.initialize().then(()=>this.rerender()),!1;this.applyThemeState(t,p.themeStyles,d,p.baseThemeType),p.headerAST!=null&&this.applyHeaderToDOM(p.headerAST,t),this.applyFullRender(p,m)}this.applyBuffers(m,h),this.injectUnsafeCSS(),this.managersDirty=!0,o||this.flushManagers(),this.renderAnnotations(),this.renderGutterUtility()}catch(m){if(b)throw m;console.error(m),m instanceof Error&&this.applyErrorToDOM(m,t)}return i||this.emitPostRender(),!0}emitPostRender(e=!1){const{fileContainer:t,options:{onPostRender:n}}=this;if(e){if(!this.mounted||(this.mounted=!1,t==null))return;n?.(t,this,"unmount");return}if(t==null)return;const i=this.mounted?"update":"mount";this.mounted=!0,n?.(t,this,i)}removeRenderedCode(){this.resizeManager.cleanUp(),this.interactionManager.cleanUp(),this.bufferBefore?.remove(),this.bufferBefore=void 0,this.bufferAfter?.remove(),this.bufferAfter=void 0,this.code?.remove(),this.code=void 0,this.pre?.remove(),this.pre=void 0,this.appliedPreAttributes=void 0,this.lastRowCount=void 0}clearAuxiliaryNodes(){for(const{element:e}of this.annotationCache.values())e.remove();this.annotationCache.clear(),this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0}canPartiallyRender(e,t,n){return!(e||t||n)}renderPlaceholder(e){if(this.fileContainer==null)return!1;if(this.emitPostRender(!0),this.cleanChildNodes(),this.placeHolder==null){const t=this.fileContainer.shadowRoot??this.fileContainer.attachShadow({mode:"open"});this.placeHolder=document.createElement("div"),this.placeHolder.dataset.placeholder="",t.appendChild(this.placeHolder)}return this.placeHolder.style.setProperty("height",`${e}px`),!0}primeHighlightCache(){const{file:e,workerManager:t}=this;e==null||e.cacheKey==null||t==null||Qt(e)||this.fileRenderer.getOrCreateLineCache(e).length>(this.options.tokenizeMaxLength??1e5)||t.primeFileHighlightCache(e)}cleanChildNodes(){this.resizeManager.cleanUp(),this.interactionManager.cleanUp(),this.bufferAfter?.remove(),this.bufferBefore?.remove(),this.code?.remove(),this.errorWrapper?.remove(),this.headerElement?.remove(),this.gutterUtilityContent?.remove(),this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerCustom?.remove(),this.pre?.remove(),this.spriteSVG?.remove(),this.themeCSSStyle?.remove(),this.unsafeCSSStyle?.remove(),this.bufferAfter=void 0,this.bufferBefore=void 0,this.code=void 0,this.errorWrapper=void 0,this.headerElement=void 0,this.gutterUtilityContent=void 0,this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0,this.pre=void 0,this.spriteSVG=void 0,this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0,this.hasAdoptedThemeCSS=!1,this.unsafeCSSStyle=void 0,this.appliedUnsafeCSS=void 0,this.lastRenderedHeaderHTML=void 0,this.lastRowCount=void 0,this.mounted=!1}renderAnnotations(){if(this.isContainerManaged||this.fileContainer==null){for(const{element:n}of this.annotationCache.values())n.remove();this.annotationCache.clear();return}const e=new Map(this.annotationCache),{renderAnnotation:t}=this.options;if(t!=null&&this.lineAnnotations.length>0)for(const[n,i]of this.lineAnnotations.entries()){const r=`${n}-${ge(i)}`;let o=this.annotationCache.get(r);if(o==null||!ps(i,o.annotation)){o?.element.remove();const s=t(i);if(s==null)continue;o={element:pn(ge(i)),annotation:i},o.element.appendChild(s),this.fileContainer.appendChild(o.element),this.annotationCache.set(r,o)}e.delete(r)}for(const[n,{element:i}]of e.entries())this.annotationCache.delete(n),i.remove()}renderGutterUtility(){const{renderGutterUtility:e}=this.options;if(this.fileContainer==null||e==null){this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0;return}const t=e(this.interactionManager.getHoveredLine);if(t!=null&&this.gutterUtilityContent!=null)return;if(t==null){this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0;return}const n=rr();n.appendChild(t),this.fileContainer.appendChild(n),this.gutterUtilityContent=n}injectUnsafeCSS(){const{unsafeCSS:e}=this.options,t=this.fileContainer?.shadowRoot;if(t!=null){if(e==null||e===""){this.unsafeCSSStyle!=null&&(this.unsafeCSSStyle.remove(),this.unsafeCSSStyle=void 0),this.appliedUnsafeCSS=void 0;return}this.unsafeCSSStyle?.parentNode===t&&this.appliedUnsafeCSS===e||(this.unsafeCSSStyle??=or(),this.unsafeCSSStyle.parentNode!==t&&t.appendChild(this.unsafeCSSStyle),this.unsafeCSSStyle.textContent=mn(e),this.appliedUnsafeCSS=e)}}applyThemeState(e,t,n,i){const r=e.shadowRoot??e.attachShadow({mode:"open"}),o=i??n,s=this.options.theme??_,l=typeof s=="string"?s:{...s},a=Me(r);if(this.themeCSSStyle?.parentNode===r&&this.appliedThemeCSS?.themeStyles===t&&this.appliedThemeCSS.themeType===o&&this.appliedThemeCSS.scrollbarGutter===a){this.appliedThemeCSS.theme=l;return}if(this.hasAdoptedThemeCSS&&this.themeCSSStyle?.parentNode===r){this.hasAdoptedThemeCSS=!1,this.appliedThemeCSS={theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a};return}this.themeCSSStyle=Cn({shadowRoot:r,currentNode:this.themeCSSStyle,themeCSS:vn(t,o,a)}),this.appliedThemeCSS=this.themeCSSStyle!=null?{theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a}:void 0}hydrateMeasuredScrollbar(){const e=this.fileContainer?.shadowRoot;e==null||this.themeCSSStyle==null||(this.themeCSSStyle.textContent=lr(this.themeCSSStyle.textContent??"",Me(e)))}applyFullRender(e,t){this.cleanupErrorWrapper(),this.applyPreNodeAttributes(t,e),this.code=je({code:this.code}),this.code.innerHTML=this.fileRenderer.renderPartialHTML(this.fileRenderer.renderCodeAST(e)),t.replaceChildren(this.code),this.lastRowCount=e.rowCount}applyPartialRender(e,t){if(e==null||t==null)return!1;const{file:n,code:i}=this,r=i!=null?this.getColumns(i):void 0;if(n==null||i==null||r==null)return!1;const o=e.startingLine,s=t.startingLine,l=e.totalLines===1/0?Number.POSITIVE_INFINITY:o+e.totalLines,a=t.totalLines===1/0?Number.POSITIVE_INFINITY:s+t.totalLines,d=Math.max(o,s),h=Math.min(l,a);if(h<=d||!this.trimDOMToOverlap(r.gutter,d,h)||!this.trimDOMToOverlap(r.content,d,h))return!1;let{length:c}=r.content.children;const u=(y,m)=>{if(!(m<=0))return this.fileRenderer.renderFile(n,{startingLine:y,totalLines:m,bufferBefore:0,bufferAfter:0})},f=sh?u(h,g):void 0;return b===void 0&&a>h?!1:(this.cleanupErrorWrapper(),f!=null&&(r.gutter.insertAdjacentHTML("afterbegin",this.fileRenderer.renderPartialHTML(f.gutterAST)),r.content.insertAdjacentHTML("afterbegin",this.fileRenderer.renderPartialHTML(f.contentAST)),c+=f.rowCount),b!=null&&(r.gutter.insertAdjacentHTML("beforeend",this.fileRenderer.renderPartialHTML(b.gutterAST)),r.content.insertAdjacentHTML("beforeend",this.fileRenderer.renderPartialHTML(b.contentAST)),c+=b.rowCount),this.lastRowCount!==c&&(r.gutter.style.setProperty("grid-row",`span ${c}`),r.content.style.setProperty("grid-row",`span ${c}`),this.lastRowCount=c),!0)}getColumns(e){const t=e.children[0],n=e.children[1];if(!(!(t instanceof HTMLElement)||!(n instanceof HTMLElement)||t.dataset.gutter==null||n.dataset.content==null))return{gutter:t,content:n}}trimDOMToOverlap(e,t,n){const i=this.getDOMBoundaryIndices(e,[t,n]),r=i.get(t)??e.children.length,o=i.get(n)??e.children.length;if(r>o)return!1;for(let s=e.children.length-1;s>=o;s-=1)e.children[s]?.remove();for(let s=r-1;s>=0;s-=1)e.children[s]?.remove();return!0}getDOMBoundaryIndices(e,t){const n=[...new Set(t)].sort((l,a)=>l-a),i=new Map;if(n.length===0)return i;let r=0,o=n[r];const{children:s}=e;o===0&&(i.set(0,0),r+=1,o=n[r]);for(let l=0;l=o;)i.set(o,l),r+=1,o=n[r];if(r>=n.length)break}}for(const l of n)i.has(l)||i.set(l,s.length);return i}getLineIndexFromDOMNode(e){const t=e.dataset.lineIndex;if(t==null)return;const n=Number(t);return Number.isNaN(n)?void 0:n}applyBuffers(e,t){if(t==null||this.shouldDisableVirtualizationBuffers()){this.bufferBefore!=null&&(this.bufferBefore.remove(),this.bufferBefore=void 0),this.bufferAfter!=null&&(this.bufferAfter.remove(),this.bufferAfter=void 0);return}t.bufferBefore>0?(this.bufferBefore==null&&(this.bufferBefore=document.createElement("div"),this.bufferBefore.dataset.virtualizerBuffer="before",e.before(this.bufferBefore)),this.bufferBefore.style.setProperty("height",`${t.bufferBefore}px`),this.bufferBefore.style.setProperty("contain","strict")):this.bufferBefore!=null&&(this.bufferBefore.remove(),this.bufferBefore=void 0),t.bufferAfter>0?(this.bufferAfter==null&&(this.bufferAfter=document.createElement("div"),this.bufferAfter.dataset.virtualizerBuffer="after",e.after(this.bufferAfter)),this.bufferAfter.style.setProperty("height",`${t.bufferAfter}px`),this.bufferAfter.style.setProperty("contain","strict")):this.bufferAfter!=null&&(this.bufferAfter.remove(),this.bufferAfter=void 0)}shouldDisableVirtualizationBuffers(){return this.options.disableVirtualizationBuffers??!1}applyHeaderToDOM(e,t){const{file:n}=this;if(n==null)return;this.cleanupErrorWrapper(),this.placeHolder?.remove(),this.placeHolder=void 0;const i=this.cachedHeaderHTML??pe(e);if(this.cachedHeaderHTML=i,i!==this.lastRenderedHeaderHTML){const l=document.createElement("div");l.innerHTML=i;const a=l.firstElementChild;if(!(a instanceof HTMLElement))return;this.headerElement!=null?t.shadowRoot?.replaceChild(a,this.headerElement):t.shadowRoot?.prepend(a),this.headerElement=a,this.lastRenderedHeaderHTML=i}if(this.isContainerManaged)return;const{renderHeaderPrefix:r,renderCustomHeader:o,renderHeaderMetadata:s}=this.options;if(o!=null){const l=o(n)??void 0;this.headerCustom=this.upsertHeaderSlotElement(t,this.headerCustom,an,l),this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerPrefix=void 0,this.headerMetadata=void 0}else{const l=r?.(n)??void 0,a=s?.(n)??void 0;this.headerPrefix=this.upsertHeaderSlotElement(t,this.headerPrefix,on,l),this.headerMetadata=this.upsertHeaderSlotElement(t,this.headerMetadata,sn,a),this.headerCustom?.remove(),this.headerCustom=void 0}}clearHeaderSlots(){this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerCustom?.remove(),this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0}upsertHeaderSlotElement(e,t,n,i){if(i==null){t?.remove();return}const r=t??this.createHeaderSlotElement(n);return t==null&&e.appendChild(r),this.replaceHeaderSlotContent(r,i),r}replaceHeaderSlotContent(e,t){e.replaceChildren(),t instanceof Element?e.appendChild(t):e.innerText=`${t}`}createHeaderSlotElement(e){const t=document.createElement("div");return t.slot=e,t}getOrCreateFileContainerNode(e,t){const{fileContainer:n}=this,i=e??n??document.createElement("diffs-container"),r=n!==i;return r&&this.emitPostRender(!0),this.fileContainer=i,n!=null&&r&&(this.lastRenderedHeaderHTML=void 0,this.headerElement=void 0),t!=null&&this.fileContainer.parentNode!==t&&t.appendChild(this.fileContainer),r&&this.adoptReusableShellElements(this.fileContainer),this.ensureSpriteSVG(this.fileContainer),this.fileContainer}adoptReusableShellElements(e){const{shadowRoot:t}=e;if(t!=null)for(const n of t.children)n instanceof SVGElement?this.spriteSVG??=n:Xe(n)&&n.hasAttribute("data-theme-css")?(this.themeCSSStyle??=n,this.hasAdoptedThemeCSS=!0):Xe(n)&&n.hasAttribute("data-unsafe-css")&&(this.unsafeCSSStyle??=n,this.appliedUnsafeCSS??=this.options.unsafeCSS??void 0)}ensureSpriteSVG(e){const t=e.shadowRoot??e.attachShadow({mode:"open"});if(this.spriteSVG==null){const n=document.createElement("div");n.innerHTML=nr;const i=n.firstChild;i instanceof SVGElement&&(this.spriteSVG=i)}this.spriteSVG!=null&&this.spriteSVG.parentNode!==t&&t.appendChild(this.spriteSVG)}getOrCreatePreNode(e){const t=e.shadowRoot??e.attachShadow({mode:"open"});return this.pre==null?(this.pre=document.createElement("pre"),this.appliedPreAttributes=void 0,this.code=void 0,t.appendChild(this.pre)):this.pre.parentNode!==t&&(e.shadowRoot?.appendChild(this.pre),this.appliedPreAttributes=void 0),this.placeHolder?.remove(),this.placeHolder=void 0,this.pre}syncCodeNodeFromPre(e){this.code=void 0;for(const t of Array.from(e.children))if(t instanceof HTMLElement&&t.hasAttribute("data-code")){this.code=t;return}}applyPreNodeAttributes(e,{totalLines:t}){const{overflow:n="scroll",disableLineNumbers:i=!1}=this.options,r={type:"file",split:!1,overflow:n,disableLineNumbers:i,diffIndicators:"none",disableBackground:!0,totalLines:t};ir(r,this.appliedPreAttributes)||(bn(e,r),this.appliedPreAttributes=r)}applyErrorToDOM(e,t){this.cleanupErrorWrapper(),this.pre?.remove(),this.pre=void 0,this.appliedPreAttributes=void 0;const n=t.shadowRoot??t.attachShadow({mode:"open"});this.errorWrapper??=document.createElement("div"),this.errorWrapper.dataset.errorWrapper="",this.errorWrapper.textContent="",n.appendChild(this.errorWrapper);const i=document.createElement("div");i.dataset.errorMessage="",i.innerText=e.message,this.errorWrapper.appendChild(i);const r=document.createElement("pre");r.dataset.errorStack="",r.innerText=e.stack??"No Error Stack",this.errorWrapper.appendChild(r)}cleanupErrorWrapper(){this.errorWrapper?.remove(),this.errorWrapper=void 0}};function Ls(e,t,n=!1){return!n&&e==null&&t!=null}function ks(e,t,n=!1){return e==null&&t!=null&&!n}function _t(e){return{...ln,...e}}function se(e,t){const n=ws(e,t);return t?n:e.diffHeaderHeight+n}function ws(e,t){return e.paddingTop??(t?e.spacing:0)}function yt(e){return e.paddingBottom??e.spacing}function Es(e){switch(e){case"simple":return 4;case"metadata":case"line-info":case"line-info-basic":case"custom":return 32}}const Ts=5e3;let Is=-1;function Rs(e,t){return(e.overflow??"scroll")!==(t.overflow??"scroll")||(e.collapsed??!1)!==(t.collapsed??!1)||(e.disableLineNumbers??!1)!==(t.disableLineNumbers??!1)||(e.disableFileHeader??!1)!==(t.disableFileHeader??!1)||e.unsafeCSS!==t.unsafeCSS}var As=class extends xs{virtualizer;metrics;__id=`virtualized-file:${++Is}`;top;height=0;cache={heights:new Map,checkpoints:[],fileAnnotationHeight:0};isVisible=!1;isSetup=!1;layoutDirty=!0;forceRenderOverride;currentCollapsed;constructor(e,t,n=ln,i,r=!1){super(e,i,r),this.virtualizer=t,this.metrics=n}setMetrics(e,t=!1){!t&&He(this.metrics,e)||(this.metrics=e,this.resetLayoutCache())}setLineAnnotations(e){this.syncLineAnnotations(e)&&this.resetLayoutCache()}syncLineAnnotations(e){return e==null||e===this.lineAnnotations||e.length===0&&this.lineAnnotations.length===0?!1:(super.setLineAnnotations(e),!0)}hasLineAnnotations(){return this.lineAnnotations.some(e=>e.lineNumber>0)}getLineHeight(e,t=!1){const n=this.cache.heights.get(e);if(n!=null)return n;const i=t?2:1;return this.metrics.lineHeight*i}setOptions(e){if(this.isAdvancedMode())throw new Error("VirtualizedFile.setOptions cannot be used inside CodeView. Update CodeView options instead.");if(e==null)return;const{options:t}=this,n=!dn(t,e),i=Rs(t,e);super.setOptions(e),i&&this.resetLayoutCache(!0),n&&(this.forceRenderOverride=!0),n&&this.virtualizer.instanceChanged(this,i)}setThemeType(e){if(this.isAdvancedMode())throw new Error("VirtualizedFile.setThemeType cannot be used inside CodeView. Update CodeView options instead.");super.setThemeType(e)}resetLayoutCache(e=!1){this.layoutDirty=!0,this.cache.fileAnnotationHeight=0,this.cache.heights.size>0&&this.cache.heights.clear(),this.cache.checkpoints.length>0&&(this.cache.checkpoints.length=0),this.renderRange!=null&&(this.renderRange=void 0),e&&this.isSimpleMode()&&this.computeApproximateSize()}reconcileHeights(){let e=!1;if(this.fileContainer==null||this.file==null)return this.height!==0&&(e=!0),this.height=0,e;const{overflow:t="scroll"}=this.options;if(this.top=this.getVirtualizedTop(),t==="scroll"&&this.lineAnnotations.length===0&&!this.isResizeDebuggingEnabled()||this.code==null)return e;const n=this.code.children[1];if(!(n instanceof HTMLElement))return e;const i=Yt(this.lineAnnotations);if(this.renderRange!=null&&i&&kt(this.renderRange)){const r=Hs(n)??0;r!==this.cache.fileAnnotationHeight&&(this.cache.fileAnnotationHeight=r,e=!0)}else!i&&this.cache.fileAnnotationHeight!==0&&(this.cache.fileAnnotationHeight=0,e=!0);for(const r of n.children){if(!(r instanceof HTMLElement))continue;const o=r.dataset.lineIndex;if(o==null)continue;const s=Number(o);let l=r.getBoundingClientRect().height,a=!1;r.nextElementSibling instanceof HTMLElement&&("lineAnnotation"in r.nextElementSibling.dataset||"noNewline"in r.nextElementSibling.dataset)&&("noNewline"in r.nextElementSibling.dataset&&(a=!0),l+=r.nextElementSibling.getBoundingClientRect().height);const d=this.getLineHeight(s,a);l!==d&&(e=!0,l===this.metrics.lineHeight*(a?2:1)?this.cache.heights.delete(s):this.cache.heights.set(s,l))}return(e||this.isResizeDebuggingEnabled())&&this.computeApproximateSize(!0),e}onRender=e=>this.fileContainer==null||this.file==null?!1:(e&&(this.top=this.getVirtualizedTop()),this.render({file:this.file}));prepareCodeViewItem(e,t,n,i){const r=this.syncLineAnnotations(i);let o=n?.resetFileLayoutCache===!0||r;n?.metrics!=null&&(this.metrics=n.metrics,o=!0);const{collapsed:s=!1}=this.options;return this.currentCollapsed!==s&&(this.currentCollapsed=s,o=!0),o&&this.resetLayoutCache(),this.file!==e&&(this.layoutDirty=!0),this.file=e,this.top=t,this.computeApproximateSize(),this.height}getLinePosition(e){if(this.file==null||e<1)return;const{disableFileHeader:t=!1,collapsed:n=!1}=this.options,i=Nn(this.getOrCreateLineCache(this.file));let r=se(this.metrics,t);if(n||i<0)return{top:r,height:0};const o=Math.min(Math.max(e-1,0),i),{overflow:s="scroll"}=this.options,{lineHeight:l}=this.metrics;if(r+=this.cache.fileAnnotationHeight,s==="scroll"&&!this.hasLineAnnotations())return{top:r+o*l,height:l};const a=this.getLayoutCheckpointBeforeLineIndex(o);r=a?.top??r;for(let d=a?.lineIndex??0;dl?void 0:{lineNumber:u+1,top:o+a+u*h}}let d=o+(s===0?a:this.renderRange.bufferBefore);for(let h=s;h<=l;h++){if(d>=e)return{lineNumber:h+1,top:d};d+=this.getLineHeight(h)}}getVirtualizedHeight(){return this.height}getAdvancedStickySpecs(e){if(this.top==null||this.file==null)return;if(this.options.collapsed===!0)return{topOffset:this.top,height:this.height};const t=e!=null?this.computeRenderRangeFromWindow(this.file,this.top,e):this.renderRange;if(t==null)return;const{bufferBefore:n,bufferAfter:i,totalLines:r}=t;let o=0;if(r===0){const s=e??this.virtualizer.getWindowSpecs();this.top{this.addLayoutCheckpoint(h,this.height),this.height+=this.getLineHeight(h,!1)}}),l.length>0&&(this.height+=d),this.fileContainer!=null&&t&&!n){const h=this.fileContainer.getBoundingClientRect();h.height!==this.height?console.log("VirtualizedFile.computeApproximateSize: computed height doesnt match",{name:this.file.name,elementHeight:h.height,computedHeight:this.height}):console.log("VirtualizedFile.computeApproximateSize: computed height IS CORRECT")}this.layoutDirty=!1}setVisibility(e){this.isAdvancedMode()||this.fileContainer==null||(e&&!this.isVisible?(this.top=this.getVirtualizedTop(),this.isVisible=!0):!e&&this.isVisible&&(this.isVisible=!1,this.rerender()))}rerender(){!this.enabled||this.file==null||(this.forceRenderOverride=!0,this.virtualizer.instanceChanged(this,!1))}render({fileContainer:e,file:t,forceRender:n=!1,lineAnnotations:i,...r}){const{forceRenderOverride:o,isSetup:s}=this;this.forceRenderOverride=void 0;const l=this.syncLineAnnotations(i);if(l&&this.resetLayoutCache(),this.file??=t,e=this.getOrCreateFileContainerNode(e),this.file==null)return console.error("VirtualizedFile.render: attempting to virtually render when we dont have file"),!1;if(s)this.top??=this.getVirtualizedTop();else{this.computeApproximateSize();const c=this.getSimpleVirtualizer();if(this.top??=this.getVirtualizedTop(),this.isAdvancedMode())this.isVisible=!0;else{if(c==null)throw new Error("VirtualizedFile.render: simple virtualizer is not available");c.connect(e,this),this.isVisible=c.isInstanceVisible(this.top??0,this.height)}this.isSetup=!0}if(!this.isVisible&&this.isSimpleMode())return this.renderPlaceholder(this.height);const a=this.virtualizer.getWindowSpecs(),d=this.top??0,h=this.computeRenderRangeFromWindow(this.file,d,a);return super.render({file:this.file,fileContainer:e,renderRange:h,lineAnnotations:i,forceRender:(o??n)||l,...r})}syncVirtualizedTop(){this.top=this.getVirtualizedTop()}shouldDisableVirtualizationBuffers(){return this.isAdvancedMode()||super.shouldDisableVirtualizationBuffers()}isSimpleMode(){return this.virtualizer.type==="simple"}isAdvancedMode(){return this.virtualizer.type==="advanced"}addLayoutCheckpoint(e,t){e%Ts===0&&this.cache.checkpoints.push({lineIndex:e,top:t})}getLayoutCheckpointBeforeLineIndex(e){if(e<=0||this.cache.checkpoints.length===0)return;let t=0,n=this.cache.checkpoints.length-1,i;for(;t<=n;){const r=t+n>>1,o=this.cache.checkpoints[r];if(o==null)throw new Error("VirtualizedFile: invalid checkpoint index");o.lineIndex<=e?(i=o,t=r+1):n=r-1}return i}getLayoutCheckpointBeforeTop(e,t){let n=0,i=this.cache.checkpoints.length-1,r=-1;for(;n<=i;){const o=n+i>>1,s=this.cache.checkpoints[o];if(s==null)throw new Error("VirtualizedFile: invalid checkpoint index");s.top<=e?(r=o,n=o+1):i=o-1}if(t==null)return r>=0?this.cache.checkpoints[r]:void 0;for(let o=r;o>=0;o--){const s=this.cache.checkpoints[o];if(s==null)throw new Error("VirtualizedFile: invalid checkpoint index");if(s.lineIndex%t===0)return s}}getVirtualizedTop(){return this.virtualizer.type==="advanced"?this.virtualizer.getLocalTopForInstance(this):this.fileContainer!=null?this.virtualizer.getOffsetInScrollContainer(this.fileContainer):0}getSimpleVirtualizer(){return this.virtualizer.type==="simple"?this.virtualizer:void 0}isResizeDebuggingEnabled(){return this.getSimpleVirtualizer()?.config.resizeDebugging??!1}computeRenderRangeFromWindow(e,t,{top:n,bottom:i}){const{disableFileHeader:r=!1,overflow:o="scroll"}=this.options,{hunkLineCount:s,lineHeight:l}=this.metrics,a=this.getOrCreateLineCache(e),d=a.length,h=this.height,c=se(this.metrics,r),u=d>0?yt(this.metrics):0,{fileAnnotationHeight:f}=this.cache,g=c+f,b=Math.max(0,h-c-f-u),y=Yt(this.lineAnnotations),m=t+c,p=f>0&&y&&mn;if(ti)return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:h-c-u};if(d<=s)return{startingLine:0,totalLines:s,bufferBefore:0,bufferAfter:0};const C=Math.ceil(Math.max(i-n,0)/l),v=Math.ceil(C/s)*s+s*2,x=v/s,S=(n+i)/2;if(o==="scroll"&&!this.hasLineAnnotations()){const ee=t+g,be=ee+b;if(!p&&!(een))return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:h-c-u};const le=Math.floor(p&&S{const be=H%s===0,le=Math.floor(H/s);if(be&&(E[le]=R-(t+g),M!=null)){if(M<=0)return!0;M--}const q=this.getLineHeight(ee,!1);return R>n-q&&RS&&(T??=le),M==null&&R>=i&&be&&(M=L),H++,R+=q,!1}}),I==null)if(p)I=0,T=0;else return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:h-c-u};T??=I;const N=Math.round(T-x/2),G=Math.max(0,Math.ceil(d/s)-x),D=Math.max(0,Math.min(N,G)),F=D*s,O=N<0?v+N*s:v,J=E[D]??0,me=F===0?0:f+J,ve=D+O/s,Le=ve0&&(f[f.length-1]===` -`||f[f.length-1]==="\r"||f[f.length-1]===`\r -`||f[f.length-1]==="");)f.pop();const{additionStart:v,deletionStart:x}=b;h=d?h:x-1,c=d?c:v-1;const S={collapsedBefore:0,splitLineCount:0,splitLineStart:0,unifiedLineCount:0,unifiedLineStart:0,additionCount:b.additionCount,additionStart:v,additionLines:y,deletionCount:b.deletionCount,deletionStart:x,deletionLines:m,deletionLineIndex:h,additionLineIndex:c,hunkContent:[],hunkContext:Vn(b.hunkContext),hunkSpecs:U(g),noEOFCRAdditions:!1,noEOFCRDeletions:!1};let L=0,E=0;for(let w=1;w=S.additionCount&&E>=S.deletionCount&&!R.startsWith("\\")){if(o&&$s(R)&&!Ws(R))throw Error("parsePatchContent: hunk has more lines than expected");break}const H=R[0];if(H!=="+"&&H!=="-"&&H!==" "&&H!=="\\"){if(o)throw Error("parsePatchContent: invalid hunk line");console.error(`parseLineType: Invalid firstChar: "${H}", full line: "${R}"`),console.error("processFile: invalid rawLine:",R);continue}const I=qs(H);if(I==="addition"){if(o&&L>=S.additionCount)throw Error("parsePatchContent: hunk has too many addition lines");const T=Ot(R);(p==null||p.type!=="change")&&(p=Nt("change",h,c),S.hunkContent.push(p)),c++,L++,d&&a.additionLines.push(T),p.additions++,y++,C="addition"}else if(I==="deletion"){if(o&&E>=S.deletionCount)throw Error("parsePatchContent: hunk has too many deletion lines");const T=Ot(R);(p==null||p.type!=="change")&&(p=Nt("change",h,c),S.hunkContent.push(p)),h++,E++,d&&a.deletionLines.push(T),p.deletions++,m++,C="deletion"}else if(I==="context"){if(o&&(E>=S.deletionCount||L>=S.additionCount))throw Error("parsePatchContent: hunk has too many context lines");const T=Ot(R);(p==null||p.type!=="context")&&(p=Nt("context",h,c),S.hunkContent.push(p)),c++,h++,L++,E++,d&&(a.deletionLines.push(T),a.additionLines.push(T)),p.lines++,C="context"}else if(I==="metadata"&&p!=null){if(p.type==="context"?(S.noEOFCRAdditions=!0,S.noEOFCRDeletions=!0):C==="deletion"?S.noEOFCRDeletions=!0:C==="addition"&&(S.noEOFCRAdditions=!0),d&&(C==="addition"||C==="context")){const T=a.additionLines.length-1;T>=0&&(a.additionLines[T]=xe(a.additionLines[T]))}if(d&&(C==="deletion"||C==="context")){const T=a.deletionLines.length-1;T>=0&&(a.deletionLines[T]=xe(a.deletionLines[T]))}}}if(o&&(L!==S.additionCount||E!==S.deletionCount))throw Error("parsePatchContent: hunk line count mismatch");S.additionLines=y,S.deletionLines=m,S.collapsedBefore=Math.max(S.additionStart-1-s,0),a.hunks.push(S),s=S.additionStart+S.additionCount-1;for(const w of S.hunkContent)w.type==="context"?(S.splitLineCount+=w.lines,S.unifiedLineCount+=w.lines):(S.splitLineCount+=Math.max(w.additions,w.deletions),S.unifiedLineCount+=w.deletions+w.additions);S.splitLineStart=a.splitLineCount+S.collapsedBefore,S.unifiedLineStart=a.unifiedLineCount+S.collapsedBefore,a.splitLineCount+=S.collapsedBefore+S.splitLineCount,a.unifiedLineCount+=S.collapsedBefore+S.unifiedLineCount}if(a!=null){if(o&&d&&!n&&a.hunks.length===0)throw Error("parsePatchContent: unified file has no hunks");if(a.hunks.length>0&&!d&&a.additionLines.length>0&&a.deletionLines.length>0){const u=a.hunks[a.hunks.length-1],f=u.additionStart+u.additionCount-1,g=a.additionLines.length,b=Math.max(g-f,0);a.splitLineCount+=b,a.unifiedLineCount+=b}return n||(a.prevName!=null&&a.name!==a.prevName?a.hunks.length>0?a.type="rename-changed":a.type="rename-pure":(i==null||i.contents==="")&&r!=null&&r.contents!==""?a.type="new":i!=null&&i.contents!==""&&(r==null||r.contents==="")&&(a.type="deleted")),a.type!=="rename-pure"&&a.type!=="rename-changed"&&(a.prevName=void 0),a}}function Fs(e,t,n=!1){const i=[],r=zs(e)?e.split(Wr):[e];for(const o of r)try{i.push(_s(o,t!=null?`${t}-${i.length}`:void 0,n))}catch(s){if(n)throw s;console.error(s)}return i}function zs(e){return e.startsWith("From ")||e.includes(` -From `)}function Fn(e){const t=ur(e);for(let n=0;nn&&t.push(e.slice(n,i)),n=i,s=!0,i=Zt(e,l);continue}if(s&&e.startsWith("@@ -",i)){const d=pr(e.slice(i,l));d!=null&&(r=d.deletionCount,o=d.additionCount)}i=l;continue}const a=e[i];if(a==="\\"){i=l;continue}a===" "?(r=Math.max(r-1,0),o=Math.max(o-1,0)):a==="-"?r=Math.max(r-1,0):a==="+"&&(o=Math.max(o-1,0)),i=l}return t.push(e.slice(n)),t}function Bs(e){return fr(e,0)}function fr(e,t){const n=Zt(e,t);return zn(e,t,"---")&&zn(e,n,"+++")}function zn(e,t,n){if(!e.startsWith(n,t))return!1;const i=e[t+n.length];if(i!==" "&&i!==" ")return!1;for(let r=t+n.length+1;r9)break;i=i*10+r}if(n!==t)return{value:i,endIndex:n}}function Gs(e){return e.endsWith(`\r -`)?e.slice(0,-2):e.endsWith(` -`)?e.slice(0,-1):e}function js(e){return e.startsWith("diff --git")||e.includes(` -diff --git`)}function gr(e,t){if(e.length===0)return[""];const n=` -${t}`,i=e.startsWith(t)?0:Un(e,n,0);if(i===-1)return[e];const r=[];i>0&&r.push(e.slice(0,i));let o=i;for(;;){const s=Un(e,n,o+1);if(s===-1)break;r.push(e.slice(o,s)),o=s}return r.push(e.slice(o)),r}function Un(e,t,n){const i=e.indexOf(t,n);return i===-1?-1:i+1}function Vn(e){return e==null?e:U(e)}function qs(e){return e===" "?"context":e==="\\"?"metadata":e==="+"?"addition":"deletion"}function Ot(e){const t=e.slice(1);return U(t===""?` -`:t)}function Nt(e,t,n){return e==="change"?{type:"change",additions:0,deletions:0,additionLineIndex:n,deletionLineIndex:t}:{type:"context",lines:0,additionLineIndex:n,deletionLineIndex:t}}class Sn{diff(t,n,i={}){let r;typeof i=="function"?(r=i,i={}):"callback"in i&&(r=i.callback);const o=this.castInput(t,i),s=this.castInput(n,i),l=this.removeEmpty(this.tokenize(o,i)),a=this.removeEmpty(this.tokenize(s,i));return this.diffWithOptionsObj(l,a,i,r)}diffWithOptionsObj(t,n,i,r){var o;const s=p=>{if(p=this.postProcess(p,i),r){setTimeout(function(){r(p)},0);return}else return p},l=n.length,a=t.length;let d=1,h=l+a;i.maxEditLength!=null&&(h=Math.min(h,i.maxEditLength));const c=(o=i.timeout)!==null&&o!==void 0?o:1/0,u=Date.now()+c,f=[{oldPos:-1,lastComponent:void 0}];let g=this.extractCommon(f[0],n,t,0,i);if(f[0].oldPos+1>=a&&g+1>=l)return s(this.buildValues(f[0].lastComponent,n,t));let b=-1/0,y=1/0;const m=()=>{for(let p=Math.max(b,-d);p<=Math.min(y,d);p+=2){let C;const v=f[p-1],x=f[p+1];v&&(f[p-1]=void 0);let S=!1;if(x){const E=x.oldPos-p;S=x&&0<=E&&E=a&&g+1>=l)return s(this.buildValues(C.lastComponent,n,t))||!0;f[p]=C,C.oldPos+1>=a&&(y=Math.min(y,p-1)),g+1>=l&&(b=Math.max(b,p+1))}d++};if(r)(function p(){setTimeout(function(){if(d>h||Date.now()>u)return r(void 0);m()||p()},0)})();else for(;d<=h&&Date.now()<=u;){const p=m();if(p)return p}}addToPath(t,n,i,r,o){const s=t.lastComponent;return s&&!o.oneChangePerToken&&s.added===n&&s.removed===i?{oldPos:t.oldPos+r,lastComponent:{count:s.count+1,added:n,removed:i,previousComponent:s.previousComponent}}:{oldPos:t.oldPos+r,lastComponent:{count:1,added:n,removed:i,previousComponent:s}}}extractCommon(t,n,i,r,o){const s=n.length,l=i.length;let a=t.oldPos,d=a-r,h=0;for(;d+1u.length?g:u}),h.value=this.join(c)}else h.value=this.join(n.slice(a,a+h.count));a+=h.count,h.added||(d+=h.count)}}return r}}class Ks extends Sn{}const Ys=new Ks;function Xs(e,t,n){return Ys.diff(e,t,n)}const Bn="a-zA-Z0-9_\\u{AD}\\u{C0}-\\u{D6}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}";class Qs extends Sn{tokenize(t){const n=new RegExp(`(\\r?\\n)|[${Bn}]+|[^\\S\\n\\r]+|[^${Bn}]`,"ug");return t.match(n)||[]}}const Js=new Qs;function Zs(e,t,n){return Js.diff(e,t,n)}class ea extends Sn{constructor(){super(...arguments),this.tokenize=na}equals(t,n,i){return i.ignoreWhitespace?((!i.newlineIsToken||!t.includes(` -`))&&(t=t.trim()),(!i.newlineIsToken||!n.includes(` -`))&&(n=n.trim())):i.ignoreNewlineAtEof&&!i.newlineIsToken&&(t.endsWith(` -`)&&(t=t.slice(0,-1)),n.endsWith(` -`)&&(n=n.slice(0,-1))),super.equals(t,n,i)}}const ta=new ea;function $n(e,t,n){return ta.diff(e,t,n)}function na(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` -`));const n=[],i=e.split(/(\n|\r\n)/);i[i.length-1]||i.pop();for(let r=0;r"~"||e[t]==='"'||e[t]==="\\")return!0;return!1}function Ce(e){if(!ia(e))return e;let t='"';const n=new TextEncoder().encode(e);let i=0;for(;i=32&&r<=126?t+=String.fromCharCode(r):t+="\\"+r.toString(8).padStart(3,"0"),i++}return t+='"',t}const Wn={includeIndex:!0,includeUnderline:!0,includeFileHeaders:!0};function Gn(e,t,n,i,r,o,s){let l;s?typeof s=="function"?l={callback:s}:l=s:l={},typeof l.context>"u"&&(l.context=4);const a=l.context;if(l.newlineIsToken)throw new Error("newlineIsToken may not be used with patch-generation functions, only with diffing functions");if(l.callback){const{callback:h}=l;$n(n,i,Object.assign(Object.assign({},l),{callback:c=>{const u=d(c);h(u)}}))}else return d($n(n,i,l));function d(h){if(!h)return;h.push({value:"",lines:[]});function c(p){return p.map(function(C){return" "+C})}const u=[];let f=0,g=0,b=[],y=1,m=1;for(let p=0;p0?c(x.lines.slice(-a)):[],f-=b.length,g-=b.length)}for(const x of v)b.push((C.added?"+":"-")+x);C.added?m+=v.length:y+=v.length}else{if(f)if(v.length<=a*2&&p1&&!t.includeFileHeaders&&!e.every(h=>h.isGit))throw new Error("Cannot omit file headers on a multi-file patch. (The result would be unparseable; how would a tool trying to apply the patch know which changes are to which file?)");return e.map(h=>en(h,t)).join(` -`)}const a=[];if(e.isGit){if(t=Wn,!e.oldFileName)throw new Error("oldFileName must be specified for Git patches");if(!e.newFileName)throw new Error("newFileName must be specified for Git patches");let h=e.oldFileName,c=e.newFileName;e.isCreate&&h==="/dev/null"?h=c.replace(/^b\//,"a/"):e.isDelete&&c==="/dev/null"&&(c=h.replace(/^a\//,"b/")),a.push("diff --git "+Ce(h)+" "+Ce(c)),e.isDelete&&a.push("deleted file mode "+((n=e.oldMode)!==null&&n!==void 0?n:"100644")),e.isCreate&&a.push("new file mode "+((i=e.newMode)!==null&&i!==void 0?i:"100644")),e.oldMode&&e.newMode&&!e.isDelete&&!e.isCreate&&(a.push("old mode "+e.oldMode),a.push("new mode "+e.newMode)),e.isRename&&(a.push("rename from "+Ce(((r=e.oldFileName)!==null&&r!==void 0?r:"").replace(/^a\//,""))),a.push("rename to "+Ce(((o=e.newFileName)!==null&&o!==void 0?o:"").replace(/^b\//,"")))),e.isCopy&&(a.push("copy from "+Ce(((s=e.oldFileName)!==null&&s!==void 0?s:"").replace(/^a\//,""))),a.push("copy to "+Ce(((l=e.newFileName)!==null&&l!==void 0?l:"").replace(/^b\//,""))))}else t.includeIndex&&e.oldFileName==e.newFileName&&e.oldFileName!==void 0&&a.push("Index: "+e.oldFileName),t.includeUnderline&&a.push("===================================================================");const d=e.hunks.length>0;t.includeFileHeaders&&e.oldFileName!==void 0&&e.newFileName!==void 0&&(!e.isGit||d)&&(a.push("--- "+Ce(e.oldFileName)+(e.oldHeader?" "+e.oldHeader:"")),a.push("+++ "+Ce(e.newFileName)+(e.newHeader?" "+e.newHeader:"")));for(let h=0;h{l(a?en(a,s.headerOptions):void 0)}}))}else{const l=Gn(e,t,n,i,r,o,s);return l?en(l,s?.headerOptions):void 0}}function oa(e){const t=e.endsWith(` -`),n=e.split(` -`).map(i=>i+` -`);return t?n.pop():n.push(n.pop().slice(0,-1)),n}function tn(e,t,n,i=!1){const r=Ns(ra(e.name,t.name,e.contents,t.contents,e.header,t.header,n),{cacheKey:(()=>{if(e.cacheKey!=null&&t.cacheKey!=null)return`${e.cacheKey}:${t.cacheKey}`})(),oldFile:e,newFile:t,throwOnError:i});if(r==null)throw new Error("parseDiffFrom: FileInvalid diff -- probably need to fix something -- if the files are the same maybe?");return t.lang!=null&&(r.lang=t.lang),r}var sa=class{isDeletionsScrolling=!1;isAdditionsScrolling=!1;timeoutId=-1;codeDeletions;codeAdditions;enabled=!1;cleanUp(){this.enabled&&(this.codeDeletions?.removeEventListener("scroll",this.handleDeletionsScroll),this.codeAdditions?.removeEventListener("scroll",this.handleAdditionsScroll),clearTimeout(this.timeoutId),this.codeDeletions=void 0,this.codeAdditions=void 0,this.enabled=!1)}setup(e,t,n){if(t==null||n==null)for(const i of e.children??[])i instanceof HTMLElement&&("deletions"in i.dataset?t=i:"additions"in i.dataset&&(n=i));if(n==null||t==null){this.cleanUp();return}this.codeDeletions!==t&&(this.codeDeletions?.removeEventListener("scroll",this.handleDeletionsScroll),this.codeDeletions=t,t.addEventListener("scroll",this.handleDeletionsScroll,{passive:!0})),this.codeAdditions!==n&&(this.codeAdditions?.removeEventListener("scroll",this.handleAdditionsScroll),this.codeAdditions=n,n.addEventListener("scroll",this.handleAdditionsScroll,{passive:!0})),this.enabled=!0}handleDeletionsScroll=()=>{this.isAdditionsScrolling||(this.isDeletionsScrolling=!0,clearTimeout(this.timeoutId),this.timeoutId=setTimeout(()=>{this.isDeletionsScrolling=!1},300),this.codeAdditions?.scrollTo({left:this.codeDeletions?.scrollLeft}))};handleAdditionsScroll=()=>{this.isDeletionsScrolling||(this.isAdditionsScrolling=!0,clearTimeout(this.timeoutId),this.timeoutId=setTimeout(()=>{this.isAdditionsScrolling=!1},300),this.codeDeletions?.scrollTo({left:this.codeAdditions?.scrollLeft}))}};function Fe(e,t){return De(e.theme,t.theme)&&e.useTokenTransformer===t.useTokenTransformer&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength&&e.lineDiffType===t.lineDiffType&&e.maxLineDiffLength===t.maxLineDiffLength}function rt(e){return A({tagName:"div",properties:{"data-content-buffer":"","data-buffer-size":e,style:`grid-row: span ${e};min-height:calc(${e} * 1lh)`}})}function ot(e){return A({tagName:"div",children:[A({tagName:"span",children:[W("No newline at end of file")]})],properties:{"data-no-newline":"","data-line-type":e,"data-column-content":""}})}function Ft(e){return A({tagName:"div",children:[pt({name:e==="both"?"diffs-icon-expand-all":"diffs-icon-expand",properties:{"data-icon":""}})],properties:{role:"button","data-expand-button":"","data-expand-both":e==="both"?"":void 0,"data-expand-up":e==="up"?"":void 0,"data-expand-down":e==="down"?"":void 0}})}function ke({type:e,content:t,expandIndex:n,chunked:i=!1,slotName:r,isFirstHunk:o,isLastHunk:s}){let l=0;const a=[];if(e==="metadata"&&t!=null&&a.push(A({tagName:"div",children:[W(t)],properties:{"data-separator-wrapper":""}})),(e==="line-info"||e==="line-info-basic")&&t!=null){const d=[];n!=null&&(i?(o||(d.push(Ft("up")),l++),s||(d.push(Ft("down")),l++)):(d.push(Ft(!o&&!s?"both":o?"down":"up")),l++)),d.push(A({tagName:"div",children:[A({tagName:"span",children:[W(t)],properties:{"data-unmodified-lines":""}})],properties:{"data-separator-content":""}})),i&&n!=null&&d.push(A({tagName:"div",children:[W("Expand all")],properties:{role:"button","data-expand-button":"","data-expand-all-button":""}})),a.push(A({tagName:"div",children:d,properties:{"data-separator-wrapper":"","data-separator-multi-button":l>1?"":void 0}}))}return e==="custom"&&r!=null&&a.push(A({tagName:"slot",properties:{name:r}})),A({tagName:"div",children:a,properties:{"data-separator":a.length===0?"simple":e,"data-expand-index":n,"data-separator-first":o?"":void 0,"data-separator-last":s?"":void 0}})}function aa(e,t){return`hunk-separator-${e}-${t}`}function la(e){const t=e.at(-1);return t==null?0:Math.max(t.additionStart+t.additionCount,t.deletionStart+t.deletionCount)}function da(e){return e.startingLine===0&&e.totalLines===1/0&&e.bufferBefore===0&&e.bufferAfter===0}function jn({line:e,spanStart:t,spanLength:n}){return{start:{line:e,character:t},end:{line:e,character:t+n},properties:{"data-diff-span":""},alwaysWrap:!0}}function st({item:e,arr:t,enableJoin:n,isNeutral:i=!1,isLastItem:r=!1}){const o=t[t.length-1];if(o==null||r||!n){t.push([i?0:1,e.value]);return}const s=o[0]===0;if(i===s||i&&e.value.length===1&&!s){o[1]+=e.value;return}t.push([i?0:1,e.value])}function Qe({isPartial:e,rangeSize:t,expandedHunks:n,hunkIndex:i,collapsedContextThreshold:r}){const o=Math.max(t,0);if(o===0||e)return{fromStart:0,fromEnd:0,rangeSize:o,collapsedLines:o,renderAll:!1};if(n===!0||o<=r)return{fromStart:o,fromEnd:0,rangeSize:o,collapsedLines:0,renderAll:!0};const s=n?.get(i),l=Math.min(Math.max(s?.fromStart??0,0),o),a=Math.min(Math.max(s?.fromEnd??0,0),o),d=l+a,h=d>=o;return{fromStart:h?o:l,fromEnd:h?0:a,rangeSize:o,collapsedLines:Math.max(o-d,0),renderAll:h}}function mr({fileDiff:e,errorPrefix:t}){const n=e.hunks[e.hunks.length-1];if(n==null||e.isPartial||e.additionLines.length===0||e.deletionLines.length===0)return 0;const i=e.additionLines.length-(n.additionLineIndex+n.additionCount),r=e.deletionLines.length-(n.deletionLineIndex+n.deletionCount);if(i<=0&&r<=0)return 0;if(i!==r)throw new Error(`${t}: trailing context mismatch (additions=${i}, deletions=${r}) for ${e.name}`);return Math.min(i,r)}function Je({fileDiff:e,hunkIndex:t,expandedHunks:n,collapsedContextThreshold:i,errorPrefix:r}){if(t!==e.hunks.length-1)return;const o=mr({fileDiff:e,errorPrefix:r});if(o<=0)return;if(n===!0||o<=i)return{fromStart:o,fromEnd:0,rangeSize:o,collapsedLines:0,renderAll:!0};const s=n?.get(e.hunks.length),l=Math.min(Math.max(s?.fromStart??0,0),o);return{fromStart:l,fromEnd:0,rangeSize:o,collapsedLines:o-l,renderAll:l>=o}}function vr({type:e,metrics:t}){return t.hunkSeparatorHeight??Es(e)}function br({type:e,metrics:t}){return e==="simple"||e==="metadata"||e==="line-info-basic"?0:t.spacing}function ha({type:e,hunkIndex:t,hunkSpecs:n}){switch(e){case"simple":return t>0;case"metadata":return n!=null;case"line-info":case"line-info-basic":case"custom":return!0}}function ca(e){return e!=="simple"&&e!=="metadata"}function $e({type:e,metrics:t,hunkIndex:n,hunkSpecs:i}){if(!ha({type:e,hunkIndex:n,hunkSpecs:i}))return;const r=vr({type:e,metrics:t}),o=br({type:e,metrics:t}),s=n>0?o:0,l=o;return{height:r,gapBefore:s,gapAfter:l,totalHeight:s+r+l}}function We({type:e,metrics:t}){if(!ca(e))return;const n=vr({type:e,metrics:t}),i=br({type:e,metrics:t});return{height:n,gapBefore:i,gapAfter:0,totalHeight:i+n}}function qe({diff:e,diffStyle:t,startingLine:n=0,totalLines:i=1/0,expandedHunks:r,collapsedContextThreshold:o=1,callback:s}){const l=ua({diff:e,diffStyle:t,startingLine:n,expandedHunks:r,collapsedContextThreshold:o}),a={viewportStart:n,viewportEnd:n+i,isWindowedHighlight:n>0||i<1/0,splitCount:l.splitCount,unifiedCount:l.unifiedCount,finalHunkIndex:e.hunks.length-1,shouldBreak(){if(!a.isWindowedHighlight)return!1;const d=a.unifiedCount>=n+i,h=a.splitCount>=n+i;return t==="unified"?d:(t==="split"||d)&&h},shouldSkip(d,h){if(!a.isWindowedHighlight)return!1;const c=a.unifiedCount+d=n-d&&a.unifiedCount=n-d&&a.splitCount0?0:t==="unified"?E===h.unifiedLineStart+h.unifiedLineCount-1?u.collapsedLines:0:w===h.splitLineStart+h.splitLineCount-1?u.collapsedLines:0},y=function(){return b?0:(b=!0,c.collapsedLines)};const h=e.hunks[d];if(h==null)throw new Error("iterateOverDiff: invalid hunk index");if(a.shouldBreak())break;const c=Qe({isPartial:e.isPartial,rangeSize:h.collapsedBefore,expandedHunks:r,hunkIndex:d,collapsedContextThreshold:o}),u=d===a.finalHunkIndex?Je({fileDiff:e,hunkIndex:d,expandedHunks:r,collapsedContextThreshold:o,errorPrefix:"iterateOverDiff"}):void 0,f=c.fromStart+c.fromEnd;let b=c.collapsedLines===0;if(a.shouldSkip(f,f))a.incrementCounts(f,f),y();else{let E=h.unifiedLineStart-c.rangeSize,w=h.splitLineStart-c.rangeSize,R=h.deletionLineIndex-c.rangeSize,H=h.additionLineIndex-c.rangeSize,I=h.deletionStart-c.rangeSize,T=h.additionStart-c.rangeSize;if(at(a,c.fromStart,t,M=>a.emit({hunkIndex:d,hunk:h,collapsedBefore:0,collapsedAfter:0,type:"context-expanded",deletionLine:{lineNumber:I+M,lineIndex:R+M,noEOFCR:!1,unifiedLineIndex:E+M,splitLineIndex:w+M},additionLine:{unifiedLineIndex:E+M,splitLineIndex:w+M,lineIndex:H+M,lineNumber:T+M,noEOFCR:!1}}))||(E=h.unifiedLineStart-c.fromEnd,w=h.splitLineStart-c.fromEnd,R=h.deletionLineIndex-c.fromEnd,H=h.additionLineIndex-c.fromEnd,I=h.deletionStart-c.fromEnd,T=h.additionStart-c.fromEnd,at(a,c.fromEnd,t,M=>a.emit({hunkIndex:d,hunk:h,collapsedBefore:y(),collapsedAfter:0,type:"context-expanded",deletionLine:{lineNumber:I+M,lineIndex:R+M,noEOFCR:!1,unifiedLineIndex:E+M,splitLineIndex:w+M},additionLine:{unifiedLineIndex:E+M,splitLineIndex:w+M,lineIndex:H+M,lineNumber:T+M,noEOFCR:!1}}),()=>{y()})))break e}let m=h.unifiedLineStart,p=h.splitLineStart,C=h.deletionLineIndex,v=h.additionLineIndex,x=h.deletionStart,S=h.additionStart;const L=h.hunkContent.at(-1);for(const E of h.hunkContent){if(a.shouldBreak())break e;const w=E===L;if(E.type==="context"){if(a.shouldSkip(E.lines,E.lines))a.incrementCounts(E.lines,E.lines),y();else if(at(a,E.lines,t,R=>{const H=w&&R===E.lines-1,I=m+R,T=p+R;return a.emit({hunkIndex:d,hunk:h,collapsedBefore:y(),collapsedAfter:g(I,T),type:"context",deletionLine:{lineNumber:x+R,lineIndex:C+R,noEOFCR:H&&h.noEOFCRDeletions,unifiedLineIndex:I,splitLineIndex:T},additionLine:{unifiedLineIndex:I,splitLineIndex:T,lineIndex:v+R,lineNumber:S+R,noEOFCR:H&&h.noEOFCRAdditions}})},()=>{y()}))break e;m+=E.lines,p+=E.lines,C+=E.lines,v+=E.lines,x+=E.lines,S+=E.lines}else{const R=Math.max(E.deletions,E.additions),H=E.deletions+E.additions;if(!a.shouldSkip(H,R)){const I=ga(a,E,t);(I[0]?.[0]??0)>0&&y();for(const[T,M]of I)for(let N=T;N{const T=I===H-1;return a.emit({hunkIndex:e.hunks.length,hunk:void 0,collapsedBefore:0,collapsedAfter:T?E:0,type:"context-expanded",deletionLine:{lineNumber:x+I,lineIndex:C+I,noEOFCR:!1,unifiedLineIndex:m+I,splitLineIndex:p+I},additionLine:{unifiedLineIndex:m+I,splitLineIndex:p+I,lineIndex:v+I,lineNumber:S+I,noEOFCR:!1}})},void 0,()=>a.shouldBreak()))break e}}}function ua({diff:e,diffStyle:t,startingLine:n,expandedHunks:i,collapsedContextThreshold:r}){if(n<=0||t==="both")return{hunkIndex:0,splitCount:0,unifiedCount:0};const o=fa({diff:e,expandedHunks:i,collapsedContextThreshold:r});let s=0,l=e.hunks.length-1,a=e.hunks.length;for(;s<=l;){const h=s+l>>1,c=o[h+1];if(c==null)throw new Error("iterateOverDiff: invalid hunk prefix index");(t==="unified"?c.unifiedCount:c.splitCount)>n?(a=h,l=h-1):s=h+1}if(a>=e.hunks.length){const h=o[e.hunks.length];if(h==null)throw new Error("iterateOverDiff: invalid terminal hunk prefix index");return{hunkIndex:e.hunks.length,splitCount:h.splitCount,unifiedCount:h.unifiedCount}}const d=o[a];if(d==null)throw new Error("iterateOverDiff: invalid selected hunk prefix index");return{hunkIndex:a,splitCount:d.splitCount,unifiedCount:d.unifiedCount}}function fa({diff:e,expandedHunks:t,collapsedContextThreshold:n}){let i=0,r=0;const o=e.hunks.length-1,s=[{splitCount:0,unifiedCount:0}];for(let l=0;la&&i.push([a,d])}if(n!=="split"&&r(e.unifiedCount),n!=="unified"&&r(e.splitCount),i.length===0)return[0,0];let o=i[0][0],s=i[0][1];for(let l=1;l0&&(e.incrementCounts(s,s),r?.());let a=s;for(;a=l){e.incrementCounts(t-a,t-a);break}if(e.isInWindow(0,0)){if(i(a)===!0)return!0}else e.incrementCounts(1,1);a++}return!1}function ga(e,t,n){if(!e.isWindowedHighlight)return[[0,n==="unified"?t.deletions+t.additions:Math.max(t.deletions,t.additions)]];const i=n!=="split",r=n!=="unified",o=n==="unified"?"unified":"split",s=[];function l(c,u){if(c+u<=e.viewportStart||c>=e.viewportEnd)return;const f=Math.max(0,e.viewportStart-c),g=Math.min(u,e.viewportEnd-c);return g>f?[f,g]:void 0}function a(c,u){return o==="split"?c:u==="additions"?[c[0]+t.deletions,c[1]+t.deletions]:c}function d(c,u){if(c==null)return;const[f,g]=a(c,u);g>f&&s.push([f,g])}if(i&&(d(l(e.unifiedCount,t.deletions),"deletions"),d(l(e.unifiedCount+t.deletions,t.additions),"additions")),r&&(d(l(e.splitCount,t.deletions),"deletions"),d(l(e.splitCount,t.additions),"additions")),s.length===0)return s;s.sort((c,u)=>c[0]-u[0]);const h=[s[0]];for(const[c,u]of s.slice(1)){const f=h[h.length-1];c<=f[1]?f[1]=Math.max(f[1],u):h.push([c,u])}return h}function ma({hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:i,diffStyle:r,index:o,unifiedLineIndex:s,splitLineIndex:l,additionLineIndex:a,deletionLineIndex:d,additionLineNumber:h,deletionLineNumber:c,content:u,isLastContent:f,unifiedCount:g,splitCount:b}){const y=o=u.deletions?s+o:void 0:o=u.deletions?a+(o-u.deletions):void 0:o=u.deletions?h+(o-u.deletions):void 0:o0||o<1/0,d=typeof n.theme=="string"?t.getTheme(n.theme).type:void 0,h=fn({theme:n.theme,highlighter:t}),c=i&&!a&&(e.unifiedLineCount>1e3||e.splitLineCount>1e3)?"none":n.lineDiffType,u={deletionLines:[],additionLines:[]},{maxLineDiffLength:f}=n,g=!i&&!e.isPartial,b=i?s:void 0,y=new Map;function m(C){const v=g?0:C,x=y.get(v)??Sa();return y.set(v,x),x}function p(C,v,x,S){if(a){let L=x.at(-1);(L==null||L.targetIndex+L.count!==v)&&(L={targetIndex:v,originalOffset:S.length,count:0},x.push(L)),L.count++}S.push(C)}qe({diff:e,diffStyle:"both",startingLine:r,totalLines:o,expandedHunks:a?b:!0,collapsedContextThreshold:l,callback:({hunkIndex:C,additionLine:v,deletionLine:x,type:S})=>{const L=m(C),E=v!=null?v.splitLineIndex:x.splitLineIndex;S==="change"&&v!=null&&x!=null&&Ca({additionLine:e.additionLines[v.lineIndex],deletionLine:e.deletionLines[x.lineIndex],deletionLineIndex:L.deletionContent.length,additionLineIndex:L.additionContent.length,deletionDecorations:L.deletionDecorations,additionDecorations:L.additionDecorations,lineDiffType:c,maxLineDiffLength:f}),x!=null&&(p(e.deletionLines[x.lineIndex],x.lineIndex,L.deletionSegments,L.deletionContent),L.deletionInfo.push({type:S==="change"?"change-deletion":S,lineNumber:x.lineNumber,altLineNumber:S==="change"?void 0:v.lineNumber??void 0,lineIndex:`${x.unifiedLineIndex},${E}`})),v!=null&&(p(e.additionLines[v.lineIndex],v.lineIndex,L.additionSegments,L.additionContent),L.additionInfo.push({type:S==="change"?"change-addition":S,lineNumber:v.lineNumber,altLineNumber:S==="change"?void 0:x.lineNumber??void 0,lineIndex:`${v.unifiedLineIndex},${E}`}))}});for(const C of y.values()){if(C.deletionContent.length===0&&C.additionContent.length===0)continue;const v={name:e.prevName??e.name,contents:C.deletionContent.value},x={name:e.name,contents:C.additionContent.value},{deletionLines:S,additionLines:L}=ya({deletionFile:v,deletionInfo:C.deletionInfo,deletionDecorations:C.deletionDecorations,additionFile:x,additionInfo:C.additionInfo,additionDecorations:C.additionDecorations,highlighter:t,options:n,languageOverride:i?"text":e.lang});if(g){u.deletionLines=S,u.additionLines=L;continue}if(C.deletionSegments.length>0)for(const E of C.deletionSegments)for(let w=0;w0)for(const E of C.additionSegments)for(let w=0;wl||t.length>l))return;const a=s==="char"?Xs(e,t):Zs(e,t),d=[],h=[],c=s==="word-alt",u=a.at(-1);for(const g of a){const b=g===u;!g.added&&!g.removed?(st({item:g,arr:d,enableJoin:c,isNeutral:!0,isLastItem:b}),st({item:g,arr:h,enableJoin:c,isNeutral:!0,isLastItem:b})):g.removed?st({item:g,arr:d,enableJoin:c,isLastItem:b}):st({item:g,arr:h,enableJoin:c,isLastItem:b})}let f=0;for(const g of d)g[0]===1&&r.push(jn({line:n,spanStart:f,spanLength:g[1].length})),f+=g[1].length;f=0;for(const g of h)g[0]===1&&o.push(jn({line:i,spanStart:f,spanLength:g[1].length})),f+=g[1].length}function Sa(){return{deletionContent:{push(e){this.value+=e,this.length++},value:"",length:0},additionContent:{push(e){this.value+=e,this.length++},value:"",length:0},deletionInfo:[],additionInfo:[],deletionDecorations:[],additionDecorations:[],deletionSegments:[],additionSegments:[]}}function ya({deletionFile:e,additionFile:t,deletionInfo:n,additionInfo:i,highlighter:r,deletionDecorations:o,additionDecorations:s,languageOverride:l,options:{theme:a=_,...d}}){const h=l??Q(e.name),c=l??Q(t.name),{state:u,transformers:f}=Ji(d.useTokenTransformer),g=typeof a=="string"?{...d,lang:"text",theme:a,transformers:f,decorations:void 0,defaultColor:!1,cssVariablePrefix:B("token"),tokenizeTimeLimit:0}:{...d,lang:"text",themes:a,transformers:f,decorations:void 0,defaultColor:!1,cssVariablePrefix:B("token"),tokenizeTimeLimit:0};return{deletionLines:e.contents===""?[]:(g.lang=h,u.lineInfo=n,g.decorations=o,Kt(r.codeToHast(xe(e.contents),g))),additionLines:t.contents===""?[]:(g.lang=c,g.decorations=s,u.lineInfo=i,Kt(r.codeToHast(xe(t.contents),g)))}}function nn(e){const t=e.lang??Q(e.name),n=e.lang??(e.prevName!=null?Q(e.prevName):"text");return t==="text"&&n==="text"}let xa=-1;var Cr=class{options;onRenderUpdate;workerManager;__id=`diff-hunks-renderer:${++xa}`;highlighter;diff;expandedHunks=new Map;deletionAnnotations={};additionAnnotations={};computedLang="text";renderCache;constructor(e={theme:_},t,n){this.options=e,this.onRenderUpdate=t,this.workerManager=n,n?.isWorkingPool()!==!0&&(this.highlighter=Ge(e.theme??_)?Ki():void 0)}cleanUp(){this.recycle(),this.expandedHunks.clear(),this.workerManager=void 0,this.onRenderUpdate=void 0}recycle(){this.highlighter=void 0,this.diff=void 0,this.clearRenderCache(),this.additionAnnotations={},this.deletionAnnotations={},this.workerManager?.cleanUpTasks(this)}clearRenderCache(){this.renderCache=void 0}setOptions(e){this.options=e}mergeOptions(e){this.options={...this.options,...e}}expandHunk(e,t,n=this.getOptionsWithDefaults().expansionLineCount){const i={...this.expandedHunks.get(e)??{fromStart:0,fromEnd:0}};(t==="up"||t==="both")&&(i.fromStart+=n),(t==="down"||t==="both")&&(i.fromEnd+=n),this.renderCache?.highlighted!==!0&&this.clearRenderCache(),this.expandedHunks.set(e,i)}getExpandedHunk(e){return this.expandedHunks.get(e)??no}getExpandedHunksMap(){return this.expandedHunks}setLineAnnotations(e){this.additionAnnotations={},this.deletionAnnotations={};for(const t of e){const n=(()=>{switch(t.side){case"deletions":return this.deletionAnnotations;case"additions":return this.additionAnnotations}})(),i=n[t.lineNumber]??[];n[t.lineNumber]=i,i.push(t)}}getUnifiedLineDecoration({lineType:e}){return{gutterLineType:e}}getSplitLineDecoration({side:e,type:t}){return t!=="change"?{gutterLineType:t}:{gutterLineType:e==="deletions"?"change-deletion":"change-addition"}}createAnnotationElement=e=>qt(e);getOptionsWithDefaults(){const{diffIndicators:e="bars",diffStyle:t="split",disableBackground:n=!1,disableFileHeader:i=!1,disableLineNumbers:r=!1,disableVirtualizationBuffers:o=!1,collapsed:s=!1,expandUnchanged:l=!1,collapsedContextThreshold:a=1,expansionLineCount:d=100,hunkSeparators:h="line-info",lineDiffType:c="word-alt",maxLineDiffLength:u=1e3,overflow:f="scroll",stickyHeader:g=!1,theme:b=_,headerRenderMode:y="default",tokenizeMaxLineLength:m=1e3,tokenizeMaxLength:p=Zr,useTokenTransformer:C=!1,useCSSClasses:v=!1}=this.options;return{diffIndicators:e,diffStyle:t,disableBackground:n,disableFileHeader:i,disableLineNumbers:r,disableVirtualizationBuffers:o,collapsed:s,expandUnchanged:l,collapsedContextThreshold:a,expansionLineCount:d,hunkSeparators:h,lineDiffType:c,maxLineDiffLength:u,overflow:f,stickyHeader:g,theme:this.workerManager?.getDiffRenderOptions().theme??b,headerRenderMode:y,tokenizeMaxLineLength:m,tokenizeMaxLength:p,useTokenTransformer:C,useCSSClasses:v}}async initializeHighlighter(){return this.highlighter=await xt(un(this.computedLang,this.options)),this.highlighter}hydrate(e){if(e==null)return;this.diff=e;const{options:t}=this.getRenderOptions(e),n=Ut(e,this.getTokenizeMaxLength());let i=this.workerManager?.getDiffResultCache(e);i!=null&&!Fe(t,i.options)&&(i=void 0),this.renderCache??={diff:e,highlighted:!n&&!nn(e),options:t,result:n?void 0:i?.result,renderRange:void 0},this.workerManager?.isWorkingPool()===!0?this.renderCache.result==null&&!n&&this.workerManager.highlightDiffAST(this,this.diff):this.highlighter==null&&(this.computedLang=e.lang??Q(e.name),this.initializeHighlighter())}getRenderOptions(e){const t=(()=>{if(this.workerManager?.isWorkingPool()===!0)return this.workerManager.getDiffRenderOptions();const{theme:i,tokenizeMaxLineLength:r,lineDiffType:o,maxLineDiffLength:s}=this.getOptionsWithDefaults();return{theme:i,useTokenTransformer:tr(this.options),tokenizeMaxLineLength:r,lineDiffType:o,maxLineDiffLength:s}})();this.getOptionsWithDefaults();const{renderCache:n}=this;return n?.result==null?{options:t,forceHighlight:!0}:!Be(e,n.diff)||!Fe(t,n.options)?{options:t,forceHighlight:!0}:{options:t,forceHighlight:!1}}renderDiff(e=this.renderCache?.diff,t=Ae){if(e==null)return;const{expandUnchanged:n=!1,collapsedContextThreshold:i}=this.getOptionsWithDefaults();let{options:r,forceHighlight:o}=this.getRenderOptions(e);const s=this.getMatchingWorkerResultCache(e,r);s!=null&&!this.hasHighlightedRenderCache(e,r)&&(this.renderCache={diff:e,highlighted:!0,renderRange:void 0,...s},o=!1),this.renderCache??={diff:e,highlighted:!1,options:r,result:void 0,renderRange:void 0};const l=e.additionLines.length>0||e.deletionLines.length>0,a=!l||nn(e)||Ut(e,this.getTokenizeMaxLength()),d=!Be(e,this.renderCache.diff),h=!Lt(this.renderCache.renderRange,t);if(this.workerManager?.isWorkingPool()===!0)(a||this.renderCache.result==null||!this.renderCache.highlighted&&(d||h))&&(this.renderCache.diff=e,this.renderCache.options=r,this.renderCache.highlighted=!1,(this.renderCache.result==null||d||h||o)&&(this.renderCache.result=this.workerManager.getPlainDiffAST(e,t.startingLine,t.totalLines,da(t)||n?!0:this.expandedHunks,i)),this.renderCache.renderRange=t),!a&&l&&(!this.renderCache.highlighted||o)&&this.workerManager.highlightDiffAST(this,e);else{this.computedLang=e.lang??Q(e.name);const c=this.highlighter!=null&&Ge(r.theme),u=this.highlighter!=null&&mt(this.computedLang),f=!a&&u;if(this.highlighter!=null&&c&&(o||a||!this.renderCache.highlighted&&f||this.renderCache.result==null)){const{result:g,options:b}=this.renderDiffWithHighlighter(e,this.highlighter,a||!u);this.renderCache={diff:e,options:b,highlighted:f,result:g,renderRange:void 0}}(!c||!a&&!u)&&this.asyncHighlight(e).then(({result:g,options:b})=>{this.renderCache!=null&&(this.renderCache.highlighted=!1),this.onHighlightSuccess(e,g,b,!a)})}return this.renderCache.result!=null?this.processDiffResult(this.renderCache.diff,t,this.renderCache.result):void 0}async asyncRender(e,t=Ae){const{result:n}=await this.asyncHighlight(e);return this.processDiffResult(e,t,n)}createPreElement(e,t,n){const{diffIndicators:i,disableBackground:r,disableLineNumbers:o,overflow:s}=this.getOptionsWithDefaults();return Xi({type:"diff",diffIndicators:i,disableBackground:r,disableLineNumbers:o,overflow:s,split:e,totalLines:t,customProperties:n})}async asyncHighlight(e){const t=Ut(e,this.getTokenizeMaxLength());this.computedLang=t?"text":e.lang??Q(e.name);const n=this.highlighter!=null&&Ge(this.options.theme??_),i=t||this.highlighter!=null&&mt(this.computedLang);return(this.highlighter==null||!n||!i)&&(this.highlighter=await this.initializeHighlighter()),this.renderDiffWithHighlighter(e,this.highlighter,t)}renderDiffWithHighlighter(e,t,n=!1){const{options:i}=this.getRenderOptions(e),{collapsedContextThreshold:r}=this.getOptionsWithDefaults();return{result:ba(e,t,i,{forcePlainText:n,expandedHunks:n?!0:void 0,collapsedContextThreshold:r}),options:i}}onHighlightSuccess(e,t,n,i=!0){if(this.renderCache==null)return;const r=!this.renderCache.highlighted||!Fe(this.renderCache.options,n)||!Be(this.renderCache.diff,e);this.renderCache={diff:e,options:n,highlighted:i,result:t,renderRange:void 0},r&&this.onRenderUpdate?.()}getMatchingWorkerResultCache(e,t){const n=this.workerManager?.getDiffResultCache(e);if(!(n==null||!Fe(t,n.options)))return n}hasHighlightedRenderCache(e,t){const{renderCache:n}=this;return n?.result!=null&&n.highlighted&&Be(e,n.diff)&&Fe(t,n.options)}onHighlightError(e){console.error(e)}getTokenizeMaxLength(){return this.options.tokenizeMaxLength??1e5}processDiffResult(e,t,{code:n,themeStyles:i,baseThemeType:r}){const{diffStyle:o,disableFileHeader:s,expandUnchanged:l,expansionLineCount:a,collapsedContextThreshold:d,hunkSeparators:h}=this.getOptionsWithDefaults();this.diff=e;const c=o==="unified";let u=[],f=[],g=[];const b=[],{additionLines:y,deletionLines:m}=n,p={rowCount:0,hunkSeparators:h,additionsContentAST:u,deletionsContentAST:f,unifiedContentAST:g,unifiedGutterAST:Ee(),deletionsGutterAST:Ee(),additionsGutterAST:Ee(),expansionLineCount:a,hunkData:b,incrementRowCount(T=1){p.rowCount+=T},pushToGutter(T,M){switch(T){case"unified":p.unifiedGutterAST.children.push(M);break;case"deletions":p.deletionsGutterAST.children.push(M);break;case"additions":p.additionsGutterAST.children.push(M);break}}},C=mr({fileDiff:e,errorPrefix:"DiffHunksRenderer.processDiffResult"}),v={size:0,side:void 0,increment(){this.size+=1},flush(){if(o!=="unified"){if(this.size<=0||this.side==null){this.side=void 0,this.size=0;return}this.side==="additions"?(p.pushToGutter("additions",j(void 0,"buffer",this.size)),u?.push(rt(this.size))):(p.pushToGutter("deletions",j(void 0,"buffer",this.size)),f?.push(rt(this.size))),this.size=0,this.side=void 0}}},x=(T,M,N,G,D)=>{p.pushToGutter(T,Di(M,N,G,D))};function S(T){v.flush(),o==="unified"?zt("unified",T,p):(zt("deletions",T,p),zt("additions",T,p))}this.pushFileLevelAnnotations(e,o,t,p),qe({diff:e,diffStyle:o,startingLine:t.startingLine,totalLines:t.totalLines,expandedHunks:l?!0:this.expandedHunks,collapsedContextThreshold:d,callback:({hunkIndex:T,hunk:M,collapsedBefore:N,collapsedAfter:G,additionLine:D,deletionLine:F,type:O})=>{const J=F!=null?F.splitLineIndex:D.splitLineIndex,me=D!=null?D.unifiedLineIndex:F.unifiedLineIndex;o==="split"&&O!=="change"&&v.flush(),N>0&&S({hunkIndex:T,collapsedLines:N,rangeSize:Math.max(M?.collapsedBefore??0,0),hunkSpecs:M?.hunkSpecs,isFirstHunk:T===0,isLastHunk:!1,isExpandable:!e.isPartial});const ve=o==="unified"?me:J,Le={type:O,hunkIndex:T,lineIndex:ve,unifiedLineIndex:me,splitLineIndex:J,deletionLine:F,additionLine:D};if(o==="unified"){const P=this.getUnifiedInjectedRowsForLine?.(Le);P?.before!=null&&Yn(P.before,p);let V=F!=null?m[F.lineIndex]:void 0,z=D!=null?y[D.lineIndex]:void 0;if(V==null&&z==null){const ne="DiffHunksRenderer.processDiffResult: deletionLine and additionLine are null, something is wrong";throw console.error(ne,{file:e.name}),new Error(ne)}const de=O==="change"?D!=null?"change-addition":"change-deletion":O,te=this.getUnifiedLineDecoration({type:O,lineType:de,additionLineIndex:D?.lineIndex,deletionLineIndex:F?.lineIndex});x("unified",te.gutterLineType,D!=null?D.lineNumber:F.lineNumber,`${me},${J}`,te.gutterProperties),z!=null?z=dt(z,te.contentProperties):V!=null&&(V=dt(V,te.contentProperties)),lt({diffStyle:"unified",type:O,deletionLine:V,additionLine:z,unifiedSpan:this.getAnnotations("unified",F?.lineNumber,D?.lineNumber,T,ve),createAnnotationElement:ne=>this.createAnnotationElement(ne),context:p}),P?.after!=null&&Yn(P.after,p)}else{const P=this.getSplitInjectedRowsForLine?.(Le);P?.before!=null&&Xn(P.before,p,v);let V=F!=null?m[F.lineIndex]:void 0,z=D!=null?y[D.lineIndex]:void 0;const de=this.getSplitLineDecoration({side:"deletions",type:O,lineIndex:F?.lineIndex}),te=this.getSplitLineDecoration({side:"additions",type:O,lineIndex:D?.lineIndex});if(V==null&&z==null){const K="DiffHunksRenderer.processDiffResult: deletionLine and additionLine are null, something is wrong";throw console.error(K,{file:e.name}),new Error(K)}const ne=(()=>{if(O==="change"){if(z==null)return"additions";if(V==null)return"deletions"}})();if(ne!=null){if(v.side!=null&&v.side!==ne)throw new Error("DiffHunksRenderer.processDiffResult: iterateOverDiff, invalid pending splits");v.side=ne,v.increment()}const Pe=this.getAnnotations("split",F?.lineNumber,D?.lineNumber,T,ve);if(Pe!=null&&v.size>0&&v.flush(),F!=null){const K=dt(V,de.contentProperties);x("deletions",de.gutterLineType,F.lineNumber,`${F.unifiedLineIndex},${J}`,de.gutterProperties),K!=null&&(V=K)}if(D!=null){const K=dt(z,te.contentProperties);x("additions",te.gutterLineType,D.lineNumber,`${D.unifiedLineIndex},${J}`,te.gutterProperties),K!=null&&(z=K)}lt({diffStyle:"split",type:O,additionLine:z,deletionLine:V,...Pe,createAnnotationElement:K=>this.createAnnotationElement(K),context:p}),P?.after!=null&&Xn(P.after,p,v)}const ee=o==="split"&&M!=null&&J===M.splitLineStart+M.splitLineCount-1,be=ee?M.noEOFCRDeletions:!1,le=ee?M.noEOFCRAdditions:!1,q=(F?.noEOFCR??!1)||be,ye=(D?.noEOFCR??!1)||le;if(ye||q){if(o==="split"&&v.flush(),q){const P=O==="context"||O==="context-expanded"?O:"change-deletion";o==="unified"?(p.unifiedContentAST.push(ot(P)),p.pushToGutter("unified",j(P,"metadata",1))):(p.deletionsContentAST.push(ot(P)),p.pushToGutter("deletions",j(P,"metadata",1)),ye||(p.pushToGutter("additions",j(void 0,"buffer",1)),p.additionsContentAST.push(rt(1))))}if(ye){const P=O==="context"||O==="context-expanded"?O:"change-addition";o==="unified"?(p.unifiedContentAST.push(ot(P)),p.pushToGutter("unified",j(P,"metadata",1))):(p.additionsContentAST.push(ot(P)),p.pushToGutter("additions",j(P,"metadata",1)),q||(p.pushToGutter("deletions",j(void 0,"buffer",1)),p.deletionsContentAST.push(rt(1))))}p.incrementRowCount(1)}G>0&&h!=="simple"&&S({hunkIndex:O==="context-expanded"?T:T+1,collapsedLines:G,rangeSize:C,hunkSpecs:void 0,isFirstHunk:!1,isLastHunk:!0,isExpandable:!e.isPartial}),p.incrementRowCount(1)}}),o==="split"&&v.flush();const L=Math.max(la(e.hunks),e.additionLines.length??0,e.deletionLines.length??0),E=t.bufferBefore>0||t.bufferAfter>0,w=!c&&e.type!=="deleted",R=!c&&e.type!=="new",H=p.rowCount>0||E;u=w&&H?u:void 0,f=R&&H?f:void 0,g=c&&H?g:void 0;const I=this.createPreElement(f!=null&&u!=null,L);return{unifiedGutterAST:c&&H?p.unifiedGutterAST.children:void 0,unifiedContentAST:g,deletionsGutterAST:R&&H?p.deletionsGutterAST.children:void 0,deletionsContentAST:f,additionsGutterAST:w&&H?p.additionsGutterAST.children:void 0,additionsContentAST:u,hunkData:b,preNode:I,themeStyles:i,baseThemeType:r,headerElement:s?void 0:this.renderHeader(this.diff),totalLines:L,rowCount:p.rowCount,bufferBefore:t.bufferBefore,bufferAfter:t.bufferAfter,css:""}}renderCodeAST(e,t){const n=e==="unified"?t.unifiedGutterAST:e==="deletions"?t.deletionsGutterAST:t.additionsGutterAST,i=e==="unified"?t.unifiedContentAST:e==="deletions"?t.deletionsContentAST:t.additionsContentAST;if(n==null||i==null)return;const r=Ee(n);return r.properties.style=`grid-row: span ${t.rowCount}`,[r,er(i,t.rowCount)]}renderFullAST(e,t=[]){const n=this.getOptionsWithDefaults().hunkSeparators==="line-info",i=this.renderCodeAST("unified",e);if(i!=null)return t.push(A({tagName:"code",children:i,properties:{"data-code":"","data-container-size":n?"":void 0,"data-unified":""}})),{...e.preNode,children:t};const r=this.renderCodeAST("deletions",e);r!=null&&t.push(A({tagName:"code",children:r,properties:{"data-code":"","data-container-size":n?"":void 0,"data-deletions":""}}));const o=this.renderCodeAST("additions",e);return o!=null&&t.push(A({tagName:"code",children:o,properties:{"data-code":"","data-container-size":n?"":void 0,"data-additions":""}})),{...e.preNode,children:t}}renderFullHTML(e,t=[]){return pe(this.renderFullAST(e,t))}renderPartialHTML(e,t){return t==null?pe(e):pe(A({tagName:"code",children:e,properties:{"data-code":"","data-container-size":this.getOptionsWithDefaults().hunkSeparators==="line-info"?"":void 0,[`data-${t}`]:""}}))}pushFileLevelAnnotations(e,t,n,i){if(!kt(n))return;const r=e.type!=="new"?qn(Xt(this.deletionAnnotations)):[],o=e.type!=="deleted"?qn(Xt(this.additionAnnotations)):[];if(r.length===0&&o.length===0)return;const s=-1,l=-1,{createAnnotationElement:a}=this;if(t==="unified"){lt({diffStyle:t,type:"context",unifiedSpan:{type:"annotation",hunkIndex:s,lineIndex:l,annotations:r.concat(o)},createAnnotationElement:a,context:i});return}lt({diffStyle:t,type:"context",deletionSpan:{type:"annotation",hunkIndex:s,lineIndex:l,annotations:r},additionSpan:{type:"annotation",hunkIndex:s,lineIndex:l,annotations:o},createAnnotationElement:a,context:i})}getAnnotations(e,t,n,i,r){const o={type:"annotation",hunkIndex:i,lineIndex:r,annotations:[]};if(t!=null)for(const l of this.deletionAnnotations[t]??[])o.annotations.push(ge(l));const s={type:"annotation",hunkIndex:i,lineIndex:r,annotations:[]};if(n!=null)for(const l of this.additionAnnotations[n]??[])(e==="unified"?o:s).annotations.push(ge(l));if(e==="unified")return o.annotations.length>0?o:void 0;if(!(s.annotations.length===0&&o.annotations.length===0))return{deletionSpan:o,additionSpan:s}}renderHeader(e){const{headerRenderMode:t,stickyHeader:n}=this.getOptionsWithDefaults();return Yi({fileOrDiff:e,mode:t,stickyHeader:n})}};function qn(e){return e?.map(t=>ge(t))??[]}const La=new Intl.PluralRules("en-US");function Kn(e){return`${e} unmodified line${La.select(e)==="one"?"":"s"}`}function Yn(e,t){for(const n of e)t.unifiedContentAST.push(n.content),t.pushToGutter("unified",n.gutter),t.incrementRowCount(1)}function Xn(e,t,n){for(const{deletion:i,addition:r}of e){if(i==null&&r==null)continue;const o=i!=null&&r!=null?void 0:i==null?"deletions":"additions";(o==null||n.side!==o)&&n.flush(),i!=null&&(t.deletionsContentAST.push(i.content),t.pushToGutter("deletions",i.gutter)),r!=null&&(t.additionsContentAST.push(r.content),t.pushToGutter("additions",r.gutter)),o!=null&&(n.side=o,n.increment()),t.incrementRowCount(1)}}function lt({diffStyle:e,type:t,deletionLine:n,additionLine:i,unifiedSpan:r,deletionSpan:o,additionSpan:s,createAnnotationElement:l,context:a}){let d=!1;if(e==="unified"){if(i!=null?a.unifiedContentAST.push(i):n!=null&&a.unifiedContentAST.push(n),r!=null){const h=t==="change"?n!=null?"change-deletion":"change-addition":t;a.unifiedContentAST.push(l(r)),a.pushToGutter("unified",j(h,"annotation",1)),d=!0}}else if(e==="split"){if(n!=null&&a.deletionsContentAST.push(n),i!=null&&a.additionsContentAST.push(i),o!=null){const h=t==="change"?n!=null?"change-deletion":"context":t;a.deletionsContentAST.push(l(o)),a.pushToGutter("deletions",j(h,"annotation",1)),d=!0}if(s!=null){const h=t==="change"?i!=null?"change-addition":"context":t;a.additionsContentAST.push(l(s)),a.pushToGutter("additions",j(h,"annotation",1)),d=!0}}d&&a.incrementRowCount(1)}function zt(e,{hunkIndex:t,collapsedLines:n,rangeSize:i,hunkSpecs:r,isFirstHunk:o,isLastHunk:s,isExpandable:l},a){if(n<=0)return;const d=e==="unified"?a.unifiedContentAST:e==="deletions"?a.deletionsContentAST:a.additionsContentAST;if(a.hunkSeparators==="metadata"){r!=null&&(a.pushToGutter(e,ke({type:"metadata",content:r,isFirstHunk:o,isLastHunk:s})),d.push(ke({type:"metadata",content:r,isFirstHunk:o,isLastHunk:s})),e!=="additions"&&a.incrementRowCount(1));return}if(a.hunkSeparators==="simple"){t>0&&(a.pushToGutter(e,ke({type:"simple",isFirstHunk:o,isLastHunk:!1})),d.push(ke({type:"simple",isFirstHunk:o,isLastHunk:!1})),e!=="additions"&&a.incrementRowCount(1));return}const h=aa(e,t),c=i>a.expansionLineCount,u=l?t:void 0;a.pushToGutter(e,ke({type:a.hunkSeparators,content:Kn(n),expandIndex:u,chunked:c,slotName:h,isFirstHunk:o,isLastHunk:s})),d.push(ke({type:a.hunkSeparators,content:Kn(n),expandIndex:u,chunked:c,slotName:h,isFirstHunk:o,isLastHunk:s})),e!=="additions"&&a.incrementRowCount(1),a.hunkData.push({slotName:h,hunkIndex:t,lines:n,type:e,expandable:l?{up:!o,down:!s,chunked:c}:void 0})}function dt(e,t){return e==null||e.type!=="element"||t==null?e:{...e,properties:{...e.properties,...t}}}function Ut(e,t){return Math.max(e.additionLines.length,e.deletionLines.length)>t}function ka(e,t){return e.lineNumber===t.lineNumber&&e.side===t.side&&e.metadata===t.metadata}function wa(e,t){return e.slotName===t.slotName&&e.hunkIndex===t.hunkIndex&&e.lines===t.lines&&e.type===t.type&&e.expandable?.chunked===t.expandable?.chunked&&e.expandable?.up===t.expandable?.up&&e.expandable?.down===t.expandable?.down}function Ea(e){return{theme:e?.theme,disableLineNumbers:e?.disableLineNumbers,overflow:e?.overflow,collapsed:e?.collapsed,disableFileHeader:e?.disableFileHeader,disableVirtualizationBuffers:e?.disableVirtualizationBuffers,stickyHeader:e?.stickyHeader,preferredHighlighter:e?.preferredHighlighter,useCSSClasses:e?.useCSSClasses,useTokenTransformer:e?.useTokenTransformer,tokenizeMaxLineLength:e?.tokenizeMaxLineLength,tokenizeMaxLength:e?.tokenizeMaxLength,diffStyle:e?.diffStyle,diffIndicators:e?.diffIndicators,disableBackground:e?.disableBackground,hunkSeparators:typeof e?.hunkSeparators=="function"?"custom":e?.hunkSeparators,expandUnchanged:e?.expandUnchanged,collapsedContextThreshold:e?.collapsedContextThreshold,lineDiffType:e?.lineDiffType,maxLineDiffLength:e?.maxLineDiffLength,expansionLineCount:e?.expansionLineCount,headerRenderMode:e?.renderCustomHeader!=null?"custom":"default"}}let Ta=-1;var Sr=class{options;workerManager;isContainerManaged;static LoadedCustomComponent=!0;__id=`file-diff:${++Ta}`;type="file-diff";fileContainer;spriteSVG;pre;codeUnified;codeDeletions;codeAdditions;bufferBefore;bufferAfter;themeCSSStyle;appliedThemeCSS;hasAdoptedThemeCSS=!1;unsafeCSSStyle;appliedUnsafeCSS;gutterUtilityContent;headerElement;headerPrefix;headerMetadata;headerCustom;separatorCache=new Map;errorWrapper;placeHolder;hunksRenderer;resizeManager;scrollSyncManager;interactionManager;annotationCache=new Map;lineAnnotations=[];managersDirty=!1;deletionFile;additionFile;fileDiff;renderRange;appliedPreAttributes;lastRenderedHeaderHTML;cachedHeaderHTML;lastRowCount;mounted=!1;enabled=!0;constructor(e={theme:_},t,n=!1){this.options=e,this.workerManager=t,this.isContainerManaged=n,this.hunksRenderer=this.createHunksRenderer(e),this.resizeManager=new _i,this.scrollSyncManager=new sa,this.interactionManager=new Pi("diff",Ke(e,typeof e.hunkSeparators=="function"||(e.hunkSeparators??"line-info")==="line-info"||e.hunkSeparators==="line-info-basic"?this.handleExpandHunk:void 0,this.getLineIndex)),this.workerManager?.subscribeToThemeChanges(this),this.enabled=!0}handleHighlightRender=()=>{this.rerender()};getHunksRendererOptions(e){return Ea(e)}createHunksRenderer(e){return new Cr(this.getHunksRendererOptions(e),this.handleHighlightRender,this.workerManager)}getLineIndex=(e,t="additions")=>{if(this.fileDiff==null)return;const n=this.fileDiff.hunks.at(-1);let i,r;e:for(const o of this.fileDiff.hunks){let s=t==="deletions"?o.deletionStart:o.additionStart;const l=t==="deletions"?o.deletionCount:o.additionCount;let a=o.splitLineStart,d=o.unifiedLineStart;if(e=s+l){if(o===n){const h=e-(s+l);i=d+o.unifiedLineCount+h,r=a+o.splitLineCount+h;break e}continue}for(const h of o.hunkContent)if(h.type==="context")if(ethis.interactionManager.getHoveredLine();setLineAnnotations(e){this.lineAnnotations=e}canPartiallyRender(e,t,n){return!(e||t||n||typeof this.options.hunkSeparators=="function")}setSelectedLines(e,t){this.interactionManager.setSelection(e,t)}flushManagers(){if(!this.managersDirty||this.pre==null){this.managersDirty=!1;return}const{diffStyle:e="split",overflow:t="scroll"}=this.options;this.interactionManager.setup(this.pre),this.resizeManager.setup(this.pre,t==="wrap"),t==="scroll"&&e==="split"?this.scrollSyncManager.setup(this.pre,this.codeDeletions,this.codeAdditions):this.scrollSyncManager.cleanUp(),this.managersDirty=!1}cleanUp(e=!1){this.emitPostRender(!0),this.resizeManager.cleanUp(),this.interactionManager.cleanUp(),this.scrollSyncManager.cleanUp(),this.managersDirty=!1,this.workerManager?.unsubscribeToThemeChanges(this),this.renderRange=void 0,this.isContainerManaged||this.fileContainer?.remove(),this.fileContainer=void 0,this.mounted=!1,e||(this.lineAnnotations=[]),this.clearAuxiliaryNodes(),this.annotationCache.clear(),this.pre=void 0,this.codeUnified=void 0,this.codeDeletions=void 0,this.codeAdditions=void 0,this.bufferBefore=void 0,this.bufferAfter=void 0,this.appliedPreAttributes=void 0,this.headerElement=void 0,this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0,this.placeHolder=void 0,this.lastRenderedHeaderHTML=void 0,e||(this.cachedHeaderHTML=void 0),this.errorWrapper=void 0,this.spriteSVG=void 0,this.lastRowCount=void 0,this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0,this.hasAdoptedThemeCSS=!1,this.unsafeCSSStyle=void 0,this.appliedUnsafeCSS=void 0,e?this.hunksRenderer.recycle():(this.hunksRenderer.cleanUp(),this.workerManager=void 0,this.fileDiff=void 0,this.deletionFile=void 0,this.additionFile=void 0),this.enabled=!1}virtualizedSetup(){this.enabled=!0,this.workerManager?.subscribeToThemeChanges(this)}hydrate(e){const{fileContainer:t,prerenderedHTML:n,preventEmit:i=!1,lineAnnotations:r,oldFile:o,newFile:s,fileDiff:l}=e;this.hydrateElements(t,n),Aa(this.pre,Ia({fileDiff:l,oldFile:o,newFile:s}),this.options.collapsed)||Ha(this.headerElement,Ra({fileDiff:l,oldFile:o,newFile:s}),this.options.disableFileHeader)?this.render({...e,preventEmit:!0}):this.hydrationSetup({fileDiff:l,oldFile:o,newFile:s,lineAnnotations:r}),i||this.emitPostRender()}hydrateElements(e,t){this.fileContainer!==e&&this.emitPostRender(!0),dr(e,t);for(const n of e.shadowRoot?.children??[]){if(n instanceof SVGElement){this.spriteSVG=n;continue}if(n instanceof HTMLElement){if(n instanceof HTMLPreElement){this.pre=n;for(const i of n.children)!(i instanceof HTMLElement)||i.tagName.toLowerCase()!=="code"||("deletions"in i.dataset&&(this.codeDeletions=i),"additions"in i.dataset&&(this.codeAdditions=i),"unified"in i.dataset&&(this.codeUnified=i));continue}if("diffsHeader"in n.dataset){this.headerElement=n;continue}if(n instanceof HTMLStyleElement&&n.hasAttribute("data-theme-css")){this.themeCSSStyle=n;continue}if(n instanceof HTMLStyleElement&&n.hasAttribute("data-unsafe-css")){this.unsafeCSSStyle=n,this.appliedUnsafeCSS=n.textContent;continue}}}this.pre!=null&&(this.syncCodeNodesFromPre(this.pre),this.pre.removeAttribute("data-dehydrated")),this.fileContainer=e,this.hydrateMeasuredScrollbar()}hydrationSetup({fileDiff:e,oldFile:t,newFile:n,lineAnnotations:i}){this.lineAnnotations=i??this.lineAnnotations,this.additionFile=n,this.deletionFile=t,this.fileDiff=e??(t!=null&&n!=null?tn(t,n,this.options.parseDiffOptions):void 0),this.pre!=null&&(this.syncInteractionOptions(),this.hunksRenderer.hydrate(this.fileDiff),this.renderAnnotations(),this.renderGutterUtility(),this.injectUnsafeCSS(),this.managersDirty=!0,this.flushManagers())}rerender(){!this.enabled||this.fileDiff==null&&this.additionFile==null&&this.deletionFile==null||this.render({forceRender:!0,renderRange:this.renderRange})}onThemeChange(){this.hunksRenderer.clearRenderCache(),this.rerender()}handleExpandHunk=(e,t,n)=>{this.expandHunk(e,t,n)};expandHunk=(e,t,n)=>{this.hunksRenderer.expandHunk(e,t,n),this.rerender()};render({oldFile:e,newFile:t,fileDiff:n,deferManagers:i=!1,forceRender:r=!1,preventEmit:o=!1,lineAnnotations:s,fileContainer:l,containerWrapper:a,renderRange:d}){if(!this.enabled)throw new Error("FileDiff.render: attempting to call render after cleaned up");const{collapsed:h=!1,themeType:c="system"}=this.options,u=h?void 0:d,f=this.hasThemeChanged(),g=e!=null&&t!=null&&(!ae(e,this.deletionFile)||!ae(t,this.additionFile));let b=n!=null&&n!==this.fileDiff;const y=s!=null&&(s.length>0||this.lineAnnotations.length>0)?s!==this.lineAnnotations:!1;if(!h&&Lt(u,this.renderRange)&&!r&&!y&&!f&&(n!=null&&n===this.fileDiff||n==null&&!g))return this.applyCachedThemeState(c);const{renderRange:m}=this;if(this.renderRange=u,this.deletionFile=e,this.additionFile=t,n!=null?this.fileDiff=n:e!=null&&t!=null&&g&&(b=!0,this.fileDiff=tn(e,t,this.options.parseDiffOptions)),b&&(this.cachedHeaderHTML=void 0),s!=null&&this.setLineAnnotations(s),this.fileDiff==null)return!1;this.hunksRenderer.setOptions(this.getHunksRendererOptions(this.options)),this.syncInteractionOptions(),this.hunksRenderer.setLineAnnotations(this.lineAnnotations);const{disableErrorHandling:p=!1,disableFileHeader:C=!1}=this.options;if(C&&(this.headerElement!=null&&(this.headerElement.remove(),this.headerElement=void 0,this.lastRenderedHeaderHTML=void 0),this.clearHeaderSlots()),l=this.getOrCreateFileContainer(l,a),this.applyCachedThemeState(c),h){this.removeRenderedCode(),this.clearAuxiliaryNodes();try{const v=this.hunksRenderer.renderDiff(this.fileDiff,Hi);v!=null&&this.applyThemeState(l,v.themeStyles,c,v.baseThemeType),v?.headerElement!=null&&this.applyHeaderToDOM(v.headerElement,l),this.renderSeparators([]),this.injectUnsafeCSS()}catch(v){if(p)throw v;console.error(v),v instanceof Error&&this.applyErrorToDOM(v,l)}return o||this.emitPostRender(),!0}try{const v=this.getOrCreatePreNode(l);if(!(this.canPartiallyRender(r,y,g||b||f)&&this.applyPartialRender({previousRenderRange:m,renderRange:u}))){const x=this.hunksRenderer.renderDiff(this.fileDiff,u);if(x==null)return this.workerManager?.isInitialized()===!1&&this.workerManager.initialize().then(()=>this.rerender()),!1;this.applyThemeState(l,x.themeStyles,c,x.baseThemeType),x.headerElement!=null&&this.applyHeaderToDOM(x.headerElement,l),x.additionsContentAST!=null||x.deletionsContentAST!=null||x.unifiedContentAST!=null?this.applyHunksToDOM(v,x):this.pre!=null&&(this.pre.remove(),this.pre=void 0),this.renderSeparators(x.hunkData)}this.applyBuffers(v,u),this.injectUnsafeCSS(),this.renderAnnotations(),this.renderGutterUtility(),this.managersDirty=!0,i||this.flushManagers()}catch(v){if(p)throw v;console.error(v),v instanceof Error&&this.applyErrorToDOM(v,l)}return o||this.emitPostRender(),!0}emitPostRender(e=!1){const{fileContainer:t,options:{onPostRender:n}}=this;if(e){if(!this.mounted||(this.mounted=!1,t==null))return;this.options.onPostRender?.(t,this,"unmount");return}if(t==null)return;const i=this.mounted?"update":"mount";this.mounted=!0,n?.(t,this,i)}removeRenderedCode(){this.resizeManager.cleanUp(),this.scrollSyncManager.cleanUp(),this.interactionManager.cleanUp(),this.bufferBefore?.remove(),this.bufferBefore=void 0,this.bufferAfter?.remove(),this.bufferAfter=void 0,this.codeUnified?.remove(),this.codeUnified=void 0,this.codeDeletions?.remove(),this.codeDeletions=void 0,this.codeAdditions?.remove(),this.codeAdditions=void 0,this.pre?.remove(),this.pre=void 0,this.appliedPreAttributes=void 0,this.lastRowCount=void 0}clearAuxiliaryNodes(){for(const{element:e}of this.separatorCache.values())e.remove();this.separatorCache.clear();for(const{element:e}of this.annotationCache.values())e.remove();this.annotationCache.clear(),this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0}renderPlaceholder(e){if(this.fileContainer==null)return!1;if(this.emitPostRender(!0),this.cleanChildNodes(),this.placeHolder==null){const t=this.fileContainer.shadowRoot??this.fileContainer.attachShadow({mode:"open"});this.placeHolder=document.createElement("div"),this.placeHolder.dataset.placeholder="",t.appendChild(this.placeHolder)}return this.placeHolder.style.setProperty("height",`${e}px`),!0}primeHighlightCache(){const{fileDiff:e,workerManager:t}=this;if(e==null||t==null||nn(e))return;const n=this.options.tokenizeMaxLength??1e5;Math.max(e.additionLines.length,e.deletionLines.length)>n||t.primeDiffHighlightCache(e)}cleanChildNodes(){this.resizeManager.cleanUp(),this.scrollSyncManager.cleanUp(),this.interactionManager.cleanUp(),this.clearAuxiliaryNodes(),this.bufferAfter?.remove(),this.bufferBefore?.remove(),this.codeAdditions?.remove(),this.codeDeletions?.remove(),this.codeUnified?.remove(),this.errorWrapper?.remove(),this.headerElement?.remove(),this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerCustom?.remove(),this.pre?.remove(),this.spriteSVG?.remove(),this.themeCSSStyle?.remove(),this.unsafeCSSStyle?.remove(),this.bufferAfter=void 0,this.bufferBefore=void 0,this.codeAdditions=void 0,this.codeDeletions=void 0,this.codeUnified=void 0,this.errorWrapper=void 0,this.headerElement=void 0,this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0,this.pre=void 0,this.spriteSVG=void 0,this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0,this.hasAdoptedThemeCSS=!1,this.unsafeCSSStyle=void 0,this.appliedUnsafeCSS=void 0,this.lastRenderedHeaderHTML=void 0,this.lastRowCount=void 0,this.mounted=!1}renderSeparators(e){const{hunkSeparators:t}=this.options;if(this.isContainerManaged||this.fileContainer==null||typeof t!="function"){for(const{element:i}of this.separatorCache.values())i.remove();this.separatorCache.clear();return}const n=new Map(this.separatorCache);for(const i of e){const r=i.slotName;let o=this.separatorCache.get(r);if(o==null||!wa(i,o.hunkData)){o?.element.remove();const s=document.createElement("div");s.style.display="contents",s.slot=i.slotName;const l=t(i,this);l!=null&&s.appendChild(l),this.fileContainer.appendChild(s),o={element:s,hunkData:i},this.separatorCache.set(r,o)}n.delete(r)}for(const[i,{element:r}]of n.entries())this.separatorCache.delete(i),r.remove()}renderAnnotations(){if(this.isContainerManaged||this.fileContainer==null){for(const{element:n}of this.annotationCache.values())n.remove();this.annotationCache.clear();return}const e=new Map(this.annotationCache),{renderAnnotation:t}=this.options;if(t!=null&&this.lineAnnotations.length>0)for(const[n,i]of this.lineAnnotations.entries()){const r=`${n}-${ge(i)}`;let o=this.annotationCache.get(r);if(o==null||!ka(i,o.annotation)){o?.element.remove();const s=t(i);if(s==null)continue;o={element:pn(ge(i)),annotation:i},o.element.appendChild(s),this.fileContainer.appendChild(o.element),this.annotationCache.set(r,o)}e.delete(r)}for(const[n,{element:i}]of e.entries())this.annotationCache.delete(n),i.remove()}renderGutterUtility(){const{renderGutterUtility:e}=this.options;if(this.fileContainer==null||e==null){this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0;return}const t=e(this.interactionManager.getHoveredLine);if(t!=null&&this.gutterUtilityContent!=null)return;if(t==null){this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0;return}const n=rr();n.appendChild(t),this.fileContainer.appendChild(n),this.gutterUtilityContent=n}getOrCreateFileContainer(e,t){const{fileContainer:n}=this,i=e??n??document.createElement("diffs-container"),r=n!==i;return r&&this.emitPostRender(!0),this.fileContainer=i,n!=null&&r&&(this.lastRenderedHeaderHTML=void 0,this.headerElement=void 0),t!=null&&this.fileContainer.parentNode!==t&&t.appendChild(this.fileContainer),r&&this.adoptReusableShellElements(this.fileContainer),this.ensureSpriteSVG(this.fileContainer),this.fileContainer}adoptReusableShellElements(e){const{shadowRoot:t}=e;if(t!=null)for(const n of t.children)n instanceof SVGElement?this.spriteSVG??=n:Xe(n)&&n.hasAttribute("data-theme-css")?(this.themeCSSStyle??=n,this.hasAdoptedThemeCSS=!0):Xe(n)&&n.hasAttribute("data-unsafe-css")&&(this.unsafeCSSStyle??=n,this.appliedUnsafeCSS??=this.options.unsafeCSS??void 0)}ensureSpriteSVG(e){const t=e.shadowRoot??e.attachShadow({mode:"open"});if(this.spriteSVG==null){const n=document.createElement("div");n.innerHTML=nr;const i=n.firstChild;i instanceof SVGElement&&(this.spriteSVG=i)}this.spriteSVG!=null&&this.spriteSVG.parentNode!==t&&t.appendChild(this.spriteSVG)}getOrCreatePreNode(e){const t=e.shadowRoot??e.attachShadow({mode:"open"});return this.pre==null?(this.pre=document.createElement("pre"),this.appliedPreAttributes=void 0,this.codeUnified=void 0,this.codeDeletions=void 0,this.codeAdditions=void 0,t.appendChild(this.pre)):this.pre.parentNode!==t&&(t.appendChild(this.pre),this.appliedPreAttributes=void 0),this.placeHolder?.remove(),this.placeHolder=void 0,this.pre}syncCodeNodesFromPre(e){this.codeUnified=void 0,this.codeDeletions=void 0,this.codeAdditions=void 0;for(const t of Array.from(e.children))t instanceof HTMLElement&&(t.hasAttribute("data-unified")?this.codeUnified=t:t.hasAttribute("data-deletions")?this.codeDeletions=t:t.hasAttribute("data-additions")&&(this.codeAdditions=t))}applyHeaderToDOM(e,t){this.cleanupErrorWrapper(),this.placeHolder?.remove(),this.placeHolder=void 0;const{fileDiff:n}=this,i=this.cachedHeaderHTML??pe(e);if(this.cachedHeaderHTML=i,i!==this.lastRenderedHeaderHTML){const d=document.createElement("div");d.innerHTML=i;const h=d.firstElementChild;if(!(h instanceof HTMLElement))return;this.headerElement!=null?t.shadowRoot?.replaceChild(h,this.headerElement):t.shadowRoot?.prepend(h),this.headerElement=h,this.lastRenderedHeaderHTML=i}if(this.isContainerManaged||n==null)return;const{renderCustomHeader:r,renderHeaderPrefix:o,renderHeaderMetadata:s}=this.options;if(r!=null){const d=r(n)??void 0;this.headerCustom=this.upsertHeaderSlotElement(t,this.headerCustom,an,d),this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerPrefix=void 0,this.headerMetadata=void 0;return}const l=o?.(n)??void 0,a=s?.(n)??void 0;this.headerPrefix=this.upsertHeaderSlotElement(t,this.headerPrefix,on,l),this.headerMetadata=this.upsertHeaderSlotElement(t,this.headerMetadata,sn,a),this.headerCustom?.remove(),this.headerCustom=void 0}clearHeaderSlots(){this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerCustom?.remove(),this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0}upsertHeaderSlotElement(e,t,n,i){if(i==null){t?.remove();return}const r=t??this.createHeaderSlotElement(n);return t==null&&e.appendChild(r),this.replaceHeaderSlotContent(r,i),r}replaceHeaderSlotContent(e,t){e.replaceChildren(),t instanceof Element?e.appendChild(t):e.innerText=`${t}`}createHeaderSlotElement(e){const t=document.createElement("div");return t.slot=e,t}injectUnsafeCSS(){const{unsafeCSS:e}=this.options,t=this.fileContainer?.shadowRoot;if(t!=null){if(e==null||e===""){this.unsafeCSSStyle!=null&&(this.unsafeCSSStyle.remove(),this.unsafeCSSStyle=void 0),this.appliedUnsafeCSS=void 0;return}this.unsafeCSSStyle?.parentNode===t&&this.appliedUnsafeCSS===e||(this.unsafeCSSStyle??=or(),this.unsafeCSSStyle.parentNode!==t&&t.appendChild(this.unsafeCSSStyle),this.unsafeCSSStyle.textContent=mn(e),this.appliedUnsafeCSS=e)}}applyThemeState(e,t,n,i){const r=e.shadowRoot??e.attachShadow({mode:"open"}),o=i??n,s=this.options.theme??_,l=typeof s=="string"?s:{...s},a=Me(r);if(this.themeCSSStyle?.parentNode===r&&this.appliedThemeCSS?.themeStyles===t&&this.appliedThemeCSS.themeType===o&&this.appliedThemeCSS.scrollbarGutter===a){this.appliedThemeCSS.theme=l;return}if(this.hasAdoptedThemeCSS&&this.themeCSSStyle?.parentNode===r){this.hasAdoptedThemeCSS=!1,this.appliedThemeCSS={theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a};return}this.themeCSSStyle=Cn({shadowRoot:r,currentNode:this.themeCSSStyle,themeCSS:vn(t,o,a)}),this.appliedThemeCSS=this.themeCSSStyle!=null?{theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a}:void 0}hydrateMeasuredScrollbar(){const e=this.fileContainer?.shadowRoot;e==null||this.themeCSSStyle==null||(this.themeCSSStyle.textContent=lr(this.themeCSSStyle.textContent??"",Me(e)))}applyHunksToDOM(e,t){const{overflow:n="scroll"}=this.options,i=(this.options.hunkSeparators??"line-info")==="line-info",r=n==="wrap"?t.rowCount:void 0;this.cleanupErrorWrapper(),this.applyPreNodeAttributes(e,t);let o=!1;const s=[],l=this.hunksRenderer.renderCodeAST("unified",t),a=this.hunksRenderer.renderCodeAST("deletions",t),d=this.hunksRenderer.renderCodeAST("additions",t);l!=null?(o=this.codeUnified==null||this.codeAdditions!=null||this.codeDeletions!=null,this.codeDeletions?.remove(),this.codeDeletions=void 0,this.codeAdditions?.remove(),this.codeAdditions=void 0,this.codeUnified=je({code:this.codeUnified,columnType:"unified",rowSpan:r,containerSize:i}),this.codeUnified.innerHTML=this.hunksRenderer.renderPartialHTML(l),s.push(this.codeUnified)):a!=null||d!=null?(a!=null?(o=this.codeDeletions==null||this.codeUnified!=null,this.codeUnified?.remove(),this.codeUnified=void 0,this.codeDeletions=je({code:this.codeDeletions,columnType:"deletions",rowSpan:r,containerSize:i}),this.codeDeletions.innerHTML=this.hunksRenderer.renderPartialHTML(a),s.push(this.codeDeletions)):(this.codeDeletions?.remove(),this.codeDeletions=void 0),d!=null?(o=o||this.codeAdditions==null||this.codeUnified!=null,this.codeUnified?.remove(),this.codeUnified=void 0,this.codeAdditions=je({code:this.codeAdditions,columnType:"additions",rowSpan:r,containerSize:i}),this.codeAdditions.innerHTML=this.hunksRenderer.renderPartialHTML(d),s.push(this.codeAdditions)):(this.codeAdditions?.remove(),this.codeAdditions=void 0)):(this.codeUnified?.remove(),this.codeUnified=void 0,this.codeDeletions?.remove(),this.codeDeletions=void 0,this.codeAdditions?.remove(),this.codeAdditions=void 0),s.length===0?e.textContent="":o&&e.replaceChildren(...s),this.lastRowCount=t.rowCount}applyPartialRender({previousRenderRange:e,renderRange:t}){const{pre:n,codeUnified:i,codeAdditions:r,codeDeletions:o,options:{diffStyle:s="split"}}=this;if(n==null||e==null||t==null||!Number.isFinite(e.totalLines)||!Number.isFinite(t.totalLines)||this.lastRowCount==null)return!1;const l=this.getCodeColumns(s,i,o,r);if(l==null)return!1;const a=e.startingLine,d=t.startingLine,h=a+e.totalLines,c=d+t.totalLines,u=Math.max(a,d),f=Math.min(h,c);if(f<=u)return!1;const g=Math.max(0,u-a),b=Math.max(0,h-f),y=this.trimColumns({columns:l,trimStart:g,trimEnd:b,previousStart:a,overlapStart:u,overlapEnd:f,diffStyle:s});if(y<0)throw new Error("applyPartialRender: failed to trim to overlap");if(this.lastRowCount{if(!(L<=0||this.fileDiff==null))return this.hunksRenderer.renderDiff(this.fileDiff,{startingLine:S,totalLines:L,bufferBefore:0,bufferAfter:0})},C=p(d,Math.max(u-d,0));if(C==null&&df)return!1;const x=(S,L)=>{if(S!=null){if(s==="unified"&&!Array.isArray(l))this.insertPartialHTML(s,l,S,L);else if(s==="split"&&Array.isArray(l))this.insertPartialHTML(s,l,S,L);else throw new Error("FileDiff.applyPartialRender.applyChunk: invalid chunk application");m+=S.rowCount}};return this.cleanupErrorWrapper(),x(C,"afterbegin"),x(v,"beforeend"),this.lastRowCount!==m&&(this.applyRowSpan(s,l,m),this.lastRowCount=m),!0}insertPartialHTML(e,t,n,i){if(e==="unified"&&!Array.isArray(t)){const r=this.hunksRenderer.renderCodeAST("unified",n);this.renderPartialColumn(t,r,i)}else if(e==="split"&&Array.isArray(t)){const r=this.hunksRenderer.renderCodeAST("deletions",n),o=this.hunksRenderer.renderCodeAST("additions",n);this.renderPartialColumn(t[0],r,i),this.renderPartialColumn(t[1],o,i)}else throw new Error("FileDiff.insertPartialHTML: Invalid argument composition")}renderPartialColumn(e,t,n){if(e==null||t==null)return;const i=Qn(t[0]),r=Qn(t[1]);if(i==null||r==null)throw new Error("FileDiff.insertPartialHTML: Unexpected AST structure");const o=r.at(0);n==="beforeend"&&o?.type==="element"&&typeof o.properties["data-buffer-size"]=="number"&&this.mergeBuffersIfNecessary(o.properties["data-buffer-size"],e.content.children[e.content.children.length-1],e.gutter.children[e.gutter.children.length-1],i,r,!0);const s=r.at(-1);n==="afterbegin"&&s?.type==="element"&&typeof s.properties["data-buffer-size"]=="number"&&this.mergeBuffersIfNecessary(s.properties["data-buffer-size"],e.content.children[0],e.gutter.children[0],i,r,!1),e.gutter.insertAdjacentHTML(n,this.hunksRenderer.renderPartialHTML(i)),e.content.insertAdjacentHTML(n,this.hunksRenderer.renderPartialHTML(r))}mergeBuffersIfNecessary(e,t,n,i,r,o){if(!(t instanceof HTMLElement)||!(n instanceof HTMLElement))return;const s=this.getBufferSize(t.dataset);s!=null&&(o?(i.shift(),r.shift()):(i.pop(),r.pop()),this.updateBufferSize(t,s+e),this.updateBufferSize(n,s+e))}applyRowSpan(e,t,n){const i=r=>{r!=null&&(r.gutter.style.setProperty("grid-row",`span ${n}`),r.content.style.setProperty("grid-row",`span ${n}`))};if(e==="unified"&&!Array.isArray(t))i(t);else if(e==="split"&&Array.isArray(t))i(t[0]),i(t[1]);else throw new Error("dun fuuuuked up")}trimColumnRows(e,t,n){let i=0,r=0,o=0,s=!1;const l=n>=0;if(e==null)return 0;const a=Array.from(e.content.children),d=Array.from(e.gutter.children);if(a.length!==d.length)throw new Error("FileDiff.trimColumnRows: columns do not match");for(;o0||l&&i>=n)&&(h.remove(),c.remove(),t>0&&(t--,t===0&&(s=!0)),r++),i++;continue}if("separator"in h.dataset&&"separator"in c.dataset){(t>0||l&&i>=n)&&(h.remove(),c.remove(),r++);continue}if(h.dataset.gutterBuffer==="annotation"&&"lineAnnotation"in c.dataset){(t>0||l&&i>=n)&&(h.remove(),c.remove(),r++);continue}if(h.dataset.gutterBuffer==="metadata"&&"noNewline"in c.dataset){(t>0||l&&i>=n)&&(h.remove(),c.remove(),r++);continue}if(h.dataset.gutterBuffer==="buffer"&&"contentBuffer"in c.dataset){const u=this.getBufferSize(c.dataset);if(u==null)throw new Error("FileDiff.trimColumnRows: invalid element");if(t>0){const f=Math.min(t,u),g=u-f;g>0?(this.updateBufferSize(h,g),this.updateBufferSize(c,g),r+=f):(h.remove(),c.remove(),r+=u),t-=f,t===0&&g===0&&(s=!0)}else if(l){const f=i,g=i+u-1;if(n<=f)h.remove(),c.remove(),r+=u;else if(n<=g){const b=g-n+1,y=u-b;this.updateBufferSize(h,y),this.updateBufferSize(c,y),r+=b}}i+=u;continue}throw console.error({gutterElement:h,contentElement:c}),new Error("FileDiff.trimColumnRows: unknown row elements")}return r}trimColumns({columns:e,diffStyle:t,overlapEnd:n,overlapStart:i,previousStart:r,trimEnd:o,trimStart:s}){const l=Math.max(0,i-r),a=n-r;if(a<0)throw new Error("FileDiff.trimColumns: overlap ends before previous");const d=s>0,h=o>0;if(!d&&!h)return 0;const c=d?l:0,u=h?a:-1;if(t==="unified"&&!Array.isArray(e))return this.trimColumnRows(e,c,u);if(t==="split"&&Array.isArray(e)){const f=this.trimColumnRows(e[0],c,u),g=this.trimColumnRows(e[1],c,u);if(e[0]!=null&&e[1]!=null&&f!==g)throw new Error("FileDiff.trimColumns: split columns out of sync");return e[0]!=null?f:g}else throw console.error({diffStyle:t,columns:e}),new Error("FileDiff.trimColumns: Invalid columns for diffType")}getBufferSize(e){const t=Number.parseInt(e?.bufferSize??"",10);return Number.isNaN(t)?void 0:t}updateBufferSize(e,t){e.dataset.bufferSize=`${t}`,e.style.setProperty("grid-row",`span ${t}`),e.style.setProperty("min-height",`calc(${t} * 1lh)`)}getCodeColumns(e,t,n,i){function r(o){if(o==null)return;const s=o.children[0],l=o.children[1];if(!(!(s instanceof HTMLElement)||!(l instanceof HTMLElement)||s.dataset.gutter==null||l.dataset.content==null))return{gutter:s,content:l}}if(e==="unified")return r(t);{const o=r(n),s=r(i);return o!=null||s!=null?[o,s]:void 0}}applyBuffers(e,t){if(t==null||this.shouldDisableVirtualizationBuffers()){this.bufferBefore!=null&&(this.bufferBefore.remove(),this.bufferBefore=void 0),this.bufferAfter!=null&&(this.bufferAfter.remove(),this.bufferAfter=void 0);return}t.bufferBefore>0?(this.bufferBefore==null&&(this.bufferBefore=document.createElement("div"),this.bufferBefore.dataset.virtualizerBuffer="before",e.before(this.bufferBefore)),this.bufferBefore.style.setProperty("height",`${t.bufferBefore}px`),this.bufferBefore.style.setProperty("contain","strict")):this.bufferBefore!=null&&(this.bufferBefore.remove(),this.bufferBefore=void 0),t.bufferAfter>0?(this.bufferAfter==null&&(this.bufferAfter=document.createElement("div"),this.bufferAfter.dataset.virtualizerBuffer="after",e.after(this.bufferAfter)),this.bufferAfter.style.setProperty("height",`${t.bufferAfter}px`),this.bufferAfter.style.setProperty("contain","strict")):this.bufferAfter!=null&&(this.bufferAfter.remove(),this.bufferAfter=void 0)}shouldDisableVirtualizationBuffers(){return this.options.disableVirtualizationBuffers??!1}applyPreNodeAttributes(e,{additionsContentAST:t,deletionsContentAST:n,totalLines:i},r){const{diffIndicators:o="bars",disableBackground:s=!1,disableLineNumbers:l=!1,overflow:a="scroll",diffStyle:d="split"}=this.options,h={type:"diff",diffIndicators:o,disableBackground:s,disableLineNumbers:l,overflow:a,split:d==="unified"?!1:t!=null&&n!=null,totalLines:i,customProperties:r};ir(h,this.appliedPreAttributes)||(bn(e,h),this.appliedPreAttributes=h)}applyErrorToDOM(e,t){this.cleanupErrorWrapper(),this.pre?.remove(),this.pre=void 0,this.appliedPreAttributes=void 0;const n=t.shadowRoot??t.attachShadow({mode:"open"});this.errorWrapper??=document.createElement("div"),this.errorWrapper.dataset.errorWrapper="",this.errorWrapper.textContent="",n.appendChild(this.errorWrapper);const i=document.createElement("div");i.dataset.errorMessage="",i.innerText=e.message,this.errorWrapper.appendChild(i);const r=document.createElement("pre");r.dataset.errorStack="",r.innerText=e.stack??"No Error Stack",this.errorWrapper.appendChild(r)}cleanupErrorWrapper(){this.errorWrapper?.remove(),this.errorWrapper=void 0}};function Ia({fileDiff:e,oldFile:t,newFile:n}){return e!=null&&e.hunks.length>0||t!=null||n!=null}function Ra({fileDiff:e,oldFile:t,newFile:n}){return e!=null||t!=null||n!=null}function Aa(e,t,n=!1){return!n&&e==null&&t}function Ha(e,t,n=!1){return e==null&&t&&!n}function Qn(e){if(!(e==null||e.type!=="element"))return e.children??[]}function Ma({fileDiff:e,metrics:t,disableFileHeader:n,hunkSeparators:i,expandUnchanged:r,expandedHunks:o,collapsedContextThreshold:s}){let l=se(t,n),a=l;const d=r?!0:o,h=e.hunks.length-1;for(let c=0;c0){const m=$e({type:i,metrics:t,hunkIndex:c,hunkSpecs:u.hunkSpecs})?.totalHeight??0;l+=m,a+=m}l+=u.splitLineCount*t.lineHeight,a+=u.unifiedLineCount*t.lineHeight;const b=Da(u);l+=b.split*t.lineHeight,a+=b.unified*t.lineHeight;const y=c===h?Je({fileDiff:e,hunkIndex:c,expandedHunks:d,collapsedContextThreshold:s,errorPrefix:"computeEstimatedDiffHeights"}):void 0;if(y!=null){const m=(y.fromStart+y.fromEnd)*t.lineHeight;if(l+=m,a+=m,y.collapsedLines>0){const p=We({type:i,metrics:t})?.totalHeight??0;l+=p,a+=p}}}if(e.hunks.length>0){const c=yt(t);l+=c,a+=c}return{splitHeight:l,unifiedHeight:a}}function Da(e){if(!e.noEOFCRAdditions&&!e.noEOFCRDeletions)return{split:0,unified:0};const t=e.hunkContent.at(-1);if(t==null)return{split:0,unified:0};if(t.type==="context"){const n=t.lines>0?1:0;return{split:n,unified:n}}return Pa(e,t)}function Pa(e,t){const n=(t.deletions>0&&e.noEOFCRDeletions?1:0)+(t.additions>0&&e.noEOFCRAdditions?1:0),i=t.deletions>0&&e.noEOFCRDeletions,r=t.additions>0&&e.noEOFCRAdditions;return{split:i||r?1:0,unified:n}}const rn=5e3;let _a=-1;var Oa=class extends Sr{__id=`little-virtualized-file-diff:${++_a}`;top;height=0;metrics;cache={heightDeltas:new Map,measuredHeightDeltaTotal:0,estimatedSplitHeight:void 0,estimatedUnifiedHeight:void 0,checkpoints:[],totalLines:0,fileAnnotationHeight:0};isVisible=!1;isSetup=!1;virtualizer;layoutDirty=!0;forceRenderOverride;currentCollapsed;constructor(e,t,n,i,r=!1){super(e,i,r),this.virtualizer=t,this.metrics=_t(n)}setMetrics(e,t=!1){const n=_t(e);!t&&He(this.metrics,n)||(this.metrics=n,this.resetLayoutCache({includeEstimatedHeights:!0}))}setLineAnnotations(e){this.syncLineAnnotations(e)&&this.resetLayoutCache({includeEstimatedHeights:!1})}syncLineAnnotations(e){return e==null||e===this.lineAnnotations||e.length===0&&this.lineAnnotations.length===0?!1:(super.setLineAnnotations(e),!0)}setFileAnnotationHeight(e){const t=this.cache.fileAnnotationHeight;return e===t?!1:(this.cache.fileAnnotationHeight=e,this.cache.measuredHeightDeltaTotal+=e-t,!0)}hasFileAnnotations(e=this.fileDiff){return e==null||!Yt(this.lineAnnotations)?!1:this.lineAnnotations.some(t=>t.lineNumber!==0?!1:e.type==="new"?t.side==="additions":e.type==="deleted"?t.side==="deletions":!0)}getLineHeight(e,t=!1){return this.getEstimatedLineHeight(t)+(this.cache.heightDeltas.get(e)??0)}getEstimatedLineHeight(e=!1){const t=e?2:1;return this.metrics.lineHeight*t}setOptions(e){if(this.isAdvancedMode())throw new Error("VirtualizedFileDiff.setOptions cannot be used inside CodeView. Update CodeView options instead.");if(e==null)return;const{options:t}=this,n=!dn(t,e),i=n&&Ba(t,e);super.setOptions(e),i&&this.resetLayoutCache({forceSimpleRecompute:!0,includeEstimatedHeights:$a(t,e)}),n&&(this.forceRenderOverride=!0),n&&this.isSimpleMode()&&this.virtualizer.instanceChanged(this,i)}setThemeType(e){if(this.isAdvancedMode())throw new Error("VirtualizedFileDiff.setThemeType cannot be used inside CodeView. Update CodeView options instead.");super.setThemeType(e)}resetLayoutCache({forceSimpleRecompute:e=!1,includeEstimatedHeights:t=!1}={}){this.layoutDirty=!0,this.cache.fileAnnotationHeight=0,this.cache.heightDeltas.size>0&&this.cache.heightDeltas.clear(),this.cache.measuredHeightDeltaTotal!==0&&(this.cache.measuredHeightDeltaTotal=0),this.cache.checkpoints.length>0&&(this.cache.checkpoints.length=0),this.cache.totalLines!==0&&(this.cache.totalLines=0),t&&(this.cache.estimatedSplitHeight=void 0,this.cache.estimatedUnifiedHeight=void 0),this.renderRange!=null&&(this.renderRange=void 0),e&&this.isSimpleMode()&&this.computeApproximateSize()}reconcileHeights(){let e=!1;const{overflow:t="scroll"}=this.options;if(this.fileContainer==null||this.fileDiff==null)return this.height!==0&&(e=!0),this.height=0,e;if(this.top=this.getVirtualizedTop(),t==="scroll"&&this.lineAnnotations.length===0&&!this.isResizeDebuggingEnabled())return e;const n=this.getDiffStyle(),i=n==="split"?[this.codeDeletions,this.codeAdditions]:[this.codeUnified],r=this.hasFileAnnotations(this.fileDiff);if(this.renderRange!=null&&r&&kt(this.renderRange)){const o=Na(i)??0;this.setFileAnnotationHeight(o)&&(e=!0)}else!r&&this.setFileAnnotationHeight(0)&&(e=!0);for(const o of i){if(o==null)continue;const s=o.children[1];if(s instanceof HTMLElement)for(const l of s.children){if(!(l instanceof HTMLElement))continue;const a=l.dataset.lineIndex;if(a==null)continue;const d=Ga(a,n);let h=l.getBoundingClientRect().height,c=!1;l.nextElementSibling instanceof HTMLElement&&("lineAnnotation"in l.nextElementSibling.dataset||"noNewline"in l.nextElementSibling.dataset)&&("noNewline"in l.nextElementSibling.dataset&&(c=!0),h+=l.nextElementSibling.getBoundingClientRect().height);const u=this.getEstimatedLineHeight(c),f=this.cache.heightDeltas.get(d)??0,g=h-u;g!==f&&(e=!0,this.cache.measuredHeightDeltaTotal+=g-f,g===0?this.cache.heightDeltas.delete(d):this.cache.heightDeltas.set(d,g))}}return(e||this.isResizeDebuggingEnabled())&&this.computeApproximateSize(!0),e}onRender=e=>this.fileContainer==null?!1:(e&&(this.top=this.getVirtualizedTop()),this.render());prepareCodeViewItem(e,t,n,i){const r=!Be(this.fileDiff,e),o=this.syncLineAnnotations(i);let s=n?.resetDiffLayoutCache===!0||r||o,l=r||n?.resetDiffLayoutCache===!0&&n.includeEstimatedDiffHeights;n?.metrics!=null&&(this.metrics=_t(n.metrics),s=!0,l=!0);const{collapsed:a=!1}=this.options;return this.currentCollapsed!==a&&(this.currentCollapsed=a,s=!0),s&&this.resetLayoutCache({includeEstimatedHeights:l}),this.fileDiff=e,this.top=t,this.computeApproximateSize(),this.height}getLinePosition(e,t="additions"){if(this.fileDiff==null||e<1)return;const n=this.getLineIndex(e,t);if(n==null)return;const{disableFileHeader:i=!1,expandUnchanged:r=!1,collapsed:o=!1,collapsedContextThreshold:s=1}=this.options,l=this.getDiffStyle(),a=this.getHunkSeparatorType(),d=l==="split"?n[1]:n[0];this.approximateLayoutCheckpoints();const h=se(this.metrics,i),c=this.getLayoutCheckpointBeforeLineIndex(d);let u=c?.top??h+this.cache.fileAnnotationHeight;if(o)return{top:h,height:0};let f;return qe({diff:this.fileDiff,diffStyle:l,startingLine:c?.renderedLineIndex??0,expandedHunks:r?!0:this.hunksRenderer.getExpandedHunksMap(),collapsedContextThreshold:s,callback:({hunkIndex:g,hunk:b,collapsedBefore:y,collapsedAfter:m,deletionLine:p,additionLine:C})=>{const v=l==="split"?C?.splitLineIndex??p?.splitLineIndex:C?.unifiedLineIndex??p?.unifiedLineIndex;if(v==null)throw new Error("VirtualizedFileDiff.getLinePosition: missing line index data");if(y>0){const S=$e({type:a,metrics:this.metrics,hunkIndex:g,hunkSpecs:b?.hunkSpecs});if(S!=null){if(u+=S.gapBefore,d>=v-y&&d0){const S=We({type:a,metrics:this.metrics});if(S!=null){if(d>v&&d<=v+m)return f={top:u+S.gapBefore,height:S.height},!0;u+=S.totalHeight}}return!1}}),f}getNumericScrollAnchor(e){if(this.fileDiff==null)return;const{disableFileHeader:t=!1,expandUnchanged:n=!1,collapsed:i=!1,collapsedContextThreshold:r=1}=this.options;if(i)return;const o=this.getDiffStyle(),s=this.getHunkSeparatorType();this.approximateLayoutCheckpoints();const l=this.getLayoutCheckpointBeforeTop(e);let a=l?.top??se(this.metrics,t)+this.cache.fileAnnotationHeight,d;return qe({diff:this.fileDiff,diffStyle:o,startingLine:l?.renderedLineIndex??0,expandedHunks:n?!0:this.hunksRenderer.getExpandedHunksMap(),collapsedContextThreshold:r,callback:({hunkIndex:h,hunk:c,collapsedBefore:u,collapsedAfter:f,deletionLine:g,additionLine:b})=>{const y=o==="split"?b?.splitLineIndex??g?.splitLineIndex:b?.unifiedLineIndex??g?.unifiedLineIndex;if(y==null)throw new Error("VirtualizedFileDiff.getNumericScrollAnchor: missing line index data");if(u>0){const p=$e({type:s,metrics:this.metrics,hunkIndex:h,hunkSpecs:c?.hunkSpecs});p!=null&&(a+=p.totalHeight)}if(a>=e&&(g!=null?d={lineNumber:g.lineNumber,side:"deletions",top:a}:b!=null&&(d={lineNumber:b.lineNumber,side:"additions",top:a}),d!=null))return!0;const m=this.getLineHeight(y,(b?.noEOFCR??!1)||(g?.noEOFCR??!1));if(a+=m,f>0){const p=We({type:s,metrics:this.metrics});p!=null&&(a+=p.totalHeight)}return!1}}),d}getVirtualizedHeight(){return this.height}getAdvancedStickySpecs(e){if(this.top==null||this.fileDiff==null)return;if(this.options.collapsed===!0)return{topOffset:this.top,height:this.height};const t=e!=null?this.computeRenderRangeFromWindow(this.fileDiff,this.top,e):this.renderRange;if(t==null)return;const{bufferBefore:n,bufferAfter:i,totalLines:r}=t;let o=0;if(r===0){const s=e??this.virtualizer.getWindowSpecs();this.top{this.hunksRenderer.expandHunk(e,t,n),this.forceRenderOverride=!0,this.resetLayoutCache({includeEstimatedHeights:!0}),this.isSimpleMode()&&this.computeApproximateSize(),this.virtualizer.instanceChanged(this,!0)};setVisibility(e){this.isAdvancedMode()||this.fileContainer==null||(this.renderRange=void 0,e&&!this.isVisible?(this.top=this.getVirtualizedTop(),this.isVisible=!0):!e&&this.isVisible&&(this.isVisible=!1,this.rerender()))}rerender(){!this.enabled||this.fileDiff==null&&this.additionFile==null&&this.deletionFile==null||(this.forceRenderOverride=!0,this.virtualizer.instanceChanged(this,!1))}computeApproximateSize(e=!1){const t=this.isResizeDebuggingEnabled();if(!e&&!this.layoutDirty&&!t)return;const n=this.height===0;if(this.height=0,this.cache.checkpoints=[],this.cache.totalLines=0,this.fileDiff==null){this.layoutDirty=!1;return}const{disableFileHeader:i=!1,collapsed:r=!1}=this.options,o=se(this.metrics,i);if(this.height+=o,r){this.layoutDirty=!1;return}this.height=this.getActiveEstimatedHeight()+this.cache.measuredHeightDeltaTotal,t&&!n&&this.validateComputedHeight(),this.layoutDirty=!1}getActiveEstimatedHeight(){this.ensureEstimatedDiffHeights();const e=this.getDiffStyle()==="split"?this.cache.estimatedSplitHeight:this.cache.estimatedUnifiedHeight;if(e==null)throw new Error("VirtualizedFileDiff.getActiveEstimatedHeight: missing estimated height");return e}ensureEstimatedDiffHeights(){if(this.fileDiff==null){this.cache.estimatedSplitHeight=void 0,this.cache.estimatedUnifiedHeight=void 0;return}if(this.cache.estimatedSplitHeight!=null&&this.cache.estimatedUnifiedHeight!=null)return;const{disableFileHeader:e=!1,expandUnchanged:t=!1,collapsedContextThreshold:n=1}=this.options,{splitHeight:i,unifiedHeight:r}=Ma({fileDiff:this.fileDiff,metrics:this.metrics,disableFileHeader:e,hunkSeparators:this.getHunkSeparatorType(),expandUnchanged:t,expandedHunks:this.hunksRenderer.getExpandedHunksMap(),collapsedContextThreshold:n});this.cache.estimatedSplitHeight=i,this.cache.estimatedUnifiedHeight=r}validateComputedHeight(){if(this.fileContainer==null||this.fileDiff==null)return;const e=this.fileContainer.getBoundingClientRect();e.height!==this.height?console.log("VirtualizedFileDiff.computeApproximateSize: computed height doesnt match",{name:this.fileDiff.name,elementHeight:e.height,computedHeight:this.height}):console.log("VirtualizedFileDiff.computeApproximateSize: computed height IS CORRECT")}render({fileContainer:e,oldFile:t,newFile:n,fileDiff:i,forceRender:r=!1,lineAnnotations:o,...s}={}){const{forceRenderOverride:l,isSetup:a}=this;this.forceRenderOverride=void 0;const d=this.syncLineAnnotations(o);if(d&&this.resetLayoutCache({includeEstimatedHeights:!1}),this.fileDiff??=i??(t!=null&&n!=null?tn(t,n,this.options.parseDiffOptions):void 0),e=this.getOrCreateFileContainer(e),this.fileDiff==null)return console.error("VirtualizedFileDiff.render: attempting to virtually render when we dont have the correct data"),!1;if(a)this.top??=this.getVirtualizedTop();else{this.computeApproximateSize();const f=this.getSimpleVirtualizer();if(this.top??=this.getVirtualizedTop(),this.isAdvancedMode())this.isVisible=!0;else{if(f==null)throw new Error("VirtualizedFileDiff.render: simple virtualizer is not available");f.connect(e,this),this.isVisible=f.isInstanceVisible(this.top??0,this.height)}this.isSetup=!0}if(!this.isVisible&&this.isSimpleMode())return this.renderPlaceholder(this.height);const h=this.virtualizer.getWindowSpecs(),c=this.top??0,u=this.computeRenderRangeFromWindow(this.fileDiff,c,h);return super.render({fileDiff:this.fileDiff,fileContainer:e,renderRange:u,oldFile:t,newFile:n,lineAnnotations:o,forceRender:(l??r)||d,...s})}syncVirtualizedTop(){this.top=this.getVirtualizedTop()}shouldDisableVirtualizationBuffers(){return this.isAdvancedMode()||super.shouldDisableVirtualizationBuffers()}isSimpleMode(){return this.virtualizer.type==="simple"}isAdvancedMode(){return this.virtualizer.type==="advanced"}getVirtualizedTop(){return this.virtualizer.type==="advanced"?this.virtualizer.getLocalTopForInstance(this):this.fileContainer!=null?this.virtualizer.getOffsetInScrollContainer(this.fileContainer):0}getSimpleVirtualizer(){return this.virtualizer.type==="simple"?this.virtualizer:void 0}isResizeDebuggingEnabled(){return this.getSimpleVirtualizer()?.config.resizeDebugging??!1}getDiffStyle(){return this.options.diffStyle??"split"}getHunkSeparatorType(){return Wa(this.options.hunkSeparators)}approximateLayoutCheckpoints(){if(this.cache.checkpoints.length>0||this.fileDiff==null||this.fileDiff.hunks.length===0||this.options.collapsed===!0)return;const{disableFileHeader:e=!1,expandUnchanged:t=!1,collapsedContextThreshold:n=1}=this.options,i=this.fileDiff.hunks.length-1,r=this.getDiffStyle(),o=this.getHunkSeparatorType(),s=t?!0:this.hunksRenderer.getExpandedHunksMap(),l=Fa(this.cache.heightDeltas);let a=se(this.metrics,e)+this.cache.fileAnnotationHeight,d=0;const h=({rowCount:c,startLineIndex:u,preSeparatorHeight:f=0,postSeparatorHeight:g=0,metadataOffsets:b=[]})=>{if(c<=0)return;const y=d,m=d+c;let p=za(y);for(;p0?f:0)+C*this.metrics.lineHeight+Ua(b,C)*this.metrics.lineHeight+Jn(l,u,u+C);this.cache.checkpoints.push({renderedLineIndex:p,lineIndex:u+C,top:v}),p+=rn}a+=f+c*this.metrics.lineHeight+b.length*this.metrics.lineHeight+Jn(l,u,u+c)+g,d=m};for(let c=0;c0?$e({type:o,metrics:this.metrics,hunkIndex:c,hunkSpecs:u.hunkSpecs})?.totalHeight??0:0;h({rowCount:f.fromStart,startLineIndex:(r==="split"?u.splitLineStart:u.unifiedLineStart)-f.rangeSize});let b=g;h({rowCount:f.fromEnd,startLineIndex:(r==="split"?u.splitLineStart:u.unifiedLineStart)-f.fromEnd,preSeparatorHeight:b}),f.fromEnd>0&&(b=0);const y=c===i?Je({fileDiff:this.fileDiff,hunkIndex:c,expandedHunks:s,collapsedContextThreshold:n,errorPrefix:"VirtualizedFileDiff"}):void 0,m=y!=null&&y.collapsedLines>0?We({type:o,metrics:this.metrics})?.totalHeight??0:0,p=y!=null?y.fromStart+y.fromEnd:0,C=r==="split"?u.splitLineCount:u.unifiedLineCount,v=r==="split"?u.splitLineStart:u.unifiedLineStart;h({rowCount:C,startLineIndex:v,preSeparatorHeight:b,postSeparatorHeight:p===0?m:0,metadataOffsets:Va({diffStyle:r,hunk:u,rowCount:C})}),y!=null&&p>0&&h({rowCount:p,startLineIndex:v+C,postSeparatorHeight:m})}this.cache.totalLines=d}getLayoutCheckpointBeforeLineIndex(e){if(e<=0||this.cache.checkpoints.length===0)return;let t=0,n=this.cache.checkpoints.length-1,i;for(;t<=n;){const r=t+n>>1,o=this.cache.checkpoints[r];if(o==null)throw new Error("VirtualizedFileDiff: invalid checkpoint index");o.lineIndex<=e?(i=o,t=r+1):n=r-1}return i}getLayoutCheckpointBeforeTop(e,t){let n=0,i=this.cache.checkpoints.length-1,r=-1;for(;n<=i;){const o=n+i>>1,s=this.cache.checkpoints[o];if(s==null)throw new Error("VirtualizedFileDiff: invalid checkpoint index");s.top<=e?(r=o,n=o+1):i=o-1}if(t==null)return r>=0?this.cache.checkpoints[r]:void 0;for(let o=r;o>=0;o--){const s=this.cache.checkpoints[o];if(s==null)throw new Error("VirtualizedFileDiff: invalid checkpoint index");if(s.renderedLineIndex%t===0)return s}}getExpandedLineCount(e,t){let n=0;if(e.isPartial){for(const l of e.hunks)n+=t==="split"?l.splitLineCount:l.unifiedLineCount;return n}const{expandUnchanged:i=!1,collapsedContextThreshold:r=1}=this.options,o=i?!0:this.hunksRenderer.getExpandedHunksMap();for(const[l,a]of e.hunks.entries()){const d=t==="split"?a.splitLineCount:a.unifiedLineCount;n+=d;const h=Math.max(a.collapsedBefore,0),{fromStart:c,fromEnd:u,renderAll:f}=Qe({isPartial:e.isPartial,rangeSize:h,expandedHunks:o,hunkIndex:l,collapsedContextThreshold:r});h>0&&(n+=f?h:c+u)}const s=Je({fileDiff:e,hunkIndex:e.hunks.length-1,expandedHunks:o,collapsedContextThreshold:r,errorPrefix:"VirtualizedFileDiff"});return s!=null&&(n+=s.fromStart+s.fromEnd),n}computeRenderRangeFromWindow(e,t,{top:n,bottom:i}){const{disableFileHeader:r=!1,expandUnchanged:o=!1,collapsedContextThreshold:s=1}=this.options,{hunkLineCount:l,lineHeight:a}=this.metrics,d=this.getDiffStyle(),h=this.getHunkSeparatorType(),c=this.height;let u=this.cache.totalLines>0?this.cache.totalLines:this.getExpandedLineCount(e,d);const f=se(this.metrics,r),g=e.hunks.length>0?yt(this.metrics):0,{fileAnnotationHeight:b}=this.cache,y=f+b,m=Math.max(0,c-f-b-g),p=this.hasFileAnnotations(e),C=t+f,v=b>0&&p&&Cn;if(ti)return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:c-f-g};if(u<=l||e.hunks.length===0)return{startingLine:0,totalLines:l,bufferBefore:0,bufferAfter:0};this.approximateLayoutCheckpoints(),u=this.cache.totalLines>0?this.cache.totalLines:u;const x=Math.ceil(Math.max(i-n,0)/a),S=Math.ceil(x/l)*l+l,L=S/l,E=L,w=[],R=(n+i)/2,H=this.getLayoutCheckpointBeforeTop(Math.max(0,n-t-S*a*2),l);let I=t+(H?.top??y),T=H?.renderedLineIndex??0,M,N,G;if(qe({diff:e,diffStyle:d,startingLine:H?.renderedLineIndex??0,expandedHunks:o?!0:this.hunksRenderer.getExpandedHunksMap(),collapsedContextThreshold:s,callback:({hunkIndex:le,hunk:q,collapsedBefore:ye,collapsedAfter:P,deletionLine:V,additionLine:z})=>{const de=z!=null?z.splitLineIndex:V.splitLineIndex,te=z!=null?z.unifiedLineIndex:V.unifiedLineIndex,ne=(z?.noEOFCR??!1)||(V?.noEOFCR??!1),Pe=(ye>0?$e({type:h,metrics:this.metrics,hunkIndex:le,hunkSpecs:q?.hunkSpecs}):void 0)?.totalHeight??0;I+=Pe;const K=T%l===0,wt=Math.floor(T/l);if(K&&(w[wt]=I-(t+y+Pe),G!=null)){if(G<=0)return!0;G--}const Et=this.getLineHeight(d==="split"?de:te,ne);return I>n-Et&&IR&&(N=wt),G==null&&I>=i&&K&&(G=E),T++,I+=Et,P>0&&(I+=We({type:h,metrics:this.metrics})?.totalHeight??0),!1}}),M==null)if(v)M=0,N=0;else return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:c-f-g};N??=M;const D=Math.round(N-L/2),F=Math.max(0,Math.ceil(u/l)-L),O=Math.max(0,Math.min(D,F)),J=O*l,me=D<0?S+D*l:S,ve=w[O]??0,Le=J===0?0:b+ve,ee=O+me/l,be=eeo[0]-s[0]),n=[],i=[0];let r=0;for(const[o,s]of t)n.push(o),r+=s,i.push(r);return{lineIndexes:n,prefixTotals:i}}function Jn({lineIndexes:e,prefixTotals:t},n,i){if(n>=i||e.length===0)return 0;const r=Zn(e,n);return(t[Zn(e,i)]??0)-(t[r]??0)}function Zn(e,t){let n=0,i=e.length;for(;n>1,o=e[r];if(o==null)throw new Error("VirtualizedFileDiff: invalid prefix index");o0&&(t.noEOFCRAdditions||t.noEOFCRDeletions)?[n-1]:[];const s=[],l=n-o;return i.deletions>0&&t.noEOFCRDeletions&&s.push(l+i.deletions-1),i.additions>0&&t.noEOFCRAdditions&&s.push(n-1),s}function Ba(e,t){return(e.diffStyle??"split")!==(t.diffStyle??"split")||(e.overflow??"scroll")!==(t.overflow??"scroll")||(e.collapsed??!1)!==(t.collapsed??!1)||(e.disableLineNumbers??!1)!==(t.disableLineNumbers??!1)||(e.disableFileHeader??!1)!==(t.disableFileHeader??!1)||(e.diffIndicators??"bars")!==(t.diffIndicators??"bars")||(e.hunkSeparators??"line-info")!==(t.hunkSeparators??"line-info")||(e.expandUnchanged??!1)!==(t.expandUnchanged??!1)||(e.collapsedContextThreshold??1)!==(t.collapsedContextThreshold??1)||e.unsafeCSS!==t.unsafeCSS}function $a(e,t){return(e.disableFileHeader??!1)!==(t.disableFileHeader??!1)||(e.hunkSeparators??"line-info")!==(t.hunkSeparators??"line-info")||(e.expandUnchanged??!1)!==(t.expandUnchanged??!1)||(e.collapsedContextThreshold??1)!==(t.collapsedContextThreshold??1)}function Wa(e){return typeof e=="function"?"custom":e??"line-info"}function Ga(e,t){const[n,i]=e.split(",").map(Number);return t==="split"?i:n}function re(e){const t=window.devicePixelRatio??1;return Math.round(e*t)/t}const ja=["theme","disableLineNumbers","overflow","themeType","disableFileHeader","disableVirtualizationBuffers","preferredHighlighter","useCSSClasses","useTokenTransformer","tokenizeMaxLineLength","tokenizeMaxLength","unsafeCSS","diffStyle","diffIndicators","disableBackground","expandUnchanged","collapsedContextThreshold","lineDiffType","maxLineDiffLength","expansionLineCount","lineHoverHighlight","enableTokenInteractionsOnWhitespace","enableGutterUtility","__debugPointerEvents","enableLineSelection","controlledSelection","disableErrorHandling"],qa=["theme","disableLineNumbers","overflow","themeType","disableFileHeader","disableVirtualizationBuffers","preferredHighlighter","useCSSClasses","useTokenTransformer","tokenizeMaxLineLength","tokenizeMaxLength","unsafeCSS","lineHoverHighlight","enableTokenInteractionsOnWhitespace","enableGutterUtility","__debugPointerEvents","enableLineSelection","controlledSelection","disableErrorHandling"],ei=["renderCustomHeader","renderHeaderPrefix","renderHeaderMetadata","renderAnnotation","renderGutterUtility","onPostRender","onGutterUtilityClick","onLineClick","onLineNumberClick","onLineEnter","onLineLeave","onTokenClick","onTokenEnter","onTokenLeave"],ti=["onLineSelected","onLineSelectionStart","onLineSelectionChange","onLineSelectionEnd"],yr=Symbol("CodeView.itemOptionsState");function ni(e,t){Object.defineProperty(e,yr,{configurable:!1,enumerable:!1,value:t})}function ze(e){return e[yr]}function ce(e,t,n){Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get(){return n(this)}})}const Ka=120,ii="--diffs-overflow-override",yn=12e6,xr=1e6,Lr=2e6,Ya=yn-Lr,ri=yn-xr,Xa=(()=>{const{navigator:e}=globalThis,t=e.userAgent,n=/iP(?:hone|ad|od)/.test(t),i=e.platform==="MacIntel"&&e.maxTouchPoints>1;return(n||i)&&/AppleWebKit/.test(t)&&/Safari/.test(t)&&!/(CriOS|FxiOS|EdgiOS|OPiOS)/.test(t)})();var ed=class fe{static __STOP=!1;static __lastScrollPosition=0;type="advanced";config={overscrollSize:200,intersectionObserverMargin:0,resizeDebugging:!1};items=[];idToItem=new Map;selectedLines=null;instanceToItem=new Map;layoutDirtyIndex;pendingLayoutReset;renderOptionsRevision=0;slotCoordinator;slotSnapshot;scrollListeners=new Set;scrollHeight=0;containerHeight=-1;scrollTop=0;scrollPageOffset=0;scrollDirty=!0;scrollInteractionFixTimer;pointerEventsDisabled=!1;codeOverflowFix=!1;height=0;heightDirty=!0;windowSpecs={top:0,bottom:0};renderState={scrollTop:-1,firstIndex:-1,lastIndex:-1,stickyHeight:0,stickyTop:-1,stickyBottom:-1};itemMetricsCache=_e;fileOptionsPrototype;diffOptionsPrototype;pendingScrollTarget;pendingLayoutAnchor;shouldFixContainerFocus=!1;scrollAnimation;root;resizeObserver;container=document.createElement("div");stickyContainer=document.createElement("div");stickyOffset=document.createElement("div");elementPool=[];elementPoolVersion=0;elementPoolTracker=new WeakMap;pendingElementPool=[];options;workerManager;isContainerManaged;constructor(t={theme:_},n,i=!1){this.options=t,this.computeMetricsCache(t.itemMetrics),this.fileOptionsPrototype=this.createFileOptionsPrototype(),this.diffOptionsPrototype=this.createDiffOptionsPrototype(),this.workerManager=n,this.isContainerManaged=i,this.stickyOffset.style.contain="layout size",this.stickyContainer.style.position="sticky",this.stickyContainer.style.width="100%",this.stickyContainer.style.contain="layout style inline-size",this.stickyContainer.style.isolation="isolate",this.stickyContainer.style.display="flex",this.stickyContainer.style.flexDirection="column"}getLayout(){return this.options.layout??eo}computeMetricsCache(t){return this.itemMetricsCache={hunkLineCount:t?.hunkLineCount??_e.hunkLineCount,lineHeight:t?.lineHeight??_e.lineHeight,diffHeaderHeight:t?.diffHeaderHeight??_e.diffHeaderHeight,hunkSeparatorHeight:t?.hunkSeparatorHeight,spacing:t?.spacing??_e.spacing,paddingTop:t?.paddingTop,paddingBottom:t?.paddingBottom},this.itemMetricsCache}getSmoothScrollSettings(){return this.options.smoothScrollSettings??to}shouldDisablePointerEvents(){return this.options.pointerEventsOnScroll!==!0}shouldValidateItemHeights(){return $r&&this.options.__devOnlyValidateItemHeights===!0}validateRenderedItemHeight(t){if(!this.shouldValidateItemHeights()||t.element==null)return;const n=t.instance.getAdvancedStickySpecs();if(n==null)return;const i=n.height,r=t.element.getBoundingClientRect().height;i!==r&&console.error("CodeView: reconciled item height does not match DOM height",{id:t.item.id,type:t.type,index:t.index,version:t.version,expectedHeight:i,actualHeight:r,delta:r-i,stickyTopOffset:n.topOffset,virtualizedHeight:t.instance.getVirtualizedHeight(),top:t.top,scrollTop:this.getScrollTop(),windowSpecs:{...this.windowSpecs},element:t.element,instance:t.instance})}validateStickyContainerHeight(){if(!this.shouldValidateItemHeights())return;const{firstIndex:t,lastIndex:n,stickyHeight:i,stickyTop:r,stickyBottom:o}=this.renderState;if(t===-1||n===-1)return;const s=this.stickyContainer.getBoundingClientRect().height;Math.abs(s-i)<1||console.error("CodeView: sticky container height does not match computed layout",{computedStickyHeight:i,actualStickyHeight:s,delta:s-i,stickyTop:r,stickyBottom:o,firstIndex:t,lastIndex:n,firstStickySpecs:this.items[t]?.instance.getAdvancedStickySpecs(),lastStickySpecs:this.items[n]?.instance.getAdvancedStickySpecs(),scrollTop:this.getScrollTop(),scrollPageOffset:this.scrollPageOffset,windowSpecs:{...this.windowSpecs},stickyContainer:this.stickyContainer})}clearScrollInteractionTimer(){this.scrollInteractionFixTimer!=null&&(clearTimeout(this.scrollInteractionFixTimer),this.scrollInteractionFixTimer=void 0)}suspendScrollInteractions(){this.clearScrollInteractionTimer(),this.shouldDisablePointerEvents()&&!this.pointerEventsDisabled&&(this.stickyContainer.style.pointerEvents="none",this.pointerEventsDisabled=!0),Xa&&!this.codeOverflowFix&&(this.stickyContainer.style.setProperty(ii,"hidden"),this.codeOverflowFix=!0),this.scrollInteractionFixTimer=setTimeout(this.restoreScrollInteractions,Ka)}restoreScrollInteractions=()=>{this.clearScrollInteractionTimer(),this.pointerEventsDisabled&&(this.stickyContainer.style.removeProperty("pointer-events"),this.pointerEventsDisabled=!1),this.codeOverflowFix&&(this.stickyContainer.style.setProperty(ii,"auto"),this.codeOverflowFix=!1)};syncLayout(){const{gap:t,paddingBottom:n,paddingTop:i}=this.getLayout();this.stickyContainer.style.gap=`${t}px`,this.container?.style.setProperty("margin-top",`${i}px`),this.container?.style.setProperty("margin-bottom",`${n}px`)}setup(t){if(this.root!=null)throw new Error("CodeView.setup: already setup");this.workerManager?.subscribeToThemeChanges(this),this.root=t,this.root.style.overflowAnchor="none",this.root.hasAttribute("tabindex")||(this.root.tabIndex=-1),this.container??=document.createElement("div"),this.container.style.contain="layout style",this.syncLayout(),this.container.appendChild(this.stickyOffset),this.container.appendChild(this.stickyContainer),this.root.appendChild(this.container),this.scrollDirty=!0,this.heightDirty=!0,this.resizeObserver=new ResizeObserver(this.handleResize),this.resizeObserver.observe(this.stickyContainer),this.root.addEventListener("scroll",this.handleScroll,{passive:!0}),this.root.addEventListener("wheel",this.clearPendingScroll,{passive:!0}),this.root.addEventListener("touchstart",this.clearPendingScroll,{passive:!0}),this.root.addEventListener("pointerdown",this.clearPendingScroll,{passive:!0}),this.root.addEventListener("keydown",this.clearPendingScroll,{passive:!0}),this.resizeObserver.observe(this.root),this.render(!0),window.__INSTANCE=this,window.__TOGGLE=()=>{fe.__STOP?(fe.__STOP=!1,this.scrollTo({type:"position",position:fe.__lastScrollPosition,behavior:"instant"})):(fe.__lastScrollPosition=this.getScrollTop(),fe.__STOP=!0)}}reset(){this.restoreScrollInteractions(),this.cleanAllRenderedItems(),this.selectedLines=null,this.items.length=0,this.idToItem.clear(),this.instanceToItem.clear(),this.layoutDirtyIndex=void 0,this.pendingLayoutReset=void 0,this.stickyContainer.textContent="",this.stickyOffset.style.height="",this.container?.style.removeProperty("height"),this.containerHeight=-1,this.windowSpecs={top:0,bottom:0},this.pendingLayoutAnchor=void 0,this.shouldFixContainerFocus=!1,this.height=0,this.scrollTop=0,this.scrollPageOffset=0,this.scrollHeight=0,this.scrollDirty=!0,this.heightDirty=!0,this.resetRenderState(),this.isContainerManaged||this.flushSlotCoordinator()}cleanUp(){this.reset(),this.clearElementPool(),this.restoreScrollInteractions(),this.workerManager?.unsubscribeToThemeChanges(this),this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.root?.removeEventListener("scroll",this.handleScroll),this.root?.removeEventListener("wheel",this.clearPendingScroll),this.root?.removeEventListener("touchstart",this.clearPendingScroll),this.root?.removeEventListener("pointerdown",this.clearPendingScroll),this.root?.removeEventListener("keydown",this.clearPendingScroll),this.root?.style.removeProperty("overflow-anchor"),this.container?.remove(),this.stickyOffset.remove(),this.stickyContainer.remove(),this.stickyContainer.textContent="",this.root=void 0,this.container=void 0}cleanAllRenderedItems(){if(this.renderState.firstIndex!==-1)for(let t=this.renderState.firstIndex;t<=this.renderState.lastIndex;t++){const n=this.items[t];if(n==null)throw new Error(`CodeView.cleanAllRenderedItems: Item does not exist at index: ${t}`);this.releaseRenderedItem(n)}}primeScrollTarget(t){if(t.type==="position")return;const n=this.idToItem.get(t.id);n?.instance.primeHighlightCache()}getElementPoolLimit(){const t=this.getHeight()+this.config.overscrollSize*2,{diffHeaderHeight:n}=this.itemMetricsCache;return Math.max(8,Math.ceil(t/Math.max(n,10))+1)*(this.isContainerManaged?2:1)}acquireElement(){this.promotePendingPooledElements();let t=this.elementPool.pop();for(;t!=null&&!this.isElementPoolGenerationCurrent(t);)t=this.elementPool.pop();return t??=document.createElement(Ei),this.markElementPoolGenerationCurrent(t),t}releaseRenderedItem(t){const{element:n}=t;n!=null&&this.renderedItemOwnsFocus(n)&&(this.shouldFixContainerFocus=!0),t.instance.cleanUp(!0),t.element=void 0,n!=null&&(n.remove(),this.cleanElement(n),this.queueElementForPool(n))}renderedItemOwnsFocus(t){const{activeElement:n}=document;return n===t||t.contains(n)||t.shadowRoot?.activeElement!=null}fixContainerFocus(){this.shouldFixContainerFocus&&(this.shouldFixContainerFocus=!1,this.root?.focus({preventScroll:!0}))}cleanElement(t){const{shadowRoot:n}=t;if(n!=null)for(const i of Array.from(n.children))tl(i)||i.remove();this.isContainerManaged||t.replaceChildren()}queueElementForPool(t){const n=this.getElementPoolLimit();!this.isElementPoolGenerationCurrent(t)||this.getElementPoolSize()>=n||(this.isElementClean(t)?this.elementPool.push(t):this.pendingElementPool.push(t))}promotePendingPooledElements(){if(this.pendingElementPool.length===0)return;const{pendingElementPool:t}=this;this.pendingElementPool=[];const n=this.getElementPoolLimit();for(const i of t)this.isElementPoolGenerationCurrent(i)&&this.isElementClean(i)&&this.elementPool.lengththis.windowSpecs.bottom}onThemeChange(){this.invalidateElementPool()}setOptions(t){if(t==null)return;this.capturePendingLayoutAnchor();const{options:n}=this,i=this.getLayout(),{itemMetricsCache:r}=this;Ja(n,t)&&this.invalidateElementPool(),this.options=t;const o=this.computeMetricsCache(t.itemMetrics),s=!He(r,o),l=!He(i,this.getLayout());l&&this.syncLayout();const a=s||Za(n,t);if(a){const d=this.pendingLayoutReset;this.pendingLayoutReset={metrics:s?o:d?.metrics,resetFileLayoutCache:!0,resetDiffLayoutCache:!0,includeEstimatedDiffHeights:d?.includeEstimatedDiffHeights===!0||s||el(n,t)}}(l||a)&&(this.markLayoutDirtyFromIndex(0),this.scrollDirty=!0),dn(n,t)||this.renderOptionsRevision++,!this.isContainerManaged&&this.items.length>0&&this.render()}capturePendingLayoutAnchor(){this.root==null||this.items.length===0||this.pendingScrollTarget!=null||(this.pendingLayoutAnchor=this.getScrollAnchor(this.getScrollTop()))}render(t=!1){fe.__STOP||(t?(io(this.computeRenderRangeAndEmit),this.computeRenderRangeAndEmit()):Y(this.computeRenderRangeAndEmit))}instanceChanged(t,n){const i=this.instanceToItem.get(t);if(i==null)throw new Error("CodeView.instanceChanged: An instance has changed that is not registered");n&&this.markItemLayoutDirty(i),this.render()}getWindowSpecs(){return this.windowSpecs}getContainerElement(){return this.root}getRenderedItems(){const{firstIndex:t,lastIndex:n}=this.renderState;if(t===-1||n===-1||n{this.scrollListeners.delete(t)}}getLocalTopForInstance(t){const n=this.instanceToItem.get(t);if(n==null)throw new Error("CodeView.getLocalTopForInstance: unknown virtualized instance");return n.top}getTopForItem(t){const n=this.idToItem.get(t);if(n!=null)return n.top+this.getLayout().paddingTop}createItem(t,n,i){const{itemMetricsCache:r}=this;if(t.type==="diff"){const s=new Oa(this.createDiffOptions(t.id),this,r,this.workerManager,this.isContainerManaged);return{type:"diff",item:t,version:t.version,index:n,top:i,height:0,element:void 0,renderedOptionsRevision:this.renderOptionsRevision,instance:s}}const o=new As(this.createFileOptions(t.id),this,r,this.workerManager,this.isContainerManaged);return{type:"file",item:t,version:t.version,index:n,top:i,height:0,element:void 0,renderedOptionsRevision:this.renderOptionsRevision,instance:o}}applySelectedLines(t,n){const{selectedLines:i}=this;t==null&&i==null||t!=null&&i?.id===t.id&&Wt(i.range,t.range)||(i!=null&&i.id!==t?.id&&this.idToItem.get(i.id)?.instance.setSelectedLines(null,{notify:!1}),this.selectedLines=t,this.idToItem.get(t?.id??"")?.instance.setSelectedLines(t?.range??null,n))}syncSelection(){if(this.selectedLines==null)return;const t=this.idToItem.get(this.selectedLines.id);if(t==null){this.selectedLines=null;return}t.instance.setSelectedLines(this.selectedLines.range,{notify:!1})}renamePendingScrollTarget(t,n){const{pendingScrollTarget:i}=this;i==null||i.type==="position"||i.id!==t||(this.pendingScrollTarget={...i,id:n})}renamePendingLayoutAnchor(t,n){this.pendingLayoutAnchor?.id===t&&(this.pendingLayoutAnchor.id=n)}createFileOptionsPrototype(){const t={};for(const n of qa)ce(t,n,()=>this.options[n]);ce(t,"stickyHeader",()=>this.options.stickyHeaders),ce(t,"collapsed",n=>this.getItemOptions(ze(n),"file")?.item.collapsed===!0);for(const n of ei)this.defineItemSharedCallback(t,"file",n);for(const n of ti)this.defineItemSelectionCallback(t,"file",n);return t}createDiffOptionsPrototype(){const t={};for(const n of ja)ce(t,n,()=>this.options[n]);ce(t,"stickyHeader",()=>this.options.stickyHeaders),ce(t,"hunkSeparators",()=>this.options.hunkSeparators),ce(t,"collapsed",n=>this.getItemOptions(ze(n),"diff")?.item.collapsed===!0);for(const n of ei)this.defineItemSharedCallback(t,"diff",n);for(const n of ti)this.defineItemSelectionCallback(t,"diff",n);return t}createFileOptions(t){const n=Object.create(this.fileOptionsPrototype);return ni(n,{id:t}),n}createDiffOptions(t){const n=Object.create(this.diffOptionsPrototype);return ni(n,{id:t}),n}updateItemOptionsId(t,n){ze(t).id=n}getItemOptions(t,n){const i=this.idToItem.get(t.id);if(!(i==null||i.type!==n))return i}defineItemSharedCallback(t,n,i){ce(t,i,r=>{if(this.options[i]==null)return;const o=ze(r),s=o.callbackCache??={};let l=s[i];return l==null&&(l=((...a)=>{const d=this.getItemOptions(o,n);if(d==null)return;const h=this.options[i];return h?.(...a,d)}),s[i]=l),l})}defineItemSelectionCallback(t,n,i){ce(t,i,r=>{if(this.options.enableLineSelection!==!0)return;const o=ze(r),s=o.callbackCache??={};let l=s[i];return l==null&&(l=(a=>{const d=this.getItemOptions(o,n);if(d==null)return;const h=a==null?null:{id:d.item.id,range:a};this.options.controlledSelection!==!0&&(a!=null||this.selectedLines?.id===d.item.id)&&this.applySelectedLines(h,{notify:!1}),this.options.onSelectedLinesChange?.(h);const c=this.options[i];return c?.(a,d)}),s[i]=l),l})}markLayoutDirtyFromIndex(t){this.layoutDirtyIndex=Math.min(this.layoutDirtyIndex??t,t)}markItemLayoutDirty(t){if(this.items[t.index]!==t)throw new Error(`CodeView.markItemLayoutDirty: unknown item id "${t.item.id}"`);this.markLayoutDirtyFromIndex(t.index)}tryAppendItems(t){if(t.length<=this.items.length)return!1;for(let n=0;n=o.length?this.resetRenderState():this.renderState.lastIndex>=o.length&&(this.renderState.lastIndex=o.length-1),this.markLayoutDirtyFromIndex(a),this.scrollDirty=!0,this.render())}syncItemRecord(t,n){if(t.type!==n.type)throw new Error(`CodeView.syncItemRecord: type mismatch for id "${n.id}"`);return t.version===n.version?!1:(t.item=n,t.version=n.version,t.renderedOptionsRevision=-1,!0)}getMaxScrollTopForHeight(t){const{paddingBottom:n,paddingTop:i}=this.getLayout();return Math.max(i+t+n-this.getHeight(),0)}getMaxScrollTop(){return this.getMaxScrollTopForHeight(this.getScrollHeight())}shouldRebaseScroll(){return this.getMaxScrollTop()>ri}getPagedScrollHeight(){return this.shouldRebaseScroll()?Math.min(this.getScrollHeight(),yn):this.getScrollHeight()}getMaxPagedScrollTop(){return this.getMaxScrollTopForHeight(this.getPagedScrollHeight())}clampPagedScrollTop(t){const n=this.getMaxPagedScrollTop();return Math.max(0,Math.min(t,n))}clampScrollTop(t){const n=this.getMaxScrollTop();return Math.max(0,Math.min(t,n))}getMaxScrollPageOffset(){return Math.max(this.getMaxScrollTop()-this.getMaxPagedScrollTop(),0)}clampScrollPageOffset(t){const n=this.getMaxScrollPageOffset();return Math.max(0,Math.min(t,n))}resolveScrollPageWindow(t,n){let i=re(this.clampPagedScrollTop(n)),r=this.clampScrollPageOffset(t-i);return i=re(this.clampPagedScrollTop(t-r)),r=this.clampScrollPageOffset(t-i),{pagedScrollTop:i,scrollPageOffset:r}}resolvePagedScrollPosition(t){if(!this.shouldRebaseScroll())return{pagedScrollTop:this.clampPagedScrollTop(t),scrollPageOffset:0};const n=this.clampScrollPageOffset(this.scrollPageOffset),i=t-n,r=this.getMaxPagedScrollTop(),o=this.getMaxScrollPageOffset(),s=i>ri&&n0;return i<0||i>r||s||l?this.resolveScrollPageWindow(t,l?Math.min(Ya,r):Lr):{pagedScrollTop:re(this.clampPagedScrollTop(i)),scrollPageOffset:n}}needsScrollPageUpdate(t){const n=re(this.clampScrollTop(t)),{scrollPageOffset:i}=this.resolvePagedScrollPosition(n);return i!==this.scrollPageOffset}getPagedLayoutTop(t){return this.shouldRebaseScroll()?Math.max(t-this.scrollPageOffset,0):t}getStickyHeaderOffset(){return this.options.stickyHeaders===!0&&this.options.disableFileHeader!==!0?this.itemMetricsCache.diffHeaderHeight:0}getScrollTargetRect(t){const n=this.idToItem.get(t.id);if(n==null){console.warn(`CodeView.scrollTo: unknown item id "${t.id}"`);return}if(t.type==="item")return{top:n.top,height:n.height};if(t.type==="range"){const r=this.getRangeScrollPosition(n,t);if(r==null){console.warn(`CodeView.scrollTo: unable to resolve range ${oi(t.range)} for item "${t.id}"`);return}return{top:n.top+r.top,height:r.height}}const i=this.getLineScrollPosition(n,t);if(i==null){console.warn(`CodeView.scrollTo: unable to resolve line ${t.lineNumber} for item "${t.id}"`);return}return{top:n.top+i.top,height:i.height}}normalizeScrollTarget(t){if(t.type==="position"||t.align!=="nearest")return t;const n=this.getScrollTargetRect(t);if(n==null)return;const i=t.offset??0,r=this.getLayout().paddingTop+n.top,o=r+n.height,s=this.getScrollTop(),l=s+(t.type==="line"||t.type==="range"?this.getStickyHeaderOffset():0),a=s+this.getHeight();if(!(r-i<=l&&o+i>=a)){if(r-ia)return{...t,align:"end"}}}resolveScrollTargetTop(t){if(t.type==="position"){const r=this.clampScrollTop(t.position);return r!==t.position?r:this.clampScrollTop(t.position-this.getStickyHeaderOffset())}const n=this.idToItem.get(t.id);if(n==null){console.warn(`CodeView.scrollTo: unknown item id "${t.id}"`);return}if(t.type==="item")return this.clampScrollTop(this.resolveAlignedScrollPosition(n.top,n.height,t.align,t.offset));if(t.type==="range"){const r=this.getRangeScrollPosition(n,t);if(r==null){console.warn(`CodeView.scrollTo: unable to resolve range ${oi(t.range)} for item "${t.id}"`);return}return this.clampScrollTop(this.resolveAlignedScrollPosition(n.top+r.top,r.height,t.align,t.offset,this.getStickyHeaderOffset()))}const i=this.getLineScrollPosition(n,t);if(i==null){console.warn(`CodeView.scrollTo: unable to resolve line ${t.lineNumber} for item "${t.id}"`);return}return this.clampScrollTop(this.resolveAlignedScrollPosition(n.top+i.top,i.height,t.align,t.offset,this.getStickyHeaderOffset()))}resolveAlignedScrollPosition(t,n,i,r=0,o=0){t+=this.getLayout().paddingTop;const s=this.getHeight();return i==="center"&&n+r{if(fe.__STOP||this.container==null)return;const n=this.getHeight(),i=this.getScrollTop();let r=i,o=this.pendingLayoutAnchor!=null,s=this.getScrollAnchor(r);if(this.layoutDirtyIndex!=null&&(this.recomputeLayout(this.layoutDirtyIndex,this.pendingLayoutReset),this.layoutDirtyIndex=void 0,this.pendingLayoutReset=void 0,o=!0),o&&s!=null){const S=this.resolveAnchoredScrollTop(s);if(S!=null){const L=S-r;r=S,this.scrollAnimation!=null&&(this.scrollAnimation.position+=L)}}o&&(r=this.clampScrollTop(r),this.syncContainerHeight());const l=this.computeTargetScrollTopForFrame(r,t),a=!o&&(this.renderState.scrollTop===-1||Math.abs(l-this.renderState.scrollTop)>n+this.config.overscrollSize*2);a&&(s=void 0),this.windowSpecs=Gt({scrollTop:l,height:n,scrollHeight:this.getScrollHeight(),fitPerfectly:a,fitPerfectlyOverscroll:this.getFitPerfectlyOverscroll(),overscrollSize:this.config.overscrollSize});let d=i;(this.pendingScrollTarget!=null&&l!==d||this.needsScrollPageUpdate(l))&&(this.applyScrollFix(l,d,this.windowSpecs),d=l);const{top:h,bottom:c}=this.windowSpecs,{firstIndex:u,lastIndex:f}=this.renderState;if(u>=0)for(let S=u;S<=f;S++){const L=this.items[S];if(L==null)throw new Error(`CodeView.computeRenderRangeAndEmit: No item at index: ${S}`);L.top>h-L.height&&L.top<=c||this.releaseRenderedItem(L)}let g;const b=new Set,y=this.findFirstVisibleIndex(h),m=this.findLastVisibleIndex(c);for(let S=y;S<=m;S++){const L=this.items[S];if(L==null)throw new Error("CodeView.computeRenderRangeAndEmit: missing item");const{instance:E}=L;L.element==null?(L.element=this.acquireElement(),li(this.stickyContainer,L.element,g),E.virtualizedSetup(),ai(L,L.element)&&(L.renderedOptionsRevision=this.renderOptionsRevision,b.add(L)),g=L.element):(li(this.stickyContainer,L.element,g),ai(L,void 0,L.renderedOptionsRevision!==this.renderOptionsRevision)&&(L.renderedOptionsRevision=this.renderOptionsRevision,b.add(L)),g=L.element)}this.renderState.firstIndex=y<=m?y:-1,this.renderState.lastIndex=m,this.flushSlotCoordinator(),this.reconcileRenderedItems(b),this.syncContainerHeight(),this.updateStickyPositioning();const p=s!=null?this.resolveAnchoredScrollTop(s):void 0;s===this.pendingLayoutAnchor&&(this.pendingLayoutAnchor=void 0);const C=p!=null?p-r:0;let v=l,x=!1;if(this.pendingScrollTarget!=null){const S=this.advanceScrollAnimation(t,C);S!=null?(v=S,x=!0):v=r}else v=p??l;v!==d&&(this.applyScrollFix(v,d,this.windowSpecs),d=v),x&&this.pendingScrollTarget!=null&&this.isPendingTargetSettled(this.pendingScrollTarget)&&(this.pendingScrollTarget=void 0,this.scrollAnimation=void 0),this.renderState.scrollTop=re(d),this.flushManagers(b),this.validateStickyContainerHeight(),this.fixContainerFocus(),(a||this.scrollAnimation!=null)&&this.render()};flushManagers(t){for(const n of t)n.instance.flushManagers()}syncContainerHeight(){const t=this.getPagedScrollHeight();this.container==null||this.containerHeight===t||(this.container.style.height=`${t}px`,this.containerHeight=t)}getStickyBounds(t){const{firstIndex:n,lastIndex:i}=t!=null?{firstIndex:this.findFirstVisibleIndex(t.top),lastIndex:this.findLastVisibleIndex(t.bottom)}:this.renderState;if(n===-1||i===-1||n>i)return;const r=this.items[n]?.instance.getAdvancedStickySpecs(t),o=this.items[i]?.instance.getAdvancedStickySpecs(t);if(!(r==null||o==null))return{stickyTop:this.getPagedLayoutTop(Math.max(r.topOffset,0)),stickyBottom:this.getPagedLayoutTop(o.topOffset+o.height)}}applyStickyPositioning({stickyTop:t,stickyBottom:n}){const i=this.getHeight(),{itemMetricsCache:r}=this,o=n-t;this.renderState.stickyHeight=o,this.renderState.stickyTop=t,this.renderState.stickyBottom=n,this.stickyOffset.style.height=`${t}px`;const s=(Math.random()*r.lineHeight>>0)*-1,l=-Math.max(o+s,0)+i;this.stickyContainer.style.top=`${l}px`,this.stickyContainer.style.bottom=`${l+r.diffHeaderHeight}px`}syncPagedScrollScaffolding(t){this.syncContainerHeight();const n=this.getStickyBounds(t);n!=null&&this.applyStickyPositioning(n)}reconcileRenderedItems(t){const{firstIndex:n,lastIndex:i}=this.renderState;if(n===-1)return;let r=-1,o=!1;for(let s=n;si);s++){const l=this.items[s];if(l==null)throw new Error("CodeView.reconcileRenderedItems: Invalid item");r===-1?r=l.top:l.top!==r&&(l.top=r,l.instance.syncVirtualizedTop(),o=!0),(t==null?s<=i:t.has(l))&&(l.instance.reconcileHeights()&&(o=!0,l.height=l.instance.getVirtualizedHeight()),this.validateRenderedItemHeight(l)),r+=l.instance.getVirtualizedHeight(),s{fe.__STOP||(this.suspendScrollInteractions(),this.scrollDirty=!0,this.notifyScroll(),this.render())};clearPendingScroll=()=>{this.pendingScrollTarget=void 0,this.pendingLayoutAnchor=void 0,this.scrollAnimation=void 0};handleResize=t=>{for(const n of t)if(n.target===this.stickyContainer){if(n.borderBoxSize[0].blockSize!==this.renderState.stickyHeight){const i=this.getScrollTop(),r=this.getScrollAnchor(i);this.reconcileRenderedItems(),this.updateStickyPositioning();const o=r!=null?this.resolveAnchoredScrollTop(r):void 0;if(o!=null){const s=o-i;this.applyScrollFix(o,i,this.windowSpecs),this.scrollAnimation!=null&&(this.scrollAnimation.position+=s)}this.pendingScrollTarget!=null&&this.isPendingTargetSettled(this.pendingScrollTarget)&&(this.pendingScrollTarget=void 0,this.scrollAnimation=void 0)}}else this.scrollDirty=!0,this.heightDirty=!0,this.render()};getScrollAnchorViewportTop(t,n){return t=t+s)break;if(d>=t)return{type:"item",id:a.item.id,viewportOffset:d-t};const h=this.getScrollAnchorViewportTop(d,t)-d,c=a.instance.getNumericScrollAnchor(h);if(c!=null){const u=d+c.top;return{type:"line",id:a.item.id,lineNumber:c.lineNumber,side:c.side,viewportOffset:u-t}}}}resolveAnchoredScrollTop(t){const n=this.idToItem.get(t.id);if(n==null)return;const{paddingTop:i}=this.getLayout();if(t.type==="item"){const s=i+n.top;return this.clampScrollTop(s-t.viewportOffset)}const r=n.type==="diff"?n.instance.getLinePosition(t.lineNumber,t.side):n.instance.getLinePosition(t.lineNumber);if(r==null)return;const o=i+n.top+r.top;return this.clampScrollTop(o-t.viewportOffset)}applyScrollFix(t,n,i){if(this.root==null)return;const r=re(this.clampScrollTop(t)),o=re(n),{scrollPageOffset:s}=this,l=re(this.clampPagedScrollTop(o-s)),{pagedScrollTop:a,scrollPageOffset:d}=this.resolvePagedScrollPosition(r),h=a,c=s!==d;r===this.renderState.scrollTop&&r===o&&h===l&&!c||(this.suspendScrollInteractions(),(h!==l||c)&&(this.scrollPageOffset=d,this.syncPagedScrollScaffolding(i)),h!==l&&this.root.scrollTo({top:h,behavior:"instant"}),this.renderState.scrollTop=r,this.scrollTop=r,this.scrollDirty=!1)}isPendingTargetSettled(t){const n=this.resolveScrollTargetTop(t);return n==null?!0:re(this.getScrollTop())===re(n)}getScrollTop(){if(!this.scrollDirty)return this.scrollTop;this.scrollDirty=!1;const t=this.root?.scrollTop??0;return this.scrollTop=this.clampScrollTop(t+this.scrollPageOffset),this.scrollTop}getHeight(){return this.heightDirty?(this.heightDirty=!1,this.height=this.root?.getBoundingClientRect().height??0,this.height):this.height}getScrollHeight(){return this.scrollHeight}flushSlotCoordinator(){if(this.slotCoordinator==null)return;const{onSnapshotChange:t}=this.slotCoordinator,n=di(this.getRenderedItems(),this.slotCoordinator);il(this.slotSnapshot,n)||(this.slotSnapshot=n,t(n))}notifyScroll(){if(this.scrollListeners.size===0)return;const t=this.getScrollTop();for(const n of this.scrollListeners)n(t,this)}findFirstVisibleIndex(t){let n=0,i=this.items.length-1,r=this.items.length;for(;n<=i;){const o=n+i>>1,s=this.items[o];if(s==null)throw new Error("CodeView.findFirstVisibleIndex: invalid item index");s.top+s.height>t?(r=o,i=o-1):n=o+1}return r}findLastVisibleIndex(t){let n=0,i=this.items.length-1,r=-1;for(;n<=i;){const o=n+i>>1,s=this.items[o];if(s==null)throw new Error("CodeView.findLastVisibleIndex: invalid item index");s.top<=t?(r=o,n=o+1):i=o-1}return r}recomputeLayout(t=0,n){if(this.items.length===0){this.scrollHeight=0;return}const i=this.getLayout();let r=0;if(t>0){const o=this.items[t-1];if(o==null)throw new Error("CodeView.recomputeLayout: invalid dirty index");r=o.top+o.height+i.gap}for(let o=t;o0}function di(e,{hasHeaderRenderers:t,hasAnnotationRenderer:n,hasGutterRenderer:i}){if(e.length===0)return;if(t||i)return e;if(!n)return;const r=[];for(const o of e)nl(o.item)&&r.push(o);return r.length>0?r:void 0}function il(e,t){if(e==null||t==null)return e===t;if(e.length!==t.length)return!1;for(let n=0;n{const a=l===n.length-1,d=this.options.highlighter.codeToTokens(s,{...this.options,grammarState:this.lastStableGrammarState}),h=d.tokens[0];a||h.push({content:` -`,offset:0}),a?(r=h,this.lastUnstableCodeChunk=s):(this.lastStableGrammarState=d.grammarState,i.push(...h))}),this.tokensStable.push(...i),this.tokensUnstable=r,{recall:o,stable:i,unstable:r}}close(){const t=this.tokensUnstable;return this.tokensUnstable=[],this.lastUnstableCodeChunk="",this.lastStableGrammarState=void 0,{stable:t}}clear(){this.tokensStable=[],this.tokensUnstable=[],this.lastUnstableCodeChunk="",this.lastStableGrammarState=void 0}clone(){const t=new kr(this.options);return t.lastUnstableCodeChunk=this.lastUnstableCodeChunk,t.tokensUnstable=this.tokensUnstable,t.tokensStable=this.tokensStable,t.lastStableGrammarState=this.lastStableGrammarState,t}},hi=class extends TransformStream{tokenizer;options;constructor(e){const t=new rl(e),{allowRecalls:n=!1}=e;super({async transform(i,r){const{stable:o,unstable:s,recall:l}=await t.enqueue(i);n&&l>0&&r.enqueue({recall:l});for(const a of o)r.enqueue(a);if(n)for(const a of s)r.enqueue(a)},async flush(i){const{stable:r}=t.close();if(!n)for(const o of r)i.enqueue(o)}}),this.tokenizer=t,this.options=e}};function ol(e){const t=document.createElement("span");return t.style=Ur(e.htmlStyle??Vr(e)),t.textContent=e.content,t}let sl=-1;var td=class{options;__id=`file-stream:${++sl}`;highlighter;stream;abortController;fileContainer;pre;code;gutterElement;contentElement;themeCSSStyle;appliedThemeCSS;currentRowCount=0;constructor(e={theme:_}){this.options=e,this.currentLineIndex=this.options.startingLineIndex??1}cleanUp(){this.abortController?.abort(),this.abortController=void 0}setThemeType(e){(this.options.themeType??"system")!==e&&(this.options={...this.options,themeType:e},!(typeof this.options.theme=="string"||this.fileContainer==null||this.appliedThemeCSS==null)&&this.applyThemeState(this.fileContainer,this.appliedThemeCSS.themeStyles,e,this.appliedThemeCSS.baseThemeType))}async initializeHighlighter(){return this.highlighter=await xt(un(this.options.lang,this.options)),this.highlighter}queuedSetupArgs;async setup(e,t){const n=this.queuedSetupArgs!=null;if(this.queuedSetupArgs=[e,t],n)return;this.highlighter??=await this.initializeHighlighter();const[i,r]=this.queuedSetupArgs;this.queuedSetupArgs=void 0;const o=i;this.setupStream(o,r,this.highlighter)}setupStream(e,t,n){const{disableLineNumbers:i=!1,overflow:r="scroll",theme:o=_,themeType:s="system"}=this.options,l=this.getOrCreateFileContainer();l.parentElement==null&&t.appendChild(l),this.pre??=document.createElement("pre"),this.pre.parentElement==null&&l.shadowRoot?.appendChild(this.pre);const a=typeof o=="string"?n.getTheme(o).type:void 0,d=fn({theme:o,highlighter:n});this.applyThemeState(l,d,s,a);const h=bn(this.pre,{type:"file",diffIndicators:"none",disableBackground:!0,disableLineNumbers:i,overflow:r,split:!1,totalLines:0});h.textContent="",this.pre=h,this.code=je({code:this.code,pre:h}),this.gutterElement=void 0,this.contentElement=void 0,this.currentRowCount=0,this.currentLineElement=void 0,this.currentLineIndex=this.options.startingLineIndex??1,this.abortController?.abort(),this.abortController=new AbortController;const{onStreamStart:c,onStreamClose:u,onStreamAbort:f}=this.options;this.stream?.cancel().catch(()=>{}),this.stream=e,this.stream.pipeThrough(typeof o=="string"?new hi({...this.options,theme:o,highlighter:n,allowRecalls:!0,defaultColor:!1,cssVariablePrefix:B("token"),tokenizeTimeLimit:0}):new hi({...this.options,themes:o,highlighter:n,allowRecalls:!0,defaultColor:!1,cssVariablePrefix:B("token"),tokenizeTimeLimit:0})).pipeTo(new WritableStream({start(g){c?.(g)},close(){u?.()},abort(g){f?.(g)},write:this.handleWrite}),{signal:this.abortController.signal}).catch(g=>{g.name!=="AbortError"&&console.error("FileStream pipe error:",g)})}queuedTokens=[];handleWrite=e=>{"recall"in e&&this.queuedTokens.length>=e.recall?this.queuedTokens.length=this.queuedTokens.length-e.recall:this.queuedTokens.push(e),Y(this.render),this.options.onStreamWrite?.(e)};currentLineIndex;currentLineElement;render=()=>{this.options.onPreRender?.(this);const{gutter:e,content:t}=this.getOrCreateStreamColumns(),n=document.createDocumentFragment(),i=document.createDocumentFragment();for(const r of this.queuedTokens)if("recall"in r){if(this.currentLineElement==null)throw new Error("FileStream.render: no current line element, shouldnt be possible to get here");if(r.recall>this.currentLineElement.childNodes.length)throw new Error("FileStream.render: Token recall exceed the current line, there's probably a bug...");for(let o=0;o0&&e.appendChild(n),i.childNodes.length>0&&t.appendChild(i),this.queuedTokens.length=0,this.options.onPostRender?.(this)};getOrCreateStreamColumns(){if(this.code==null)throw new Error("FileStream: expected code element to exist");if(this.gutterElement!=null&&this.contentElement!=null)return{gutter:this.gutterElement,content:this.contentElement};const e=document.createElement("div");e.dataset.gutter="";const t=document.createElement("div");return t.dataset.content="",this.code.appendChild(e),this.code.appendChild(t),this.gutterElement=e,this.contentElement=t,{gutter:e,content:t}}updateRowSpan(){this.gutterElement!=null&&(this.gutterElement.style.gridRow=`span ${this.currentRowCount}`),this.contentElement!=null&&(this.contentElement.style.gridRow=`span ${this.currentRowCount}`)}createLine(){const e=this.currentLineIndex,t=`${e-1}`,n=document.createElement("div");n.dataset.columnNumber=`${e}`,n.dataset.lineType="context",n.dataset.lineIndex=t;const i=document.createElement("span");i.dataset.lineNumberContent="",i.textContent=`${e}`,n.appendChild(i);const r=document.createElement("div");return r.dataset.line=`${e}`,r.dataset.lineType="context",r.dataset.lineIndex=t,this.currentRowCount+=1,this.updateRowSpan(),this.currentLineElement=r,{gutterLine:n,contentLine:r}}getOrCreateFileContainer(e){return e!=null&&e===this.fileContainer||e==null&&this.fileContainer!=null?this.fileContainer:(this.fileContainer!=null&&e!=null&&e!==this.fileContainer&&(this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0),this.fileContainer=e??document.createElement("diffs-container"),this.fileContainer)}applyThemeState(e,t,n,i){const r=e.shadowRoot??e.attachShadow({mode:"open"}),o=i??n,s=this.options.theme??_,l=typeof s=="string"?s:{...s},a=Me(r);if(this.themeCSSStyle?.parentNode===r&&this.appliedThemeCSS?.themeStyles===t&&this.appliedThemeCSS.themeType===o&&this.appliedThemeCSS.scrollbarGutter===a){this.appliedThemeCSS.theme=l;return}this.themeCSSStyle=Cn({shadowRoot:r,currentNode:this.themeCSSStyle,themeCSS:vn(t,o,a)}),this.appliedThemeCSS=this.themeCSSStyle!=null?{theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a}:void 0}};function wr(e,t){const{resolution:n,hunkIndex:i,startContentIndex:r,endContentIndex:o,indexesToDelete:s=new Set}=t,l=e.hunks[i];if(l==null)throw console.error({diff:e,hunkIndex:i}),new Error(`resolveRegion: Invalid hunk index: ${i}`);if(r<0||o>=l.hunkContent.length||r>o)throw new Error(`resolveRegion: Invalid content range, ${r}, ${o}`);const{hunks:a,additionLines:d,deletionLines:h}=e,c={...e,hunks:[],deletionLines:[],additionLines:[],splitLineCount:0,unifiedLineCount:0,cacheKey:e.cacheKey!=null?`${e.cacheKey}:${n[0]}-${i}:${r}-${o}`:void 0},u={nextAdditionLineIndex:0,nextDeletionLineIndex:0,nextAdditionStart:1,nextDeletionStart:1,splitLineCount:0,unifiedLineCount:0},f=i===a.length-1&&o===l.hunkContent.length-1,g=!e.isPartial;for(const[y,m]of a.entries()){al(e,c,u,m.deletionLineIndex-m.collapsedBefore,m.additionLineIndex-m.collapsedBefore,m.collapsedBefore,g);const p={...m,hunkContent:[],additionStart:u.nextAdditionStart,deletionStart:u.nextDeletionStart,additionLineIndex:u.nextAdditionLineIndex,deletionLineIndex:u.nextDeletionLineIndex,additionCount:0,deletionCount:0,deletionLines:0,additionLines:0,splitLineStart:u.splitLineCount,unifiedLineStart:u.unifiedLineCount,splitLineCount:0,unifiedLineCount:0};for(const[C,v]of m.hunkContent.entries())if(y!==i||Co){ci(v,c,h,d);const x={...v,additionLineIndex:u.nextAdditionLineIndex,deletionLineIndex:u.nextDeletionLineIndex};p.hunkContent.push(x),Vt(x,u,p)}else if(s.has(C))p.hunkContent.push({type:"context",lines:0,deletionLineIndex:u.nextDeletionLineIndex,additionLineIndex:u.nextAdditionLineIndex});else if(v.type==="context"){ci(v,c,h,d);const x={...v,deletionLineIndex:u.nextDeletionLineIndex,additionLineIndex:u.nextAdditionLineIndex};p.hunkContent.push(x),Vt(x,u,p)}else{ll(n,v,c,h,d);const x={type:"context",lines:n==="deletions"?v.deletions:n==="additions"?v.additions:v.deletions+v.additions,deletionLineIndex:u.nextDeletionLineIndex,additionLineIndex:u.nextAdditionLineIndex};p.hunkContent.push(x),Vt(x,u,p)}if(y===i&&f){const C=n==="deletions"?m.noEOFCRDeletions:m.noEOFCRAdditions;p.noEOFCRAdditions=C,p.noEOFCRDeletions=C}c.hunks.push(p)}const b=a.at(-1);return b!=null&&!e.isPartial&&Er(c,h,d,b.deletionLineIndex+b.deletionCount,b.additionLineIndex+b.additionCount,Math.min(h.length-(b.deletionLineIndex+b.deletionCount),d.length-(b.additionLineIndex+b.additionCount))),c.splitLineCount=u.splitLineCount,c.unifiedLineCount=u.unifiedLineCount,c}function Er(e,t,n,i,r,o){for(let s=0;s0){let c=0,u=0,f=i.indexOf(` -`,c);for(;f!==-1;)fi(n,i.slice(c,f+1),u),c=f+1,u++,f=i.indexOf(` -`,c);c0)throw new Error("parseMergeConflictDiffFromFile: unfinished merge conflict marker stack");n.activeHunk!=null&&n.activeHunk.hunkContent.length>0&&(xn(n,n.activeHunk,"trailing"),Mr(n));for(let c=0;c0&&n.additionLines.length>0&&n.deletionLines.length>0){const c=n.hunks[n.hunks.length-1],u=Math.max(n.additionLines.length-(c.additionStart+c.additionCount-1),0);n.splitLineCount+=u,n.unifiedLineCount+=u}const o=n.deletionLines.join(""),s=n.additionLines.join(""),l=Ci(e,"current",o),a=Ci(e,"incoming",s);let d="change";s===""?d="deleted":o===""&&(d="new");const h={name:e.name,prevName:void 0,type:d,hunks:n.hunks,splitLineCount:n.splitLineCount,unifiedLineCount:n.unifiedLineCount,isPartial:!1,deletionLines:n.deletionLines,additionLines:n.additionLines,cacheKey:e.cacheKey!=null?`${e.cacheKey}:merge-conflict-diff`:void 0};return{fileDiff:h,currentFile:l,incomingFile:a,actions:n.actions,markerRows:Pr(h,n.actions)}}function fi(e,t,n){const i=e.conflictStack[e.conflictStack.length-1];if(i==null){if(t.length>=7&&t.charCodeAt(0)===60&&bi(t)==="start"){mi(e,t,n);return}pi(e,t);return}const r=bi(t);if(r==="start"){mi(e,t,n);return}if(r==="base"){i.stage="base",i.baseMarkerLineIndex=n,i.markerLines.base=t;return}if(r==="separator"){i.stage="incoming",i.separatorLineIndex=n,i.markerLines.separator=t;return}if(r==="end"){const o=e.conflictStack.pop();if(o==null)throw new Error("parseMergeConflictDiffFromFile: encountered end marker before start marker");fl(e,o,n,t);return}i.stage==="current"?gi(e,"deletion",t,i.conflictIndex,"current"):i.stage==="base"?pi(e,t,i.conflictIndex):gi(e,"addition",t,i.conflictIndex,"incoming")}function Ar(e){return e.activeHunk??=Dr(e.additionLines.length+1,e.deletionLines.length+1),e.activeHunk}function Hr(e,t,n,i){const r=e.conflictBuilders[t];if(r==null)throw new Error(`parseMergeConflictDiffFromFile: failed to locate conflict action ${t}`);const o=r.action,s=e.hunks.length;if(o.hunkIndex<0)o.hunkIndex=s;else if(o.hunkIndex!==s)throw new Error(`parseMergeConflictDiffFromFile: conflict ${t} spans multiple hunks and cannot be anchored`);if(o.startContentIndex<0&&(o.startContentIndex=i),o.endContentIndex=i,o.endMarkerContentIndex=i,n==="current"){o.currentContentIndex??=i;return}if(n==="base"){o.baseContentIndex??=i;return}o.incomingContentIndex=i}function cl(e,t,n,i){const r=e.hunkContent,o=r[r.length-1];return o?.type==="change"?(t==="addition"?o.additions++:o.deletions++,r.length-1):(r.push({type:"change",additions:t==="addition"?1:0,deletions:t==="deletion"?1:0,additionLineIndex:n,deletionLineIndex:i}),r.length-1)}function xn(e,t,n){let i=t.contextBufferCount,r=t.contextBufferAdditionStart,o=t.contextBufferDeletionStart;if(n==="leading"&&i>e.maxContextLines){const h=i-e.maxContextLines;r+=h,o+=h,i=e.maxContextLines,t.additionStart+=h,t.deletionStart+=h,t.additionLineIndex+=h,t.deletionLineIndex+=h}if(n==="trailing"&&i>e.maxContextLines&&(i=e.maxContextLines),i===0){t.contextBufferCount=0,t.contextBufferBaseConflicts=void 0;return}const s=t.hunkContent,l=s[s.length-1];let a;l?.type==="context"?(l.lines+=i,a=s.length-1):(s.push({type:"context",lines:i,additionLineIndex:r,deletionLineIndex:o}),a=s.length-1),t.additionCount+=i,t.deletionCount+=i;const d=t.contextBufferBaseConflicts;if(d!=null){const h=r-t.contextBufferAdditionStart;for(const[c,u]of d)c>=h&&c=d&&(s??=new Map,s.set(h-d,c))}xn(e,t,"trailing");const l=t.additionCount,a=t.deletionCount;Mr(e),e.activeHunk=Dr(t.additionStart+l+i,t.deletionStart+a+i),e.activeHunk.contextBufferAdditionStart=r,e.activeHunk.contextBufferDeletionStart=o,e.activeHunk.contextBufferCount=e.maxContextLines,e.activeHunk.contextBufferBaseConflicts=s}function pi(e,t,n=-1){const i=Ar(e);i.contextBufferCount===0&&(i.contextBufferAdditionStart=e.additionLines.length,i.contextBufferDeletionStart=e.deletionLines.length),e.additionLines.push(t),e.deletionLines.push(t),n>=0&&(i.contextBufferBaseConflicts??=new Map,i.contextBufferBaseConflicts.set(i.contextBufferCount,n)),i.contextBufferCount++}function gi(e,t,n,i,r){let o=Ar(e);o.hunkContent.length>0&&o.contextBufferCount>e.maxContextLines2&&(ul(e),o=e.activeHunk),xn(e,o,o.hunkContent.length===0?"leading":"before-change");const s=e.additionLines.length,l=e.deletionLines.length;t==="addition"?e.additionLines.push(n):e.deletionLines.push(n);const a=cl(o,t,s,l);t==="addition"?(o.additionCount++,o.additionLines++):(o.deletionCount++,o.deletionLines++),Hr(e,i,r,a)}function fl(e,t,n,i){if(t.separatorLineIndex==null||t.markerLines.separator==null)throw new Error(`parseMergeConflictDiffFromFile: conflict ${t.conflictIndex} is missing a separator marker`);const r=e.conflictBuilders[t.conflictIndex];if(r==null)throw new Error(`parseMergeConflictDiffFromFile: failed to finalize conflict ${t.conflictIndex}`);const o=r.action;o.markerLines.separator=t.markerLines.separator,o.markerLines.end=i,t.markerLines.base!=null&&(o.markerLines.base=t.markerLines.base),o.conflict={conflictIndex:t.conflictIndex,startLineIndex:t.startLineIndex,startLineNumber:t.startLineIndex+1,separatorLineIndex:t.separatorLineIndex,separatorLineNumber:t.separatorLineIndex+1,endLineIndex:n,endLineNumber:n+1,baseMarkerLineIndex:t.baseMarkerLineIndex,baseMarkerLineNumber:t.baseMarkerLineIndex!=null?t.baseMarkerLineIndex+1:void 0};const s=o.currentContentIndex??o.incomingContentIndex;if(o.currentContentIndex??=s,o.incomingContentIndex??=s,o.startContentIndex<0&&s!=null&&(o.startContentIndex=s),o.endContentIndex<0&&s!=null&&(o.endContentIndex=s),o.endMarkerContentIndex<0&&s!=null&&(o.endMarkerContentIndex=s),o.hunkIndex<0||o.startContentIndex<0||o.endContentIndex<0||o.endMarkerContentIndex<0)throw new Error(`parseMergeConflictDiffFromFile: failed to anchor merge conflict ${t.conflictIndex}`);e.actions[o.conflictIndex]=o,r.completed=!0}function mi(e,t,n){const i=e.nextConflictIndex;e.nextConflictIndex++,e.conflictStack.push({conflictIndex:i,stage:"current",startLineIndex:n,markerLines:{start:t}}),e.conflictBuilders[i]={completed:!1,action:{conflict:{conflictIndex:i,startLineIndex:n,startLineNumber:n+1,separatorLineIndex:n,separatorLineNumber:n+1,endLineIndex:n,endLineNumber:n+1,baseMarkerLineIndex:void 0,baseMarkerLineNumber:void 0},conflictIndex:i,hunkIndex:-1,startContentIndex:-1,endContentIndex:-1,endMarkerContentIndex:-1,markerLines:{start:t,separator:"",end:""}}}}function Dr(e,t){return{additionStart:e,deletionStart:t,additionCount:0,deletionCount:0,additionLines:0,deletionLines:0,additionLineIndex:Math.max(e-1,0),deletionLineIndex:Math.max(t-1,0),hunkContent:[],contextBufferAdditionStart:Math.max(e-1,0),contextBufferDeletionStart:Math.max(t-1,0),contextBufferCount:0,contextBufferBaseConflicts:void 0}}function vi(e,t){return t===1?`${e}`:`${e},${t}`}function bi(e){if(e.length<7)return;const t=e.charCodeAt(0);if(t!==60&&t!==62&&t!==61&&t!==124)return;const n=pl(e);if(n<7)return;let i=1;for(;i0&&e.charCodeAt(t-1)===10&&t--,t>0&&e.charCodeAt(t-1)===13&&t--,t}function gl(e){return e===9||e===10||e===11||e===12||e===13||e===32}function Ci(e,t,n){return{...e,contents:n,cacheKey:e.cacheKey!=null?`${e.cacheKey}:merge-conflict-${t}`:void 0}}function Pr(e,t){const n=[],i=new Array(e.hunks.length),r=(s,l)=>{const a=e.hunks[s];if(a==null)return 0;let d=i[s];if(d==null){d=new Array(a.hunkContent.length+1);let h=a.unifiedLineStart;d[0]=h;for(let c=0;c{const a=r(s,l),d=i[s]?.[Math.max(l+1,0)]??r(s,l+1);return Math.max(a,d-1)};for(const s of t){if(s==null)continue;const l=e.hunks[s.hunkIndex];if(l==null)continue;const a=r(s.hunkIndex,s.startContentIndex);if(n.push(we(s,"marker-start",s.startContentIndex,s.markerLines.start,a)),s.baseContentIndex!=null){const f=s.currentContentIndex,g=s.incomingContentIndex;if(f==null||g==null)continue;const b=s.markerLines.base;if(b==null)continue;const y=l.hunkContent[f],m=l.hunkContent[s.baseContentIndex],p=l.hunkContent[g];if(y?.type!=="change"||m?.type!=="context"||p?.type!=="change")continue;const C=r(s.hunkIndex,f),v=r(s.hunkIndex,g);n.push(we(s,"marker-base",s.baseContentIndex,b,C+y.deletions)),n.push(we(s,"marker-separator",s.baseContentIndex,s.markerLines.separator,v),we(s,"marker-end",s.endMarkerContentIndex,s.markerLines.end,o(s.hunkIndex,s.endMarkerContentIndex)));continue}const d=s.currentContentIndex;if(d==null)continue;const h=l.hunkContent[d];if(h?.type!=="change")continue;const c=r(s.hunkIndex,d),u=h.deletions>0?c+h.deletions:a;n.push(we(s,"marker-separator",d,s.markerLines.separator,u),we(s,"marker-end",s.endMarkerContentIndex,s.markerLines.end,o(s.hunkIndex,s.endMarkerContentIndex)))}return n}function we(e,t,n,i,r){return{type:t,hunkIndex:e.hunkIndex,contentIndex:n,conflictIndex:e.conflictIndex,lineText:i,lineIndex:r}}function ml(e,t){let n=e.unifiedLineStart;for(let i=0;i{const t=this.injectedRows.get(`${e.hunkIndex}:${e.lineIndex}`);if(t==null||t.length===0)return;const{mergeConflictActionsType:n}=this.getOptionsWithDefaults(),i=[],r=[];for(const o of t){if(o.type==="actions"){i.push({content:vl({row:o,includeDefaultActions:n==="default",includeSlot:!0}),gutter:Li("action")});continue}(o.type==="marker-end"?r:i).push({content:bl(o),gutter:Li("marker",o.type)})}return{before:i.length>0?i:void 0,after:r.length>0?r:void 0}};getOptionsWithDefaults(){const e=super.getOptionsWithDefaults();return e.diffStyle="unified",e.lineDiffType="none",e.mergeConflictActionsType=this.options.mergeConflictActionsType??"default",e}};function yi(e){return e!=null?{"data-merge-conflict":e}:void 0}function xi(e,t){if(t!=null){if(e==="change")return t==="current"||t==="incoming"?{"data-line-type":"context","data-merge-conflict":t}:void 0;if(t==="marker-start"||t==="marker-base"||t==="marker-separator"||t==="marker-end")return{"data-merge-conflict":t}}}function Li(e,t){const n=j(void 0,"annotation",1);return n.properties["data-gutter-buffer"]=e==="action"?"merge-conflict-action":`merge-conflict-${t??"marker"}`,n}function vl({row:e,includeDefaultActions:t,includeSlot:n}){const i=t?Cl(e.conflictIndex):[];return i.push(A({tagName:"slot",properties:{name:Ir({hunkIndex:e.hunkIndex,lineIndex:e.lineIndex,conflictIndex:e.conflictIndex}),"data-merge-conflict-action-slot":""}})),A({tagName:"div",properties:{"data-merge-conflict-actions":""},children:[A({tagName:"div",properties:{"data-merge-conflict-actions-content":""},children:i})]})}function bl(e){return A({tagName:"div",properties:{"data-merge-conflict":e.type,"data-merge-conflict-marker-row":""},children:[W(e.lineText.replace(/(?:\r\n|\n|\r)$/,""))]})}function Cl(e){return[Bt({resolution:"current",label:"Accept current change",conflictIndex:e}),ki(),Bt({resolution:"incoming",label:"Accept incoming change",conflictIndex:e}),ki(),Bt({resolution:"both",label:"Accept both",conflictIndex:e})]}function Bt({resolution:e,label:t,conflictIndex:n}){return A({tagName:"button",properties:{type:"button","data-merge-conflict-action":e,"data-merge-conflict-conflict-index":`${n}`},children:[W(t)]})}function ki(){return A({tagName:"span",properties:{"data-merge-conflict-action-separator":""},children:[W("|")]})}function Sl(e,t){return e.hunkIndex===t.hunkIndex&&e.startContentIndex===t.startContentIndex&&e.endContentIndex===t.endContentIndex&&e.currentContentIndex===t.currentContentIndex&&e.baseContentIndex===t.baseContentIndex&&e.incomingContentIndex===t.incomingContentIndex&&e.endMarkerContentIndex===t.endMarkerContentIndex&&e.conflictIndex===t.conflictIndex&&yl(e.conflict,t.conflict)}function yl(e,t){return e.conflictIndex===t.conflictIndex&&e.startLineIndex===t.startLineIndex&&e.startLineNumber===t.startLineNumber&&e.separatorLineIndex===t.separatorLineIndex&&e.separatorLineNumber===t.separatorLineNumber&&e.endLineIndex===t.endLineIndex&&e.endLineNumber===t.endLineNumber&&e.baseMarkerLineIndex===t.baseMarkerLineIndex&&e.baseMarkerLineNumber===t.baseMarkerLineNumber}let xl=-1;var nd=class extends Sr{options;__id=`unresolved-file:${++xl}`;type="unresolved-file";computedCache={file:void 0,fileDiff:void 0,actions:void 0,markerRows:void 0};conflictActions=[];markerRows=[];conflictActionCache=new Map;constructor(e={theme:_},t,n=!1){super(void 0,t,n),this.options=e,this.setOptions(e)}setOptions(e){if(e!=null){if(e.onMergeConflictAction!=null&&e.onMergeConflictResolve!=null)throw new Error("UnresolvedFile: onMergeConflictAction and onMergeConflictResolve are mutually exclusive. Use only one callback.");this.options=e,this.hunksRenderer.setOptions(this.getHunksRendererOptions(e)),this.syncInteractionOptions()}}syncInteractionOptions(){this.interactionManager.setOptions(Ke(this.options,typeof this.options.hunkSeparators=="function"||(this.options.hunkSeparators??"line-info")==="line-info"||this.options.hunkSeparators==="line-info-basic"?this.handleExpandHunk:void 0,this.getLineIndex,this.handleMergeConflictActionClick))}createHunksRenderer(e){return new Si(this.getHunksRendererOptions(e),this.handleHighlightRender,this.workerManager)}getHunksRendererOptions(e){return Hl(e,this.options)}applyPreNodeAttributes(e,t){super.applyPreNodeAttributes(e,t,{"data-has-merge-conflict":""})}cleanUp(){this.emitPostRender(!0),this.clearMergeConflictActionCache(),this.computedCache={file:void 0,fileDiff:void 0,actions:void 0,markerRows:void 0},this.conflictActions=[],super.cleanUp()}getOrComputeDiff({file:e,fileDiff:t,actions:n,markerRows:i}){const{maxContextLines:r,onMergeConflictAction:o}=this.options;e:if(o!=null){const s=t!=null;if(s!==(n!=null)||s!==(i!=null))throw new Error("UnresolvedFile.getOrComputeDiff: fileDiff, actions, and markerRows must be passed together");if(t!=null&&n!=null&&i!=null){this.computedCache={file:e??this.computedCache.file,fileDiff:t,actions:n,markerRows:i};break e}else if(e!=null||this.computedCache.file!=null){if(e!=null&&this.computedCache.file!=null&&!ae(e,this.computedCache.file)&&this.computedCache.fileDiff!=null&&this.computedCache.actions!=null)throw new Error("UnresolvedFile.getOrComputeDiff: file can only be used to initialize unresolved state once. Pass fileDiff and actions for subsequent updates.");if(e??=this.computedCache.file,e==null)throw new Error("UnresolvedFile.getOrComputeDiff: file is null, should be impossible");if(!ae(e,this.computedCache.file)||this.computedCache.fileDiff==null||this.computedCache.actions==null){const l=ui(e,r);this.computedCache={file:e,fileDiff:l.fileDiff,actions:l.actions,markerRows:l.markerRows}}t=this.computedCache.fileDiff,n=this.computedCache.actions,i=this.computedCache.markerRows;break e}else{t=this.computedCache.fileDiff,n=this.computedCache.actions,i=this.computedCache.markerRows;break e}}else{if(t!=null||n!=null||i!=null)throw new Error("UnresolvedFile.getOrComputeDiff: fileDiff, actions, and markerRows are only usable in controlled mode, you must pass in `onMergeConflictAction`");if(e!=null&&this.computedCache.file!=null&&!ae(e,this.computedCache.file))throw new Error("UnresolvedFile.getOrComputeDiff: uncontrolled unresolved files parse the file only once. Later updates must come from the cached diff state.");if(this.computedCache.file??=e,this.computedCache.fileDiff==null&&this.computedCache.file!=null){const s=ui(this.computedCache.file,r);this.computedCache.fileDiff=s.fileDiff,this.computedCache.actions=s.actions,this.computedCache.markerRows=s.markerRows}t=this.computedCache.fileDiff,n=this.computedCache.actions,i=this.computedCache.markerRows;break e}if(!(t==null||n==null||i==null))return{fileDiff:t,actions:n,markerRows:i}}hydrate(e){const{file:t,fileDiff:n,actions:i,markerRows:r,lineAnnotations:o,fileContainer:s,prerenderedHTML:l,preventEmit:a=!1}=e,d=this.getOrComputeDiff({file:t,fileDiff:n,actions:i,markerRows:r});d!=null&&(this.hydrateElements(s,l),this.setActiveMergeConflictState(d.actions,d.markerRows),Rl(this.pre,d.fileDiff,this.options.collapsed)||Al(this.headerElement,d.fileDiff,this.options.disableFileHeader)?this.render({...e,preventEmit:!0}):(this.hydrationSetup({fileDiff:d.fileDiff,lineAnnotations:o}),this.pre!=null&&this.renderMergeConflictActionSlots()),a||this.emitPostRender())}rerender(){!this.enabled||this.fileDiff==null||this.render({forceRender:!0,renderRange:this.renderRange})}render(e={}){const{file:t,fileDiff:n,actions:i,markerRows:r,lineAnnotations:o,preventEmit:s=!1,...l}=e,a=this.getOrComputeDiff({file:t,fileDiff:n,actions:i,markerRows:r});if(a==null)return!1;this.setActiveMergeConflictState(a.actions,a.markerRows);const d=super.render({...l,fileDiff:a.fileDiff,lineAnnotations:o,preventEmit:!0});return d&&(this.renderMergeConflictActionSlots(),s||this.emitPostRender()),d}resolveConflict(e,t,n=this.computedCache.fileDiff){const i=this.conflictActions[e];if(n==null||i==null)return;if(i.conflictIndex!==e)throw console.error({conflictIndex:e,action:i}),new Error("UnresolvedFile.resolveConflict: conflictIndex and conflictAction don't match");const r=dl(n,i,t),o=this.computedCache.file,{file:s,actions:l,markerRows:a}=Ll({fileDiff:r,previousActions:this.conflictActions,resolvedConflictIndex:e,previousFile:o,resolution:t});return{file:s,fileDiff:r,actions:l,markerRows:a}}resolveConflictAndRender(e,t){const n=this.conflictActions[e];if(n==null)return;if(n.conflictIndex!==e)throw console.error({conflictIndex:e,action:n}),new Error("UnresolvedFile.resolveConflictAndRender: conflictIndex and conflictAction don't match");const i={resolution:t,conflict:n.conflict},{file:r,fileDiff:o,actions:s,markerRows:l}=this.resolveConflict(e,t)??{};r==null||o==null||s==null||l==null||(this.computedCache={file:r,fileDiff:o,actions:s,markerRows:l},this.setActiveMergeConflictState(s,l),this.workerManager!=null?this.hunksRenderer.renderDiff(o):this.render({forceRender:!0}),this.options.onMergeConflictResolve?.(r,i))}setActiveMergeConflictState(e=this.conflictActions,t=this.markerRows){this.conflictActions=e,this.markerRows=t,this.computedCache.fileDiff!=null&&this.hunksRenderer instanceof Si&&this.hunksRenderer.setConflictState(this.options.mergeConflictActionsType==="none"?[]:e,t,this.computedCache.fileDiff)}handleMergeConflictActionClick=e=>{const t=this.conflictActions[e.conflictIndex];if(t==null)return;if(t.conflictIndex!==e.conflictIndex)throw console.error({conflictIndex:e.conflictIndex,action:t}),new Error("UnresolvedFile.handleMergeConflictActionClick: conflictIndex and conflictAction don't match");const n={resolution:e.resolution,conflict:t.conflict};if(this.options.onMergeConflictAction!=null){this.options.onMergeConflictAction(n,this);return}this.resolveConflictAndRender(e.conflictIndex,e.resolution)};renderMergeConflictActionSlots(){const{fileDiff:e}=this.computedCache;if(this.isContainerManaged||this.fileContainer==null||typeof this.options.mergeConflictActionsType!="function"||this.conflictActions.length===0||e==null){this.clearMergeConflictActionCache();return}const t=new Map(this.conflictActionCache);for(let n=0;n{if(s!==t&&o!=null)return o.conflict.startLineIndex>n.conflict.endLineIndex?{...o,conflict:Il(o.conflict,r)}:o})}function Tl(e,t){const n=(e.baseMarkerLineIndex??e.separatorLineIndex)-e.startLineIndex-1,i=e.endLineIndex-e.separatorLineIndex-1;return(t==="current"?n:t==="incoming"?i:n+i)-(e.endLineIndex-e.startLineIndex+1)}function Il(e,t){return{...e,startLineIndex:e.startLineIndex+t,startLineNumber:e.startLineNumber+t,separatorLineIndex:e.separatorLineIndex+t,separatorLineNumber:e.separatorLineNumber+t,endLineIndex:e.endLineIndex+t,endLineNumber:e.endLineNumber+t,baseMarkerLineIndex:e.baseMarkerLineIndex!=null?e.baseMarkerLineIndex+t:void 0,baseMarkerLineNumber:e.baseMarkerLineNumber!=null?e.baseMarkerLineNumber+t:void 0}}function Rl(e,t,n=!1){return!n&&e==null&&t!=null}function Al(e,t,n=!1){return e==null&&t!=null&&!n}function Hl(e,t){return{...t,...e,hunkSeparators:typeof e?.hunkSeparators=="function"?"custom":e?.hunkSeparators,mergeConflictActionsType:typeof e?.mergeConflictActionsType=="function"?"custom":e?.mergeConflictActionsType}}function Ml(e,t){return e==null||t==null?e===t:e.top===t.top&&e.bottom===t.bottom}const _r=1e3,Dl=_r*4,Pl=[0,1e-6,.99999,1],_l={overscrollSize:_r,intersectionObserverMargin:Dl,resizeDebugging:!1};let ht=0,Ol=-1;var id=class oe{static __STOP=!1;static __lastScrollPosition=0;__id=`virtualizer-${++Ol}`;config;type="simple";intersectionObserver;scrollTop=0;height=0;scrollHeight=0;windowSpecs={top:0,bottom:0};root;contentContainer;resizeObserver;observers=new Map;visibleInstances=new Map;visibleInstancesDirty=!1;instancesChanged=new Set;scrollDirty=!0;heightDirty=!0;scrollHeightDirty=!0;renderedObservers=0;connectQueue=new Map;constructor(t){this.config={..._l,...t}}setup(t,n){if(this.root==null){this.root=t,this.resizeObserver=new ResizeObserver(this.handleContainerResize),this.intersectionObserver=new IntersectionObserver(this.handleIntersectionChange,{root:this.root,threshold:Pl,rootMargin:`${this.config.intersectionObserverMargin}px 0px ${this.config.intersectionObserverMargin}px 0px`}),t instanceof Document?this.setupWindow():this.setupElement(n),window.__INSTANCE=this,window.__TOGGLE=()=>{oe.__STOP?(oe.__STOP=!1,(this.getScrollContainerElement()??window).scrollTo({top:oe.__lastScrollPosition}),Y(this.computeRenderRangeAndEmit)):(oe.__lastScrollPosition=this.getScrollTop(),oe.__STOP=!0)};for(const[i,r]of this.connectQueue.entries())this.connect(i,r);this.connectQueue.clear(),this.markDOMDirty(),Y(this.computeRenderRangeAndEmit)}}instanceChanged(t,n){this.instancesChanged.add(t),n&&this.markDOMDirty(),Y(this.computeRenderRangeAndEmit)}getWindowSpecs(){return this.windowSpecs.top===0&&this.windowSpecs.bottom===0&&(this.windowSpecs=Gt({scrollTop:this.getScrollTop(),height:this.getHeight(),scrollHeight:this.getScrollHeight(),overscrollSize:this.config.overscrollSize})),this.windowSpecs}isInstanceVisible(t,n){const i=this.getScrollTop(),r=this.getHeight(),o=this.config.intersectionObserverMargin,s=i-o,l=i+r+o;return!(tl)}handleContainerResize=t=>{if(this.root==null)return;let n=!1;for(const i of t){const r=i.borderBoxSize[0].blockSize;this.root instanceof Document?r!==this.scrollHeight&&(this.scrollHeightDirty=!0,n=!0,this.config.resizeDebugging&&(console.log("Virtualizer: content size change",this.__id,{sizeChange:r-ht,newSize:r}),ht=r)):i.target===this.root?r!==this.height&&(this.heightDirty=!0,n=!0):i.target===this.contentContainer&&(this.scrollHeightDirty=!0,n=!0,this.config.resizeDebugging&&(console.log("Virtualizer: scroller size change",this.__id,{sizeChange:r-ht,newSize:r}),ht=r))}n&&Y(this.computeRenderRangeAndEmit)};setupWindow(){if(this.root==null||!(this.root instanceof Document))throw new Error("Virtualizer.setupWindow: Invalid setup method");window.addEventListener("scroll",this.handleWindowScroll,{passive:!0}),window.addEventListener("resize",this.handleWindowResize,{passive:!0}),this.resizeObserver?.observe(this.root.documentElement)}setupElement(t){if(this.root==null||this.root instanceof Document)throw new Error("Virtualizer.setupElement: Invalid setup method");this.root.addEventListener("scroll",this.handleElementScroll,{passive:!0}),this.resizeObserver?.observe(this.root),t??=this.root.firstElementChild??void 0,t instanceof HTMLElement&&(this.contentContainer=t,this.resizeObserver?.observe(t))}cleanUp(){this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.intersectionObserver?.disconnect(),this.intersectionObserver=void 0,this.root?.removeEventListener("scroll",this.handleElementScroll),window.removeEventListener("scroll",this.handleWindowScroll),window.removeEventListener("resize",this.handleWindowResize),this.root=void 0,this.contentContainer=void 0,this.observers.clear(),this.visibleInstances.clear(),this.instancesChanged.clear(),this.connectQueue.clear(),this.visibleInstancesDirty=!1,this.windowSpecs={top:0,bottom:0},this.scrollTop=0,this.height=0,this.scrollHeight=0}getOffsetInScrollContainer(t){return this.getScrollTop()+Ue(t,this.getScrollContainerElement())}connect(t,n){if(this.observers.has(t))throw new Error("Virtualizer.connect: instance is already connected...");return this.intersectionObserver==null?this.connectQueue.set(t,n):(this.intersectionObserver.observe(t),this.observers.set(t,n),this.instancesChanged.add(n),this.markDOMDirty(),Y(this.computeRenderRangeAndEmit)),()=>this.disconnect(t)}disconnect(t){const n=this.observers.get(t);this.connectQueue.delete(t),n!=null&&(this.intersectionObserver?.unobserve(t),this.observers.delete(t),this.visibleInstances.delete(t)&&(this.visibleInstancesDirty=!0),this.markDOMDirty(),Y(this.computeRenderRangeAndEmit))}handleWindowResize=()=>{oe.__STOP||window.innerHeight===this.height||(this.heightDirty=!0,Y(this.computeRenderRangeAndEmit))};handleWindowScroll=()=>{oe.__STOP||this.root==null||!(this.root instanceof Document)||(this.scrollDirty=!0,Y(this.computeRenderRangeAndEmit))};handleElementScroll=()=>{oe.__STOP||this.root==null||this.root instanceof Document||(this.scrollDirty=!0,Y(this.computeRenderRangeAndEmit))};computeRenderRangeAndEmit=()=>{if(oe.__STOP)return;const t=this.heightDirty||this.scrollHeightDirty;if(!this.scrollDirty&&!this.scrollHeightDirty&&!this.heightDirty&&this.renderedObservers===this.observers.size&&!this.visibleInstancesDirty&&this.instancesChanged.size===0)return;let n=this.instancesChanged.size>0;if(this.instancesChanged.size===0){const o=Gt({scrollTop:this.getScrollTop(),height:this.getHeight(),scrollHeight:this.getScrollHeight(),overscrollSize:this.config.overscrollSize});if(!t&&Ml(this.windowSpecs,o)&&this.renderedObservers===this.observers.size&&!this.visibleInstancesDirty)return;this.windowSpecs=o}this.visibleInstancesDirty=!1,this.renderedObservers=this.observers.size;const i=this.getScrollAnchor(this.height),r=new Set;for(const o of t?this.observers.values():this.visibleInstances.values())o.onRender(t)&&r.add(o);for(const o of this.instancesChanged)r.has(o)||o.onRender(t)&&r.add(o);this.scrollFix(i);for(const o of r)o.reconcileHeights();n||=this.instancesChanged.size>0,n&&this.markDOMDirty(),(n||t)&&Y(this.computeRenderRangeAndEmit),r.clear(),this.instancesChanged.clear()};scrollFix(t){if(t==null)return;const n=this.getScrollContainerElement(),{lineIndex:i,lineOffset:r,fileElement:o,fileOffset:s,fileTypeOffset:l}=t;if(i!=null&&r!=null){const d=o.shadowRoot?.querySelector(`[data-line][data-line-index="${i}"]`);if(d instanceof HTMLElement){const h=Ue(d,n);if(h!==r){const c=h-r;this.applyScrollFix(c)}return}}const a=Ue(o,n);if(l==="top")a!==s&&this.applyScrollFix(a-s);else{const d=a+o.getBoundingClientRect().height;d!==s&&this.applyScrollFix(d-s)}}applyScrollFix(t){this.root==null||this.root instanceof Document?window.scrollTo({top:window.scrollY+t,behavior:"instant"}):this.root.scrollTo({top:this.root.scrollTop+t,behavior:"instant"}),this.markDOMDirty()}getScrollAnchor(t){const n=this.getScrollContainerElement();let i;for(const[r]of this.visibleInstances.entries()){const o=Ue(r,n),s=o+r.offsetHeight;let l,a;s<=0?(l=s,a="bottom"):(l=o,a="top");let d,h;if(s>0&&o=0&&(i.fileOffset<0||li.fileOffset))&&(c=!0),c&&(i={fileElement:r,fileTypeOffset:a,fileOffset:l,lineIndex:d,lineOffset:h})}return i}handleIntersectionChange=t=>{this.scrollDirty=!0;for(const{target:n,isIntersecting:i}of t){if(!(n instanceof HTMLElement))throw new Error("Virtualizer.handleIntersectionChange: target not an HTMLElement");const r=this.observers.get(n);r!=null&&(i&&!this.visibleInstances.has(n)?(r.setVisibility(!0),this.visibleInstances.set(n,r),this.visibleInstancesDirty=!0):!i&&this.visibleInstances.has(n)&&(r.setVisibility(!1),this.visibleInstances.delete(n),this.visibleInstancesDirty=!0))}this.visibleInstancesDirty&&Y(this.computeRenderRangeAndEmit)};getScrollTop(){if(!this.scrollDirty)return this.scrollTop;this.scrollDirty=!1;let t=this.root==null?0:this.root instanceof Document?window.scrollY:this.root.scrollTop;return t=Math.max(0,Math.min(t,this.getScrollHeight()-this.getHeight())),this.scrollTop=t,t}getScrollHeight(){return this.scrollHeightDirty?(this.scrollHeightDirty=!1,this.scrollHeight=this.root==null?0:this.root instanceof Document?this.root.documentElement.scrollHeight:this.root.scrollHeight,this.scrollHeight):this.scrollHeight}getHeight(){return this.heightDirty?(this.heightDirty=!1,this.height=this.root==null?0:this.root instanceof Document?globalThis.innerHeight:this.root.getBoundingClientRect().height,this.height):this.height}markDOMDirty(){this.scrollDirty=!0,this.scrollHeightDirty=!0,this.heightDirty=!0}getScrollContainerElement(){return this.root==null||this.root instanceof Document?void 0:this.root}};function Ue(e,t){const n=e.getBoundingClientRect(),i=t?.getBoundingClientRect().top??0;return n.top-i}function rd(e){const t=[];for(const n of e){const i=Se.get(n);if(i==null)throw new Error(`getResolvedLanguages: ${n} is not resolved. Please resolve languages before calling getResolvedLanguages`);t.push(i)}return t}function od(e){for(const t of Array.isArray(e)?e:[e])if(!Se.has(t))return!1;return!0}function sd(e,t,n=[]){if(e==="text"||e==="ansi")throw new Error("registerCustomLanguage: 'text' and 'ansi' are reserved language names");if(jt.has(e)){console.error(`registerCustomLanguage: lang: ${e} is already registered`);return}jt.set(e,t);for(const i of n)Xo(i,e)}async function ad(e){const t=[],n=[];for(const i of e){if(i==="text"||i==="ansi")continue;const r=Fi(i)??Ni(i);"then"in r?n.push(r):t.push(r)}return n.length>0&&await Promise.all(n).then(i=>{for(const r of i){if(r==null)throw new Error("resolvedLanguages: unable to resolve language");t.push(r)}}),t}function ld(e){return X.getResolvedThemes(e)}function Nl(e,t){try{const n=hn({name:e,load:t});X.registerTheme(n.name,n.load)}catch(n){if(n instanceof Vi){console.error("SharedHighlight.registerCustomTheme: theme name already registered",e);return}throw n}}function dd(e,t,n=!1){const i=Br({name:e,variablePrefix:B("global"),variableDefaults:t,fontStyle:n});Nl(e,()=>Promise.resolve(i))}async function hd(e){for(const n of e)ji(n);const t=await X.resolveThemes(e);for(let n=0;n0&&(ct(i,t,"trailing"),$t(i,n)),i=void 0);const l=parseInt(s[3]),a=parseInt(s[1]),d=parseInt(s[4]??"1"),h=parseInt(s[2]??"1");isNaN(l)||isNaN(a)||isNaN(d)||isNaN(h)?n.push(o):i={additionStart:l,deletionStart:a,additionCount:0,deletionCount:0,hunkLines:[],contextLines:[]};continue}if(i==null){n.push(o);continue}if(o.startsWith(" "))i.contextLines.push(o);else if(o!==""){if(i.hunkLines.length>0&&i.contextLines.length>t*2){const l=i.contextLines.length-t*2,a=i.contextLines.slice(-t);ct(i,t,"trailing");const{additionCount:d,deletionCount:h}=i;$t(i,n),i={additionStart:i.additionStart+d+l,deletionStart:i.deletionStart+h+l,deletionCount:0,additionCount:0,contextLines:a,hunkLines:[]}}ct(i,t,i.hunkLines.length===0?"leading":"before-change"),i.hunkLines.push(o),o.startsWith("+")?i.additionCount+=1:o.startsWith("-")&&(i.deletionCount+=1)}}i!=null&&i.hunkLines.length>0&&(ct(i,t,"trailing"),$t(i,n));const r=n.join(` -`);return e.endsWith(` -`)?`${r} -`:r}function ct(e,t,n){if(n==="leading"&&e.contextLines.length>t){const i=e.contextLines.length-t;e.contextLines.splice(0,i),e.additionStart+=i,e.deletionStart+=i}return n==="trailing"&&e.contextLines.length>t&&(e.contextLines.length=t),e.contextLines.length>0&&(e.hunkLines.push(...e.contextLines),e.additionCount+=e.contextLines.length,e.deletionCount+=e.contextLines.length,e.contextLines.length=0),e}function $t(e,t){t.push(`@@ -${wi(e.deletionStart,e.deletionCount)} +${wi(e.additionStart,e.additionCount)} @@`),t.push(...e.hunkLines)}function wi(e,t){return t===1?`${e}`:`${e},${t}`}export{Yr as ALTERNATE_FILE_NAMES_GIT,gt as AttachedLanguages,vt as AttachedThemes,Wr as COMMIT_METADATA_SPLIT,Qr as CORE_CSS_ATTRIBUTE,an as CUSTOM_HEADER_SLOT_ID,hi as CodeToTokenTransformStream,ed as CodeView,_e as DEFAULT_CODE_VIEW_FILE_METRICS,eo as DEFAULT_CODE_VIEW_LAYOUT,jl as DEFAULT_COLLAPSED_CONTEXT_THRESHOLD,no as DEFAULT_EXPANDED_REGION,Ae as DEFAULT_RENDER_RANGE,to as DEFAULT_SMOOTH_SCROLL_SETTINGS,_ as DEFAULT_THEMES,Zr as DEFAULT_TOKENIZE_MAX_LENGTH,ln as DEFAULT_VIRTUAL_FILE_METRICS,$r as DIFFS_DEVELOPMENT_BUILD,Ai as DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY,Jr as DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE,Ei as DIFFS_TAG_NAME,Cr as DiffHunksRenderer,Hi as EMPTY_RENDER_RANGE,Ne as EXTENSION_TO_FILE_FORMAT,qr as FILENAME_HEADER_REGEX,Kr as FILENAME_HEADER_REGEX_GIT,Vl as FILE_CONTEXT_BLOB,xs as File,Sr as FileDiff,fs as FileRenderer,td as FileStream,Ti as GIT_DIFF_FILE_BREAK_REGEX,sn as HEADER_METADATA_SLOT_ID,on as HEADER_PREFIX_SLOT_ID,Gr as HUNK_HEADER,Xr as INDEX_LINE_METADATA,Pi as InteractionManager,$l as MERGE_CONFLICT_BASE_MARKER_REGEX,Gl as MERGE_CONFLICT_END_MARKER_REGEX,Wl as MERGE_CONFLICT_SEPARATOR_MARKER_REGEX,Bl as MERGE_CONFLICT_START_MARKER_REGEX,jt as RegisteredCustomLanguages,_i as ResizeManager,Se as ResolvedLanguages,It as ResolvingLanguages,jr as SPLIT_WITH_NEWLINES,nr as SVGSpriteSheet,sa as ScrollSyncManager,rl as ShikiStreamTokenizer,Ii as THEME_CSS_ATTRIBUTE,Ul as UNIFIED_DIFF_FILE_BREAK_REGEX,Ri as UNSAFE_CSS_ATTRIBUTE,nd as UnresolvedFile,As as VirtualizedFile,Oa as VirtualizedFileDiff,id as Virtualizer,ka as areDiffLineAnnotationsEqual,Fe as areDiffRenderOptionsEqual,Be as areDiffTargetsEqual,Oe as areFileRenderOptionsEqual,ae as areFilesEqual,wa as areHunkDataEqual,mt as areLanguagesAttached,ps as areLineAnnotationsEqual,He as areObjectsEqual,dn as areOptionsEqual,ir as arePrePropertiesEqual,Lt as areRenderRangesEqual,Wt as areSelectionsEqual,Ge as areThemesAttached,De as areThemesEqual,Ml as areVirtualWindowSpecsEqual,cd as areWorkerStatsEqual,Rn as attachResolvedLanguages,An as attachResolvedThemes,xe as cleanLastNewline,So as cleanUpResolvedLanguages,To as cleanUpResolvedThemes,Ld as codeToHtml,qt as createAnnotationElement,pn as createAnnotationWrapperNode,Br as createCSSVariablesTheme,jn as createDiffSpanDecoration,rt as createEmptyRowBuffer,Yi as createFileHeaderElement,j as createGutterGap,Di as createGutterItem,rr as createGutterUtilityContentNode,so as createGutterUtilityElement,Ee as createGutterWrapper,A as createHastElement,pt as createIconElement,ot as createNoNewlineElement,Xi as createPreElement,Yo as createPreWrapperProperties,ud as createRowNodes,ke as createSeparator,ol as createSpanFromToken,fd as createStyleElement,W as createTextNodeElement,pd as createThemeStyleElement,Ji as createTransformerWithState,or as createUnsafeCSSStyleNode,Gt as createWindowFromScrollPosition,io as dequeueRender,U as detachString,gd as diffAcceptRejectHunk,Xl as disposeHighlighter,oo as findCodeElement,B as formatCSSVariablePrefix,Zl as getCustomExtensionsMap,Jl as getCustomExtensionsVersion,Q as getFiletypeFromFileName,Ki as getHighlighterIfLoaded,un as getHighlighterOptions,fn as getHighlighterThemeStyles,aa as getHunkSeparatorSlotName,jo as getIconForType,ge as getLineAnnotationName,md as getLineEndingType,Kt as getLineNodes,je as getOrCreateCodeNode,rd as getResolvedLanguages,Fi as getResolvedOrResolveLanguage,$o as getResolvedOrResolveTheme,ld as getResolvedThemes,xt as getSharedHighlighter,vd as getSingularPatch,cn as getThemes,la as getTotalLineCountFromHunks,Hl as getUnresolvedDiffHunksRendererOptions,od as hasResolvedLanguages,Go as hasResolvedThemes,da as isDefaultRenderRange,ql as isHighlighterLoaded,Wo as isHighlighterLoading,Kl as isHighlighterNull,Oi as isWorkerContext,tn as parseDiffFromFile,bd as parseLineType,Fs as parsePatchFiles,lr as patchScrollbarGutterSize,Ke as pluckInteractionOptions,ro as prefersReducedMotion,Yl as preloadHighlighter,dr as prerenderHTMLIfNecessary,Ns as processFile,Qo as processLine,_s as processPatch,st as pushOrJoinSpan,Y as queueRender,dd as registerCustomCSSVariableTheme,sd as registerCustomLanguage,Nl as registerCustomTheme,hr as releaseStringDetachBuffer,ba as renderDiffWithHighlighter,hs as renderFileWithHighlighter,Ql as replaceCustomExtensions,dl as resolveConflict,Ni as resolveLanguage,ad as resolveLanguages,wr as resolveRegion,Bo as resolveTheme,hd as resolveThemes,Xo as setCustomExtension,Cd as setLanguageOverride,bn as setPreNodeProperties,Sd as trimPatchContext,vs as wrapCoreCSS,vn as wrapThemeCSS,mn as wrapUnsafeCSS}; diff --git a/apps/kimi-code/dist-web/assets/index-C8RkgE6U.css b/apps/kimi-code/dist-web/assets/index-C8RkgE6U.css deleted file mode 100644 index 2d0b95548a..0000000000 --- a/apps/kimi-code/dist-web/assets/index-C8RkgE6U.css +++ /dev/null @@ -1,32 +0,0 @@ -.ui-action-card[data-v-e52e7748]{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);font-family:var(--font-ui);text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.ui-action-card[data-v-e52e7748]:hover:not(:disabled){border-color:var(--color-line-strong);background:var(--color-surface)}.ui-action-card[data-v-e52e7748]:focus-visible{outline:none;box-shadow:var(--p-focus-ring-strong)}.ui-action-card[data-v-e52e7748]:disabled{opacity:.5;cursor:not-allowed}.ui-action-card__leading[data-v-e52e7748]{align-self:flex-start;display:inline-flex;flex:none}.ui-action-card__text[data-v-e52e7748]{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.ui-action-card__title[data-v-e52e7748]{display:block;font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.ui-action-card__title[data-v-e52e7748] .ui-badge{margin-left:var(--space-2);vertical-align:middle}.ui-action-card__hint[data-v-e52e7748]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal)}.ui-action-card__chevron[data-v-e52e7748]{color:var(--color-text-faint);flex:none}.ui-tip__bubble[data-v-da3fc01a]{position:fixed;z-index:var(--z-tooltip);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--tip-lines);max-width:280px;padding:4px 8px;border-radius:var(--radius-sm);background:var(--color-text);color:var(--color-bg);font-family:var(--font-ui);font-size:var(--text-xs);line-height:1.35;overflow:hidden;overflow-wrap:anywhere;pointer-events:none;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.ui-tip__bubble.positioned[data-v-da3fc01a]{opacity:1}.ui-icon-button[data-v-279bf6ac]{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0;border:.5px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.ui-icon-button[data-v-279bf6ac]:hover:not(:disabled){background:var(--color-hover);color:var(--color-text)}.ui-icon-button[data-v-279bf6ac]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ui-icon-button[data-v-279bf6ac]:disabled{opacity:.5;cursor:not-allowed}.ui-icon-button--sm[data-v-279bf6ac]{width:var(--icon-button-sm);height:var(--icon-button-sm);border-radius:var(--radius-sm)}.ui-icon-button--md[data-v-279bf6ac]{width:32px;height:32px}.ui-icon-button--lg[data-v-279bf6ac]{width:44px;height:44px}.ui-icon-button[data-v-279bf6ac] svg{width:var(--p-ic-md);height:var(--p-ic-md)}.ui-icon-button--sm[data-v-279bf6ac] svg{width:var(--p-ic-md);height:var(--p-ic-md)}.ui-icon-button--lg[data-v-279bf6ac] svg{width:var(--p-ic-lg);height:var(--p-ic-lg)}.ui-action-toast-host[data-v-5464eaec]{position:fixed;top:calc(48px + var(--space-2));left:50%;translate:-50% 0;z-index:var(--z-toast);max-width:calc(100vw - 32px)}.ui-action-toast[data-v-5464eaec]{display:flex;align-items:center;gap:var(--space-2);padding:4px 6px 4px 14px;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);font-family:var(--font-ui);font-size:var(--text-base);line-height:1.45;color:var(--color-text);white-space:nowrap}.ui-action-toast__body[data-v-5464eaec]{min-width:0}.ui-action-toast__body button[data-v-5464eaec-s]{border:0;padding:0;margin-inline:var(--space-1);background:none;color:var(--color-accent);cursor:pointer;font:inherit}.ui-action-toast__body button[data-v-5464eaec-s]:hover{color:var(--color-accent-hover);text-decoration:underline}.ui-action-toast__body button[data-v-5464eaec-s]:focus-visible{outline:none;box-shadow:var(--p-focus-ring);border-radius:var(--radius-xs)}.ui-action-toast__close[data-v-5464eaec]{flex:none}.ui-badge[data-v-7b8349ab]{display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-full);font-family:var(--font-ui);font-weight:var(--weight-medium);line-height:1;white-space:nowrap;border:.5px solid transparent}.ui-badge--md[data-v-7b8349ab]{height:22px;padding:0 9px;font-size:var(--text-xs)}.ui-badge--sm[data-v-7b8349ab]{height:18px;padding:0 7px;font-size:11px}.ui-badge__dot[data-v-7b8349ab]{width:6px;height:6px;border-radius:var(--radius-full);background:currentColor;flex:none}.ui-badge--neutral[data-v-7b8349ab]{background:var(--color-surface-sunken);color:var(--color-text-muted);border-color:var(--color-line)}.ui-badge--info[data-v-7b8349ab]{background:var(--color-accent-soft);color:var(--color-accent-hover);border-color:var(--color-accent-bd)}.ui-badge--success[data-v-7b8349ab]{background:var(--color-success-soft);color:var(--color-success);border-color:var(--color-success-bd)}.ui-badge--warning[data-v-7b8349ab]{background:var(--color-warning-soft);color:var(--color-warning);border-color:var(--color-warning-bd)}.ui-badge--danger[data-v-7b8349ab]{background:var(--color-danger-soft);color:var(--color-danger);border-color:var(--color-danger-bd)}.ui-badge--solid[data-v-7b8349ab]{background:var(--color-text);color:var(--color-bg)}.ui-banner[data-v-8fb5232f]{display:flex;align-items:center;gap:10px;padding:10px 14px;border:.5px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-normal)}.ui-banner__icon[data-v-8fb5232f]{display:inline-flex;flex:none}.ui-banner__icon svg[data-v-8fb5232f]{width:18px;height:18px}.ui-banner--info[data-v-8fb5232f]{background:var(--color-accent-soft);border-color:var(--color-accent-bd)}.ui-banner--warning[data-v-8fb5232f]{background:var(--color-warning-soft);border-color:var(--color-warning-bd)}.ui-banner--danger[data-v-8fb5232f]{background:var(--color-danger-soft);border-color:var(--color-danger-bd)}.ui-banner--info .ui-banner__icon[data-v-8fb5232f]{color:var(--color-accent)}.ui-banner--warning .ui-banner__icon[data-v-8fb5232f]{color:var(--color-warning)}.ui-banner--danger .ui-banner__icon[data-v-8fb5232f]{color:var(--color-danger)}.ui-spinner[data-v-bf7852f3]{display:inline-flex;flex:none;color:var(--color-accent)}.ui-spinner--xs[data-v-bf7852f3]{width:var(--p-ic-md);height:var(--p-ic-md)}.ui-spinner--xs .ui-spinner__track[data-v-bf7852f3],.ui-spinner--xs .ui-spinner__arc[data-v-bf7852f3]{r:10.875px;stroke-width:calc(var(--p-ring-stroke) * 1.5)}.ui-spinner--xs .ui-spinner__arc[data-v-bf7852f3]{stroke-dasharray:67.7 67.7;stroke-dashoffset:45.9}.ui-spinner--sm[data-v-bf7852f3]{width:14px;height:14px}.ui-spinner--md[data-v-bf7852f3]{width:18px;height:18px}.ui-spinner--lg[data-v-bf7852f3]{width:28px;height:28px}.ui-spinner__svg[data-v-bf7852f3]{width:100%;height:100%}.ui-spinner__track[data-v-bf7852f3]{fill:none;stroke:var(--color-line);stroke-width:2.2}.ui-spinner__arc[data-v-bf7852f3]{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:56 56;stroke-dashoffset:38}.ui-button[data-v-e04dd6a0]{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:.5px solid transparent;border-radius:var(--radius-md);font-family:var(--font-ui);font-weight:var(--weight-medium);line-height:1;cursor:pointer;white-space:nowrap;transition:background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.ui-button[data-v-e04dd6a0]:focus-visible{outline:none;box-shadow:var(--p-focus-ring-strong)}.ui-button[data-v-e04dd6a0]:not(:disabled):active{transform:scale(.98)}.ui-button[data-v-e04dd6a0]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.ui-button--xs[data-v-e04dd6a0]{height:24px;padding:0 var(--space-2);font-size:var(--text-xs);border-radius:var(--radius-sm)}.ui-button--sm[data-v-e04dd6a0]{height:30px;padding:0 var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-sm)}.ui-button--md[data-v-e04dd6a0]{height:36px;padding:0 var(--space-4);font-size:var(--text-base)}.ui-button--lg[data-v-e04dd6a0]{height:42px;padding:0 var(--space-5);font-size:15px;border-radius:var(--radius-lg)}.ui-button__content[data-v-e04dd6a0]{display:inline-flex;align-items:center;gap:var(--space-2)}.ui-button__content[data-v-e04dd6a0] svg{flex:none}.ui-button__content[data-v-e04dd6a0] svg:not([width]){width:1em;height:1em}.ui-button--primary[data-v-e04dd6a0]{background:var(--color-accent);color:var(--color-text-on-accent);border-color:var(--color-accent);box-shadow:var(--shadow-xs)}.ui-button--primary[data-v-e04dd6a0]:not(:disabled):hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.ui-button--secondary[data-v-e04dd6a0]{background:var(--color-surface-raised);color:var(--color-text);border-color:var(--color-line-strong);box-shadow:var(--shadow-xs)}.ui-button--secondary[data-v-e04dd6a0]:not(:disabled):hover{border-color:var(--color-line-strong);background:var(--color-hover)}.ui-button--inverted[data-v-e04dd6a0]{background:var(--color-send-bg);color:var(--color-send-icon);border-color:transparent;box-shadow:var(--shadow-xs)}.ui-button--inverted[data-v-e04dd6a0]:not(:disabled):hover{background:var(--color-send-bg-hover)}.ui-button--inverted[data-v-e04dd6a0]:disabled{background:var(--color-send-bg-disabled);color:var(--color-send-icon-disabled);opacity:1}.ui-button--ghost[data-v-e04dd6a0]{background:transparent;color:var(--color-text-muted);border-color:transparent}.ui-button--ghost[data-v-e04dd6a0]:not(:disabled):hover{background:var(--color-hover);color:var(--color-text-strong)}.ui-button--danger[data-v-e04dd6a0]{background:var(--color-danger);color:var(--color-text-on-accent);border-color:var(--color-danger);box-shadow:var(--shadow-xs)}.ui-button--danger[data-v-e04dd6a0]:not(:disabled):hover{filter:brightness(.96)}.ui-button--danger-soft[data-v-e04dd6a0]{background:var(--color-danger-soft);color:var(--color-danger);border-color:var(--color-danger-bd)}.ui-button--danger-soft[data-v-e04dd6a0]:not(:disabled):hover{background:var(--color-danger);color:var(--color-text-on-accent);border-color:var(--color-danger)}.ui-button--orange-soft[data-v-e04dd6a0]{background:var(--color-orange-soft);color:var(--color-orange);border-color:transparent}.ui-button--text[data-v-e04dd6a0]{height:auto;padding:0;background:transparent;border-color:transparent;border-radius:var(--radius-xs);color:var(--color-text-muted);font-size:inherit;font-weight:inherit;text-decoration:underline;text-underline-offset:2px}.ui-button--text[data-v-e04dd6a0]:not(:disabled):hover{color:var(--color-text)}.ui-button--text[data-v-e04dd6a0]:not(:disabled):active{transform:none}.ui-button.is-loading .ui-button__content[data-v-e04dd6a0]{opacity:.7}.ui-button .ui-button__spinner[data-v-e04dd6a0]{flex:none;color:inherit}.ui-button__spinner[data-v-e04dd6a0] .ui-spinner__track{opacity:.35}.ui-card[data-v-d0de153b]{background:var(--color-surface);border:.5px solid var(--color-line);border-radius:var(--radius-md);overflow:hidden}.ui-card.is-elevated[data-v-d0de153b]{box-shadow:var(--shadow-md);border-color:transparent}.ui-card__head[data-v-d0de153b]{display:flex;align-items:center;gap:var(--space-2);padding:10px 14px;border-bottom:.5px solid var(--color-line);background:var(--color-surface);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text)}.ui-card__body[data-v-d0de153b]{padding:14px;color:var(--color-text-muted)}.ui-card__foot[data-v-d0de153b]{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:10px 14px;border-top:.5px solid var(--color-line);background:var(--color-surface)}.ctx-ring[data-v-5a6777b1]{width:16px;height:16px;flex:none;transform:rotate(-90deg)}.ctx-ring-track[data-v-5a6777b1]{stroke:var(--line)}.ctx-ring-fill[data-v-5a6777b1]{stroke:var(--color-accent);transition:stroke-dashoffset .3s ease,stroke .3s ease}.ui-dialog__overlay[data-v-87c1966f]{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:#0d111747;animation:kimi-dialog-overlay-in-87c1966f var(--duration-base) var(--ease-out)}@keyframes kimi-dialog-overlay-in-87c1966f{0%{opacity:0}to{opacity:1}}.ui-dialog[data-v-87c1966f]{max-height:calc(100vh - var(--space-8) * 2);display:flex;flex-direction:column;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);outline:none;overflow:hidden;animation:kimi-card-in var(--duration-slow) var(--ease-out)}.ui-dialog--sm[data-v-87c1966f]{width:min(360px,100%)}.ui-dialog--md[data-v-87c1966f]{width:min(440px,100%)}.ui-dialog--lg[data-v-87c1966f]{width:min(640px,100%)}.ui-dialog--xl[data-v-87c1966f]{width:min(var(--p-content-max),100%)}.ui-dialog--fixed-height[data-v-87c1966f]{height:min(680px,calc(100vh - var(--space-8) * 2))}.ui-dialog--grouped[data-v-87c1966f]{background:var(--color-bg)}.ui-dialog--flush .ui-dialog__body[data-v-87c1966f]{padding:0}.ui-dialog__head[data-v-87c1966f]{display:flex;align-items:flex-start;gap:var(--space-3);padding:20px 22px 14px}.ui-dialog__titles[data-v-87c1966f]{flex:1;min-width:0}.ui-dialog__title[data-v-87c1966f]{font-size:var(--text-lg);font-weight:500;color:var(--color-text);line-height:var(--leading-tight)}.ui-dialog__desc[data-v-87c1966f]{margin-top:4px;font-size:var(--text-base);color:var(--color-text-muted)}.ui-dialog__close[data-v-87c1966f]{flex:none;margin-top:-2px}.ui-dialog__body[data-v-87c1966f]{flex:1;min-height:0;padding:4px 22px 18px;color:var(--color-text);overflow:auto}.ui-dialog__foot[data-v-87c1966f]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 22px 20px}@media(max-width:640px){.ui-dialog__overlay[data-v-87c1966f]{align-items:flex-end;padding:0}.ui-dialog[data-v-87c1966f]{width:100%;max-width:100%;max-height:calc(var(--app-height, 100dvh) * .86);border-right:none;border-bottom:none;border-left:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding-bottom:var(--safe-bottom, 0px);animation:ui-dialog-sheet-up-87c1966f var(--duration-slow) var(--ease-out)}.ui-dialog--fixed-height[data-v-87c1966f]{height:calc(var(--app-height, 100dvh) * .86)}}@keyframes ui-dialog-sheet-up-87c1966f{0%{transform:translateY(101%)}to{transform:translateY(0)}}.ui-empty[data-v-66c019cd]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;color:var(--color-text-muted)}.ui-empty__icon[data-v-66c019cd]{color:var(--color-text-faint)}.ui-empty__icon[data-v-66c019cd] svg{width:48px;height:48px}.ui-empty__title[data-v-66c019cd]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text-muted)}.ui-empty__hint[data-v-66c019cd]{font-size:var(--text-sm);color:var(--color-text-muted)}.ui-field[data-v-a6fe84a4]{display:flex;flex-direction:column;gap:6px}.ui-field__label[data-v-a6fe84a4]{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted)}.ui-field__hint[data-v-a6fe84a4]{font-size:var(--text-xs);color:var(--color-text-faint)}.ui-field__error[data-v-a6fe84a4]{font-size:var(--text-xs);color:var(--color-danger)}.ui-input[data-v-3093c190]{width:100%;border:.5px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface-overlay);box-shadow:var(--shadow-xs);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal);padding:0 var(--space-3);transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.ui-input--md[data-v-3093c190]{height:38px}.ui-input--sm[data-v-3093c190]{height:32px;font-size:var(--text-sm);border-radius:var(--radius-sm)}.ui-input[data-v-3093c190]::placeholder{color:var(--color-text-faint)}.ui-input[data-v-3093c190]:hover:not(:disabled):not(:focus){border-color:var(--color-line-strong)}.ui-input[data-v-3093c190]:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--p-focus-ring)}.ui-input[data-v-3093c190]:disabled{opacity:.5;cursor:not-allowed}.ui-input[readonly][data-v-3093c190]{background:var(--color-surface-sunken)}.ui-input.has-error[data-v-3093c190]{border-color:var(--color-danger)}.ui-input.has-error[data-v-3093c190]:focus{box-shadow:0 0 0 3px var(--color-danger-soft)}.ui-kbd[data-v-f33c235d]{display:inline-flex;align-items:center;gap:3px;flex:none}.ui-kbd__key[data-v-f33c235d]{display:inline-flex;align-items:center;justify-content:center;min-width:var(--kbd-min-width);height:var(--kbd-height);padding:0 var(--kbd-padding-x);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-xs);background:transparent;color:inherit;font-family:var(--font-kbd);font-size:var(--kbd-font-size);line-height:var(--leading-solid)}.ui-link[data-v-2c379b58]{color:var(--color-accent);text-decoration:none;cursor:pointer;font:inherit;transition:color var(--duration-base) var(--ease-out)}.ui-link[data-v-2c379b58]:hover{color:var(--color-accent-hover);text-decoration:underline}.ui-link[data-v-2c379b58]:focus-visible{outline:none;box-shadow:var(--p-focus-ring);border-radius:var(--radius-xs)}.ui-link--muted[data-v-2c379b58]{color:var(--color-text-muted)}.ui-link--muted[data-v-2c379b58]:hover{color:var(--color-text)}.ui-menu[data-v-a8172c5d]{min-width:180px;padding:var(--menu-pad);background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);display:flex;flex-direction:column}.ui-menu-item[data-v-6cbd2f47]{display:flex;align-items:center;gap:7px;width:100%;padding:var(--menu-item-padding-block) var(--menu-item-padding-inline);border:none;border-radius:var(--radius-menu-item);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-option-label);line-height:var(--leading-tight);text-align:left;cursor:pointer;transition:background var(--duration-base),color var(--duration-base)}.ui-menu-item[data-v-6cbd2f47]:hover:not(:disabled):not(.is-active):not(.is-danger){background:var(--color-hover);color:var(--color-text-strong)}.ui-menu-item[data-v-6cbd2f47]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ui-menu-item[data-v-6cbd2f47]:disabled{opacity:.5;cursor:not-allowed}.ui-menu-item.is-active[data-v-6cbd2f47]{background:var(--color-hover);color:var(--color-text)}.ui-menu-item.is-danger[data-v-6cbd2f47]{color:var(--color-danger)}.ui-menu-item.is-danger[data-v-6cbd2f47]:hover:not(:disabled){background:var(--color-danger-soft)}.ui-menu-item[data-v-6cbd2f47] svg{display:block;width:16px;height:16px;flex:none;color:var(--muted);transition:color var(--duration-base)}.ui-menu-item[data-v-6cbd2f47]:hover:not(:disabled):not(.is-active):not(.is-danger) svg{color:var(--color-text-strong)}.ui-menu-item.is-active[data-v-6cbd2f47] svg{color:var(--color-text)}.ui-menu-item.is-danger[data-v-6cbd2f47] svg{color:var(--color-danger)}.ui-menu-item--lg[data-v-6cbd2f47]{min-height:44px;padding:12px 14px;font-size:var(--text-sm)}.ui-menu-sep[data-v-6cbd2f47]{height:1px;margin:4px 0;background:var(--color-line)}.ui-tip[data-v-4f57efde]{display:contents}.ui-panel-header[data-v-bb2b5e64]{flex:none;display:flex;align-items:center;gap:var(--space-2);height:var(--panel-head-h, 48px);padding:0 var(--panel-head-inset, 11px) 0 var(--space-3);box-sizing:border-box;min-width:0;border-bottom:.5px solid var(--color-line);background:var(--bg)}.ui-panel-header__title[data-v-bb2b5e64]{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--weight-semibold) var(--ui-b2) var(--font-ui);color:var(--color-text)}.ui-panel-header__sub[data-v-bb2b5e64]{flex:1 1 0%;min-width:20%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--ui-c1) var(--font-ui);color:var(--color-text-muted)}.ui-panel-header__close[data-v-bb2b5e64]{flex:none;margin-left:auto}.ui-panel-header.wrap[data-v-bb2b5e64]{flex-wrap:wrap;height:auto;min-height:var(--panel-head-h, 48px);padding-top:3px;padding-bottom:3px;gap:4px 6px}.ui-panel-header.wrap .ui-panel-header__close[data-v-bb2b5e64]{margin-left:0}.ui-pill[data-v-9fe3e0c7]{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:.5px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:1;white-space:nowrap;cursor:default;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}button.ui-pill[data-v-9fe3e0c7]{cursor:pointer}button.ui-pill[data-v-9fe3e0c7]:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-strong)}button.ui-pill[data-v-9fe3e0c7]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}button.ui-pill[data-v-9fe3e0c7]:disabled{opacity:.5;cursor:not-allowed}.ui-pill.is-active[data-v-9fe3e0c7]{background:var(--color-accent-soft);color:var(--color-accent)}.ui-pill[data-v-9fe3e0c7] svg{width:var(--p-ic-sm);height:var(--p-ic-sm);flex:none;color:var(--color-text-faint)}.ui-scroll-area[data-v-797269ad]{position:relative;min-width:0;min-height:0;overflow:hidden}.ui-scroll-area__viewport[data-v-797269ad]{width:100%;height:100%;overscroll-behavior:contain;scrollbar-width:none}.ui-scroll-area__viewport[data-v-797269ad]::-webkit-scrollbar{display:none}.ui-scroll-area__viewport[data-v-797269ad]:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.ui-scroll-area__bar[data-v-797269ad]{position:absolute;z-index:3;opacity:0;pointer-events:none;touch-action:none;transition:opacity var(--duration-base) var(--ease-out)}.ui-scroll-area__bar.is-visible[data-v-797269ad]{opacity:1;pointer-events:auto}.ui-scroll-area__bar--vertical[data-v-797269ad]{inset:2px 2px 2px auto;width:10px}.ui-scroll-area__bar--horizontal[data-v-797269ad]{inset:auto 2px 2px;height:10px}.ui-scroll-area__thumb[data-v-797269ad]{position:absolute;display:block;border-radius:999px;background:color-mix(in srgb,var(--color-text-muted) 62%,transparent);transition:background var(--duration-fast) var(--ease-out),width var(--duration-fast) var(--ease-out),height var(--duration-fast) var(--ease-out)}.ui-scroll-area__bar--vertical .ui-scroll-area__thumb[data-v-797269ad]{right:1px;width:4px}.ui-scroll-area__bar--horizontal .ui-scroll-area__thumb[data-v-797269ad]{bottom:1px;height:4px}.ui-scroll-area__bar:hover .ui-scroll-area__thumb[data-v-797269ad],.ui-scroll-area__thumb[data-v-797269ad]:active{background:color-mix(in srgb,var(--color-text-muted) 82%,transparent)}.ui-scroll-area__bar--vertical:hover .ui-scroll-area__thumb[data-v-797269ad],.ui-scroll-area__bar--vertical .ui-scroll-area__thumb[data-v-797269ad]:active{width:6px}.ui-scroll-area__bar--horizontal:hover .ui-scroll-area__thumb[data-v-797269ad],.ui-scroll-area__bar--horizontal .ui-scroll-area__thumb[data-v-797269ad]:active{height:6px}.ui-seg[data-v-c5824392]{position:relative;display:inline-flex;gap:2px;padding:2px;background:var(--color-surface-sunken);border:.5px solid var(--color-line);border-radius:var(--radius-md)}.ui-seg__indicator[data-v-c5824392]{position:absolute;top:0;left:0;z-index:0;border-radius:var(--radius-sm);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transition:transform var(--duration-base) var(--ease-out),width var(--duration-base) var(--ease-out),height var(--duration-base) var(--ease-out),opacity var(--duration-fast) var(--ease-out)}.ui-seg__indicator.is-ready[data-v-c5824392]{opacity:1}.ui-seg__item[data-v-c5824392]{position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--space-1);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-weight:var(--weight-medium);cursor:pointer;line-height:1;white-space:nowrap;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.ui-seg__swatch[data-v-c5824392]{width:7px;height:7px;border:.5px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:50%;flex:none}.ui-seg__icon[data-v-c5824392]{flex:none}.ui-seg--md .ui-seg__item[data-v-c5824392]{padding:5px var(--space-3);font-size:var(--text-sm)}.ui-seg--sm .ui-seg__item[data-v-c5824392]{height:24px;padding:0 var(--space-2);font-size:var(--text-sm)}.ui-seg--xs .ui-seg__item[data-v-c5824392]{height:20px;padding:0 var(--space-2);font-size:var(--text-xs)}.ui-seg__item[data-v-c5824392]:hover:not(.is-on){color:var(--color-text)}.ui-seg__item.is-on[data-v-c5824392]{color:var(--color-text)}.ui-seg__item[data-v-c5824392]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ui-select[data-v-e7628e92]{position:relative;width:100%;font-family:var(--font-ui)}.ui-select__trigger[data-v-e7628e92]{display:flex;align-items:center;gap:var(--space-2);width:100%;height:100%;padding:0 var(--space-3);border:.5px solid var(--color-line-strong);border-radius:var(--radius-md);background:transparent;box-shadow:none;color:var(--color-text);font:inherit;font-size:var(--text-base);line-height:var(--leading-normal);text-align:left;cursor:pointer;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out)}.ui-select--md[data-v-e7628e92]{height:38px}.ui-select--sm[data-v-e7628e92]{height:32px}.ui-select--sm .ui-select__trigger[data-v-e7628e92]{font-size:var(--text-sm)}.ui-select__trigger[data-v-e7628e92]:hover:not(:disabled){border-color:var(--color-line-strong)}.ui-select__trigger[data-v-e7628e92]:focus-visible,.ui-select.is-open .ui-select__trigger[data-v-e7628e92]{outline:none;border-color:var(--color-accent);box-shadow:var(--p-focus-ring)}.ui-select.has-error .ui-select__trigger[data-v-e7628e92]{border-color:var(--color-danger)}.ui-select.has-error .ui-select__trigger[data-v-e7628e92]:focus-visible{box-shadow:0 0 0 3px var(--color-danger-soft)}.ui-select__value[data-v-e7628e92]{min-width:0;flex:1;display:flex;align-items:center;gap:var(--space-2);overflow:hidden;white-space:nowrap}.ui-select__value-text[data-v-e7628e92]{min-width:0;overflow:hidden;text-overflow:ellipsis}.ui-select__value.is-placeholder[data-v-e7628e92]{color:var(--color-text-faint)}.ui-select__icon[data-v-e7628e92]{flex:none;width:14px;height:14px;border-radius:3px}.ui-select__icon--option[data-v-e7628e92]{width:16px;height:16px;border-radius:4px}.ui-select__chevron[data-v-e7628e92]{flex:none;color:var(--color-text-muted);transition:transform var(--duration-base) var(--ease-out)}.ui-select.is-open .ui-select__chevron[data-v-e7628e92]{transform:rotate(180deg)}.ui-select.is-disabled[data-v-e7628e92]{opacity:.5}.ui-select.is-disabled .ui-select__trigger[data-v-e7628e92]{cursor:not-allowed}.ui-select__menu[data-v-e7628e92]{position:fixed;z-index:var(--z-modal-dropdown);max-height:260px;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-1);border:.5px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);box-shadow:var(--shadow-lg)}.ui-select__group[data-v-e7628e92]{padding:var(--space-2) var(--space-2) var(--space-1);color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-medium)}.ui-select__option[data-v-e7628e92]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:32px;padding:var(--space-1) var(--space-2);border:none;border-radius:var(--radius-select-option);background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer}.ui-select__option.is-active[data-v-e7628e92]{background:var(--color-hover);color:var(--color-text-strong)}.ui-select__option[data-v-e7628e92]:disabled{opacity:.45;cursor:not-allowed}.ui-select__check[data-v-e7628e92]{flex:none;color:transparent}.ui-select__option.is-selected .ui-select__check[data-v-e7628e92]{color:var(--color-accent)}.kw-dot[data-v-ddf97fc4]{width:7px;height:7px;border-radius:var(--radius-full);background:var(--color-text-faint);flex:none}.kw-dot--ok[data-v-ddf97fc4]{background:var(--color-success)}.kw-dot--error[data-v-ddf97fc4]{background:var(--color-danger)}.kw-dot--suspended[data-v-ddf97fc4]{background:var(--color-warning)}.kw-dot--running[data-v-ddf97fc4]{background:var(--color-accent);position:relative}.kw-dot--running[data-v-ddf97fc4]:after{content:"";position:absolute;inset:0;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-accent) 40%,transparent);animation:kw-dot-pulse-ddf97fc4 1.4s var(--ease-out) infinite}@keyframes kw-dot-pulse-ddf97fc4{0%{transform:scale(1);opacity:1}to{transform:scale(2.7);opacity:0}}.ui-switch[data-v-eb53165a]{position:relative;width:36px;height:20px;flex:none;padding:0;border:.5px solid var(--color-line-strong);border-radius:var(--radius-full);background:var(--color-line-strong);cursor:pointer;transition:background var(--duration-base) var(--ease-out)}.ui-switch.is-on[data-v-eb53165a]{background:var(--color-accent)}.ui-switch[data-v-eb53165a]:disabled{opacity:.5;cursor:not-allowed}.ui-switch[data-v-eb53165a]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ui-switch__thumb[data-v-eb53165a]{position:absolute;top:1.5px;left:1.5px;width:16px;height:16px;border-radius:var(--radius-full);background:var(--color-text-on-accent);box-shadow:var(--shadow-xs);transform-origin:left center;transition:transform var(--duration-base) var(--ease-out)}.ui-switch:not(:disabled):hover .ui-switch__thumb[data-v-eb53165a]{transform:scaleX(1.125)}.ui-switch.is-on .ui-switch__thumb[data-v-eb53165a]{transform:translate(16px);transform-origin:right center}.ui-switch.is-on:not(:disabled):hover .ui-switch__thumb[data-v-eb53165a]{transform:translate(16px) scaleX(1.125)}.ui-textarea[data-v-1da4a9a7]{width:100%;min-height:84px;resize:vertical;border:.5px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface-overlay);box-shadow:var(--shadow-xs);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal);padding:10px 12px;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.ui-textarea[data-v-1da4a9a7]::placeholder{color:var(--color-text-faint)}.ui-textarea.no-resize[data-v-1da4a9a7]{resize:none}.ui-textarea[data-v-1da4a9a7]:hover:not(:disabled):not(:focus){border-color:var(--color-line-strong)}.ui-textarea[data-v-1da4a9a7]:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--p-focus-ring)}.ui-textarea[data-v-1da4a9a7]:disabled{opacity:.5;cursor:not-allowed}.ui-textarea[readonly][data-v-1da4a9a7]{background:var(--color-surface-sunken)}.ui-textarea.has-error[data-v-1da4a9a7]{border-color:var(--color-danger)}.ui-textarea.has-error[data-v-1da4a9a7]:focus{box-shadow:0 0 0 3px var(--color-danger-soft)}.ui-toast[data-v-09e5bc42]{display:flex;align-items:flex-start;gap:11px;width:360px;max-width:100%;padding:13px 14px;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);font-family:var(--font-ui);line-height:1.45}.ui-toast__icon[data-v-09e5bc42]{flex:none;width:20px;height:20px;margin-top:1px;border-radius:var(--radius-full);display:grid;place-items:center;background:var(--color-accent-soft);color:var(--color-accent)}.ui-toast__icon svg[data-v-09e5bc42]{width:12px;height:12px}.ui-toast--success .ui-toast__icon[data-v-09e5bc42]{background:var(--color-success-soft);color:var(--color-success)}.ui-toast--warning .ui-toast__icon[data-v-09e5bc42]{background:var(--color-warning-soft);color:var(--color-warning)}.ui-toast--danger .ui-toast__icon[data-v-09e5bc42]{background:var(--color-danger-soft);color:var(--color-danger)}.ui-toast--danger[data-v-09e5bc42]{border-color:color-mix(in srgb,var(--color-danger) 35%,transparent)}.ui-toast__body[data-v-09e5bc42]{flex:1;min-width:0}.ui-toast__title[data-v-09e5bc42]{font-size:var(--text-base);font-weight:500;color:var(--color-text);overflow-wrap:anywhere}.ui-toast__msg[data-v-09e5bc42]{margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.ui-toast--danger .ui-toast__msg[data-v-09e5bc42]{color:var(--color-danger)}.ui-toast__close[data-v-09e5bc42]{flex:none;margin:-3px -4px 0 0}.error-boundary[data-v-3fe116a9]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);height:100%;padding:var(--space-6)}.error-boundary.fullscreen[data-v-3fe116a9]{position:fixed;inset:0;z-index:var(--z-modal);background:var(--color-bg)}.error-boundary-close[data-v-3fe116a9]{position:absolute;top:var(--space-4);right:var(--space-4)}.error-boundary-icon[data-v-3fe116a9]{color:var(--color-warning)}.error-boundary-title[data-v-3fe116a9]{margin:0;font-size:var(--text-sm);color:var(--color-text-muted)}:where(.markstream-vue) button{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:transparent;border:0;font:inherit;color:inherit}.markstream-vue li:has(.checkbox-node){list-style-type:none;margin-left:calc(-1 * var(--ms-flow-list-indent))}.markstream-vue .text-node{white-space:pre-wrap;overflow-wrap:break-word}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.markstream-vue .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.markstream-vue .pointer-events-none{pointer-events:none}.markstream-vue .\!visible{visibility:visible!important}.markstream-vue .visible{visibility:visible}.markstream-vue .collapse{visibility:collapse}.markstream-vue .static{position:static}.markstream-vue .fixed{position:fixed}.markstream-vue .absolute{position:absolute}.markstream-vue .relative{position:relative}.markstream-vue .inset-0{inset:0}.markstream-vue .right-2{right:8px}.markstream-vue .right-6{right:24px}.markstream-vue .top-2{top:8px}.markstream-vue .top-6{top:24px}.markstream-vue .z-10{z-index:10}.markstream-vue .z-50{z-index:50}.markstream-vue .m-0{margin:0}.markstream-vue .mx-0\.5{margin-left:2px;margin-right:2px}.markstream-vue .mr-2{margin-right:8px}.markstream-vue .mt-2{margin-top:8px}.markstream-vue .block{display:block}.markstream-vue .inline{display:inline}.markstream-vue .flex{display:flex}.markstream-vue .inline-flex{display:inline-flex}.markstream-vue .table{display:table}.markstream-vue .flow-root{display:flow-root}.markstream-vue .grid{display:grid}.markstream-vue .contents{display:contents}.markstream-vue .list-item{display:list-item}.markstream-vue .hidden{display:none}.markstream-vue .h-4{height:16px}.markstream-vue .h-full{height:100%}.markstream-vue .max-h-full{max-height:100%}.markstream-vue .min-h-full{min-height:100%}.markstream-vue .w-2\/3{width:66.666667%}.markstream-vue .w-4{width:16px}.markstream-vue .w-4\/5{width:80%}.markstream-vue .w-full{width:100%}.markstream-vue .min-w-\[160px\]{min-width:160px}.markstream-vue .max-w-full{max-width:100%}.markstream-vue .flex-1{flex:1 1 0%}.markstream-vue .flex-shrink{flex-shrink:1}.markstream-vue .flex-shrink-0{flex-shrink:0}.markstream-vue .shrink{flex-shrink:1}.markstream-vue .shrink-0{flex-shrink:0}.markstream-vue .grow{flex-grow:1}.markstream-vue .border-collapse{border-collapse:collapse}.markstream-vue .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.markstream-vue .animate-spin{animation:spin 1s linear infinite}.markstream-vue .cursor-grab{cursor:grab}.markstream-vue .cursor-grabbing{cursor:grabbing}.markstream-vue .cursor-not-allowed{cursor:not-allowed}.markstream-vue .cursor-pointer{cursor:pointer}.markstream-vue .resize{resize:both}.markstream-vue .list-decimal{list-style-type:decimal}.markstream-vue .list-disc{list-style-type:disc}.markstream-vue .flex-wrap{flex-wrap:wrap}.markstream-vue .items-center{align-items:center}.markstream-vue .items-baseline{align-items:baseline}.markstream-vue .justify-center{justify-content:center}.markstream-vue .justify-between{justify-content:space-between}.markstream-vue .gap-0\.5{gap:2px}.markstream-vue .gap-1\.5{gap:6px}.markstream-vue .gap-2{gap:8px}.markstream-vue .gap-\[var\(--ms-gap-header-actions\)\]{gap:var(--ms-gap-header-actions)}.markstream-vue .gap-x-1{-moz-column-gap:4px;column-gap:4px}.markstream-vue .gap-x-2{-moz-column-gap:8px;column-gap:8px}.markstream-vue .overflow-hidden{overflow:hidden}.markstream-vue .overflow-x-auto{overflow-x:auto}.markstream-vue .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.markstream-vue .whitespace-nowrap{white-space:nowrap}.markstream-vue .whitespace-pre-wrap{white-space:pre-wrap}.markstream-vue .rounded{border-radius:calc(var(--ms-radius) * .5)}.markstream-vue .rounded-lg{border-radius:var(--ms-radius)}.markstream-vue .rounded-md{border-radius:calc(var(--ms-radius) * .75)}.markstream-vue .border{border-width:1px}.markstream-vue .border-b{border-bottom-width:1px}.markstream-vue .border-t{border-top-width:1px}.markstream-vue .border-\[var\(--code-border\)\]{border-color:var(--code-border)}.markstream-vue .border-\[var\(--footnote-border\)\]{border-color:var(--footnote-border)}.markstream-vue .border-\[var\(--hr-border\)\]{border-color:var(--hr-border)}.markstream-vue .bg-\[hsl\(var\(--ms-popover\)\)\]{background-color:hsl(var(--ms-popover))}.markstream-vue .bg-\[var\(--code-header-bg\)\]{background-color:var(--code-header-bg)}.markstream-vue .p-0{padding:0}.markstream-vue .p-1{padding:4px}.markstream-vue .p-4{padding:16px}.markstream-vue .p-\[var\(--ms-action-btn-padding\)\]{padding:var(--ms-action-btn-padding)}.markstream-vue .px-1\.5{padding-left:6px;padding-right:6px}.markstream-vue .px-2{padding-left:8px;padding-right:8px}.markstream-vue .px-4{padding-left:16px;padding-right:16px}.markstream-vue .px-\[var\(--ms-inset-panel-x\)\]{padding-left:var(--ms-inset-panel-x);padding-right:var(--ms-inset-panel-x)}.markstream-vue .py-0\.5{padding-top:2px;padding-bottom:2px}.markstream-vue .py-1\.5{padding-top:6px;padding-bottom:6px}.markstream-vue .py-\[var\(--ms-inset-panel-y\)\]{padding-top:var(--ms-inset-panel-y);padding-bottom:var(--ms-inset-panel-y)}.markstream-vue .pb-3{padding-bottom:12px}.markstream-vue .pt-2{padding-top:8px}.markstream-vue .text-left{text-align:left}.markstream-vue .text-center{text-align:center}.markstream-vue .text-right{text-align:right}.markstream-vue .font-mono{font-family:var(--ms-font-mono)}.markstream-vue .text-\[length\:var\(--ms-text-label\)\]{font-size:var(--ms-text-label)}.markstream-vue .text-sm{font-size:14px;line-height:20px}.markstream-vue .text-xs{font-size:12px;line-height:16px}.markstream-vue .font-medium{font-weight:500}.markstream-vue .font-semibold{font-weight:600}.markstream-vue .uppercase{text-transform:uppercase}.markstream-vue .lowercase{text-transform:lowercase}.markstream-vue .italic{font-style:italic}.markstream-vue .leading-\[normal\]{line-height:normal}.markstream-vue .leading-none{line-height:1}.markstream-vue .leading-relaxed{line-height:1.625}.markstream-vue .text-\[\#0366d6\]{--tw-text-opacity: 1;color:rgb(3 102 214 / var(--tw-text-opacity, 1))}.markstream-vue .text-\[hsl\(var\(--ms-popover-foreground\)\)\]{color:hsl(var(--ms-popover-foreground))}.markstream-vue .text-\[var\(--code-action-fg\)\]{color:var(--code-action-fg)}.markstream-vue .text-\[var\(--code-fg\)\]{color:var(--code-fg)}.markstream-vue .underline{text-decoration-line:underline}.markstream-vue .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.markstream-vue .opacity-0{opacity:0}.markstream-vue .opacity-50{opacity:.5}.markstream-vue .shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.markstream-vue .shadow-\[var\(--ms-shadow-popover\)\]{--tw-shadow-color: var(--ms-shadow-popover);--tw-shadow: var(--tw-shadow-colored)}.markstream-vue .outline{outline-style:solid}.markstream-vue .blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.markstream-vue .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.markstream-vue .backdrop-blur{--tw-backdrop-blur: blur(8px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.markstream-vue .backdrop-filter{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.markstream-vue .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.markstream-vue .transition-\[height\]{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.markstream-vue .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.markstream-vue .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.markstream-vue .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.markstream-vue .ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.markstream-vue{--ms-background: 0 0% 100%;--ms-foreground: 0 0% 10%;--ms-muted: 0 0% 96.5%;--ms-muted-foreground: 0 0% 43%;--ms-secondary: 0 0% 93.5%;--ms-secondary-foreground: 0 0% 10%;--ms-accent: 0 0% 91%;--ms-accent-foreground: 0 0% 10%;--ms-primary: 0 0% 10%;--ms-primary-foreground: 0 0% 100%;--ms-destructive: 0 62% 52%;--ms-destructive-foreground: 0 0% 100%;--ms-border: 0 0% 87%;--ms-ring: 0 0% 10%;--ms-popover: 0 0% 100%;--ms-popover-foreground: 0 0% 10%;--ms-radius: 8px;--ms-info: 215 60% 50%;--ms-info-foreground: 0 0% 100%;--ms-success: 152 56% 39%;--ms-success-foreground: 0 0% 100%;--ms-warning: 38 64% 46%;--ms-warning-foreground: 0 0% 9%;--ms-diff-added: 152 50% 36%;--ms-diff-removed: 0 58% 48%;--ms-highlight: 50 60% 72%;--ms-highlight-foreground: 0 0% 0%;--ms-font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--ms-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}.dark .markstream-vue,.markstream-vue.dark{--ms-background: 0 0% 7%;--ms-foreground: 0 0% 93%;--ms-muted: 0 0% 12%;--ms-muted-foreground: 0 0% 60%;--ms-secondary: 0 0% 16%;--ms-secondary-foreground: 0 0% 93%;--ms-accent: 0 0% 24%;--ms-accent-foreground: 0 0% 93%;--ms-primary: 0 0% 93%;--ms-primary-foreground: 0 0% 10%;--ms-destructive: 0 60% 50%;--ms-destructive-foreground: 0 0% 93%;--ms-border: 0 0% 20%;--ms-ring: 0 0% 80%;--ms-popover: 0 0% 9%;--ms-popover-foreground: 0 0% 93%;--ms-info: 215 55% 62%;--ms-info-foreground: 0 0% 100%;--ms-success: 152 48% 55%;--ms-success-foreground: 0 0% 100%;--ms-warning: 32 65% 58%;--ms-warning-foreground: 0 0% 9%;--ms-diff-added: 152 42% 60%;--ms-diff-removed: 0 58% 58%;--ms-highlight: 48 65% 50%;--ms-highlight-foreground: 0 0% 0%;--ms-shadow-subtle: 0 1px 3px 0 hsl(0 0% 0% / .25);--ms-shadow-popover: 0 4px 6px -1px hsl(0 0% 0% / .2), 0 2px 4px -2px hsl(0 0% 0% / .15);--ms-shadow-modal: 0 10px 15px -3px hsl(0 0% 0% / .5), 0 4px 6px -4px hsl(0 0% 0% / .4);--ms-shadow-preview: 0 10px 40px hsl(0 0% 0% / .6);--tooltip-bg: hsl(0 0% 12%);--tooltip-fg: hsl(0 0% 72%);--code-bg: #111827;--code-header-bg: hsl(var(--ms-muted));--admonition-note-header-bg: color-mix(in srgb, hsl(var(--ms-info)) 12%, transparent);--admonition-tip-header-bg: color-mix(in srgb, hsl(var(--ms-success)) 12%, transparent);--admonition-warn-header-bg: color-mix(in srgb, hsl(var(--ms-warning)) 12%, transparent);--admonition-danger-header-bg: color-mix(in srgb, hsl(var(--ms-destructive)) 12%, transparent)}.markstream-vue{font-family:var(--ms-font-sans);font-size:var(--ms-text-body);line-height:var(--ms-leading-body);--inline-code-bg: hsl(var(--ms-secondary));--inline-code-fg: hsl(var(--ms-foreground) / .75);--inline-code-border: hsl(var(--ms-border) / .9);--code-bg: #fff;--code-fg: hsl(var(--ms-foreground));--code-border: hsl(var(--ms-border));--code-header-bg: hsl(var(--ms-secondary));--code-selection-bg: hsl(var(--ms-accent) / .3);--code-line-number: hsl(var(--ms-muted-foreground));--markstream-code-line-number-align: right;--code-action-fg: hsl(var(--ms-muted-foreground));--code-action-hover-bg: hsl(var(--ms-accent));--code-action-hover-fg: hsl(var(--ms-accent-foreground));--code-action-active-bg: hsl(var(--ms-primary));--code-action-active-fg: hsl(var(--ms-primary-foreground));--diff-added-fg: hsl(var(--ms-diff-added));--diff-removed-fg: hsl(var(--ms-diff-removed));--diff-added-bg: hsl(var(--ms-diff-added) / .1);--diff-added-inline-bg: hsl(var(--ms-diff-added) / .2);--diff-removed-bg: hsl(var(--ms-diff-removed) / .1);--diff-removed-inline-bg: hsl(var(--ms-diff-removed) / .2);--blockquote-border: hsl(var(--ms-muted-foreground) / .2);--admonition-bg: hsl(var(--ms-muted));--admonition-border: hsl(var(--ms-border));--admonition-fg: hsl(var(--ms-foreground));--admonition-muted: hsl(var(--ms-muted-foreground));--admonition-header-bg: hsl(var(--ms-muted) / .5);--admonition-note: hsl(var(--ms-info));--admonition-tip: hsl(var(--ms-success));--admonition-warning: hsl(var(--ms-warning));--admonition-danger: hsl(var(--ms-destructive));--admonition-note-header-bg: color-mix(in srgb, hsl(var(--ms-info)) 6%, transparent);--admonition-tip-header-bg: color-mix(in srgb, hsl(var(--ms-success)) 6%, transparent);--admonition-warn-header-bg: color-mix(in srgb, hsl(var(--ms-warning)) 6%, transparent);--admonition-danger-header-bg: color-mix(in srgb, hsl(var(--ms-destructive)) 6%, transparent);--table-border: hsl(var(--ms-border));--table-header-bg: hsl(var(--ms-muted));--link-color: hsl(var(--ms-info));--list-marker: hsl(var(--ms-muted-foreground) / .5);--list-counter-marker: hsl(var(--ms-muted-foreground));--hr-border: hsl(var(--ms-border));--highlight-bg: hsl(var(--ms-highlight));--footnote-border: hsl(var(--ms-border));--tooltip-bg: hsl(0 0% 18%);--tooltip-fg: hsl(0 0% 88%);--tooltip-border: hsl(var(--ms-border));--modal-overlay: hsl(0 0% 0% / .7);--modal-bg: hsl(var(--ms-popover));--modal-fg: hsl(var(--ms-popover-foreground));--diagram-bg: hsl(var(--ms-muted));--diagram-border: hsl(var(--ms-border));--diagram-header-bg: hsl(var(--ms-muted));--loading-spinner: hsl(var(--ms-muted-foreground));--loading-shimmer: hsl(var(--ms-muted) / .5);--image-placeholder-bg: hsl(var(--ms-muted));--focus-ring: hsl(var(--ms-ring));--ms-space-1: 4px;--ms-space-1_5: 6px;--ms-space-2: 8px;--ms-space-2_5: 10px;--ms-space-3: 12px;--ms-space-4: 16px;--ms-space-5: 20px;--ms-space-6: 24px;--ms-space-8: 32px;--ms-space-12: 48px;--ms-flow-paragraph-y: 1.5em;--ms-flow-list-y: 1em;--ms-flow-list-item-y: .25em;--ms-flow-list-indent: 1.625em ;--ms-flow-list-indent-mobile: calc(14 / 9 * 1em);--ms-flow-table-y: 2em;--ms-flow-table-cell: .5em .75em;--ms-flow-blockquote-y: 1.25em;--ms-flow-blockquote-indent: 1.25em;--ms-flow-admonition-y: 1.25em;--ms-flow-footnote-y: .5em;--ms-flow-hr-y: 2.5em;--ms-flow-diagram-y: 1.5em;--ms-flow-codeblock-y: 1.5em;--ms-flow-definition-term-mt: .75em;--ms-flow-definition-desc-ml: 1.25em;--ms-flow-definition-desc-mb: .5em;--ms-flow-heading-1-mt: 0;--ms-flow-heading-1-mb: 1em;--ms-flow-heading-2-mt: 2em;--ms-flow-heading-2-mb: .75em;--ms-flow-heading-3-mt: 1.5em;--ms-flow-heading-3-mb: .6em;--ms-flow-heading-4-mt: 1.25em;--ms-flow-heading-4-mb: .4em;--ms-flow-heading-5-mt: 1em;--ms-flow-heading-5-mb: .25em;--ms-flow-heading-6-mt: 1em;--ms-flow-heading-6-mb: .25em;--ms-text-body: 16px;--ms-leading-body: 1.75;--ms-text-h1: 36px;--ms-text-h2: 24px;--ms-text-h3: 20px;--ms-text-h4: 16px;--ms-text-h5: 16px;--ms-text-h6: 16px;--ms-leading-h1: 1.2;--ms-leading-h2: 1.35;--ms-leading-h3: 1.5;--ms-weight-h1: 700;--ms-weight-h2: 600;--ms-weight-h3: 600;--ms-weight-h4: 600;--ms-text-label: 12px;--ms-action-btn-padding: 6px;--ms-action-btn-icon: 14px;--ms-inset-panel-x: 10px;--ms-inset-panel-y: 6px;--ms-inset-panel-body-sm: 8px;--ms-inset-panel-body: 16px;--ms-inset-admonition-body-top: 8px;--ms-inset-admonition-body-bottom: 12px;--ms-gap-header: var(--ms-space-4);--ms-gap-header-main: var(--ms-space-2_5);--ms-gap-header-actions: var(--ms-space-2);--ms-shadow-subtle: 0 1px 3px 0 hsl(var(--ms-foreground) / .06);--ms-shadow-popover: 0 4px 6px -1px hsl(var(--ms-foreground) / .1), 0 2px 4px -2px hsl(var(--ms-foreground) / .1);--ms-shadow-modal: 0 10px 15px -3px hsl(var(--ms-foreground) / .1), 0 4px 6px -4px hsl(var(--ms-foreground) / .1);--ms-shadow-preview: 0 10px 40px hsl(var(--ms-foreground) / .25);--ms-duration-fast: .12s;--ms-duration-standard: .18s;--ms-duration-overlay: .2s;--ms-duration-emphasis: .22s;--ms-duration-slow: .3s;--ms-duration-stream: .28s;--ms-ease-linear: linear;--ms-ease-standard: ease;--ms-ease-out: ease-out;--ms-ease-in-out: ease-in-out;--ms-ease-spring: cubic-bezier(.16, 1, .3, 1);--ms-border-width: 1px;--ms-border-width-strong: 4px;--ms-focus-ring-width: 2px;--ms-focus-ring-offset: 2px;--ms-size-diagram-min-height: 360px;--ms-size-code-max-height: 500px;--ms-size-image-max-width: 384px;--ms-size-image-min-width: 128px;--ms-size-image-min-height: 1.5em;--ms-size-math-min-height: 40px;--ms-size-skeleton-min-height: 120px}body>div[id^=dmermaid-]{position:fixed;top:-10000px;left:0;width:100%;visibility:hidden;pointer-events:none}.markstream-vue .hover\:bg-\[var\(--code-action-hover-bg\)\]:hover{background-color:var(--code-action-hover-bg)}.markstream-vue .hover\:text-\[var\(--code-action-hover-fg\)\]:hover{color:var(--code-action-hover-fg)}.markstream-vue .hover\:underline:hover{text-decoration-line:underline}.markstream-vue .active\:scale-\[0\.96\]:active{--tw-scale-x: .96;--tw-scale-y: .96;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.markstream-vue .disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.markstream-vue .disabled\:opacity-40:disabled{opacity:.4}.checkbox-node[data-v-be21ab83]{display:inline-flex;align-items:center;margin-right:.5em;vertical-align:-.15em}.checkbox-icon[data-v-be21ab83]{flex-shrink:0}.checkbox-unchecked[data-v-be21ab83]{color:hsl(var(--ms-muted-foreground) / .5)}.checkbox-checked[data-v-be21ab83]{color:hsl(var(--ms-info))}.emoji-node[data-v-de55dc97]{display:inline-block}.footnote-reference[data-v-c1463a29]{font-size:.75em;line-height:0}.footnote-link[data-v-c1463a29]{color:var(--link-color);text-decoration:none}.footnote-link[data-v-c1463a29]:hover{text-decoration:underline}.html-inline-node[data-v-d17f12b0]{display:inline}.html-inline-node--loading[data-v-d17f12b0]{opacity:.85}.inline-code[data-v-4e331c97]{display:inline;font-family:var(--ms-font-mono);font-size:.8125em;line-height:inherit;color:var(--inline-code-fg);background-color:var(--inline-code-bg);padding:.15em .35em;border-radius:.25em;white-space:normal;word-break:break-word;max-width:100%;-webkit-box-decoration-break:clone;box-decoration-break:clone}.inline-code-stream-delta[data-v-4e331c97]{animation-duration:var(--stream-update-fade-duration, var(--fade-duration, .28s));animation-timing-function:var(--stream-update-fade-ease, var(--fade-ease, cubic-bezier(.33, 0, .67, 1)));animation-fill-mode:both}.inline-code-stream-delta--a[data-v-4e331c97]{animation-name:inline-code-stream-update-fade-a-4e331c97}.inline-code-stream-delta--b[data-v-4e331c97]{animation-name:inline-code-stream-update-fade-b-4e331c97}@keyframes inline-code-stream-update-fade-a-4e331c97{0%{opacity:0}to{opacity:1}}@keyframes inline-code-stream-update-fade-b-4e331c97{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.inline-code-stream-delta[data-v-4e331c97]{animation:none!important}}.image-node-container[data-v-046e82ac]{display:inline-block;position:relative;vertical-align:middle;max-width:var(--ms-size-image-max-width)}.image-node__img[data-v-046e82ac]{display:inline-block;max-width:100%;min-width:var(--ms-size-image-min-width);min-height:var(--ms-size-image-min-height);height:auto;vertical-align:middle;transition:opacity var(--ms-duration-emphasis) var(--ms-ease-standard)}.image-node__img.is-loading[data-v-046e82ac]{opacity:0}.image-node__img.is-loaded[data-v-046e82ac]{opacity:1}.image-node__img.has-natural-size[data-v-046e82ac]{min-width:0;min-height:0}.image-placeholder[data-v-046e82ac]{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:var(--ms-size-image-min-width);min-height:128px;max-width:var(--ms-size-image-max-width);background:hsl(var(--ms-muted));overflow:hidden;vertical-align:middle}.image-shimmer-overlay[data-v-046e82ac]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:hsl(var(--ms-muted));overflow:hidden}.image-shimmer-overlay .image-shimmer[data-v-046e82ac]{width:100%;height:100%}.image-shimmer[data-v-046e82ac]{display:block;width:100%;height:100%;min-height:128px;background:linear-gradient(90deg,hsl(var(--ms-muted)),hsl(var(--ms-muted-foreground) / .06),hsl(var(--ms-muted)));background-size:200% 100%;animation:image-shimmer-046e82ac 1.5s ease-in-out infinite}.image-node-container[data-markstream-viewport-pending=true] .image-shimmer[data-v-046e82ac]{animation:none}@keyframes image-shimmer-046e82ac{0%{background-position:100% 0}to{background-position:-100% 0}}.image-error[data-v-046e82ac]{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:16px 24px;min-height:64px;max-width:var(--ms-size-image-max-width);background:hsl(var(--ms-muted));color:hsl(var(--ms-muted-foreground));font-size:var(--ms-text-label);vertical-align:middle}.image-node__raw-text[data-v-046e82ac]{font-size:var(--ms-text-label);color:hsl(var(--ms-muted-foreground))}@media(prefers-reduced-motion:reduce){.image-shimmer[data-v-046e82ac]{animation:none!important}}.markstream-vue pre[class^=language-],.markstream-vue pre[class*=" language-"]{white-space:pre;overflow:auto;-moz-tab-size:2;-o-tab-size:2;tab-size:2;font-variant-ligatures:none;contain:content;backface-visibility:hidden;transform:translateZ(0);-webkit-font-smoothing:antialiased}.markstream-vue pre[class^=language-]>code,.markstream-vue pre[class*=" language-"]>code{display:block}.markstream-vue pre[data-markstream-pre="1"]:not(.markstream-pre--diff-preview){background:var(--code-bg);color:var(--code-fg)}.markstream-vue pre.markstream-pre--line-numbers{position:relative}.markstream-vue pre.code-pre-fallback[data-markstream-code-loading="1"]{--markstream-pre-line-number-top: var(--markstream-code-padding-y, 8px);--markstream-pre-line-number-left: 0px;--markstream-pre-line-number-width: 2ch;--markstream-pre-line-number-padding-left: 2ch;--markstream-pre-line-number-padding-right: 1ch;--markstream-pre-line-number-separator-width: 2px;--markstream-code-padding-left: calc(6ch + 2px) ;box-sizing:border-box;width:100%;margin:0;padding:var(--markstream-code-padding-y, 8px) var(--markstream-code-padding-x, 12px);padding-left:var(--markstream-code-padding-left);overflow:auto;border:0;border-radius:0;background:var(--code-bg);color:var(--code-fg);font-family:var( --markstream-code-font-family, Menlo, Monaco, Courier New, monospace );font-size:var(--vscode-editor-font-size, 12px);line-height:var(--vscode-editor-line-height, 18px)}.markstream-vue pre.markstream-pre--line-numbers>.markstream-pre__line-numbers{position:absolute;top:var(--markstream-pre-line-number-top, 0);left:var(--markstream-pre-line-number-left, 0);box-sizing:content-box;display:flex;flex-direction:column;align-items:flex-end;width:var(--markstream-pre-line-number-width, 2ch);min-width:var(--markstream-pre-line-number-width, 2ch);padding-left:var(--markstream-pre-line-number-padding-left, 2ch);padding-right:var(--markstream-pre-line-number-padding-right, 1ch);border-right:var(--markstream-pre-line-number-separator-width, 2px) solid transparent;color:var(--code-line-number);font:inherit;font-variant-numeric:tabular-nums;line-height:inherit;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.markstream-vue pre.markstream-pre--line-numbers:not(.markstream-pre--diff-preview):not(.code-pre-fallback)>.markstream-pre__code{box-sizing:border-box;min-width:100%;padding-left:var(--markstream-code-padding-left, 52px);padding-right:var(--markstream-code-padding-x, 12px)}.markstream-vue pre.markstream-pre--line-numbers>.markstream-pre__line-numbers>.markstream-pre__line-number{display:block;min-height:1lh}.markstream-vue pre.markstream-pre--line-numbers>.markstream-pre__line-numbers>.markstream-pre__line-numbers-text{display:block;min-height:1lh;text-align:right;white-space:pre}.markstream-vue pre.markstream-pre--diff-preview{box-sizing:border-box;padding-left:0;padding-right:0;width:100%;--markstream-pre-diff-gutter-marker-width: var(--stream-monaco-gutter-marker-width, 4px);--markstream-pre-diff-gutter-gap: var(--stream-monaco-gutter-gap, 1ch);--markstream-pre-diff-code-gap: var(--stream-monaco-diff-code-gap, 1ch);--markstream-pre-diff-code-padding: var(--stream-monaco-diff-code-padding, 0px);--markstream-diff-added-fg: var(--diff-added-fg, #2f8f68);--markstream-diff-removed-fg: var(--diff-removed-fg, #c24141);--markstream-diff-added-line-fill: var(--diff-added-bg, rgb(47 143 104 / 12%));--markstream-diff-removed-line-fill: var(--diff-removed-bg, rgb(194 65 65 / 12%));--markstream-diff-added-gutter: linear-gradient( 90deg, var(--markstream-diff-added-fg) 0 var(--markstream-pre-diff-gutter-marker-width), transparent var(--markstream-pre-diff-gutter-marker-width) 100% );--markstream-diff-removed-gutter: linear-gradient( 90deg, var(--markstream-diff-removed-fg) 0 var(--markstream-pre-diff-gutter-marker-width), transparent var(--markstream-pre-diff-gutter-marker-width) 100% );--markstream-pre-diff-line-number-width: var( --stream-monaco-line-number-width, 2ch );--markstream-pre-diff-line-number-padding-left: var(--stream-monaco-line-number-padding-left, 2ch);--markstream-pre-diff-line-number-padding-right: var(--stream-monaco-line-number-padding-right, 1ch);--markstream-pre-diff-line-number-separator-width: var(--stream-monaco-line-number-separator-width, 2px);--markstream-pre-diff-line-number-box-width: calc( var(--markstream-pre-diff-line-number-padding-left) + var(--markstream-pre-diff-line-number-width) + var(--markstream-pre-diff-line-number-padding-right) + var(--markstream-pre-diff-line-number-separator-width) );--markstream-pre-diff-line-number-bg: var( --stream-monaco-line-number-bg, var(--markstream-diff-line-number-bg, transparent) );--markstream-pre-diff-line-number-gap-to-code: var( --stream-monaco-original-line-number-gap-to-code, var(--stream-monaco-line-number-gap-to-code, var(--markstream-pre-diff-code-gap)) );--markstream-pre-diff-line-number-left: var( --stream-monaco-line-number-left, 0px );--markstream-pre-diff-line-number-align: var(--markstream-diff-line-number-align, right);--markstream-pre-diff-code-fill-left: calc( var(--markstream-pre-diff-line-number-left) + var(--markstream-pre-diff-line-number-box-width) );--markstream-pre-diff-code-left: calc( var(--markstream-pre-diff-code-fill-left) + var(--markstream-pre-diff-line-number-gap-to-code) + var(--markstream-pre-diff-code-padding) )}.markstream-vue pre.markstream-pre--diff-preview::-webkit-scrollbar{width:12px;height:12px}.markstream-vue pre.markstream-pre--diff-preview.is-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline{--markstream-pre-diff-line-number-gap-to-code: var( --stream-monaco-modified-line-number-gap-to-code, var(--stream-monaco-line-number-gap-to-code, var(--markstream-pre-diff-code-gap)) );--markstream-pre-diff-line-number-left: var( --stream-monaco-line-number-left, 0px )}.markstream-vue pre.markstream-pre--diff-preview>.markstream-pre__diff-code{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);font:inherit;line-height:inherit;min-width:100%;width:100%}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline>.markstream-pre__diff-code{grid-template-columns:minmax(0,1fr)}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline:not(.is-wrap)>.markstream-pre__diff-code{grid-template-columns:minmax(100%,max-content);width:100%;min-width:-moz-max-content;min-width:max-content}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-pane{min-width:0;overflow:hidden}.markstream-vue pre.markstream-pre--diff-preview:not(.is-wrap):not(.markstream-pre--diff-inline) .markstream-pre__diff-pane{overflow-x:auto;overflow-y:hidden}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-pane-content{display:block;min-width:100%}.markstream-vue pre.markstream-pre--diff-preview:not(.is-wrap):not(.markstream-pre--diff-inline) .markstream-pre__diff-pane-content{width:-moz-max-content;width:max-content}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline:not(.is-wrap) .markstream-pre__diff-pane{min-width:-moz-max-content;min-width:max-content;width:100%;overflow:visible}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-pane--modified{--markstream-pre-diff-pane-divider-width: 1px;--markstream-pre-diff-line-number-gap-to-code: var( --stream-monaco-modified-line-number-gap-to-code, var(--stream-monaco-line-number-gap-to-code, var(--markstream-pre-diff-code-gap)) );--markstream-pre-diff-line-number-left: var( --stream-monaco-line-number-left, 0px );box-shadow:inset 1px 0 var(--markstream-diff-pane-divider, hsl(var(--ms-border)))}.markstream-vue pre.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane--modified{--markstream-pre-diff-line-number-left: calc( var(--stream-monaco-line-number-left, 0px) + var(--markstream-pre-diff-pane-divider-width) )}.markstream-vue pre.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane--modified .markstream-pre__diff-rail{left:var(--markstream-pre-diff-pane-divider-width)}.markstream-vue pre.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane--modified .markstream-pre__diff-line{padding-left:calc(var(--markstream-pre-diff-code-left) + var(--markstream-pre-diff-pane-divider-width))}.markstream-vue pre.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane--modified .markstream-pre__diff-line:before{left:calc(var(--markstream-pre-diff-code-fill-left) + var(--markstream-pre-diff-pane-divider-width))}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline .markstream-pre__diff-pane--modified{box-shadow:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line{position:relative;display:block;box-sizing:border-box;width:100%;min-width:100%;min-height:var( --markstream-pre-diff-synced-row-height, var(--markstream-pre-diff-line-height, 18px) );padding-left:var(--markstream-pre-diff-code-left);line-height:var(--markstream-pre-diff-line-height, 18px)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line:before{content:"";position:absolute;left:var(--markstream-pre-diff-code-fill-left);right:0;top:0;height:var( --markstream-pre-diff-content-height, var(--markstream-pre-diff-line-height, 18px) );z-index:0;pointer-events:none;border-radius:0;background:transparent}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line:after{content:"";position:absolute;left:var(--markstream-pre-diff-line-number-left);top:0;width:var(--markstream-pre-diff-line-number-box-width);height:var( --markstream-pre-diff-content-height, var(--markstream-pre-diff-line-height, 18px) );z-index:0;pointer-events:none;background:var(--markstream-pre-diff-line-number-bg);box-shadow:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-rail{position:absolute;z-index:2;top:0;left:0;height:var( --markstream-pre-diff-content-height, var(--markstream-pre-diff-line-height, 18px) );width:var(--markstream-pre-diff-gutter-marker-width, 4px);min-width:var(--markstream-pre-diff-gutter-marker-width, 4px)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-number{position:absolute;z-index:1;top:0;left:var(--markstream-pre-diff-line-number-left);width:var(--markstream-pre-diff-line-number-width);min-width:var(--markstream-pre-diff-line-number-width);height:var( --markstream-pre-diff-content-height, var(--markstream-pre-diff-line-height, 18px) );box-sizing:content-box;background:var(--markstream-pre-diff-line-number-bg);box-shadow:none;padding-left:var(--markstream-pre-diff-line-number-padding-left, 2ch);padding-right:var(--markstream-pre-diff-line-number-padding-right, 1ch);border-right:var(--markstream-pre-diff-line-number-separator-width, 2px) solid var(--stream-monaco-editor-bg, var(--code-bg));color:var(--code-line-number);font-variant-numeric:tabular-nums;line-height:var(--markstream-pre-diff-line-height, 18px);text-align:var(--markstream-pre-diff-line-number-align, right);-webkit-user-select:none;-moz-user-select:none;user-select:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--added>.markstream-pre__diff-number{background:var(--stream-monaco-added-line-fill, var(--markstream-diff-added-line-fill, transparent));color:var(--stream-monaco-added-fg, var(--markstream-diff-added-fg, var(--code-line-number)))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--removed>.markstream-pre__diff-number{background:var(--stream-monaco-removed-line-fill, var(--markstream-diff-removed-line-fill, transparent));color:var(--stream-monaco-removed-fg, var(--markstream-diff-removed-fg, var(--code-line-number)))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-content{position:relative;z-index:1;display:block;width:-moz-max-content;width:max-content;min-width:100%;line-height:var(--markstream-pre-diff-line-height, 18px);white-space:inherit;overflow-wrap:normal;word-break:normal;line-break:auto}.markstream-vue pre.markstream-pre--diff-preview.is-wrap .markstream-pre__diff-content{width:auto;min-width:0;overflow-wrap:inherit}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-content-inner{white-space:inherit;overflow-wrap:inherit;word-break:inherit;line-break:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--hunk{color:var(--stream-monaco-unchanged-fg, var(--markstream-diff-unchanged-fg, var(--code-line-number)))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--hunk:before{background:var(--stream-monaco-unchanged-bg, var(--markstream-diff-unchanged-bg, transparent))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer:before{background-image:linear-gradient(-45deg,color-mix(in srgb,var(--stream-monaco-editor-fg, currentColor) 20%,transparent) 12.5%,transparent 12.5%,transparent 50%,color-mix(in srgb,var(--stream-monaco-editor-fg, currentColor) 20%,transparent) 50%,color-mix(in srgb,var(--stream-monaco-editor-fg, currentColor) 20%,transparent) 62.5%,transparent 62.5%,transparent 100%);background-size:10px 10px;opacity:.38}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer:after,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer>.markstream-pre__diff-rail,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer>.markstream-pre__diff-number,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer>.markstream-pre__diff-content{display:none}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-collapsed:not(.code-pre-fallback){height:auto!important;min-height:0!important}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed{min-height:28px;padding-left:0;color:var(--stream-monaco-unchanged-fg, var(--markstream-diff-unchanged-fg, var(--code-line-number)));line-height:28px}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed:before{left:0;height:28px;background:var(--stream-monaco-unchanged-bg, var(--markstream-diff-unchanged-bg, rgb(0 0 0 / 4%)))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed:after,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed>.markstream-pre__diff-rail,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed>.markstream-pre__diff-number{display:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed>.markstream-pre__diff-content{width:100%;min-width:0;padding-left:calc(var(--markstream-pre-diff-code-left) + 12px);line-height:28px}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--added:before{background:linear-gradient(var(--stream-monaco-added-line-fill, var(--markstream-diff-added-line-fill, transparent)),var(--stream-monaco-added-line-fill, var(--markstream-diff-added-line-fill, transparent))),var(--stream-monaco-added-line-fill, var(--markstream-diff-added-line-fill, transparent))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--removed:before{background:linear-gradient(var(--stream-monaco-removed-line-fill, var(--markstream-diff-removed-line-fill, transparent)),var(--stream-monaco-removed-line-fill, var(--markstream-diff-removed-line-fill, transparent))),var(--stream-monaco-removed-line-fill, var(--markstream-diff-removed-line-fill, transparent))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--added:after{background:var(--stream-monaco-added-line-fill, var(--markstream-diff-added-line-fill, transparent))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--removed:after{background:var(--stream-monaco-removed-line-fill, var(--markstream-diff-removed-line-fill, transparent))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--added>.markstream-pre__diff-rail{background:var(--stream-monaco-added-gutter, var(--markstream-diff-added-gutter, currentColor))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--removed>.markstream-pre__diff-rail{background:var(--stream-monaco-removed-gutter, var(--markstream-diff-removed-gutter, currentColor))}.markstream-vue pre[class^=language-]:focus,.markstream-vue pre[class*=" language-"]:focus{outline:var(--ms-focus-ring-width) solid var(--focus-ring);outline-offset:var(--ms-focus-ring-offset)}.text-node[data-v-fd79037c]{display:inline;font-weight:inherit;vertical-align:baseline}.text-node-center[data-v-fd79037c]{display:inline-flex;justify-content:center;width:100%}.text-node-stream-delta[data-v-fd79037c]{animation-duration:var(--stream-update-fade-duration, var(--fade-duration, .28s));animation-timing-function:var(--stream-update-fade-ease, var(--fade-ease, cubic-bezier(.33, 0, .67, 1)));animation-fill-mode:both;will-change:opacity}.text-node-stream-delta--a[data-v-fd79037c]{animation-name:text-node-stream-update-fade-a-fd79037c}.text-node-stream-delta--b[data-v-fd79037c]{animation-name:text-node-stream-update-fade-b-fd79037c}@keyframes text-node-stream-update-fade-a-fd79037c{0%{opacity:0}to{opacity:1}}@keyframes text-node-stream-update-fade-b-fd79037c{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.text-node-stream-delta[data-v-fd79037c]{animation:none!important}}.reference-node[data-v-775c65e4]{background-color:hsl(var(--ms-muted));color:hsl(var(--ms-muted-foreground))}.reference-node[data-v-775c65e4]:hover{background-color:hsl(var(--ms-secondary))}.superscript-node[data-v-24160b22]{font-size:.8em;vertical-align:super}.subscript-node[data-v-197fa13b]{font-size:.8em;vertical-align:sub}.strong-node[data-v-a8647104]{font-weight:700}.strikethrough-node[data-v-b7a531fa]{text-decoration:line-through}.link-node[data-v-367e6ca4]{color:var(--link-color);text-decoration:none}.link-node[data-v-367e6ca4]:hover{text-decoration:underline;text-underline-offset:3.2px}.link-loading .link-text-wrapper[data-v-367e6ca4]{position:relative}.link-loading[data-v-367e6ca4]{color:var(--link-color)}.link-loading .link-text[data-v-367e6ca4]{position:relative;z-index:2}.link-loading-indicator[data-v-367e6ca4]{position:absolute;left:0;right:0;height:var(--underline-height, 2px);bottom:var(--underline-bottom, -3px);background:currentColor;border-radius:999px;will-change:opacity;opacity:var(--underline-rest-opacity, .18);animation:underlinePulse-367e6ca4 var(--underline-duration, 1.6s) var(--underline-timing, ease-in-out) var(--underline-iteration, infinite)}@keyframes underlinePulse-367e6ca4{0%,to{opacity:var(--underline-rest-opacity, .18)}50%{opacity:var(--underline-opacity, .35)}}@media(prefers-reduced-motion:reduce){.link-loading-indicator[data-v-367e6ca4]{animation:none;opacity:var(--underline-rest-opacity, .18)}}.insert-node[data-v-1e2c29d4]{text-decoration:underline}.highlight-node[data-v-7a62982a]{background-color:var(--highlight-bg);padding:0 3.2px;border-radius:.2em}.emphasis-node[data-v-2a5aafbf]{font-style:italic}.hard-break[data-v-50c58f70]{display:block}.blockquote[data-v-abfecebc]{font-weight:400;font-style:normal;color:var(--blockquote-fg, hsl(var(--ms-muted-foreground)));border-left:3px solid var(--blockquote-border);margin-top:var(--ms-flow-blockquote-y);margin-bottom:var(--ms-flow-blockquote-y);padding-left:var(--ms-flow-blockquote-indent)}.blockquote>.paragraph-node[data-v-abfecebc]{font-size:var(--ms-text-body);line-height:var(--ms-leading-body);margin:var(--ms-flow-paragraph-y) 0}.blockquote>.paragraph-node[data-v-abfecebc]:first-child{margin-top:0}.blockquote>.paragraph-node[data-v-abfecebc]:last-child{margin-bottom:0}.blockquote[data-v-abfecebc] .markdown-renderer{content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}.definition-list[data-v-4e103b30]{margin:0 0 16px}.definition-term[data-v-4e103b30]{font-weight:600;margin-top:var(--ms-flow-definition-term-mt)}.definition-desc[data-v-4e103b30]{margin-left:var(--ms-flow-definition-desc-ml);margin-bottom:var(--ms-flow-definition-desc-mb)}.definition-list[data-v-4e103b30] .markdown-renderer{content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}.footnote-anchor[data-v-e1eb37b6]{margin-left:8px;color:var(--link-color)}.footnote-node{margin-top:var(--ms-flow-footnote-y);margin-bottom:var(--ms-flow-footnote-y)}.markstream-vue [class*=footnote-] .markdown-renderer,.markstream-vue .flex-1 .markdown-renderer{content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}.heading-node[data-v-7122dbe1]{font-weight:500;line-height:1.25}hr+.heading-node[data-v-7122dbe1]{margin-top:0}.heading-1[data-v-7122dbe1]{font-size:var(--ms-text-h1);line-height:var(--ms-leading-h1);font-weight:var(--ms-weight-h1);margin-top:var(--ms-flow-heading-1-mt);margin-bottom:var(--ms-flow-heading-1-mb)}.heading-2[data-v-7122dbe1]{font-size:var(--ms-text-h2);line-height:var(--ms-leading-h2);font-weight:var(--ms-weight-h2);margin-top:var(--ms-flow-heading-2-mt);margin-bottom:var(--ms-flow-heading-2-mb)}.heading-3[data-v-7122dbe1]{font-size:var(--ms-text-h3);line-height:var(--ms-leading-h3);font-weight:var(--ms-weight-h3);margin-top:var(--ms-flow-heading-3-mt);margin-bottom:var(--ms-flow-heading-3-mb)}.heading-4[data-v-7122dbe1]{font-size:var(--ms-text-h4);font-weight:var(--ms-weight-h4);margin-top:var(--ms-flow-heading-4-mt);margin-bottom:var(--ms-flow-heading-4-mb)}.heading-5[data-v-7122dbe1]{font-size:var(--ms-text-h5);margin-top:var(--ms-flow-heading-5-mt);margin-bottom:var(--ms-flow-heading-5-mb)}.heading-6[data-v-7122dbe1]{font-size:var(--ms-text-h6);margin-top:var(--ms-flow-heading-6-mt);margin-bottom:var(--ms-flow-heading-6-mb)}.list-item[data-v-617214f9]{margin:var(--ms-flow-list-item-y) 0;padding-left:var(--ms-space-1_5)}ol>.list-item[data-v-617214f9]::marker{color:var(--list-counter-marker);line-height:1.6}ul>.list-item[data-v-617214f9]::marker{color:var(--list-marker)}.list-item>.paragraph-node[data-v-617214f9]{font-size:var(--ms-text-body);line-height:var(--ms-leading-body);margin:0}.list-item[data-v-617214f9] .markdown-renderer{content-visibility:visible;contain-intrinsic-size:0px 0px;contain:content}.list-node[data-v-99cb95e0]{margin-top:var(--ms-flow-list-y);margin-bottom:var(--ms-flow-list-y);padding-left:var(--ms-flow-list-indent)}.list-decimal[data-v-99cb95e0]{list-style-type:decimal}.list-disc[data-v-99cb95e0]{list-style-type:disc}@media(max-width:1023px){.list-disc[data-v-99cb95e0]{margin-top:calc(4/3*1em);margin-bottom:calc(4/3*1em);padding-left:var(--ms-flow-list-indent-mobile)}}.html-block-node__raw[data-v-e140a874]{white-space:pre-wrap;overflow-wrap:anywhere;opacity:.85}.html-block-node__placeholder[data-v-e140a874]{display:flex;flex-direction:column;gap:5.6px;padding:8px 0}.html-block-node__placeholder-bar[data-v-e140a874]{display:block;height:12.8px;border-radius:9999px;background-image:linear-gradient(90deg,var(--loading-shimmer),transparent,var(--loading-shimmer));background-size:200% 100%}.paragraph-node[data-v-c59ff506]{font-size:var(--ms-text-body);line-height:var(--ms-leading-body);margin:var(--ms-flow-paragraph-y) 0}li .paragraph-node[data-v-c59ff506]{margin:0}.table-node-wrapper[data-v-39f87b5d]{position:relative;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable}.table-node[data-v-39f87b5d]{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;margin:var(--ms-flow-table-y) 0;font-size:inherit;border:1px solid var(--table-border);border-radius:var(--ms-radius);overflow:hidden;box-shadow:var(--ms-shadow-subtle)}.table-node[data-v-39f87b5d] th,.table-node[data-v-39f87b5d] td{border-bottom:1px solid var(--table-border);border-right:1px solid var(--table-border);padding:var(--ms-flow-table-cell);white-space:normal;overflow-wrap:break-word;word-break:normal}.table-node[data-v-39f87b5d] th:last-child,.table-node[data-v-39f87b5d] td:last-child{border-right:none}.table-node[data-v-39f87b5d] tbody tr:last-child td{border-bottom:none}.table-node[data-v-39f87b5d] thead th{position:relative;font-weight:600;background-color:var(--table-header-bg);border-bottom-width:2px}.table-node__resize-handle[data-v-39f87b5d]{position:absolute;top:0;right:-4px;bottom:0;z-index:1;width:8px;padding:0;border:0;background:transparent;cursor:col-resize;touch-action:none}.table-node__resize-handle[data-v-39f87b5d]:after{content:"";position:absolute;top:.35em;bottom:.35em;left:50%;width:2px;border-radius:9999px;background:color-mix(in srgb,var(--table-border) 45%,hsl(var(--ms-foreground)));opacity:0;transform:translate(-50%);transition:opacity var(--ms-duration-fast) var(--ms-ease-standard)}.table-node__resize-handle[data-v-39f87b5d]:hover:after,.table-node__resize-handle[data-v-39f87b5d]:focus-visible:after{opacity:1}.table-node[data-v-39f87b5d] tbody tr:nth-child(2n){background-color:hsl(var(--ms-muted) / .35)}.table-node[data-v-39f87b5d] tbody tr:hover{background-color:var(--code-action-hover-bg)}.table-node--loading tbody td[data-v-39f87b5d]{position:relative;overflow:hidden}.table-node--loading tbody td[data-v-39f87b5d]>*{visibility:hidden}.table-node--loading tbody td[data-v-39f87b5d]:after{content:"";position:absolute;inset:0;border-radius:calc(var(--ms-radius) * .5);background:linear-gradient(90deg,var(--loading-shimmer) 25%,var(--loading-shimmer) 50%,var(--loading-shimmer) 75%);background-size:200% 100%;animation:table-node-shimmer-39f87b5d 1.2s linear infinite;will-change:background-position}.table-node__loading[data-v-39f87b5d]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.table-node__spinner[data-v-39f87b5d]{width:40px;height:40px;border-radius:9999px;border:2px solid color-mix(in srgb,var(--loading-spinner) 25%,transparent);border-top-color:color-mix(in srgb,var(--loading-spinner) 80%,transparent);will-change:transform}.table-node-fade-enter-active[data-v-39f87b5d],.table-node-fade-leave-active[data-v-39f87b5d]{transition:opacity var(--ms-duration-standard) var(--ms-ease-standard)}.table-node-fade-enter-from[data-v-39f87b5d],.table-node-fade-leave-to[data-v-39f87b5d]{opacity:0}[data-v-39f87b5d] .table-node .markdown-renderer{display:contents;content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}[data-v-39f87b5d] .table-node .markdown-renderer .node-slot,[data-v-39f87b5d] .table-node .markdown-renderer .node-content,[data-v-39f87b5d] .table-node .markdown-renderer .node-space{display:contents}[data-v-39f87b5d] .table-node .text-node,[data-v-39f87b5d] .table-node code{white-space:inherit;overflow-wrap:inherit;word-break:inherit;max-width:none}@keyframes table-node-shimmer-39f87b5d{0%{background-position:0% 0%}50%{background-position:100% 0%}to{background-position:200% 0%}}.hr+.table-node-wrapper[data-v-39f87b5d]{margin-top:0}.hr+.table-node-wrapper .table-node[data-v-39f87b5d]{margin-top:0}.sr-only[data-v-39f87b5d]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hr-node[data-v-39b2349c]{border-top-width:1px;border-color:var(--hr-border);margin:var(--ms-flow-hr-y) 0}.vmr-container[data-v-911e41c4]{margin-top:16px;margin-bottom:16px;border-radius:var(--ms-radius);border-width:1px;padding:16px;border-left-width:var(--ms-border-width-strong)}.height-estimation-probes[data-v-3e0766e2]{position:absolute;left:-100000px;top:0;visibility:hidden;pointer-events:none;overflow:hidden;z-index:-1}.node-content[data-v-3e0766e2]{width:100%}.node-content-flow-root[data-v-3e0766e2]{display:flow-root}.markdown-renderer[data-v-9d192751]{position:relative;contain:layout;content-visibility:auto;contain-intrinsic-size:800px 600px}.markdown-renderer.virtualized[data-v-9d192751],.markdown-renderer.virtual-scroll-coordinated[data-v-9d192751]{content-visibility:visible;contain-intrinsic-size:auto}.markdown-renderer.stable-layout[data-v-9d192751]{content-visibility:visible;contain-intrinsic-size:none}.node-slot[data-v-9d192751],.node-content[data-v-9d192751]{width:100%}.markdown-renderer.virtualized .node-slot[data-v-9d192751],.markdown-renderer.virtualized .node-content[data-v-9d192751],.markdown-renderer.virtual-scroll-coordinated .node-slot[data-v-9d192751],.markdown-renderer.virtual-scroll-coordinated .node-content[data-v-9d192751]{display:flow-root}.node-placeholder[data-v-9d192751]{width:100%;min-height:16px;margin:4px 0}.node-placeholder[data-v-9d192751]:first-child{margin-top:0}.node-spacer[data-v-9d192751]{width:100%}.unknown-node[data-v-9d192751]{color:hsl(var(--ms-muted-foreground));font-style:italic;margin:var(--ms-flow-paragraph-y) 0}.typewriter-cursor[data-v-9d192751]{position:absolute;left:0;top:0;display:inline-block;width:.55em;height:1em;margin-left:.08em;vertical-align:-.12em;border-right:2px solid currentColor;pointer-events:none;visibility:hidden;animation:typewriter-cursor-blink-9d192751 1s steps(1,end) infinite}@keyframes typewriter-cursor-blink-9d192751{0%,49%{opacity:1}50%,to{opacity:0}}.markstream-vue.typewriter-simple-cursor .typewriter-simple-cursor-target:after{content:"";display:inline-block;width:.55em;height:1em;margin-left:.08em;vertical-align:-.12em;border-right:2px solid currentColor;pointer-events:none;animation:typewriter-cursor-blink 1s steps(1,end) infinite}@media(prefers-reduced-motion:reduce){.markstream-vue.typewriter-simple-cursor .typewriter-simple-cursor-target:after{animation:none}}.markstream-vue .fade-enter-from{opacity:0}.markstream-vue .fade-enter-active{transition:opacity var(--fade-duration, .28s) var(--fade-ease, cubic-bezier(.33, 0, .67, 1));will-change:opacity}.markstream-vue .fade-enter-to{opacity:1}.admonition[data-v-a83480e1]{position:relative;margin:var(--ms-flow-admonition-y) 0;padding:.25em .75em .375em;border:1px solid var(--admonition-border);border-radius:var(--ms-radius);color:var(--admonition-fg)}.admonition-legend[data-v-a83480e1]{position:absolute;top:0;left:.75em;transform:translateY(-50%);display:inline-flex;align-items:center;gap:.35em;padding:0 .5em;background-color:hsl(var(--ms-background));font-size:13px;font-weight:600;line-height:1}.admonition-icon[data-v-a83480e1]{flex-shrink:0}.admonition-title[data-v-a83480e1]{white-space:nowrap}.admonition-content[data-v-a83480e1]{padding-top:.25em;color:var(--admonition-fg)}.admonition-note[data-v-a83480e1],.admonition-info[data-v-a83480e1]{border-color:hsl(var(--ms-info) / .3);background-color:hsl(var(--ms-info) / .04)}.admonition-note .admonition-legend[data-v-a83480e1],.admonition-info .admonition-legend[data-v-a83480e1]{color:var(--admonition-note)}.admonition-tip[data-v-a83480e1]{border-color:hsl(var(--ms-success) / .3);background-color:hsl(var(--ms-success) / .04)}.admonition-tip .admonition-legend[data-v-a83480e1]{color:var(--admonition-tip)}.admonition-warning[data-v-a83480e1],.admonition-caution[data-v-a83480e1]{border-color:hsl(var(--ms-warning) / .3);background-color:hsl(var(--ms-warning) / .04)}.admonition-warning .admonition-legend[data-v-a83480e1],.admonition-caution .admonition-legend[data-v-a83480e1]{color:var(--admonition-warning)}.admonition-danger[data-v-a83480e1],.admonition-error[data-v-a83480e1]{border-color:hsl(var(--ms-destructive) / .3);background-color:hsl(var(--ms-destructive) / .04)}.admonition-danger .admonition-legend[data-v-a83480e1],.admonition-error .admonition-legend[data-v-a83480e1]{color:var(--admonition-danger)}.admonition-toggle[data-v-a83480e1]{margin-left:.25em;background:transparent;border:none;color:inherit;cursor:pointer;padding:2px;border-radius:calc(var(--ms-radius) * .5);display:inline-flex;align-items:center;transition:background-color var(--ms-duration-fast) var(--ms-ease-standard)}.admonition-toggle[data-v-a83480e1]:hover{background-color:hsl(var(--ms-accent))}.admonition-toggle[data-v-a83480e1]:focus-visible{outline:var(--ms-focus-ring-width) solid var(--focus-ring);outline-offset:var(--ms-focus-ring-offset)}.admonition-content[data-v-a83480e1] .markdown-renderer{content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}.tooltip-element[data-v-c606ee4c]{z-index:9999;display:inline-block;max-width:320px;padding:4px 8px;border-radius:calc(var(--ms-radius) * .75);font-size:12px;line-height:1.4;white-space:normal;word-break:break-word;pointer-events:none;background-color:var(--tooltip-bg);color:var(--tooltip-fg);box-shadow:inset 0 1px #ffffff26,0 0 0 1px #0000001f,var(--ms-shadow-popover);transition:transform var(--ms-duration-emphasis) var(--ms-ease-spring),box-shadow var(--ms-duration-emphasis) var(--ms-ease-spring)}.tooltip-arrow[data-v-c606ee4c]{position:absolute;width:6px;height:6px;background:inherit;transform:rotate(45deg)}.tooltip-arrow[data-placement^=top][data-v-c606ee4c]{bottom:-3px}.tooltip-arrow[data-placement^=bottom][data-v-c606ee4c]{top:-3px}.tooltip-arrow[data-placement^=left][data-v-c606ee4c]{right:-3px}.tooltip-arrow[data-placement^=right][data-v-c606ee4c]{left:-3px}.tooltip-enter-active[data-v-c606ee4c]{transition:opacity .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1)}.tooltip-leave-active[data-v-c606ee4c]{transition:opacity .12s ease-in,transform .12s ease-in}.tooltip-enter-from[data-v-c606ee4c]{opacity:0;transform:scale(.96)}.tooltip-enter-to[data-v-c606ee4c],.tooltip-leave-from[data-v-c606ee4c]{opacity:1;transform:scale(1)}.tooltip-leave-to[data-v-c606ee4c]{opacity:0;transform:scale(.97)}.action-icon{width:var(--ms-action-btn-icon, 14px);height:var(--ms-action-btn-icon, 14px);max-width:20px;max-height:20px}.code-block-container{margin:var(--ms-flow-codeblock-y) 0;contain:layout style;container-type:inline-size;background:var(--code-bg);border-color:var(--code-border);color:var(--code-fg);box-shadow:var(--ms-shadow-subtle)}.code-block-header{position:relative;z-index:1;gap:var(--ms-gap-header);border-radius:var(--ms-radius) var(--ms-radius) 0 0;overflow:visible}.code-block-header .code-header-main{min-width:0;flex:1 1 auto;display:flex;align-items:center;gap:var(--ms-gap-header-main);overflow:hidden}.code-block-header .code-header-copy{min-width:0;display:grid;gap:2px}.code-block-header .code-header-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ms-text-label);font-weight:500;color:var(--code-action-fg)}.code-block-header .code-header-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--code-line-number)}.code-block-header .code-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--ms-gap-header-actions);flex-wrap:wrap}.code-block-header .icon-slot{display:inline-flex;align-items:center;justify-content:center}.code-block-header .icon-slot svg,.code-block-header .icon-slot img{display:block;width:100%;height:100%}.code-diff-stats{display:inline-flex;align-items:center;gap:var(--ms-space-1_5);margin-right:var(--ms-space-1);font-size:var(--ms-text-label);font-weight:600;line-height:1;font-variant-numeric:tabular-nums}.code-diff-stat{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ms-radius);line-height:1}.code-diff-stat.removed{color:var(--diff-removed-fg);background:hsl(var(--ms-diff-removed) / .1)}.code-diff-stat.added{color:var(--diff-added-fg);background:hsl(var(--ms-diff-added) / .1)}.code-more-menu{position:absolute;top:100%;right:0;margin-top:4px;z-index:50;border-radius:var(--ms-radius)}.code-block-shell-content,.code-loading-placeholder{overflow:hidden;border-radius:0 0 var(--ms-radius) var(--ms-radius);contain:content}.code-block-shell-content--collapsed{height:0;min-height:0;visibility:hidden;pointer-events:none}.code-menu-enter-active,.code-menu-leave-active{transform-origin:top right}.code-menu-enter-active{transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1)}.code-menu-leave-active{transition:opacity .14s ease-in,transform .14s ease-in}.code-menu-enter-from{opacity:0;transform:scale(.9) translateY(-4px)}.code-menu-leave-to{opacity:0;transform:scale(.95) translateY(-2px)}.html-preview-frame__backdrop[data-v-24e66176]{position:fixed;inset:0;background-color:var(--modal-overlay);display:flex;align-items:center;justify-content:center;z-index:50}.html-preview-frame[data-v-24e66176]{width:80vw;max-width:960px;height:70vh;background-color:var(--modal-bg);color:var(--modal-fg);border-radius:calc(var(--ms-radius) * 2);overflow:hidden;box-shadow:var(--ms-shadow-preview);display:flex;flex-direction:column}.html-preview-frame__header[data-v-24e66176]{display:flex;justify-content:space-between;align-items:center;padding:6.4px 12px;border-bottom:1px solid var(--code-border)}.html-preview-frame__title[data-v-24e66176]{display:inline-flex;align-items:center;gap:6.4px;font-size:12px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;opacity:.85}.html-preview-frame__dot[data-v-24e66176]{width:8px;height:8px;border-radius:999px;background-color:hsl(var(--ms-success))}.html-preview-frame__label[data-v-24e66176]{white-space:nowrap}.html-preview-frame__close[data-v-24e66176]{border:none;background:transparent;font-size:20px;line-height:1;cursor:pointer;color:var(--modal-fg)}.html-preview-frame__iframe[data-v-24e66176]{width:100%;height:100%;border:none;display:block}@media(max-width:640px){.html-preview-frame[data-v-24e66176]{width:100vw;height:80vh;border-radius:0}}.code-block-container[data-v-ef6e4bb8]{--markstream-code-fallback-bg: var(--code-bg);--markstream-code-fallback-fg: var(--code-fg);--markstream-code-border-color: var(--code-border);--vscode-editor-selectionBackground: var(--markstream-code-fallback-selection-bg);--markstream-code-fallback-selection-bg: var(--code-selection-bg);--markstream-diff-frame-border: var(--code-border);--markstream-diff-frame-shadow: 0 16px 40px -32px hsl(var(--ms-foreground) / .18);--markstream-diff-shell-fg: hsl(var(--ms-foreground));--markstream-diff-shell-muted: hsl(var(--ms-muted-foreground));--markstream-diff-shell-border: var(--code-border);--markstream-diff-shell-shadow: var(--ms-shadow-subtle);--markstream-diff-shell-bg: var(--code-bg);--markstream-diff-header-border: hsl(var(--ms-border) / .92);--markstream-diff-editor-bg: hsl(var(--ms-background));--markstream-diff-editor-fg: hsl(var(--ms-foreground));--markstream-diff-unchanged-fg: hsl(var(--ms-foreground));--markstream-diff-unchanged-bg: hsl(var(--ms-muted));--markstream-diff-unchanged-divider: hsl(var(--ms-background) / .94);--markstream-diff-focus: var(--focus-ring);--markstream-diff-widget-shadow: hsl(var(--ms-foreground) / .26);--markstream-diff-action-hover: var(--code-action-hover-bg);--markstream-diff-panel-bg: linear-gradient(180deg, var(--code-bg) 0%, hsl(var(--ms-muted)) 100%);--markstream-diff-panel-bg-soft: var(--code-bg);--markstream-diff-panel-bg-strong: var(--code-bg);--markstream-diff-panel-border: hsl(var(--ms-border) / .3);--markstream-diff-pane-divider: hsl(var(--ms-border) / .42);--markstream-diff-gutter-bg: transparent;--markstream-diff-gutter-guide: hsl(var(--ms-border) / .72);--markstream-diff-gutter-gap: 8px;--markstream-diff-line-number-bg: hsl(var(--ms-muted) / .45);--markstream-diff-line-number: var(--code-line-number);--markstream-diff-line-number-active: var(--code-line-number);--markstream-diff-added-fg: var(--diff-added-fg);--markstream-diff-removed-fg: var(--diff-removed-fg);--markstream-diff-added-line: var(--diff-added-bg);--markstream-diff-removed-line: var(--diff-removed-bg);--markstream-diff-added-inline: var(--diff-added-inline-bg);--markstream-diff-removed-inline: var(--diff-removed-inline-bg);--markstream-diff-added-inline-border: transparent;--markstream-diff-removed-inline-border: transparent;--markstream-diff-added-gutter: linear-gradient( 90deg, var(--markstream-diff-added-fg) 0 var(--stream-monaco-gutter-marker-width, 4px), transparent var(--stream-monaco-gutter-marker-width, 4px) 100% );--markstream-diff-removed-gutter: repeating-linear-gradient( 180deg, var(--markstream-diff-removed-fg) 0 2px, transparent 2px 4px ) left / var(--stream-monaco-gutter-marker-width, 4px) 100% no-repeat;--markstream-diff-added-line-fill: var(--diff-added-bg);--markstream-diff-removed-line-fill: var(--diff-removed-bg)}.code-block-container.is-dark[data-v-ef6e4bb8]{--markstream-code-fallback-bg: var(--code-bg);--markstream-code-fallback-fg: var(--code-fg);--markstream-code-border-color: var(--code-border);--markstream-code-fallback-selection-bg: var(--code-selection-bg);--markstream-diff-frame-border: var(--code-border);--markstream-diff-frame-shadow: 0 18px 40px -30px hsl(var(--ms-foreground) / .84);--markstream-diff-shell-fg: hsl(var(--ms-foreground));--markstream-diff-shell-muted: hsl(var(--ms-muted-foreground));--markstream-diff-shell-border: var(--code-border);--markstream-diff-shell-shadow: var(--ms-shadow-subtle);--markstream-diff-shell-bg: var(--code-bg);--markstream-diff-header-border: hsl(var(--ms-border) / .82);--markstream-diff-editor-bg: #121212;--markstream-diff-editor-fg: #e5e5e5;--markstream-diff-unchanged-fg: #d4d4d4;--markstream-diff-unchanged-bg: #262626;--markstream-diff-unchanged-divider: hsl(0 0% 100% / .08);--markstream-diff-focus: var(--focus-ring);--markstream-diff-widget-shadow: hsl(var(--ms-foreground) / .72);--markstream-diff-action-hover: var(--code-action-hover-bg);--markstream-diff-panel-bg: #121212;--markstream-diff-panel-bg-soft: #121212;--markstream-diff-panel-bg-strong: #121212;--markstream-diff-panel-border: hsl(var(--ms-border) / .3);--markstream-diff-pane-divider: hsl(var(--ms-border) / .34);--markstream-diff-gutter-bg: linear-gradient( 180deg, hsl(0 0% 7% / .94) 0%, hsl(0 0% 7% / .98) 100% );--markstream-diff-gutter-guide: hsl(var(--ms-muted-foreground) / .08);--markstream-diff-gutter-gap: 8px;--markstream-diff-line-number-bg: hsl(0 0% 7% / .98);--markstream-diff-line-number: var(--code-line-number);--markstream-diff-line-number-active: var(--code-line-number);--markstream-diff-added-fg: hsl(152 42% 60%);--markstream-diff-removed-fg: hsl(0 58% 58%);--markstream-diff-added-line: hsl(152 42% 60% / .18);--markstream-diff-removed-line: hsl(0 58% 58% / .18);--markstream-diff-added-inline: hsl(152 42% 60% / .28);--markstream-diff-removed-inline: hsl(0 58% 58% / .28);--markstream-diff-added-inline-border: transparent;--markstream-diff-removed-inline-border: transparent;--markstream-diff-added-gutter: linear-gradient( 90deg, var(--markstream-diff-added-fg) 0 var(--stream-monaco-gutter-marker-width, 4px), transparent var(--stream-monaco-gutter-marker-width, 4px) 100% );--markstream-diff-removed-gutter: repeating-linear-gradient( 180deg, var(--markstream-diff-removed-fg) 0 2px, transparent 2px 4px ) left / var(--stream-monaco-gutter-marker-width, 4px) 100% no-repeat;--markstream-diff-added-line-fill: hsl(152 42% 60% / .18);--markstream-diff-removed-line-fill: hsl(0 58% 58% / .18)}.code-editor-container[data-v-ef6e4bb8]{transition:none;box-sizing:border-box;min-width:0;width:100%}.code-block-container.is-diff .code-editor-container[data-v-ef6e4bb8]{transition:none}.code-editor-layer[data-v-ef6e4bb8]{display:grid;min-width:0;position:relative}.code-editor-layer--collapsed[data-v-ef6e4bb8]{height:0;min-height:0;overflow:hidden;visibility:hidden;pointer-events:none}.code-editor-layer>.code-editor-container[data-v-ef6e4bb8]{grid-area:1 / 1;z-index:1}.code-editor-layer>pre.code-pre-fallback[data-v-ef6e4bb8]{grid-area:1 / 1;position:relative;z-index:2}.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor,.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .monaco-editor-background,.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .margin,.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .lines-content{background:var(--vscode-editor-background, var(--markstream-code-fallback-bg))!important}.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor,.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .margin,.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .view-lines,.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .view-line,.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .view-line span,.code-block-container.is-plain-text[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .line-numbers{color:var(--vscode-editor-foreground, var(--markstream-code-fallback-fg))!important}.code-block-container.is-diff[data-v-ef6e4bb8]{color:var(--markstream-diff-shell-fg);border-color:var(--markstream-diff-shell-border);background:var(--markstream-diff-shell-bg);box-shadow:var(--markstream-diff-shell-shadow);--vscode-editor-selectionBackground: var(--markstream-diff-action-hover);--code-fg: var(--markstream-diff-shell-fg);--code-header-bg: transparent;--code-border: var(--markstream-diff-header-border);--code-line-number: var(--markstream-diff-shell-muted);--code-action-fg: var(--markstream-diff-shell-muted)}.code-block-container.is-diff .code-editor-layer[data-v-ef6e4bb8]{background:transparent;--vscode-editor-background: var(--markstream-diff-editor-bg);--vscode-editor-foreground: var(--markstream-diff-editor-fg);--vscode-diffEditor-unchangedRegionForeground: var(--markstream-diff-unchanged-fg);--vscode-diffEditor-unchangedRegionBackground: var(--markstream-diff-unchanged-bg);--vscode-focusBorder: var(--markstream-diff-focus);--vscode-widget-shadow: var(--markstream-diff-widget-shadow);--vscode-editor-selectionBackground: color-mix( in srgb, var(--markstream-diff-editor-bg) 90%, var(--markstream-diff-editor-fg) 10% );--stream-monaco-editor-bg: var(--markstream-diff-editor-bg);--stream-monaco-editor-fg: var(--markstream-diff-editor-fg);--stream-monaco-unchanged-fg: var(--markstream-diff-unchanged-fg);--stream-monaco-unchanged-bg: var(--markstream-diff-unchanged-bg);--stream-monaco-frame-radius: 0;--stream-monaco-fixed-editor-bg: var(--markstream-diff-editor-bg);--stream-monaco-frame-border: transparent;--stream-monaco-frame-shadow: none;--stream-monaco-panel-bg: var(--markstream-diff-editor-bg);--stream-monaco-panel-bg-soft: var(--markstream-diff-editor-bg);--stream-monaco-panel-bg-strong: var(--markstream-diff-editor-bg);--stream-monaco-panel-border: transparent;--stream-monaco-pane-divider: var(--markstream-diff-pane-divider);--stream-monaco-gutter-bg: var(--markstream-diff-gutter-bg);--stream-monaco-gutter-guide: var(--markstream-diff-gutter-guide);--stream-monaco-gutter-marker-width: 4px;--stream-monaco-gutter-gap: 1ch;--stream-monaco-line-number-bg: var(--markstream-diff-line-number-bg);--stream-monaco-line-number: var(--markstream-diff-line-number);--stream-monaco-line-number-active: var(--markstream-diff-line-number-active);--stream-monaco-line-number-left: 0px;--stream-monaco-line-number-width: 2ch;--stream-monaco-line-number-padding-left: 2ch;--stream-monaco-line-number-padding-right: 1ch;--stream-monaco-line-number-separator-width: 2px;--stream-monaco-layout-character-width: var(--markstream-code-layout-character-width, 1ch);--stream-monaco-line-number-box-width: calc( var(--stream-monaco-layout-character-width) + var(--stream-monaco-layout-character-width) + var(--stream-monaco-layout-character-width) + var(--stream-monaco-layout-character-width) + var(--stream-monaco-layout-character-width) + var(--stream-monaco-line-number-separator-width) );--stream-monaco-diff-code-gap: 1ch;--stream-monaco-diff-code-padding: 0px;--stream-monaco-line-number-gap-to-code: var(--stream-monaco-diff-code-gap);--stream-monaco-line-number-align: var( --markstream-diff-line-number-align, var(--markstream-code-line-number-align, right) );--stream-monaco-original-margin-width: calc( var(--stream-monaco-line-number-left) + var(--stream-monaco-line-number-box-width) + var(--stream-monaco-line-number-gap-to-code) );--stream-monaco-original-scrollable-left: var(--stream-monaco-original-margin-width);--stream-monaco-original-scrollable-width: calc( 100% - var(--stream-monaco-original-margin-width) );--stream-monaco-modified-margin-width: calc( var(--stream-monaco-line-number-left) + var(--stream-monaco-line-number-box-width) + var(--stream-monaco-line-number-gap-to-code) );--stream-monaco-modified-scrollable-left: var(--stream-monaco-modified-margin-width);--stream-monaco-modified-scrollable-width: calc( 100% - var(--stream-monaco-modified-margin-width) );--stream-monaco-added-fg: var(--markstream-diff-added-fg);--stream-monaco-removed-fg: var(--markstream-diff-removed-fg);--stream-monaco-added-line: var(--markstream-diff-added-line);--stream-monaco-removed-line: var(--markstream-diff-removed-line);--stream-monaco-added-inline: var(--markstream-diff-added-inline);--stream-monaco-removed-inline: var(--markstream-diff-removed-inline);--stream-monaco-added-outline: transparent;--stream-monaco-removed-outline: transparent;--stream-monaco-added-inline-border: var(--markstream-diff-added-inline-border);--stream-monaco-removed-inline-border: var(--markstream-diff-removed-inline-border);--stream-monaco-added-line-shadow: none;--stream-monaco-removed-line-shadow: none;--stream-monaco-added-gutter: var(--markstream-diff-added-gutter);--stream-monaco-removed-gutter: var(--markstream-diff-removed-gutter);--stream-monaco-added-line-fill: var(--markstream-diff-added-line-fill);--stream-monaco-removed-line-fill: var(--markstream-diff-removed-line-fill);--stream-monaco-added-border: hsl(var(--ms-diff-added) / .25);--stream-monaco-removed-border: hsl(var(--ms-diff-removed) / .25);--stream-monaco-widget-shadow: var(--markstream-diff-widget-shadow)}.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.original .margin-view-overlays .line-numbers,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.modified .margin-view-overlays .line-numbers{left:var(--stream-monaco-line-number-left)!important;width:var(--stream-monaco-line-number-width)!important;min-width:var(--stream-monaco-line-number-width)!important;box-sizing:content-box!important;background:var(--stream-monaco-line-number-bg, var(--markstream-diff-line-number-bg))!important;padding-left:var(--stream-monaco-line-number-padding-left, 2ch)!important;padding-right:var(--stream-monaco-line-number-padding-right, 1ch)!important;border-right:var(--stream-monaco-line-number-separator-width, 2px) solid var(--stream-monaco-editor-bg)!important;text-align:var( --markstream-diff-line-number-align, var(--markstream-code-line-number-align, right) )!important;font-variant-numeric:tabular-nums;box-shadow:none}.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .margin-view-overlays .line-numbers,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .margin-view-overlays .line-numbers *{text-align:var( --markstream-diff-line-number-align, var(--markstream-code-line-number-align, right) )!important;font-variant-numeric:tabular-nums}.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.original .margin-view-overlays .line-delete.line-numbers,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.modified .margin-view-overlays .line-delete.line-numbers,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .line-delete.line-numbers,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.original .margin-view-overlays .line-numbers.stream-monaco-line-number-delete,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.modified .margin-view-overlays .line-numbers.stream-monaco-line-number-delete,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-editor .stream-monaco-fallback-line-number-delete,.code-block-container.is-diff[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-native-stale .monaco-diff-editor .line-delete.line-numbers{background:var(--stream-monaco-removed-line-fill)!important;color:var(--stream-monaco-removed-fg)!important;box-shadow:none!important}.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.original .margin-view-overlays .line-insert.line-numbers,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.modified .margin-view-overlays .line-insert.line-numbers,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .line-insert.line-numbers,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.original .margin-view-overlays .line-numbers.stream-monaco-line-number-insert,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .editor.modified .margin-view-overlays .line-numbers.stream-monaco-line-number-insert,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-editor .stream-monaco-fallback-line-number-insert,.code-block-container.is-diff[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-native-stale .monaco-diff-editor .line-insert.line-numbers{background:var(--stream-monaco-added-line-fill)!important;color:var(--stream-monaco-added-fg)!important;box-shadow:none!important}.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .monaco-editor,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .margin,.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .margin-view-overlays{--stream-monaco-line-number-align: var( --markstream-diff-line-number-align, var(--markstream-code-line-number-align, right) ) !important}.code-block-container[data-v-ef6e4bb8]:not(.is-diff){--markstream-code-line-number-box-width: calc( var(--markstream-code-layout-character-width, 1ch) + var(--markstream-code-layout-character-width, 1ch) + var(--markstream-code-layout-character-width, 1ch) + var(--markstream-code-layout-character-width, 1ch) + var(--markstream-code-layout-character-width, 1ch) + 2px );--markstream-code-content-left: calc( var(--markstream-code-line-number-box-width) + var(--markstream-code-layout-character-width, 1ch) )}.code-block-container[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .margin,.code-block-container[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .margin-view-overlays{width:var(--markstream-code-content-left)!important}.code-block-container[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .line-numbers{left:0!important;width:2ch!important;min-width:2ch!important;box-sizing:content-box!important;padding-left:2ch!important;padding-right:1ch!important;border-right:2px solid var(--vscode-editor-background)!important;text-align:var(--markstream-code-line-number-align, right)!important;font-variant-numeric:tabular-nums}.code-block-container[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .monaco-scrollable-element.editor-scrollable{left:var(--markstream-code-content-left)!important;width:calc(100% - var(--markstream-code-content-left))!important}.code-block-container[data-v-ef6e4bb8]:not(.is-diff) .monaco-editor .lines-content{left:0!important}.code-editor-container[data-markstream-host-hidden=true][data-v-ef6e4bb8]{position:absolute;inset:0;width:100%;height:100%!important;min-height:0!important;max-height:none!important;overflow:hidden;visibility:hidden;pointer-events:none}pre.code-pre-fallback[data-v-ef6e4bb8]{margin:0;box-sizing:border-box;width:100%;padding:var(--markstream-code-padding-y, 8px) var(--markstream-code-padding-x, 12px);padding-left:var(--markstream-code-padding-left, 52px);background:var(--markstream-code-fallback-bg, var(--code-bg, #fff));color:var(--markstream-code-fallback-fg, var(--code-fg));backface-visibility:visible;transform:none;-webkit-font-smoothing:auto;font-size:var(--vscode-editor-font-size, 12px);line-height:var(--vscode-editor-line-height, 18px);font-weight:400;font-family:var( --markstream-code-font-family, Menlo, Monaco, Courier New, monospace )}pre.code-pre-fallback[data-v-ef6e4bb8] code{font-size:inherit;font-weight:inherit;line-height:inherit;font-family:inherit}pre.code-pre-fallback.is-wrap[data-v-ef6e4bb8]{white-space:pre-wrap;overflow-wrap:anywhere}pre.code-pre-fallback.markstream-pre--diff-preview[data-v-ef6e4bb8]{padding-left:0;padding-right:0}.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview{background:var(--markstream-diff-editor-bg);transition:none}.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-pane{box-sizing:border-box;padding-bottom:var(--markstream-pre-diff-pane-bottom-padding, 0px)}.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane{padding-bottom:var(--markstream-pre-diff-pane-bottom-padding, 0px)}.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--added:after,.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--added>.markstream-pre__diff-number{background:var(--stream-monaco-added-line-fill, var(--markstream-diff-added-line-fill, transparent))!important}.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--removed:after,.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--removed>.markstream-pre__diff-number{background:var(--stream-monaco-removed-line-fill, var(--markstream-diff-removed-line-fill, transparent))!important}.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--added>.markstream-pre__diff-rail{background:var(--stream-monaco-added-gutter, var(--markstream-diff-added-gutter, currentColor))!important}.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--removed>.markstream-pre__diff-rail{background:var(--stream-monaco-removed-gutter, var(--markstream-diff-removed-gutter, currentColor))!important}.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .margin-view-overlays>.gutter-insert>.cmdr.gutter-insert{background:linear-gradient(90deg,transparent 0 var(--stream-monaco-line-number-box-width),var(--stream-monaco-added-line-fill) var(--stream-monaco-line-number-box-width) 100%)!important}.code-block-container.is-diff[data-v-ef6e4bb8] .monaco-diff-editor .margin-view-overlays>.gutter-delete>.cmdr.gutter-delete{background:linear-gradient(90deg,transparent 0 var(--stream-monaco-line-number-box-width),var(--stream-monaco-removed-line-fill) var(--stream-monaco-line-number-box-width) 100%)!important}@media(prefers-reduced-motion:reduce){.code-block-container.is-diff[data-v-ef6e4bb8] pre.code-pre-fallback.markstream-pre--diff-preview{transition:none}}.code-block-container.is-rendering .code-height-placeholder[data-v-ef6e4bb8]{background-size:400% 100%;animation:code-skeleton-shimmer-ef6e4bb8 1.2s ease-in-out infinite;min-height:var(--ms-size-skeleton-min-height);background:linear-gradient(90deg,var(--loading-shimmer) 25%,hsl(var(--ms-muted) / .7) 37%,var(--loading-shimmer) 63%)}.code-loading-placeholder[data-v-ef6e4bb8]{padding:16px;min-height:var(--ms-size-skeleton-min-height)}.loading-skeleton[data-v-ef6e4bb8]{display:flex;flex-direction:column;gap:12px}.skeleton-line[data-v-ef6e4bb8]{height:16px;background:linear-gradient(90deg,var(--loading-shimmer) 25%,hsl(var(--ms-muted) / .7) 37%,var(--loading-shimmer) 63%);background-size:400% 100%;animation:code-skeleton-shimmer-ef6e4bb8 1.2s ease-in-out infinite;border-radius:calc(var(--ms-radius) * .5)}.skeleton-line.short[data-v-ef6e4bb8]{width:60%}.code-block-container[data-markstream-viewport-pending=true] .code-height-placeholder[data-v-ef6e4bb8],.code-block-container[data-markstream-viewport-pending=true] .skeleton-line[data-v-ef6e4bb8]{animation:none}@keyframes code-skeleton-shimmer-ef6e4bb8{0%{background-position:100% 0}to{background-position:0 0}}[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-editor .diff-hidden-lines .center{border-radius:var(--ms-radius)!important;background:transparent!important;border:1px solid transparent!important;box-shadow:none!important;min-height:28px!important;transition:background-color .14s ease,border-color .14s ease!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-editor .diff-hidden-lines .center:hover,[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-editor .diff-hidden-lines .center.stream-monaco-focus-within{background:color-mix(in srgb,var(--stream-monaco-editor-fg) 4%,transparent)!important;border-color:color-mix(in srgb,var(--stream-monaco-editor-fg) 10%,transparent)!important;box-shadow:none!important}[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-appearance-dark .monaco-editor .diff-hidden-lines .center{background:transparent!important;border-color:transparent!important;box-shadow:none!important}[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-appearance-dark .monaco-editor .diff-hidden-lines .center:hover,[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-appearance-dark .monaco-editor .diff-hidden-lines .center.stream-monaco-focus-within{background:color-mix(in srgb,var(--stream-monaco-editor-fg) 6%,transparent)!important;border-color:color-mix(in srgb,var(--stream-monaco-editor-fg) 12%,transparent)!important;box-shadow:none!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-editor .diff-hidden-lines .center .stream-monaco-unchanged-count:before{content:"";display:inline-block;width:14px;height:14px;margin-right:4px;flex-shrink:0;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 15 5 5 5-5'/%3E%3Cpath d='m7 9 5-5 5 5'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 15 5 5 5-5'/%3E%3Cpath d='m7 9 5-5 5 5'/%3E%3C/svg%3E");mask-size:contain;-webkit-mask-size:contain;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}[data-v-ef6e4bb8] .monaco-diff-editor .diffOverview{background-color:var(--vscode-editor-background)}[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-diff-editor .diffOverview,[data-v-ef6e4bb8] .stream-monaco-diff-root .decorationsOverviewRuler{display:none!important;width:0!important;min-width:0!important;max-width:0!important;border:0!important;background:transparent!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}[data-v-ef6e4bb8] .code-block-container .stream-monaco-diff-root .monaco-diff-editor{border:0!important;border-radius:0!important;box-shadow:none!important}[data-v-ef6e4bb8] .code-block-container .stream-monaco-diff-root .monaco-editor .diff-hidden-lines .center:not(.stream-monaco-clickable)>*:not(a){visibility:hidden!important}[data-v-ef6e4bb8] .code-block-container .stream-monaco-diff-root .monaco-editor .diff-hidden-lines-compact .text{opacity:0!important}[data-v-ef6e4bb8] .stream-monaco-diff-root{--stream-monaco-gutter-guide: var(--markstream-diff-gutter-guide) !important;--stream-monaco-gutter-gap: var(--markstream-diff-gutter-gap) !important;--stream-monaco-line-number: var(--markstream-diff-line-number) !important;--stream-monaco-line-number-active: var(--markstream-diff-line-number-active) !important;--stream-monaco-added-fg: var(--markstream-diff-added-fg) !important;--stream-monaco-removed-fg: var(--markstream-diff-removed-fg) !important;--stream-monaco-added-line: var(--markstream-diff-added-line) !important;--stream-monaco-removed-line: var(--markstream-diff-removed-line) !important;--stream-monaco-added-inline: var(--markstream-diff-added-inline) !important;--stream-monaco-removed-inline: var(--markstream-diff-removed-inline) !important;--stream-monaco-added-inline-border: var(--markstream-diff-added-inline-border) !important;--stream-monaco-removed-inline-border: var(--markstream-diff-removed-inline-border) !important;--stream-monaco-added-line-fill: var(--markstream-diff-added-line-fill) !important;--stream-monaco-removed-line-fill: var(--markstream-diff-removed-line-fill) !important;--stream-monaco-added-gutter: var(--markstream-diff-added-gutter) !important;--stream-monaco-removed-gutter: var(--markstream-diff-removed-gutter) !important;--stream-monaco-added-line-shadow: none !important;--stream-monaco-removed-line-shadow: none !important;--stream-monaco-unchanged-bg: var(--markstream-diff-unchanged-bg) !important;--stream-monaco-unchanged-fg: var(--markstream-diff-unchanged-fg) !important;box-sizing:border-box;min-width:0;width:100%}[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline .monaco-diff-editor,[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline .monaco-diff-editor .editor.modified,[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline .monaco-diff-editor .editor.modified .monaco-editor,[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline .monaco-diff-editor .editor.modified .overflow-guard,[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-diff-editor:not(.side-by-side),[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-diff-editor:not(.side-by-side) .editor.modified,[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-diff-editor:not(.side-by-side) .editor.modified .monaco-editor,[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-diff-editor:not(.side-by-side) .editor.modified .overflow-guard{min-width:0!important;width:100%!important}[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline .monaco-diff-editor .editor.modified .monaco-scrollable-element.editor-scrollable,[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-diff-editor:not(.side-by-side) .editor.modified .monaco-scrollable-element.editor-scrollable{left:var(--stream-monaco-modified-scrollable-left, var(--stream-monaco-modified-margin-width))!important;width:calc(100% - var(--stream-monaco-modified-scrollable-left, var(--stream-monaco-modified-margin-width)))!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-diff-editor .editor.modified .view-lines .view-line.stream-monaco-line-insert-fill,[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-diff-editor .editor.original .view-lines .view-line.stream-monaco-line-delete-fill{width:1000000px!important}.code-block-container.is-diff[data-v-ef6e4bb8] .stream-monaco-fallback-inline-delete-line{box-sizing:border-box;padding-left:var(--stream-monaco-diff-code-padding, 0px)}[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline .monaco-diff-editor .scrollbar.horizontal,[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-diff-editor:not(.side-by-side) .scrollbar.horizontal{display:none!important;height:0!important}[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline.stream-monaco-diff-inline-native-ready.stream-monaco-diff-native-stale .monaco-diff-editor .editor.modified .view-lines.line-delete{margin-left:0!important;width:100%!important;background:var(--stream-monaco-removed-line-fill)!important;box-shadow:var(--stream-monaco-removed-line-shadow)!important;display:block!important;height:-moz-max-content!important;height:max-content!important;min-height:18px!important;overflow:visible!important}[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline.stream-monaco-diff-inline-native-ready.stream-monaco-diff-native-stale .monaco-diff-editor .gutter-delete,[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline.stream-monaco-diff-inline-native-ready.stream-monaco-diff-native-stale .monaco-diff-editor .editor.modified .inline-deleted-margin-view-zone,[data-v-ef6e4bb8] .stream-monaco-diff-root.stream-monaco-diff-inline.stream-monaco-diff-inline-native-ready.stream-monaco-diff-native-stale .monaco-diff-editor .editor.modified .stream-monaco-fallback-inline-delete-margin{background:var(--stream-monaco-removed-gutter),var(--stream-monaco-removed-line-fill)!important;display:block!important;height:100%!important;min-height:18px!important;overflow:visible!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .monaco-editor .diff-hidden-lines .center:not(.stream-monaco-unchanged-bridge-source),[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge{--stream-monaco-unchanged-bg: var(--markstream-diff-unchanged-bg) !important;--stream-monaco-unchanged-fg: var(--markstream-diff-unchanged-fg) !important;background:var(--stream-monaco-unchanged-bg)!important;color:var(--stream-monaco-unchanged-fg)!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge{right:calc(var(--stream-monaco-gutter-marker-width) - var(--stream-monaco-unchanged-rail-width) / 2 + (var(--stream-monaco-gutter-gap) * 2))!important;width:auto!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-summary,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-summary:hover,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-summary:focus-visible,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-summary.stream-monaco-focus-visible{background:var(--stream-monaco-unchanged-bg)!important;color:var(--markstream-diff-unchanged-fg)!important;padding-left:calc(var(--stream-monaco-gutter-marker-width) + (var(--stream-monaco-gutter-gap) * 2))!important;padding-right:calc(var(--stream-monaco-gutter-marker-width) + (var(--stream-monaco-gutter-gap) * 2))!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-rail,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge.stream-monaco-diff-unchanged-bridge-line-info .stream-monaco-unchanged-rail,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-reveal,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-reveal:hover,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-reveal:focus-visible,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-reveal.stream-monaco-focus-visible{background:var(--stream-monaco-unchanged-bg)!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-rail{border-right-color:var(--markstream-diff-unchanged-divider)!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-reveal{border-bottom-color:transparent!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-rail.stream-monaco-unchanged-rail-both .stream-monaco-unchanged-reveal:first-child{border-bottom-color:var(--markstream-diff-unchanged-divider)!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-rail.stream-monaco-unchanged-rail-top-only .stream-monaco-unchanged-reveal,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-rail.stream-monaco-unchanged-rail-bottom-only .stream-monaco-unchanged-reveal{border-bottom:0!important}[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-meta,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-count,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-metadata-label,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-reveal,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-reveal:hover,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-reveal:focus-visible,[data-v-ef6e4bb8] .stream-monaco-diff-root .stream-monaco-diff-unchanged-bridge .stream-monaco-unchanged-reveal.stream-monaco-focus-visible{color:var(--markstream-diff-unchanged-fg)!important}[data-v-ef6e4bb8] .monaco-diff-editor:not(.side-by-side) .editor.original .diff-hidden-lines .center{align-items:center;justify-content:center}[data-v-ef6e4bb8] .monaco-diff-editor:not(.side-by-side) .editor.modified .diff-hidden-lines .center{align-items:center;justify-content:center!important;position:relative}[data-v-ef6e4bb8] .monaco-diff-editor:not(.side-by-side) .editor.modified .diff-hidden-lines .center:not(.stream-monaco-clickable){opacity:0!important;pointer-events:none!important}[data-v-ef6e4bb8] .monaco-diff-editor:not(.side-by-side) .editor.modified .diff-hidden-lines .center .stream-monaco-unchanged-meta{justify-content:center!important;padding:0 28px!important}[data-v-ef6e4bb8] .monaco-diff-editor:not(.side-by-side) .editor.original .diff-hidden-lines .center>div:first-child{align-items:center;display:flex;justify-content:center!important;min-width:100%;width:100%!important}[data-v-ef6e4bb8] .markstream-inline-fold-proxy{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:calc(var(--ms-radius) * .5);box-shadow:none;cursor:pointer;inset:0;padding:0;pointer-events:auto;position:absolute;z-index:2}[data-v-ef6e4bb8] .markstream-inline-fold-proxy:hover,[data-v-ef6e4bb8] .markstream-inline-fold-proxy:focus-visible{background:transparent}[data-v-ef6e4bb8] .markstream-inline-fold-proxy:focus-visible{outline:1px solid var(--vscode-focusBorder, currentColor);outline-offset:-1px}.math-inline-wrapper[data-v-6c556261]{position:relative;display:inline-block}.math-inline[data-v-6c556261]{display:inline-block;vertical-align:middle}.math-inline--fallback[data-v-6c556261]{white-space:pre-wrap}.math-inline__loading[data-v-6c556261]{display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.math-inline__spinner[data-v-6c556261]{width:16px;height:16px;border-radius:9999px;border:2px solid color-mix(in srgb,var(--loading-spinner) 25%,transparent);border-top-color:color-mix(in srgb,var(--loading-spinner) 80%,transparent);will-change:transform}.table-node-fade-enter-active[data-v-6c556261],.table-node-fade-leave-active[data-v-6c556261]{transition:opacity var(--ms-duration-standard) var(--ms-ease-standard)}.table-node-fade-enter-from[data-v-6c556261],.table-node-fade-leave-to[data-v-6c556261]{opacity:0}.sr-only[data-v-6c556261]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.math-block[data-v-939191ad]{min-height:var(--ms-size-math-min-height);transition:min-height var(--ms-duration-overlay) var(--ms-ease-standard)}.math-loading-overlay[data-v-939191ad]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(2px);min-height:var(--ms-size-math-min-height)}.math-loading-spinner[data-v-939191ad]{width:20px;height:20px;border:2px solid color-mix(in srgb,var(--loading-spinner) 15%,transparent);border-top-color:color-mix(in srgb,var(--loading-spinner) 80%,transparent);border-radius:50%;animation:math-spin-939191ad .8s linear infinite}@keyframes math-spin-939191ad{to{transform:rotate(360deg)}}.math-rendering[data-v-939191ad]{opacity:.3;transition:opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.math-block__fallback[data-v-939191ad]{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.math-fade-enter-active[data-v-939191ad],.math-fade-leave-active[data-v-939191ad]{transition:all var(--ms-duration-slow) var(--ms-ease-standard)}.math-fade-enter-from[data-v-939191ad],.math-fade-leave-to[data-v-939191ad]{opacity:0}.action-icon{width:var(--ms-action-btn-icon);height:var(--ms-action-btn-icon)}.icon-slot{display:inline-flex;align-items:center;justify-content:center}.icon-slot svg{display:block;width:100%;height:100%}.mermaid-block-container[data-v-73c385f8]{margin:var(--ms-flow-diagram-y) 0;border-color:var(--diagram-border)}.mermaid-block-header[data-v-73c385f8]{padding:var(--ms-inset-panel-y) var(--ms-inset-panel-x);background:var(--diagram-header-bg);border-color:var(--diagram-border)}.mermaid-label-text[data-v-73c385f8]{color:var(--code-action-fg)}.mermaid-mode-toggle-group[data-v-73c385f8]{background:transparent}.mermaid-mode-btn[data-v-73c385f8]{font-size:var(--ms-text-label);color:var(--code-action-fg);opacity:.6}.mermaid-mode-btn[data-v-73c385f8]:hover{opacity:.9}.mermaid-mode-btn.is-active[data-v-73c385f8]{background:hsl(var(--ms-foreground) / .08);color:var(--code-fg);opacity:1}.mermaid-header-actions[data-v-73c385f8]{gap:var(--ms-gap-header-actions)}.mermaid-action-btn[data-v-73c385f8]{font-family:inherit;font-size:var(--ms-text-label);color:var(--code-action-fg)}.mermaid-action-btn[data-v-73c385f8]:hover{background:var(--code-action-hover-bg);color:var(--code-action-hover-fg)}.mermaid-action-btn[data-v-73c385f8]:active{transform:scale(.98)}.mermaid-source-panel[data-v-73c385f8]{padding:var(--ms-inset-panel-body);background:var(--diagram-bg)}.mermaid-source-code[data-v-73c385f8]{color:hsl(var(--ms-foreground))}.mermaid-preview-area[data-v-73c385f8]{background:var(--diagram-bg);min-height:var(--ms-size-diagram-min-height);transition-duration:var(--ms-duration-standard)}.mermaid-modal-overlay[data-v-73c385f8]{background:var(--modal-overlay)}.mermaid-modal-panel[data-v-73c385f8]{background:var(--modal-bg);color:var(--modal-fg);box-shadow:var(--ms-shadow-modal)}._mermaid[data-v-73c385f8]{position:relative;font-family:inherit;content-visibility:auto;contain:content;contain-intrinsic-size:var(--ms-size-diagram-min-height) 240px}._mermaid[data-v-73c385f8] [data-mermaid-svg-layer]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;width:100%;min-height:100%}._mermaid[data-v-73c385f8] svg{width:100%;height:auto;max-height:100%;display:block}.fullscreen ._mermaid[data-v-73c385f8] svg{max-height:none}.fullscreen[data-v-73c385f8]{width:100%;max-height:100%!important;height:100%!important}.mermaid-dialog-enter-from[data-v-73c385f8],.mermaid-dialog-leave-to[data-v-73c385f8]{opacity:0}.mermaid-dialog-enter-active[data-v-73c385f8],.mermaid-dialog-leave-active[data-v-73c385f8]{transition:opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.mermaid-dialog-enter-from .dialog-panel[data-v-73c385f8],.mermaid-dialog-leave-to .dialog-panel[data-v-73c385f8]{transform:translateY(8px) scale(.98);opacity:.98}.mermaid-dialog-enter-to .dialog-panel[data-v-73c385f8],.mermaid-dialog-leave-from .dialog-panel[data-v-73c385f8]{transform:translateY(0) scale(1);opacity:1}.mermaid-dialog-enter-active .dialog-panel[data-v-73c385f8],.mermaid-dialog-leave-active .dialog-panel[data-v-73c385f8]{transition:transform var(--ms-duration-overlay) var(--ms-ease-standard),opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.infographic-block-container[data-v-de34ec4b]{margin:var(--ms-flow-diagram-y) 0;background:var(--diagram-bg);border-color:var(--diagram-border);color:hsl(var(--ms-foreground));box-shadow:var(--ms-shadow-subtle)}.infographic-block-header[data-v-de34ec4b]{padding:var(--ms-inset-panel-y) var(--ms-inset-panel-x);background:var(--diagram-header-bg);border-color:var(--diagram-border);color:hsl(var(--ms-foreground))}.infographic-label[data-v-de34ec4b]{font-size:var(--ms-text-label);color:hsl(var(--ms-muted-foreground))}.action-icon[data-v-de34ec4b]{width:var(--ms-action-btn-icon);height:var(--ms-action-btn-icon)}.icon-slot[data-v-de34ec4b]{display:inline-flex;align-items:center;justify-content:center}.icon-slot[data-v-de34ec4b] svg{display:block;width:100%;height:100%}.infographic-mode-toggle[data-v-de34ec4b]{background:transparent}.infographic-mode-btn[data-v-de34ec4b]{font-size:var(--ms-text-label);color:var(--code-action-fg);opacity:.6;transition:color .15s,background-color .15s,opacity .15s}.infographic-mode-btn[data-v-de34ec4b]:hover{opacity:.9}.infographic-mode-btn.is-active[data-v-de34ec4b]{background:hsl(var(--ms-foreground) / .08);color:var(--code-fg);opacity:1}.infographic-header-actions[data-v-de34ec4b]{gap:var(--ms-gap-header-actions)}.infographic-action-btn[data-v-de34ec4b]{font-family:inherit;color:var(--code-action-fg);transition:background-color .15s,color .15s}.infographic-action-btn[data-v-de34ec4b]:hover{background:var(--code-action-hover-bg);color:var(--code-action-hover-fg)}.infographic-action-btn[data-v-de34ec4b]:active{transform:scale(.98)}.infographic-source[data-v-de34ec4b]{padding:var(--ms-inset-panel-body);background:var(--diagram-bg)}.infographic-source-code[data-v-de34ec4b]{color:hsl(var(--ms-foreground))}.infographic-preview[data-v-de34ec4b]{background:var(--diagram-bg);min-height:var(--ms-size-diagram-min-height);transition-duration:var(--ms-duration-fast)}.infographic-pending-source[data-v-de34ec4b]{position:absolute;inset:0;z-index:1;margin:0;padding:var(--ms-inset-panel-body);overflow:auto;color:hsl(var(--ms-foreground));text-align:left;background:var(--diagram-bg)}.infographic-modal-overlay[data-v-de34ec4b]{background:var(--modal-overlay)}.infographic-modal-panel[data-v-de34ec4b]{background:var(--modal-bg);color:var(--modal-fg);box-shadow:var(--ms-shadow-modal)}.fullscreen[data-v-de34ec4b]{width:100%;max-height:100%!important;height:100%!important}.infographic-dialog-enter-from[data-v-de34ec4b],.infographic-dialog-leave-to[data-v-de34ec4b]{opacity:0}.infographic-dialog-enter-active[data-v-de34ec4b],.infographic-dialog-leave-active[data-v-de34ec4b]{transition:opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.infographic-dialog-enter-from .dialog-panel[data-v-de34ec4b],.infographic-dialog-leave-to .dialog-panel[data-v-de34ec4b]{transform:translateY(8px) scale(.98);opacity:.98}.infographic-dialog-enter-to .dialog-panel[data-v-de34ec4b],.infographic-dialog-leave-from .dialog-panel[data-v-de34ec4b]{transform:translateY(0) scale(1);opacity:1}.infographic-dialog-enter-active .dialog-panel[data-v-de34ec4b],.infographic-dialog-leave-active .dialog-panel[data-v-de34ec4b]{transition:transform var(--ms-duration-overlay) var(--ms-ease-standard),opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.d2-block-container[data-v-3b434cf5]{margin:var(--ms-flow-diagram-y) 0;background:var(--diagram-bg);border-color:var(--diagram-border);color:hsl(var(--ms-foreground));box-shadow:var(--ms-shadow-subtle)}.d2-block-header[data-v-3b434cf5]{padding:var(--ms-inset-panel-y) var(--ms-inset-panel-x);background:var(--diagram-header-bg);border-color:var(--diagram-border);color:hsl(var(--ms-foreground))}.d2-mode-toggle[data-v-3b434cf5]{background:transparent}.mode-btn[data-v-3b434cf5]{font-size:var(--ms-text-label);color:var(--code-action-fg);opacity:.6;transition:opacity .2s,color .2s,background-color .2s}.mode-btn[data-v-3b434cf5]:hover{opacity:.9}.mode-btn.is-active[data-v-3b434cf5]{background:hsl(var(--ms-foreground) / .08);color:var(--code-fg);opacity:1}.d2-header-actions[data-v-3b434cf5]{gap:var(--ms-gap-header-actions)}.d2-action-btn[data-v-3b434cf5]{color:var(--code-action-fg);opacity:.7;transition:opacity .2s,background-color .15s,color .15s}.d2-action-btn[data-v-3b434cf5]:hover{opacity:1;background:var(--code-action-hover-bg);color:var(--code-action-hover-fg)}.d2-action-btn[data-v-3b434cf5]:disabled{opacity:.3;cursor:not-allowed}.d2-block-body[data-v-3b434cf5]{position:relative}.d2-source[data-v-3b434cf5]{padding:var(--ms-inset-panel-body) var(--ms-inset-panel-x);font-family:var(--vscode-editor-font-family, "Fira Code", "SFMono-Regular", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace)}.d2-code[data-v-3b434cf5]{white-space:pre;font-size:14px;line-height:1.5}.d2-render[data-v-3b434cf5]{max-height:var(--ms-size-code-max-height);overflow:auto}.d2-svg[data-v-3b434cf5] svg.markstream-d2-root-svg{width:100%;max-width:100%;height:auto;display:block}.d2-label[data-v-3b434cf5]{font-size:var(--ms-text-label)}.action-icon[data-v-3b434cf5]{width:var(--ms-action-btn-icon);height:var(--ms-action-btn-icon)}.d2-error[data-v-3b434cf5]{color:hsl(var(--ms-destructive))}.markstream-virtual-timeline[data-v-f06d8eb5]{position:relative;display:flex;flex-direction:column;height:100%;min-height:0;overflow:auto;overflow-anchor:none}.markstream-virtual-timeline.is-restoring-thread>.markstream-virtual-timeline__spacer[data-v-f06d8eb5],.markstream-virtual-timeline.is-restoring-thread>.markstream-virtual-timeline__item[data-v-f06d8eb5]{opacity:0;visibility:hidden;pointer-events:none}.markstream-virtual-timeline.is-restoring-thread>.markstream-virtual-timeline__item[data-v-f06d8eb5],.markstream-virtual-timeline__item.is-restored-height-floor[data-v-f06d8eb5]{height:var(--markstream-virtual-item-size);overflow:hidden}.markstream-virtual-timeline__restore-loading[data-v-f06d8eb5]{position:absolute;top:0;left:0;right:0;z-index:10;display:grid;place-items:center;pointer-events:none;overflow:hidden;background:Canvas;contain:strict}.markstream-virtual-timeline__restore-loading-card[data-v-f06d8eb5]{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid rgb(148 163 184 / 32%);border-radius:999px;background:#ffffffeb;color:#334155;font-size:13px;box-shadow:0 8px 24px #0f172a14}.markstream-virtual-timeline__restore-spinner[data-v-f06d8eb5]{width:14px;height:14px;border:2px solid rgb(148 163 184 / 35%);border-top-color:#334155;border-radius:999px;animation:markstream-timeline-restore-spin-f06d8eb5 .8s linear infinite}@keyframes markstream-timeline-restore-spin-f06d8eb5{to{transform:rotate(360deg)}}.markstream-virtual-timeline__spacer[data-v-f06d8eb5]{flex:0 0 auto;overflow-anchor:none}.markstream-virtual-timeline__item[data-v-f06d8eb5]{display:flow-root;flex:0 0 auto;overflow-anchor:none}.markstream-virtual-timeline__default-item[data-v-f06d8eb5]{margin:8px 0;padding:10px 12px;border:1px solid rgb(148 163 184 / 32%);border-radius:8px;background:#f8fafc;color:#0f172a;line-height:1.5;white-space:pre-wrap}.markstream-virtual-timeline__default-item--system-divider[data-v-f06d8eb5]{border:0;background:transparent;color:#64748b;font-size:12px;text-align:center}.markstream-virtual-timeline__default-item--error[data-v-f06d8eb5]{border-color:#f8717173;background:#fef2f2;color:#991b1b}.markstream-virtual-timeline__status[data-v-f06d8eb5]{display:inline-flex;margin-right:8px;color:#475569;font-size:12px;text-transform:uppercase}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.17.0"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.md[data-v-480fdb53]{font:400 var(--content-font-size)/1.6 var(--font-ui);line-height:round(calc(var(--content-font-size) * 1.625),1px);color:var(--color-text);word-break:break-word}.md[data-v-480fdb53] .markdown-renderer{font:400 var(--content-font-size)/1.6 var(--font-ui);line-height:round(calc(var(--content-font-size) * 1.625),1px);color:var(--color-text)}.md[data-v-480fdb53] .markstream-vue,.md[data-v-480fdb53] .markdown-renderer{--code-bg: var(--color-surface-sunken);--code-fg: var(--color-text);--code-border: var(--color-line);--code-header-bg: var(--color-surface);--code-action-fg: var(--color-text-muted);--code-action-hover-fg: var(--color-accent);--markstream-code-fallback-bg: var(--color-surface-sunken);--markstream-code-fallback-fg: var(--color-text);--markstream-code-border-color: var(--color-line);--inline-code-bg: var(--color-inline-code-bg);--inline-code-fg: var(--color-text);--inline-code-border: transparent}.md[data-v-480fdb53] .md-file-link{appearance:none;display:inline;border:0;padding:0;background:transparent;color:var(--color-accent-hover);font:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;cursor:pointer}.md[data-v-480fdb53] .md-file-link:hover{color:var(--color-accent)}.md[data-v-480fdb53] .inline-code .md-file-link{text-underline-offset:1.5px}.md[data-v-480fdb53] .markdown-renderer p,.md[data-v-480fdb53] .markdown-renderer li{font-size:var(--content-font-size);line-height:round(calc(var(--content-font-size) * 1.625),1px)}.md[data-v-480fdb53] .markdown-renderer blockquote,.md[data-v-480fdb53] .markdown-renderer td,.md[data-v-480fdb53] .markdown-renderer th{font-size:var(--md-b2)}.md[data-v-480fdb53] .markdown-renderer img{background:var(--media-alpha-canvas)}.md[data-v-480fdb53] strong{color:color-mix(in srgb,var(--color-text) 86%,var(--color-text-muted));font-weight:var(--weight-semibold)}.md[data-v-480fdb53] h1,.md[data-v-480fdb53] h2,.md[data-v-480fdb53] h3,.md[data-v-480fdb53] h4{color:var(--color-text);font-optical-sizing:auto;font-weight:600;margin:.85em 0 .35em}.md[data-v-480fdb53] h1{font-size:var(--md-h1);line-height:round(calc(var(--md-h1) * 1.63),1px);border-bottom:1px solid var(--color-line);padding-bottom:4px}.md[data-v-480fdb53] h2{font-size:var(--md-h2);line-height:round(calc(var(--md-h2) * 1.6),1px)}.md[data-v-480fdb53] h3{font-size:var(--md-h3);line-height:round(calc(var(--md-h3) * 1.56),1px)}.md[data-v-480fdb53] h4{font-size:var(--md-b2);line-height:round(calc(var(--md-b2) * 1.6),1px);color:var(--color-text-muted)}.md[data-v-480fdb53] p{margin:0}.md[data-v-480fdb53] .node-slot+.node-slot{margin-top:var(--content-font-size)}.md[data-v-480fdb53] .node-slot+.node-slot:has(h1),.md[data-v-480fdb53] .node-slot+.node-slot:has(h2){margin-top:calc(var(--content-font-size) * 2)}.md[data-v-480fdb53] .node-slot+.node-slot:has(h3),.md[data-v-480fdb53] .node-slot+.node-slot:has(h4){margin-top:calc(var(--content-font-size) * 1.5)}.md[data-v-480fdb53] ul,.md[data-v-480fdb53] ol{--md-dot: round(calc(var(--content-font-size) * .375), 1px);list-style:none;margin:0;padding-left:calc(var(--content-font-size) * 2)}.md[data-v-480fdb53] li{position:relative;margin:0;padding:0}.md[data-v-480fdb53] li+li{margin-top:round(calc(var(--content-font-size) * .75),1px)}.md[data-v-480fdb53] li>ul,.md[data-v-480fdb53] li>ol{margin-top:round(calc(var(--content-font-size) * .75),1px);padding-left:calc(var(--content-font-size) * 1.5)}.md[data-v-480fdb53] ul>li:before{content:"";position:absolute;left:calc((var(--md-dot) + var(--content-font-size) * 2) / -2);top:calc((round(calc(var(--content-font-size) * 1.625),1px) - var(--md-dot)) / 2);width:var(--md-dot);height:var(--md-dot);border-radius:50%;background:color-mix(in srgb,var(--color-text) 90%,transparent)}.md[data-v-480fdb53] ul>li:has(>input[type=checkbox]):before,.md[data-v-480fdb53] ul>li:has(>p>input[type=checkbox]):before{content:none}.md[data-v-480fdb53] ul ul>li:before{background:transparent;border:1px solid color-mix(in srgb,var(--color-text) 90%,transparent);box-sizing:border-box}.md[data-v-480fdb53] ol{counter-reset:md-ol}.md[data-v-480fdb53] ol[start],.md[data-v-480fdb53] ol:has(>li[value]){counter-reset:none;list-style:decimal}.md[data-v-480fdb53] ol[start]>li,.md[data-v-480fdb53] ol:has(>li[value])>li{counter-increment:none}.md[data-v-480fdb53] ol[start]>li:before,.md[data-v-480fdb53] ol:has(>li[value])>li:before{content:none}.md[data-v-480fdb53] ol>li{counter-increment:md-ol}.md[data-v-480fdb53] ol>li:before{content:counter(md-ol) ".";position:absolute;top:0;left:calc(var(--content-font-size) * -2);width:calc(var(--content-font-size) * 2);line-height:round(calc(var(--content-font-size) * 1.625),1px);text-align:center;color:var(--color-text)}.md[data-v-480fdb53] :not(pre)>code,.md[data-v-480fdb53] .inline-code{font:.9em var(--font-mono);background:var(--color-inline-code-bg);color:var(--color-text);border:0;padding:0 4px;border-radius:var(--radius-sm)}.md[data-v-480fdb53] strong code,.md[data-v-480fdb53] strong .inline-code,.md[data-v-480fdb53] b code,.md[data-v-480fdb53] b .inline-code{font-weight:var(--weight-semibold)}.md[data-v-480fdb53] .code-block-container{margin:.6em 0;border:.5px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);box-shadow:var(--shadow-xs);overflow:hidden;--vscode-editor-font-size: var(--text-sm);--vscode-editor-line-height: calc(var(--text-sm) * var(--leading-normal))}.md[data-v-480fdb53] .code-block-header{background:var(--color-surface);border-bottom:.5px solid var(--color-line);padding:4px 6px 4px 12px;color:var(--color-text-muted);font:var(--text-xs) var(--font-ui);--ms-gap-header-main: var(--space-1-5)}.md[data-v-480fdb53] .code-block-header *{color:var(--color-text-muted);font:var(--text-xs) var(--font-ui)}.md[data-v-480fdb53] .code-block-header .code-header-main{font-family:var(--font-ui)}.md[data-v-480fdb53] .code-block-header .code-header-title{font-size:var(--text-sm);font-weight:var(--weight-medium)}.md[data-v-480fdb53] .code-block-header .code-action-btn{color:var(--color-text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.md[data-v-480fdb53] .code-block-header .code-action-btn:hover{background:var(--color-hover);color:var(--color-text)}.md[data-v-480fdb53] .code-block-header .code-action-btn:hover *{color:var(--color-text)}.md[data-v-480fdb53] .code-block-header .code-action-btn:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.md[data-v-480fdb53] .code-block-header .code-action-btn *{pointer-events:none}.md[data-v-480fdb53] .code-block-header .md-code-wrap-toggle[aria-pressed=true],.md[data-v-480fdb53] .code-block-header .md-code-nums-toggle[aria-pressed=true]{background:var(--color-selected);color:var(--color-text)}.md[data-v-480fdb53] .code-block-header .md-code-wrap-toggle[aria-pressed=true] *,.md[data-v-480fdb53] .code-block-header .md-code-nums-toggle[aria-pressed=true] *{background:transparent;color:var(--color-text)}.md[data-v-480fdb53] .code-block-header .md-code-wrap-toggle[aria-pressed=true]:hover,.md[data-v-480fdb53] .code-block-header .md-code-nums-toggle[aria-pressed=true]:hover{background:var(--color-selected-hover)}.md[data-v-480fdb53] .code-block-container.md-code-wrap pre{white-space:pre-wrap!important;overflow-wrap:anywhere}.md[data-v-480fdb53] .code-block-container ::selection,.md[data-v-480fdb53] .diff-wrap ::selection{background:var(--color-code-selection);color:var(--color-code-selection-text)}.md[data-v-480fdb53] .code-block-shell-content,.md[data-v-480fdb53] .markstream-pre{background:var(--color-well)}.md[data-v-480fdb53] .code-editor-container{line-height:var(--leading-normal);--diffs-gap-block: var(--code-pad-block)}.md[data-v-480fdb53] .code-editor-container diffs-container{--diffs-line-height: var(--leading-normal)}.md[data-v-480fdb53] .code-pre-fallback>.markstream-pre__line-numbers{display:none}.md[data-v-480fdb53] .code-block-container .code-pre-fallback{padding:var(--code-pad-block) var(--space-3);line-height:var(--leading-normal)!important}.md[data-v-480fdb53] .code-block-container pre:not(.code-pre-fallback):not(.markstream-pre--line-numbers),.md[data-v-480fdb53] .markstream-pre:not(.code-pre-fallback):not(.markstream-pre--line-numbers){margin:0;padding:var(--code-pad-block) var(--space-3);overflow-x:auto;font:var(--text-sm)/var(--leading-normal) var(--font-mono)}.md[data-v-480fdb53] .code-block-container pre code{font:inherit;color:var(--color-text);background:none;border:none;padding:0;border-radius:0}.md[data-v-480fdb53] .markstream-pre,.md[data-v-480fdb53] .code-pre-fallback,.md[data-v-480fdb53] .code-block-shell-content pre:not(.shiki),.md[data-v-480fdb53] .code-block-shell-content pre:not(.shiki) code{color:var(--color-text)}.md[data-v-480fdb53] a{color:var(--color-accent);text-decoration:none}.md[data-v-480fdb53] a:hover{text-decoration:underline}.md[data-v-480fdb53] a.mention-pill{color:var(--color-text-muted);text-decoration:none}.md[data-v-480fdb53] a.mention-folder:hover{text-decoration:none}.md[data-v-480fdb53] .katex-display{overflow-x:auto;overflow-y:hidden;padding:2px 0 6px;margin:.6em 0}.md[data-v-480fdb53] .math-inline{vertical-align:baseline}.md[data-v-480fdb53] blockquote{position:relative;margin:0;padding:0 0 0 round(calc(var(--content-font-size) * 1.5),1px);border-left:none;color:var(--color-text)}.md[data-v-480fdb53] blockquote:before{content:"";position:absolute;left:calc(round(calc(var(--content-font-size) * 1.5),1px)/2 - 1px);top:2px;bottom:2px;width:2px;border-radius:2px;background:var(--color-line)}.md[data-v-480fdb53] .blockquote>.paragraph-node{margin:0}.md[data-v-480fdb53] .blockquote>.paragraph-node+.paragraph-node{margin-top:var(--content-font-size)}.md[data-v-480fdb53] hr{border:none;border-top:1px solid var(--color-line);margin:0}.md[data-v-480fdb53] table:not(.table-node){border-collapse:collapse;font-size:var(--text-lg);margin:.5em 0}.md[data-v-480fdb53] table:not(.table-node) th,.md[data-v-480fdb53] table:not(.table-node) td{border:1px solid var(--color-line);padding:4px 10px;text-align:left}.md[data-v-480fdb53] table:not(.table-node) th{background:var(--color-surface);color:var(--color-text);font-weight:var(--weight-medium)}.md[data-v-480fdb53] .table-node-wrapper{width:100%;max-width:100%!important;min-width:0;overflow-x:auto!important;scrollbar-gutter:auto!important;position:relative;--table-cell-cap: var(--p-table-cell-max)}.md[data-v-480fdb53] .table-node{--table-border: var(--color-line);--table-header-bg: var(--color-surface);font-size:var(--text-lg);margin:.5em 0;width:max-content!important;min-width:100%;max-width:none!important;table-layout:auto!important}.md[data-v-480fdb53] .table-node th,.md[data-v-480fdb53] .table-node td{text-align:left;vertical-align:top;max-width:var(--table-cell-cap)}.md[data-v-480fdb53] .table-node .text-node{display:inline-block;max-width:var(--table-cell-cap);vertical-align:top}.md[data-v-480fdb53] .md-table-fade{display:none;position:absolute;top:0;bottom:0;right:0;width:36px;z-index:1;background:linear-gradient(to right,transparent,color-mix(in srgb,var(--color-bg) 65%,transparent) 55%,var(--color-bg));pointer-events:none;transition:opacity var(--duration-base) var(--ease-out)}.md[data-v-480fdb53] .md-table-at-end .md-table-fade{opacity:0}.md[data-v-480fdb53] .md-table-toggle{display:none;position:absolute;top:6px;right:6px;z-index:2;align-items:center;justify-content:center;width:26px;height:26px;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);cursor:pointer;opacity:0;transition:opacity var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}@container (min-width: 760px){.md[data-v-480fdb53] .md-table-fade.md-table-toggle--show,.md[data-v-480fdb53] .md-table-toggle.md-table-toggle--show{display:block}.md[data-v-480fdb53] .md-table-toggle.md-table-toggle--show{display:inline-flex}}.md[data-v-480fdb53] .table-node-wrapper:hover .md-table-toggle.md-table-toggle--show,.md[data-v-480fdb53] .table-node-wrapper:focus-within .md-table-toggle.md-table-toggle--show,.md[data-v-480fdb53] .table-node-wrapper.md-table-wide .md-table-toggle.md-table-toggle--show{opacity:1}.md[data-v-480fdb53] .md-table-toggle:hover{background:var(--color-surface-sunken);color:var(--color-text)}.md[data-v-480fdb53] .md-table-toggle:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.md[data-v-480fdb53] .md-table-toggle svg{display:block}.md[data-v-480fdb53] .table-node tbody tr:hover{background-color:transparent!important}.md-frontmatter[data-v-480fdb53]{margin:0 0 var(--space-2);padding:var(--space-3) var(--space-4);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);box-shadow:var(--shadow-xs);overflow-x:auto;color:var(--color-text-muted);font:var(--text-sm)/1.65 var(--font-mono)}.diff-wrap[data-v-480fdb53]{margin:.6em 0;border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface-sunken);box-shadow:var(--shadow-xs);overflow:hidden}.diff-bar[data-v-480fdb53]{display:flex;align-items:center;gap:6px;padding:4px 12px;background:var(--color-surface);border-bottom:1px solid var(--color-line);color:var(--color-text-muted);font:var(--text-xs) var(--font-mono)}.diff-lang[data-v-480fdb53]{margin-right:auto}.diff-copy[data-v-480fdb53]{display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;padding:2px 6px;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.diff-copy[data-v-480fdb53]:hover{background:var(--color-surface-sunken);color:var(--color-text)}.diff-copy[data-v-480fdb53]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.diff-bar[data-v-480fdb53] .ui-icon-button[aria-pressed=true]{background:var(--color-selected);color:var(--color-text)}.diff-bar[data-v-480fdb53] .ui-icon-button[aria-pressed=true]:hover{background:var(--color-selected-hover)}.diff-bar[data-v-480fdb53] .ui-icon-button svg{width:var(--p-ic-sm);height:var(--p-ic-sm)}.diff-wrap.md-code-wrap .diff-pre[data-v-480fdb53]{white-space:pre-wrap;overflow-wrap:anywhere}.diff-wrap.md-code-wrap .diff-pre code[data-v-480fdb53]{width:auto}.diff-wrap.md-code-wrap:not(.md-code-nums) .diff-line[data-v-480fdb53]{padding-left:calc(var(--space-3) + var(--diff-sign-col))}.diff-wrap.md-code-wrap:not(.md-code-nums) .diff-sign[data-v-480fdb53]{margin-left:calc(-1 * var(--diff-sign-col))}.diff-wrap.md-code-nums .diff-pre[data-v-480fdb53]{counter-reset:md-diff-line;position:relative;isolation:isolate}.diff-wrap.md-code-nums .diff-pre[data-v-480fdb53]:after{content:"";position:absolute;left:0;top:0;bottom:0;width:calc(var(--space-3) + var(--md-nums-gutter, 4ch));background:var(--color-selected);border-right:var(--p-hairline) solid var(--color-line);pointer-events:none;user-select:none;z-index:1}.diff-wrap.md-code-nums .diff-line[data-v-480fdb53]{padding-left:calc(var(--space-3) + var(--md-nums-gutter, 4ch) + var(--diff-sign-col))}.diff-wrap.md-code-nums .diff-line[data-v-480fdb53]:not(.diff-hunk){counter-increment:md-diff-line}.diff-wrap.md-code-nums .diff-line[data-v-480fdb53]:not(.diff-hunk):before{content:counter(md-diff-line);display:inline-block;position:relative;z-index:2;width:calc(var(--md-nums-gutter, 4ch) - 1ch);overflow:visible;margin-left:calc(-1 * (var(--md-nums-gutter, 4ch) + var(--diff-sign-col)));margin-right:1ch;text-align:right;color:var(--color-text-faint);user-select:none}.diff-pre[data-v-480fdb53]{margin:0;padding:var(--code-pad-block) 0;overflow-x:auto;background:var(--color-surface-sunken)}.diff-pre code[data-v-480fdb53]{display:block;width:max-content;min-width:100%;font:var(--text-sm)/var(--leading-normal) var(--font-mono);color:var(--color-text)}.diff-line[data-v-480fdb53]{display:block;width:100%;padding:0 var(--space-3)}.diff-sign[data-v-480fdb53]{display:inline-block;width:var(--diff-sign-col);text-align:center;color:var(--color-text-muted);user-select:none}.diff-text[data-v-480fdb53]{color:var(--color-text)}.diff-add[data-v-480fdb53]{background:var(--color-success-soft);box-shadow:inset 2px 0 color-mix(in srgb,var(--color-success) 55%,transparent)}.diff-add .diff-sign[data-v-480fdb53]{color:var(--color-success)}.diff-del[data-v-480fdb53]{background:var(--color-danger-soft);box-shadow:inset 2px 0 color-mix(in srgb,var(--color-danger) 55%,transparent)}.diff-del .diff-sign[data-v-480fdb53]{color:var(--color-danger)}.diff-hunk[data-v-480fdb53]{background:var(--color-surface)}.diff-hunk .diff-text[data-v-480fdb53]{color:var(--color-text-muted)}.md[data-v-480fdb53],.md .markdown-renderer[data-v-480fdb53]{font-family:var(--sans)}.md .code-block-container[data-v-480fdb53],.md .diff-wrap[data-v-480fdb53]{border-radius:var(--radius-md)}.md :not(pre)>code[data-v-480fdb53],.md .inline-code[data-v-480fdb53]{border-radius:var(--radius-sm)}.hl-code[data-v-fda206f6]{border:.5px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);overflow:auto;max-height:calc(24 * 1.5 * var(--ui-font-size));overscroll-behavior:contain;font-family:var(--font-mono);font-size:var(--code-font-size);line-height:var(--leading-normal);font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none}.hl-code[data-v-fda206f6]:not(.framed){border:none;border-radius:0;background:transparent;max-height:none;overflow:visible}.hl-body[data-v-fda206f6]{width:max-content;min-width:100%;padding:var(--space-1) 0 var(--space-2)}.hl-code.plain-pad .hl-body[data-v-fda206f6]{padding-left:var(--space-3)}.hl-row[data-v-fda206f6]{display:flex;align-items:flex-start;min-height:calc(1em * var(--leading-normal));white-space:pre;width:100%}.hl-gutter[data-v-fda206f6]{flex:none;box-sizing:content-box;min-width:var(--gutter-ch, 4ch);padding:0 var(--space-2);text-align:right;color:var(--color-text-faint);user-select:none;border-right:.5px solid var(--color-line);font-variant-numeric:tabular-nums}.hl-sign[data-v-fda206f6]{flex:none;width:16px;text-align:center;color:var(--color-text-muted);user-select:none}.hl-text[data-v-fda206f6]{flex:none;padding-right:14px;white-space:pre;color:var(--color-text)}.hl-gutter+.hl-text[data-v-fda206f6]{padding-left:var(--space-2)}.hl-code.wrap .hl-body[data-v-fda206f6]{width:100%}.hl-code.wrap .hl-text[data-v-fda206f6]{flex:1 1 auto;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}.row-add[data-v-fda206f6]{background:var(--color-diff-add-bg)}.row-add .hl-sign[data-v-fda206f6]{color:var(--color-success)}.row-del[data-v-fda206f6]{background:var(--color-diff-del-bg)}.row-del .hl-sign[data-v-fda206f6]{color:var(--color-danger)}.row-hunk[data-v-fda206f6]{background:var(--color-surface-sunken)}.row-hunk .hl-text[data-v-fda206f6]{color:var(--color-text-muted)}.hl-code.gutter .row-add[data-v-fda206f6]{box-shadow:inset 2px 0 color-mix(in srgb,var(--color-success) 55%,transparent)}.hl-code.gutter .row-del[data-v-fda206f6]{box-shadow:inset 2px 0 color-mix(in srgb,var(--color-danger) 55%,transparent)}.open-in[data-v-11198611]{display:inline-flex;align-items:stretch;flex:none;height:26px;border:.5px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-xs);overflow:hidden}.open-in[data-v-11198611],.open-in[data-v-11198611] *{-webkit-app-region:no-drag}.open-in-main[data-v-11198611],.open-in-caret[data-v-11198611]{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;padding:0}.open-in-main[data-v-11198611]{width:30px}.open-in-caret[data-v-11198611]{width:22px}.open-in-main[data-v-11198611]:hover:not(:disabled),.open-in-caret[data-v-11198611]:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-strong)}.open-in-main[data-v-11198611]:focus-visible,.open-in-caret[data-v-11198611]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.open-in-main[data-v-11198611]:disabled,.open-in-caret[data-v-11198611]:disabled{cursor:default;opacity:.5}.open-in.open .open-in-caret[data-v-11198611]{background:var(--color-selected);color:var(--color-text-strong)}.open-in-sep[data-v-11198611]{flex:none;width:.5px;margin:5px 0;background:var(--color-line)}.open-in-icon[data-v-11198611]{width:16px;height:16px;border-radius:4px}.open-in-menu[data-v-11198611]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.om-icon[data-v-11198611]{width:16px;height:16px;flex:none;border-radius:4px}.om-label[data-v-11198611]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-file-head .ui-panel-header__title{font:400 var(--ui-c1) var(--font-ui);direction:rtl;text-align:left}.panel-file-head-actions{margin-left:auto;min-width:0;flex:none;display:flex;align-items:center;gap:var(--space-2)}.file-preview[data-v-c153b5d6]{display:flex;flex-direction:column;height:100%;background:var(--bg);font-family:var(--mono);min-width:0}.fp-empty[data-v-c153b5d6],.fp-loading[data-v-c153b5d6]{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:var(--ui-font-size)}.fp-menu[data-v-c153b5d6]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.fp-check[data-v-c153b5d6]{color:var(--color-success)}.fp-body[data-v-c153b5d6]{flex:1;min-height:0;overflow:auto;padding-bottom:var(--pfc-host-h, 0px)}.file-preview.fp-refreshing .fp-body[data-v-c153b5d6]{opacity:.6}.fp-markdown[data-v-c153b5d6]{padding:16px 20px}.fp-code[data-v-c153b5d6]{background:var(--bg)}.fp-code[data-v-c153b5d6] .hl-row.target,.fp-table tr.target th[data-v-c153b5d6],.fp-table tr.target td[data-v-c153b5d6]{background:var(--color-accent-soft)}.fp-html-frame[data-v-c153b5d6],.fp-pdf-frame[data-v-c153b5d6]{width:100%;height:100%;border:0;background:var(--color-surface-raised)}.fp-pdf-wrap[data-v-c153b5d6]{background:var(--panel2)}.fp-table-wrap[data-v-c153b5d6]{background:var(--bg)}.fp-table[data-v-c153b5d6]{border-collapse:collapse;min-width:100%;font:var(--code-font-size)/var(--leading-normal) var(--mono)}.fp-table th[data-v-c153b5d6]{position:sticky;left:0;z-index:1;width:44px;min-width:44px;padding:2px 8px;text-align:right;color:var(--faint);background:var(--panel);border-right:.5px solid var(--line2);user-select:none}.fp-table td[data-v-c153b5d6]{padding:2px 10px;border-right:.5px solid var(--line2);border-bottom:.5px solid var(--line2);white-space:pre}.fp-image-wrap[data-v-c153b5d6]{display:flex;align-items:center;justify-content:center;padding:24px;background:var(--panel2)}.fp-image[data-v-c153b5d6]{max-width:100%;max-height:100%;object-fit:contain;border:.5px solid var(--line);border-radius:4px;background:var(--media-alpha-canvas)}.fp-image.actual[data-v-c153b5d6]{max-width:none;max-height:none}.fp-binary-wrap[data-v-c153b5d6]{display:flex;align-items:center;justify-content:center}.fp-binary-card[data-v-c153b5d6]{display:flex;align-items:center;gap:12px;padding:20px 24px;border:.5px solid var(--line);border-radius:6px;background:var(--panel);color:var(--muted);font-size:var(--ui-font-size);margin:32px auto;max-width:480px}.fp-binary-icon[data-v-c153b5d6]{color:var(--faint);flex:none}.fp-error[data-v-c153b5d6]{flex-direction:column;padding:24px;text-align:center}@keyframes spin-c153b5d6{to{transform:rotate(360deg)}}.spinner[data-v-c153b5d6]{display:inline-block;width:14px;height:14px;border:.5px solid var(--line);border-top-color:var(--color-accent);border-radius:50%;animation:spin-c153b5d6 .7s linear infinite}@media(max-width:640px){.fp-markdown[data-v-c153b5d6]{padding:14px 16px}.fp-body.fp-code[data-v-c153b5d6]{-webkit-overflow-scrolling:touch}}.fp-empty[data-v-c153b5d6],.fp-loading[data-v-c153b5d6]{font-family:var(--sans)}.fp-binary-card[data-v-c153b5d6]{border:.5px solid var(--color-line);border-radius:var(--radius-md)}.fp-binary-label[data-v-c153b5d6]{font-family:var(--sans)}.fp-image[data-v-c153b5d6]{border-radius:var(--radius-md)}.seg-btn[data-v-c153b5d6]{font-family:var(--sans)}.gload[data-v-f0064e51]{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;min-width:100vw;min-height:100dvh;z-index:var(--z-toast);display:flex;align-items:center;justify-content:center;background:var(--bg)}.gload-box[data-v-f0064e51]{display:flex;flex-direction:column;align-items:center;gap:22px;transform:translateY(-6%)}.gload-logo[data-v-f0064e51]{width:128px;height:auto;color:var(--color-text);animation:gload-pop-f0064e51 .55s cubic-bezier(.22,1,.36,1) both}.gload-text[data-v-f0064e51]{font-family:var(--mono);font-size:var(--text-base);color:var(--muted);letter-spacing:.04em}.gload-textbox[data-v-f0064e51]{display:flex;flex-direction:column;align-items:center;gap:6px}.gload-stage[data-v-f0064e51]{font-size:var(--text-sm);color:var(--muted)}.gload-issue[data-v-f0064e51]{max-width:420px;text-align:center;font-size:var(--text-xs);color:var(--color-warning);overflow-wrap:anywhere}.gload-issue-detail[data-v-f0064e51]{max-width:420px;text-align:center;font-size:var(--text-xs);color:var(--muted);overflow-wrap:anywhere}@keyframes gload-pop-f0064e51{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.gload-logo[data-v-f0064e51]{animation:none}}.gload-text[data-v-f0064e51]{font-family:var(--sans)}.doodle-host[data-v-3f5a44e8]{position:relative;width:100%;aspect-ratio:338 / 152;display:flex;align-items:center;justify-content:center}.doodle-canvas[data-v-3f5a44e8]{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .25s ease}.doodle-canvas.ready[data-v-3f5a44e8]{opacity:1}@media(prefers-reduced-motion:reduce){.doodle-canvas[data-v-3f5a44e8]{transition:none}}.mascot-host[data-v-29863a27]{position:relative;width:100%;aspect-ratio:72 / 100}.mascot-fallback[data-v-29863a27]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;width:86.5%;height:auto}.mascot-canvas[data-v-29863a27]{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .25s ease}.mascot-canvas.ready[data-v-29863a27]{opacity:1}@media(prefers-reduced-motion:reduce){.mascot-canvas[data-v-29863a27]{transition:none}}.emoji-picker[data-v-c65bec16]{--ep-cell: 26px}.ep-search[data-v-c65bec16]{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-faint)}.ep-search[data-v-c65bec16]:hover,.ep-search[data-v-c65bec16]:focus-within{background:var(--color-surface-sunken)}.ep-input[data-v-c65bec16]{flex:1;min-width:0;height:calc(var(--ep-cell) + 2px);font-size:var(--text-sm);color:var(--color-text);background:transparent;border:none;outline:none}.ep-input[data-v-c65bec16]::placeholder{color:var(--color-text-faint)}.ep-scroll[data-v-c65bec16]{max-height:calc(var(--ep-cell) * 10 + var(--space-1));overflow-y:auto;padding:0 var(--space-1)}.ep-label[data-v-c65bec16]{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--color-text-faint);user-select:none}.ep-grid[data-v-c65bec16]{display:grid;grid-template-columns:repeat(8,var(--ep-cell));gap:var(--space-1);padding-bottom:var(--space-1)}.ep-e[data-v-c65bec16]{height:var(--ep-cell);display:grid;place-items:center;padding:0;font-size:var(--text-lg);background:transparent;border:none;border-radius:var(--radius-xs);cursor:pointer}.ep-e[data-v-c65bec16]:hover{background:var(--color-hover)}.ep-e[data-v-c65bec16]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ep-e.sel[data-v-c65bec16]{background:var(--color-accent-soft)}.ep-empty[data-v-c65bec16]{padding:var(--space-3) var(--space-2);font-size:var(--text-xs);color:var(--color-text-faint);text-align:center;user-select:none}.se[data-v-d12fc94d]{--se-pad-x: var(--space-2);display:block;margin:0;padding:8px var(--se-pad-x);border-radius:var(--radius-sm);font-family:var(--font-ui);color:var(--color-text);cursor:pointer;position:relative}.se[data-v-d12fc94d]:hover{background:var(--sb-hover, var(--color-hover));color:var(--color-text)}.se.on[data-v-d12fc94d]{background:var(--sb-selected, var(--color-selected));color:var(--color-text)}.row[data-v-d12fc94d]{display:flex;align-items:center;gap:var(--sb-gap, 6px);min-width:0}.left[data-v-d12fc94d]{display:flex;align-items:center;flex:1;min-width:0}.lead[data-v-d12fc94d]{width:var(--sb-gutter, 16px);flex:none;display:inline-flex;align-items:center;justify-content:center}.unread-dot[data-v-d12fc94d]{width:7px;height:7px;border-radius:var(--radius-full);background:var(--color-accent)}.ha .complete-btn[data-v-d12fc94d]:hover{color:var(--color-success)}.t[data-v-d12fc94d]{--sb-fade: 0px;--sb-fade-len: 16px;color:inherit;font-size:var(--ui-font-size-sm);font-weight:450;line-height:var(--leading-tight);user-select:none;flex:1;min-width:0;overflow:hidden;text-overflow:clip;white-space:nowrap;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - var(--sb-fade) - var(--sb-fade-len)),transparent calc(100% - var(--sb-fade)));mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - var(--sb-fade) - var(--sb-fade-len)),transparent calc(100% - var(--sb-fade)))}.se:hover .t[data-v-d12fc94d]{--sb-fade: 34px;--sb-fade-len: 26px}.se:has(.ui-badge):hover .t[data-v-d12fc94d]{--sb-fade: 0px;--sb-fade-len: 16px}.t .emoji[data-v-d12fc94d]{padding:0;background:transparent;border:none;cursor:pointer}.t .emoji[data-v-d12fc94d]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.sub[data-v-d12fc94d]{display:flex;align-items:center;gap:var(--space-1);margin:var(--space-1) 0 0;color:var(--color-text-faint);font-size:var(--text-xs);line-height:var(--leading-tight);user-select:none}.sub-icon[data-v-d12fc94d]{flex:none;color:var(--color-text-muted)}.pr[data-v-d12fc94d]{display:inline-flex;align-items:center;gap:var(--space-05);flex:none;padding:1px var(--space-1);border:.5px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-2xs);font-weight:var(--weight-medium);line-height:1;cursor:pointer}.pr[data-v-d12fc94d]:hover{border-color:var(--color-line-strong)}.pr[data-v-d12fc94d]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.pr--open[data-v-d12fc94d],.pr--open[data-v-d12fc94d]:hover{background:var(--color-success-soft);border-color:var(--color-success-bd);color:var(--color-success)}.pr--merged[data-v-d12fc94d],.pr--merged[data-v-d12fc94d]:hover{background:var(--color-done-soft);border-color:var(--color-done-bd);color:var(--color-done)}.sub-text[data-v-d12fc94d]{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent);mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent)}.ts[data-v-d12fc94d]{color:var(--color-text-faint);font-size:var(--text-xs);font-family:var(--font-ui);font-weight:475;line-height:var(--leading-tight);font-variant-numeric:tabular-nums;text-align:right}.act[data-v-d12fc94d]{position:relative;flex:none;align-self:stretch;display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--sb-gap, 6px);min-width:var(--icon-button-sm)}.act .ha[data-v-d12fc94d]{position:absolute;top:0;bottom:0;right:calc(var(--sb-action-inset, 3px) - var(--se-pad-x));display:inline-flex;align-items:center;gap:2px;opacity:0;visibility:hidden;border-radius:var(--radius-sm);transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.se:hover .ha[data-v-d12fc94d]{opacity:1;visibility:visible;transition:opacity var(--duration-fast) var(--ease-out)}.act .ts[data-v-d12fc94d]{transition:opacity var(--duration-fast) var(--ease-out)}.se:hover .act .ts[data-v-d12fc94d]{opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.act .st[data-v-d12fc94d]{display:inline-flex;align-items:center;transition:opacity var(--duration-fast) var(--ease-out)}.se:hover .act .st[data-v-d12fc94d]{opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.act .ui-badge[data-v-d12fc94d]{transition:opacity var(--duration-fast) var(--ease-out)}.se:hover .act .ui-badge[data-v-d12fc94d]{opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.menu[data-v-d12fc94d],.picker[data-v-d12fc94d]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.menu-pop-enter-active[data-v-d12fc94d]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-d12fc94d]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-d12fc94d],.menu-pop-leave-to[data-v-d12fc94d]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.menu-time[data-v-d12fc94d]{padding:var(--space-1) var(--space-2);color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:default;user-select:text}.rename-wrap[data-v-d12fc94d]{position:relative;display:flex;align-items:center;flex:1;min-width:0;background:var(--color-bg);border:.5px solid var(--color-accent);border-radius:var(--radius-xs)}.rename-input[data-v-d12fc94d]{flex:1;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text);background:transparent;border:none;padding:1px 4px;outline:none;min-width:0}.rename-wrap.generating .rename-input[data-v-d12fc94d]{visibility:hidden}.gen-dots[data-v-d12fc94d]{position:absolute;left:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:3px;pointer-events:none}.gen-dots i[data-v-d12fc94d]{width:3px;height:3px;border-radius:var(--radius-full, 50%);background:var(--color-accent);animation:gen-title-dot-d12fc94d .9s var(--ease-out) infinite}.gen-dots i[data-v-d12fc94d]:nth-child(2){animation-delay:.15s}.gen-dots i[data-v-d12fc94d]:nth-child(3){animation-delay:.3s}@keyframes gen-title-dot-d12fc94d{0%,60%,to{opacity:.3;transform:translate(0)}30%{opacity:1;transform:translate(2px)}}.gen-title-btn[data-v-d12fc94d]{flex:none;margin-right:1px;color:var(--color-accent)}.gen-title-btn[data-v-d12fc94d]:hover:not(:disabled){color:var(--color-accent-hover);background:transparent}.sessions .se[data-v-d12fc94d]{margin:0;border-radius:var(--radius-sm);--se-pad-x: calc(var(--sb-pad-x, 20px) - var(--sb-inset, 12px));padding:8px var(--se-pad-x)}.sessions .se.flat+.se.flat[data-v-d12fc94d]{margin-top:var(--space-05)}.sessions .se .rename-input[data-v-d12fc94d]{border-radius:var(--radius-sm);font-family:var(--sans)}.pinned-label[data-v-bc0f11c6]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 var(--sb-action-inset) var(--space-1) var(--space-2);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--faint);user-select:none}.pinned-title[data-v-bc0f11c6]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pinned-toggle[data-v-bc0f11c6]{color:var(--faint);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.pinned-label:hover .pinned-toggle[data-v-bc0f11c6],.pinned-label:focus-within .pinned-toggle[data-v-bc0f11c6],.pinned-toggle--on[data-v-bc0f11c6]{opacity:1}.pinned-toggle[data-v-bc0f11c6]:hover{color:var(--dim)}.pinned-toggle svg[data-v-bc0f11c6]{width:13px;height:13px}.se-locate-flash[data-v-bc0f11c6]{isolation:isolate}.se-locate-flash[data-v-bc0f11c6]:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:var(--radius-sm);background:var(--color-accent-soft);pointer-events:none;animation:se-locate-fade-bc0f11c6 var(--duration-flash) var(--ease-out) forwards}@keyframes se-locate-fade-bc0f11c6{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.se-locate-flash[data-v-bc0f11c6]:before{animation:none}}.pinned-rows[data-v-bc0f11c6]{max-height:40vh;overflow-y:auto;padding:0 var(--sb-inset);--overlay-scrollbar-thumb-min: var(--space-6);scrollbar-width:none}.pinned-rows[data-v-bc0f11c6]::-webkit-scrollbar{display:none}.pinned-thumb[data-v-bc0f11c6]{position:absolute;right:0;width:var(--space-1);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-text) 12%,transparent);opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out);z-index:var(--z-raised);touch-action:none}.pinned-thumb.visible[data-v-bc0f11c6]{opacity:1;pointer-events:auto}.pinned-thumb.visible[data-v-bc0f11c6]:hover{background:color-mix(in srgb,var(--color-text) 25%,transparent)}.pinned-thumb[data-v-bc0f11c6]:before{content:"";position:absolute;top:0;bottom:0;left:calc(-1 * var(--space-2));right:0}.pinned-rows-wrap[data-v-bc0f11c6]{position:relative;margin:0 calc(var(--sb-inset) * -1);--pinned-seam-down: linear-gradient(to bottom, color-mix(in srgb, var(--color-text) 1.5%, transparent), transparent 35%), linear-gradient(to bottom, color-mix(in srgb, var(--color-text) 1%, transparent), transparent 65%), linear-gradient(to bottom, color-mix(in srgb, var(--color-text) .75%, transparent), transparent);--pinned-seam-up: linear-gradient(to top, color-mix(in srgb, var(--color-text) 1.5%, transparent), transparent 35%), linear-gradient(to top, color-mix(in srgb, var(--color-text) 1%, transparent), transparent 65%), linear-gradient(to top, color-mix(in srgb, var(--color-text) .75%, transparent), transparent)}.pinned-seam[data-v-bc0f11c6]{position:absolute;left:0;right:0;height:var(--p-sidebar-seam-h);pointer-events:none;opacity:0;z-index:var(--z-raised);transition:opacity var(--duration-slow) var(--ease-out)}.pinned-seam--top[data-v-bc0f11c6]{top:0;border-top:var(--p-hairline) solid var(--line);background:var(--pinned-seam-down)}.pinned-seam--bottom[data-v-bc0f11c6]{bottom:0;border-bottom:var(--p-hairline) solid var(--line);background:var(--pinned-seam-up)}.pinned-rows-wrap.scrolled .pinned-seam--top[data-v-bc0f11c6],.pinned-rows-wrap.more-below .pinned-seam--bottom[data-v-bc0f11c6]{opacity:1}.pinned-resize[data-v-bc0f11c6]{height:var(--space-1);position:relative;background:transparent;touch-action:none;margin:calc(var(--space-05) * -1) calc(var(--sb-inset) * -1);z-index:var(--z-dropdown)}.pinned-resize-bar[data-v-bc0f11c6]{position:absolute;top:50%;left:0;right:0;height:var(--space-05);translate:0 -50%;background:transparent;transition:background var(--duration-fast) var(--ease-out)}.pinned-resize:hover .pinned-resize-bar[data-v-bc0f11c6]{background:var(--color-selected)}.pinned-resize.dragging .pinned-resize-bar[data-v-bc0f11c6]{background:var(--color-line-strong)}.pinned-resize[data-v-bc0f11c6]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.pin-row.dragging[data-v-bc0f11c6]{opacity:.45}.pinned.drop-active[data-v-bc0f11c6]{border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px var(--color-accent)}.rh[data-v-93f4a7d0]{width:4px;flex:none;position:relative;align-self:stretch;background:transparent;touch-action:none;margin:0 -2px;z-index:var(--z-dropdown)}.rh-bar[data-v-93f4a7d0]{position:absolute;inset:0 1px;background:transparent;transition:background .12s}.rh:hover .rh-bar[data-v-93f4a7d0]{background:var(--color-selected)}.rh.dragging .rh-bar[data-v-93f4a7d0]{background:var(--color-line-strong)}.rh[data-v-93f4a7d0]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}/** - * Copyright (c) 2014 The xterm.js authors. All rights reserved. - * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License) - * https://github.com/chjj/term.js - * @license MIT - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - * - * Originally forked from (with the author's permission): - * Fabrice Bellard's javascript vt100 for jslinux: - * http://bellard.org/jslinux/ - * Copyright (c) 2011 Fabrice Bellard - * The original design remains. The terminal itself - * has been extended to include xterm CSI codes, among - * other features. - */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.toasts[data-v-b1f3268f]{position:fixed;right:16px;bottom:84px;display:flex;flex-direction:column;gap:var(--space-2);z-index:var(--z-toast);width:min(440px,calc(100vw - 32px));max-height:56vh;overflow-y:auto}.toasts.below-overlay[data-v-b1f3268f]{z-index:var(--z-dropdown)}.toast-enter-active[data-v-b1f3268f],.toast-leave-active[data-v-b1f3268f]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.toast-enter-from[data-v-b1f3268f],.toast-leave-to[data-v-b1f3268f]{opacity:0;transform:translate(16px)}.toast-move[data-v-b1f3268f]{transition:transform var(--duration-base) var(--ease-out)}.actions[data-v-b1f3268f]{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.link[data-v-b1f3268f]{border:0;padding:0;background:none;color:var(--color-accent);cursor:pointer;font:inherit;font-size:var(--ui-font-size-xs)}.link[data-v-b1f3268f]:hover{text-decoration:underline}.details[data-v-b1f3268f]{display:grid;gap:5px;margin:8px 0 0;padding:8px;border:.5px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface-sunken)}.detail-row[data-v-b1f3268f]{display:grid;grid-template-columns:minmax(88px,.34fr) minmax(0,1fr);gap:8px}.detail-row dt[data-v-b1f3268f]{color:var(--color-text-muted)}.detail-row dd[data-v-b1f3268f]{margin:0;color:var(--color-text);overflow-wrap:anywhere;white-space:pre-wrap}@media(max-width:640px){.toasts[data-v-b1f3268f]{left:12px;right:12px;bottom:calc(var(--dock-h, 76px) + 8px);width:auto;max-height:50vh}.detail-row[data-v-b1f3268f]{grid-template-columns:1fr;gap:2px}}.group.dragging[data-v-bb69f1c3]{opacity:.45}.group.pinned-drag-active[data-v-bb69f1c3],.group.pinned-drop-hover[data-v-bb69f1c3]{border-radius:var(--radius-sm)}.group.pinned-drag-active[data-v-bb69f1c3]{box-shadow:inset 0 0 0 1px var(--color-accent)}.group.pinned-drop-hover[data-v-bb69f1c3]{box-shadow:inset 0 0 0 2px var(--color-accent)}.group.pinned-drop-blocked[data-v-bb69f1c3],.group.pinned-drop-blocked[data-v-bb69f1c3] *{cursor:no-drop}.se-locate-flash[data-v-bb69f1c3]{isolation:isolate}.se-locate-flash[data-v-bb69f1c3]:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:var(--radius-sm);background:var(--color-accent-soft);pointer-events:none;animation:se-locate-fade-bb69f1c3 var(--duration-flash) var(--ease-out) forwards}@keyframes se-locate-fade-bb69f1c3{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.se-locate-flash[data-v-bb69f1c3]:before{animation:none}}.group-sessions[data-v-bb69f1c3]{height:auto;overflow:hidden;transition:height var(--duration-base) var(--ease-out)}.group-sessions.collapsed[data-v-bb69f1c3]{height:0}.gh[data-v-bb69f1c3]{display:flex;flex-direction:column;margin:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text);user-select:none;position:relative;cursor:grab}.gh[data-v-bb69f1c3]:active{cursor:grabbing}.gh[data-v-bb69f1c3]:hover{background:var(--sb-hover, var(--color-hover))}.gh.on[data-v-bb69f1c3]{background:var(--sb-selected, var(--color-selected))}.gh-top[data-v-bb69f1c3]{position:relative;display:flex;align-items:center;gap:var(--sb-gap)}.gh-folder[data-v-bb69f1c3]{flex:none;color:var(--color-text-muted)}.gh-name[data-v-bb69f1c3]{font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);color:var(--color-text-muted);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.gh-actions[data-v-bb69f1c3]{position:absolute;right:calc(var(--sb-action-inset) - (var(--sb-pad-x) - var(--sb-inset)));top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:var(--space-1);padding-left:var(--space-1);border-radius:var(--radius-sm);isolation:isolate;opacity:0;pointer-events:none}.gh-name[data-v-bb69f1c3]{--sb-fade: 0px;--sb-fade-len: 16px;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - var(--sb-fade) - var(--sb-fade-len)),transparent calc(100% - var(--sb-fade)));mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - var(--sb-fade) - var(--sb-fade-len)),transparent calc(100% - var(--sb-fade)))}.gh:hover .gh-name[data-v-bb69f1c3],.gh:focus-within .gh-name[data-v-bb69f1c3],.gh:has(.gh-actions.open) .gh-name[data-v-bb69f1c3]{--sb-fade: 64px;--sb-fade-len: 26px}.gh-actions[data-v-bb69f1c3]>*{position:relative;z-index:1}.gh:hover .gh-actions[data-v-bb69f1c3],.gh:focus-within .gh-actions[data-v-bb69f1c3],.gh-actions.open[data-v-bb69f1c3]{opacity:1;pointer-events:auto}.gh-more.open[data-v-bb69f1c3]{color:var(--color-text);background:var(--color-line)}.group-empty[data-v-bb69f1c3]{padding:var(--space-1) var(--space-2) var(--space-1) calc(var(--sb-pad-x) - var(--sb-inset) + var(--sb-gutter) + var(--sb-gap));font-size:var(--text-xs);color:var(--color-text-faint);font-family:var(--font-ui);user-select:none}.show-more-row[data-v-bb69f1c3]{display:flex;align-items:center;padding-left:calc(var(--sb-gutter) + var(--sb-gap))}.show-more[data-v-bb69f1c3]{display:flex;align-items:center;gap:var(--sb-gap);margin:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));min-width:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-tight);text-align:left;cursor:pointer}.show-more[data-v-bb69f1c3]:hover{background:var(--sb-hover, var(--color-hover))}.show-more[data-v-bb69f1c3]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.show-more-sep[data-v-bb69f1c3]{margin:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-xs);user-select:none}.show-more-label[data-v-bb69f1c3]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gh-rename[data-v-bb69f1c3]{flex:1;min-width:0;font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--color-text);background:var(--color-bg);border:.5px solid var(--color-accent);border-radius:var(--radius-xs);padding:2px 5px;outline:none}.gh-rename[data-v-bb69f1c3]{border-radius:var(--radius-sm);font-family:var(--sans)}.gh-add[data-v-bb69f1c3]{color:var(--faint)}.gh-add[data-v-bb69f1c3]:hover{color:var(--dim)}.sa-select[data-v-05c91909]{display:inline-flex;align-items:center;gap:var(--space-1-5);height:30px;padding:0 var(--space-3);border:.5px solid var(--color-line);border-radius:var(--radius-md);background:transparent;color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-option-label);line-height:1;white-space:nowrap;transition:background var(--duration-fast) var(--ease-out)}.sa-select[data-v-05c91909]:hover,.sa-select.is-open[data-v-05c91909]{background:var(--color-hover)}.sa-select-chev[data-v-05c91909]{color:var(--color-text-faint)}.sa-menu[data-v-05c91909]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.sa-check[data-v-05c91909]{display:inline-flex;flex:none;width:14px}.sa-dot[data-v-05c91909]{flex:none;width:8px;height:8px;border-radius:var(--radius-full)}.sa-dot--open[data-v-05c91909]{background:var(--color-success)}.sa-dot--done[data-v-05c91909]{background:var(--color-done)}.menu-pop-enter-active[data-v-05c91909]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-05c91909]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-05c91909],.menu-pop-leave-to[data-v-05c91909]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.sa-select[data-v-b9977ebe]{display:inline-flex;align-items:center;gap:var(--space-1-5);min-height:30px;padding:0 var(--space-2);border:.5px solid var(--color-line);border-radius:var(--radius-md);background:transparent;color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-option-label);line-height:1;white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.sa-select[data-v-b9977ebe]:hover,.sa-select.is-open[data-v-b9977ebe]{background:var(--color-hover)}.sa-select[data-v-b9977ebe]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.sa-select-chev[data-v-b9977ebe]{color:var(--color-text-faint)}.sa-tag[data-v-b9977ebe]{display:inline-flex;align-items:center;gap:1px;height:20px;padding:0 2px 0 var(--space-1-5);border-radius:var(--radius-xs);background:var(--color-selected);font-size:var(--text-xs)}.sa-tag-name[data-v-b9977ebe]{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-tag-x[data-v-b9977ebe]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:16px;height:16px;padding:0;border:none;border-radius:var(--radius-xs);background:transparent;color:var(--color-text-faint);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.sa-tag-x[data-v-b9977ebe]:hover{background:var(--color-hover);color:var(--color-text)}.sa-tag-more[data-v-b9977ebe]{color:var(--color-text-muted);font-size:var(--text-xs)}.sa-menu[data-v-b9977ebe]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.sa-search[data-v-b9977ebe]{display:flex;align-items:center;gap:7px;padding:5px 9px;color:var(--color-text-faint)}.sa-search-input[data-v-b9977ebe]{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-tight)}.sa-search-input[data-v-b9977ebe]::placeholder{color:var(--color-text-faint)}.sa-ws-name[data-v-b9977ebe]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-opts[data-v-b9977ebe]{max-height:320px;overflow-y:auto;overscroll-behavior:contain}.sa-menu-empty[data-v-b9977ebe]{padding:5px 9px;color:var(--color-text-faint);font-size:var(--text-sm)}.menu-pop-enter-active[data-v-b9977ebe]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-b9977ebe]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-b9977ebe],.menu-pop-leave-to[data-v-b9977ebe]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.sa-menu[data-v-4a872ff4]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.sa-menu-head[data-v-4a872ff4]{padding:var(--space-1) var(--space-2) var(--space-05);color:var(--color-text-faint);font-size:var(--text-xs);user-select:none}.menu-pop-enter-active[data-v-4a872ff4]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-4a872ff4]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-4a872ff4],.menu-pop-leave-to[data-v-4a872ff4]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.sa-pager[data-v-c58f10de]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-3)}.sa-total[data-v-c58f10de]{color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums;user-select:none}.sa-pager-right[data-v-c58f10de]{display:flex;align-items:center;gap:var(--space-3)}.sa-pages[data-v-c58f10de]{display:flex;align-items:center;gap:var(--space-05)}.sa-pg[data-v-c58f10de]{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 var(--space-1-5);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.sa-pg[data-v-c58f10de]:hover{background:var(--color-hover);color:var(--color-text)}.sa-pg.cur[data-v-c58f10de]{background:var(--color-selected);color:var(--color-text);font-weight:var(--weight-medium)}.sa-pg.cur[data-v-c58f10de]:hover{background:var(--color-selected)}.sa-pg[data-v-c58f10de]:disabled{opacity:.38;cursor:default}.sa-pg[data-v-c58f10de]:disabled:hover{background:transparent;color:var(--color-text-muted)}.sa-ellipsis[data-v-c58f10de]{padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-sm);user-select:none}.sa-table-card[data-v-982c46e7]{border:.5px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-bg);overflow-x:auto;container-type:inline-size;transition:opacity var(--duration-fast) var(--ease-out)}.sa-table-card.is-loading[data-v-982c46e7]{opacity:.45;pointer-events:none}table[data-v-982c46e7]{width:100%;min-width:640px;border-collapse:collapse;table-layout:fixed}.sa-col-cb[data-v-982c46e7]{width:36px}.sa-col-title[data-v-982c46e7]{width:max(200px,20%)}.sa-col-ws[data-v-982c46e7]{width:116px}.sa-col-status[data-v-982c46e7]{width:88px}.sa-col-time[data-v-982c46e7]{width:140px}.sa-col-act[data-v-982c46e7]{width:84px}.sa-time--compact[data-v-982c46e7]{display:none}@container (max-width: 1020px){.sa-col-time[data-v-982c46e7]{width:108px}.sa-time--full[data-v-982c46e7]{display:none}.sa-time--compact[data-v-982c46e7]{display:inline}}@container (max-width: 760px){col.sa-col-time[data-v-982c46e7],.sa-c-time[data-v-982c46e7]{display:none}.sa-col-ws[data-v-982c46e7]{width:96px}}thead th[data-v-982c46e7]{height:32px;padding:0 var(--space-3);border-bottom:.5px solid var(--color-line);color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-medium);text-align:left;white-space:nowrap;user-select:none}th.sa-col-cb[data-v-982c46e7],td.sa-col-cb[data-v-982c46e7]{padding-right:0}tbody td[data-v-982c46e7]{height:40px;padding:0 var(--space-3);border-bottom:.5px solid var(--color-subtle);font-size:var(--text-sm);line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}tbody tr:last-child td[data-v-982c46e7]{border-bottom:none}tbody tr[data-v-982c46e7]{transition:background var(--duration-fast) var(--ease-out)}tbody tr[data-v-982c46e7]:hover{background:var(--color-hover)}.sa-cb[data-v-982c46e7]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:.5px solid var(--color-line-strong);border-radius:var(--radius-xs);color:var(--color-text-on-accent);vertical-align:middle;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.sa-cb[data-v-982c46e7]:hover{border-color:var(--color-text-faint)}.sa-cb.on[data-v-982c46e7],.sa-cb.ind[data-v-982c46e7]{background:var(--color-accent);border-color:var(--color-accent)}.sa-batch-inner[data-v-982c46e7]{display:flex;align-items:center;gap:var(--space-2)}.sa-batch-count[data-v-982c46e7]{margin-right:var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm);white-space:nowrap;user-select:none}.sa-batch-link[data-v-982c46e7]{display:inline-flex;align-items:center;height:24px;padding:0 var(--space-1);border:none;background:transparent;color:var(--color-accent);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap}.sa-batch-link[data-v-982c46e7]:hover{text-decoration:underline}.sa-batch-link[data-v-982c46e7]:disabled{color:var(--color-text-faint);cursor:default;text-decoration:none}.sa-btn-q[data-v-982c46e7]{display:inline-flex;align-items:center;gap:var(--space-1-5);height:24px;padding:0 var(--space-2);border:.5px solid var(--color-line);border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.sa-btn-q[data-v-982c46e7]:hover{background:var(--color-hover)}.sa-btn-q[data-v-982c46e7]:disabled{opacity:.42;cursor:default}.sa-btn-q[data-v-982c46e7]:disabled:hover{background:transparent}.sa-btn-q[data-v-982c46e7] :first-child{color:var(--color-text-muted)}.sa-btn-q[data-v-982c46e7]:hover :first-child{color:var(--color-text)}.sa-btn-q--primary[data-v-982c46e7],.sa-btn-q--primary[data-v-982c46e7] :first-child{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent)}.sa-btn-q--primary[data-v-982c46e7]:hover,.sa-btn-q--primary[data-v-982c46e7]:hover :first-child{border-color:var(--color-accent-hover);background:var(--color-accent-hover);color:var(--color-text-on-accent)}.sa-btn-q--primary[data-v-982c46e7]:disabled,.sa-btn-q--primary[data-v-982c46e7]:disabled:hover,.sa-btn-q--primary[data-v-982c46e7]:disabled :first-child,.sa-btn-q--primary[data-v-982c46e7]:disabled:hover :first-child{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent)}.sa-st[data-v-982c46e7]{display:inline-flex;align-items:center;gap:var(--space-1-5)}.sa-st--open[data-v-982c46e7]{color:var(--color-success)}.sa-st--done[data-v-982c46e7]{color:var(--color-done)}.sa-title[data-v-982c46e7]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-weight:var(--weight-option-label)}.sa-rename[data-v-982c46e7]{width:100%;height:26px;padding:0 var(--space-1-5);border:1px solid var(--color-accent);border-radius:var(--radius-sm);outline:none;box-shadow:0 0 0 2px var(--color-accent-bd);background:var(--color-bg);color:var(--color-text);font-family:inherit;font-size:var(--text-sm)}.sa-ws[data-v-982c46e7]{display:inline-flex;align-items:center;max-width:100%;color:var(--color-text-muted)}.sa-ws span[data-v-982c46e7]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-prompt[data-v-982c46e7]{color:var(--color-text-muted)}.sa-time[data-v-982c46e7]{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.sa-none[data-v-982c46e7]{color:var(--color-text-faint)}.sa-act[data-v-982c46e7]{display:flex;align-items:center;gap:var(--space-05)}.sa-state[data-v-982c46e7]{display:flex;align-items:center;justify-content:center;padding:calc(var(--space-8) + var(--space-6)) var(--space-4)}.sa-empty[data-v-982c46e7]{color:var(--color-text-faint);font-size:var(--text-sm)}.activity-notice[data-v-7e199c34]{display:inline-flex;align-items:center;gap:9px;align-self:flex-start;margin:0;font:var(--text-sm)/var(--leading-normal) var(--font-ui);color:var(--color-text-muted)}.history-row[data-v-ccdade85]{display:flow-root;min-width:0;overflow-anchor:none}.history-window[data-v-b4ab9cac]{min-width:0;flex-shrink:0;overflow-anchor:none}.history-space[data-v-b4ab9cac]{pointer-events:none;overflow-anchor:none}.history-row[data-v-b4ab9cac]{position:relative}.history-row[data-v-b4ab9cac]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.history-navigation[data-v-b4ab9cac]{position:absolute;inset-inline-start:var(--space-1);z-index:var(--z-raised);user-select:none}.history-previous[data-v-b4ab9cac]{top:var(--space-1)}.history-next[data-v-b4ab9cac]{bottom:var(--space-1)}.history-navigation[data-v-b4ab9cac]:not(:focus){width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.think[data-v-854f9154]{margin:0}.think-head[data-v-854f9154]{display:flex;align-items:center;gap:var(--space-1);width:100%;padding:var(--space-1) 0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-sm);line-height:1;text-align:left;cursor:pointer;user-select:none;transition:color var(--duration-base) var(--ease-out)}.think-head[data-v-854f9154]:hover{color:var(--color-text)}.think-head[data-v-854f9154]:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent-soft)}.think-bulb[data-v-854f9154]{flex:none}.think-title[data-v-854f9154]{font-weight:var(--weight-medium)}.think-time[data-v-854f9154]{color:var(--color-text-faint);font-weight:400;flex:none}.think.streaming .think-title[data-v-854f9154]{animation:think-breathe-854f9154 1.6s var(--ease-in-out) infinite}@keyframes think-breathe-854f9154{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.think.streaming .think-title[data-v-854f9154]{animation:none}}.think-car[data-v-854f9154]{color:var(--color-text-faint);flex:none;transition:transform var(--duration-base) var(--ease-out)}.think.open .think-car[data-v-854f9154]{transform:rotate(90deg)}.think-body[data-v-854f9154]{display:grid;grid-template-rows:minmax(0,0fr);overflow:hidden;transition:grid-template-rows var(--duration-base) var(--ease-out)}.think-body.instant[data-v-854f9154]{transition:none}.think-body.open[data-v-854f9154]{grid-template-rows:minmax(0,1fr)}.think-body-inner[data-v-854f9154]{min-height:0;overflow:hidden}.think-text[data-v-854f9154]{font:var(--text-base)/var(--leading-relaxed) var(--font-ui);font-weight:400;color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word;margin:0;padding:var(--space-1) 0 var(--space-2)}.mob .think-text[data-v-854f9154]{color:var(--color-text-faint);line-height:var(--leading-normal)}.op[data-v-04036933]{font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text);background:var(--color-well);border:.5px solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);white-space:pre-wrap;word-break:break-word;max-height:12lh;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.op-empty[data-v-04036933]{color:var(--color-text-faint);font-style:italic}.agent-card[data-v-c3ada107]{margin:var(--space-1) 0;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--duration-base) var(--ease-out)}.agent-card[data-v-c3ada107]:hover{border-color:var(--color-line-strong)}.agent-card.err[data-v-c3ada107]{border-color:color-mix(in srgb,var(--color-danger) 45%,var(--bg))}.head[data-v-c3ada107]{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:none;background:transparent;color:var(--color-text);font-family:var(--font-ui);text-align:left;cursor:pointer}.head[data-v-c3ada107]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.head[data-v-c3ada107]:disabled{cursor:default}.head-row[data-v-c3ada107]{display:flex;align-items:center}.head-row .head[data-v-c3ada107]{flex:1;min-width:0}.detach[data-v-c3ada107]{position:relative;flex:none;margin-right:var(--space-1)}.detach.touch[data-v-c3ada107]:after{content:"";position:absolute;inset:-9px}.go-slot[data-v-c3ada107]{display:inline-flex;align-items:center;padding-right:var(--space-3);cursor:pointer;flex:none}.lead[data-v-c3ada107]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--color-text-muted);flex:none}.main[data-v-c3ada107]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.task[data-v-c3ada107]{font-size:var(--ui-font-size);line-height:var(--leading-caption);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.type[data-v-c3ada107]{font-size:var(--text-xs);line-height:var(--leading-caption);color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tail[data-v-c3ada107]{display:flex;align-items:center;gap:var(--space-2);flex:none}.st[data-v-c3ada107]{display:inline-flex;align-items:center}.st.ok[data-v-c3ada107]{color:var(--color-success)}.st.error[data-v-c3ada107]{color:var(--color-danger)}.st.cancelled[data-v-c3ada107]{color:var(--color-text-faint)}.go[data-v-c3ada107]{color:var(--color-text-faint);transition:color var(--duration-base) var(--ease-out)}.agent-card:hover .head:not(:disabled) .go[data-v-c3ada107]{color:var(--color-text)}.go.car[data-v-c3ada107]{transition:color var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.go.car.open[data-v-c3ada107]{transform:rotate(90deg)}.saved-result[data-v-c3ada107]{display:flex;align-items:center;gap:var(--space-1);width:100%;padding:var(--space-2) var(--space-3);border:none;border-top:.5px solid var(--color-line);background:transparent;color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-xs);text-align:left;cursor:pointer}.saved-result[data-v-c3ada107]:hover{color:var(--color-text-muted)}.saved-result[data-v-c3ada107]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.saved-result__chevron[data-v-c3ada107]{transition:transform var(--duration-base) var(--ease-out)}.saved-result__chevron.open[data-v-c3ada107]{transform:rotate(90deg)}.result[data-v-c3ada107]{padding:var(--space-2) var(--space-3)}.result--legacy[data-v-c3ada107]{border-top:.5px solid var(--color-line)}.tl-head[data-v-b0a466be]{display:flex;align-items:center;gap:var(--space-1);width:100%;padding:var(--space-1) 0;border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-sm);line-height:1;text-align:left}.tl-head.clickable[data-v-b0a466be]{cursor:pointer;user-select:none}.tl-ic[data-v-b0a466be]{display:inline-flex;align-items:center;justify-content:flex-start;flex:none;color:var(--color-text-faint)}.tl-main[data-v-b0a466be]{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-1)}.tl-tail[data-v-b0a466be]{margin-left:auto;display:flex;align-items:center;gap:var(--space-1);flex:none}.tl-status[data-v-b0a466be]{display:inline-flex;align-items:center;flex:none}.tl-status.ok[data-v-b0a466be]{color:var(--color-success)}.tl-status.error[data-v-b0a466be]{color:var(--color-danger)}.tl-car[data-v-b0a466be]{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:16px;height:16px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-faint);cursor:pointer;flex:none}.tl-car[data-v-b0a466be]:hover{color:var(--color-text)}.tl-car[data-v-b0a466be]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tl-car-ic[data-v-b0a466be]{transition:transform var(--duration-base) var(--ease-out)}.tool-line.open .tl-car-ic[data-v-b0a466be]{transform:rotate(90deg)}.tl-body[data-v-b0a466be]{display:grid;grid-template-rows:minmax(0,0fr);overflow:hidden;transition:grid-template-rows var(--duration-base) var(--ease-out)}.tl-body.open[data-v-b0a466be]{grid-template-rows:minmax(0,1fr)}.tl-body-inner[data-v-b0a466be]{min-height:0;overflow:hidden;padding:2px var(--space-2) var(--space-1) 0}.tl-main .tl-name[data-v-b0a466be-s]{font-weight:var(--weight-regular);color:var(--color-text-muted);flex:none}.tl-main .tl-dim[data-v-b0a466be-s]{color:var(--color-text-muted);line-height:var(--leading-tight);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-main .tl-faint[data-v-b0a466be-s]{color:var(--color-text-faint);line-height:var(--leading-tight);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-main .tl-mono[data-v-b0a466be-s]{font-family:var(--font-mono);font-size:var(--text-xs);font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text-muted);line-height:normal;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-main .tl-file[data-v-b0a466be-s]{font-weight:var(--weight-regular);color:var(--color-text);line-height:var(--leading-tight);flex:none;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:none;border-radius:var(--radius-xs);background:transparent;padding:0 1px;font-family:inherit;font-size:inherit;cursor:pointer}.tl-main .tl-file[data-v-b0a466be-s]:hover{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px}.tl-main .tl-file[data-v-b0a466be-s]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tl-tail .tl-pill[data-v-b0a466be-s]{font-size:var(--text-xs);line-height:1.5;padding:0 var(--space-2);border-radius:var(--radius-full);flex:none;white-space:nowrap}.tl-tail .tl-chip[data-v-b0a466be-s]{color:var(--color-text-faint);font-size:var(--text-xs);flex:none;white-space:nowrap}.tl-tail .tl-add[data-v-b0a466be-s]{color:var(--color-success);font-family:var(--font-mono);font-size:var(--text-xs);flex:none}.tl-tail .tl-del[data-v-b0a466be-s]{color:var(--color-danger);font-family:var(--font-mono);font-size:var(--text-xs);flex:none}.ask-receipt[data-v-d89078e2]{max-width:560px;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);padding:var(--space-2) var(--space-3) 10px;font:var(--text-sm)/var(--leading-normal) var(--font-ui);color:var(--color-text)}.ask-receipt.flat[data-v-d89078e2]{color:var(--color-text-faint);font-style:italic;padding-top:6px;padding-bottom:6px}.rc-head[data-v-d89078e2]{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-faint);font-size:var(--text-xs);margin-bottom:6px}.rc-st[data-v-d89078e2]{margin-left:auto;color:var(--color-success);display:inline-flex}.rc-q+.rc-q[data-v-d89078e2]{margin-top:6px}.rc-qtext[data-v-d89078e2]{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:3px;font-weight:var(--weight-medium);color:var(--color-text)}.rc-opt[data-v-d89078e2]{display:flex;align-items:center;gap:var(--space-2);padding:1.5px 0;color:var(--color-text)}.rc-qskip[data-v-d89078e2]{padding:1.5px 0;color:var(--color-text-faint);font-style:italic}.rc-lb[data-v-d89078e2]{min-width:0}.rc-ds[data-v-d89078e2]{color:var(--color-text-faint);font-size:var(--text-xs)}.rc-g[data-v-d89078e2]{width:14px;height:14px;flex:none;border:.5px solid var(--color-line-strong);position:relative}.rc-g.chk[data-v-d89078e2]{border-radius:var(--radius-xs)}.rc-g.rad[data-v-d89078e2]{border-radius:50%}.rc-g.on[data-v-d89078e2]{border-color:var(--color-accent)}.rc-g.chk.on[data-v-d89078e2]{background:var(--color-accent)}.rc-g.chk.on[data-v-d89078e2]:after{content:"";position:absolute;left:3.5px;top:.5px;width:4px;height:8px;border-right:1.5px solid var(--color-text-on-accent);border-bottom:1.5px solid var(--color-text-on-accent);transform:rotate(45deg)}.rc-g.rad.on[data-v-d89078e2]:after{content:"";position:absolute;inset:2.5px;border-radius:50%;background:var(--color-accent)}.cmd-echo[data-v-1c6b3d9c]{font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text-muted);white-space:pre-wrap;word-break:break-all;margin-bottom:var(--space-1)}.tl-detach[data-v-1c6b3d9c]{position:relative;display:inline-flex;align-items:center;justify-content:center;align-self:center;width:16px;height:16px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-faint);cursor:pointer;flex:none}.tl-detach[data-v-1c6b3d9c]:hover{color:var(--color-text)}.tl-detach[data-v-1c6b3d9c]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tl-detach.touch[data-v-1c6b3d9c]{margin-left:14px}.tl-detach.touch[data-v-1c6b3d9c]:after{content:"";position:absolute;inset:-14px}.diffbar[data-v-5eb06f7e]{display:inline-flex;width:36px;height:3px;border-radius:var(--radius-full);overflow:hidden;gap:1px;flex:none}.seg-add[data-v-5eb06f7e]{background:var(--color-success)}.seg-del[data-v-5eb06f7e]{background:var(--color-danger)}.gl[data-v-abc0f685]{display:inline-flex;align-items:center}.arg-full[data-v-abc0f685]{font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text-muted);white-space:pre-wrap;word-break:break-all;margin-bottom:var(--space-1)}.file-list[data-v-0d2aee68]{display:flex;flex-direction:column;border:.5px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);padding:var(--space-1);max-height:calc(12 * 1.6 * var(--content-font-size));overflow-y:auto;overscroll-behavior:contain}.file-row[data-v-0d2aee68]{width:100%;border:none;border-radius:var(--radius-sm);background:transparent;padding:2px var(--space-2);font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.file-row[data-v-0d2aee68]:hover{background:var(--color-hover);color:var(--color-accent)}.file-row[data-v-0d2aee68]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tl-pill.pill-active[data-v-6b2997e9]{color:var(--color-accent);background:var(--color-accent-soft)}.tl-pill.pill-done[data-v-6b2997e9]{color:var(--color-success);background:var(--color-success-soft)}.tl-pill.pill-blocked[data-v-6b2997e9]{color:var(--color-warning);background:var(--color-warning-soft)}.goal-block[data-v-6b2997e9]{margin-bottom:var(--space-1)}.goal-text[data-v-6b2997e9]{color:var(--color-text);font-size:calc(var(--content-font-size) - 1px);line-height:1.6;white-space:pre-wrap;word-break:break-word}.goal-criterion[data-v-6b2997e9]{color:var(--color-text-muted);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;margin-top:2px;white-space:pre-wrap;word-break:break-word}.match-list[data-v-e28c6059]{display:flex;flex-direction:column;border:.5px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);padding:var(--space-1);max-height:calc(12 * 1.6 * var(--content-font-size));overflow-y:auto;overscroll-behavior:contain}.match-row[data-v-e28c6059]{display:flex;align-items:baseline;gap:var(--space-2);width:100%;border:none;border-radius:var(--radius-sm);background:transparent;padding:2px var(--space-2);font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text);text-align:left;cursor:default}.match-row.link[data-v-e28c6059]{cursor:pointer}.match-row.link[data-v-e28c6059]:hover{background:var(--color-hover)}.match-row[data-v-e28c6059]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.mref[data-v-e28c6059]{flex:none;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-faint)}.match-row.link:hover .mref[data-v-e28c6059]{color:var(--color-accent)}.mtext[data-v-e28c6059]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.is-resolving[data-v-ff75b8c0]{visibility:hidden}.media-tool[data-v-d7f9eaf0]{display:inline-flex;flex-direction:column;gap:6px;max-width:320px}.media-title[data-v-d7f9eaf0]{font-size:var(--text-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-image-button[data-v-d7f9eaf0]{padding:0;border:none;background:transparent;cursor:pointer;border-radius:var(--radius-md);overflow:hidden}.media-image[data-v-d7f9eaf0]{display:block;max-width:100%;border-radius:var(--radius-md);background:var(--media-alpha-canvas)}.media-video[data-v-d7f9eaf0],.media-audio[data-v-d7f9eaf0]{max-width:100%;border-radius:var(--radius-md)}.media-video[data-v-d7f9eaf0]{display:block}.media-video-button[data-v-d7f9eaf0]{position:relative}.media-video-tile[data-v-d7f9eaf0]{display:block;width:320px;max-width:100%;aspect-ratio:16 / 9;background:var(--color-well)}.media-play-badge[data-v-d7f9eaf0]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-full);background:var(--color-surface-raised);border:.5px solid var(--color-line);color:var(--color-text);box-shadow:var(--shadow-sm);pointer-events:none}.plan-glyph[data-v-b5d39e44]{display:inline-flex;align-items:center}.plan-path[data-v-b5d39e44]{display:block;max-width:100%;margin:0 0 var(--space-2);padding:0;overflow:hidden;border:none;background:transparent;color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.plan-path[data-v-b5d39e44]:hover{text-decoration:underline}.plan-path[data-v-b5d39e44]:focus-visible{outline:none;border-radius:var(--radius-xs);box-shadow:var(--p-focus-ring)}.plan-content[data-v-b5d39e44]{padding:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);color:var(--color-text)}.plan-review[data-v-b5d39e44]{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-2);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-normal)}.plan-review>div[data-v-b5d39e44]{display:flex;align-items:baseline;gap:var(--space-2)}.review-label[data-v-b5d39e44]{flex:none;color:var(--color-text-faint)}.review-feedback[data-v-b5d39e44]{white-space:pre-wrap}.path-link[data-v-168ce0de]{display:block;width:100%;border:none;border-radius:var(--radius-xs);background:transparent;padding:0 0 var(--space-1);font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);color:var(--color-text-muted);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.path-link[data-v-168ce0de]:hover{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px}.path-link[data-v-168ce0de]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.swarm-card[data-v-687db507]{margin:0;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--duration-base) var(--ease-out)}.swarm-card.err[data-v-687db507]{border-color:color-mix(in srgb,var(--color-danger) 45%,var(--bg))}.head[data-v-687db507]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:34px;padding:0 var(--space-2) 0 var(--space-3);border:none;background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--ui-font-size);text-align:left;cursor:pointer;user-select:none}.head[data-v-687db507]:hover{background:var(--color-hover);color:var(--color-text)}.head[data-v-687db507]:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent-soft)}.ic[data-v-687db507]{color:var(--color-text-faint);flex:none}.title[data-v-687db507]{font-weight:var(--weight-medium);color:var(--color-text);flex:none}.meta[data-v-687db507]{color:var(--color-text-faint);flex:none}.sum-txt[data-v-687db507]{color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.rt[data-v-687db507]{margin-left:auto;display:flex;align-items:center;gap:var(--space-2);flex:none;color:var(--color-text-muted);font-size:var(--text-xs)}.status[data-v-687db507]{display:inline-flex;align-items:center;flex:none}.status[data-v-687db507]:has(>svg){color:var(--color-success)}.err .status[data-v-687db507]:has(>svg){color:var(--color-danger)}.chip[data-v-687db507]{color:var(--color-text-muted);font-family:var(--font-mono)}.tm[data-v-687db507]{color:var(--color-text-faint);font-family:var(--font-mono)}.car[data-v-687db507]{margin-left:2px;color:var(--color-text-faint);flex:none;transition:transform var(--duration-base) var(--ease-out)}.swarm-card.open .car[data-v-687db507]{transform:rotate(90deg)}.body[data-v-687db507]{border-top:.5px solid var(--color-line)}.overview[data-v-687db507]{padding:10px var(--space-3) var(--space-2);border-bottom:.5px solid var(--color-line)}.overview-line[data-v-687db507]{display:flex;align-items:baseline;gap:var(--space-2)}.big[data-v-687db507]{font-family:var(--font-mono);font-weight:var(--weight-medium);color:var(--color-text);font-size:15px}.lbl[data-v-687db507]{color:var(--color-text-muted);font-size:var(--text-xs)}.seg[data-v-687db507]{display:flex;height:5px;border-radius:var(--radius-full);overflow:hidden;margin:var(--space-2) 0 var(--space-1);gap:2px}.seg>span[data-v-687db507]{height:100%;border-radius:var(--radius-full);min-width:3px}.s-ok[data-v-687db507]{background:var(--color-success)}.s-run[data-v-687db507]{background:var(--color-accent)}.s-warn[data-v-687db507]{background:var(--color-warning)}.s-fail[data-v-687db507]{background:var(--color-danger)}.s-queue[data-v-687db507]{background:var(--color-line)}.legend[data-v-687db507]{display:flex;flex-wrap:wrap;gap:10px}.legend span[data-v-687db507]{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted)}.lg-dot[data-v-687db507]{width:6px;height:6px;border-radius:var(--radius-full)}.member[data-v-687db507]{border-bottom:.5px solid var(--color-line)}.member[data-v-687db507]:last-child{border-bottom:none}.member-head[data-v-687db507]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:30px;padding:0 var(--space-2) 0 var(--space-3);border:none;background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size);text-align:left;cursor:pointer;user-select:none}.member-head[data-v-687db507]:not(:disabled):hover{background:var(--color-hover)}.member-head[data-v-687db507]:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent-soft)}.member-head[data-v-687db507]:disabled{cursor:default}.row-dot[data-v-687db507]{flex:none}.mname[data-v-687db507]{flex:none;min-width:0;max-width:46%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--weight-medium);color:var(--color-text)}.mact[data-v-687db507]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);font-size:var(--text-xs)}.mload[data-v-687db507]{flex:none;color:var(--color-text-faint)}.mphase[data-v-687db507]{flex:none;margin-left:auto;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint)}.phase-completed .mphase[data-v-687db507]{color:var(--color-success)}.phase-failed .mphase[data-v-687db507]{color:var(--color-danger)}.phase-working .mphase[data-v-687db507]{color:var(--color-accent)}.phase-suspended .mphase[data-v-687db507]{color:var(--color-warning)}.mcar[data-v-687db507]{margin-left:var(--space-1);color:var(--color-text-faint);flex:none;transition:transform var(--duration-base) var(--ease-out)}.member.open .mcar[data-v-687db507]{transform:rotate(90deg)}.member-saved[data-v-687db507]{display:flex;align-items:center;gap:var(--space-1);width:100%;padding:var(--space-1) var(--space-3);border:none;border-top:.5px solid var(--color-line);background:transparent;color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-xs);text-align:left;cursor:pointer}.member-saved[data-v-687db507]:hover{color:var(--color-text-muted)}.member-saved[data-v-687db507]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.member-saved-car[data-v-687db507]{transition:transform var(--duration-base) var(--ease-out)}.member-saved-car.open[data-v-687db507]{transform:rotate(90deg)}.member-body[data-v-687db507]{padding:var(--space-1) var(--space-3) 10px 31px;color:var(--color-text-muted);font-size:calc(var(--content-font-size) - 2px);line-height:1.65;white-space:pre-wrap;word-break:break-word}.waiting[data-v-687db507]{padding:6px var(--space-3) 10px;color:var(--color-text-muted);font-size:var(--text-xs)}.fallback-output[data-v-687db507]{padding:10px var(--space-3);color:var(--color-text);font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;white-space:pre-wrap;word-break:break-word}.status-glyph[data-v-db4e70c9]{flex:none;width:16px;display:inline-flex;align-items:center;justify-content:center;user-select:none}.status-glyph.s-run[data-v-db4e70c9]{color:var(--color-accent)}.status-glyph.s-done[data-v-db4e70c9]{color:var(--color-success)}.status-glyph.s-fail[data-v-db4e70c9]{color:var(--color-danger)}.status-glyph.s-pending[data-v-db4e70c9]{color:var(--color-text-faint)}.todo-bar[data-v-462a60b8]{display:inline-flex;width:36px;height:3px;border-radius:var(--radius-full);background:var(--color-line);overflow:hidden;flex:none}.todo-fill[data-v-462a60b8]{background:var(--color-success);border-radius:var(--radius-full);transition:width var(--duration-slow) var(--ease-out)}.todo-list[data-v-462a60b8]{display:flex;flex-direction:column;gap:1px;border:.5px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);padding:var(--space-2) var(--space-3);max-height:calc(12 * 1.6 * var(--content-font-size));overflow-y:auto;overscroll-behavior:contain}.todo-row[data-v-462a60b8]{display:flex;align-items:center;gap:7px;padding:2px 0;font-size:calc(var(--content-font-size) - 1px);color:var(--color-text)}.todo-title[data-v-462a60b8]{flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.4}.todo-row.s-in_progress .todo-title[data-v-462a60b8]{font-weight:var(--weight-medium)}.todo-row.s-done .todo-title[data-v-462a60b8]{color:var(--color-text-faint);text-decoration:line-through}.wf-glance[data-v-f96091f9]{margin-bottom:var(--space-1)}.wf-main[data-v-f96091f9]{color:var(--color-text);font-size:var(--text-sm);line-height:var(--leading-prose);white-space:pre-wrap;word-break:break-word}.wf-sub[data-v-f96091f9]{color:var(--color-text-muted);font-size:var(--text-xs);line-height:var(--leading-prose);white-space:pre-wrap;word-break:break-word}.fetch-url[data-v-d65f7c52]{font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;color:var(--color-text-faint);white-space:pre-wrap;word-break:break-all;margin-bottom:var(--space-1)}.activity-run[data-v-6fca9411]{display:flex;flex-direction:column;animation:kimi-card-in var(--duration-base) var(--ease-out)}.ar-head[data-v-6fca9411]{display:flex;align-items:center;gap:var(--space-1);width:100%;padding:var(--space-2) 0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-sm);line-height:1;text-align:left;cursor:pointer;user-select:none;transition:color var(--duration-base) var(--ease-out)}.ar-head[data-v-6fca9411]:hover{color:var(--color-text)}.ar-head.is-static[data-v-6fca9411],.ar-head.is-static[data-v-6fca9411]:hover{cursor:default;color:var(--color-text-faint)}.ar-head[data-v-6fca9411]:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent-soft)}.ar-glyph[data-v-6fca9411]{display:inline-flex;align-items:center;flex:none;color:var(--color-text-faint)}.ar-glyph.ok[data-v-6fca9411]{color:var(--color-success)}.ar-glyph.err[data-v-6fca9411]{color:var(--color-danger)}.ar-glyph.run[data-v-6fca9411]{color:var(--color-text-muted);animation:ar-breathe-6fca9411 1.6s var(--ease-in-out) infinite}@keyframes ar-breathe-6fca9411{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.ar-glyph.run[data-v-6fca9411]{animation:none}}.ar-sum[data-v-6fca9411]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--weight-regular)}.ar-danger[data-v-6fca9411]{color:var(--color-danger)}.ar-faint[data-v-6fca9411],.ar-sep[data-v-6fca9411]{color:var(--color-text-faint)}.ar-car[data-v-6fca9411]{color:var(--color-text-faint);flex:none;transition:transform var(--duration-base) var(--ease-out)}.activity-run.open .ar-car[data-v-6fca9411]{transform:rotate(90deg)}.ar-body[data-v-6fca9411]{display:grid;grid-template-rows:minmax(0,0fr);overflow:hidden;transition:grid-template-rows var(--duration-base) var(--ease-out)}.ar-body.open[data-v-6fca9411]{grid-template-rows:minmax(0,1fr)}.ar-body-inner[data-v-6fca9411]{min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-1)}.msg-time[data-v-dd7afa76]{display:inline-flex;align-items:center;min-height:22px;box-sizing:border-box;padding:2px 5px;border-radius:var(--radius-sm);color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1;opacity:.7;white-space:nowrap}.ntf-list[data-v-531f093a]{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-3);margin:var(--space-2) 0}.ntn[data-v-531f093a]{margin-left:auto;max-width:var(--p-bubble-max);display:flex;flex-direction:column;align-items:flex-end}.ntn-head[data-v-531f093a]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-base);line-height:var(--leading-normal);overflow-wrap:anywhere}.ntn-ico[data-v-531f093a]{flex:none}.ntn-sr-only[data-v-531f093a]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ntn.ok .ntn-ico[data-v-531f093a]{color:var(--color-success)}.ntn.err .ntn-ico[data-v-531f093a]{color:var(--color-danger)}.ntn.warn .ntn-ico[data-v-531f093a]{color:var(--color-warning)}.ntn-bubble[data-v-531f093a]{box-sizing:border-box;max-width:100%;padding:var(--space-2) var(--space-3);background:var(--color-user-bubble-bg);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--content-font-size);line-height:var(--leading-normal);white-space:pre-wrap;overflow-wrap:anywhere}.ntn-line+.ntn-line[data-v-531f093a]{margin-top:var(--space-1)}.ntn-reason[data-v-531f093a]{color:var(--color-text-muted)}.ntn-out[data-v-531f093a]{display:flex;align-items:center;gap:var(--space-2);background:var(--color-surface-raised);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);box-shadow:var(--shadow-xs);white-space:normal}.ntn-out-ic[data-v-531f093a]{color:var(--color-text-faint);flex:none}.ntn-out-path[data-v-531f093a]{flex:1;min-width:0;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl;text-align:left}.ntn-out-size[data-v-531f093a]{flex:none;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint)}.ntn-out-copy[data-v-531f093a]{display:inline-flex;align-items:center;height:var(--space-6);padding:0 var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--color-text-muted);border:.5px solid var(--color-line-strong);background:var(--color-surface-raised);flex:none;transition:color var(--duration-fast) var(--ease-out)}.ntn-out-copy[data-v-531f093a]:hover{color:var(--color-text)}.ntn-preview-cap[data-v-531f093a]{font-size:var(--text-xs);color:var(--color-text-faint);margin-bottom:var(--space-05)}.ntn-preview-text[data-v-531f093a]{margin:0;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--color-text-muted);white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:8;overflow:hidden}.ntn-meta[data-v-531f093a]{margin-top:var(--space-1);padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-base);line-height:var(--leading-normal)}.ntn-raw[data-v-531f093a]{max-width:100%}.ntn-raw summary[data-v-531f093a]{list-style:none;display:flex;align-items:center;gap:var(--space-1);cursor:pointer;font-size:var(--text-xs);color:var(--color-text-faint);user-select:none}.ntn-raw summary[data-v-531f093a]::-webkit-details-marker{display:none}.ntn-raw summary[data-v-531f093a]:hover{color:var(--color-text)}.ntn-raw-car[data-v-531f093a]{transition:transform var(--duration-base) var(--ease-out)}.ntn-raw[open] .ntn-raw-car[data-v-531f093a]{transform:rotate(90deg)}.ntn-raw-in[data-v-531f093a]{margin-top:var(--space-1);display:flex;flex-direction:column;gap:var(--space-2)}.ntn-raw-fields[data-v-531f093a]{display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-3)}.ntn-raw-fields .k[data-v-531f093a]{color:var(--color-text-faint);font-size:var(--text-xs)}.ntn-raw-fields .v[data-v-531f093a]{color:var(--color-text-muted);font-size:var(--text-xs);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ntn-raw-pre[data-v-531f093a]{margin:0;padding:var(--space-2) var(--space-3);background:var(--color-surface-raised);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--color-text-muted);white-space:pre;overflow:auto;max-width:100%;max-height:13lh}.turn-fold[data-v-fe83ff2a]{display:flex;flex-direction:column}.tf-head[data-v-fe83ff2a]{display:flex;align-items:center;gap:var(--space-1);width:100%;padding:var(--space-2) 0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-sm);line-height:1;text-align:left;cursor:pointer;user-select:none;transition:color var(--duration-base) var(--ease-out)}.tf-head[data-v-fe83ff2a]:hover{color:var(--color-text)}.tf-head[data-v-fe83ff2a]:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent-soft)}.tf-sum[data-v-fe83ff2a]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--weight-regular)}.tf-car[data-v-fe83ff2a]{color:var(--color-text-faint);flex:none;transition:transform var(--duration-base) var(--ease-out)}.turn-fold.open .tf-car[data-v-fe83ff2a]{transform:rotate(90deg)}.tf-body[data-v-fe83ff2a]{display:grid;grid-template-rows:minmax(0,0fr);overflow:hidden;transition:grid-template-rows var(--duration-base) var(--ease-out)}.tf-body.open[data-v-fe83ff2a]{grid-template-rows:minmax(0,1fr)}.tf-body-inner[data-v-fe83ff2a]{min-height:0;overflow:hidden;display:flex;flex-direction:column}.tf-body-inner>.msg[data-v-fe83ff2a],.tf-body-inner[data-v-fe83ff2a]>.think,.tf-body-inner[data-v-fe83ff2a]>.tool-group,.tf-body-inner[data-v-fe83ff2a]>.activity-run,.tf-body-inner[data-v-fe83ff2a]>.agent-card,.tf-body-inner[data-v-fe83ff2a]>.agent-group,.tf-body-inner[data-v-fe83ff2a]>.tool-line,.tf-body-inner[data-v-fe83ff2a]>.swarm-card,.tf-body-inner[data-v-fe83ff2a]>.media-tool,.tf-body-inner[data-v-fe83ff2a]>.ask-receipt{margin-top:var(--chat-block-gap)}.turn-fold.streaming .tf-body-inner>.msg[data-v-fe83ff2a]:first-child,.turn-fold.streaming .tf-body-inner[data-v-fe83ff2a]>.think:first-child,.turn-fold.streaming .tf-body-inner[data-v-fe83ff2a]>.tool-group:first-child,.turn-fold.streaming .tf-body-inner[data-v-fe83ff2a]>.activity-run:first-child,.turn-fold.streaming .tf-body-inner[data-v-fe83ff2a]>.agent-card:first-child,.turn-fold.streaming .tf-body-inner[data-v-fe83ff2a]>.agent-group:first-child,.turn-fold.streaming .tf-body-inner[data-v-fe83ff2a]>.tool-line:first-child,.turn-fold.streaming .tf-body-inner[data-v-fe83ff2a]>.swarm-card:first-child,.turn-fold.streaming .tf-body-inner[data-v-fe83ff2a]>.media-tool:first-child,.turn-fold.streaming .tf-body-inner[data-v-fe83ff2a]>.ask-receipt:first-child{margin-top:0}.tf-body-inner[data-v-fe83ff2a]>.history-window>.history-row>.agent-card{margin-top:0}.tf-body-inner .msg[data-v-fe83ff2a]{font-size:var(--ui-font-size);line-height:var(--leading-prose);color:var(--color-text);font-weight:var(--weight-medium)}.tf-body-inner .msg[data-v-fe83ff2a] p{margin:0}.tf-body-inner .msg[data-v-fe83ff2a] p+p{margin-top:var(--space-2)}@container (min-width: 760px){.tf-body-inner .msg[data-v-fe83ff2a] .markstream-vue.markdown-renderer:has(.table-node-wrapper.md-table-wide){content-visibility:visible}.tf-body-inner .msg[data-v-fe83ff2a] .table-node-wrapper.md-table-wide{position:relative;left:50%;width:max-content;min-width:100%;max-width:min(var(--p-table-max),calc(100cqi - var(--space-5) - var(--space-5)))!important;transform:translate(-50%)}.tf-body-inner .msg[data-v-fe83ff2a] .table-node-wrapper:not(.md-table-wide){--table-cell-cap: min(var(--p-table-cell-max), 36cqi)}}.turn-files[data-v-00ab54d5]{margin-top:var(--chat-block-gap)}.turn-files[data-v-00ab54d5] .ui-card__head{font-family:var(--font-ui);font-weight:var(--weight-regular);padding:var(--space-2) var(--space-3)}.turn-files[data-v-00ab54d5] .ui-card__body{padding:var(--space-1) var(--space-3)}.turn-files[data-v-00ab54d5] .ui-card__foot{padding:0;justify-content:stretch}.tf-ic[data-v-00ab54d5]{display:inline-flex;align-items:center;color:var(--color-text-faint);flex:none}.tf-title[data-v-00ab54d5]{font-size:var(--text-sm);color:var(--color-text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-stats[data-v-00ab54d5]{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-1);flex:none}.tf-add[data-v-00ab54d5],.tf-del[data-v-00ab54d5]{font-family:var(--font-mono);font-size:var(--text-xs);flex:none}.tf-add[data-v-00ab54d5]{color:var(--color-success)}.tf-del[data-v-00ab54d5]{color:var(--color-danger)}.tf-list[data-v-00ab54d5]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.tf-row[data-v-00ab54d5]{display:flex;align-items:center;gap:var(--space-1);min-width:0;padding:var(--space-1) 0;font-size:var(--text-sm);line-height:var(--leading-tight)}.tf-file[data-v-00ab54d5]{display:flex;align-items:baseline;border:none;border-radius:var(--radius-xs);background:transparent;padding:0;font-family:inherit;font-size:inherit;color:var(--color-text);flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-align:left}button.tf-file[data-v-00ab54d5]{cursor:pointer}button.tf-file[data-v-00ab54d5]:hover{text-decoration:underline;text-decoration-color:var(--color-text-faint);text-underline-offset:3px}.tf-file[data-v-00ab54d5]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tf-dir[data-v-00ab54d5]{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-faint)}.tf-base[data-v-00ab54d5]{flex:none;font-weight:var(--weight-medium);color:var(--color-text)}.tf-more[data-v-00ab54d5]{width:100%;justify-content:flex-start;border-radius:0}.turn-files .tf-more[data-v-00ab54d5]:not(:disabled):active{transform:none}.tf-more-car[data-v-00ab54d5]{color:var(--color-text-faint);transition:transform var(--duration-base) var(--ease-out)}.tf-more-car.open[data-v-00ab54d5]{transform:rotate(180deg)}.diffbar[data-v-00ab54d5]{display:inline-flex;width:36px;height:3px;border-radius:var(--radius-full);overflow:hidden;flex:none}.seg-add[data-v-00ab54d5]{background:var(--color-success)}.seg-del[data-v-00ab54d5]{background:var(--color-danger)}.cn[data-v-7c8e31e6]{margin:0;margin-inline-start:auto;align-self:flex-end;width:fit-content;max-width:78%;display:flex;flex-direction:column;align-items:flex-end}.cn-head[data-v-7c8e31e6]{align-self:flex-end;display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-base);line-height:var(--leading-normal);overflow-wrap:anywhere}.cn-head-ico[data-v-7c8e31e6]{flex:none}.cn-head.error .cn-head-ico[data-v-7c8e31e6]{color:var(--color-danger)}.cn-bubble[data-v-7c8e31e6]{box-sizing:border-box;max-width:100%;padding:10px 12px;background:var(--color-user-bubble-bg);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--content-font-size);line-height:var(--leading-normal);white-space:pre-wrap;overflow-wrap:anywhere}.cn-meta[data-v-7c8e31e6]{margin-top:var(--space-1);padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-base);line-height:var(--leading-normal)}/*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */.pswp{--pswp-bg: #000;--pswp-placeholder-bg: #222;--pswp-root-z-index: 100000;--pswp-preloader-color: rgba(79, 79, 79, .4);--pswp-preloader-color-secondary: rgba(255, 255, 255, .9);--pswp-icon-color: #fff;--pswp-icon-color-secondary: #4f4f4f;--pswp-icon-stroke-color: #4f4f4f;--pswp-icon-stroke-width: 2px;--pswp-error-text-color: var(--pswp-icon-color)}.pswp{position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--pswp-root-z-index);display:none;touch-action:none;outline:0;opacity:.003;contain:layout style size;-webkit-tap-highlight-color:rgba(0,0,0,0)}.pswp:focus{outline:0}.pswp *{box-sizing:border-box}.pswp img{max-width:none}.pswp--open{display:block}.pswp,.pswp__bg{transform:translateZ(0);will-change:opacity}.pswp__bg{opacity:.005;background:var(--pswp-bg)}.pswp,.pswp__scroll-wrap{overflow:hidden}.pswp__scroll-wrap,.pswp__bg,.pswp__container,.pswp__item,.pswp__content,.pswp__img,.pswp__zoom-wrap{position:absolute;top:0;left:0;width:100%;height:100%}.pswp__img,.pswp__zoom-wrap{width:auto;height:auto}.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img{cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,.pswp__img{cursor:-webkit-zoom-out;cursor:-moz-zoom-out;cursor:zoom-out}.pswp__container,.pswp__img,.pswp__button,.pswp__counter{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pswp__item{z-index:1;overflow:hidden}.pswp__hidden{display:none!important}.pswp__content{pointer-events:none}.pswp__content>*{pointer-events:auto}.pswp__error-msg-container{display:grid}.pswp__error-msg{margin:auto;font-size:1em;line-height:1;color:var(--pswp-error-text-color)}.pswp .pswp__hide-on-close{opacity:.005;will-change:opacity;transition:opacity var(--pswp-transition-duration) cubic-bezier(.4,0,.22,1);z-index:10;pointer-events:none}.pswp--ui-visible .pswp__hide-on-close{opacity:1;pointer-events:auto}.pswp__button{position:relative;display:block;width:50px;height:60px;padding:0;margin:0;overflow:hidden;cursor:pointer;background:none;border:0;box-shadow:none;opacity:.85;-webkit-appearance:none;-webkit-touch-callout:none}.pswp__button:hover,.pswp__button:active,.pswp__button:focus{transition:none;padding:0;background:none;border:0;box-shadow:none;opacity:1}.pswp__button:disabled{opacity:.3;cursor:auto}.pswp__icn{fill:var(--pswp-icon-color);color:var(--pswp-icon-color-secondary)}.pswp__icn{position:absolute;top:14px;left:9px;width:32px;height:32px;overflow:hidden;pointer-events:none}.pswp__icn-shadow{stroke:var(--pswp-icon-stroke-color);stroke-width:var(--pswp-icon-stroke-width);fill:none}.pswp__icn:focus{outline:0}div.pswp__img--placeholder,.pswp__img--with-bg{background:var(--pswp-placeholder-bg)}.pswp__top-bar{position:absolute;left:0;top:0;width:100%;height:60px;display:flex;flex-direction:row;justify-content:flex-end;z-index:10;pointer-events:none!important}.pswp__top-bar>*{pointer-events:auto;will-change:opacity}.pswp__button--close{margin-right:6px}.pswp__button--arrow{position:absolute;width:75px;height:100px;top:50%;margin-top:-50px}.pswp__button--arrow:disabled{display:none;cursor:default}.pswp__button--arrow .pswp__icn{top:50%;margin-top:-30px;width:60px;height:60px;background:none;border-radius:0}.pswp--one-slide .pswp__button--arrow{display:none}.pswp--touch .pswp__button--arrow{visibility:hidden}.pswp--has_mouse .pswp__button--arrow{visibility:visible}.pswp__button--arrow--prev{right:auto;left:0}.pswp__button--arrow--next{right:0}.pswp__button--arrow--next .pswp__icn{left:auto;right:14px;transform:scaleX(-1)}.pswp__button--zoom{display:none}.pswp--zoom-allowed .pswp__button--zoom{display:block}.pswp--zoomed-in .pswp__zoom-icn-bar-v{display:none}.pswp__preloader{position:relative;overflow:hidden;width:50px;height:60px;margin-right:auto}.pswp__preloader .pswp__icn{opacity:0;transition:opacity .2s linear;animation:pswp-clockwise .6s linear infinite}.pswp__preloader--active .pswp__icn{opacity:.85}@keyframes pswp-clockwise{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pswp__counter{height:30px;margin-top:15px;margin-inline-start:20px;font-size:14px;line-height:30px;color:var(--pswp-icon-color);text-shadow:1px 1px 3px var(--pswp-icon-color-secondary);opacity:.85}.pswp--one-slide .pswp__counter{display:none}.pswp{--pswp-root-z-index: var(--z-modal);--pswp-bg: var(--color-scrim-strong)}.media-preview-caption{position:absolute;left:0;right:0;bottom:var(--space-4);padding:0 var(--space-6);color:var(--color-text-on-scrim);font-size:var(--ui-font-size-xs);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.media-lightbox[data-v-12085a2b]{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:var(--color-scrim-strong)}.media-lightbox-card[data-v-12085a2b]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);max-width:min(960px,calc(100vw - var(--space-6) * 2));max-height:calc(var(--app-height, 100vh) - var(--space-6) * 2)}.media-lightbox-frame[data-v-12085a2b]{max-width:100%;border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg);box-shadow:var(--shadow-xl)}.media-lightbox-media[data-v-12085a2b]{display:block;max-width:100%;max-height:calc(var(--app-height, 100vh) - var(--space-6) * 4);object-fit:contain}.media-lightbox-name[data-v-12085a2b]{max-width:100%;color:var(--color-text-on-scrim);font-size:var(--ui-font-size-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-lightbox-close[data-v-12085a2b]{position:fixed;top:var(--space-4);right:var(--space-6);display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:.5px solid var(--color-line);border-radius:var(--radius-full);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-sm);cursor:pointer;z-index:var(--z-modal-dropdown)}.media-lightbox-close[data-v-12085a2b]:before{content:"";position:absolute;inset:-6px}.media-lightbox-close[data-v-12085a2b]:hover{border-color:var(--color-line-strong);background:var(--color-surface-sunken)}img[data-v-25eff862]{display:block;width:100%;height:100%;object-fit:cover}.media-thumb[data-v-14be97a5]{position:relative;flex:none;display:inline-flex}.media-thumb-btn[data-v-14be97a5]{display:block;padding:0;border:.5px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);overflow:hidden;cursor:pointer;transition:border-color var(--duration-fast) ease}.media-thumb-btn[data-v-14be97a5]:hover{border-color:var(--color-line-strong)}.media-thumb.is-reorderable .media-thumb-btn[data-v-14be97a5]{user-select:none}.media-thumb.is-dragging[data-v-14be97a5]{cursor:grabbing}.media-thumb.is-dragging .media-thumb-btn[data-v-14be97a5]{opacity:.55;cursor:grabbing}.media-thumb.is-dragging .media-thumb-tool[data-v-14be97a5]{cursor:grabbing}.media-thumb-btn[data-v-14be97a5]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.media-thumb-media[data-v-14be97a5]{display:block;width:64px;height:64px;object-fit:cover}.media-thumb.is-composer .media-thumb-media[data-v-14be97a5],.media-thumb.is-rail .media-thumb-media[data-v-14be97a5]{width:var(--p-composer-media-thumb);height:var(--p-composer-media-thumb)}.media-thumb.is-composer .media-thumb-btn[data-v-14be97a5]{border-radius:var(--radius-composer-media);corner-shape:var(--corner-shape-composer)}.media-thumb.is-rail .media-thumb-btn[data-v-14be97a5]{border-radius:var(--radius-lg)}.media-thumb-tile[data-v-14be97a5]{object-fit:none}.media-thumb-badge[data-v-14be97a5]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-full);background:var(--color-surface-raised);border:.5px solid var(--color-line);color:var(--color-text);box-shadow:var(--shadow-sm);pointer-events:none}.media-thumb-badge.is-error[data-v-14be97a5]{color:var(--color-danger);border-color:var(--color-danger-bd)}.media-thumb-dock[data-v-14be97a5]{position:absolute;right:var(--space-1);bottom:var(--space-1);z-index:1;color:var(--color-text-on-scrim);pointer-events:none}.media-thumb.is-composer .media-thumb-dock[data-v-14be97a5]{inset:0}.media-thumb.is-composer .media-thumb-dock.has-tools[data-v-14be97a5]:before{position:absolute;inset:var(--p-hairline);border-radius:calc(var(--radius-composer-media) - var(--p-hairline));corner-shape:var(--corner-shape-composer);background:var(--color-scrim);content:"";opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.media-thumb-ordinal[data-v-14be97a5]{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:var(--p-composer-media-control);height:var(--p-composer-media-control);padding:0 var(--space-1-5);border-radius:var(--radius-md);background:var(--color-scrim-strong);font-size:var(--text-2xs);font-weight:var(--weight-section-label);line-height:1;font-variant-numeric:tabular-nums}.media-thumb.is-composer .media-thumb-ordinal[data-v-14be97a5]{position:absolute;right:var(--space-1);bottom:var(--space-1);border-radius:var(--radius-composer-media-control);corner-shape:var(--corner-shape-composer);transition:opacity var(--duration-fast) var(--ease-out)}.media-thumb.is-error .media-thumb-btn[data-v-14be97a5]{border-color:var(--color-danger-bd)}.media-thumb-actions[data-v-14be97a5]{position:absolute;top:50%;left:50%;z-index:1;display:flex;gap:var(--space-1);opacity:0;pointer-events:none;transform:translate(-50%,-50%);transition:opacity var(--duration-fast) var(--ease-out)}.media-thumb-tool-slot[data-v-14be97a5]{display:flex;align-items:center;justify-content:center;width:var(--p-composer-media-action);height:var(--p-composer-media-action);pointer-events:none}.media-thumb-tool[data-v-14be97a5]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0;border:none;border-radius:var(--radius-composer-media-control);corner-shape:var(--corner-shape-composer);background:var(--color-scrim-strong);color:inherit;cursor:pointer;pointer-events:none;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-dock.has-tools[data-v-14be97a5]:before,.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-dock.has-tools[data-v-14be97a5]:before{opacity:1;transition-duration:var(--duration-base)}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-actions[data-v-14be97a5],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-actions[data-v-14be97a5]{opacity:1;pointer-events:auto}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-tool-slot[data-v-14be97a5],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-tool-slot[data-v-14be97a5],.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-tool[data-v-14be97a5],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-tool[data-v-14be97a5]{pointer-events:auto}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-ordinal[data-v-14be97a5],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-ordinal[data-v-14be97a5]{opacity:0}.media-thumb-tool[data-v-14be97a5]:hover{background:color-mix(in srgb,var(--color-scrim-strong) 80%,var(--color-text-on-scrim) 20%)}.media-thumb-tool[data-v-14be97a5]:active{transform:scale(.96)}.media-thumb-tool[data-v-14be97a5]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}@media(hover:none){.media-thumb.is-composer .media-thumb-dock.has-tools[data-v-14be97a5]:before{display:none}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-ordinal[data-v-14be97a5],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-ordinal[data-v-14be97a5]{opacity:1}.media-thumb-actions[data-v-14be97a5]{inset:0;display:block;opacity:1;transform:none}.media-thumb-tool-slot[data-v-14be97a5]{position:absolute;width:var(--touch-target-min);height:var(--touch-target-min);opacity:1;pointer-events:none}.media-thumb-mention-slot[data-v-14be97a5]{display:none}.media-thumb-tool[data-v-14be97a5]{position:absolute;width:var(--touch-target-min);height:var(--touch-target-min);border-radius:0;background:transparent;pointer-events:auto}.media-thumb-tool[data-v-14be97a5]:before{position:absolute;z-index:0;width:var(--icon-button-sm);height:var(--icon-button-sm);border-radius:var(--radius-full);background:var(--color-scrim-strong);content:""}.media-thumb-tool[data-v-14be97a5] svg{position:relative;z-index:1}.media-thumb-tool[data-v-14be97a5]:hover{background:transparent}.media-thumb-rm[data-v-14be97a5]{align-items:flex-start;justify-content:flex-end;width:var(--touch-target-min);height:var(--touch-target-min);padding:var(--space-1)}.media-thumb-rm-slot[data-v-14be97a5]{top:0;right:0;pointer-events:auto}}@media(prefers-reduced-motion:reduce){.media-thumb-dock[data-v-14be97a5]:before,.media-thumb-actions[data-v-14be97a5],.media-thumb-ordinal[data-v-14be97a5]{transition:none}}.media-rail[data-v-0b717628]{display:flex;align-items:center;gap:var(--space-2);min-width:0;overflow-x:auto;scrollbar-width:none}.media-rail[data-v-0b717628]::-webkit-scrollbar{display:none}.working-indicator[data-v-d7b420b0]{display:inline-flex;align-items:center;gap:var(--space-2);align-self:flex-start;font:var(--text-sm)/var(--leading-normal) var(--font-ui);color:var(--color-text-muted)}.wi-mascot[data-v-d7b420b0]{flex:none;width:40px}.wi-label[data-v-d7b420b0]{animation:wi-breathe-d7b420b0 1.6s var(--ease-in-out) infinite}@keyframes wi-breathe-d7b420b0{0%,to{opacity:1}50%{opacity:.45}}.sab[data-v-2612e6b2]{position:fixed;z-index:var(--z-dropdown);min-width:0;max-width:calc(100vw - 2 * var(--p-mention-tip-vmargin));max-height:calc(100vh - 2 * var(--p-mention-tip-vmargin));overflow-y:auto;-webkit-app-region:no-drag}.sab[data-v-2612e6b2] .ui-menu-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sab-comment[data-v-2612e6b2]{display:flex;flex-direction:column;align-items:stretch;flex-shrink:0;gap:var(--space-2);width:var(--p-selection-bubble-w);max-width:100%;padding:var(--space-1)}.sab-input[data-v-2612e6b2]{min-width:0;border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface-overlay);box-shadow:var(--shadow-xs);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-normal);padding:var(--space-1-5) var(--space-2);resize:none;overflow-y:hidden;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.sab-input[data-v-2612e6b2]::placeholder{color:var(--color-text-faint)}.sab-input[data-v-2612e6b2]:focus{outline:none;border-color:var(--color-composer-focus-line);box-shadow:var(--shadow-xs)}.sab-actions[data-v-2612e6b2]{display:flex;justify-content:flex-end;gap:var(--space-2)}.sab-actions .ui-button.is-touch[data-v-2612e6b2]{height:var(--touch-target-min)}.sab-enter[data-v-2612e6b2]{margin-left:var(--space-1);opacity:var(--opacity-hint)}.chat-empty[data-v-e2af2888]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px 16px;color:var(--faint);text-align:center}.chat-empty-text[data-v-e2af2888]{font-size:var(--ui-font-size-sm)}.chat-loading[data-v-e2af2888]{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:24px 16px;color:var(--muted)}.chat-loading-text[data-v-e2af2888]{font-size:var(--ui-font-size-sm)}.chat[data-v-e2af2888]{--chat-turn-gap: 16px;--chat-block-gap: 10px;--chat-section-gap: 18px;display:flex;flex-direction:column;gap:0;padding:16px 14px 20px;flex:1;min-height:0;position:relative}.chat .chat-empty[data-v-e2af2888]{align-self:stretch}.chat>.u-turn[data-v-e2af2888],.chat>.a-msg[data-v-e2af2888],.chat>.compact-divider[data-v-e2af2888],.chat>.cron-notice[data-v-e2af2888],.chat>.sending-placeholder[data-v-e2af2888],.chat[data-v-e2af2888]>.activity-notice{margin-top:var(--chat-turn-gap)}.chat>.a-msg[data-v-e2af2888]{margin-top:10px}.chat>.u-turn[data-v-e2af2888]:first-child,.chat>.a-msg[data-v-e2af2888]:first-child,.chat>.compact-divider[data-v-e2af2888]:first-child,.chat>.cron-notice[data-v-e2af2888]:first-child,.chat>.sending-placeholder[data-v-e2af2888]:first-child,.chat[data-v-e2af2888]>.activity-notice:first-child{margin-top:0}.u-turn[data-v-e2af2888]{display:flex;flex-direction:column;align-items:flex-end;align-self:flex-start;width:100%}.u-bub[data-v-e2af2888]{align-self:flex-end;max-width:78%;background:var(--color-user-bubble-bg);color:var(--color-text);border-radius:var(--radius-lg);padding:10px 12px;font-size:var(--content-font-size);line-height:var(--leading-normal)}.u-meta[data-v-e2af2888]{align-self:flex-end;display:flex;justify-content:flex-end;align-items:center;max-width:78%;margin-top:var(--space-2);margin-right:4px}.u-meta .u-edit[data-v-e2af2888]{min-height:22px;box-sizing:border-box}.u-text[data-v-e2af2888]{white-space:pre-wrap;overflow-wrap:anywhere}.u-text-wrap[data-v-e2af2888]{position:relative;display:flex;flex-direction:column}.u-text-wrap-args[data-v-e2af2888]{margin-top:var(--space-1)}.u-text-wrap.is-clamped[data-v-e2af2888]{min-width:120px}.u-text-wrap.is-clamped>.u-text[data-v-e2af2888],.u-text-wrap.is-clamped>.skill-act-args[data-v-e2af2888]{max-height:10lh;overflow:hidden;mask-image:linear-gradient(to bottom,black calc(100% - 5lh),transparent calc(100% - 1lh));-webkit-mask-image:linear-gradient(to bottom,black calc(100% - 5lh),transparent calc(100% - 1lh))}.u-text-wrap.is-clamped>.q-body[data-v-e2af2888]{max-height:3lh;overflow:hidden;mask-image:linear-gradient(to bottom,black calc(100% - 1.2lh),transparent calc(100% - .2lh));-webkit-mask-image:linear-gradient(to bottom,black calc(100% - 1.2lh),transparent calc(100% - .2lh))}.u-text-toggle[data-v-e2af2888]{display:inline-flex;align-items:center;gap:var(--space-1);align-self:center;margin-top:var(--space-2);padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-full);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);line-height:1;cursor:pointer;user-select:none;transition:box-shadow var(--duration-base) var(--ease-out)}.u-text-toggle[data-v-e2af2888]:hover{box-shadow:var(--shadow-md)}.u-text-toggle[data-v-e2af2888]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.u-text-wrap.is-clamped .u-text-toggle[data-v-e2af2888]{position:absolute;bottom:0;left:50%;transform:translate(-50%);margin-top:0}.u-text-toggle-car[data-v-e2af2888]{transition:transform var(--duration-base) var(--ease-out)}.u-text-toggle[aria-expanded=true] .u-text-toggle-car[data-v-e2af2888]{transform:rotate(180deg)}.u-edit[data-v-e2af2888]{display:inline-flex;align-items:center;justify-content:center;padding:2px 5px;background:none;border:none;border-radius:var(--radius-sm);color:var(--muted);font:inherit;font-size:var(--text-base);line-height:1;cursor:pointer;opacity:.7;transition:opacity .12s,color .12s,background-color .12s}.u-edit svg[data-v-e2af2888]{display:block;flex:none}.u-edit[data-v-e2af2888]:hover{opacity:1;color:var(--color-accent);background:var(--hover)}.u-edit-armed[data-v-e2af2888]{--undo-hint-duration: 5s;gap:var(--space-1);opacity:1;color:var(--color-text);animation:u-edit-armed-blink-e2af2888 var(--undo-hint-duration) linear forwards}.u-edit-armed[data-v-e2af2888]:hover{color:var(--color-accent);background:var(--hover)}.u-edit-hint[data-v-e2af2888]{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-medium);white-space:nowrap}@keyframes u-edit-armed-blink-e2af2888{0%,55%{opacity:1}62%{opacity:.45}69%{opacity:1}75%{opacity:.4}81%{opacity:.95}86%{opacity:.35}91%{opacity:.85}95%{opacity:.3}to{opacity:0}}@media(prefers-reduced-motion:reduce){.u-edit-armed[data-v-e2af2888]{animation:none}}.u-copy[data-v-e2af2888]{display:inline-flex;align-items:center;justify-content:center;padding:2px 5px;background:none;border:none;border-radius:var(--radius-sm);color:var(--muted);font:inherit;font-size:var(--text-base);line-height:1;cursor:pointer;opacity:.7;transition:opacity .12s,color .12s,background-color .12s;min-height:22px;box-sizing:border-box}.u-copy svg[data-v-e2af2888]{display:block;flex:none}.u-copy[data-v-e2af2888]:hover{opacity:1;color:var(--color-accent);background:var(--hover)}.u-edit-wrap[data-v-e2af2888]{display:flex;justify-content:flex-end}.chat>.u-edit-wrap[data-v-e2af2888]{margin-top:4px}.chat>.u-edit-wrap+.a-msg[data-v-e2af2888]{margin-top:8px}.compact-divider[data-v-e2af2888]{display:flex;align-items:center;gap:10px;align-self:stretch;width:100%;margin:var(--chat-section-gap) 0 0}.compact-divider-windowed[data-v-e2af2888]{margin-top:0}.compact-divider-interrupted[data-v-e2af2888]{margin-top:var(--chat-turn-gap)}.chat>.compact-divider[data-v-e2af2888]:first-child{margin-top:0}.cd-line[data-v-e2af2888]{flex:1;height:1px;background:var(--line)}.cd-label[data-v-e2af2888]{flex:none;display:inline-flex;align-items:center;gap:8px;max-width:80%;font-size:var(--text-base);color:var(--muted);white-space:nowrap}.cd-btn[data-v-e2af2888]{background:none;border:none;padding:0;cursor:pointer;font:inherit;font-size:var(--text-base);color:var(--muted)}.cd-view[data-v-e2af2888]{color:var(--color-accent)}.cd-btn:hover .cd-view[data-v-e2af2888]{text-decoration:underline}.chat>.turn-failed[data-v-e2af2888]{margin-top:var(--chat-turn-gap)}.chat>.turn-failed[data-v-e2af2888]:first-child{margin-top:0}.turn-failed[data-v-e2af2888]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--p-hairline) solid var(--color-danger-bd);border-radius:var(--radius-lg);background:var(--color-danger-soft);box-shadow:var(--shadow-xs);animation:kimi-card-in var(--duration-slow) var(--ease-out)}.tf-chip[data-v-e2af2888]{display:inline-flex;align-items:center;justify-content:center;width:var(--space-6);height:var(--space-6);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-xs);flex:none;color:var(--color-danger)}.tf-main[data-v-e2af2888]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.tf-title[data-v-e2af2888]{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);line-height:var(--leading-normal)}.tf-sub[data-v-e2af2888]{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--leading-normal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-meta[data-v-e2af2888]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint);line-height:var(--leading-normal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-prov[data-v-e2af2888]{display:flex;align-items:center;gap:var(--space-1);margin-bottom:var(--space-1);color:var(--color-text-faint);font-size:var(--text-xs);line-height:var(--leading-normal);user-select:none}.a-msg[data-v-e2af2888]{align-self:flex-start;max-width:94%;width:94%}.a-msg-ft[data-v-e2af2888]{display:flex;justify-content:flex-start;align-items:center;gap:8px;height:auto;margin-top:var(--chat-block-gap);overflow:visible}.a-time[data-v-e2af2888]{display:inline-flex;align-items:center;font-size:var(--text-base);color:var(--muted);line-height:1}.a-cpbtn[data-v-e2af2888]{display:inline-flex;align-items:center;justify-content:center;padding:2px 5px;background:none;border:none;border-radius:var(--radius-sm);color:var(--muted);font:inherit;font-size:var(--text-base);line-height:1;cursor:pointer;opacity:.7;transition:opacity .12s,color .12s,background-color .12s;min-height:22px;box-sizing:border-box}.a-cpbtn[data-v-e2af2888]:hover{opacity:1;color:var(--color-accent);background:var(--hover)}.a-cpbtn svg[data-v-e2af2888]{display:block;flex:none}@media(hover:none){.a-msg-ft[data-v-e2af2888]{height:auto;margin-top:var(--chat-block-gap);opacity:1;pointer-events:auto}.a-cpbtn[data-v-e2af2888]{font-size:var(--ui-font-size-sm);padding:8px 10px;margin:-4px -6px}}.a-msg .msg[data-v-e2af2888]{font-size:var(--ui-font-size);line-height:var(--leading-prose);color:var(--color-text);font-weight:500}.a-msg .msg[data-v-e2af2888] p{margin:0}.a-msg .msg[data-v-e2af2888] p+p{margin-top:8px}.a-msg>.msg[data-v-e2af2888],.a-msg[data-v-e2af2888]>.think,.a-msg[data-v-e2af2888]>.tool-group,.a-msg[data-v-e2af2888]>.activity-run,.a-msg[data-v-e2af2888]>.agent-card,.a-msg[data-v-e2af2888]>.agent-group,.a-msg[data-v-e2af2888]>.tool-line,.a-msg[data-v-e2af2888]>.swarm-card,.a-msg[data-v-e2af2888]>.media-tool,.a-msg[data-v-e2af2888]>.ask-receipt{margin-top:var(--chat-block-gap)}.a-msg>.msg[data-v-e2af2888]:first-child,.a-msg[data-v-e2af2888]>.think:first-child,.a-msg[data-v-e2af2888]>.tool-group:first-child,.a-msg[data-v-e2af2888]>.activity-run:first-child,.a-msg[data-v-e2af2888]>.agent-card:first-child,.a-msg[data-v-e2af2888]>.agent-group:first-child,.a-msg[data-v-e2af2888]>.tool-line:first-child,.a-msg[data-v-e2af2888]>.swarm-card:first-child,.a-msg[data-v-e2af2888]>.media-tool:first-child,.a-msg[data-v-e2af2888]>.ask-receipt:first-child{margin-top:0}.a-msg>.goal-prov:first-child+.msg[data-v-e2af2888],.a-msg>.goal-prov[data-v-e2af2888]:first-child+.think,.a-msg>.goal-prov[data-v-e2af2888]:first-child+.tool-group,.a-msg>.goal-prov[data-v-e2af2888]:first-child+.activity-run,.a-msg>.goal-prov[data-v-e2af2888]:first-child+.agent-card,.a-msg>.goal-prov[data-v-e2af2888]:first-child+.agent-group,.a-msg>.goal-prov[data-v-e2af2888]:first-child+.tool-line,.a-msg>.goal-prov[data-v-e2af2888]:first-child+.swarm-card,.a-msg>.goal-prov[data-v-e2af2888]:first-child+.media-tool,.a-msg>.goal-prov[data-v-e2af2888]:first-child+.ask-receipt,.a-msg>.goal-prov[data-v-e2af2888]:first-child+.turn-fold{margin-top:0}.a-msg[data-v-e2af2888]>.history-window>.history-row>.ntf-list{margin-bottom:0}.a-msg[data-v-e2af2888]>.history-window:last-child>.history-row:last-child>.ntf-list{margin-bottom:var(--space-2)}.a-msg>.goal-prov[data-v-e2af2888]+.history-window>.history-row:first-child>.ntf-list{margin-top:calc(var(--space-2) - var(--space-1))}.a-msg[data-v-e2af2888]>.history-window>.history-row>.agent-card{margin:0}.a-msg[data-v-e2af2888]>.history-window:last-child>.history-row:last-child>.agent-card{margin-bottom:var(--space-1)}.a-msg[data-v-e2af2888] :not(pre)>code{font:.9em var(--font-mono);background:var(--color-inline-code-bg);border:.5px solid var(--color-line);border-radius:var(--radius-sm);padding:1px 6px;color:var(--color-accent-hover)}@container (min-width: 760px){.a-msg .msg[data-v-e2af2888] .markstream-vue.markdown-renderer:has(.table-node-wrapper.md-table-wide){content-visibility:visible}.a-msg .msg[data-v-e2af2888] .table-node-wrapper.md-table-wide{position:relative;left:50%;width:max-content;min-width:100%;max-width:min(var(--p-table-max),calc(100cqi - var(--space-5) - var(--space-5)))!important;transform:translate(-50%)}.a-msg .msg[data-v-e2af2888] .table-node-wrapper:not(.md-table-wide){--table-cell-cap: min(var(--p-table-cell-max), 36cqi)}}.u-atts[data-v-e2af2888]{display:flex;flex-wrap:wrap;gap:var(--space-1-5);margin-bottom:var(--space-2)}.u-media-rail[data-v-e2af2888]{margin-bottom:var(--space-2)}.u-atts button.attachment-pill[data-v-e2af2888]{appearance:none;border:none;background:none;padding-block:0;font-family:inherit;font-size:inherit}.sending-placeholder[data-v-e2af2888]{align-self:flex-start;padding:10px 0}.skill-act[data-v-e2af2888]{display:flex;flex-direction:column;gap:2px}.skill-act-head[data-v-e2af2888]{font-size:var(--ui-font-size-sm);font-weight:500;color:var(--color-accent-hover);display:flex;align-items:center;gap:6px}.skill-act-arrow[data-v-e2af2888]{color:var(--color-accent);font-size:var(--text-base)}.skill-act-args[data-v-e2af2888]{font-size:var(--text-base);color:var(--muted);padding-left:17px;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:640px){.chat[data-v-e2af2888]{box-sizing:border-box;width:100%;padding:14px max(12px,var(--safe-right)) 18px max(12px,var(--safe-left))}.u-bub[data-v-e2af2888]{max-width:min(88%,calc(100vw - 52px))}.a-msg[data-v-e2af2888]{width:100%;max-width:100%}.a-msg[data-v-e2af2888] .md,.a-msg[data-v-e2af2888] .markdown-renderer,.a-msg[data-v-e2af2888] .code-block-container,.a-msg[data-v-e2af2888] .diff-wrap,.a-msg[data-v-e2af2888] pre{max-width:100%}.a-msg[data-v-e2af2888] .code-block-container pre,.a-msg[data-v-e2af2888] .diff-pre{overflow-x:auto;-webkit-overflow-scrolling:touch}.a-msg[data-v-e2af2888] .media-tool.mob{width:min(44vw,160px)}.cd-label[data-v-e2af2888]{min-width:0;max-width:calc(100% - 48px);overflow:hidden;text-overflow:ellipsis}.u-edit-confirm[data-v-e2af2888]{flex-wrap:wrap;justify-content:flex-end;max-width:calc(100vw - 28px)}.ts[data-v-e2af2888]{font-size:var(--ui-font-size-sm)}.chat-empty-text[data-v-e2af2888],.chat-loading-text[data-v-e2af2888]{font-size:var(--ui-font-size-lg)}.cd-label[data-v-e2af2888],.cd-btn[data-v-e2af2888]{font-size:var(--ui-font-size)}}.top-sentinel[data-v-e2af2888]{display:flex;align-items:center;justify-content:center;padding:12px 0;min-height:28px;user-select:none}.top-sentinel-loading[data-v-e2af2888]{opacity:.8}.top-sentinel-btn[data-v-e2af2888]{appearance:none;border:.5px solid var(--border);background:transparent;color:var(--muted);font-size:var(--ui-font-size-sm);padding:4px 12px;border-radius:999px;cursor:pointer;transition:color .15s ease,border-color .15s ease}.top-sentinel-btn[data-v-e2af2888]:hover{color:var(--fg);border-color:var(--fg)}.top-sentinel-text[data-v-e2af2888]{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:var(--ui-font-size-sm)}.chat[data-v-e2af2888]{background:transparent}.chat[data-v-e2af2888]{gap:0;padding:22px 20px 26px}.u-bub[data-v-e2af2888]{background:var(--color-user-bubble-bg);border-radius:var(--radius-lg);padding:10px 12px}.a-msg[data-v-e2af2888]{max-width:100%;width:100%}.chat>.q-stack[data-v-e2af2888]{margin-top:var(--chat-turn-gap)}.chat>.q-stack[data-v-e2af2888]:first-child{margin-top:0}.q-stack[data-v-e2af2888]{align-self:flex-end;width:100%;display:flex;flex-direction:column;gap:8px}.q-head[data-v-e2af2888]{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:0 6px;color:var(--color-text-faint);font-size:var(--ui-font-size-xs)}.q-title[data-v-e2af2888]{display:inline-flex;align-items:center;gap:6px}.q-title b[data-v-e2af2888]{color:var(--color-accent-hover);font-weight:var(--weight-medium)}.q-turn[data-v-e2af2888]{position:relative;flex-direction:row;align-items:center;justify-content:flex-end;gap:var(--space-2)}.q-send[data-v-e2af2888]{flex:none;width:var(--space-6);height:var(--space-6);display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-text-on-accent);box-shadow:var(--shadow-xs);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.q-send[data-v-e2af2888]:hover{background:var(--color-accent-hover)}.q-send[data-v-e2af2888]:active{transform:scale(.92)}.q-send[data-v-e2af2888]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.q-send svg[data-v-e2af2888]{display:block;flex:none}.q-bub[data-v-e2af2888]{display:flex;align-items:center;gap:8px;width:fit-content;background:var(--color-user-bubble-bg);padding:8px 8px 8px 6px;transition:background var(--duration-fast) var(--ease-out)}.q-bub[data-v-e2af2888]:hover{background:var(--hover)}.q-content[data-v-e2af2888]{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.q-media-rail[data-v-e2af2888]{width:min(100%,320px)}.q-grip[data-v-e2af2888]{flex:none;display:inline-flex;align-items:center;padding:2px;color:var(--color-text-faint);cursor:grab;opacity:.7}.q-grip[data-v-e2af2888]:hover{opacity:1}.q-grip[data-v-e2af2888]:active{cursor:grabbing}.q-clamp[data-v-e2af2888]{flex:1;min-width:0}.q-body[data-v-e2af2888]{flex:1;min-width:0;background:none;border:none;padding:0;margin:0;font:inherit;color:var(--color-text);text-align:left;cursor:pointer;opacity:.82}.q-bub:hover .q-body[data-v-e2af2888]{opacity:1}.q-body[data-v-e2af2888]:disabled{cursor:default}.q-text[data-v-e2af2888]{white-space:pre-wrap;overflow-wrap:anywhere}.q-text-placeholder[data-v-e2af2888]{display:inline-flex;align-items:center;gap:4px;color:var(--color-text-muted)}.q-imgs[data-v-e2af2888]{display:flex;gap:4px;flex:none}.q-file[data-v-e2af2888]{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 6px;border-radius:var(--radius-sm);border:.5px solid var(--color-line);color:var(--color-text-muted);font-size:calc(var(--ui-font-size) - 3px);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.q-rm[data-v-e2af2888]{flex:none;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-faint);cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.q-bub:hover .q-rm[data-v-e2af2888],.q-bub:focus-within .q-rm[data-v-e2af2888],.q-rm[data-v-e2af2888]:focus-visible{opacity:1}.q-rm[data-v-e2af2888]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.q-edit[data-v-e2af2888]{display:none;flex:none;width:22px;height:22px;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-faint);cursor:pointer}.q-edit[data-v-e2af2888]:hover{background:var(--color-hover);color:var(--color-text)}@media(hover:none){.q-grip[data-v-e2af2888]{display:none}.q-edit[data-v-e2af2888]{display:inline-flex}.q-rm[data-v-e2af2888],.q-edit[data-v-e2af2888]{opacity:1;position:relative}.q-rm[data-v-e2af2888]:before,.q-edit[data-v-e2af2888]:before{content:"";position:absolute;inset:-11px}}.q-turn.q-dragging .q-bub[data-v-e2af2888]{opacity:.45}.q-turn.drop-before[data-v-e2af2888]:before,.q-turn.drop-after[data-v-e2af2888]:after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--color-accent);border-radius:var(--radius-full);z-index:1}.q-turn.drop-before[data-v-e2af2888]:before{top:-5px}.q-turn.drop-after[data-v-e2af2888]:after{bottom:-5px}.jump-pill[data-v-b2866bd6]{position:absolute;left:50%;bottom:var(--space-3);transform:translate(-50%);z-index:var(--z-sticky);display:inline-flex;align-items:center;gap:6px;padding:6px var(--space-3);border:.5px solid var(--color-line);border-radius:var(--radius-full);background:var(--color-surface);box-shadow:var(--shadow-sm);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-ui-strong);line-height:1.5;white-space:nowrap;cursor:pointer;user-select:none}.jump-pill-car[data-v-b2866bd6]{width:12px;height:12px}.jump-pill[data-v-b2866bd6]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.jump-pill-enter-active[data-v-b2866bd6],.jump-pill-leave-active[data-v-b2866bd6]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.jump-pill-enter-from[data-v-b2866bd6],.jump-pill-leave-to[data-v-b2866bd6]{opacity:0;transform:translate(-50%) translateY(8px)}.agent-panel[data-v-78199809]{height:100%;min-height:0;display:flex;flex-direction:column;position:relative;background:var(--color-bg)}.agent-meta[data-v-78199809]{flex:none;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-2);user-select:none}.agent-meta[data-v-78199809]:before,.agent-meta[data-v-78199809]:after{content:"";flex:1;height:.5px;background:var(--color-line)}.agent-meta-text[data-v-78199809]{font-size:var(--text-xs);line-height:1;color:var(--color-text-muted);white-space:nowrap;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.agent-prompt[data-v-78199809]{flex:none;display:flex;flex-direction:column;padding:0 var(--space-3) var(--space-2)}.agent-prompt-bubble[data-v-78199809]{display:flex;flex-direction:column;align-self:flex-end;max-width:78%;padding:10px 12px;background:var(--color-user-bubble-bg);border-radius:var(--radius-lg)}.agent-prompt-wrap[data-v-78199809]{position:relative;display:flex;flex-direction:column}.agent-prompt-text[data-v-78199809]{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--content-font-size);line-height:var(--leading-normal);color:var(--color-text)}.agent-prompt-text.is-command[data-v-78199809]{font-family:var(--font-mono)}.agent-prompt-wrap.is-clamped>.agent-prompt-text[data-v-78199809]{max-height:6lh;overflow:hidden;mask-image:linear-gradient(to bottom,black calc(100% - 2.5lh),transparent calc(100% - .5lh));-webkit-mask-image:linear-gradient(to bottom,black calc(100% - 2.5lh),transparent calc(100% - .5lh))}.agent-prompt-toggle[data-v-78199809]{display:inline-flex;align-items:center;gap:var(--space-1);align-self:center;margin-top:var(--space-1);padding:var(--space-1) var(--space-3);border:none;border-radius:var(--radius-full);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);line-height:1;cursor:pointer;user-select:none;transition:box-shadow var(--duration-base) var(--ease-out)}.agent-prompt-toggle[data-v-78199809]:hover{box-shadow:var(--shadow-md)}.agent-prompt-toggle[data-v-78199809]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.agent-prompt-wrap.is-clamped .agent-prompt-toggle[data-v-78199809]{position:absolute;bottom:0;left:50%;transform:translate(-50%);margin-top:0}.agent-prompt-toggle-car[data-v-78199809]{transition:transform var(--duration-base) var(--ease-out)}.agent-prompt-toggle-car.open[data-v-78199809]{transform:rotate(180deg)}.agent-transcript[data-v-78199809]{flex:1;min-height:0;overflow-y:auto;padding-bottom:var(--pfc-host-h, 0px)}.agent-transcript-inner[data-v-78199809]{display:flex;flex-direction:column;min-height:100%;width:100%;max-width:var(--p-content-max);margin-inline:auto}.agent-transcript[data-v-78199809] .think-body,.agent-transcript[data-v-78199809] .ar-body,.agent-transcript[data-v-78199809] .tf-body,.agent-transcript[data-v-78199809] .bb,.agent-transcript[data-v-78199809] .tl-body{transition:none}.agent-error[data-v-78199809]{color:var(--color-danger);font:var(--text-sm)/var(--leading-normal) var(--font-ui)}.agent-output-state[data-v-78199809]{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-faint);font-style:italic}.agent-fallback[data-v-78199809]{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.agent-fallback.prose[data-v-78199809] .op{font-family:var(--font-ui)}.bp[data-v-17f24f59]{height:100%;min-height:0;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);position:relative;background:var(--color-bg)}.bp-cmd[data-v-17f24f59],.bp-output[data-v-17f24f59]{background:var(--color-well);border:.5px solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-2) calc(var(--icon-button-sm) + var(--space-2)) var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text);white-space:pre-wrap;word-break:break-word;overscroll-behavior:contain}.bp-cmd[data-v-17f24f59]{flex:none;max-height:6lh;overflow-y:auto}.bp-cmd-wrap[data-v-17f24f59]{flex:none;position:relative}.bp-output-wrap[data-v-17f24f59]{flex:1;min-height:0;position:relative}.bp-output[data-v-17f24f59]{height:100%;overflow-y:auto}.bp-actions[data-v-17f24f59]{position:absolute;top:var(--space-1);right:var(--space-1);z-index:var(--z-sticky);display:flex;gap:var(--space-1);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.bp-cmd-wrap:hover .bp-actions[data-v-17f24f59],.bp-output-wrap:hover .bp-actions[data-v-17f24f59],.bp-actions[data-v-17f24f59]:focus-within{opacity:1}@media(hover:none){.bp-actions[data-v-17f24f59]{opacity:1}}.bp-copy[data-v-17f24f59]{background:var(--color-well);border-color:var(--color-line)}.bp-dollar[data-v-17f24f59]{color:var(--color-text-faint);user-select:none}.bp-empty[data-v-17f24f59]{color:var(--color-text-faint);font-style:italic}.bp-loading[data-v-17f24f59]{display:flex;align-items:center;gap:var(--space-2)}.bp-status[data-v-17f24f59]{flex:none;display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-muted)}.bp-status-muted[data-v-17f24f59]{color:var(--color-text-muted)}.bp-status-danger[data-v-17f24f59]{color:var(--color-danger)}.conversation-toc[data-v-4a94e2b6]{position:absolute;z-index:var(--z-sticky);top:50%;transform:translateY(-50%);--toc-content-max: min( var(--p-content-max), calc(100cqi - var(--space-5) - var(--space-5)) );left:calc(50% + (var(--toc-content-max) / 2) + 14px);max-height:calc(100% - 160px);display:flex;flex-direction:column;justify-content:center;opacity:.5;transition:opacity var(--duration-base) var(--ease-out)}.conversation-toc[data-v-4a94e2b6]:before{content:"";position:absolute;inset:0 -48px 0 -14px;z-index:0}.conversation-toc[data-v-4a94e2b6]:hover,.conversation-toc[data-v-4a94e2b6]:focus-within{opacity:1}.conversation-toc[data-v-4a94e2b6]:hover:not(:focus-within){transition-delay:var(--duration-hover-intent)}.toc-scroll[data-v-4a94e2b6]{position:relative;z-index:1;display:flex;flex-direction:column;gap:7px;padding:8px 0;min-height:0;overflow-y:auto;scrollbar-width:none}.toc-scroll[data-v-4a94e2b6]::-webkit-scrollbar{display:none}.toc-row[data-v-4a94e2b6]{display:flex;align-items:center;gap:10px;height:18px;padding:0;border:none;background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);text-align:left;cursor:pointer;white-space:nowrap}.toc-row[data-v-4a94e2b6]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.toc-bar[data-v-4a94e2b6]{flex:none;width:3px;height:14px;border-radius:var(--radius-full);background:var(--color-accent);opacity:.3;transition:opacity var(--duration-fast) var(--ease-out),height var(--duration-fast) var(--ease-out)}.toc-label[data-v-4a94e2b6]{display:block;max-width:0;overflow:hidden;opacity:0;text-overflow:ellipsis;transition:max-width .22s var(--ease-out),opacity var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.conversation-toc:hover .toc-bar[data-v-4a94e2b6],.conversation-toc:focus-within .toc-bar[data-v-4a94e2b6]{height:18px;opacity:.5}.conversation-toc:hover .toc-label[data-v-4a94e2b6],.conversation-toc:focus-within .toc-label[data-v-4a94e2b6]{max-width:220px;opacity:1}.conversation-toc:hover:not(:focus-within) .toc-bar[data-v-4a94e2b6]{transition-delay:0ms,var(--duration-hover-intent)}.conversation-toc:hover:not(:focus-within) .toc-label[data-v-4a94e2b6]{transition-delay:var(--duration-hover-intent),var(--duration-hover-intent),0ms}.toc-row.active .toc-bar[data-v-4a94e2b6]{opacity:1;height:18px}.toc-row.active .toc-label[data-v-4a94e2b6]{color:var(--color-accent);font-weight:var(--weight-medium)}.toc-row:hover .toc-bar[data-v-4a94e2b6]{opacity:1}.toc-row:hover .toc-label[data-v-4a94e2b6]{color:var(--color-text)}.conversation-toc.toc-clipped[data-v-4a94e2b6]{visibility:hidden;pointer-events:none}.changes-pane[data-v-cfc97382]{display:flex;flex-direction:column;height:100%;background:var(--bg);font-family:var(--mono)}.dv-change-count[data-v-cfc97382]{flex:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ui-font-size-xs);color:var(--muted);font-family:var(--font-ui)}.br-heading[data-v-cfc97382]{display:inline-flex;align-items:center;gap:var(--space-1);flex:0 1 auto;min-width:0}.br-icon[data-v-cfc97382]{flex:none;color:var(--muted)}.br-name[data-v-cfc97382]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-weight:500;font-size:var(--text-xs)}.sync-info[data-v-cfc97382]{display:flex;align-items:center;gap:4px;flex:none}.ahead[data-v-cfc97382]{color:var(--color-accent);font-size:var(--text-xs)}.behind[data-v-cfc97382]{color:var(--color-warning);font-size:var(--text-xs)}.dv-view-mode[data-v-cfc97382]{margin-left:auto;flex:none}.ch-list[data-v-cfc97382]{flex:1;min-height:0}.ch-list-content[data-v-cfc97382]{min-height:100%;padding:4px 0;padding-bottom:max(4px,var(--pfc-host-h, 0px))}.ch-row[data-v-cfc97382]{display:flex;align-items:center;gap:6px;padding:3px 8px;cursor:pointer;font-size:var(--text-xs);line-height:1.6;width:100%;background:none;border:none;text-align:left;font-family:var(--font-ui);color:inherit}.ch-row[data-v-cfc97382]:hover{background:var(--panel2)}.ch-row[data-v-cfc97382]:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.ch-tree[data-v-cfc97382]{--tree-base-indent: 14px;--tree-indent-step: 12px;font-family:var(--font-ui)}.tree-list[data-v-cfc97382]{list-style:none;margin:0}.tree-node[data-v-cfc97382]{overflow:hidden;interpolate-size:allow-keywords}.tree-collapse-enter-active[data-v-cfc97382],.tree-collapse-leave-active[data-v-cfc97382]{transition:block-size var(--duration-base) var(--ease-out),opacity var(--duration-fast) var(--ease-out),transform var(--duration-base) var(--ease-out)}.tree-collapse-enter-from[data-v-cfc97382],.tree-collapse-leave-to[data-v-cfc97382]{block-size:0;opacity:0;transform:translateY(-3px)}.tree-collapse-enter-to[data-v-cfc97382],.tree-collapse-leave-from[data-v-cfc97382]{block-size:auto;opacity:1;transform:translateY(0)}.tree-row[data-v-cfc97382]{position:relative;display:flex;align-items:center;gap:6px;width:100%;margin-top:1px;padding:3px 8px;background:none;border:none;text-align:left;font-family:inherit;font-size:var(--text-xs);color:inherit;cursor:pointer}.tree-row[data-v-cfc97382]:before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--tree-base-indent) + 6px);width:calc(var(--tree-depth, 0) * var(--tree-indent-step));background:repeating-linear-gradient(to right,var(--color-line) 0 1px,transparent 1px var(--tree-indent-step));pointer-events:none}.tree-row[data-v-cfc97382]:hover{background:var(--panel2)}.tree-row[data-v-cfc97382]:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.tree-folder[data-v-cfc97382]{color:var(--color-text);font-weight:500}.tree-file[data-v-cfc97382]{color:var(--color-text);font-weight:450}.tree-icon[data-v-cfc97382]{flex:none;color:var(--muted)}.tree-name[data-v-cfc97382]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge[data-v-cfc97382]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:var(--radius-xs);font-size:max(9px,calc(var(--ui-font-size) - 4px));font-weight:500;flex:none;user-select:none}.badge.modified[data-v-cfc97382]{background:var(--color-warning-soft);color:var(--color-warning)}.badge.added[data-v-cfc97382]{background:var(--color-success-soft);color:var(--color-success)}.badge.deleted[data-v-cfc97382]{background:var(--color-danger-soft);color:var(--color-danger)}.badge.renamed[data-v-cfc97382]{background:var(--color-done-soft);color:var(--color-done)}.badge.untracked[data-v-cfc97382]{background:var(--color-success-soft);color:var(--color-success)}.badge.conflicted[data-v-cfc97382]{background:color-mix(in srgb,var(--color-danger) 10%,var(--bg));color:var(--color-danger);font-size:max(9px,calc(var(--ui-font-size) - 5px))}.badge.ignored[data-v-cfc97382]{background:var(--color-well);color:var(--faint)}.badge.clean[data-v-cfc97382]{background:transparent;color:var(--faint)}.badge.unknown[data-v-cfc97382]{background:var(--color-well);color:var(--muted)}.fpath[data-v-cfc97382]{color:var(--color-text);font-size:var(--text-xs);font-weight:450;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;text-align:left;min-width:0}.fpath[data-v-cfc97382]:before,.fpath[data-v-cfc97382]:after{content:"‎"}.empty-state[data-v-cfc97382]{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:32px 20px;color:var(--muted);font-size:var(--ui-font-size);text-align:center;user-select:none}.empty-state-icon[data-v-cfc97382]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--color-well);color:var(--color-text-muted)}.dv-detail-body[data-v-cfc97382]{flex:1;min-height:0;display:flex;flex-direction:column}.dv-detail-body.dim[data-v-cfc97382]{opacity:.6}.dv-lines-wrap[data-v-cfc97382]{flex:1;min-height:0;overflow:auto;padding-bottom:var(--pfc-host-h, 0px)}.diff-content-enter-active[data-v-cfc97382],.diff-content-leave-active[data-v-cfc97382]{transition:opacity var(--duration-base) var(--ease-out)}.diff-content-enter-from[data-v-cfc97382],.diff-content-leave-to[data-v-cfc97382]{opacity:0}@media(max-width:640px){.ch-list[data-v-cfc97382]{padding:2px 0 12px}.ch-row[data-v-cfc97382]{min-height:44px;padding:8px 14px;gap:12px;font-size:var(--text-xs)}.ch-row[data-v-cfc97382]:active{background:var(--panel2)}.badge[data-v-cfc97382]{width:18px;height:18px}.fpath[data-v-cfc97382]{font-size:var(--text-xs)}.tree-row[data-v-cfc97382]{min-height:40px;padding:8px 14px}}.changes-pane .empty-state[data-v-cfc97382]{font-family:var(--sans)}.ch-row[data-v-cfc97382],.ct-row[data-v-cfc97382]{margin:1px 6px;width:calc(100% - 12px);border-radius:var(--radius-md)}.changes-pane .badge[data-v-cfc97382],.changed-tree .badge[data-v-cfc97382]{border-radius:var(--radius-sm)}.change-count[data-v-cfc97382]{font-family:var(--sans);border-radius:999px}.qcard[data-v-3ba9a622]{display:flex;flex-direction:column;max-height:calc(var(--app-height, 100dvh) - var(--dock-card-top-clearance));margin:var(--space-2) 0;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);overflow:hidden auto;animation:kimi-card-in var(--duration-base) var(--ease-out)}.qcard>.qh[data-v-3ba9a622],.qcard>.qfoot[data-v-3ba9a622]{flex:none}.qcard.minimized[data-v-3ba9a622]{transition:background var(--duration-fast) var(--ease-out)}.qcard.minimized[data-v-3ba9a622]:hover{background:var(--color-hover)}.qh[data-v-3ba9a622]{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4) 0}.qcard.minimized .qh[data-v-3ba9a622]{padding-bottom:var(--space-3);align-items:center}.qcard.minimized .qh.clickable[data-v-3ba9a622]{cursor:pointer}.qh-chip[data-v-3ba9a622]{width:var(--p-chip-num);height:var(--p-chip-num);border-radius:var(--radius-sm);background:var(--color-inline-code-bg);color:var(--color-text);font:var(--weight-medium) var(--text-xs)/var(--p-chip-num) var(--font-ui);text-align:center;flex:none}.qtitle[data-v-3ba9a622]{flex:1;min-width:0;color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-tight);overflow-wrap:anywhere}.qcard.minimized .qtitle[data-v-3ba9a622]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qmin[data-v-3ba9a622],.qclose[data-v-3ba9a622]{flex:none;margin-top:calc((var(--text-lg) * var(--leading-tight) - var(--icon-button-sm)) / 2)}.qmin[data-v-3ba9a622]{margin-left:auto}.qcard.minimized .qmin[data-v-3ba9a622],.qcard.minimized .qclose[data-v-3ba9a622]{margin-top:0}.qbody[data-v-3ba9a622]{min-height:min(var(--question-card-body-min-h),calc(var(--app-height, 100dvh) * .25));overflow-y:auto;padding:var(--space-3) var(--space-4) 0;color:var(--color-text);font:var(--text-base)/var(--leading-normal) var(--font-ui)}.qmdbody[data-v-3ba9a622]{margin-bottom:var(--space-2)}.qopts[data-v-3ba9a622]{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-2)}.qopt[data-v-3ba9a622]{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;font:var(--text-sm)/var(--leading-normal) var(--font-ui);color:var(--color-text);transition:background var(--duration-fast) var(--ease-out);user-select:none}.qopt[data-v-3ba9a622]:hover,.qopt.highlighted[data-v-3ba9a622]{background:var(--color-hover)}.qopt-key[data-v-3ba9a622]{width:var(--p-chip-num);height:var(--p-chip-num);margin-top:calc((var(--text-base) * var(--leading-normal) - var(--p-chip-num)) / 2);border-radius:var(--radius-sm);background:var(--color-inline-code-bg);color:var(--color-text);font:var(--weight-medium) var(--text-xs)/var(--p-chip-num) var(--font-ui);text-align:center;flex:none}.qopt-key[data-v-3ba9a622]:empty{background:transparent}.qopt-glyph[data-v-3ba9a622]{width:16px;height:16px;margin-top:calc((var(--text-base) * var(--leading-normal) - 16px) / 2);flex:none;border:.5px solid var(--color-line-strong);position:relative;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.qopt-glyph.rad[data-v-3ba9a622]{border-radius:50%}.qopt-glyph.chk[data-v-3ba9a622]{border-radius:var(--radius-xs)}.qopt.selected .qopt-glyph[data-v-3ba9a622]{border-color:var(--color-accent)}.qopt.selected .qopt-glyph.rad[data-v-3ba9a622]:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--color-accent)}.qopt.selected .qopt-glyph.chk[data-v-3ba9a622]{background:var(--color-accent)}.qopt.selected .qopt-glyph.chk[data-v-3ba9a622]:after{content:"";position:absolute;left:4.5px;top:1.5px;width:4px;height:8px;border-right:1.5px solid var(--color-text-on-accent);border-bottom:1.5px solid var(--color-text-on-accent);transform:rotate(45deg)}.qopt-text[data-v-3ba9a622]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.qopt-label[data-v-3ba9a622]{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium)}.qopt-desc[data-v-3ba9a622]{color:var(--color-text-muted);font:var(--text-xs)/var(--leading-normal) var(--font-ui)}.qopt-text-other[data-v-3ba9a622]{flex:0 1 auto}.other-input[data-v-3ba9a622]{flex:1;font:var(--text-base) var(--font-ui);border:none;border-bottom:.5px solid var(--color-line);outline:none;padding:2px var(--space-1);color:var(--color-text);background:transparent;min-width:12ch}.other-input[data-v-3ba9a622]:focus-visible{border-bottom-color:var(--color-accent);box-shadow:0 1px 0 0 var(--color-accent)}.qfoot[data-v-3ba9a622]{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border-top:.5px solid var(--color-line)}.qbtns[data-v-3ba9a622]{display:flex;align-items:center;gap:var(--space-1)}.qhint[data-v-3ba9a622]{margin-left:auto;color:var(--color-text-faint);font:var(--text-xs) var(--font-ui);user-select:none}@media(max-width:640px){.qopt[data-v-3ba9a622]{min-height:44px;padding:var(--space-3)}.other-input[data-v-3ba9a622]{flex-basis:100%;min-height:28px}.qfoot[data-v-3ba9a622]{flex-direction:column;align-items:stretch}.qhint[data-v-3ba9a622]{display:none}.qbtns[data-v-3ba9a622]{flex-direction:column;gap:var(--space-2)}.qbtns[data-v-3ba9a622] .ui-button{width:100%;min-height:46px}}.sc[data-v-39e4fc5b]{height:100%;display:flex;flex-direction:column;min-height:0;background:var(--bg);position:relative}.sc-body[data-v-39e4fc5b]{flex:1;min-height:0;overflow-y:auto}.sc-empty[data-v-39e4fc5b]{padding:24px 16px;text-align:center;color:var(--muted);font-size:var(--ui-font-size)}.sc-composer[data-v-39e4fc5b]{position:absolute;left:0;right:0;bottom:0;z-index:var(--z-sticky);display:flex;align-items:flex-end;gap:6px;padding:8px 10px;border-top:.5px solid var(--color-line);background:var(--color-surface-raised)}.sc-input[data-v-39e4fc5b]{flex:1;min-width:0;resize:none;border:.5px solid var(--color-line);border-radius:var(--r-sm);padding:7px 9px;background:var(--bg);color:var(--color-text);font:var(--ui-font-size)/1.5 var(--sans);outline:none;max-height:160px}.sc-input[data-v-39e4fc5b]:focus{border-color:var(--color-accent-bd)}.sc-send[data-v-39e4fc5b]{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--r-sm);background:var(--color-accent);color:var(--color-text-on-accent);cursor:pointer}.sc-send[data-v-39e4fc5b]:disabled{opacity:.4;cursor:default}.sc-send[data-v-39e4fc5b]:not(:disabled):hover{background:var(--color-accent-hover)}.sc-loading[data-v-39e4fc5b]{flex:none;padding:8px 12px 12px}.sc-body[data-v-39e4fc5b] .sending-placeholder,.sc-body[data-v-39e4fc5b] .sending-line{display:none}.rows[data-v-30801af0]{margin:0;padding:0}.row[data-v-30801af0]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;font-size:var(--text-base)}.row dt[data-v-30801af0]{width:96px;flex:none;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:var(--text-xs)}.row dd[data-v-30801af0]{margin:0;color:var(--color-text);font-weight:var(--weight-medium);display:flex;align-items:center;gap:var(--space-2);min-width:0}.row dd.plan-on[data-v-30801af0],.row dd.swarm-on[data-v-30801af0],.row dd.tower-on[data-v-30801af0]{color:var(--color-accent)}.row dd.thinking-value[data-v-30801af0]{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.cache-note[data-v-30801af0]{color:var(--color-text-faint);font-weight:var(--weight-regular);font-size:var(--text-xs)}.ctx-text[data-v-30801af0]{flex:none}.bar[data-v-30801af0]{width:80px;height:5px;border-radius:var(--radius-full);background:var(--color-line);overflow:hidden;flex:none}.bar i[data-v-30801af0]{display:block;height:100%;background:var(--color-accent)}@media(max-width:640px){.rows[data-v-30801af0]{overflow-y:auto;-webkit-overflow-scrolling:touch}.row[data-v-30801af0]{align-items:flex-start;flex-direction:column;gap:var(--space-1);min-height:48px}.row dt[data-v-30801af0]{width:auto}.row dd[data-v-30801af0]{max-width:100%;flex-wrap:wrap}}.tp[data-v-bc291681]{height:100%;display:flex;flex-direction:column;min-height:0;background:var(--color-bg)}.tp-body[data-v-bc291681]{flex:1;min-height:0;overflow-y:auto;margin:0;padding:12px 14px;padding-bottom:max(12px,var(--pfc-host-h, 0px));font:var(--text-base)/var(--leading-relaxed) var(--font-ui);font-weight:400;color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word}.td[data-v-44502863]{display:flex;flex-direction:column;height:100%;min-height:0}.td-body[data-v-44502863]{flex:1;min-height:0;overflow:auto;padding-bottom:var(--pfc-host-h, 0px)}.td-empty[data-v-44502863]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);height:100%;padding:var(--space-6);color:var(--color-text-muted);font-size:var(--text-sm);text-align:center}.filter-control[data-v-d704e40b]{display:inline-flex;min-width:0}.fc-chevron[data-v-d704e40b]{color:var(--color-text-faint);transition:transform var(--duration-base) var(--ease-out)}.fc-trigger[aria-expanded=true] .fc-chevron[data-v-d704e40b]{transform:rotate(180deg)}.fc-menu[data-v-d704e40b]{position:fixed;z-index:var(--z-dropdown)}.fc-menu[data-v-d704e40b] .ui-menu{min-width:0}.fc-label[data-v-d704e40b]{flex:1;white-space:nowrap}.filter-control[data-v-d704e40b] .ui-seg__item[data-icon=circle-check] .ui-seg__icon,.fc-menu .kw-icon[data-icon=circle-check][data-v-d704e40b]{transform:scale(.91)}.fc-check[data-v-d704e40b]{color:var(--color-accent)}.goal-panel[data-v-bb20dfda]{display:flex;flex-direction:column;gap:var(--space-2);overflow-wrap:anywhere}.goal-criterion[data-v-bb20dfda]{padding-top:var(--space-2);border-top:.5px solid var(--color-line)}.goal-criterion-label[data-v-bb20dfda]{display:flex;align-items:center;gap:var(--space-1);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-section-label);line-height:var(--leading-normal);margin-bottom:var(--space-1)}.plan-panel[data-v-bb6a7d92]{display:flex;flex-direction:column;gap:var(--space-2)}.plan-review-row[data-v-bb6a7d92]{display:flex;gap:var(--space-2);font-size:var(--text-sm)}.plan-review-label[data-v-bb6a7d92]{flex:none;color:var(--color-text-muted)}.plan-review-feedback[data-v-bb6a7d92]{color:var(--color-text-muted)}.plan-path-only[data-v-bb6a7d92]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.plan-path-hint[data-v-bb6a7d92]{color:var(--color-text-muted);font-size:var(--text-sm)}.plan-path[data-v-bb6a7d92]{max-width:100%;font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-empty[data-v-bb6a7d92]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);color:var(--color-text-faint);font-size:var(--text-sm)}.plan-empty-ico[data-v-bb6a7d92]{width:var(--p-empty-ico);height:var(--p-empty-ico);color:var(--color-line-strong)}.sg-empty[data-v-b7be8bd8]{height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-faint);font-size:var(--text-sm);user-select:none}.sg-grid[data-v-b7be8bd8]{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--p-subagent-card-min),1fr));gap:var(--space-2)}.sg-card[data-v-b7be8bd8]{position:relative;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--color-selected)}.sg-card.openable[data-v-b7be8bd8]{cursor:pointer}.sg-card.openable[data-v-b7be8bd8]:hover{background:var(--color-selected-hover)}.sg-card[data-v-b7be8bd8]:not(.openable){cursor:not-allowed}.sg-open[data-v-b7be8bd8]{position:absolute;inset:0;padding:0;border:none;border-radius:var(--radius-lg);background:transparent;cursor:pointer}.sg-open[data-v-b7be8bd8]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.sg-top[data-v-b7be8bd8]{display:flex;align-items:center;gap:var(--space-2)}.sg-name[data-v-b7be8bd8]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-weight:var(--weight-medium)}.sg-num[data-v-b7be8bd8]{flex:none;color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.sg-card:has(.sg-cancel) .sg-top[data-v-b7be8bd8]{padding-right:calc(var(--icon-button-sm) + var(--space-1))}@media(hover:none){.sg-card:has(.sg-cancel) .sg-top[data-v-b7be8bd8]{padding-right:calc(var(--touch-target-min) + var(--space-1))}}.sg-desc[data-v-b7be8bd8]{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-caption);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sg-foot[data-v-b7be8bd8]{display:flex;flex-direction:column;gap:var(--space-1)}.sg-model[data-v-b7be8bd8]{display:flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs)}.sg-model span[data-v-b7be8bd8]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sg-status[data-v-b7be8bd8]{display:flex;align-items:center}.sg-state[data-v-b7be8bd8]{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs);text-autospace:normal}.sg-ic-done[data-v-b7be8bd8]{color:var(--color-success);transform:scale(.91)}.s-fail .sg-state[data-v-b7be8bd8]{color:var(--color-danger)}.sg-time[data-v-b7be8bd8]{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-autospace:normal}.sg-cancel[data-v-b7be8bd8]{position:absolute;top:var(--space-2);right:var(--space-2);color:var(--color-text-muted);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.sg-card:hover .sg-cancel[data-v-b7be8bd8],.sg-cancel[data-v-b7be8bd8]:focus-visible{opacity:1}.sg-cancel[data-v-b7be8bd8]:hover{color:var(--color-danger)}@media(hover:none){.sg-cancel[data-v-b7be8bd8]{top:0;right:0;width:var(--touch-target-min);height:var(--touch-target-min);opacity:1}}.taskspane[data-v-894341d0]{flex:1;min-height:0;display:flex;flex-direction:column}.tp-list[data-v-894341d0]{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-05)}.tp-row[data-v-894341d0]{padding:var(--space-1) 0}.tp-row.fail .tp-name[data-v-894341d0]{color:var(--color-danger)}.tp-main[data-v-894341d0]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-base)}.tp-row.expandable>.tp-main[data-v-894341d0]{position:relative;border-radius:var(--radius-lg);padding:var(--space-1) var(--space-2);margin:calc(-1 * var(--space-1)) 0}.tp-row.expandable>.tp-main[data-v-894341d0]:hover{background:var(--color-hover)}.tp-row[data-v-894341d0]:not(.expandable){cursor:not-allowed}.tp-open[data-v-894341d0]{position:absolute;inset:0;padding:0;border:none;border-radius:var(--radius-lg);background:transparent;cursor:pointer}.tp-open[data-v-894341d0]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tp-chevron[data-v-894341d0]{flex:none;color:var(--muted)}.tp-name[data-v-894341d0]{color:var(--color-text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-meta[data-v-894341d0]{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted)}.tp-glyph[data-v-894341d0]{flex:none;width:var(--p-ic-md);height:var(--p-ic-md);display:inline-flex;align-items:center;justify-content:center}.tp-done[data-v-894341d0]{color:var(--color-success);transform:scale(.91)}.tp-cancelled[data-v-894341d0]{color:var(--color-text-muted)}.tp-fail[data-v-894341d0]{color:var(--color-danger)}.tp-time[data-v-894341d0]{flex:none;font-size:var(--text-base);color:var(--muted);font-variant-numeric:tabular-nums;text-autospace:normal}.tp-model[data-v-894341d0]{flex:0 1 auto;min-width:0;font-size:var(--text-base);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-stop[data-v-894341d0]{position:relative;flex:none;color:var(--color-danger)}.tp-stop[data-v-894341d0]:hover{color:var(--color-danger)}@media(hover:none){.tp-stop[data-v-894341d0]{width:var(--touch-target-min);height:var(--touch-target-min)}.tp-row.expandable>.tp-main[data-v-894341d0]{min-height:var(--touch-target-min)}}.tp-empty[data-v-894341d0]{flex:1;display:flex;align-items:center;justify-content:center;color:var(--faint);font-size:var(--ui-font-size-sm);user-select:none}@media(max-width:640px){.tp-main[data-v-894341d0]{flex-wrap:wrap;row-gap:var(--space-1)}.tp-name[data-v-894341d0]{font-size:var(--ui-font-size-sm)}.tp-meta[data-v-894341d0]{order:10;flex:1 1 100%;padding-left:calc(var(--p-ic-md) + var(--space-2));font-size:var(--ui-font-size-xs)}}.todo-card[data-v-97ded963]{display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--text-base)}.tc-row[data-v-97ded963]{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text)}.tc-name[data-v-97ded963]{flex:1;min-width:0;overflow-wrap:anywhere;line-height:var(--leading-caption)}.tc-row.s-in_progress .tc-name[data-v-97ded963]{font-weight:var(--weight-medium)}.tc-row.s-pending .tc-name[data-v-97ded963]{color:var(--color-text-muted)}.tc-glyph[data-v-97ded963]{flex:none;width:var(--p-ic-md);height:var(--p-ic-md);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full)}.tc-glyph.g-done[data-v-97ded963]{color:var(--color-success)}.tc-glyph.g-pending[data-v-97ded963]{border:var(--p-ring-stroke) solid var(--color-line-strong)}.tc-glyph .tc-spin[data-v-97ded963]{color:var(--color-text)}.tc-empty[data-v-97ded963]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);color:var(--color-text-faint);font-size:var(--text-sm)}.tc-empty-ico[data-v-97ded963]{width:var(--p-empty-ico);height:var(--p-empty-ico);color:var(--color-line-strong)}@media(max-width:640px){.todo-card[data-v-97ded963]{font-size:var(--text-lg)}.tc-row[data-v-97ded963]{padding:var(--space-2) var(--space-3)}}.wp-head-tab[data-v-2dd73e1a]{display:inline-flex;align-items:center;gap:var(--space-2);padding:0;border:.5px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--leading-solid);white-space:nowrap;flex:none}.wp-head-tab[data-v-2dd73e1a] svg{width:1.5em;height:1.5em}.wp-head-meta[data-v-2dd73e1a]{color:var(--color-text-muted);text-autospace:normal}.wp-head-actions[data-v-2dd73e1a]{margin-left:auto;display:flex;align-items:center;gap:var(--space-1);flex:none}@media(max-width:480px){.wp-head-actions[data-v-2dd73e1a]{flex-basis:100%;margin-left:0}}@media(hover:none){.wp-head-actions[data-v-2dd73e1a] .ui-seg__item{min-height:var(--touch-target-min)}}@media(max-width:640px),(hover:none){.wp-head-actions[data-v-2dd73e1a] .ui-seg__item{height:var(--touch-target-min)}.wp-head-actions[data-v-2dd73e1a] .ui-icon-button{width:var(--touch-target-min);height:var(--touch-target-min)}.wp-head-actions[data-v-2dd73e1a] .fc-trigger{min-height:var(--touch-target-min)}}.sheet-root[data-v-d06d3fe8]{position:fixed;inset:0;z-index:var(--z-overlay);display:flex;flex-direction:column;justify-content:flex-end}.sheet-scrim[data-v-d06d3fe8]{position:absolute;inset:0;background:#0d111773}.sheet-panel[data-v-d06d3fe8]{position:relative;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-bottom:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-xl);max-height:calc(var(--app-height, 100dvh) * .86);display:flex;flex-direction:column;min-height:0;font-family:var(--font-ui);color:var(--color-text)}.sheet-grab[data-v-d06d3fe8]{flex:none;align-self:center;width:56px;height:18px;padding:0;border:none;background:none;cursor:pointer;position:relative;margin-top:4px}.sheet-grab[data-v-d06d3fe8]:after{content:"";position:absolute;left:50%;top:7px;transform:translate(-50%);width:38px;height:5px;border-radius:var(--radius-full);background:var(--color-line)}.sheet-head[data-v-d06d3fe8]{flex:none;display:flex;align-items:center;justify-content:space-between;padding:6px 16px 10px}.sheet-title[data-v-d06d3fe8]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.sheet-body[data-v-d06d3fe8]{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:max(16px,var(--safe-bottom))}.sheet-enter-active[data-v-d06d3fe8],.sheet-leave-active[data-v-d06d3fe8]{transition:opacity var(--duration-slow) var(--ease-out)}.sheet-enter-active .sheet-panel[data-v-d06d3fe8],.sheet-leave-active .sheet-panel[data-v-d06d3fe8]{transition:transform var(--duration-slow) var(--ease-out)}.sheet-enter-from[data-v-d06d3fe8],.sheet-leave-to[data-v-d06d3fe8]{opacity:0}.sheet-enter-from .sheet-panel[data-v-d06d3fe8],.sheet-leave-to .sheet-panel[data-v-d06d3fe8]{transform:translateY(102%)}.composer-media-rail[data-v-9480907e]{position:relative;display:flex;align-items:center;gap:var(--space-2);min-width:0;padding:var(--p-composer-media-inset) var(--p-composer-media-inset) 0;overflow-x:auto;scrollbar-width:none;touch-action:pan-y}.composer-media-drop-indicator[data-v-9480907e]{position:absolute;top:var(--p-composer-media-inset);z-index:2;width:var(--space-05);height:var(--p-composer-media-thumb);border-radius:var(--radius-full);background:var(--color-text);transform:translate(-50%);pointer-events:none}.composer-media-rail[data-v-9480907e] .media-thumb{transition:transform var(--duration-fast) var(--ease-in-out)}.composer-media-rail[data-v-9480907e] .media-thumb.is-dragging{z-index:3;transition:none}@media(prefers-reduced-motion:reduce){.composer-media-rail[data-v-9480907e] .media-thumb{transition:none}}.composer-media-rail[data-v-9480907e]::-webkit-scrollbar{display:none}.mention-menu[data-menu-frame][data-v-930ca033]{position:absolute;bottom:calc(100% + var(--space-2));left:0;right:0;padding:var(--space-1-5) var(--space-3);background:var(--color-menu-bg-frost);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);z-index:var(--z-dropdown)}.mention-menu.is-sheet[data-menu-frame][data-v-930ca033]{position:static;padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;border-radius:0;box-shadow:none;z-index:auto}.mention-menu.is-sheet .mention-scroll[data-v-930ca033]{margin:0;padding:var(--space-1) var(--space-2)}.mention-menu.is-sheet .mention-item[data-v-930ca033]{margin:0;padding-left:var(--space-2);padding-right:var(--space-2)}.mention-menu.is-sheet .mention-section-label[data-v-930ca033]{margin-left:0;margin-right:0}.mention-menu.is-sheet .mention-state[data-v-930ca033]{padding-left:var(--space-4)}.mention-scroll[data-v-930ca033]{max-height:var(--p-mention-menu-h);margin:0 calc(-1 * var(--menu-row-hug));padding:0 var(--menu-row-hug);overflow-y:auto;scrollbar-width:none}.mention-scroll[data-v-930ca033]::-webkit-scrollbar{display:none}.scroll-thumb[data-v-930ca033]{position:absolute;right:var(--menu-scrollbar-edge);width:var(--menu-scrollbar-width);border-radius:var(--radius-full);background:var(--color-menu-scrollbar);transition:background var(--duration-base) var(--ease-out);cursor:default;touch-action:none;z-index:var(--z-raised)}.mention-menu:hover .scroll-thumb[data-v-930ca033]{background:var(--color-menu-scrollbar-hover)}.scroll-thumb[data-v-930ca033]:before{content:"";position:absolute;top:0;bottom:0;left:calc(-1 * var(--space-2));right:0}.mention-state[data-v-930ca033]{padding:var(--space-2) var(--space-1);font-family:var(--font-ui);font-size:var(--ui-b2)}.mention-section-label[data-v-930ca033]{margin:0 calc(-1 * var(--menu-row-hug));padding:var(--space-1) var(--space-2) var(--space-05);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.mention-section-label.after-section[data-v-930ca033]{margin-top:var(--space-2)}.mention-spin[data-v-930ca033]{position:absolute;top:var(--space-2);right:var(--space-3);color:var(--color-text-muted);z-index:var(--z-raised)}.dim[data-v-930ca033]{color:var(--color-text-muted)}.mention-item[data-v-930ca033]{display:flex;align-items:center;gap:var(--menu-row-gap-icon);margin:0 calc(-1 * var(--menu-row-hug));padding:var(--menu-row-padding-block) var(--space-2);cursor:pointer;font-family:var(--font-ui);font-size:var(--text-sm);border-radius:var(--radius-menu-row)}.mention-icon[data-v-930ca033]{display:inline-flex;align-items:center;justify-content:center;width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--muted);flex-shrink:0}.mention-icon[data-v-930ca033] svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block}.mention-attachment-thumb[data-v-930ca033]{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--icon-button-sm);height:var(--icon-button-sm);overflow:hidden;border:.5px solid var(--color-line);border-radius:var(--radius-xs);background:var(--color-well);color:var(--muted);flex-shrink:0}.mention-attachment-thumb[data-v-930ca033] .mention-attachment-media{display:block;width:100%;height:100%;object-fit:cover}.mention-attachment-icon[data-v-930ca033]{width:var(--p-ic-md);height:var(--p-ic-md)}.mention-attachment-icon[data-v-930ca033] svg{width:var(--p-ic-md);height:var(--p-ic-md)}.mention-item:hover .mention-icon[data-v-930ca033],.mention-item.active .mention-icon[data-v-930ca033]{color:var(--color-text-strong)}.mention-item[data-v-930ca033]:hover{background:var(--color-hover)}.mention-item:hover .mention-name[data-v-930ca033],.mention-item.active .mention-name[data-v-930ca033]{color:var(--color-text-strong)}.mention-item.active[data-v-930ca033]{background:var(--color-selected)}.mention-item+.mention-item[data-v-930ca033]{margin-top:var(--menu-rows-seam)}.mention-item[data-v-930ca033]{transition:opacity var(--duration-slow) var(--ease-out)}.mention-item.stale[data-v-930ca033]{opacity:var(--opacity-stale)}@media(hover:none){.mention-item[data-v-930ca033]{min-height:var(--touch-target-min);padding-top:var(--menu-row-touch-padding-block);padding-bottom:var(--menu-row-touch-padding-block)}}.mention-name[data-v-930ca033]{color:var(--color-text);font-weight:500;flex-shrink:0}.mention-name .mention-hit[data-v-930ca033]{color:var(--color-text-strong);font-weight:var(--weight-semibold)}.mention-meta .mention-hit[data-v-930ca033]{color:var(--color-text)}.mention-meta[data-v-930ca033]{color:var(--color-text-muted);font-size:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slash-menu[data-menu-frame][data-v-e993042f]{position:absolute;bottom:calc(100% + var(--space-2));left:0;right:0;padding:var(--space-1-5) var(--space-3);background:var(--color-menu-bg-frost);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);z-index:var(--z-dropdown)}.slash-menu.is-sheet[data-menu-frame][data-v-e993042f]{position:static;padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;border-radius:0;box-shadow:none;z-index:auto}.slash-menu.is-sheet .slash-scroll[data-v-e993042f]{margin:0;padding:var(--space-1) var(--space-2)}.slash-menu.is-sheet .slash-item[data-v-e993042f]{margin:0;padding-left:var(--space-2);padding-right:var(--space-2)}.slash-scroll[data-v-e993042f]{max-height:var(--p-slash-menu-h);margin:0 calc(-1 * var(--menu-row-hug));padding:0 var(--menu-row-hug);overflow-y:auto;scrollbar-width:none}.slash-scroll[data-v-e993042f]::-webkit-scrollbar{display:none}.scroll-thumb[data-v-e993042f]{position:absolute;right:var(--menu-scrollbar-edge);width:var(--menu-scrollbar-width);border-radius:var(--radius-full);background:var(--color-menu-scrollbar);transition:background var(--duration-base) var(--ease-out);cursor:default;touch-action:none;z-index:var(--z-raised)}.slash-menu:hover .scroll-thumb[data-v-e993042f]{background:var(--color-menu-scrollbar-hover)}.scroll-thumb[data-v-e993042f]:before{content:"";position:absolute;top:0;bottom:0;left:calc(-1 * var(--space-2));right:0}.slash-item[data-v-e993042f]{display:flex;align-items:baseline;gap:var(--space-2);margin:0 calc(-1 * var(--menu-row-hug));padding:var(--menu-row-padding-block) var(--menu-row-padding-inline);cursor:pointer;font-family:var(--font-ui);font-size:var(--ui-b2);border-radius:var(--radius-menu-row)}.slash-item[data-v-e993042f]:hover{background:var(--color-hover)}.slash-item.active[data-v-e993042f]{background:var(--color-selected)}.slash-item+.slash-item[data-v-e993042f]{margin-top:var(--menu-rows-seam)}.slash-name[data-v-e993042f]{flex:none;max-width:60%;color:var(--color-text);font-weight:500;min-width:0;line-height:var(--leading-normal);overflow-wrap:anywhere}.slash-match[data-v-e993042f]{font-weight:var(--weight-semibold)}.slash-empty[data-v-e993042f]{padding:var(--space-1-5) var(--space-1);color:var(--color-text-muted)}@media(hover:none){.slash-item[data-v-e993042f]{min-height:var(--touch-target-min);padding-top:var(--menu-row-touch-padding-block);padding-bottom:var(--menu-row-touch-padding-block)}}.slash-desc[data-v-e993042f]{flex:1;min-width:0;color:var(--color-text-muted);font-size:var(--ui-b2);font-weight:var(--weight-regular);line-height:var(--leading-normal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slash-desc-match[data-v-e993042f]{font-weight:var(--weight-semibold)}@media(max-width:520px){.slash-item[data-v-e993042f]{flex-direction:column;align-items:stretch;gap:var(--space-05)}.slash-name[data-v-e993042f]{max-width:none}}.composer[data-v-a1d223ba]{padding:7px var(--dock-inline-right, 16px) 12px var(--dock-inline-left, 16px);background:transparent;transition:background .12s}.composer.drag-over[data-v-a1d223ba]{background:var(--color-accent-soft)}.drop-overlay[data-v-a1d223ba]{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-bg) 72%,transparent);pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--duration-base) ease,visibility var(--duration-base)}.drop-overlay.show[data-v-a1d223ba]{opacity:1;visibility:visible}.drop-card[data-v-a1d223ba]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-radius:var(--radius-lg);border:.5px dashed var(--color-accent);background:var(--color-bg);color:var(--color-accent);font-size:var(--ui-font-size-lg);font-weight:var(--weight-medium);box-shadow:var(--shadow-md)}.composer-card[data-v-a1d223ba]{--composer-control-size: var(--space-8);--composer-send-size: var(--composer-control-size);--composer-control-inset: var(--space-2);--composer-valve-floor: 4em;--composer-valve-expand-margin: 3.4em;position:relative;border:.5px solid var(--color-composer-line);border-radius:var(--radius-composer);corner-shape:var(--corner-shape-composer);background:var(--color-composer-bg);box-shadow:var(--shadow-input);user-select:none;container-type:inline-size}.composer-card[data-v-a1d223ba]:after{content:"";position:absolute;inset:0;border:inherit;border-color:var(--color-composer-focus-line);border-radius:var(--radius-composer);corner-shape:var(--corner-shape-composer);opacity:0;pointer-events:none;transition:opacity var(--duration-slow) var(--ease-in-out)}.composer-card[data-v-a1d223ba]:focus-within:after{opacity:1}.file-input-hidden[data-v-a1d223ba]{display:none}.cin-wrap[data-v-a1d223ba]{position:relative;padding:14px 16px 8px}.composer-card.has-media .cin-wrap[data-v-a1d223ba]{padding-top:var(--p-composer-media-inset)}.input-row[data-v-a1d223ba]{position:relative;display:flex;align-items:flex-start;gap:var(--space-2)}.expand-btn[data-v-a1d223ba]{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--dim);cursor:pointer;padding:0;transition:background .12s,color .12s}.expand-btn[data-v-a1d223ba]:hover{background:var(--panel2);color:var(--color-text)}.expand-btn[data-v-a1d223ba]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ph[data-v-a1d223ba]{color:var(--faint);caret-color:var(--color-text);position:relative;flex:1;border:none;outline:none;font-family:var(--font-ui);font-size:var(--content-font-size);text-autospace:normal;background:transparent;min-height:36px;max-height:calc(var(--app-height, 100dvh) / 4);overflow-y:auto;scrollbar-width:none;line-height:1.5;margin-bottom:6px;user-select:text}.ph[data-v-a1d223ba]::-webkit-scrollbar{display:none}.ph[data-v-a1d223ba]:not([data-empty=true]){color:var(--color-text)}.ph[data-v-a1d223ba] .ProseMirror{outline:none;white-space:pre-wrap;overflow-wrap:break-word;min-height:inherit}.ph[data-v-a1d223ba] .ProseMirror p{margin:0}.ph[data-v-a1d223ba] .ProseMirror p:first-child{text-indent:var(--wm-pill-inline-reserve, 0px);padding-top:var(--wm-pill-block-reserve, 0px)}.ph[data-v-a1d223ba] img.ProseMirror-separator{display:inline!important;border:none!important;margin:0!important}.ph[data-v-a1d223ba] .ProseMirror-trailingBreak:not(:only-child){display:none}.ph[data-v-a1d223ba] .mention-pill.ProseMirror-selectednode{color:var(--color-text)}.ph[data-v-a1d223ba] .wm-pill{--wm-pill-lane: inline;position:absolute;z-index:var(--z-raised);top:0;left:0;display:inline-flex;align-items:center;gap:var(--space-1);vertical-align:top;height:calc(var(--content-font-size) * 1.5);margin-left:calc(-1 * var(--space-05));margin-right:var(--space-1-5);padding:0 calc((var(--content-font-size) * 1.5 - var(--wm-x-size)) / 2) 0 var(--space-2);border:none;border-radius:var(--radius-full);background:var(--color-selected);color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:calc(var(--content-font-size) * 1.5);white-space:nowrap;user-select:none}.ph[data-v-a1d223ba] .wm-icon{display:inline-flex}.ph[data-v-a1d223ba] .wm-x{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--wm-x-size);height:var(--wm-x-size);padding:0;border:.5px solid transparent;border-radius:var(--radius-full);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.ph[data-v-a1d223ba] .wm-x:hover{background:var(--color-hover);color:var(--color-text)}.ph[data-v-a1d223ba] .wm-x:focus-visible{outline:none;box-shadow:var(--p-focus-ring);background:var(--color-hover);color:var(--color-text)}.ph[data-v-a1d223ba] .wm-x:before{content:"";position:absolute;inset:calc(-1 * var(--wm-x-ring))}.ph[data-wm=true][data-v-a1d223ba] .ProseMirror{padding-left:var(--space-05)}.ph[data-v-a1d223ba] .composer-placeholder-overlay{position:absolute;z-index:1;top:0;left:0;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--muted);pointer-events:none;user-select:none}.ph[data-v-a1d223ba] .composer-placeholder-overlay[hidden]{display:none}.ph[data-v-a1d223ba] .composer-placeholder-overlay kbd{display:inline-flex;align-items:center;justify-content:center;min-width:var(--kbd-min-width);height:var(--kbd-height);padding:0 var(--kbd-padding-x);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-xs);background:transparent;color:inherit;font-family:var(--font-kbd);font-size:var(--kbd-font-size);line-height:var(--leading-solid)}.composer.expanded .ph[data-v-a1d223ba]{min-height:calc(var(--app-height, 100dvh) * .7);max-height:calc(var(--app-height, 100dvh) * .7)}.compact-chip[data-v-a1d223ba]{height:var(--composer-control-size);padding:0 var(--space-2);border:.5px solid transparent;border-radius:var(--radius-full);background:transparent;color:var(--color-warning);font-family:var(--mono);font-size:var(--ui-font-size);cursor:pointer;line-height:1;flex:none;transition:background var(--duration-base) var(--ease-out)}.compact-chip[data-v-a1d223ba]:hover{background:var(--color-hover)}.compact-chip.gone[data-v-a1d223ba],.model-pill.model-gone[data-v-a1d223ba]{display:none}.composer-attach[data-v-a1d223ba]{width:var(--composer-control-size);height:var(--composer-control-size);border-radius:var(--radius-full);flex:none}.add-menu[data-v-a1d223ba]{position:absolute;bottom:calc(100% + var(--space-2));left:0;right:0;z-index:var(--z-dropdown);background:var(--color-menu-bg-frost);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);padding:var(--space-1-5) var(--space-3);display:flex;flex-direction:column;gap:var(--menu-rows-seam);font-family:var(--font-ui);transform-origin:bottom left}.am-scroll[data-v-a1d223ba]{max-height:var(--p-add-menu-h);margin:0 calc(-1 * var(--menu-row-hug));padding:0 var(--menu-row-hug);overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column;gap:var(--menu-rows-seam)}.am-scroll[data-v-a1d223ba]::-webkit-scrollbar{display:none}.scroll-thumb[data-v-a1d223ba]{position:absolute;right:var(--menu-scrollbar-edge);width:var(--menu-scrollbar-width);border-radius:var(--radius-full);background:var(--color-menu-scrollbar);transition:background var(--duration-base) var(--ease-out);pointer-events:none;z-index:var(--z-raised)}.add-menu:hover .scroll-thumb[data-v-a1d223ba]{background:var(--color-menu-scrollbar-hover)}.msheet-search[data-v-a1d223ba]{padding:0 var(--space-4) var(--space-2)}.msheet-add[data-v-a1d223ba]{display:flex;flex-direction:column;gap:var(--menu-rows-seam);padding:0 var(--menu-row-hug);font-family:var(--font-ui)}.am-row[data-v-a1d223ba]{display:flex;align-items:center;gap:var(--menu-row-gap-icon);margin:0 calc(-1 * var(--menu-row-hug));padding:var(--menu-row-padding-block) var(--menu-row-padding-inline);border:none;border-radius:var(--radius-menu-row);background:none;cursor:pointer;font-size:var(--ui-font-size);color:var(--color-text);text-align:left;transition:background var(--duration-base) var(--ease-out)}.am-row[data-v-a1d223ba]:hover{background:var(--color-hover)}.am-row[data-v-a1d223ba]:focus-visible{background:var(--color-selected);outline:none}@media(hover:none){.am-row[data-v-a1d223ba]{padding-top:var(--menu-row-touch-padding-block);padding-bottom:var(--menu-row-touch-padding-block)}}.am-row:hover .am-icon[data-v-a1d223ba],.am-row:focus-visible .am-icon[data-v-a1d223ba]{color:var(--color-text)}.am-icon[data-v-a1d223ba]{flex:none;width:var(--p-ic-sm);display:flex;justify-content:center;color:var(--color-text-muted);transition:color var(--duration-base) var(--ease-out)}.am-name[data-v-a1d223ba]{flex:none;font-weight:var(--weight-medium)}.am-desc[data-v-a1d223ba]{margin-left:var(--space-1);color:var(--color-text-muted);font-size:var(--ui-font-size-sm)}.send[data-v-a1d223ba]{width:var(--composer-send-size);height:var(--composer-send-size);border-radius:var(--radius-full);background:var(--color-send-bg);color:var(--color-send-icon);border:none;box-shadow:var(--shadow-send);padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--duration-slow) var(--ease-out),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-slow) var(--ease-out);position:relative}.send[data-v-a1d223ba]:hover:not(:disabled){background:var(--color-send-bg-hover);box-shadow:var(--shadow-send-hover)}.send[data-v-a1d223ba]:active{transform:scale(.92)}.send[data-v-a1d223ba]:disabled{cursor:not-allowed;background:var(--color-send-bg-disabled);color:var(--color-send-icon-disabled);opacity:var(--opacity-send-disabled)}.send[data-v-a1d223ba]:disabled:active{transform:none}.send.is-starting[data-v-a1d223ba]:disabled{background:var(--color-send-bg);color:var(--color-send-icon)}.send.is-starting[data-v-a1d223ba] .ui-spinner{color:var(--color-send-icon)}.send.is-starting[data-v-a1d223ba] .ui-spinner__track{stroke:color-mix(in srgb,var(--color-send-icon) 32%,transparent)}.send svg[data-v-a1d223ba]{flex:none;width:var(--composer-send-icon-size);height:var(--composer-send-icon-size)}.stop[data-v-a1d223ba]{width:var(--composer-send-size);height:var(--composer-send-size);border-radius:var(--radius-full);background:var(--color-subtle);color:var(--color-stop-glyph);border:none;box-shadow:var(--shadow-xs);padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .16s ease,color .16s ease,transform .12s ease}.stop[data-v-a1d223ba]:hover{background:var(--color-danger);color:var(--color-text-on-accent)}.stop[data-v-a1d223ba]:active{transform:scale(.92)}.stop svg[data-v-a1d223ba]{flex:none;width:var(--composer-send-icon-size);height:var(--composer-send-icon-size)}.toolbar[data-v-a1d223ba]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-1) var(--composer-control-inset) var(--composer-control-inset);position:relative}.menu-measure[data-v-a1d223ba]{position:absolute;width:max-content;height:0;overflow:hidden;visibility:hidden;pointer-events:none}.toolbar-left[data-v-a1d223ba],.toolbar-right[data-v-a1d223ba]{display:flex;align-items:center;gap:var(--space-1);min-width:0}.toolbar-left[data-v-a1d223ba]{flex:none;overflow:hidden}.toolbar-right[data-v-a1d223ba]{flex:1 1 auto;justify-content:flex-end}.perm-pill[data-v-a1d223ba],.swarm-chip[data-v-a1d223ba],.tower-chip[data-v-a1d223ba],.model-pill[data-v-a1d223ba]{position:relative;display:inline-flex;align-items:center;gap:var(--space-1);height:var(--composer-control-size);padding:0 var(--space-3);border:.5px solid transparent;border-radius:var(--radius-full);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size);font-weight:var(--weight-medium);line-height:1;white-space:nowrap;cursor:pointer;user-select:none;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.perm-pill[data-v-a1d223ba]{font-size:var(--ui-font-size-sm)}.perm-pill[data-v-a1d223ba]:after,.swarm-chip[data-v-a1d223ba]:after,.tower-chip[data-v-a1d223ba]:after,.model-pill[data-v-a1d223ba]:after{content:"";position:absolute;inset:0;border-radius:var(--radius-full);background:var(--color-hover);opacity:0;transition:opacity var(--duration-base) var(--ease-out);pointer-events:none}.perm-pill[data-v-a1d223ba]:hover:after,.swarm-chip[data-v-a1d223ba]:hover:after,.tower-chip[data-v-a1d223ba]:hover:after,.model-pill[data-v-a1d223ba]:hover:after{opacity:1}.perm-pill.open[data-v-a1d223ba],.model-pill.open[data-v-a1d223ba]{background:var(--color-accent-soft)}.swarm-chip[data-v-a1d223ba],.tower-chip[data-v-a1d223ba]{cursor:default}.swarm-x[data-v-a1d223ba],.tower-x[data-v-a1d223ba]{margin-right:calc(var(--composer-control-size) / 2 - var(--space-3) - var(--icon-button-sm) / 2);color:inherit;opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.swarm-chip .swarm-x[data-v-a1d223ba],.tower-chip .tower-x[data-v-a1d223ba]{border-radius:var(--radius-full)}.swarm-chip:hover .swarm-x[data-v-a1d223ba],.swarm-x[data-v-a1d223ba]:focus-visible,.tower-chip:hover .tower-x[data-v-a1d223ba],.tower-x[data-v-a1d223ba]:focus-visible{opacity:1}@media(hover:none){.toolbar-left[data-v-a1d223ba]{padding-right:var(--space-2)}.swarm-chip[data-v-a1d223ba],.tower-chip[data-v-a1d223ba]{margin-right:calc((var(--touch-target-min) - var(--icon-button-sm)) / 2 - var(--space-1))}.swarm-x[data-v-a1d223ba],.tower-x[data-v-a1d223ba]{opacity:1;position:relative}.swarm-x[data-v-a1d223ba]:before,.tower-x[data-v-a1d223ba]:before{content:"";position:absolute;inset:calc(-1 * (var(--touch-target-min) - var(--icon-button-sm)) / 2)}}.perm-pill.perm-manual[data-v-a1d223ba]{color:var(--dim)}.perm-pill.perm-yolo[data-v-a1d223ba]{color:var(--color-warning)}.perm-pill.perm-auto[data-v-a1d223ba]{color:var(--color-danger)}.perm-pill-icon[data-v-a1d223ba]{flex:none}.perm-pill[data-v-a1d223ba],.swarm-chip[data-v-a1d223ba],.tower-chip[data-v-a1d223ba]{flex:none;padding-left:var(--space-2)}.swarm-ic[data-v-a1d223ba],.swarm-x[data-v-a1d223ba],.tower-ic[data-v-a1d223ba],.tower-x[data-v-a1d223ba]{flex:none}.labels-collapsed .perm-pill[data-v-a1d223ba]{width:var(--composer-control-size);height:var(--composer-control-size);padding:0;justify-content:center;flex:none}.labels-collapsed .perm-pill-label[data-v-a1d223ba]{display:none}.labels-collapsed .swarm-chip[data-v-a1d223ba],.labels-collapsed .tower-chip[data-v-a1d223ba]{position:relative;width:var(--composer-control-size);height:var(--composer-control-size);padding:0;justify-content:center;flex:none}.labels-collapsed .swarm-label[data-v-a1d223ba],.labels-collapsed .tower-label[data-v-a1d223ba]{display:none}.labels-collapsed .swarm-ic[data-v-a1d223ba],.labels-collapsed .tower-ic[data-v-a1d223ba]{transition:opacity var(--duration-base) var(--ease-out)}.labels-collapsed .swarm-chip:hover .swarm-ic[data-v-a1d223ba],.labels-collapsed .tower-chip:hover .tower-ic[data-v-a1d223ba]{opacity:0}.labels-collapsed .swarm-x[data-v-a1d223ba],.labels-collapsed .tower-x[data-v-a1d223ba]{position:absolute;inset:0;width:auto;height:auto;margin-right:0}@media(hover:none){.labels-collapsed .swarm-chip[data-v-a1d223ba],.labels-collapsed .tower-chip[data-v-a1d223ba]{width:var(--touch-target-min);height:var(--touch-target-min)}.labels-collapsed .swarm-chip:hover .swarm-ic[data-v-a1d223ba],.labels-collapsed .tower-chip:hover .tower-ic[data-v-a1d223ba]{opacity:1}.labels-collapsed .swarm-x[data-v-a1d223ba],.labels-collapsed .tower-x[data-v-a1d223ba]{inset:0;width:auto;height:auto;opacity:1;background:transparent}.labels-collapsed .swarm-x[data-v-a1d223ba]:before,.labels-collapsed .tower-x[data-v-a1d223ba]:before{inset:0 0 auto auto;width:var(--p-ic-md);height:var(--p-ic-md);border-radius:var(--radius-full);background:var(--color-selected)}.labels-collapsed .swarm-x[data-v-a1d223ba] svg,.labels-collapsed .tower-x[data-v-a1d223ba] svg{position:absolute;top:calc(var(--space-1-5) / 2);right:calc(var(--space-1-5) / 2);width:calc(var(--p-ic-md) - var(--space-1-5));height:calc(var(--p-ic-md) - var(--space-1-5))}}.ctx-group[data-v-a1d223ba]{display:flex;align-items:center;gap:4px;flex-shrink:0;padding:2px 0;border-radius:var(--radius-xs)}.ctx-group[data-v-a1d223ba]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.model-pill[data-v-a1d223ba]{gap:var(--space-1);line-height:var(--leading-normal);overflow:hidden;flex:0 1 auto;min-width:0;max-width:320px;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.model-pill[data-v-a1d223ba]:active{transform:scale(.97)}.model-pill[data-v-a1d223ba]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.model-pill .mp-name[data-v-a1d223ba]{flex:0 8 auto;font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.model-pill .think-suffix[data-v-a1d223ba]{color:var(--color-accent);font-weight:var(--weight-medium);flex:none}.model-pill .cv[data-v-a1d223ba]{color:var(--faint);flex:none;transition:transform var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.model-pill:hover .cv[data-v-a1d223ba],.model-pill.open .cv[data-v-a1d223ba]{color:var(--dim)}.model-pill.open .cv[data-v-a1d223ba]{transform:rotate(180deg)}.model-pill.icon-only[data-v-a1d223ba]{width:var(--composer-control-size);height:var(--composer-control-size);padding:0;justify-content:center;flex:none}.model-pill.login-pill[data-v-a1d223ba],.model-pill.login-pill .mp-name[data-v-a1d223ba]{color:var(--color-accent)}.model-dropdown[data-v-a1d223ba]{position:absolute;bottom:calc(100% + var(--space-1));right:calc(var(--composer-control-inset) + var(--composer-send-size) + var(--space-1));z-index:var(--z-dropdown);min-width:200px;padding:var(--space-1);gap:1px;transform-origin:bottom right;overflow-y:auto;overscroll-behavior:contain}.model-dropdown.flip-down[data-v-a1d223ba]{top:calc(100% + var(--space-1));bottom:auto;transform-origin:top right}.composer-menu-pop-enter-active[data-v-a1d223ba]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.composer-menu-pop-leave-active[data-v-a1d223ba]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.composer-menu-pop-enter-from[data-v-a1d223ba],.composer-menu-pop-leave-to[data-v-a1d223ba]{opacity:0;transform:scale(.97) translateY(2px)}.model-dropdown.flip-down.composer-menu-pop-enter-from[data-v-a1d223ba],.model-dropdown.flip-down.composer-menu-pop-leave-to[data-v-a1d223ba]{transform:scale(.97) translateY(-2px)}.md-list[data-v-a1d223ba]{display:flex;flex-direction:column;gap:1px;max-height:min(320px,40vh);overflow-y:auto;overscroll-behavior:contain}.md-section[data-v-a1d223ba]{padding:4px 9px 2px;font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:var(--weight-semibold)}.md-row[data-v-a1d223ba]{gap:7px;font-size:var(--ui-font-size);padding:5px 9px;border-radius:var(--radius-dropdown-row)}.md-row:hover .md-name[data-v-a1d223ba]{color:var(--color-text-strong)}.md-row[data-v-a1d223ba]:disabled{cursor:default;opacity:.58}.md-row.is-current[data-v-a1d223ba]{background:var(--color-selected)}.md-note[data-v-a1d223ba]{margin-left:auto;color:var(--muted);font-size:var(--ui-font-size-xs)}.md-row-more[data-v-a1d223ba]{--md-more-arrow-color: var(--faint)}.md-row-more[data-v-a1d223ba]:hover{--md-more-arrow-color: var(--dim)}.md-row-more .md-more-arrow[data-v-a1d223ba]{width:var(--p-ic-sm);height:var(--p-ic-sm);flex:none;transition:color var(--duration-base) var(--ease-out)}.md-check[data-v-a1d223ba]{width:14px;flex:none;color:var(--color-accent);font-weight:500;display:flex;justify-content:center}.md-row .md-check[data-v-a1d223ba] svg{width:var(--p-ic-sm);height:var(--p-ic-sm);color:inherit}.md-name[data-v-a1d223ba]{flex:1;transition:color var(--duration-base) var(--ease-out)}.md-provider[data-v-a1d223ba]{color:var(--muted);font-size:var(--ui-font-size-xs);flex:none}.md-star[data-v-a1d223ba]{color:var(--star);flex:none;margin-left:auto}.md-row .md-star[data-v-a1d223ba]{width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--star)}.md-divider[data-v-a1d223ba]{height:1px;background:var(--line);margin:3px 0}.md-thinking[data-v-a1d223ba]{display:flex;align-items:center;gap:8px;padding:6px 9px;border-radius:var(--radius-dropdown-row)}.md-thinking .md-name[data-v-a1d223ba]{font-family:var(--font-ui);font-size:var(--ui-font-size);color:var(--color-text);flex:none}.md-thinking .md-note[data-v-a1d223ba],.md-thinking .ui-seg[data-v-a1d223ba]{margin-left:auto}.md-cache-note[data-v-a1d223ba]{width:0;min-width:100%;padding:2px 7px 4px;color:var(--muted);font-size:var(--ui-font-size-xs);line-height:1.4}.perm-dropdown[data-v-a1d223ba]{position:absolute;bottom:calc(100% + 4px);left:var(--composer-control-inset);z-index:var(--z-dropdown);min-width:220px;width:max-content;max-width:calc(100vw - var(--space-8));padding:var(--space-1);gap:1px;transform-origin:bottom left}.pd-row[data-v-a1d223ba]{display:grid;grid-template-columns:var(--p-ic-md) var(--composer-menu-desc-width, max-content) var(--p-ic-sm);column-gap:7px;row-gap:2px;align-items:start;padding:6px 7px;border-radius:var(--radius-dropdown-row)}.pd-row.is-current[data-v-a1d223ba]{background:var(--color-hover)}.pd-icon[data-v-a1d223ba]{grid-column:1;grid-row:1;width:var(--p-ic-md);min-height:1lh;display:flex;align-items:center;justify-content:center;line-height:var(--leading-tight)}.pd-row .pd-icon[data-v-a1d223ba] svg{width:var(--p-ic-md);height:var(--p-ic-md);color:inherit}.pd-check[data-v-a1d223ba]{grid-column:3;grid-row:1;width:var(--p-ic-sm);min-height:1lh;color:var(--color-accent);font-size:var(--ui-font-size);font-weight:var(--weight-medium);display:flex;align-items:center;justify-content:center;line-height:var(--leading-tight)}.pd-row .pd-check[data-v-a1d223ba] svg{width:var(--p-ic-sm);height:var(--p-ic-sm);color:inherit}.pd-info[data-v-a1d223ba]{display:contents}.pd-name[data-v-a1d223ba]{grid-column:2;grid-row:1;font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.pd-desc[data-v-a1d223ba]{grid-column:2;grid-row:2;width:var(--composer-menu-desc-width, auto);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-caption);color:var(--muted);line-height:var(--leading-tight)}@media(max-width:640px){.composer[data-v-a1d223ba]{padding:9px var(--dock-inline-right, max(12px, var(--safe-right))) max(24px,var(--safe-bottom)) var(--dock-inline-left, max(12px, var(--safe-left)))}.composer-card[data-v-a1d223ba]{--composer-control-size: 36px;--composer-mobile-input-size: 16px;max-width:100%}.input-row[data-v-a1d223ba]{gap:6px;min-width:0}.send[data-v-a1d223ba],.stop[data-v-a1d223ba]{width:var(--composer-send-size);height:var(--composer-send-size);min-width:var(--composer-send-size);padding:0;border-radius:var(--radius-full);font-size:0;align-self:flex-end;position:relative}.ph[data-v-a1d223ba] .wm-pill{height:calc(var(--composer-mobile-input-size) * 1.5);line-height:calc(var(--composer-mobile-input-size) * 1.5);padding-right:calc((var(--composer-mobile-input-size) * 1.5 - var(--wm-x-size)) / 2)}.model-dropdown[data-v-a1d223ba]{right:calc(var(--composer-control-inset) + var(--composer-send-size) + var(--space-1));left:auto;min-width:180px;max-width:calc(100vw - 24px)}.ph[data-v-a1d223ba]{font-size:var(--composer-mobile-input-size)}.model-pill[data-v-a1d223ba],.attach-btn[data-v-a1d223ba]{font-size:var(--ui-font-size)}.toolbar[data-v-a1d223ba]{gap:6px;min-width:0}.toolbar-left[data-v-a1d223ba],.toolbar-right[data-v-a1d223ba]{min-width:0}.model-pill[data-v-a1d223ba]{max-width:min(52vw,220px)}.model-pill .mp-name[data-v-a1d223ba]{max-width:min(40vw,170px)}.md-row[data-v-a1d223ba],.md-section[data-v-a1d223ba]{font-size:var(--ui-font-size)}.md-thinking[data-v-a1d223ba]{flex-wrap:wrap;row-gap:6px}.md-thinking .ui-seg[data-v-a1d223ba]{margin-left:0}.pd-name[data-v-a1d223ba]{font-size:var(--ui-font-size)}.pd-desc[data-v-a1d223ba]{font-size:var(--text-xs)}}@media(hover:none){.ph[data-wm=true][data-v-a1d223ba] .ProseMirror{padding-top:var(--space-3)}.ph[data-v-a1d223ba] .wm-pill{--wm-pill-lane: block;display:flex;width:max-content;margin-right:0;margin-bottom:var(--space-3);padding-right:calc((var(--touch-target-min) - var(--wm-x-size)) / 2)}.ph[data-v-a1d223ba] .wm-x:before{inset:calc((var(--wm-x-size) - var(--touch-target-min)) / 2)}.ph[data-wm=true][data-v-a1d223ba]{min-height:calc(36px + var(--space-3))}}@media(max-width:640px)and (hover:none){.send[data-v-a1d223ba],.stop[data-v-a1d223ba],.attach-btn[data-v-a1d223ba],.expand-btn[data-v-a1d223ba],.model-pill[data-v-a1d223ba]{position:relative}.send[data-v-a1d223ba]:before,.stop[data-v-a1d223ba]:before,.attach-btn[data-v-a1d223ba]:before,.expand-btn[data-v-a1d223ba]:before,.model-pill[data-v-a1d223ba]:before{content:"";position:absolute;inset:-6px}.expand-btn[data-v-a1d223ba]:before{inset:-11px}.perm-pill[data-v-a1d223ba]{height:var(--touch-target-min)}.labels-collapsed .perm-pill[data-v-a1d223ba]{width:var(--touch-target-min);height:var(--touch-target-min)}}.aw[data-v-293db9ef]{padding-top:4px}.crumbbar[data-v-293db9ef]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 22px;border-bottom:.5px solid var(--color-line)}.crumbs[data-v-293db9ef]{display:flex;align-items:center;flex-wrap:wrap;gap:1px;min-width:0;font-size:var(--text-sm)}.crumb-sep[data-v-293db9ef]{color:var(--color-text-muted)}.crumb[data-v-293db9ef]{background:none;border:none;cursor:pointer;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-muted);padding:1px var(--space-1);border-radius:var(--radius-xs)}.crumb[data-v-293db9ef]:hover{color:var(--color-text);background:var(--color-hover)}.crumb.last[data-v-293db9ef]{color:var(--color-text);font-weight:var(--weight-medium)}.filterbar[data-v-293db9ef]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 22px;border-bottom:.5px solid var(--color-line)}.filter-icon[data-v-293db9ef]{flex:none;width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--color-text-muted)}.filter-input[data-v-293db9ef]{flex:1;min-width:0;font-family:var(--font-ui);font-size:var(--text-base);padding:var(--space-1) 0;border:none;background:none;color:var(--color-text);outline:none}.filter-input[data-v-293db9ef]::placeholder{color:var(--color-text-muted)}.search-rel[data-v-293db9ef]{color:var(--color-text)}.folder-list[data-v-293db9ef]{height:300px;overflow-y:auto;padding:var(--space-1) var(--space-2)}.fl-loading[data-v-293db9ef],.fl-empty[data-v-293db9ef]{padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm)}.folder-row[data-v-293db9ef]{display:flex;align-items:center;gap:var(--space-2);width:100%;background:none;border:none;cursor:pointer;font-family:var(--font-ui);font-size:var(--text-base);color:var(--color-text);text-align:left;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-out)}.folder-row[data-v-293db9ef]:hover{background:var(--color-hover)}.dir-icon[data-v-293db9ef]{flex:none;width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--color-text-muted)}.folder-name[data-v-293db9ef]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.paste-section[data-v-293db9ef]{padding:var(--space-3) 22px;border-top:.5px solid var(--color-line)}.paste-section.paste-only[data-v-293db9ef]{border-top:none}.paste-row[data-v-293db9ef]{display:flex;align-items:center;gap:var(--space-2)}.paste-input-wrap[data-v-293db9ef]{flex:1;min-width:0}.add-error[data-v-293db9ef]{margin:0 22px var(--space-2);padding:var(--space-2) var(--space-3);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-danger);background:var(--color-danger-soft);border:.5px solid var(--color-danger-bd);border-radius:var(--radius-sm)}.actions[data-v-293db9ef]{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) 22px}.footer-hint[data-v-293db9ef]{padding:var(--space-2) var(--space-4);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-faint);border-top:.5px solid var(--color-line)}@media(max-width:640px){.folder-row[data-v-293db9ef]{min-height:44px}.crumbbar[data-v-293db9ef]{align-items:flex-start}.actions[data-v-293db9ef]{flex-wrap:wrap}}.confirm-dialog__message[data-v-35df116c]{margin:0;font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-muted)}.sd-search[data-v-c1069e7d]{position:relative;margin:0 22px;padding-bottom:var(--space-1)}.sd-search[data-v-c1069e7d] .ui-input{padding-right:30px}.search-clear[data-v-c1069e7d]{position:absolute;top:0;bottom:var(--space-1);right:var(--space-2);margin-block:auto;display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:var(--radius-full);background:var(--color-hover);color:var(--color-text-faint);cursor:pointer;visibility:hidden;opacity:0;transition:opacity var(--duration-fast) var(--ease-out),visibility var(--duration-fast),background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.search-clear.is-on[data-v-c1069e7d]{visibility:visible;opacity:1}.search-clear[data-v-c1069e7d]:hover{background:var(--color-selected);color:var(--color-text-muted)}.search-clear[data-v-c1069e7d]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}@media(prefers-reduced-motion:reduce){.search-clear[data-v-c1069e7d]{transition:none}}.sd-body[data-v-c1069e7d]{height:100%;min-height:0;display:flex;flex-direction:column;gap:var(--space-2);padding-top:4px}.sd-list[data-v-c1069e7d]{flex:1;min-height:0;overflow-y:auto;padding:var(--space-1) var(--space-2);--sd-gutter: var(--p-ic-md);--sd-gap: var(--space-2)}.sd-section[data-v-c1069e7d]{display:flex;align-items:baseline;gap:var(--space-1);padding:var(--space-2) var(--space-3) var(--space-1);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--color-text-faint);user-select:none}.sd-section-count[data-v-c1069e7d]{font-weight:var(--weight-regular)}.sd-section[data-v-c1069e7d]:first-child{padding-top:var(--space-1)}.sd-section[data-v-c1069e7d]:not(:first-child){margin-top:var(--space-1);border-top:var(--p-hairline) solid var(--color-line)}.sd-row[data-v-c1069e7d]{display:flex;flex-direction:column;gap:2px;width:100%;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);background:none;cursor:pointer;text-align:left;font-family:var(--font-ui);color:var(--color-text)}.sd-row[data-v-c1069e7d]:hover{background:var(--color-hover)}.sd-row.on[data-v-c1069e7d]{background:var(--color-selected)}.sd-row.active .sd-title[data-v-c1069e7d]{color:var(--color-accent-hover)}.sd-row-ws[data-v-c1069e7d]{flex-direction:row;align-items:center;gap:var(--sd-gap)}.sd-folder[data-v-c1069e7d]{flex:none;width:var(--sd-gutter);color:var(--color-text-muted)}.sd-ws-name[data-v-c1069e7d]{flex:none;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);color:var(--color-text)}.sd-ws-path[data-v-c1069e7d]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;font-size:var(--text-xs);color:var(--color-text-faint)}.sd-line1[data-v-c1069e7d],.sd-line2[data-v-c1069e7d]{padding-left:calc(var(--sd-gutter) + var(--sd-gap))}.sd-line1[data-v-c1069e7d]{display:flex;align-items:baseline;gap:var(--space-2);min-width:0}.sd-title[data-v-c1069e7d]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);color:var(--color-text)}.sd-time[data-v-c1069e7d]{flex:none;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint)}.sd-line2[data-v-c1069e7d]{display:flex;align-items:center;gap:var(--space-1);min-width:0;font-size:var(--text-xs);color:var(--color-text-muted)}.sd-meta-ws[data-v-c1069e7d]{flex:none;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-meta-sep[data-v-c1069e7d]{color:var(--color-text-faint)}.sd-meta-snippet[data-v-c1069e7d]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-title[data-v-c1069e7d] mark,.sd-ws-name[data-v-c1069e7d] mark{background:var(--color-accent-soft);color:inherit;font-weight:var(--weight-semibold);border-radius:var(--radius-xs);padding:0 1px}.sd-line2[data-v-c1069e7d] mark,.sd-ws-path[data-v-c1069e7d] mark{background:var(--color-accent-soft);color:var(--color-text);font-weight:var(--weight-medium);border-radius:var(--radius-xs);padding:0 1px}.sd-empty[data-v-c1069e7d]{height:100%;display:flex;align-items:center;justify-content:center}.sd-foot[data-v-c1069e7d]{flex:none;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-top:.5px solid var(--color-line);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-faint)}.sd-hint[data-v-c1069e7d]{display:inline-flex;align-items:center;gap:var(--space-1)}.sd-dot[data-v-c1069e7d]{margin:0 var(--space-1)}.topbar[data-v-12855b5a]{display:flex;align-items:center;height:calc(50px + var(--safe-top));flex:none;padding:var(--safe-top) max(12px,var(--safe-right)) 0 max(12px,var(--safe-left));border-bottom:.5px solid var(--color-line);background:var(--color-topbar-bg-frost);-webkit-backdrop-filter:var(--p-topbar-backdrop);backdrop-filter:var(--p-topbar-backdrop);font-family:var(--font-ui);-webkit-user-select:none;user-select:none}.tb-main[data-v-12855b5a]{flex:1;min-width:0;height:100%;display:flex;align-items:center;gap:8px;margin-right:4px;padding:0 6px 0 0;background:none;border:none;border-radius:var(--radius-md);font:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity var(--duration-fast) var(--ease-out)}.tb-main[data-v-12855b5a]:active{opacity:.55}.st[data-v-12855b5a]{flex:none;display:inline-flex;align-items:center}.tb-line[data-v-12855b5a]{flex:1;min-width:0;display:flex;align-items:baseline;gap:4px;font-size:max(16px,var(--ui-font-size-xl));line-height:1.25;white-space:nowrap}.tb-line .dir[data-v-12855b5a]{flex:none;max-width:42%;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-faint)}.tb-line .dir.solo[data-v-12855b5a]{max-width:none;min-width:0;color:var(--color-text);font-weight:var(--weight-semibold)}.tb-line .sl[data-v-12855b5a]{flex:none;color:var(--color-text-faint)}.tb-line .tt[data-v-12855b5a]{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--color-text);font-weight:var(--weight-semibold)}.tb-line .cv[data-v-12855b5a]{flex:none;align-self:center;color:var(--color-text-faint)}.unread-dot[data-v-12855b5a]{width:7px;height:7px;border-radius:var(--radius-full);background:var(--color-accent)}.pf-form[data-v-b0c81ae5]{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) var(--space-4) var(--space-5);border-top:.5px solid var(--color-line)}.pf-guard[data-v-b0c81ae5] .ui-banner__text{display:flex;align-items:center;gap:var(--space-2);width:100%}.pf-guard .msg[data-v-b0c81ae5]{flex:1}.pf-field[data-v-b0c81ae5]{display:flex;flex-direction:column;gap:6px}.pf-key-wrap[data-v-b0c81ae5]{position:relative}.pf-key-wrap[data-v-b0c81ae5] .ui-input{padding-right:calc(var(--icon-button-sm) + var(--space-2))}.pf-key-eye[data-v-b0c81ae5]{position:absolute;right:var(--space-1);top:50%;transform:translateY(-50%)}.pf-field-label[data-v-b0c81ae5]{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted)}.req[data-v-b0c81ae5]{color:var(--color-danger)}.pf-models[data-v-b0c81ae5]{display:flex;flex-direction:column;gap:var(--space-2)}.pf-model-grid[data-v-b0c81ae5]{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,2fr) auto;gap:var(--space-2);align-items:center}.pf-model-head span[data-v-b0c81ae5]{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-faint)}.pf-models-empty[data-v-b0c81ae5]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-faint)}.pf-foot[data-v-b0c81ae5]{display:flex;align-items:center;gap:var(--space-2);padding-top:var(--space-4);border-top:.5px solid var(--color-line)}.pf-foot .spacer[data-v-b0c81ae5]{flex:1}.pf-confirm-msg[data-v-b0c81ae5]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-danger)}.pf-managed-note[data-v-b0c81ae5]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-faint)}@media(max-width:640px){.pf-model-grid[data-v-b0c81ae5]{grid-template-columns:minmax(0,1fr) auto}}.af[data-v-285c6210]{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-5);border-top:.5px solid var(--color-line)}.af-guard[data-v-285c6210] .ui-banner__text{display:flex;align-items:center;gap:var(--space-2);width:100%}.af-guard .msg[data-v-285c6210]{flex:1}.af-catalog[data-v-285c6210]{display:flex;flex-direction:column;gap:var(--space-3)}.af-center[data-v-285c6210]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) 0;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base)}.af-error[data-v-285c6210]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.af-list[data-v-285c6210]{display:flex;flex-direction:column;max-height:320px;overflow-y:auto;border:.5px solid var(--color-line);border-radius:var(--radius-md)}.af-list[data-v-285c6210]>*+*{border-top:.5px solid var(--color-line)}.af-entry[data-v-285c6210]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:34px;padding:var(--space-1) var(--space-3);border:none;background:transparent;text-align:left;font-family:var(--font-ui);color:var(--color-text);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.af-entry[data-v-285c6210]:hover:not(:disabled){background:var(--color-hover)}.af-entry[data-v-285c6210]:disabled{cursor:not-allowed;opacity:.55}.af-entry-name[data-v-285c6210]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);font-weight:var(--weight-medium)}.af-entry .grow[data-v-285c6210]{flex:1;min-width:0}.af-entry-count[data-v-285c6210],.af-entry-reason[data-v-285c6210]{flex:none;font-size:var(--text-xs);color:var(--color-text-faint);white-space:nowrap}.af-empty[data-v-285c6210]{padding:var(--space-4);text-align:center;color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-sm)}.af-import[data-v-285c6210],.af-registry[data-v-285c6210]{display:flex;flex-direction:column;gap:var(--space-4)}.af-hint[data-v-285c6210]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-faint)}.af-back[data-v-285c6210]{display:inline-flex;align-items:center;gap:var(--space-1);align-self:flex-start;padding:0;border:none;background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);cursor:pointer;transition:color var(--duration-fast) var(--ease-out)}.af-back[data-v-285c6210]:hover{color:var(--color-text)}.af-field[data-v-285c6210]{display:flex;flex-direction:column;gap:6px}.af-label[data-v-285c6210]{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted)}.req[data-v-285c6210]{color:var(--color-danger)}.af-key-wrap[data-v-285c6210]{position:relative}.af-key-wrap[data-v-285c6210] .ui-input{padding-right:calc(var(--icon-button-sm) + var(--space-2))}.af-key-eye[data-v-285c6210]{position:absolute;right:var(--space-1);top:50%;transform:translateY(-50%)}.af-note[data-v-285c6210]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-faint)}.af-foot[data-v-285c6210]{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-4);border-top:.5px solid var(--color-line)}.af-manual[data-v-285c6210] .pf-form{padding:0;border-top:none}.mp[data-v-db3ef6fb]{display:flex;flex-direction:column;gap:var(--space-2);height:100%;min-height:0;padding-top:4px}.mp--sheet[data-v-db3ef6fb]{height:auto;padding-top:0}.mp--sheet .search-wrap[data-v-db3ef6fb],.mp--sheet .chip-strip[data-v-db3ef6fb]{margin:0 16px}.search-wrap[data-v-db3ef6fb]{position:relative;margin:0 22px;padding-bottom:var(--space-1)}.search-wrap[data-v-db3ef6fb] .ui-input{padding-right:30px}.search-clear[data-v-db3ef6fb]{position:absolute;top:0;bottom:var(--space-1);right:var(--space-2);margin-block:auto;display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:var(--radius-full);background:var(--color-hover);color:var(--color-text-faint);cursor:pointer;visibility:hidden;opacity:0;transition:opacity var(--duration-fast) var(--ease-out),visibility var(--duration-fast),background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.search-clear.is-on[data-v-db3ef6fb]{visibility:visible;opacity:1}.search-clear[data-v-db3ef6fb]:hover{background:var(--color-selected);color:var(--color-text-muted)}.search-clear[data-v-db3ef6fb]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.chip-strip[data-v-db3ef6fb]{display:flex;gap:var(--space-1);margin:0 22px;overflow-x:auto;scrollbar-width:none}.chip-strip[data-v-db3ef6fb]::-webkit-scrollbar{display:none}.chip[data-v-db3ef6fb]{flex:none;height:28px;padding:0 var(--space-3);border:none;border-radius:var(--radius-full);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base);white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.chip[data-v-db3ef6fb]:hover{background:var(--color-hover);color:var(--color-text)}.chip.is-active[data-v-db3ef6fb]{background:var(--color-selected);color:var(--color-text);font-weight:var(--weight-medium)}.chip[data-v-db3ef6fb]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.model-list[data-v-db3ef6fb]{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding:var(--space-1) var(--space-2)}.model-row[data-v-db3ef6fb]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text);min-width:0;transition:background var(--duration-fast) var(--ease-out)}.model-row[data-v-db3ef6fb]:hover,.model-row.is-selected[data-v-db3ef6fb]{background:var(--color-hover)}.model-row.is-current[data-v-db3ef6fb]{background:var(--color-selected)}.model-main[data-v-db3ef6fb]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.model-name[data-v-db3ef6fb]{font-family:var(--font-ui);font-size:var(--text-base);line-height:20px;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-row.is-current .model-name[data-v-db3ef6fb]{font-weight:var(--weight-medium)}.model-meta[data-v-db3ef6fb]{font-family:var(--font-ui);font-size:var(--text-xs);line-height:18px;color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-side[data-v-db3ef6fb]{display:flex;align-items:center;gap:var(--space-1);flex:none}.model-check[data-v-db3ef6fb]{color:var(--color-text)}.model-star[data-v-db3ef6fb]{color:var(--color-text-faint);visibility:hidden;opacity:0;transition:opacity var(--duration-fast) var(--ease-out),visibility var(--duration-fast)}.model-row:hover .model-star[data-v-db3ef6fb],.model-row.is-selected .model-star[data-v-db3ef6fb],.model-star.is-starred[data-v-db3ef6fb],.model-star[data-v-db3ef6fb]:focus-visible{visibility:visible;opacity:1}.model-star.is-starred[data-v-db3ef6fb]{color:var(--star)}@media(hover:none){.model-star[data-v-db3ef6fb]{visibility:visible;opacity:1}}.state-row[data-v-db3ef6fb]{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base)}.state-row.unavail[data-v-db3ef6fb]{color:var(--color-warning)}.empty[data-v-db3ef6fb]{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base)}.footer-hint[data-v-db3ef6fb]{flex:none;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-top:.5px solid var(--color-line);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-faint)}.hint-dot[data-v-db3ef6fb]{margin:0 var(--space-1)}@media(hover:none){.footer-hint[data-v-db3ef6fb]{display:none}}@media(prefers-reduced-motion:reduce){.chip[data-v-db3ef6fb],.model-row[data-v-db3ef6fb],.model-star[data-v-db3ef6fb],.search-clear[data-v-db3ef6fb]{transition:none}}.sec[data-v-c962312f]{margin-bottom:var(--space-5)}.sec-title[data-v-c962312f]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);margin:0 0 var(--space-3)}.pu-group[data-v-c962312f]{overflow:hidden;border-radius:var(--radius-xl);background:var(--color-surface)}.pu-row[data-v-c962312f]{display:flex;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-3) var(--space-4)}.pu-main[data-v-c962312f]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.pu-label[data-v-c962312f]{font-size:var(--text-sm);color:var(--color-text)}.pu-hint[data-v-c962312f]{font-size:var(--text-xs);color:var(--color-text-faint)}.pp[data-v-22dc848a]{display:flex;flex-direction:column}.pp-head[data-v-22dc848a]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.pp-title[data-v-22dc848a]{margin:0;font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.pp-loading[data-v-22dc848a]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) 0;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base)}.pp-group[data-v-22dc848a]{overflow:hidden;border:.5px solid var(--color-line);border-radius:var(--radius-xl);background:var(--color-surface-raised)}.pp-group[data-v-22dc848a]>*+*{border-top:.5px solid var(--color-line)}.pp-row[data-v-22dc848a]{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:40px;padding:var(--space-2) var(--space-4);border:none;background:transparent;text-align:left;font-family:var(--font-ui);color:var(--color-text);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.pp-row[data-v-22dc848a]:hover{background:var(--color-hover)}.pp-item.open>.pp-row[data-v-22dc848a]{background:var(--color-surface-sunken)}.pp-row .grow[data-v-22dc848a]{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-2)}.pp-id[data-v-22dc848a]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-count[data-v-22dc848a]{flex:none;font-size:var(--text-xs);color:var(--color-text-faint);white-space:nowrap}.pp-chev[data-v-22dc848a]{display:inline-flex;flex:none;color:var(--color-text-faint);transition:transform var(--duration-base) var(--ease-out)}.pp-item.open .pp-chev[data-v-22dc848a]{transform:rotate(90deg)}.pp-add-row[data-v-22dc848a]{gap:var(--space-2);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium)}.pp-acc[data-v-22dc848a]{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--duration-slow) var(--ease-out)}.pp-item.open>.pp-acc[data-v-22dc848a]{grid-template-rows:1fr}.pp-acc-in[data-v-22dc848a]{overflow:hidden;min-height:0}.pp-item.open .pp-acc-in[data-v-22dc848a]{overflow:visible}.pp-item.flash>.pp-row[data-v-22dc848a]{animation:pp-flash-22dc848a 1.2s var(--ease-out)}@keyframes pp-flash-22dc848a{0%{background:var(--color-accent-soft)}to{background:transparent}}.pp-empty[data-v-22dc848a]{padding:var(--space-5) var(--space-4);color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-sm);text-align:center}.plugins-panel[data-v-b702a694]{display:flex;flex-direction:column;gap:var(--space-4)}.pp-panel-title[data-v-b702a694]{margin:0 0 calc(var(--space-3) - var(--space-4));font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.pp-custom[data-v-b702a694]{flex:none}.pp-custom-row[data-v-b702a694]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:40px;padding:var(--space-2) var(--space-4);border:none;background:transparent;font-family:var(--font-ui);font-size:var(--text-base);color:var(--color-text-muted);text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.pp-custom-row[data-v-b702a694]:hover{background:var(--color-hover);color:var(--color-text)}.pp-custom-label[data-v-b702a694]{flex:1}.pp-chev[data-v-b702a694]{display:inline-flex;color:var(--color-text-faint);transition:transform var(--duration-fast) var(--ease-out)}.pp-chev.open[data-v-b702a694]{transform:rotate(90deg)}.pp-custom-body[data-v-b702a694]{padding:0 var(--space-4) var(--space-3);border-top:.5px solid var(--color-line)}.pp-custom-form[data-v-b702a694]{display:flex;align-items:center;gap:var(--space-2);padding-top:var(--space-3)}.pp-custom-input[data-v-b702a694]{flex:1}.pp-custom-hint[data-v-b702a694]{margin:var(--space-2) 0 0;font-size:var(--text-xs);color:var(--color-text-faint)}.pp-loading[data-v-b702a694]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) 0;color:var(--color-text-muted);font-size:var(--text-base)}.pp-catalog-error[data-v-b702a694]{margin:0;font-size:var(--text-xs);color:var(--color-text-faint)}.pp-load-error[data-v-b702a694]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:.5px solid var(--color-line);border-radius:var(--radius-xl);background:var(--color-surface-raised)}.pp-load-error-text[data-v-b702a694]{font-size:var(--text-sm);color:var(--color-danger)}.pp-section[data-v-b702a694]{display:flex;flex-direction:column;gap:var(--space-2)}.pp-sec-title[data-v-b702a694]{margin:0;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-faint)}.pp-group[data-v-b702a694]{overflow:hidden;border:.5px solid var(--color-line);border-radius:var(--radius-xl);background:var(--color-surface-raised)}.pp-group[data-v-b702a694]>*+*{border-top:.5px solid var(--color-line)}.pp-row[data-v-b702a694]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:52px;padding:var(--space-3) var(--space-4)}.pp-main[data-v-b702a694]{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.pp-title[data-v-b702a694]{display:flex;align-items:center;gap:var(--space-2)}.pp-name[data-v-b702a694]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-version[data-v-b702a694]{flex:none;font-size:var(--text-xs);color:var(--color-text-faint);font-variant-numeric:tabular-nums}.pp-version--muted[data-v-b702a694]{opacity:.7}.pp-homepage[data-v-b702a694]{display:inline-flex;color:var(--color-text-faint);transition:color var(--duration-fast) var(--ease-out)}.pp-homepage[data-v-b702a694]:hover{color:var(--color-text)}.pp-desc[data-v-b702a694]{margin:0;font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--leading-relaxed)}.pp-error[data-v-b702a694]{margin:0;font-size:var(--text-xs);color:var(--color-danger)}.pp-actions[data-v-b702a694]{display:flex;align-items:center;gap:var(--space-2);flex:none}.pp-ext-hint[data-v-b702a694]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-xs);color:var(--color-text-muted)}.pp-ext-icon[data-v-b702a694]{flex:none;color:var(--color-text-faint)}.pp-ext-title[data-v-b702a694]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-ext-actions[data-v-b702a694]{display:flex;align-items:center;gap:var(--space-2);flex:none}.pp-ext-guide[data-v-b702a694],.pp-ext-close[data-v-b702a694]{flex:none}.sm-picker[data-v-f49c4ec0]{position:relative;width:100%;font-family:var(--font-ui)}.sm-picker__trigger[data-v-f49c4ec0]{display:flex;align-items:center;gap:var(--space-2);width:100%;height:38px;padding:0 var(--space-3);border:.5px solid var(--color-line-strong);border-radius:var(--radius-md);background:transparent;box-shadow:none;color:var(--color-text);font:inherit;font-size:var(--text-base);line-height:var(--leading-normal);text-align:left;cursor:pointer;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out)}.sm-picker__trigger[data-v-f49c4ec0]:focus-visible,.sm-picker.is-open .sm-picker__trigger[data-v-f49c4ec0]{outline:none;border-color:var(--color-accent);box-shadow:var(--p-focus-ring)}.sm-picker__value[data-v-f49c4ec0]{min-width:0;flex:1;display:flex;align-items:center;overflow:hidden;white-space:nowrap}.sm-picker__value-text[data-v-f49c4ec0]{min-width:0;overflow:hidden;text-overflow:ellipsis}.sm-picker__value.is-placeholder[data-v-f49c4ec0]{color:var(--color-text-faint)}.sm-picker__chevron[data-v-f49c4ec0]{flex:none;color:var(--color-text-muted);transition:transform var(--duration-base) var(--ease-out)}.sm-picker.is-open .sm-picker__chevron[data-v-f49c4ec0]{transform:rotate(180deg)}.sm-picker__menu[data-v-f49c4ec0]{position:fixed;z-index:var(--z-modal-dropdown);width:252px;max-width:calc(100vw - 64px);border:.5px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);box-shadow:var(--shadow-lg)}.sm-picker__models[data-v-f49c4ec0]{max-height:280px;overflow-y:auto;padding:var(--space-1);border-radius:var(--radius-md)}.sm-picker__flyout[data-v-f49c4ec0]{position:absolute;width:180px;max-height:280px;overflow-y:auto;padding:var(--space-1);border:.5px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);box-shadow:var(--shadow-lg)}.sm-picker__flyout--right[data-v-f49c4ec0]{left:calc(100% + var(--space-1))}.sm-picker__flyout--left[data-v-f49c4ec0]{right:calc(100% + var(--space-1))}.sm-picker__group[data-v-f49c4ec0]{padding:var(--space-2) var(--space-2) var(--space-1);color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-medium)}.sm-picker__option[data-v-f49c4ec0]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:32px;padding:var(--space-1) var(--space-2);border:none;border-radius:var(--radius-select-option);background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer}.sm-picker__option.is-active[data-v-f49c4ec0]{background:var(--color-hover);color:var(--color-text-strong)}.sm-picker__option.is-muted[data-v-f49c4ec0]{color:var(--color-text-muted)}.sm-picker__option-label[data-v-f49c4ec0]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-picker__check[data-v-f49c4ec0]{flex:none;color:transparent}.sm-picker__option.is-selected .sm-picker__check[data-v-f49c4ec0]{color:var(--color-accent)}.sm-picker__flyout-caret[data-v-f49c4ec0]{flex:none;margin-left:auto;color:var(--color-text-faint)}.workspace-menu[data-v-7e543e91]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.menu-pop-enter-active[data-v-7e543e91]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-7e543e91]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-7e543e91],.menu-pop-leave-to[data-v-7e543e91]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}[data-v-7e543e91] .workspace-rename-item{font-size:var(--text-xs);font-weight:var(--weight-option-label)}.ws-dir[data-v-a4e9548f]{display:block;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border-radius:var(--radius-sm);cursor:pointer;position:relative;user-select:none}.ws-dir[data-v-a4e9548f]:hover{background:var(--sb-hover, var(--color-hover))}.ws-dir.on[data-v-a4e9548f]{background:var(--sb-selected, var(--color-selected))}.ws-dir+.ws-dir[data-v-a4e9548f]{margin-top:var(--space-05)}.ws-dir-row[data-v-a4e9548f]{display:flex;align-items:center;gap:var(--sb-gap);min-width:0}.ws-dir-icon[data-v-a4e9548f]{flex:none;color:var(--color-text-muted)}.ws-dir-name[data-v-a4e9548f]{flex:1;min-width:0;font-size:var(--ui-font-size-sm);font-weight:var(--weight-caption);line-height:var(--leading-tight);color:var(--color-text);overflow:hidden;white-space:nowrap;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent);mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent)}.ws-dir-act[data-v-a4e9548f]{position:absolute;top:0;bottom:0;right:var(--sb-action-inset);display:inline-flex;align-items:center;opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.ws-dir-rename[data-v-a4e9548f]{flex:1;min-width:0;font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-caption);color:var(--color-text);background:var(--color-bg);border:.5px solid var(--color-accent);border-radius:var(--radius-sm);padding:2px 5px;outline:none}.ws-dir:hover .ws-dir-act[data-v-a4e9548f],.ws-dir:focus-within .ws-dir-act[data-v-a4e9548f]{opacity:1;visibility:visible;transition:opacity var(--duration-fast) var(--ease-out)}.ws-dir-sub[data-v-a4e9548f]{margin:var(--space-1) 0 0;color:var(--color-text-faint);font-size:var(--text-xs);line-height:var(--leading-tight);overflow:hidden;white-space:nowrap;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent);mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent)}.ws-dir:hover .ws-dir-name[data-v-a4e9548f],.ws-dir:focus-within .ws-dir-name[data-v-a4e9548f],.ws-dir:hover .ws-dir-sub[data-v-a4e9548f],.ws-dir:focus-within .ws-dir-sub[data-v-a4e9548f]{margin-right:calc(var(--icon-button-sm) + var(--space-2))}.empty[data-v-a4e9548f]{padding:var(--space-6) var(--space-3);text-align:center;color:var(--faint);font-size:calc(var(--ui-font-size) - 3px);line-height:1.6}.session-list-panel[data-v-7e75ddaa]{display:contents}.sessions-head[data-v-7e75ddaa]{position:relative;z-index:1;padding:var(--space-3) var(--sb-inset) 0;border-bottom:.5px solid transparent;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.sessions-head[data-v-7e75ddaa]:after{content:"";position:absolute;left:0;right:0;height:var(--p-sidebar-seam-h);pointer-events:none;opacity:0;transition:opacity var(--duration-base) var(--ease-out);top:100%;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.5%,transparent),transparent 35%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1%,transparent),transparent 65%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) .75%,transparent),transparent);transition-duration:var(--duration-slow)}.sessions-head--scrolled[data-v-7e75ddaa]{border-bottom-color:var(--line)}.sessions-head--scrolled[data-v-7e75ddaa]:after{opacity:1}.side-section-label[data-v-7e75ddaa]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 var(--sb-action-inset) var(--space-1) var(--space-2);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--faint);user-select:none}.side-section-title[data-v-7e75ddaa]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sessions-head .pinned+.side-section-label[data-v-7e75ddaa]{margin-top:var(--space-1)}.side-section-toggle[data-v-7e75ddaa]{color:var(--faint)}.side-section-toggle[data-v-7e75ddaa]:hover{color:var(--dim)}.side-section-toggle svg[data-v-7e75ddaa]{width:13px;height:13px}.side-section-actions[data-v-7e75ddaa]{display:flex;align-items:center;gap:2px}.sessions[data-v-7e75ddaa]{flex:1;overflow-y:auto;padding:0 var(--sb-inset) var(--space-3);min-height:0;--overlay-scrollbar-thumb-min: var(--space-6);scrollbar-width:none}.sessions[data-v-7e75ddaa]::-webkit-scrollbar{display:none}.sessions.pinned-drag-active[data-v-7e75ddaa]{box-shadow:inset 0 0 0 1px var(--color-accent)}.sessions.flat-pinned-drop-hover[data-v-7e75ddaa]{box-shadow:inset 0 0 0 2px var(--color-accent)}.sessions-thumb[data-v-7e75ddaa]{position:absolute;right:0;width:var(--space-1);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-text) 12%,transparent);opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out);z-index:var(--z-raised);touch-action:none}.sessions-thumb.visible[data-v-7e75ddaa]{opacity:1;pointer-events:auto}.sessions-thumb.visible[data-v-7e75ddaa]:hover{background:color-mix(in srgb,var(--color-text) 25%,transparent)}.sessions-thumb[data-v-7e75ddaa]:before{content:"";position:absolute;top:0;bottom:0;left:calc(-1 * var(--space-2));right:0}.ws-drop-target.drop-before[data-v-7e75ddaa]{box-shadow:inset 0 2px 0 var(--color-accent)}.ws-drop-target.drop-after[data-v-7e75ddaa]{box-shadow:inset 0 -2px 0 var(--color-accent)}.ws-drop-target.ws-locate-flash[data-v-7e75ddaa] .gh{isolation:isolate}.ws-drop-target.ws-locate-flash[data-v-7e75ddaa] .gh:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:var(--radius-sm);background:var(--color-accent-soft);pointer-events:none;animation:ws-locate-fade-7e75ddaa var(--duration-flash) var(--ease-out) forwards}@keyframes ws-locate-fade-7e75ddaa{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.ws-drop-target.ws-locate-flash[data-v-7e75ddaa] .gh:before{animation:none}}.done-gh[data-v-7e75ddaa]{display:flex;align-items:center;gap:var(--sb-gap);padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border-radius:var(--radius-sm);font-family:var(--font-ui);color:var(--color-text);user-select:none;position:relative;cursor:pointer}.done-gh[data-v-7e75ddaa]:hover{background:var(--sb-hover, var(--color-hover))}.done-gh-folder[data-v-7e75ddaa]{flex:none;color:var(--color-text-muted)}.done-gh-name[data-v-7e75ddaa]{flex:1;min-width:0;font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);color:var(--color-text-muted);overflow:hidden;white-space:nowrap;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent);mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent)}.done-gh-count[data-v-7e75ddaa]{flex:none;color:var(--color-text-faint);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.done-gh-act[data-v-7e75ddaa]{position:absolute;top:0;bottom:0;right:var(--sb-action-inset);display:inline-flex;align-items:center;opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.done-gh:hover .done-gh-act[data-v-7e75ddaa],.done-gh:focus-within .done-gh-act[data-v-7e75ddaa]{opacity:1;visibility:visible;transition:opacity var(--duration-fast) var(--ease-out)}.done-gh:hover .done-gh-count[data-v-7e75ddaa],.done-gh:focus-within .done-gh-count[data-v-7e75ddaa]{opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.show-more-row[data-v-7e75ddaa]{display:flex;align-items:center;justify-content:center}.show-more[data-v-7e75ddaa]{display:flex;align-items:center;justify-content:center;gap:var(--space-1);margin:0;padding:6px var(--space-3);min-width:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-tight);cursor:pointer}.show-more[data-v-7e75ddaa]:hover{background:var(--sb-hover, var(--color-hover))}.show-more[data-v-7e75ddaa]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.show-more-label[data-v-7e75ddaa]{flex:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty[data-v-7e75ddaa]{padding:var(--space-6) var(--space-3);text-align:center;color:var(--faint);font-size:calc(var(--ui-font-size) - 3px);line-height:1.6}.view-menu[data-v-7e75ddaa]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.view-menu-label[data-v-7e75ddaa]{padding:var(--space-1) var(--space-2) var(--space-05);font-size:var(--text-xs);color:var(--faint);user-select:none}.view-menu-check[data-v-7e75ddaa]{margin-left:auto;display:inline-flex}.menu-pop-enter-active[data-v-7e75ddaa]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-7e75ddaa]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-7e75ddaa],.menu-pop-leave-to[data-v-7e75ddaa]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.rc-dev[data-v-7e8a1a41]{--sb-inset: var(--space-2);--sb-pad-x: var(--space-4);--sb-gap: var(--space-2);--sb-hover: var(--color-hover);position:relative;padding:0 var(--sb-inset) var(--space-1)}.rc-dev--mobile[data-v-7e8a1a41]{padding:var(--space-1) var(--sb-inset) var(--space-2)}.rc-dev--mobile .rc-dev-trigger[data-v-7e8a1a41]{min-height:44px}.rc-dev-trigger[data-v-7e8a1a41]{display:flex;align-items:center;gap:var(--sb-gap);width:100%;min-width:0;padding:6px calc(var(--sb-pad-x) - var(--sb-inset));border:.5px solid var(--color-line);border-radius:var(--radius-md);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);cursor:pointer;text-align:left}.rc-dev-trigger[data-v-7e8a1a41]:hover,.rc-dev-trigger[aria-expanded=true][data-v-7e8a1a41]{background:var(--sb-hover)}.rc-dev-trigger[data-v-7e8a1a41]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.rc-dev-trigger svg[data-v-7e8a1a41]{flex:none}.rc-dev-name[data-v-7e8a1a41]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-dev-chevron[data-v-7e8a1a41]{margin-left:auto;color:var(--color-text-faint)}.rc-dev-menu[data-v-7e8a1a41]{position:fixed;top:0;left:0;z-index:var(--z-dropdown);max-height:calc(100vh - 16px);overflow-y:auto;overflow-x:hidden;user-select:none}.rc-dev-menu--mobile[data-v-7e8a1a41]{position:absolute;top:100%;left:var(--sb-inset);right:var(--sb-inset);bottom:auto;max-height:min(50vh,320px);transform-origin:top center}.rc-dev-menu--mobile .rc-dev-offline[data-v-7e8a1a41]{min-height:44px;padding:12px 14px}.menu-pop-enter-active[data-v-7e8a1a41]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-7e8a1a41]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-7e8a1a41],.menu-pop-leave-to[data-v-7e8a1a41]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, 2px))}.rc-dev-state[data-v-7e8a1a41]{display:flex;align-items:center;justify-content:center;padding:var(--space-3)}.rc-dev-failed[data-v-7e8a1a41]{color:var(--color-text-muted);font-size:var(--text-sm)}.rc-dev-caption[data-v-7e8a1a41]{padding:var(--space-2) var(--menu-item-padding-inline) 2px;color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.rc-dev-item-name[data-v-7e8a1a41]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-dev-item-status[data-v-7e8a1a41]{display:flex;align-items:center;gap:6px;flex:none;color:var(--color-text-muted)}.rc-dev-item-check[data-v-7e8a1a41]{display:flex;align-items:center;justify-content:center;width:var(--p-ic-md);height:var(--p-ic-md);flex:none}.rc-dev-offline[data-v-7e8a1a41]{padding:var(--menu-item-padding-block) var(--menu-item-padding-inline);border-radius:var(--radius-menu-item);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-option-label);line-height:var(--leading-tight)}.rc-dev-offline.is-current[data-v-7e8a1a41]{background:var(--color-hover);color:var(--color-text)}.rc-dev-offline-row[data-v-7e8a1a41]{display:flex;align-items:center;gap:7px}.rc-dev-offline-row svg[data-v-7e8a1a41]{display:block;width:var(--p-ic-md);height:var(--p-ic-md);flex:none}.user-menu-trigger[data-v-c96fd2ca]{display:flex;align-items:center;gap:var(--sb-gap);width:100%;min-width:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);cursor:pointer;text-align:left}.user-menu-trigger[data-v-c96fd2ca]:hover,.user-menu-trigger[aria-expanded=true][data-v-c96fd2ca]{background:var(--sb-hover)}.user-menu-trigger[data-v-c96fd2ca]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}html.macos-desktop .user-menu-trigger[data-v-c96fd2ca]{border-bottom-left-radius:var(--radius-window-chip)}.user-menu-trigger svg[data-v-c96fd2ca]{flex:none}.user-menu-avatar[data-v-c96fd2ca]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none;border-radius:var(--radius-full);background:var(--color-surface-sunken);color:var(--color-text-muted);overflow:hidden}.user-menu-avatar img[data-v-c96fd2ca]{width:100%;height:100%;object-fit:cover}.user-menu-name[data-v-c96fd2ca]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu[data-v-c96fd2ca]{position:fixed;top:0;left:0;z-index:var(--z-dropdown);max-height:calc(100vh - 16px);overflow-y:auto;overflow-x:hidden;user-select:none}.user-submenu[data-v-c96fd2ca]{position:fixed;top:0;left:0;z-index:var(--z-dropdown);width:max-content;max-height:calc(100vh - 16px);overflow-y:auto;overflow-x:hidden;user-select:none}.menu-pop-enter-active[data-v-c96fd2ca]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-c96fd2ca]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-c96fd2ca],.menu-pop-leave-to[data-v-c96fd2ca]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, 2px))}.user-menu-usage[data-v-c96fd2ca]{display:flex;flex-direction:column;gap:calc(var(--menu-item-padding-block) * 2);padding:var(--menu-item-padding-block) var(--menu-item-padding-inline)}.user-menu-usage-state[data-v-c96fd2ca]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-1) 0;color:var(--color-text-muted);font-size:var(--text-sm)}.user-menu-usage-error[data-v-c96fd2ca]{flex:1;min-width:0}.user-menu-usage-empty[data-v-c96fd2ca]{color:var(--color-text-faint)}.user-menu-usage-row[data-v-c96fd2ca]{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-3);row-gap:var(--space-05)}.user-menu-usage-label[data-v-c96fd2ca]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);line-height:var(--leading-tight);color:var(--color-text)}.user-menu-usage-hint[data-v-c96fd2ca]{grid-column:1 / -1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-text-faint)}.user-menu-usage-value[data-v-c96fd2ca]{justify-self:end;font-size:var(--text-sm);line-height:var(--leading-tight);font-weight:var(--weight-medium);color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap}.user-menu-usage-value.sev-warn[data-v-c96fd2ca]{color:var(--color-warning)}.user-menu-usage-value.sev-danger[data-v-c96fd2ca]{color:var(--color-danger)}.user-menu-item-label[data-v-c96fd2ca]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-login-label[data-v-c96fd2ca]{color:var(--color-accent)}.user-menu-row-value[data-v-c96fd2ca]{flex:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);color:var(--color-text-faint)}.side[data-v-32c49afb]{background:var(--color-sidebar-bg);display:flex;flex-direction:row;justify-content:flex-end;overflow:hidden;min-width:0;height:100%;transition:width .28s cubic-bezier(.4,0,.2,1),visibility .28s;--sb-inset: var(--space-2);--sb-pad-x: var(--space-4);--sb-gutter: 16px;--sb-gap: var(--space-2);--sb-action-inset: calc((max(var(--ui-font-size-sm) * var(--leading-tight), var(--p-ic-md)) + 2 * var(--space-2) - var(--icon-button-sm)) / 2);--sb-hover: var(--color-hover);--sb-selected: color-mix(in srgb, var(--color-selected) 75%, transparent)}.side.no-anim[data-v-32c49afb]{transition:none}.side.collapsed[data-v-32c49afb]{visibility:hidden}.col[data-v-32c49afb]{flex:none;min-width:0;display:flex;flex-direction:column;min-height:0;width:100%;box-sizing:border-box;border-right:.5px solid var(--line);container-type:inline-size;container-name:sidebar-col;position:relative}.ch[data-v-32c49afb]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:var(--space-3);min-height:calc(26px + 2 * var(--space-3));width:100%;box-sizing:border-box}.side.macos-desktop .ch[data-v-32c49afb]{padding-left:80px;-webkit-app-region:drag}.side.macos-desktop .ch-brand[data-v-32c49afb]{display:none}.ch-logo[data-v-32c49afb]{height:22px;width:32px;flex:none;display:block;cursor:pointer;user-select:none;touch-action:none;transition:transform .18s ease}.ch-logo[data-v-32c49afb]:hover{transform:scale(1.08)}.ch-brand[data-v-32c49afb]{display:flex;align-items:center;gap:8px;min-width:0;flex:1;user-select:none;touch-action:none}.ch-tail[data-v-32c49afb]{display:flex;align-items:center;gap:var(--space-2);flex:none;min-width:0;margin-left:auto}.ch-name[data-v-32c49afb]{font-size:var(--ui-font-size);font-weight:500;line-height:22px;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@container sidebar-col (max-width: 250px){.ch-name[data-v-32c49afb]{display:none}}.sidebar-actions[data-v-32c49afb]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 var(--space-2);padding:0 var(--sb-inset) var(--space-1);position:relative;z-index:1;background:var(--color-sidebar-bg)}.btn-new-chat[data-v-32c49afb]{grid-column:1 / -1;display:flex;align-items:center;gap:var(--sb-gap);width:100%;min-width:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);cursor:pointer;text-align:left}.sidebar-actions--has-workspace-action .btn-new-chat[data-v-32c49afb]{grid-column:1}.btn-new-chat[data-v-32c49afb]:hover{background:var(--sb-hover)}.btn-new-chat[data-v-32c49afb]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.btn-new-chat svg[data-v-32c49afb]{flex:none}.btn-new-chat span[data-v-32c49afb]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-new-chat[data-v-32c49afb] .ui-kbd{margin-left:auto}.btn-new-chat[data-v-32c49afb] .ui-kbd,.search[data-v-32c49afb] .ui-kbd{opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.btn-new-chat[data-v-32c49afb]:hover .ui-kbd,.btn-new-chat[data-v-32c49afb]:focus-visible .ui-kbd,.search[data-v-32c49afb]:hover .ui-kbd,.search[data-v-32c49afb]:focus-visible .ui-kbd{opacity:1}.search[data-v-32c49afb]{grid-column:1 / -1;display:flex;align-items:center;gap:var(--sb-gap);width:100%;margin:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.search[data-v-32c49afb]:hover{background:var(--sb-hover)}.search[data-v-32c49afb]:focus-visible{background:var(--sb-hover);color:var(--color-text);outline:2px solid var(--color-accent-bd);outline-offset:-2px}.search-icon[data-v-32c49afb]{flex:none;transform:translateY(-.5px)}.search-input[data-v-32c49afb]{flex:1;min-width:0;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-tabs[data-v-32c49afb]{padding:var(--space-2) var(--sb-inset) 0}.status-seg[data-v-32c49afb]{width:100%;display:flex}.status-seg[data-v-32c49afb] .ui-seg__item{flex:1;min-width:0;justify-content:center;padding:0 var(--space-1);overflow:hidden}.side-footer[data-v-32c49afb]{flex:none;position:relative;z-index:1;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--sb-inset);border-top:.5px solid var(--line);background:var(--color-sidebar-bg)}.side-footer-account[data-v-32c49afb]{flex:1 1 auto;min-width:0}.side-footer-settings[data-v-32c49afb]{flex:none}.side-footer[data-v-32c49afb]:before{content:"";position:absolute;left:0;right:0;height:var(--p-sidebar-seam-h);pointer-events:none;opacity:0;transition:opacity var(--duration-base) var(--ease-out);bottom:100%;background:linear-gradient(to top,color-mix(in srgb,var(--color-text) 1.5%,transparent),transparent 35%),linear-gradient(to top,color-mix(in srgb,var(--color-text) 1%,transparent),transparent 65%),linear-gradient(to top,color-mix(in srgb,var(--color-text) .75%,transparent),transparent);transition-duration:var(--duration-slow)}.side-footer--shadowed[data-v-32c49afb]:before{opacity:1}.folder-drop-overlay[data-v-32c49afb]{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:var(--space-3);box-sizing:border-box;background:color-mix(in srgb,var(--color-sidebar-bg) 72%,transparent);pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--duration-base) ease,visibility var(--duration-base)}.folder-drop-overlay.show[data-v-32c49afb]{opacity:1;visibility:visible}.folder-drop-card[data-v-32c49afb]{display:flex;align-items:center;gap:var(--space-3);max-width:100%;box-sizing:border-box;padding:var(--space-4);border-radius:var(--radius-lg);border:.5px dashed var(--color-accent);background:var(--color-bg);color:var(--color-accent);font-size:var(--ui-font-size-lg);font-weight:var(--weight-medium);box-shadow:var(--shadow-md)}.folder-drop-card svg[data-v-32c49afb]{flex:none}.folder-drop-card span[data-v-32c49afb]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-header[data-v-7d9c1fa8]{flex:none;display:flex;align-items:center;gap:14px;height:var(--panel-head-h, 48px);padding:0 16px;border-bottom:.5px solid var(--color-line);background:var(--color-bg);font-family:var(--font-ui);min-width:0;user-select:none;container-type:inline-size}.chat-header.macos-desktop[data-v-7d9c1fa8]{-webkit-app-region:drag}.chat-header.macos-desktop button[data-v-7d9c1fa8],.chat-header.macos-desktop input[data-v-7d9c1fa8]{-webkit-app-region:no-drag}.app:not(.mobile) .chat-header{transition:padding-left .28s cubic-bezier(.4,0,.2,1)}.app.sidebar-collapsed .chat-header{padding-left:78px}.app.sidebar-collapsed.macos-desktop .chat-header{padding-left:146px}.ch-id[data-v-7d9c1fa8]{display:flex;align-items:center;gap:6px;min-width:0;flex:none;max-width:46%}.ch-ws[data-v-7d9c1fa8]{color:var(--color-text-muted);font-size:var(--text-base);font-weight:var(--weight-medium);flex:none}.ch-sep[data-v-7d9c1fa8]{color:var(--color-text-faint);flex:none}.ch-ses[data-v-7d9c1fa8]{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-rename[data-v-7d9c1fa8]{flex:1;min-width:0;font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);background:var(--color-bg);border:.5px solid var(--color-accent);border-radius:var(--radius-xs);padding:2px 5px;outline:none;user-select:text}.ch-git[data-v-7d9c1fa8]{display:flex;align-items:center;gap:4px;border:none;background:transparent;padding:0;color:var(--muted);font-family:var(--font-ui);font-size:calc(var(--ui-font-size) - 2px);flex:0 1 auto;max-width:none;min-width:0;cursor:pointer}.ch-git:hover .ch-branch[data-v-7d9c1fa8]{color:var(--color-text)}.ch-branch-icon[data-v-7d9c1fa8]{flex:none;color:var(--color-text-muted)}.ch-branch[data-v-7d9c1fa8]{color:var(--dim);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:4px}.ch-detached[data-v-7d9c1fa8]{color:var(--muted);font-style:italic}.ch-pill[data-v-7d9c1fa8]{display:inline-flex;align-items:center;gap:3px;padding:1px 5px;border-radius:999px;background:var(--panel);border:.5px solid var(--line);font-size:calc(var(--ui-font-size) - 3px)}.ch-sync-pill[data-v-7d9c1fa8]{border-color:var(--line)}.ch-diff-pill[data-v-7d9c1fa8]{border-color:color-mix(in srgb,var(--color-success) 20%,var(--line));font-variant-numeric:tabular-nums}.ch-ahead[data-v-7d9c1fa8]{color:var(--color-warning);flex:none}.ch-behind[data-v-7d9c1fa8]{color:var(--color-accent-hover);flex:none}.ch-add[data-v-7d9c1fa8]{color:var(--color-success);flex:none}.ch-del[data-v-7d9c1fa8]{color:var(--color-danger);flex:none}.ch-spacer[data-v-7d9c1fa8]{flex:1;min-width:0}@container (max-width: 720px){.ch-ws[data-v-7d9c1fa8],.ch-sep[data-v-7d9c1fa8]{display:none}.ch-id[data-v-7d9c1fa8]{flex:0 1 auto;max-width:none}}.chat-header .ch-act-more[data-v-7d9c1fa8]{width:24px;height:24px;border-radius:var(--radius-sm)}.chat-header .ch-act-more[data-v-7d9c1fa8] svg{width:14px;height:14px}.ch-act-more.open[data-v-7d9c1fa8]{background:var(--color-well);color:var(--color-text)}.chat-header .ch-panel[data-v-7d9c1fa8]{width:var(--icon-button-sm);height:var(--icon-button-sm);border-radius:var(--radius-sm)}.chat-header .ch-panel[data-v-7d9c1fa8] svg{width:var(--p-ic-md);height:var(--p-ic-md)}.ch-dev[data-v-7d9c1fa8]{display:inline-flex;align-items:center;height:22px;padding:0 9px;flex:none;border:.5px solid var(--color-warning-bd);border-radius:var(--radius-full);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--text-xs);font-weight:500}.ch-pr[data-v-7d9c1fa8]{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;flex:none;border:.5px solid var(--color-line);border-radius:var(--radius-full);background:var(--color-well);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:500;cursor:pointer}.ch-pr svg[data-v-7d9c1fa8]{flex:none}.ch-pr.pr-open[data-v-7d9c1fa8]{color:var(--color-success);border-color:var(--color-success-bd);background:var(--color-success-soft)}.ch-pr.pr-merged[data-v-7d9c1fa8]{color:var(--color-done);border-color:var(--color-done-bd);background:var(--color-done-soft)}.ch-pr.pr-closed[data-v-7d9c1fa8]{color:var(--color-danger);border-color:var(--color-danger-bd);background:var(--color-danger-soft)}.ch-pr.pr-draft[data-v-7d9c1fa8],.ch-pr.pr-unknown[data-v-7d9c1fa8]{color:var(--color-text-muted);border-color:var(--color-line-strong);background:var(--color-well)}.ch-pr[data-v-7d9c1fa8]:hover{border-color:var(--color-line-strong)}@container (max-width: 980px){.ch-sync-pill[data-v-7d9c1fa8],.ch-diff-pill[data-v-7d9c1fa8]{display:none}}@container (max-width: 860px){.ch-git[data-v-7d9c1fa8],.ch-pr[data-v-7d9c1fa8]{display:none}}.ch-menu[data-v-7d9c1fa8]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.menu-pop-enter-active[data-v-7d9c1fa8]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-7d9c1fa8]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-7d9c1fa8],.menu-pop-leave-to[data-v-7d9c1fa8]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}@media(max-width:980px){.ch-act-label[data-v-7d9c1fa8]{display:none}}@media(max-width:640px){.chat-header[data-v-7d9c1fa8]{display:none}}.appr[data-v-0df12ecb]{display:flex;flex-direction:column;max-height:calc(var(--app-height, 100dvh) - var(--dock-card-top-clearance));margin:var(--space-2) 0;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);overflow:hidden auto;animation:kimi-card-in var(--duration-base) var(--ease-out)}.appr[data-v-0df12ecb]:before{content:"";position:sticky;top:0;flex:none;height:var(--p-scroll-seam-h);margin-bottom:calc(-1 * var(--p-scroll-seam-h));z-index:var(--z-raised);pointer-events:none;opacity:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 2.5%,transparent),transparent 35%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.75%,transparent),transparent 65%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.25%,transparent),transparent);transition:opacity var(--duration-slow) var(--ease-out)}.appr.scrolled[data-v-0df12ecb]:before{opacity:1}.appr>.ah[data-v-0df12ecb],.appr>.af[data-v-0df12ecb]{flex:none}.appr.minimized[data-v-0df12ecb]{transition:background var(--duration-fast) var(--ease-out)}.appr.minimized[data-v-0df12ecb]:hover{background:var(--color-hover)}.ah[data-v-0df12ecb]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4) 0;flex-wrap:nowrap}.appr.minimized .ah[data-v-0df12ecb]{padding-bottom:var(--space-3)}.appr.minimized .ah.clickable[data-v-0df12ecb]{cursor:pointer}.akind[data-v-0df12ecb]{color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-semibold);white-space:nowrap;flex:none}.apeek[data-v-0df12ecb]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);font:var(--text-xs) var(--font-mono)}.amin[data-v-0df12ecb],.aexpand[data-v-0df12ecb]{margin-left:auto;flex:none}.aexpand+.amin[data-v-0df12ecb]{margin-left:0}.ab[data-v-0df12ecb]{display:flex;flex-direction:column;flex:1;min-height:0;padding:var(--space-3) var(--space-4) 0}.ab[data-v-0df12ecb]>*{flex:0 1 auto;min-height:0}.ab>.plan-path[data-v-0df12ecb]{flex:none}.ab>.body-plan-wrap[data-v-0df12ecb]{flex:1}.plan-path[data-v-0df12ecb]{display:block;width:100%;margin-bottom:var(--space-2);padding:0;border:none;background:transparent;color:var(--color-accent);font:var(--text-xs) var(--font-mono);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.plan-path[data-v-0df12ecb]:hover{text-decoration:underline}.plan-path[data-v-0df12ecb]:focus-visible{outline:none;text-decoration:underline;border-radius:var(--radius-xs);box-shadow:var(--p-focus-ring)}.body-code[data-v-0df12ecb]{display:flex;flex-direction:column}.body-code.expanded[data-v-0df12ecb]{flex:1}.body-code.expanded[data-v-0df12ecb] .hl-code{max-height:none;flex:1}.code-path[data-v-0df12ecb]{flex:none;color:var(--color-text-muted);font:var(--text-xs) var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.body-shell[data-v-0df12ecb]{overflow-y:auto}.shell-cmd[data-v-0df12ecb]{font:var(--text-sm) var(--font-mono);background:var(--color-surface-sunken);border:.5px solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);white-space:pre-wrap;word-break:break-all;max-height:160px;overflow-y:auto;color:var(--color-text)}.shell-dollar[data-v-0df12ecb]{color:var(--color-accent-hover);font-weight:var(--weight-medium);margin-right:var(--space-2)}.shell-cwd[data-v-0df12ecb]{font:var(--text-xs) var(--font-mono);color:var(--color-text-muted);margin-top:var(--space-1)}.shell-danger[data-v-0df12ecb]{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-danger);font:var(--text-sm)/var(--leading-normal) var(--font-ui);background:var(--color-danger-soft)}.shell-danger-ic[data-v-0df12ecb]{flex:none}.body-chip[data-v-0df12ecb]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;font:var(--text-base)/var(--leading-normal) var(--font-ui);color:var(--color-text);overflow-y:auto}.chip-label[data-v-0df12ecb]{background:var(--color-inline-code-bg);border-radius:var(--radius-sm);padding:2px var(--space-2);font:var(--weight-semibold) var(--text-xs) var(--font-mono);color:var(--color-text-muted);white-space:nowrap}.chip-value[data-v-0df12ecb]{font:var(--text-sm) var(--font-mono);color:var(--color-text);word-break:break-all}.chip-detail[data-v-0df12ecb]{font:var(--text-xs) var(--font-ui);color:var(--color-text-muted)}.body-todo[data-v-0df12ecb]{overflow-y:auto}.todo-item[data-v-0df12ecb]{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-1) 0;font:var(--text-base)/var(--leading-normal) var(--font-ui);color:var(--color-text)}.todo-glyph[data-v-0df12ecb]{color:var(--color-accent);font-size:var(--text-sm);flex:none;width:14px}.todo-title[data-v-0df12ecb]{color:var(--color-text)}.todo-done[data-v-0df12ecb]{color:var(--color-text-muted);text-decoration:line-through}.body-generic[data-v-0df12ecb]{font:var(--text-base)/var(--leading-normal) var(--font-ui);color:var(--color-text);word-break:break-word;overflow-y:auto}.body-plan-wrap[data-v-0df12ecb]{display:flex;flex-direction:column;overflow-y:auto}.body-plan-wrap[data-v-0df12ecb]:before{content:"";position:sticky;top:0;flex:none;height:var(--p-scroll-seam-h);margin-bottom:calc(-1 * var(--p-scroll-seam-h));z-index:var(--z-raised);pointer-events:none;opacity:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 2.5%,transparent),transparent 35%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.75%,transparent),transparent 65%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.25%,transparent),transparent);transition:opacity var(--duration-slow) var(--ease-out)}.body-plan-wrap.scrolled[data-v-0df12ecb]:before{opacity:1}.body-plan-wrap>.plan-opts[data-v-0df12ecb]{flex:none}.body-plan[data-v-0df12ecb]{max-height:50vh;overflow-y:auto;min-height:0}.body-plan.expanded[data-v-0df12ecb]{max-height:none;flex:1}.plan-opts[data-v-0df12ecb]{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-3);padding-top:var(--space-3);border-top:.5px solid var(--color-line)}.popt[data-v-0df12ecb]{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text);font:var(--text-sm)/var(--leading-normal) var(--font-ui);text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.popt[data-v-0df12ecb]:hover:not(:disabled){background:var(--color-hover)}.popt[data-v-0df12ecb]:focus-visible{outline:none;background:var(--color-hover);box-shadow:var(--p-focus-ring)}.popt[data-v-0df12ecb]:disabled{cursor:default;opacity:.6}.popt-key[data-v-0df12ecb]{width:var(--p-chip-num);height:var(--p-chip-num);border-radius:var(--radius-sm);background:var(--color-inline-code-bg);color:var(--color-text);font:var(--weight-medium) var(--text-xs)/var(--p-chip-num) var(--font-ui);text-align:center;flex:none}.popt-text[data-v-0df12ecb]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.popt-label[data-v-0df12ecb]{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium)}.popt-desc[data-v-0df12ecb]{color:var(--color-text-muted);font:var(--text-xs)/var(--leading-normal) var(--font-ui)}.popt-spin[data-v-0df12ecb]{flex:none;color:var(--color-text-muted)}.feedback-wrap[data-v-0df12ecb]{margin-top:var(--space-3);overflow-y:auto}.feedback-hint[data-v-0df12ecb]{font:var(--text-xs) var(--font-ui);color:var(--color-text-muted);margin-top:var(--space-1)}.af[data-v-0df12ecb]{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border-top:.5px solid var(--color-line)}.abtns[data-v-0df12ecb]{display:flex;align-items:center;gap:var(--space-1)}.knum[data-v-0df12ecb]{min-width:16px;height:16px;padding:0 3px;border-radius:var(--radius-xs);background:var(--color-inline-code-bg);color:var(--color-text);font:var(--weight-medium) var(--text-xs)/16px var(--font-ui);text-align:center}.abtns .ui-button--primary .knum[data-v-0df12ecb]{background:color-mix(in srgb,var(--color-text-on-accent) 28%,transparent);color:var(--color-text-on-accent)}@media(max-width:640px){.popt[data-v-0df12ecb]{min-height:44px;padding:var(--space-3)}.af[data-v-0df12ecb]{flex-direction:column;align-items:stretch}.abtns[data-v-0df12ecb]{flex-direction:column;margin-left:0;gap:var(--space-2)}.abtns[data-v-0df12ecb] .ui-button{width:100%;min-height:46px}.abtns .amain[data-v-0df12ecb]{order:-1}}.chat-dock[data-v-9ddd6146]{--dock-inline-left: 16px;--dock-inline-right: 16px;box-sizing:border-box;width:100%;max-width:calc(var(--read-max) + var(--panes-scrollbar-width, 0px));padding-right:var(--panes-scrollbar-width, 0px);flex:none;position:absolute;inset:auto 0 0;background:transparent;z-index:var(--z-sticky)}.chat-dock.has-popup[data-v-9ddd6146]{z-index:var(--z-dropdown)}.chat-dock.align-center[data-v-9ddd6146]{margin-left:auto;margin-right:auto}.chat-dock.align-left[data-v-9ddd6146]{margin-left:0;margin-right:auto}.chat-dock.align-mobile[data-v-9ddd6146]{max-width:none}.chat-dock[data-v-9ddd6146]:before{--fade: 48px;--veil: 72px;content:"";position:absolute;top:calc(-1 * var(--fade));right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-bg) 0%,transparent),color-mix(in srgb,var(--color-bg) 30%,transparent) 21px,color-mix(in srgb,var(--color-bg) 70%,transparent) 45px,var(--color-bg) var(--veil))}.chat-dock[data-v-9ddd6146]>*{position:relative;z-index:1}.dock-work-panel[data-v-9ddd6146]{position:absolute;left:16px;right:calc(16px + var(--panes-scrollbar-width, 0px));bottom:100%;background:var(--color-menu-bg-frost);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:.5px solid var(--color-line);border-radius:var(--radius-2xl);box-shadow:var(--shadow-menu);margin-bottom:var(--space-2);max-height:min(360px,50vh);display:flex;flex-direction:column;overflow:hidden;user-select:none}.dock-work-panel.panel-todos .dock-work-head[data-v-9ddd6146],.dock-work-panel.panel-goal .dock-work-head[data-v-9ddd6146],.dock-work-panel.panel-subagent .dock-work-head[data-v-9ddd6146],.dock-work-panel.panel-bash .dock-work-head[data-v-9ddd6146]{padding:var(--space-4) var(--space-4) 0;border-bottom:none}.dock-work-panel.panel-todos .dock-work-body[data-v-9ddd6146],.dock-work-panel.panel-goal .dock-work-body[data-v-9ddd6146],.dock-work-panel.panel-subagent .dock-work-body[data-v-9ddd6146],.dock-work-panel.panel-bash .dock-work-body[data-v-9ddd6146]{margin-top:var(--space-3);padding:0 var(--space-4) var(--space-4)}.dock-work-panel.panel-todos .dock-work-head[data-v-9ddd6146],.dock-work-panel.panel-goal .dock-work-head[data-v-9ddd6146],.dock-work-panel.panel-plan .dock-work-head[data-v-9ddd6146],.dock-work-panel.panel-subagent .dock-work-head[data-v-9ddd6146],.dock-work-panel.panel-bash .dock-work-head[data-v-9ddd6146]{padding:var(--space-4) var(--space-4) 0;border-bottom:none}.dock-work-panel.panel-todos .dock-work-tab[data-v-9ddd6146],.dock-work-panel.panel-goal .dock-work-tab[data-v-9ddd6146],.dock-work-panel.panel-plan .dock-work-tab[data-v-9ddd6146],.dock-work-panel.panel-subagent .dock-work-tab[data-v-9ddd6146],.dock-work-panel.panel-bash .dock-work-tab[data-v-9ddd6146]{padding:0;line-height:var(--leading-solid)}.dock-work-panel.panel-goal .gh-time[data-v-9ddd6146]{color:var(--color-text-muted)}.dock-work-panel.panel-todos .dock-work-body[data-v-9ddd6146],.dock-work-panel.panel-goal .dock-work-body[data-v-9ddd6146],.dock-work-panel.panel-plan .dock-work-body[data-v-9ddd6146],.dock-work-panel.panel-subagent .dock-work-body[data-v-9ddd6146],.dock-work-panel.panel-bash .dock-work-body[data-v-9ddd6146]{margin-top:var(--space-3);padding:0 var(--space-4) var(--space-4)}.dock-work-panel.panel-subagent[data-v-9ddd6146],.dock-work-panel.panel-bash[data-v-9ddd6146]{height:min(var(--p-dock-panel-h),50vh)}.dock-work-tab.tab-progress[data-v-9ddd6146]{display:inline-flex;align-items:center;gap:var(--space-2)}@media(max-width:640px){.dock-work-panel.panel-subagent[data-v-9ddd6146],.dock-work-panel.panel-bash[data-v-9ddd6146]{height:auto}}.dock-work-head[data-v-9ddd6146]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:.5px solid var(--color-line);position:relative;z-index:1}.dock-work-body[data-v-9ddd6146]{padding:var(--space-2) var(--space-3);overflow-y:auto;min-height:0;display:flex;flex-direction:column}@media(max-width:480px){.dock-work-head[data-v-9ddd6146]{flex-wrap:wrap}}.dock-work-panel.body-scrolled-up .dock-work-body[data-v-9ddd6146]{mask-image:linear-gradient(to bottom,transparent,black var(--menu-scroll-fade))}.dock-work-body[data-v-9ddd6146] .taskspane{border:none;background:transparent;padding:0}.dock-work-body[data-v-9ddd6146] .taskspane .tp-head{display:none}.dock-workbar[data-v-9ddd6146]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1) var(--space-1-5);padding:var(--space-1) calc(var(--dock-inline-right) + var(--space-4) + var(--p-hairline)) var(--space-05) calc(var(--dock-inline-left) + var(--space-4) + var(--p-hairline))}.dock-workbar[data-v-9ddd6146] .ui-pill{position:relative;gap:var(--space-1-5);height:auto;padding:var(--space-2) calc(var(--space-3) + var(--space-05)) var(--space-2) var(--space-3);border:none;border-radius:var(--radius-lg);background:var(--color-selected);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);color:var(--color-text);font-size:var(--text-base);line-height:var(--leading-normal)}.dock-workbar[data-v-9ddd6146] .ui-pill svg{width:1.5em;height:1.5em;color:inherit}.dock-workbar[data-v-9ddd6146] .ui-pill:after{content:"";position:absolute;inset:0;border-radius:var(--radius-lg);background:var(--color-hover);opacity:0;transition:opacity var(--duration-base) var(--ease-out);pointer-events:none}.dock-workbar[data-v-9ddd6146] .ui-pill:hover:not(:disabled):after,.dock-workbar[data-v-9ddd6146] .ui-pill.is-active:after{opacity:1}.chat-dock.pills-compact .dock-workbar[data-v-9ddd6146] .ui-pill{padding:var(--space-2)}.chat-dock.pills-compact .dock-workbar[data-v-9ddd6146] .ui-pill>span{display:none}.dock-workbar .dw-count[data-v-9ddd6146]{color:var(--color-text-muted)}.dock-workbar .dw-running[data-v-9ddd6146]{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted)}.dock-workbar .dw-goal-status[data-v-9ddd6146]{font-weight:var(--weight-medium)}.dock-workbar .dw-goal-status--active[data-v-9ddd6146]{color:var(--color-success)}.dock-workbar .dw-goal-status--paused[data-v-9ddd6146]{color:var(--color-warning)}.dock-workbar .dw-goal-status--blocked[data-v-9ddd6146]{color:var(--color-danger)}.dock-approval[data-v-9ddd6146]{margin-top:8px}.chat-dock.has-approval[data-v-9ddd6146],.chat-dock.has-question[data-v-9ddd6146]{display:flex;flex-direction:column;max-height:calc(var(--app-height, 100dvh) - var(--dock-card-top-clearance))}.chat-dock.has-approval>.dock-workbar[data-v-9ddd6146],.chat-dock.has-question>.dock-workbar[data-v-9ddd6146]{flex:none}.chat-dock.has-approval>.dock-approval[data-v-9ddd6146],.chat-dock.has-question>.dock-question[data-v-9ddd6146]{min-height:0}@media(max-width:640px){.chat-dock[data-v-9ddd6146]{--dock-inline-left: max(12px, var(--safe-left));--dock-inline-right: max(12px, var(--safe-right))}.dock-work-panel[data-v-9ddd6146]{left:10px;right:calc(10px + var(--panes-scrollbar-width, 0px))}.dock-work-head-actions[data-v-9ddd6146] .ui-seg__item{height:var(--touch-target-min)}.dock-work-head-actions[data-v-9ddd6146] .ui-icon-button{width:var(--touch-target-min);height:var(--touch-target-min)}}.chat-dock[data-v-9ddd6146]:not(.align-mobile) .composer{padding-bottom:14px}.dock-panel-enter-active[data-v-9ddd6146]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.dock-panel-leave-active[data-v-9ddd6146]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.dock-panel-enter-from[data-v-9ddd6146],.dock-panel-leave-to[data-v-9ddd6146]{opacity:0;transform:translateY(var(--motion-panel-shift)) scale(var(--motion-panel-scale))}.ws-home[data-v-854dbf11]{flex:none;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:0 var(--space-4) var(--space-4);user-select:none}.ws-home-title[data-v-854dbf11]{display:flex;align-items:center;gap:10px;color:var(--color-text);font-size:var(--ui-t1);font-weight:var(--weight-section-label)}.ws-home-folder[data-v-854dbf11]{color:var(--color-text-muted)}.ws-home-path[data-v-854dbf11]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wrs[data-v-f64d7218]{flex:none;display:flex;flex-direction:column;margin:var(--space-4) var(--dock-inline-right, 16px) 0 var(--dock-inline-left, 16px)}.wrs-caption[data-v-f64d7218]{padding:0 var(--space-2) var(--space-1);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--faint);user-select:none}.wrs-row[data-v-f64d7218]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-width:0;padding:6px var(--space-2);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-family:var(--font-ui);text-align:left;cursor:pointer}.wrs-row[data-v-f64d7218]:hover{background:var(--color-hover)}.wrs-row[data-v-f64d7218]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.wrs-ico[data-v-f64d7218]{display:inline-flex;flex:none}.wrs-ico--open[data-v-f64d7218]{color:var(--color-success)}.wrs-ico--done[data-v-f64d7218]{color:var(--color-done)}.wrs-title[data-v-f64d7218]{flex:1;min-width:0;font-size:var(--ui-font-size-sm);font-weight:var(--weight-caption);line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wrs-time[data-v-f64d7218]{flex:none;color:var(--color-text-faint);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.wrs-foot[data-v-f64d7218]{display:flex;justify-content:center;margin-top:var(--space-2)}.wrs-more[data-v-f64d7218]{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.wrs-more[data-v-f64d7218]:hover{background:var(--color-hover);color:var(--color-text)}.wrs-more svg[data-v-f64d7218]{color:var(--color-text-faint)}.tsearch[data-v-bfda805f]{position:absolute;top:calc(var(--panel-head-h, 48px) + var(--space-3));right:var(--space-3);z-index:var(--z-sticky);width:min(var(--p-findbar-w),calc(100% - var(--space-3) * 2));background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-2xl);box-shadow:var(--shadow-menu);animation:kimi-card-in var(--duration-slow) var(--ease-out)}.tsearch.mobile[data-v-bfda805f]{top:var(--space-3)}.tsearch[data-v-bfda805f]:after{content:"";position:absolute;inset:0;border:inherit;border-color:var(--color-composer-focus-line);border-radius:var(--radius-2xl);opacity:0;pointer-events:none;transition:opacity var(--duration-slow) var(--ease-in-out)}.tsearch[data-v-bfda805f]:focus-within:after{opacity:1}.tsearch-main[data-v-bfda805f]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);min-height:calc(var(--space-8) + 2 * var(--space-1))}.tsearch-icon[data-v-bfda805f]{flex:none;margin-left:var(--space-1);color:var(--color-text-muted)}.tsearch-input[data-v-bfda805f]{flex:1;min-width:0;height:var(--space-8);padding:0;border:none;background:transparent;font-family:var(--font-ui);font-size:var(--ui-font-size);color:var(--color-text)}.tsearch-input[data-v-bfda805f]:focus-visible{outline:none}.tsearch-input[data-v-bfda805f]::placeholder{color:var(--color-text-muted)}.tsearch-spin[data-v-bfda805f]{display:inline-flex;flex:none}.tsearch-sep[data-v-bfda805f]{flex:none;width:var(--p-hairline);height:var(--space-4);background:var(--color-line)}.tsearch .tsearch-close[data-v-bfda805f]{border-radius:var(--radius-full)}.tsearch-foot-wrap[data-v-bfda805f]{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--duration-slow) var(--ease-out)}.tsearch-foot-wrap.open[data-v-bfda805f]{grid-template-rows:1fr}.tsearch-foot[data-v-bfda805f]{overflow:hidden;min-height:0;display:flex;align-items:center;gap:var(--space-1);padding:0 var(--space-2)}.tsearch-foot-wrap.open .tsearch-foot[data-v-bfda805f]{padding:var(--space-1) var(--space-2);border-top:var(--p-hairline) solid var(--color-line)}.tsearch-count[data-v-bfda805f]{margin-left:auto;padding-right:var(--space-1);font-size:var(--ui-font-size-sm);color:var(--color-text-muted);white-space:nowrap;user-select:none}.tsearch-rings[data-v-bfda805f]{position:absolute;inset:0;pointer-events:none}.tsearch-ring[data-v-bfda805f]{position:absolute;box-sizing:content-box;border:var(--p-findring-w) solid var(--color-warning);margin:calc(-1 * var(--p-findring-w));border-radius:var(--radius-xs);pointer-events:none}.con[data-v-220ec52e]{--read-max: 760px;display:flex;flex-direction:column;min-width:0;height:100%;position:relative;container-type:inline-size}.empty-drag[data-v-220ec52e]{position:absolute;top:0;left:0;right:0;height:var(--panel-head-h, 48px)}.empty-drag.macos-desktop[data-v-220ec52e]{-webkit-app-region:drag}.empty-panel-btn[data-v-220ec52e]{position:absolute;top:var(--space-3);right:var(--space-4);z-index:var(--z-sticky);width:var(--space-6);height:var(--space-6);border-radius:var(--radius-sm);-webkit-app-region:no-drag}.empty-panel-btn[data-v-220ec52e] svg{width:var(--p-ic-sm);height:var(--p-ic-sm)}.panes[data-v-220ec52e]{flex:1;min-height:0;overflow-y:auto;overflow-anchor:auto;scrollbar-gutter:stable}.panes[data-v-220ec52e]::-webkit-scrollbar{width:var(--space-2)}.panes[data-v-220ec52e]::-webkit-scrollbar-thumb{min-height:var(--space-6);border:var(--space-05) solid transparent;border-radius:var(--radius-full);background:transparent;background-clip:padding-box}.panes[data-v-220ec52e]:hover::-webkit-scrollbar-thumb,.panes.scrolling[data-v-220ec52e]::-webkit-scrollbar-thumb{background-color:var(--color-chat-scrollbar)}.panes[data-v-220ec52e]::-webkit-scrollbar-thumb:hover,.panes[data-v-220ec52e]::-webkit-scrollbar-thumb:active{background-color:var(--color-chat-scrollbar-hover)}.panes.session-settling .chat[data-v-220ec52e]>*:not(.chat-loading){visibility:hidden}.panes.is-following[data-v-220ec52e],.panes.history-prepending[data-v-220ec52e],.panes.is-pinned[data-v-220ec52e]{overflow-anchor:none}.chat-layout[data-v-220ec52e]{display:flex;flex-direction:column;height:100%;min-height:0;position:relative}.chat-scroll[data-v-220ec52e]{flex:1;min-height:0;position:relative}.content-wrap[data-v-220ec52e]{width:100%;max-width:var(--read-max);min-height:100%;box-sizing:border-box;padding-bottom:var(--chat-dock-height, 0px);display:flex;flex-direction:column;flex-shrink:0}.content-wrap.align-center[data-v-220ec52e]{margin-left:auto;margin-right:auto}.content-wrap.align-left[data-v-220ec52e]{margin-left:0;margin-right:auto}.content-wrap.align-mobile[data-v-220ec52e]{max-width:none}@media(max-width:640px){.con.mobile[data-v-220ec52e]{min-width:0;overflow:hidden}.con.mobile .panes[data-v-220ec52e]{scrollbar-gutter:auto;-webkit-overflow-scrolling:touch}.content-wrap.align-mobile[data-v-220ec52e]{width:100%;min-width:0}}.empty-spacer[data-v-220ec52e]{flex:1}.empty-tail[data-v-220ec52e]{min-height:0;overflow-y:auto;padding-bottom:var(--space-4);box-sizing:border-box}.empty-hint[data-v-220ec52e]{flex:none;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:0 16px 16px;color:var(--color-text);font-family:var(--font-ui);user-select:none}.empty-hint-title[data-v-220ec52e]{font-size:calc(var(--ui-font-size) + 16px);font-optical-sizing:auto;font-weight:600}.empty-hint-title.is-starting[data-v-220ec52e]{display:inline-flex;align-items:center;gap:9px;color:var(--dim);font-weight:400}.empty-doodle[data-v-220ec52e]{width:min(340px,62vw)}.empty-hint-text[data-v-220ec52e]{display:inline-block;font-size:var(--text-base);color:var(--dim);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upgrade-banner[data-v-220ec52e]{flex:none;display:flex;align-items:center;gap:var(--space-3);margin:0 var(--dock-inline-right, 16px) var(--space-2) var(--dock-inline-left, 16px);padding:var(--space-2) var(--space-3);border:.5px solid var(--color-accent-bd);border-radius:var(--radius-xl);background:var(--color-accent-soft)}.upgrade-banner-icon[data-v-220ec52e]{flex:none;color:var(--color-accent)}.upgrade-banner-text[data-v-220ec52e]{flex:1;min-width:0;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text)}.upgrade-banner-cta[data-v-220ec52e]{flex:none;display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:none;border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-accent);cursor:pointer}.upgrade-banner-cta[data-v-220ec52e]:hover{color:var(--color-accent-hover)}.empty-composer[data-v-220ec52e] .composer-card{position:relative;z-index:var(--z-sticky)}.empty-composer[data-v-220ec52e]:not(.expanded) .ph{min-height:3lh}.ws-bar[data-v-220ec52e]{margin-top:calc(-1 * var(--space-4));padding:calc(var(--space-4) + var(--space-2)) var(--space-2) var(--space-2);background:color-mix(in srgb,var(--color-hover) 60%,transparent);border-radius:0 0 var(--radius-2xl) var(--radius-2xl);font-family:var(--font-ui)}.ws-anchor[data-v-220ec52e]{position:relative}.ws-chip[data-v-220ec52e]{display:inline-flex;align-items:center;gap:var(--space-2);max-width:100%;padding:var(--space-2) var(--space-3);background:none;border:none;border-radius:var(--radius-full);color:var(--color-text-muted);font-family:inherit;font-size:var(--ui-font-size-sm);cursor:pointer;transition:background var(--duration-base) var(--ease-out)}.ws-chip[data-v-220ec52e]:hover,.ws-chip.open[data-v-220ec52e]{background:var(--color-selected);color:var(--color-text)}.ws-chip[data-v-220ec52e]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ws-chip>.kw-icon[data-v-220ec52e]{flex:none}.ws-chip-name[data-v-220ec52e]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--weight-option-label)}.ws-chip-chev[data-v-220ec52e]{flex:none;transition:transform var(--duration-base) var(--ease-out)}.ws-chip.open .ws-chip-chev[data-v-220ec52e]{transform:rotate(180deg)}.ws-chip.ws-ghost[data-v-220ec52e]{color:var(--color-text-muted)}.ws-chip.ws-ghost[data-v-220ec52e]:hover{color:var(--color-text)}.ws-backdrop[data-v-220ec52e]{position:fixed;inset:0;z-index:var(--z-sticky)}.ws-panel[data-v-220ec52e]{position:absolute;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);left:0;top:calc(100% + var(--space-1));z-index:var(--z-dropdown);width:max-content;min-width:min(calc(var(--space-8) * 8),100%);max-width:100%;max-height:calc(var(--space-8) * 10);overflow:hidden auto;background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:.5px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-1);animation:ws-pop-220ec52e var(--duration-base) var(--ease-out)}.ws-panel.up[data-v-220ec52e]{top:auto;bottom:calc(100% + var(--space-1));animation-name:ws-pop-up-220ec52e}@keyframes ws-pop-220ec52e{0%{opacity:0;transform:translateY(calc(-1 * var(--space-1))) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ws-pop-up-220ec52e{0%{opacity:0;transform:translateY(var(--space-1)) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.ws-caption[data-v-220ec52e]{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-faint);user-select:none}.ws-row[data-v-220ec52e]{display:flex;align-items:center;gap:var(--space-2);width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-dropdown-row);padding:var(--space-1) var(--space-2);cursor:pointer;font-family:var(--font-ui)}.ws-row>.kw-icon[data-v-220ec52e]{flex:none;color:var(--muted)}.ws-row[data-v-220ec52e]:hover{background:var(--color-hover)}.ws-row.on[data-v-220ec52e]{background:var(--color-selected)}.ws-row[data-v-220ec52e]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ws-info[data-v-220ec52e]{flex:1;min-width:0;display:flex;flex-direction:column}.ws-name[data-v-220ec52e]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);font-weight:var(--weight-option-label);color:var(--color-text);line-height:var(--leading-normal)}.ws-path[data-v-220ec52e]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);font-weight:var(--weight-option-label);color:var(--muted);line-height:var(--leading-normal)}.ws-check[data-v-220ec52e]{flex:none;margin-left:var(--space-3);color:var(--color-text)}.ws-divider[data-v-220ec52e]{height:1px;margin:var(--space-1) var(--space-2);background:var(--line)}.ws-action[data-v-220ec52e]{display:flex;align-items:center;gap:var(--space-2);width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-dropdown-row);padding:var(--space-2);cursor:pointer;font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--dim)}.ws-action>.kw-icon[data-v-220ec52e]{flex:none;color:var(--muted)}.ws-action span[data-v-220ec52e]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-action[data-v-220ec52e]:hover{background:var(--color-hover);color:var(--color-text)}.ws-action:hover>.kw-icon[data-v-220ec52e]{color:var(--dim)}.ws-action[data-v-220ec52e]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.chat-scroll[data-v-220ec52e]{display:flex;flex-direction:column}.mobile .panes[data-v-220ec52e]:has(>.chat-layout){overflow:hidden;scrollbar-gutter:auto}.newmsg-pill[data-v-220ec52e]{position:absolute;left:50%;bottom:12px;transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:.5px solid var(--line);background:var(--panel);color:var(--color-text);font-size:var(--text-xs);font-weight:var(--weight-ui-strong);cursor:pointer;box-shadow:var(--shadow-sm);z-index:var(--z-sticky)}.pill-chevron[data-v-220ec52e]{width:12px;height:12px}.pill-enter-active[data-v-220ec52e],.pill-leave-active[data-v-220ec52e]{transition:opacity .2s ease,transform .2s ease}.pill-enter-from[data-v-220ec52e],.pill-leave-to[data-v-220ec52e]{opacity:0;transform:translate(-50%) translateY(8px)}.undo-toast[data-v-220ec52e]{position:absolute;left:50%;top:60px;transform:translate(-50%);padding:8px 14px;border-radius:var(--radius-sm);background:var(--color-text);color:var(--bg);font-size:var(--ui-font-size-sm);z-index:var(--z-sticky);box-shadow:var(--shadow-sm)}.undo-toast-text[data-v-220ec52e]{display:flex;align-items:center;gap:8px}.undo-toast-enter-active[data-v-220ec52e],.undo-toast-leave-active[data-v-220ec52e]{transition:opacity .15s ease,transform .15s ease}.undo-toast-enter-from[data-v-220ec52e],.undo-toast-leave-to[data-v-220ec52e]{opacity:0;transform:translate(-50%) translateY(-6px)}.con[data-v-220ec52e]{background:var(--bg)}.newmsg-pill[data-v-220ec52e]{font-family:var(--sans)}.panel-tab-bar[data-v-372e24de]{position:relative;height:var(--panel-head-h);flex:none;display:flex;align-items:center;gap:var(--space-05);padding:0 var(--space-4) 0 var(--space-2);border-bottom:var(--p-hairline) solid var(--color-line)}.ptb-tabs[data-v-372e24de]{flex:1;min-width:0;height:100%;display:flex;align-items:center;gap:var(--space-05);overflow-x:auto;scrollbar-width:none}.ptb-tabs[data-v-372e24de]::-webkit-scrollbar{display:none}.ptb-tab[data-v-372e24de]{display:inline-flex;align-items:center;gap:var(--space-1-5);height:var(--panel-tab-h);padding:0 var(--space-1-5) 0 var(--panel-tab-pad-x);max-width:var(--panel-tab-max-w);min-width:0;flex:none;border-radius:var(--radius-md);background:var(--color-hover);color:var(--color-text-muted);transition:background var(--duration-fast) var(--ease-out)}.ptb-tab[data-v-372e24de]:hover{background:var(--color-selected);color:var(--color-text)}.ptb-tab.on[data-v-372e24de]{background:var(--color-selected-hover);color:var(--color-text)}.ptb-tab-main[data-v-372e24de]{display:inline-flex;align-items:center;gap:var(--space-1-5);flex:1;min-width:0;padding:0;border:none;background:none;color:inherit;font-family:var(--font-ui);font-size:var(--text-sm);white-space:nowrap;user-select:none;cursor:pointer}.ptb-tab-main[data-v-372e24de]:focus-visible{outline:none;border-radius:var(--radius-xs);box-shadow:var(--p-focus-ring)}.ptb-t[data-v-372e24de]{overflow:hidden;text-overflow:ellipsis}.ptb-x[data-v-372e24de]{width:var(--panel-tab-x-size);height:var(--panel-tab-x-size);flex:none;padding:0;border:none;border-radius:var(--radius-xs);display:inline-flex;align-items:center;justify-content:center;background:none;color:var(--color-text-faint);cursor:pointer}.ptb-x[data-v-372e24de]:hover{background:var(--color-well);color:var(--color-text)}.ptb-x[data-v-372e24de]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ptb-tail[data-v-372e24de]{flex:none;display:flex;align-items:center;gap:var(--space-05);padding-left:var(--space-1)}.panel-add-menu[data-v-372e24de]{position:absolute;top:calc(var(--panel-head-h) - var(--space-1-5));right:var(--space-4);z-index:var(--z-dropdown)}@media(hover:none),(max-width:640px){.ptb-x[data-v-372e24de],.ptb-tail[data-v-372e24de] .ui-icon-button{position:relative}.ptb-x[data-v-372e24de]:after{content:"";position:absolute;inset:calc(-1 * (var(--touch-target-min) - var(--panel-tab-x-size)) / 2)}.ptb-tail[data-v-372e24de] .ui-icon-button:after{content:"";position:absolute;inset:calc(-1 * (var(--touch-target-min) - var(--icon-button-sm)) / 2)}}.pl[data-v-26dc6d88]{display:flex;flex-direction:column;justify-content:center;gap:var(--space-3);height:100%;box-sizing:border-box;width:min(var(--panel-launcher-w),100%);margin-inline:auto;padding:var(--space-2) 0}.global-preview[data-v-cb4e8dda]{--preview-w: var(--panel-default-w);grid-column:4;grid-row:1 / -1;min-width:0;min-height:0;width:0;background:var(--bg);overflow:hidden;position:relative}.global-preview.open[data-v-cb4e8dda]{width:var(--preview-w)}.global-preview.expanded[data-v-cb4e8dda]{width:auto}.global-preview.mobile[data-v-cb4e8dda]{position:fixed;inset:0;z-index:var(--z-sticky);width:auto;transition:none;border-top:var(--p-hairline) solid var(--color-text)}.panel-resize[data-v-cb4e8dda]{position:absolute;left:var(--space-05);top:0;bottom:0}.pt-shell[data-v-cb4e8dda]{display:flex;flex-direction:column;height:100%;box-sizing:border-box;position:relative}.global-preview:not(.mobile) .pt-shell[data-v-cb4e8dda]{width:var(--preview-w);border-left:var(--p-hairline) solid var(--line)}.global-preview:not(.mobile).expanded .pt-shell[data-v-cb4e8dda]{width:auto;border-left:none}.pt-body[data-v-cb4e8dda]{flex:1;min-height:0}.pfc-host[data-v-cb4e8dda]{position:absolute;left:0;right:0;bottom:0;z-index:var(--z-sticky);width:100%;max-width:var(--p-content-max);margin:0 auto;box-sizing:border-box;padding:0 var(--space-4) var(--space-4)}.pfc-host[data-v-cb4e8dda]:empty{padding:0}.pt-body[data-v-cb4e8dda]>*{height:100%;box-sizing:border-box}.session-admin[data-v-2a4c005e]{display:flex;flex-direction:column;min-width:0;height:100%;background:var(--color-bg);font-family:var(--font-ui)}.sa-scroll[data-v-2a4c005e]{flex:1;min-height:0;overflow-y:auto}.sa-page[data-v-2a4c005e]{padding:var(--space-8) var(--space-6);display:flex;flex-direction:column;box-sizing:border-box}.sa-head[data-v-2a4c005e]{flex:none;display:flex;align-items:center;gap:var(--space-2);height:48px;padding:0 var(--space-6);border-bottom:.5px solid var(--color-line);box-sizing:border-box}.sa-title[data-v-2a4c005e]{margin:0;font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-text);user-select:none}.sa-subtitle[data-v-2a4c005e]{margin:0 0 var(--space-3);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-muted)}.session-admin.macos-desktop .sa-head[data-v-2a4c005e]{-webkit-app-region:drag}.session-admin.macos-desktop .sa-head button[data-v-2a4c005e],.session-admin.macos-desktop .sa-head input[data-v-2a4c005e]{-webkit-app-region:no-drag}.sa-filters[data-v-2a4c005e]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.sa-f-label[data-v-2a4c005e]{margin-left:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);user-select:none}.sa-f-label[data-v-2a4c005e]:first-child{margin-left:0}.sa-f-actions[data-v-2a4c005e]{display:inline-flex;align-items:center;gap:var(--space-2);margin-left:var(--space-2)}.brand-logo[data-v-30c3cc0b]{display:block;flex:none;cursor:pointer;user-select:none;touch-action:manipulation}.nb-cards[data-v-481549ff]{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2) 0 var(--space-4)}.center-body[data-v-481549ff]{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) 0 var(--space-4);text-align:center}.center-text[data-v-481549ff]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.success-text[data-v-481549ff]{color:var(--color-success)}.err-text[data-v-481549ff]{color:var(--color-danger)}.warn-text[data-v-481549ff]{color:var(--color-warning);font-size:var(--text-base)}.center-hint[data-v-481549ff]{font-size:var(--text-sm);color:var(--color-text-muted)}.nb[data-v-481549ff]{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-2) 0 var(--space-4)}.nb-hero[data-v-481549ff]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.nb-hero-icon[data-v-481549ff]{display:inline-flex;margin-bottom:var(--space-1)}.nb-hero-title[data-v-481549ff]{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.nb-hero-hint[data-v-481549ff]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal);font-variant-numeric:tabular-nums}.nb-manual[data-v-481549ff]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.nb-manual-label[data-v-481549ff]{font-size:var(--text-xs);color:var(--color-text-faint)}.nb-copy-text[data-v-481549ff]{margin-left:var(--space-2)}.nb-copy-text.is-copied[data-v-481549ff]{color:var(--color-success);text-decoration:none}.nb-or[data-v-481549ff]{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.06em}.nb-or[data-v-481549ff]:before,.nb-or[data-v-481549ff]:after{content:"";flex:1;height:1px;background:var(--color-line)}.nb-fallback[data-v-481549ff]{display:flex;flex-direction:column;gap:var(--space-2)}.nb-fb-text[data-v-481549ff]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal)}.nb-fb-link[data-v-481549ff]{color:var(--color-accent);text-decoration:none;border-bottom:var(--p-hairline) solid var(--color-accent-bd)}.nb-fb-link[data-v-481549ff]:hover{border-bottom-color:var(--color-accent)}.nb-code-row[data-v-481549ff]{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface-sunken);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.nb-code[data-v-481549ff]{flex:1;font-family:var(--font-mono);font-size:var(--text-xl);font-weight:var(--weight-medium);color:var(--color-text);letter-spacing:.14em}.nb-copy.is-copied[data-v-481549ff]{color:var(--color-success);border-color:var(--color-success-bd)}.actions[data-v-481549ff]{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4)}@media(max-width:640px){.center-body[data-v-481549ff],.nb[data-v-481549ff]{overflow-y:auto;-webkit-overflow-scrolling:touch}.nb-code-row[data-v-481549ff],.actions[data-v-481549ff]{flex-wrap:wrap}.nb-code[data-v-481549ff]{min-width:0;overflow-wrap:anywhere;letter-spacing:.08em}.nb-copy[data-v-481549ff]{min-height:34px}}.sec[data-v-735ff283]{margin-bottom:var(--space-5)}.sec-title[data-v-735ff283]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);margin:0 0 var(--space-3)}.pu-group[data-v-735ff283]{overflow:hidden;border-radius:var(--radius-xl);background:var(--color-surface)}.pu-row[data-v-735ff283]{display:flex;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-3) var(--space-4);border-top:.5px solid var(--color-line)}.pu-row[data-v-735ff283]:first-child{border-top:none}.pu-state[data-v-735ff283]{color:var(--color-text-muted);font-size:var(--text-sm)}.pu-error-text[data-v-735ff283]{flex:1;min-width:0}.pu-empty[data-v-735ff283]{color:var(--color-text-faint)}.pu-main[data-v-735ff283]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.pu-label[data-v-735ff283]{font-size:var(--text-sm);color:var(--color-text)}.pu-hint[data-v-735ff283]{font-size:var(--text-xs);color:var(--color-text-faint)}.pu-value[data-v-735ff283]{flex:none;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap}.pu-value-sub[data-v-735ff283]{font-weight:var(--weight-regular);color:var(--color-text-faint)}.pu-meter[data-v-735ff283]{flex:none;width:120px;height:5px;border-radius:var(--radius-full);background:var(--color-line);overflow:hidden}.pu-meter i[data-v-735ff283]{display:block;height:100%;border-radius:var(--radius-full);background:var(--color-accent);transition:width var(--duration-base) var(--ease-out)}.pu-meter i.sev-warn[data-v-735ff283]{background:var(--color-warning)}.pu-meter i.sev-danger[data-v-735ff283]{background:var(--color-danger)}.sd[data-v-df77572d]{display:grid;grid-template-columns:148px 1fr;grid-template-areas:"tabs region";min-height:0;height:100%;user-select:none}.sd[data-v-df77572d] :is(input,textarea,[contenteditable=true]){user-select:text}.settings-region[data-v-df77572d]{display:flex;min-width:0;min-height:0;flex-direction:column;grid-area:region}.settings-region-header[data-v-df77572d],.settings-tabs-header[data-v-df77572d]{display:flex;align-items:center;height:calc(var(--space-4) + var(--icon-button-sm) + var(--space-2));box-sizing:border-box}.settings-region-header[data-v-df77572d]{justify-content:flex-end;padding-right:var(--space-5)}.settings-tabs-header[data-v-df77572d]{padding-inline:var(--space-3)}.settings-dialog-title[data-v-df77572d]{margin:0;font-family:var(--font-ui);font-size:var(--text-lg);font-weight:var(--weight-medium);line-height:var(--leading-tight);color:var(--color-text)}.settings-tabs[data-v-df77572d]{display:flex;flex-direction:column;width:148px;padding:0 var(--space-2) var(--space-2);gap:2px;overflow-y:auto;border-right:.5px solid var(--color-line);grid-area:tabs}.settings-tab-list[data-v-df77572d]{display:flex;flex-direction:column;gap:2px}.tab[data-v-df77572d]{display:flex;align-items:center;gap:var(--space-2);text-align:left;padding:8px 10px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-ui-strong);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.tab[data-v-df77572d]:hover{background:var(--color-hover);color:var(--color-text-strong)}.tab.on[data-v-df77572d]{background:var(--color-hover);color:var(--color-text)}.tab[data-v-df77572d]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.body[data-v-df77572d]{display:flex;flex-direction:column;overflow-y:auto;padding:var(--space-2) 32px var(--space-5);flex:1;min-width:0}.body[data-v-df77572d]::-webkit-scrollbar{width:4px}.body[data-v-df77572d]::-webkit-scrollbar-track{background:transparent}.body[data-v-df77572d]::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--radius-full);transition:background var(--duration-base) var(--ease-out)}.body.scrolling[data-v-df77572d]::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-text) 12%,transparent)}.body.scrolling[data-v-df77572d]::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-text) 25%,transparent)}.panel[data-v-df77572d]{display:block}.sec[data-v-df77572d]{padding:var(--space-4) 0}.panel>.sec[data-v-df77572d]:first-child{padding-top:0}.sec-head[data-v-df77572d]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.sec-title[data-v-df77572d]{margin:0 0 var(--space-3);font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);letter-spacing:0;color:var(--color-text)}.notification-settings[data-v-df77572d]{user-select:none}.sec-head .sec-title[data-v-df77572d]{margin-bottom:0}.row[data-v-df77572d]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:38px;padding:var(--space-1) 0}.settings-group[data-v-df77572d]{overflow:hidden;border-radius:var(--radius-xl);background:var(--color-surface)}.settings-group>.row[data-v-df77572d]{min-height:52px;padding:var(--space-4);border-top:.5px solid var(--color-line)}.settings-group>.row[data-v-df77572d]:first-child{border-top:none}.settings-group>.empty-config[data-v-df77572d]{padding:var(--space-3)}.account-row[data-v-df77572d]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4)}.account-avatar[data-v-df77572d]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--color-surface-sunken);color:var(--color-text-muted)}.account-avatar img[data-v-df77572d]{width:100%;height:100%;border-radius:50%;object-fit:cover}.account-name-row[data-v-df77572d]{display:flex;align-items:center;gap:var(--space-2);min-width:0}.account-level[data-v-df77572d]{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.account-meta[data-v-df77572d]{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.account-name[data-v-df77572d]{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-sub[data-v-df77572d]{font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rlabel[data-v-df77572d]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text);font-weight:var(--weight-option-label);display:flex;flex-direction:column;gap:0}.rvalue[data-v-df77572d]{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-muted);max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rvalue.mono[data-v-df77572d]{font-family:var(--font-mono);font-size:var(--text-xs)}.rvalue-wrap[data-v-df77572d]{display:flex;align-items:center;gap:var(--space-1);max-width:60%;min-width:0}.rvalue-wrap .rvalue[data-v-df77572d]{max-width:none}.sd-check[data-v-df77572d]{color:var(--color-success)}.hint[data-v-df77572d]{font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-text-faint)}.body[data-v-df77572d] .ui-seg,.body[data-v-df77572d] .ui-select__trigger,.body[data-v-df77572d] .ui-button,.archive-search[data-v-df77572d]{border-width:.5px}.select-wrap[data-v-df77572d]{min-width:220px;max-width:min(320px,50vw);flex:none}.empty-config[data-v-df77572d]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-muted);padding:var(--space-1) 0}@media(max-width:640px){.sd[data-v-df77572d]{grid-template-columns:1fr;grid-template-rows:auto 1fr;grid-template-areas:"tabs" "region"}.settings-tabs[data-v-df77572d]{width:auto;padding:0;overflow-x:visible;border-right:none;border-bottom:.5px solid var(--color-line)}.settings-tabs-header[data-v-df77572d]{padding:var(--space-3)}.settings-tab-list[data-v-df77572d]{flex-direction:row;gap:var(--space-1);overflow-x:auto;padding:0 var(--space-3) var(--space-2)}.settings-region-header[data-v-df77572d]{padding:var(--space-3)}.body[data-v-df77572d]{padding-inline:var(--space-3)}.tab[data-v-df77572d]{white-space:nowrap;flex:none}.row[data-v-df77572d]{align-items:flex-start;flex-direction:column}.settings-group[data-v-df77572d]{margin-inline:0}.select-wrap[data-v-df77572d]{width:100%;max-width:none}}.setting-card[data-v-df77572d]{border-radius:var(--radius-xl);overflow:hidden;background:var(--color-surface)}.panel-head[data-v-df77572d]{margin-bottom:var(--space-4)}.panel-title[data-v-df77572d]{margin:0 0 var(--space-2);font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);letter-spacing:0;color:var(--color-text)}.panel-desc[data-v-df77572d]{margin:0;font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--color-text-muted);max-width:560px}.archive-toolbar[data-v-df77572d]{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.archive-search[data-v-df77572d]{flex:1;min-width:200px;height:36px;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-md);border:.5px solid var(--color-line);color:var(--color-text-faint);font-size:var(--text-xs);background:var(--color-surface-overlay);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.archive-search[data-v-df77572d]:focus-within{border-color:var(--color-accent);box-shadow:var(--p-focus-ring);color:var(--color-text-muted)}.archive-search svg[data-v-df77572d]{width:15px;height:15px;flex:none}.archive-search input[data-v-df77572d]{width:100%;border:none;outline:none;background:transparent;font:inherit;color:var(--color-text)}.archive-list[data-v-df77572d]{display:flex;flex-direction:column;gap:var(--space-4)}.archive-card .setting-card[data-v-df77572d]{margin-bottom:0}.archive-workspace[data-v-df77572d]{display:flex;align-items:center;gap:var(--space-2);margin:0 2px var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium)}.archive-workspace svg[data-v-df77572d]{width:16px;height:16px;color:var(--color-text-faint);flex:none}.archive-workspace .path[data-v-df77572d]{font-family:var(--font-ui);font-size:var(--text-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-workspace .count[data-v-df77572d]{margin-left:auto;color:var(--color-text-faint);font-weight:var(--weight-medium);font-size:var(--text-xs);flex:none}.archive-row[data-v-df77572d]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);border-top:.5px solid var(--color-line)}.archive-row[data-v-df77572d]:first-child{border-top:none}.archive-row[data-v-df77572d]:hover{background:var(--color-hover)}.archive-meta[data-v-df77572d]{min-width:0}.archive-name[data-v-df77572d]{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-time[data-v-df77572d]{margin-top:2px;font-size:var(--text-xs);color:var(--color-text-faint);font-family:var(--font-ui)}.archive-draining[data-v-df77572d]{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-accent-soft);color:var(--color-accent-hover);font-size:var(--text-xs)}.archive-empty[data-v-df77572d]{padding:var(--space-6) var(--space-4);border-radius:var(--radius-xl);color:var(--color-text-faint);font-size:var(--text-xs);text-align:center;background:var(--color-surface)}@media(max-width:640px){.archive-toolbar[data-v-df77572d]{flex-direction:column;align-items:stretch}.archive-search[data-v-df77572d]{min-width:0}}[data-v-df77572d] .ui-dialog{width:min(980px,96vw)}[data-v-df77572d] .ui-dialog--fixed-height{height:min(780px,calc(var(--app-height, 100vh) - var(--space-8) * 2))}.actions[data-v-162e27ce]{padding:0 var(--space-2) var(--space-2);border-bottom:.5px solid var(--color-line);margin-bottom:var(--space-1)}.newrow[data-v-162e27ce]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-2);background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--sans);font-weight:var(--weight-regular);font-size:var(--ui-font-size);cursor:pointer;text-align:left}.newrow[data-v-162e27ce]:hover{background:var(--color-hover)}.newrow[data-v-162e27ce]:active{background:var(--color-surface-sunken);color:var(--color-text)}.view-tabs[data-v-162e27ce]{padding:var(--space-1) var(--space-2) var(--space-2)}.view-tabs[data-v-162e27ce] .ui-seg{display:flex;width:100%}.view-tabs[data-v-162e27ce] .ui-seg__item{flex:1;justify-content:center}.mlist[data-v-162e27ce]{--m-pad: 16px;--m-gutter: 15px;--m-gap: 8px;--m-indent: calc(var(--m-pad) + var(--m-gutter) + var(--m-gap));padding-bottom:var(--space-1)}.mempty[data-v-162e27ce]{padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-text-faint);font-size:var(--ui-font-size)}.mempty.small[data-v-162e27ce]{padding:10px 16px 12px var(--m-indent);text-align:left;font-size:var(--ui-font-size-xs)}.mgroup[data-v-162e27ce]{padding-top:var(--space-2)}.mgh[data-v-162e27ce]{display:flex;align-items:center;gap:var(--m-gap);min-height:44px;margin:0 var(--space-2);padding:0 calc(var(--m-pad) - var(--space-2));border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.mgh[data-v-162e27ce]:hover{background:var(--color-hover)}.mgh[data-v-162e27ce]:active{background:var(--color-surface-sunken)}.mgh-folder[data-v-162e27ce]{flex:none;color:var(--color-text-muted)}.mgh-name[data-v-162e27ce]{flex:none;max-width:50%;font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mgh-path[data-v-162e27ce]{flex:1;min-width:0;font-size:var(--text-xs);color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mgh-more[data-v-162e27ce]{margin:0 calc(-1 * var(--space-2))}.mgh-add[data-v-162e27ce]{margin:0 calc(-1 * var(--space-2)) 0 0}.mgh-add[data-v-162e27ce]:active,.mgh-more[data-v-162e27ce]:active{color:var(--color-text);background:var(--color-hover)}.srow[data-v-162e27ce]{display:flex;align-items:center;gap:var(--space-2);min-height:44px;margin:1px var(--space-2);padding:0 calc(var(--m-pad) - var(--space-2)) 0 calc(var(--m-indent) - var(--space-2));border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.srow[data-v-162e27ce]:hover{background:var(--color-hover)}.srow[data-v-162e27ce]:active{background:var(--color-surface-sunken)}.srow.cur[data-v-162e27ce]{background:var(--color-accent-soft);box-shadow:inset 0 0 0 1px var(--color-accent-bd)}.srow .t[data-v-162e27ce]{flex:1;min-width:0;font-size:var(--ui-font-size-sm);font-weight:var(--weight-caption);line-height:var(--leading-tight);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.srow.cur .t[data-v-162e27ce]{color:var(--color-accent-hover)}.srow .t.run[data-v-162e27ce]{position:relative}.srow .t.run[data-v-162e27ce]:before{content:"";position:absolute;left:-14px;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:var(--radius-full);background:var(--color-accent);animation:mRunPulse-162e27ce 1.4s ease-in-out infinite}@keyframes mRunPulse-162e27ce{0%,to{opacity:1}50%{opacity:.35}}.srow .t.aborted[data-v-162e27ce]{position:relative}.srow .t.aborted[data-v-162e27ce]:before{content:"";position:absolute;left:-14px;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:var(--radius-full);background:var(--color-danger)}.srow .time[data-v-162e27ce]{flex:none;font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--color-text-faint)}.att[data-v-162e27ce]{flex:none;font-family:var(--font-mono);font-size:max(9px,calc(var(--ui-font-size) - 4px));color:var(--color-text-on-accent);background:var(--color-warning);border-radius:var(--radius-full);padding:1px 7px}.srow .kb[data-v-162e27ce]{flex:none;margin:0 calc(-1 * var(--space-2)) 0 0}.srow .kb[data-v-162e27ce]:active{color:var(--color-text);background:var(--color-hover)}.srow-flat[data-v-162e27ce]{min-height:52px}.srow-main[data-v-162e27ce]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.srow-main .t[data-v-162e27ce]{flex:none}.srow-sub[data-v-162e27ce]{font-size:var(--text-xs);color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kmenu[data-v-162e27ce]{position:absolute;right:12px;top:44px;z-index:var(--z-dropdown);min-width:96px;overflow:hidden}.wsmenu[data-v-162e27ce]{top:calc(100% - 4px);right:var(--m-pad);min-width:132px}.mshow-more-row[data-v-162e27ce]{display:flex;align-items:center;padding-left:calc(var(--m-indent) - var(--space-3))}.mshow-more[data-v-162e27ce]{display:flex;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-1) var(--space-3);background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--ui-font-size);cursor:pointer;text-align:left}.mshow-more[data-v-162e27ce]:active{color:var(--color-accent-hover);background:var(--color-hover)}.mshow-more-sep[data-v-162e27ce]{margin:0 var(--space-1);color:var(--color-text-faint);user-select:none}.group-title[data-v-78effeee]{padding:var(--space-4) max(var(--space-4),var(--safe-right)) var(--space-2) max(var(--space-4),var(--safe-left));font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.group-title[data-v-78effeee]:first-child{padding-top:0}.card[data-v-78effeee]{margin:0 max(var(--space-4),var(--safe-right)) 0 max(var(--space-4),var(--safe-left));background:var(--color-surface);border-radius:var(--radius-xl);overflow:hidden}.card>.srow[data-v-78effeee]{border-radius:0}.card>.srow+.srow[data-v-78effeee]{border-top:.5px solid var(--color-line)}.srow[data-v-78effeee]:disabled{opacity:.5;cursor:not-allowed}.srow[data-v-78effeee]{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:52px;padding:var(--space-3) var(--space-4);background:none;border:none;border-radius:var(--radius-md);cursor:pointer;text-align:left;color:var(--color-text)}.srow[data-v-78effeee]:hover:not(.read-only){background:var(--color-hover)}.srow[data-v-78effeee]:active:not(.read-only){background:var(--color-surface-sunken)}.srow.read-only[data-v-78effeee]{cursor:default}.srow-main[data-v-78effeee]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.srow-label[data-v-78effeee]{font-size:var(--text-base);color:var(--color-text)}.srow-sub[data-v-78effeee]{font-size:var(--text-base);color:var(--color-text-faint);overflow-wrap:anywhere}.back-row[data-v-78effeee]{min-height:var(--touch-target-min);color:var(--color-text-muted)}.back-row[data-v-78effeee]:hover{color:var(--color-text)}.providers-page[data-v-78effeee]{margin:0 max(var(--space-4),var(--safe-right)) 0 max(var(--space-4),var(--safe-left))}.providers-page[data-v-78effeee] .pp-title{display:none}.srow-val[data-v-78effeee]{flex:none;font-family:var(--font-mono);font-size:var(--ui-font-size);font-weight:500;color:var(--color-accent-hover)}.srow-val.dim[data-v-78effeee]{font-weight:400;color:var(--color-text-muted)}.cache-note[data-v-78effeee]{padding:var(--space-1) max(var(--space-4),var(--safe-right)) 0 max(var(--space-4),var(--safe-left));font-size:var(--text-xs);color:var(--color-text-faint);line-height:1.4}.chev[data-v-78effeee]{flex:none;color:var(--color-text-faint);font-size:17px;line-height:1}.toggle[data-v-78effeee]{flex:none;width:44px;height:26px;border-radius:var(--radius-full);background:var(--color-line);position:relative;transition:background .18s}.toggle.on[data-v-78effeee]{background:var(--color-accent)}.toggle[data-v-78effeee]:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:var(--radius-full);box-sizing:border-box;background:var(--color-bg);border:.5px solid var(--color-line);box-shadow:var(--shadow-xs);transition:left .18s}.toggle.on[data-v-78effeee]:after{left:21px}.srow.pref[data-v-78effeee]{flex-wrap:wrap;cursor:default}.srow.pref .srow-main[data-v-78effeee]{flex:1 0 100%}.srow.acct.in .srow-label[data-v-78effeee]{color:var(--color-accent-hover);font-weight:500}.srow.acct.out .srow-label[data-v-78effeee]{color:var(--color-danger)}.acct-avatar[data-v-78effeee]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--color-surface-sunken);color:var(--color-text-muted)}.acct-avatar img[data-v-78effeee]{width:100%;height:100%;border-radius:50%;object-fit:cover}.acct-name-row[data-v-78effeee]{display:flex;align-items:center;gap:var(--space-2);min-width:0}.acct-name-row .srow-label[data-v-78effeee]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct-level[data-v-78effeee]{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.usage[data-v-78effeee]{margin:var(--space-4) max(var(--space-4),var(--safe-right)) 0 max(var(--space-4),var(--safe-left))}.usage[data-v-78effeee] .sec{margin-bottom:0}.ctx-meter[data-v-78effeee]{flex:none;width:96px;height:5px;border-radius:var(--radius-full);background:var(--color-line);overflow:hidden}.ctx-meter i[data-v-78effeee]{display:block;height:100%;border-radius:var(--radius-full);background:var(--color-accent)}.srow[data-v-78effeee],.srow-sub[data-v-78effeee],.srow-val[data-v-78effeee],.cache-note[data-v-78effeee]{font-family:var(--sans)}.ls-cards[data-v-633d9b34]{display:flex;flex-direction:column;gap:var(--space-3)}.ls-card-icon[data-v-633d9b34]{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--color-text-muted)}.ls-card-text[data-v-633d9b34]{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.ls-card-title[data-v-633d9b34]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.ls-card-hint[data-v-633d9b34]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal)}.ls-done-card[data-v-633d9b34]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-success-bd);border-radius:var(--radius-lg)}.ls-done-badge[data-v-633d9b34]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-full);background:var(--color-success-soft);color:var(--color-success);flex:none}.ls-flow[data-v-633d9b34]{display:flex;flex-direction:column;gap:var(--space-4)}.ls-center[data-v-633d9b34]{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6) 0 var(--space-2);text-align:center}.ls-center-text[data-v-633d9b34]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.ls-success-text[data-v-633d9b34]{color:var(--color-success)}.ls-err-text[data-v-633d9b34]{color:var(--color-danger)}.ls-warn-text[data-v-633d9b34]{color:var(--color-warning)}.ls-center-hint[data-v-633d9b34]{font-size:var(--text-sm);color:var(--color-text-muted)}.ls-device[data-v-633d9b34]{display:flex;flex-direction:column;gap:var(--space-4)}.ls-hero[data-v-633d9b34]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.ls-hero-icon[data-v-633d9b34]{display:inline-flex;margin-bottom:var(--space-1)}.ls-hero-title[data-v-633d9b34]{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.ls-hero-hint[data-v-633d9b34]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal);font-variant-numeric:tabular-nums}.ls-manual[data-v-633d9b34]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.ls-manual-label[data-v-633d9b34]{font-size:var(--text-xs);color:var(--color-text-faint)}.ls-copy-text[data-v-633d9b34]{margin-left:var(--space-2)}.ls-copy-text.is-copied[data-v-633d9b34]{color:var(--color-success);text-decoration:none}.ls-or[data-v-633d9b34]{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.06em}.ls-or[data-v-633d9b34]:before,.ls-or[data-v-633d9b34]:after{content:"";flex:1;height:1px;background:var(--color-line)}.ls-fb-text[data-v-633d9b34]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal)}.ls-fb-link[data-v-633d9b34]{color:var(--color-accent);text-decoration:none;border-bottom:var(--p-hairline) solid var(--color-accent-bd)}.ls-fb-link[data-v-633d9b34]:hover{border-bottom-color:var(--color-accent)}.ls-code-row[data-v-633d9b34]{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface-sunken);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.ls-code[data-v-633d9b34]{flex:1;font-family:var(--font-mono);font-size:var(--text-xl);font-weight:var(--weight-medium);color:var(--color-text);letter-spacing:.14em}.ls-copy.is-copied[data-v-633d9b34]{color:var(--color-success);border-color:var(--color-success-bd)}.ls-actions[data-v-633d9b34]{display:flex;justify-content:flex-end;gap:var(--space-3)}@media(max-width:640px){.ls-code-row[data-v-633d9b34],.ls-actions[data-v-633d9b34]{flex-wrap:wrap}.ls-code[data-v-633d9b34]{min-width:0;overflow-wrap:anywhere;letter-spacing:.08em}}.wizard[data-v-93385ec9]{position:fixed;inset:0;z-index:var(--z-modal);display:flex;flex-direction:column;background:var(--color-bg);color:var(--color-text);overflow-y:auto;font-family:var(--font-ui)}.wiz-body[data-v-93385ec9]{flex:1;display:flex;flex-direction:column;align-items:center;width:min(560px,100%);margin:0 auto;padding:max(var(--space-8),12vh) var(--space-5) var(--space-6)}.wiz-step[data-v-93385ec9]{display:flex;flex-direction:column;align-items:center;width:100%;flex:1;min-height:0}.wiz-step-fill[data-v-93385ec9]{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;width:100%}.wiz-title[data-v-93385ec9]{margin:var(--space-4) 0 0;font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-text);text-align:center}.wiz-sub[data-v-93385ec9]{margin:var(--space-2) 0 var(--space-6);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-muted);text-align:center;max-width:460px}.pref-group[data-v-93385ec9]{width:100%;margin-bottom:var(--space-5)}.pref-label[data-v-93385ec9]{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted);margin-bottom:var(--space-2)}.opt-card[data-v-93385ec9]{display:flex;align-items:center;background:var(--color-surface-raised);border:.5px solid var(--color-line);border-radius:var(--radius-lg);font-family:var(--font-ui);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.opt-card[data-v-93385ec9]:hover{border-color:var(--color-line-strong)}.opt-card[data-v-93385ec9]:focus-visible{outline:none;box-shadow:var(--p-focus-ring-strong)}.opt-card.selected[data-v-93385ec9]{border-color:var(--color-accent);background:var(--color-accent-soft)}.opt-label[data-v-93385ec9]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.lang-cards[data-v-93385ec9]{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);width:100%}.lang-card[data-v-93385ec9]{gap:var(--space-3);padding:var(--space-4)}.opt-radio[data-v-93385ec9]{width:18px;height:18px;border-radius:var(--radius-full);border:.5px solid var(--color-line-strong);background:var(--color-surface-raised);flex:none;display:inline-flex;align-items:center;justify-content:center;transition:border-color var(--duration-fast) var(--ease-out)}.opt-radio[data-v-93385ec9]:after{content:"";width:8px;height:8px;border-radius:var(--radius-full);background:transparent;transition:background var(--duration-fast) var(--ease-out)}.opt-radio.on[data-v-93385ec9]{border-color:var(--color-accent)}.opt-radio.on[data-v-93385ec9]:after{background:var(--color-accent)}.theme-cards[data-v-93385ec9]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);width:100%}.theme-card[data-v-93385ec9]{flex-direction:column;gap:var(--space-3);padding:var(--space-3)}.tp[data-v-93385ec9]{display:flex;width:100%;aspect-ratio:16 / 10;border:.5px solid var(--color-line);border-radius:var(--radius-md);overflow:hidden}.tp-light[data-v-93385ec9]{background:#fff}.tp-dark[data-v-93385ec9]{background:#0d1117}.tp-half[data-v-93385ec9]{flex:1;display:flex;min-width:0}.tp-half-light[data-v-93385ec9]{background:#fff}.tp-half-dark[data-v-93385ec9]{background:#0d1117}.tp-side[data-v-93385ec9]{width:30%;flex:none}.tp-light .tp-side[data-v-93385ec9],.tp-half-light .tp-side[data-v-93385ec9]{background:#0000000d}.tp-dark .tp-side[data-v-93385ec9],.tp-half-dark .tp-side[data-v-93385ec9]{background:#ffffff12}.tp-lines[data-v-93385ec9]{flex:1;display:flex;flex-direction:column;gap:6px;padding:14% 12%}.tp-lines span[data-v-93385ec9]{height:6px;border-radius:var(--radius-full)}.tp-lines span[data-v-93385ec9]:nth-child(1){width:62%}.tp-lines span[data-v-93385ec9]:nth-child(2){width:88%}.tp-lines span[data-v-93385ec9]:nth-child(3){width:44%}.tp-light .tp-lines span[data-v-93385ec9],.tp-half-light .tp-lines span[data-v-93385ec9]{background:#00000024}.tp-dark .tp-lines span[data-v-93385ec9],.tp-half-dark .tp-lines span[data-v-93385ec9]{background:#ffffff38}.wiz-foot[data-v-93385ec9]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:100%;margin-top:auto;padding:var(--space-8) 0 max(var(--space-8),8vh)}.wiz-foot-ghost[data-v-93385ec9]{display:flex;gap:var(--space-3);min-height:32px;align-items:center}.wiz-foot-ghost[data-v-93385ec9] .ui-button--ghost:not(:disabled):hover{background:transparent;color:var(--color-text)}.wiz-primary[data-v-93385ec9]{min-width:140px}@media(max-width:640px){.theme-cards[data-v-93385ec9]{gap:var(--space-2)}}.kap-root[data-v-bba81d2a]{height:100vh;display:flex;flex-direction:column;background:var(--bg);font-family:var(--mono);font-size:calc(var(--ui-font-size) - 2.5px);color:var(--color-text)}.kap-head[data-v-bba81d2a]{flex:none;display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:.5px solid var(--line);background:var(--panel)}.kap-count[data-v-bba81d2a]{color:var(--muted)}.kap-head-actions[data-v-bba81d2a]{margin-left:auto;display:flex;gap:6px}.kap-head-actions button[data-v-bba81d2a],.kap-view-toggle button[data-v-bba81d2a]{padding:3px 8px;border:.5px solid var(--line);border-radius:6px;background:var(--bg);color:var(--muted);font:inherit;cursor:pointer}.kap-head-actions button[data-v-bba81d2a]:hover,.kap-view-toggle button[data-v-bba81d2a]:hover{color:var(--color-text)}.kap-head-actions button.on[data-v-bba81d2a],.kap-view-toggle button.on[data-v-bba81d2a]{color:var(--color-accent-hover);border-color:var(--color-accent-bd);background:var(--color-accent-soft)}.kap-filters[data-v-bba81d2a]{flex:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:7px 10px;border-bottom:.5px solid var(--line)}.kap-filters select[data-v-bba81d2a],.kap-filters input[type=text][data-v-bba81d2a]{padding:3px 6px;border:.5px solid var(--line);border-radius:6px;background:var(--bg);color:var(--color-text);font:inherit;min-width:0}.kap-filters input[type=text][data-v-bba81d2a]{flex:1;min-width:120px}.kap-check[data-v-bba81d2a]{display:inline-flex;align-items:center;gap:4px;color:var(--muted);white-space:nowrap}.kap-view-toggle[data-v-bba81d2a]{display:flex;gap:0}.kap-view-toggle button[data-v-bba81d2a]:first-child{border-radius:6px 0 0 6px;border-right:none}.kap-view-toggle button[data-v-bba81d2a]:last-child{border-radius:0 6px 6px 0}.kap-list[data-v-bba81d2a]{flex:1;min-height:0;overflow-y:auto}.kap-empty[data-v-bba81d2a]{padding:18px 12px;color:var(--muted);text-align:center}.kap-row[data-v-bba81d2a]{display:flex;align-items:baseline;gap:7px;width:100%;padding:3px 10px;border:none;border-bottom:.5px solid var(--line);background:transparent;color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.kap-row[data-v-bba81d2a]:hover{background:var(--panel2)}.kap-row.expanded[data-v-bba81d2a]{background:var(--color-accent-soft)}.kap-ts[data-v-bba81d2a]{flex:none;color:var(--muted)}.kap-badge[data-v-bba81d2a]{flex:none;padding:0 5px;border-radius:var(--radius-sm);font-size:max(9px,calc(var(--ui-font-size) - 4.5px));font-weight:500;line-height:1.7}.b-rest[data-v-bba81d2a]{background:var(--color-accent-soft);color:var(--color-accent-hover)}.b-in[data-v-bba81d2a]{background:var(--color-accent-soft);color:var(--color-success)}.b-out[data-v-bba81d2a]{background:var(--color-accent-soft);color:var(--color-warning)}.b-life[data-v-bba81d2a]{background:var(--panel2);color:var(--muted)}.b-err[data-v-bba81d2a]{background:var(--color-warning);color:var(--bg)}.kap-label[data-v-bba81d2a]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kap-detail[data-v-bba81d2a]{border-bottom:.5px solid var(--line);background:var(--bg);padding:6px 10px 10px}.kap-detail-actions[data-v-bba81d2a]{display:flex;justify-content:flex-end;margin-bottom:4px}.kap-detail-actions button[data-v-bba81d2a]{padding:2px 8px;border:.5px solid var(--line);border-radius:6px;background:var(--panel);color:var(--muted);font:inherit;cursor:pointer}.kap-detail-actions button[data-v-bba81d2a]:hover{color:var(--color-text)}.kap-detail pre[data-v-bba81d2a]{margin:0;max-height:320px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:calc(var(--ui-font-size) - 3px);line-height:1.45}.kap-agg[data-v-bba81d2a]{flex:1;min-height:0;overflow-y:auto;padding:8px 10px}.kap-agg h4[data-v-bba81d2a]{margin:8px 0 4px;font-size:calc(var(--ui-font-size) - 2.5px);color:var(--muted)}.kap-agg table[data-v-bba81d2a]{width:100%;border-collapse:collapse}.kap-agg th[data-v-bba81d2a],.kap-agg td[data-v-bba81d2a]{padding:3px 6px;border-bottom:.5px solid var(--line);text-align:left;vertical-align:top}.kap-agg th[data-v-bba81d2a]{color:var(--muted);font-weight:500}.kap-agg .num[data-v-bba81d2a]{text-align:right}.kap-agg .err[data-v-bba81d2a]{color:var(--color-warning);font-weight:500}.kap-agg .mono[data-v-bba81d2a]{word-break:break-all}.kap-fab[data-v-45d105ef]{position:fixed;right:10px;bottom:10px;z-index:var(--z-overlay);padding:5px 9px;border:.5px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);font-family:var(--mono);font-size:calc(var(--ui-font-size) - 3px);font-weight:500;letter-spacing:.04em;cursor:pointer;opacity:.75}.kap-fab[data-v-45d105ef]:hover{opacity:1;color:var(--color-accent)}.server-auth-hint[data-v-67d888bb]{margin:0 0 var(--space-3);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-muted)}.server-auth-hint code[data-v-67d888bb]{padding:1px 5px;font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-surface-sunken);border-radius:var(--radius-xs)}.internal-build-tag[data-v-e78c768e]{flex:none;display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:999px;background:#f5a623;color:#3a2a00;font-size:11px;font-weight:700;letter-spacing:.01em;line-height:1.4;white-space:nowrap;user-select:none}.gload-fade-leave-active[data-v-0017ab79]{transition:opacity .28s ease}.gload-fade-leave-to[data-v-0017ab79]{opacity:0}.action-toast-enter-active[data-v-0017ab79],.action-toast-leave-active[data-v-0017ab79]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.action-toast-leave-active[data-v-0017ab79]{transition-duration:var(--duration-fast);pointer-events:none}.action-toast-enter-from[data-v-0017ab79],.action-toast-leave-to[data-v-0017ab79]{opacity:0;transform:translateY(-6px)}.app-shell[data-v-0017ab79]{position:fixed;top:var(--app-top, 0px);left:0;right:0;height:100vh;height:100dvh;height:var(--app-height, 100dvh);display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}.app[data-v-0017ab79]{flex:1;min-height:0;position:relative;display:grid;grid-template-columns:auto 0 minmax(0,1fr) auto;background:var(--bg);color:var(--color-text);overflow:hidden;box-sizing:border-box}.app[data-v-0017ab79]>*{min-height:0;min-width:0}.app>.side[data-v-0017ab79]{grid-column:1}.side-handle[data-v-0017ab79]{grid-column:2}.app:not(.mobile)>.con[data-v-0017ab79]{grid-column:3}.app.panel-expanded[data-v-0017ab79]{grid-template-columns:auto 0 0 minmax(0,1fr)}.app.panel-expanded>.con[data-v-0017ab79]{display:none}.sidebar-toggle-btn[data-v-0017ab79]{position:absolute;top:11px;left:16px;z-index:var(--z-sticky);animation:sidebar-toggle-btn-in-0017ab79 .18s var(--ease-out) .12s backwards;-webkit-app-region:no-drag}.app.macos-desktop .sidebar-toggle-btn[data-v-0017ab79]{left:84px;animation:none}.new-chat-btn[data-v-0017ab79]{position:absolute;top:11px;left:42px;z-index:var(--z-sticky);animation:sidebar-toggle-btn-in-0017ab79 .18s var(--ease-out) .12s backwards;-webkit-app-region:no-drag}.app.macos-desktop .new-chat-btn[data-v-0017ab79]{left:110px}@keyframes sidebar-toggle-btn-in-0017ab79{0%{opacity:0}}.internal-build-fab[data-v-0017ab79]{position:absolute;right:var(--space-3);bottom:var(--space-3);z-index:var(--z-sticky);pointer-events:none}.app.mobile[data-v-0017ab79]{grid-template-columns:1fr;grid-template-rows:auto 1fr}:root{--panel-head-h: 48px;--panel-head-inset: calc((var(--panel-head-h) - var(--icon-button-sm)) / 2)}.app.panel-expanded.sidebar-collapsed .panel-tab-bar{padding-left:var(--header-collapsed-clearance)}.app.panel-expanded.sidebar-collapsed.macos-desktop .panel-tab-bar{padding-left:var(--header-collapsed-clearance-macos)}.app.sidebar-collapsed .session-admin .sa-head{padding-left:var(--header-collapsed-clearance)}.app.sidebar-collapsed.windows-desktop .session-admin .sa-head{padding-left:var(--space-6)}.app.sidebar-collapsed.macos-desktop .session-admin .sa-head{padding-left:var(--header-collapsed-clearance-macos)}.app.fullscreen.sidebar-collapsed.macos-desktop .session-admin .sa-head{padding-left:var(--header-collapsed-clearance)}.app.macos-desktop .global-preview .ui-panel-header{-webkit-app-region:drag}.app.macos-desktop .global-preview .ui-panel-header button,.app.macos-desktop .global-preview .ui-panel-header input{-webkit-app-region:no-drag}.app.macos-desktop:has(.ch-menu,.open-in-menu,.dock-work-panel,.copy-menu-open) .chat-header,.app.macos-desktop:has(.ch-menu,.open-in-menu,.dock-work-panel,.copy-menu-open) .side .ch,.app.macos-desktop:has(.ch-menu,.open-in-menu,.dock-work-panel,.copy-menu-open) .global-preview .ui-panel-header{-webkit-app-region:no-drag}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--dim: rgba(0, 0, 0, .6);--muted: rgba(0, 0, 0, .45);--faint: rgba(0, 0, 0, .3);--line: var(--color-line);--line2: var(--color-subtle);--canvas: #f9fbfc;--sh: 0 1px 3px rgba(28, 40, 66, .05), 0 6px 18px rgba(28, 40, 66, .06);--shc: 0 1px 2px rgba(28, 40, 66, .05);--panel: #f5f5f5;--panel2: rgba(0, 0, 0, .05);--bg: #ffffff;--blue: #1783ff;--blue2: #167ff7;--soft: #e8f3ff;--bd: rgba(23, 131, 255, .25);--logo: #1783ff;--bluebg: #e8f3ff;--blueln: rgba(23, 131, 255, .25);--ok: #0e7a38;--warn: #a9610a;--star: #eab308;--err: #c0392b;--hover: var(--color-hover);--r-xs: var(--radius-sm);--r-sm: var(--radius-md);--r-md: var(--radius-lg);--r-lg: var(--radius-xl);--ui-font-size: var(--ui-b2);--ui-font-size-sm: calc(var(--ui-font-size) - 1px);--ui-font-size-xs: calc(var(--ui-font-size) - 2px);--ui-font-size-lg: calc(var(--ui-font-size) + 1px);--ui-font-size-xl: calc(var(--ui-font-size) + 2px);--content-font-size: var(--md-b1);--code-font-size: calc(var(--content-font-size) - 2px);--mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--sans: var(--font-ui);color-scheme:light dark}html[data-color-scheme=light]{color-scheme:light}html[data-color-scheme=system]{color-scheme:light dark}html[data-color-scheme=dark]{color-scheme:dark;--dim: rgba(255, 255, 255, .56);--muted: rgba(255, 255, 255, .42);--faint: rgba(255, 255, 255, .26);--panel: #1f1f1f;--panel2: #121212;--bg: #121212;--blue: #1a88ff;--blue2: #258eff;--soft: rgba(26, 136, 255, .1);--bd: rgba(26, 136, 255, .28);--logo: #1a88ff;--bluebg: #292929;--blueln: rgba(255, 255, 255, .05);--ok: #3fb950;--warn: #d29922;--star: #facc15;--err: #f85149;--hover: var(--color-hover);--canvas: #161717;--sh: 0 1px 3px rgba(0, 0, 0, .35), 0 6px 18px rgba(0, 0, 0, .4);--shc: 0 1px 2px rgba(0, 0, 0, .35)}@media(prefers-color-scheme:dark){html[data-color-scheme=system]{--dim: rgba(255, 255, 255, .56);--muted: rgba(255, 255, 255, .42);--faint: rgba(255, 255, 255, .26);--panel: #1f1f1f;--panel2: #121212;--bg: #121212;--blue: #1a88ff;--blue2: #258eff;--soft: rgba(26, 136, 255, .1);--bd: rgba(26, 136, 255, .28);--logo: #1a88ff;--bluebg: #292929;--blueln: rgba(255, 255, 255, .05);--ok: #3fb950;--warn: #d29922;--star: #facc15;--err: #f85149;--hover: var(--color-hover);--canvas: #161717;--sh: 0 1px 3px rgba(0, 0, 0, .35), 0 6px 18px rgba(0, 0, 0, .4);--shc: 0 1px 2px rgba(0, 0, 0, .35)}}:root{--color-bg: #ffffff;--color-surface: #f5f5f5;--color-surface-raised: #ffffff;--color-surface-overlay: #ffffff;--color-surface-sunken: #f5f5f5;--color-inline-code-bg: rgba(0, 0, 0, .03);--color-well: #f5f5f5;--color-surface-deep: #f5f5f5;--color-media-alpha-bg-1: color-mix(in srgb, var(--color-bg) 52%, var(--color-text) 48%);--color-media-alpha-bg-2: color-mix(in srgb, var(--color-bg) 42%, var(--color-text) 58%);--media-alpha-canvas: conic-gradient( var(--color-media-alpha-bg-1) 25%, var(--color-media-alpha-bg-2) 0 50%, var(--color-media-alpha-bg-1) 0 75%, var(--color-media-alpha-bg-2) 0 ) 0 0 / 16px 16px;--color-text: rgba(0, 0, 0, .9);--color-text-strong: #000000;--color-text-muted: rgba(0, 0, 0, .6);--color-text-faint: rgba(0, 0, 0, .45);--color-text-on-accent: #ffffff;--color-line: rgba(0, 0, 0, .13);--color-subtle: rgba(0, 0, 0, .05);--color-line-strong: rgba(0, 0, 0, .15);--color-scrim: rgba(0, 0, 0, .4);--color-scrim-strong: rgba(0, 0, 0, .6);--color-text-on-scrim: #ffffff;--color-selected: rgba(0, 0, 0, .05);--color-selected-hover: rgba(0, 0, 0, .08);--color-hover: rgba(0, 0, 0, .03);--color-sidebar-bg: #f9fbfc;--color-user-bubble-bg: #f5f5f5;--color-accent: #1783ff;--color-accent-hover: #167ff7;--color-accent-soft: #e8f3ff;--color-accent-bd: rgba(23, 131, 255, .25);--color-success: #0e7a38;--color-success-soft: #e7f6ee;--color-success-bd: #bfe3cc;--color-warning: #a9610a;--color-warning-soft: #fbf1e0;--color-warning-bd: #f0d9b8;--color-orange: #bc4c00;--color-orange-soft: #fff1e5;--color-danger: #c0392b;--color-danger-soft: #fbeaea;--color-danger-bd: #f0cccc;--color-diff-add-bg: rgba(22, 196, 86, .25);--color-diff-del-bg: rgba(255, 56, 73, .25);--color-done: #8250df;--color-done-soft: #f3e8ff;--color-done-bd: #e0ccff;--color-info: #1783ff;--color-term-magenta: #8250df;--color-term-cyan: #1b7c83;--color-term-black: #24292f;--space-05: 2px;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-composer: 32px;--radius-composer-media: calc(var(--radius-composer) - var(--p-composer-media-inset) - var(--p-hairline));--radius-composer-media-control: calc(var(--radius-composer-media) - var(--space-1) - var(--p-hairline));--corner-shape-composer: superellipse(1.5);--radius-menu-row: var(--radius-sm);--corner-shape-menu: var(--corner-shape-composer);--menu-pad: 3.5px;--radius-menu-item: calc(var(--radius-lg) - var(--menu-pad) - var(--p-hairline));--radius-select-option: calc(var(--radius-md) - var(--space-1) - var(--p-hairline));--radius-dropdown-row: calc(var(--radius-lg) - var(--space-1) - var(--p-hairline));--color-menu-bg-frost: color-mix(in srgb, var(--color-bg) 70%, transparent);--color-topbar-bg-frost: color-mix(in srgb, var(--color-surface) 78%, transparent);--p-topbar-backdrop: saturate(150%) blur(12px);--color-menu-scrollbar: color-mix(in srgb, var(--color-text) 16%, transparent);--color-menu-scrollbar-hover: color-mix(in srgb, var(--color-text) 48%, transparent);--color-chat-scrollbar: color-mix(in srgb, var(--color-text) 12%, transparent);--color-chat-scrollbar-hover: color-mix(in srgb, var(--color-text) 25%, transparent);--radius-full: 999px;--radius-window: 14px;--radius-window-chip: calc(var(--radius-window) - var(--space-2));--menu-scroll-fade: var(--space-5);--panel-tab-pad-x: 10px;--panel-tab-max-w: 168px;--panel-tab-x-size: 18px;--panel-tab-h: 28px;--panel-launcher-w: 288px;--panel-default-w: 460px;--menu-item-padding-block: 5px;--menu-item-padding-inline: 9px;--menu-row-hug: var(--space-1-5);--menu-rows-seam: 1px;--menu-row-gap-icon: 7px;--menu-row-padding-block: var(--space-05);--menu-row-padding-inline: calc(var(--space-4) - var(--space-3) + var(--menu-row-hug));--menu-row-touch-padding-block: 11px;--menu-scrollbar-width: 3px;--menu-scrollbar-edge: calc(var(--menu-row-hug) + var(--p-hairline) - var(--menu-scrollbar-width));--menu-scrollbar-track-inset: calc(var(--radius-lg) - var(--space-1-5));--menu-scrollbar-thumb-min: 24px;--wm-x-size: calc(var(--p-ic-sm) + var(--space-1));--wm-x-ring: var(--space-1-5);--z-base: 0;--z-raised: 1;--z-sticky: 100;--z-dropdown: 200;--z-overlay: 300;--z-modal: 400;--z-modal-dropdown: 500;--z-toast: 600;--z-tooltip: 650;--z-max: 9999;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .04);--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05), 0 1px 3px rgba(16, 24, 40, .06);--shadow-menu: 0 6px 18px lch(0% 0 0 / .02), 0 3px 9px lch(0% 0 0 / .04), 0 1px 1px lch(0% 0 0 / .04);--color-menu-bg: rgba(255, 255, 255, .95);--p-menu-backdrop: blur(24px) saturate(1.8);--shadow-input: 0 5px 16px -4px rgba(0, 0, 0, .07);--shadow-md: 0 4px 12px rgba(16, 24, 40, .07), 0 2px 4px rgba(16, 24, 40, .05);--shadow-lg: 0 12px 32px rgba(16, 24, 40, .12), 0 4px 10px rgba(16, 24, 40, .08);--shadow-xl: 0 24px 64px rgba(16, 24, 40, .18), 0 8px 20px rgba(16, 24, 40, .1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--duration-fast: .12s;--duration-base: .16s;--duration-slow: .26s;--duration-hover-intent: .25s;--duration-tooltip: .3s;--duration-spin: .7s;--duration-flash: 1.2s;--motion-panel-shift: 2px;--motion-panel-scale: .97;--color-composer-bg: #ffffff;--color-composer-line: rgba(0, 0, 0, .13);--color-composer-focus-line: rgba(0, 0, 0, .25);--color-send-bg: rgba(0, 0, 0, .9);--color-send-bg-hover: #252525;--color-send-icon: #ffffff;--color-stop-glyph: var(--color-danger);--color-send-bg-disabled: rgba(0, 0, 0, .05);--color-send-icon-disabled: rgba(0, 0, 0, .27);--opacity-send-disabled: 1;--shadow-send: 0 7px 16px -13px rgba(0, 0, 0, .38), 0 1px 2px rgba(0, 0, 0, .07);--shadow-send-hover: 0 8px 18px -13px rgba(0, 0, 0, .42), 0 1px 3px rgba(0, 0, 0, .09);--composer-send-icon-size: 28px;--font-ui-latin: "Schibsted Grotesk Variable", "Helvetica Neue", Arial;--font-ui: var(--font-ui-latin), "Noto Sans SC Variable", "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-display: var(--font-ui);--font-kbd: "Schibsted Grotesk Variable", system-ui, sans-serif;--kbd-height: 18px;--kbd-min-width: 18px;--kbd-padding-x: 5px;--kbd-font-size: 11px;--font-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--text-2xs: calc(var(--ui-c1) - 1px);--text-xs: var(--ui-c1);--text-sm: calc(var(--ui-b2) - 1px);--text-base: var(--ui-b2);--text-lg: var(--ui-t2);--text-xl: var(--ui-t1);--text-2xl: var(--ui-t0);--leading-solid: 1;--leading-tight: 1.25;--leading-caption: 1.4;--leading-normal: 1.5;--leading-prose: 1.6;--leading-relaxed: 1.7;--weight-regular: 400;--weight-caption: 450;--weight-option-label: 475;--weight-medium: 500;--weight-ui-strong: 525;--weight-section-label: 600;--weight-semibold: 700;--ui-shift: calc(var(--base-font, 14px) - 14px);--md-shift: var(--ui-shift);--ui-t0: min(calc(20px + var(--ui-shift)), 24px);--ui-t1: min(calc(18px + var(--ui-shift)), 22px);--ui-t2: calc(16px + var(--ui-shift));--ui-b1: calc(15px + var(--ui-shift));--ui-b2: calc(14px + var(--ui-shift));--ui-c1: calc(12px + var(--ui-shift));--ui-c2: calc(10px + var(--ui-shift));--md-h1: calc(22px + var(--md-shift));--md-h2: calc(20px + var(--md-shift));--md-h3: calc(18px + var(--md-shift));--md-b1: calc(14px + var(--md-shift));--md-b2: calc(13px + var(--md-shift));--md-b3: calc(13px + var(--md-shift));--p-focus-ring-w: 3px;--p-focus-ring: 0 0 0 var(--p-focus-ring-w) var(--color-accent-soft);--p-focus-ring-strong: 0 0 0 var(--p-focus-ring-w) var(--color-accent-soft), 0 0 0 1px var(--color-accent);--p-selection: rgba(23, 131, 255, .2);--color-code-selection: rgba(23, 131, 255, .346);--color-code-selection-text: currentColor;--code-pad-block: calc(var(--text-sm) * (var(--leading-normal) - 1) / 2);--diff-sign-col: 14px;--p-ic-sm: 14px;--p-ic-md: 16px;--p-ring-stroke: 1.5px;--p-ic-lg: 20px;--p-empty-ico: 28px;--p-hairline: .5px;--p-findring-w: 2px;--p-pill-excerpt-max: 24em;--p-quote-pill-excerpt-max: 12em;--p-tip-quote-lines: 8.5lh;--p-tip-comment-lines: 4.5lh;--p-scroll-seam-h: 18px;--p-sidebar-seam-h: 13px;--icon-button-sm: 26px;--touch-target-min: 44px;--resize-handle-step: 16px;--resize-handle-step-lg: 48px;--p-chip-num: 20px;--p-sidebar-w: 264px;--p-content-max: 760px;--p-content-wide: 920px;--p-table-max: 1040px;--p-table-cell-max: 700px;--p-findbar-w: 340px;--p-bubble-max: 78%;--p-dock-panel-h: 320px;--p-subagent-card-min: 180px;--p-slash-menu-h: 228px;--p-mention-menu-h: 296px;--p-mention-tip-w: 320px;--p-mention-tip-media-w: 300px;--p-mention-tip-media-h: 220px;--p-mention-tip-media-min-w: 190px;--p-mention-tip-media-preview-min-h: 64px;--p-mention-tip-media-check: 12px;--p-mention-tip-media-ring: 12px;--p-mention-tip-media-spin: 10px;--p-composer-media-inset: var(--space-4);--p-composer-media-thumb: 72px;--p-composer-media-control: var(--space-5);--p-composer-media-action: 28px;--p-mention-tip-media-check-bg: linear-gradient(45deg, color-mix(in srgb, var(--color-bg) 7%, transparent) 25%, transparent 25%), linear-gradient(-45deg, color-mix(in srgb, var(--color-bg) 7%, transparent) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, color-mix(in srgb, var(--color-bg) 7%, transparent) 75%), linear-gradient(-45deg, transparent 75%, color-mix(in srgb, var(--color-bg) 7%, transparent) 75%);--p-selection-bubble-w: 280px;--p-selection-comment-max-h: 160px;--p-tip-max-w: 280px;--p-mention-tip-vmargin: var(--space-3);--p-mention-tip-spinner-lift: -.1em;--opacity-stale: .55;--opacity-hint: .55;--p-add-menu-h: var(--p-slash-menu-h);--p-bp-sm: 640px;--p-bp-md: 980px}:root,html[data-font-scale=medium]{--base-font: 14px}html[data-font-scale=small]{--base-font: 12px}html[data-font-scale=large]{--base-font: 16px}html[data-font-scale=xlarge]{--base-font: 18px}.text-ui-t0{font-size:var(--ui-t0);line-height:round(calc(var(--ui-t0) * 1.4),1px)}.text-ui-t1{font-size:var(--ui-t1);line-height:round(calc(var(--ui-t1) * 1.44),1px)}.text-ui-t2{font-size:var(--ui-t2);line-height:round(calc(var(--ui-t2) * 1.5),1px)}.text-ui-b1{font-size:var(--ui-b1);line-height:round(calc(var(--ui-b1) * 1.47),1px)}.text-ui-b2{font-size:var(--ui-b2);line-height:round(calc(var(--ui-b2) * 1.42),1px)}.text-ui-c1{font-size:var(--ui-c1);line-height:round(calc(var(--ui-c1) * 1.5),1px)}.text-ui-c2{font-size:var(--ui-c2);line-height:round(calc(var(--ui-c2) * 1.4),1px)}.text-md-h1{font-size:var(--md-h1);line-height:round(calc(var(--md-h1) * 1.63),1px)}.text-md-h2{font-size:var(--md-h2);line-height:round(calc(var(--md-h2) * 1.6),1px)}.text-md-h3{font-size:var(--md-h3);line-height:round(calc(var(--md-h3) * 1.56),1px)}.text-md-b1{font-size:var(--md-b1);line-height:round(calc(var(--md-b1) * 1.625),1px)}.text-md-b2{font-size:var(--md-b2);line-height:round(calc(var(--md-b2) * 1.6),1px)}.text-md-b3{font-size:var(--md-b3);line-height:round(calc(var(--md-b3) * 1.57),1px)}html[data-color-scheme=dark]{--color-bg: #121212;--color-surface: #1f1f1f;--color-surface-raised: #292929;--color-surface-overlay: rgba(255, 255, 255, .1);--color-surface-sunken: #121212;--color-inline-code-bg: rgba(255, 255, 255, .1);--color-well: #1f1f1f;--color-surface-deep: #0d0d0d;--color-text: rgba(255, 255, 255, .84);--color-text-strong: #ffffff;--color-text-muted: rgba(255, 255, 255, .56);--color-text-faint: rgba(255, 255, 255, .42);--color-line: rgba(255, 255, 255, .12);--color-subtle: rgba(255, 255, 255, .05);--color-line-strong: rgba(255, 255, 255, .18);--color-scrim: rgba(0, 0, 0, .6);--color-scrim-strong: rgba(0, 0, 0, .75);--color-selected: rgba(255, 255, 255, .1);--color-selected-hover: rgba(255, 255, 255, .14);--color-hover: rgba(255, 255, 255, .05);--color-sidebar-bg: #0d0d0d;--color-user-bubble-bg: #292929;--color-accent: #1a88ff;--color-accent-hover: #258eff;--color-accent-soft: rgba(26, 136, 255, .1);--color-accent-bd: rgba(26, 136, 255, .28);--p-selection: rgba(26, 136, 255, .2);--color-code-selection: rgba(26, 136, 255, .27);--color-code-selection-text: currentColor;--color-success: #3fb950;--color-success-soft: rgba(63, 185, 80, .14);--color-success-bd: rgba(63, 185, 80, .28);--color-warning: #d29922;--color-warning-soft: rgba(210, 153, 34, .14);--color-warning-bd: rgba(210, 153, 34, .28);--color-orange: #f0883e;--color-orange-soft: rgba(240, 136, 62, .14);--color-danger: #f85149;--color-danger-soft: rgba(248, 81, 73, .14);--color-danger-bd: rgba(248, 81, 73, .28);--color-diff-add-bg: rgba(63, 185, 80, .14);--color-diff-del-bg: rgba(248, 81, 73, .14);--color-done: #a371f7;--color-done-soft: rgba(163, 113, 247, .14);--color-done-bd: rgba(163, 113, 247, .28);--color-info: #1a88ff;--color-term-magenta: #d2a8ff;--color-term-cyan: #76e3ea;--color-term-black: #484f58;--color-composer-bg: #1f1f1f;--color-composer-line: rgba(255, 255, 255, .12);--color-composer-focus-line: rgba(255, 255, 255, .25);--color-send-bg: rgba(255, 255, 255, .84);--color-send-bg-hover: rgba(255, 255, 255, .848);--color-send-icon: #1f1f1f;--color-stop-glyph: color-mix(in srgb, var(--color-danger) 72%, transparent);--color-send-bg-disabled: rgba(255, 255, 255, .1);--color-send-icon-disabled: rgba(255, 255, 255, .28);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .22), 0 1px 3px rgba(0, 0, 0, .18);--shadow-menu: 0 6px 18px rgba(0, 0, 0, .2), 0 3px 9px rgba(0, 0, 0, .24), 0 1px 1px rgba(0, 0, 0, .24);--color-menu-bg: rgba(41, 41, 41, .95);--shadow-input: 0 5px 16px -4px rgba(0, 0, 0, .07);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3), 0 2px 4px rgba(0, 0, 0, .24);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .34), 0 4px 10px rgba(0, 0, 0, .28);--shadow-xl: 0 24px 64px rgba(0, 0, 0, .42), 0 8px 20px rgba(0, 0, 0, .32)}@media(prefers-color-scheme:dark){html[data-color-scheme=system]{--color-bg: #121212;--color-surface: #1f1f1f;--color-surface-raised: #292929;--color-surface-overlay: rgba(255, 255, 255, .1);--color-surface-sunken: #121212;--color-inline-code-bg: rgba(255, 255, 255, .1);--color-well: #1f1f1f;--color-surface-deep: #0d0d0d;--color-text: rgba(255, 255, 255, .84);--color-text-strong: #ffffff;--color-text-muted: rgba(255, 255, 255, .56);--color-text-faint: rgba(255, 255, 255, .42);--color-line: rgba(255, 255, 255, .12);--color-subtle: rgba(255, 255, 255, .05);--color-line-strong: rgba(255, 255, 255, .18);--color-scrim: rgba(0, 0, 0, .6);--color-scrim-strong: rgba(0, 0, 0, .75);--color-selected: rgba(255, 255, 255, .1);--color-selected-hover: rgba(255, 255, 255, .14);--color-hover: rgba(255, 255, 255, .05);--color-sidebar-bg: #0d0d0d;--color-user-bubble-bg: #292929;--color-accent: #1a88ff;--color-accent-hover: #258eff;--color-accent-soft: rgba(26, 136, 255, .1);--color-accent-bd: rgba(26, 136, 255, .28);--p-selection: rgba(26, 136, 255, .2);--color-code-selection: rgba(26, 136, 255, .27);--color-code-selection-text: currentColor;--color-success: #3fb950;--color-success-soft: rgba(63, 185, 80, .14);--color-success-bd: rgba(63, 185, 80, .28);--color-warning: #d29922;--color-warning-soft: rgba(210, 153, 34, .14);--color-warning-bd: rgba(210, 153, 34, .28);--color-orange: #f0883e;--color-orange-soft: rgba(240, 136, 62, .14);--color-danger: #f85149;--color-danger-soft: rgba(248, 81, 73, .14);--color-danger-bd: rgba(248, 81, 73, .28);--color-diff-add-bg: rgba(63, 185, 80, .14);--color-diff-del-bg: rgba(248, 81, 73, .14);--color-done: #a371f7;--color-done-soft: rgba(163, 113, 247, .14);--color-done-bd: rgba(163, 113, 247, .28);--color-term-magenta: #d2a8ff;--color-term-cyan: #76e3ea;--color-term-black: #484f58;--color-info: #1a88ff;--color-composer-bg: #1f1f1f;--color-composer-line: rgba(255, 255, 255, .12);--color-composer-focus-line: rgba(255, 255, 255, .25);--color-send-bg: rgba(255, 255, 255, .84);--color-send-bg-hover: rgba(255, 255, 255, .848);--color-send-icon: #1f1f1f;--color-stop-glyph: color-mix(in srgb, var(--color-danger) 72%, transparent);--color-send-bg-disabled: rgba(255, 255, 255, .1);--color-send-icon-disabled: rgba(255, 255, 255, .28);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .22), 0 1px 3px rgba(0, 0, 0, .18);--shadow-menu: 0 6px 18px rgba(0, 0, 0, .2), 0 3px 9px rgba(0, 0, 0, .24), 0 1px 1px rgba(0, 0, 0, .24);--color-menu-bg: rgba(41, 41, 41, .95);--shadow-input: 0 5px 16px -4px rgba(0, 0, 0, .07);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3), 0 2px 4px rgba(0, 0, 0, .24);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .34), 0 4px 10px rgba(0, 0, 0, .28);--shadow-xl: 0 24px 64px rgba(0, 0, 0, .42), 0 8px 20px rgba(0, 0, 0, .32)}}:root{--color-sidebar-tint: rgba(255, 255, 255, .2)}html[data-color-scheme=dark]{--color-sidebar-tint: rgba(0, 0, 0, .12)}@media(prefers-color-scheme:dark){html[data-color-scheme=system]{--color-sidebar-tint: rgba(0, 0, 0, .12)}}:root{--color-search-match: #ffe066;--color-search-match-current: #ffc531}html[data-color-scheme=dark]{--color-search-match: rgba(255, 197, 49, .3);--color-search-match-current: rgba(255, 197, 49, .55)}@media(prefers-color-scheme:dark){html[data-color-scheme=system]{--color-search-match: rgba(255, 197, 49, .3);--color-search-match-current: rgba(255, 197, 49, .55)}}::highlight(kimi-transcript-search){background-color:var(--color-search-match)}::highlight(kimi-transcript-search-current){background-color:var(--color-search-match-current)}.mention-pill,.attachment-pill,.quote-pill{display:inline-flex;align-items:baseline;gap:var(--space-05);color:var(--color-text-muted);font-weight:var(--weight-ui-strong);white-space:nowrap;text-decoration:none;vertical-align:baseline;padding-inline:var(--space-05);transition:color var(--duration-fast) var(--ease-out)}.mention-pill:hover,.attachment-pill:hover,.quote-pill:hover{color:var(--color-text)}.mention-pill:hover .mention-pill-icon,.attachment-pill:hover .attachment-pill-icon,.quote-pill:hover .quote-pill-icon{color:inherit}.mention-pill.mention-file,.mention-pill.mention-skill,.attachment-pill[data-attachment-url]{cursor:pointer}.mention-pill.mention-file:hover,.mention-pill.mention-skill:hover,.attachment-pill[data-attachment-url]:hover{text-decoration:underline}.mention-pill:focus-visible,.attachment-pill:focus-visible,.quote-pill:focus-visible{outline:none;box-shadow:var(--p-focus-ring);border-radius:var(--radius-sm)}.ProseMirror .mention-pill,.ProseMirror .mention-pill:hover,.ProseMirror .attachment-pill,.ProseMirror .attachment-pill:hover,.ProseMirror .quote-pill,.ProseMirror .quote-pill:hover{cursor:text;text-decoration:none}.ProseMirror .attachment-pill.attachment-image,.ProseMirror .attachment-pill.attachment-image:hover,.ProseMirror .attachment-pill.attachment-video,.ProseMirror .attachment-pill.attachment-video:hover,a.mention-folder{cursor:default}.mention-pill.mention-skill.mention-inert,.mention-pill.mention-skill.mention-inert:hover{cursor:default;text-decoration:none}.mention-pill-name,.attachment-pill-name{max-width:var(--p-pill-excerpt-max);min-width:0;overflow:hidden;text-overflow:ellipsis}.quote-pill-name{max-width:var(--p-quote-pill-excerpt-max);min-width:0;overflow:hidden;text-overflow:ellipsis}.mention-pill-icon,.attachment-pill-icon,.quote-pill-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--muted);align-self:center;flex-shrink:0}.mention-pill-icon svg,.attachment-pill-icon svg,.quote-pill-icon svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block;stroke:currentColor;stroke-width:var(--p-hairline)}.mention-pill.pill-in-selection,.attachment-pill.pill-in-selection,.quote-pill.pill-in-selection{background:var(--p-selection);border-radius:var(--radius-sm)}.quote-pill:focus-visible{box-shadow:0 0 0 1px var(--color-text-muted),0 0 0 var(--p-focus-ring-w) var(--color-accent-soft)}.quote-pill-comment{max-width:var(--p-quote-pill-excerpt-max);min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-muted);font-weight:var(--weight-regular)}.quote-pill-comment:before{content:"❘";color:var(--color-text-faint);margin-inline:var(--space-1-5) var(--space-1)}.composer-text .q-sep{font-size:0;white-space:normal}.mention-tip{position:fixed;z-index:var(--z-tooltip);max-width:min(var(--p-mention-tip-w),calc(100vw - 2 * var(--p-mention-tip-vmargin)));padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-text);color:var(--color-bg);--p-tip-line: color-mix(in srgb, currentColor 18%, transparent);--p-tip-ink: color-mix(in srgb, currentColor 80%, transparent);--p-tip-ink-weak: color-mix(in srgb, currentColor 55%, transparent);font-family:var(--font-ui);font-size:var(--text-xs);line-height:round(calc(var(--text-xs) * 1.5),1px);overflow-wrap:anywhere;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.mention-tip:not(.positioned){pointer-events:none}.mention-tip.positioned{opacity:1}.mention-tip:has(.mention-tip-path){padding-right:var(--space-1)}.mention-tip:before,.mention-tip:after{content:"";position:absolute;left:0;right:0;height:var(--space-1-5)}.mention-tip:before{bottom:100%}.mention-tip:after{top:100%}.mention-tip>*{max-height:calc(100vh - 2 * var(--p-mention-tip-vmargin) - 2 * var(--space-2));overflow-y:auto}.mention-tip-caret{position:absolute;left:var(--tip-caret-x, 50%);width:12px;height:6px;background:var(--color-text);transform:translate(-50%)}.mention-tip[data-side=top]>.mention-tip-caret{top:100%;clip-path:polygon(0 0,100% 0,50% 100%)}.mention-tip[data-side=bottom]>.mention-tip-caret{bottom:100%;clip-path:polygon(50% 0,0 100%,100% 100%)}.mention-tip-path{display:flex;align-items:flex-start;gap:var(--space-2)}.mention-tip-path-text{min-width:0}.mention-tip-sep{color:color-mix(in srgb,currentColor 45%,transparent)}.mention-tip-base{font-weight:var(--weight-semibold)}.mention-tip-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.mention-tip-name{font-weight:var(--weight-semibold);overflow-wrap:anywhere}.mention-tip-open,.mention-tip-copy{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:var(--space-05);border:none;border-radius:var(--radius-xs);background:transparent;color:color-mix(in srgb,currentColor 65%,transparent);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.mention-tip-open:hover,.mention-tip-copy:hover{color:var(--color-bg);background:color-mix(in srgb,var(--color-bg) 14%,transparent)}.mention-tip-open:focus-visible,.mention-tip-copy:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.mention-tip-open svg,.mention-tip-copy svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block}.mention-tip-att-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--p-ic-sm);height:1lh;color:color-mix(in srgb,currentColor 65%,transparent)}.mention-tip-att-icon svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block}.mention-tip-att-size{color:color-mix(in srgb,currentColor 65%,transparent)}.mention-tip:has(.mention-tip-quote-card){padding:var(--space-2)}.mention-tip-quote-card{min-width:0;display:flex;flex-direction:column;gap:var(--space-1-5)}.mention-tip-quote-block{min-width:0;padding:var(--space-1) var(--space-1-5);border-radius:var(--radius-xs);background:color-mix(in srgb,currentColor 6%,transparent)}.mention-tip-quote-block-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-05)}.mention-tip-quote-block-head .mention-tip-copy{margin-right:calc(-1 * var(--space-1));opacity:0;transition:opacity var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.mention-tip-quote-block:hover .mention-tip-copy,.mention-tip-quote-block:focus-within .mention-tip-copy{opacity:1}@media(hover:none){.mention-tip-quote-block-head .mention-tip-copy{opacity:1}}.mention-tip-quote-block-head .mention-tip-quote-block-label{margin-bottom:0}.mention-tip-quote-block-label{margin-bottom:var(--space-05);color:var(--p-tip-ink-weak);font-size:var(--text-2xs);line-height:round(calc(var(--text-2xs) * 1.5),1px)}.mention-tip-quote-text{min-width:0;max-height:var(--p-tip-quote-lines);overflow-y:scroll;white-space:pre-wrap}.mention-tip-quote-comment{color:var(--p-tip-ink);white-space:pre-wrap;word-break:break-word;max-height:var(--p-tip-comment-lines);overflow-y:scroll}.mention-tip-quote-text,.mention-tip-quote-comment{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,currentColor 40%,transparent) transparent}.mention-tip-quote-text::-webkit-scrollbar,.mention-tip-quote-comment::-webkit-scrollbar{width:var(--space-1-5)}.mention-tip-quote-text::-webkit-scrollbar-thumb,.mention-tip-quote-comment::-webkit-scrollbar-thumb{background:color-mix(in srgb,currentColor 40%,transparent);border-radius:var(--radius-xs)}.mention-tip-quote-text::-webkit-scrollbar-track,.mention-tip-quote-comment::-webkit-scrollbar-track{background:transparent}.mention-tip-quote-source{min-width:0;color:var(--p-tip-ink-weak);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-tip-att-error{margin-top:var(--space-05);color:color-mix(in srgb,var(--color-danger) 70%,currentColor)}.mention-tip--media{padding:var(--space-1-5);border-radius:var(--radius-lg)}.mention-tip-media{display:flex;flex-direction:column;gap:var(--space-1-5)}.mention-tip-media-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:center;min-height:var(--p-mention-tip-media-preview-min-h);border:1px solid color-mix(in srgb,var(--color-bg) 14%,transparent);border-radius:var(--radius-sm);background-color:color-mix(in srgb,var(--color-bg) 8%,transparent);background-image:var(--p-mention-tip-media-check-bg);background-size:var(--p-mention-tip-media-check) var(--p-mention-tip-media-check);background-position:0 0,0 calc(var(--p-mention-tip-media-check) / 2),calc(var(--p-mention-tip-media-check) / 2) calc(var(--p-mention-tip-media-check) / -2),calc(var(--p-mention-tip-media-check) / -2) 0;overflow:hidden}.mention-tip-media-el::-webkit-media-controls-fullscreen-button,.mention-tip-media-el::-webkit-media-controls-overflow-button{display:none!important}.mention-tip-media-el{display:block;max-width:var(--p-mention-tip-media-w);max-height:var(--p-mention-tip-media-h);object-fit:contain;border-radius:var(--radius-sm)}.mention-tip-media-placeholder{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-3) var(--space-1);color:color-mix(in srgb,currentColor 45%,transparent)}.mention-tip-media-placeholder svg{width:var(--p-ic-lg);height:var(--p-ic-lg);display:block}.mention-tip-media-hint{padding:0 var(--space-2) var(--space-2);color:color-mix(in srgb,currentColor 60%,transparent);text-align:center}.mention-tip-media-meta{display:flex;align-items:center;gap:var(--space-1);min-width:0}.mention-tip-media-name{flex:0 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:var(--weight-semibold)}.mention-tip-media-error{padding:var(--space-1) var(--space-1-5);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-bg) 8%,transparent);color:color-mix(in srgb,var(--color-danger) 70%,currentColor)}.mention-tip-media-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);min-width:0}.mention-tip-media-state{display:inline-flex;align-items:center;gap:var(--space-1-5);flex:1 0 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:color-mix(in srgb,currentColor 65%,transparent);font-weight:var(--weight-medium);padding-left:var(--space-05)}.mention-tip-media-state.is-danger{color:color-mix(in srgb,var(--color-danger) 70%,currentColor)}.mention-tip-media-ring,.mention-tip-media-ring svg{width:var(--p-mention-tip-media-ring);height:var(--p-mention-tip-media-ring);display:block;flex:none}.mention-tip-media-ring-track{stroke:color-mix(in srgb,currentColor 18%,transparent)}.mention-tip-media-ring-arc{stroke:color-mix(in srgb,currentColor 78%,transparent)}.mention-tip-media-spin{flex:none;width:var(--p-mention-tip-media-spin);height:var(--p-mention-tip-media-spin);border-radius:var(--radius-full);border:1.5px solid color-mix(in srgb,currentColor 18%,transparent);border-top-color:color-mix(in srgb,currentColor 78%,transparent);animation:mention-tip-media-rot var(--duration-slow) linear infinite}@keyframes mention-tip-media-rot{to{transform:rotate(360deg)}}.mention-tip-media-actions{display:flex;flex-wrap:wrap;max-width:100%;justify-content:flex-end;gap:var(--space-1-5);margin-left:auto;flex:none}.mention-tip-media-open{position:relative;display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-05) var(--space-1-5);border:none;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-bg) 10%,transparent);color:color-mix(in srgb,currentColor 65%,transparent);font:inherit;cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.mention-tip-media-open:hover{background:color-mix(in srgb,var(--color-bg) 18%,transparent);color:var(--color-bg)}.mention-tip-media-open:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.mention-tip-media-open svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block;color:color-mix(in srgb,currentColor 45%,transparent);transition:color var(--duration-fast) var(--ease-out)}.mention-tip-media-open:hover svg{color:var(--color-bg)}.mention-tip-desc{margin-top:var(--space-05);color:color-mix(in srgb,currentColor 78%,transparent);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.mention-tip-spinner{display:inline-block;width:calc(var(--space-2) + var(--space-05));height:calc(var(--space-2) + var(--space-05));margin-left:var(--space-1);vertical-align:var(--p-mention-tip-spinner-lift);border-radius:50%;border:var(--p-ring-stroke) solid color-mix(in srgb,currentColor 30%,transparent);border-top-color:currentColor;animation:mention-tip-spin var(--duration-spin) linear infinite}@keyframes mention-tip-spin{to{transform:rotate(360deg)}}.mention-pill.mention-missing,.mention-pill.mention-missing:hover{color:color-mix(in srgb,var(--color-text-muted) 55%,transparent);text-decoration:line-through}.mention-pill.mention-missing .mention-pill-icon{color:inherit}.attachment-pill.attachment-missing,.attachment-pill.attachment-missing:hover,.attachment-pill.attachment-missing .attachment-pill-icon,.attachment-pill.attachment-missing:hover .attachment-pill-icon{color:color-mix(in srgb,var(--color-text-muted) 55%,transparent);text-decoration:line-through}.attachment-pill.attachment-error,.attachment-pill.attachment-error:hover,.attachment-pill.attachment-error .attachment-pill-icon,.attachment-pill.attachment-error:hover .attachment-pill-icon{color:var(--color-danger)}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/NotoSansSC_wght_-BkPpiACN.woff2) format("woff2-variations")}@font-face{font-family:Schibsted Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/SchibstedGrotesk_wght_-DIzGrWVg.woff2) format("woff2-variations")}@font-face{font-family:Schibsted Grotesk Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/SchibstedGrotesk-Italic_wght_-DjkBGo1z.woff2) format("woff2-variations")}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;tab-size:4}body{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}p,blockquote,dl,dd,figure,pre{margin:0}ol,ul,menu{list-style:none;margin:0;padding:0}a{color:inherit;text-decoration:inherit}b,strong{font-weight:var(--weight-medium)}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}button,input,optgroup,select,textarea{margin:0;padding:0;font-family:inherit;font-size:100%;line-height:inherit;color:inherit}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background:transparent;background-image:none}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block}img,video{max-width:100%;height:auto}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1}table{border-collapse:collapse;border-color:inherit;text-indent:0}hr{height:0;color:inherit;border-top-width:1px}fieldset{margin:0;padding:0}legend{padding:0}dialog{padding:0}summary{display:list-item}[hidden]{display:none}@supports (interpolate-size: allow-keywords){:root{interpolate-size:allow-keywords}}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--dock-card-top-clearance: 72px;--question-card-body-min-h: 120px;--header-collapsed-clearance: 78px;--header-collapsed-clearance-macos: 146px}.kw-icon{display:inline-block;flex:none;vertical-align:-.15em}code,pre,kbd,samp,tt{font-feature-settings:"liga" 0,"calt" 0,"ss01" 0;font-variant-ligatures:none}html,body,#app{height:100%;margin:0;background:var(--bg)}#app{position:fixed;inset:0}html,body{overflow:hidden}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--color-text) 12%,transparent) transparent}}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-text) 12%,transparent);border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-text) 25%,transparent)}*::-webkit-scrollbar-corner{background:transparent}body{font-family:var(--sans);color:var(--color-text);background:var(--bg);font-size:var(--ui-font-size);font-weight:400;line-height:1.6;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:auto;font-synthesis:none;text-size-adjust:100%;-webkit-hyphens:none;hyphens:none}@keyframes kimi-card-in{0%{opacity:0;transform:translateY(8px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes kimi-check-in{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.ch-eyes{animation:kimi-eye-look 16s ease-in-out infinite}.ch-eye{transform-box:fill-box;transform-origin:center;animation:kimi-eye-blink 11s ease-in-out infinite}@keyframes kimi-eye-look{0%,42%{transform:translate(0)}47%,53%{transform:translate(2px)}58%,80%{transform:translate(0)}84%,90%{transform:translate(-2px)}95%,to{transform:translate(0)}}@keyframes kimi-eye-blink{0%,94%,to{transform:scaleY(1)}96.5%,98%{transform:scaleY(.12)}}@media(prefers-reduced-motion:reduce){.ch-eyes,.ch-eye{animation:none}}.blink-now .ch-eye{animation:kimi-eye-blink-once .24s ease-in-out}@keyframes kimi-eye-blink-once{0%,to{transform:scaleY(1)}50%{transform:scaleY(.1)}}.md .markdown-renderer img{min-width:0;min-height:0}.app{font-size:var(--ui-font-size)}.md,.md .markdown-renderer,.md .markdown-renderer p,.md .markdown-renderer li,.u-bub,.u-bub .u-text,.a-msg .msg,.ph{font-size:var(--content-font-size)}.md .markdown-renderer blockquote,.md .markdown-renderer td,.md .markdown-renderer th{font-size:var(--md-b2)}.md,.u-bub .u-text,.a-msg .msg{text-autospace:normal}.md .code-block-container pre,.md .markstream-pre,.md .code-block-container pre code,.md .diff-pre code,.md .markdown-renderer :not(pre)>code,.md .markdown-renderer .inline-code,.a-msg code{font-size:var(--md-b3)}.md .markdown-renderer :is(h1,h2,h3,h4) :not(pre)>code,.md .markdown-renderer :is(h1,h2,h3,h4) .inline-code{font-size:.9em}.queue-item,.queue-text,.ctx-num,.model-pill,.perm-pill,.mode-pill,.compact-chip,.qcard,.qtext,.qopt,.qbtn,.srow,.srow-val{font-size:var(--ui-font-size)}.qopt-desc,.srow-label{font-size:var(--ui-font-size-sm)}.code-block-header,.code-block-header *,.diff-lang,.queue-label,.qopt-key,.qstep,.srow-sub{font-size:var(--ui-font-size-xs)}@media(max-width:640px){:root{--content-font-size: calc(var(--md-b1) + 2px)}.md .markdown-renderer blockquote,.md .markdown-renderer td,.md .markdown-renderer th{font-size:calc(var(--md-b2) + 2px)}}:root{--anim-rive-spin: .4167s;--anim-leftbar: .5333s;--anim-leftbar-shrink: .2s}#bar-divider{transform-box:view-box;transform-origin:9.3px 12px;transition:transform var(--anim-leftbar-shrink) linear}svg:hover #bar-divider,button:hover #bar-divider{transform:translate(-1.5px) scaleY(.5)}#bar-arrow{transform-box:view-box;transform-origin:0 0;transform:translate(63.95833%,50.625%) scale(0)}svg:hover #bar-arrow,button:hover #bar-arrow{animation:leftbar-arrow var(--anim-leftbar) linear 1 forwards}@keyframes leftbar-arrow{0%{transform:translate(62.97083%,50.625%) scale(-.6);opacity:0}3.125%{transform:translate(62.97083%,50.625%) scale(-.6);opacity:1}15.625%{transform:translate(59.0125%,50.625%) scale(-1);opacity:1}37.5%{transform:translate(52.08333%,50.625%) scale(-1);opacity:1}to{transform:translate(52.08333%,50.625%) scale(-1);opacity:1}}#bar-arrow-expand{transform-box:view-box;transform-origin:0 0;transform:translate(52.08333%,50.625%) scale(0)}svg:hover #bar-arrow-expand,button:hover #bar-arrow-expand{animation:leftbar-arrow-expand var(--anim-leftbar) linear 1 forwards}@keyframes leftbar-arrow-expand{0%{transform:translate(37.02917%,50.625%) scale(.6);opacity:0}3.125%{transform:translate(37.02917%,50.625%) scale(.6);opacity:1}15.625%{transform:translate(40.9875%,50.625%) scale(1);opacity:1}37.5%{transform:translate(52.08333%,50.625%) scale(1);opacity:1}to{transform:translate(52.08333%,50.625%) scale(1);opacity:1}}#rbar-divider{transform-box:view-box;transform-origin:14.7px 12px;transition:transform var(--anim-leftbar-shrink) linear}svg:hover #rbar-divider,button:hover #rbar-divider{transform:translate(1.5px) scaleY(.5)}#rbar-arrow{transform-box:view-box;transform-origin:0 0;transform:translate(47.91667%,50.625%) scale(0)}svg:hover #rbar-arrow,button:hover #rbar-arrow{animation:rightbar-arrow var(--anim-leftbar) linear 1 forwards}@keyframes rightbar-arrow{0%{transform:translate(37.02917%,50.625%) scale(.6);opacity:0}3.125%{transform:translate(37.02917%,50.625%) scale(.6);opacity:1}15.625%{transform:translate(40.9875%,50.625%) scale(1);opacity:1}37.5%{transform:translate(47.91667%,50.625%) scale(1);opacity:1}to{transform:translate(47.91667%,50.625%) scale(1);opacity:1}}#rbar-arrow-expand{transform-box:view-box;transform-origin:0 0;transform:translate(47.91667%,50.625%) scale(0)}svg:hover #rbar-arrow-expand,button:hover #rbar-arrow-expand{animation:rightbar-arrow-expand var(--anim-leftbar) linear 1 forwards}@keyframes rightbar-arrow-expand{0%{transform:translate(62.97083%,50.625%) scale(-.6);opacity:0}3.125%{transform:translate(62.97083%,50.625%) scale(-.6);opacity:1}15.625%{transform:translate(59.0125%,50.625%) scale(-1);opacity:1}37.5%{transform:translate(47.91667%,50.625%) scale(-1);opacity:1}to{transform:translate(47.91667%,50.625%) scale(-1);opacity:1}}#p1{transform-box:view-box;transform-origin:0 0}svg:hover #p1,button:hover #p1{animation:nc-plus-spin var(--anim-rive-spin) linear 1 forwards}@keyframes nc-plus-spin{0%{transform:translate(11.5px,11.5px)}8%{transform:translate(11.501px,11.48px) rotate(1.1795deg) scale(1.02022)}12%{transform:translate(11.511px,11.46px) rotate(2.8374deg) scale(1.03026)}20%{transform:translate(11.562px,11.401px) rotate(8.8167deg) scale(1.05041)}24%{transform:translate(11.608px,11.361px) rotate(13.4726deg) scale(1.06017)}32%{transform:translate(11.751px,11.278px) rotate(25.9719deg) scale(1.08008)}48%{transform:translate(12.149px,11.222px) rotate(55.8418deg) scale(1.12025)}52%{transform:translate(12.235px,11.236px) rotate(62.0737deg) scale(1.12953)}60%{transform:translate(12.371px,11.276px) rotate(72.1167deg) scale(1.14954)}68%{transform:translate(12.446px,11.346px) rotate(79.3018deg) scale(1.12048)}76%{transform:translate(12.488px,11.403px) rotate(84.2633deg) scale(1.09046)}88%{transform:translate(12.509px,11.464px) rotate(88.52deg) scale(1.04535)}to{transform:translate(12.5px,11.5px) rotate(90deg)}}#af-p1{transform-box:view-box;transform-origin:18.4px 16.3px}svg:hover #af-p1,button:hover #af-p1{animation:folder-plus-spin var(--anim-rive-spin) linear 1 forwards}@keyframes folder-plus-spin{0%{transform:none}8%{transform:rotate(1.1795deg) scale(1.02022)}12%{transform:rotate(2.8374deg) scale(1.03026)}20%{transform:rotate(8.8167deg) scale(1.05041)}24%{transform:rotate(13.4726deg) scale(1.06017)}32%{transform:rotate(25.9719deg) scale(1.08008)}48%{transform:rotate(55.8418deg) scale(1.12025)}52%{transform:rotate(62.0737deg) scale(1.12953)}60%{transform:rotate(72.1167deg) scale(1.14954)}68%{transform:rotate(79.3018deg) scale(1.12048)}76%{transform:rotate(84.2633deg) scale(1.09046)}88%{transform:rotate(88.52deg) scale(1.04535)}to{transform:rotate(90deg)}} diff --git a/apps/kimi-code/dist-web/assets/index-CM1IMrEN.js b/apps/kimi-code/dist-web/assets/index-CM1IMrEN.js new file mode 100644 index 0000000000..9c67a5be80 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/index-CM1IMrEN.js @@ -0,0 +1,1428 @@ +import{t as fe,b as Sn,c as wr,a as Tr,d as Er,s as Ir,g as Rr,e as Ar}from"./index-CWMEBP78.js";import{f as Kl}from"./index-CWMEBP78.js";import{c_ as nn,c$ as Y,d0 as Hr,bR as Mr,d1 as Dr,d2 as Pr}from"./index-Dnz6Zudc.js";class Or extends nn{}const Nr=new Or;function Fr(e,t,n){return Nr.diff(e,t,n)}const yn="a-zA-Z0-9_\\u{AD}\\u{C0}-\\u{D6}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}";class zr extends nn{tokenize(t){const n=new RegExp(`(\\r?\\n)|[${yn}]+|[^\\S\\n\\r]+|[^${yn}]`,"ug");return t.match(n)||[]}}const Ur=new zr;function Br(e,t,n){return Ur.diff(e,t,n)}class _r extends nn{constructor(){super(...arguments),this.tokenize=Vr}equals(t,n,i){return i.ignoreWhitespace?((!i.newlineIsToken||!t.includes(` +`))&&(t=t.trim()),(!i.newlineIsToken||!n.includes(` +`))&&(n=n.trim())):i.ignoreNewlineAtEof&&!i.newlineIsToken&&(t.endsWith(` +`)&&(t=t.slice(0,-1)),n.endsWith(` +`)&&(n=n.slice(0,-1))),super.equals(t,n,i)}}const $r=new _r;function xn(e,t,n){return $r.diff(e,t,n)}function Vr(e,t){t.stripTrailingCr&&(e=e.replace(/\r\n/g,` +`));const n=[],i=e.split(/(\n|\r\n)/);i[i.length-1]||i.pop();for(let r=0;r"~"||e[t]==='"'||e[t]==="\\")return!0;return!1}function ve(e){if(!Wr(e))return e;let t='"';const n=new TextEncoder().encode(e);let i=0;for(;i=32&&r<=126?t+=String.fromCharCode(r):t+="\\"+r.toString(8).padStart(3,"0"),i++}return t+='"',t}const Ln={includeIndex:!0,includeUnderline:!0,includeFileHeaders:!0};function kn(e,t,n,i,r,o,s){let l;s?typeof s=="function"?l={callback:s}:l=s:l={},typeof l.context>"u"&&(l.context=4);const a=l.context;if(l.newlineIsToken)throw new Error("newlineIsToken may not be used with patch-generation functions, only with diffing functions");if(l.callback){const{callback:h}=l;xn(n,i,Object.assign(Object.assign({},l),{callback:c=>{const u=d(c);h(u)}}))}else return d(xn(n,i,l));function d(h){if(!h)return;h.push({value:"",lines:[]});function c(g){return g.map(function(C){return" "+C})}const u=[];let f=0,p=0,m=[],y=1,v=1;for(let g=0;g0?c(x.lines.slice(-a)):[],f-=m.length,p-=m.length)}for(const x of b)m.push((C.added?"+":"-")+x);C.added?v+=b.length:y+=b.length}else{if(f)if(b.length<=a*2&&g1&&!t.includeFileHeaders&&!e.every(h=>h.isGit))throw new Error("Cannot omit file headers on a multi-file patch. (The result would be unparseable; how would a tool trying to apply the patch know which changes are to which file?)");return e.map(h=>$t(h,t)).join(` +`)}const a=[];if(e.isGit){if(t=Ln,!e.oldFileName)throw new Error("oldFileName must be specified for Git patches");if(!e.newFileName)throw new Error("newFileName must be specified for Git patches");let h=e.oldFileName,c=e.newFileName;e.isCreate&&h==="/dev/null"?h=c.replace(/^b\//,"a/"):e.isDelete&&c==="/dev/null"&&(c=h.replace(/^a\//,"b/")),a.push("diff --git "+ve(h)+" "+ve(c)),e.isDelete&&a.push("deleted file mode "+((n=e.oldMode)!==null&&n!==void 0?n:"100644")),e.isCreate&&a.push("new file mode "+((i=e.newMode)!==null&&i!==void 0?i:"100644")),e.oldMode&&e.newMode&&!e.isDelete&&!e.isCreate&&(a.push("old mode "+e.oldMode),a.push("new mode "+e.newMode)),e.isRename&&(a.push("rename from "+ve(((r=e.oldFileName)!==null&&r!==void 0?r:"").replace(/^a\//,""))),a.push("rename to "+ve(((o=e.newFileName)!==null&&o!==void 0?o:"").replace(/^b\//,"")))),e.isCopy&&(a.push("copy from "+ve(((s=e.oldFileName)!==null&&s!==void 0?s:"").replace(/^a\//,""))),a.push("copy to "+ve(((l=e.newFileName)!==null&&l!==void 0?l:"").replace(/^b\//,""))))}else t.includeIndex&&e.oldFileName==e.newFileName&&e.oldFileName!==void 0&&a.push("Index: "+e.oldFileName),t.includeUnderline&&a.push("===================================================================");const d=e.hunks.length>0;t.includeFileHeaders&&e.oldFileName!==void 0&&e.newFileName!==void 0&&(!e.isGit||d)&&(a.push("--- "+ve(e.oldFileName)+(e.oldHeader?" "+e.oldHeader:"")),a.push("+++ "+ve(e.newFileName)+(e.newHeader?" "+e.newHeader:"")));for(let h=0;h{l(a?$t(a,s.headerOptions):void 0)}}))}else{const l=kn(e,t,n,i,r,o,s);return l?$t(l,s?.headerOptions):void 0}}function jr(e){const t=e.endsWith(` +`),n=e.split(` +`).map(i=>i+` +`);return t?n.pop():n.push(n.pop().slice(0,-1)),n}const xi="diffs-container",qr=(()=>{try{return!1}catch{return!1}})(),Kr=/(?=^From [a-f0-9]+ .+$)/m,Li=/(?=^diff --git)/gm,cl=/(?=^---\s+\S)/gm,ul=/(?=^@@ )/gm,Yr=/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@(?: (.*))?/m,Xr=/(?<=\n)/,Qr=/^(---|\+\+\+)\s+([^\t\r\n]+)/,Jr=/^(---|\+\+\+)\s+[ab]\/([^\t\r\n]+)/,Zr=/^diff --git (?:"a\/(.+?)"|a\/(.+?)) (?:"b\/(.+?)"|b\/(.+?))$/,eo=/^index ([0-9a-f]+)\.\.([0-9a-f]+)(?: (\d+))?$/i,fl=/^<{7,}(?:\s.*)?$/,pl=/^\|{7,}(?:\s.*)?$/,gl=/^={7,}$/,ml=/^>{7,}(?:\s.*)?$/,rn="header-prefix",on="header-metadata",sn="header-custom",P={dark:"pierre-dark",light:"pierre-light"},ki="data-theme-css",wi="data-unsafe-css",to="data-core-css",no="data-diffs-scrollbar-measure",Ti="--diffs-scrollbar-gutter-measured",bl=1,io=1e5,an={hunkLineCount:50,lineHeight:20,diffHeaderHeight:44,spacing:8},Pe={...an,hunkLineCount:1},ro={paddingTop:8,paddingBottom:8,gap:8},oo={omega:.015,positionEpsilon:.5,velocityEpsilon:.05},so=Object.freeze({fromStart:0,fromEnd:0}),Re={startingLine:0,totalLines:1/0,bufferBefore:0,bufferAfter:0},Ei={startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:0},Ee=new Set;let Ie=null;function K(e){Ee.add(e),Ie??=requestAnimationFrame(Ii)}function ao(e){Ee.delete(e),Ee.size===0&&Ie!=null&&(cancelAnimationFrame(Ie),Ie=null)}function Ii(e){const t=new Set(Ee);Ee.clear();for(const n of t)try{n(e)}catch(i){console.error(i)}Ee.size>0?Ie=requestAnimationFrame(Ii):Ie=null}function Ae(e,t,n){if(e===t||e==null||t==null)return e===t;const i=new Set(n),r=Object.keys(e),o=new Set(Object.keys(t));for(const s of r)if(o.delete(s),!i.has(s)&&(!(s in t)||e[s]!==t[s]))return!1;for(const s of Array.from(o))if(!i.has(s))return!1;return!0}function Me(e,t){return e==null||t==null||typeof e=="string"||typeof t=="string"?e===t:e.dark===t.dark&&e.light===t.light}function ln(e,t){const n=e?.theme??P,i=t?.theme??P,r=wn(e),o=wn(t);return Me(n,i)&&Ae(e,t,["theme","parseDiffOptions"])&&Ae(r,o)}function wn(e){if(e!=null&&"parseDiffOptions"in e)return e.parseDiffOptions}function Vt(e,t){return e?.start===t?.start&&e?.end===t?.end&&e?.side===t?.side&&e?.endSide===t?.endSide}function Wt({scrollTop:e,scrollHeight:t,height:n,fitPerfectly:i=!1,fitPerfectlyOverscroll:r=0,overscrollSize:o}){const s=n+o*2,l=i?n+r*2:s;if(t=Math.max(t,l),s>=t||i){const h=Math.max(e-r,0),c=Math.min(e+l,t);return{top:h,bottom:Math.max(c,h)}}let a=e+n/2-s/2,d=a+s;return a<0&&(a=0),d>t&&(d=t),a=Math.floor(Math.max(a,0)),{top:a,bottom:Math.ceil(Math.max(Math.min(d,t),a))}}function lo(){return typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches}function V(e){return{type:"text",value:e}}function R({tagName:e,children:t=[],properties:n={}}){return{type:"element",tagName:e,properties:n,children:t}}function ut({name:e,width:t=16,height:n=16,properties:i}){return R({tagName:"svg",properties:{width:t,height:n,viewBox:"0 0 16 16",...i},children:[R({tagName:"use",properties:{href:`#${e.replace(/^#/,"")}`}})]})}function ho(e){let t=e.children[0];for(;t!=null;){if(t.type==="element"&&t.tagName==="code")return t;"children"in t?t=t.children[0]:t=null}}function we(e){return R({tagName:"div",properties:{"data-gutter":""},children:e})}function Ri(e,t,n,i={}){return R({tagName:"div",properties:{"data-line-type":e,"data-column-number":t,"data-line-index":n,...i},children:t!=null?[R({tagName:"span",properties:{"data-line-number-content":""},children:[V(`${t}`)]})]:void 0})}function G(e,t,n){return R({tagName:"div",properties:{"data-gutter-buffer":t,"data-buffer-size":n,"data-line-type":t==="annotation"?void 0:e,style:t==="annotation"?`grid-row: span ${n};`:`grid-row: span ${n};min-height:calc(${n} * 1lh);`}})}function co(){return R({tagName:"button",properties:{"data-utility-button":"",type:"button"},children:[ut({name:"diffs-icon-plus",properties:{"data-icon":""}})]})}function uo(e,t){return e.lineNumber===t.lineNumber&&e.side===t.side}var Ai=class{mode;options;hoveredLine;hoveredToken;pre;gutterUtilityLine;gutterUtilityContainer;gutterUtilityButton;gutterUtilitySlot;interactiveLinesAttr=!1;interactiveLineNumbersAttr=!1;hasPointerListeners=!1;hasDocumentPointerListeners=!1;selectedRange=null;proposedSelectedRange;renderedSelectionRange;selectionAnchor;queuedSelectionRender;pointerSession={mode:"idle"};constructor(e,t){this.mode=e,this.options=t}setOptions(e){this.options=e}cleanUp(){this.pre?.removeEventListener("click",this.handlePointerClick),this.pre?.removeEventListener("pointerdown",this.handlePointerDown),this.pre?.removeEventListener("pointermove",this.handlePointerMove),this.pre?.removeEventListener("pointerleave",this.handlePointerLeave),this.pre?.removeAttribute("data-interactive-lines"),this.pre?.removeAttribute("data-interactive-line-numbers"),this.pre=void 0,this.gutterUtilityContainer?.remove(),this.gutterUtilityLine=void 0,this.gutterUtilityContainer=void 0,this.gutterUtilityButton=void 0,this.gutterUtilitySlot=void 0,this.clearHoveredLine(),this.clearHoveredToken(),this.detachDocumentPointerListeners(),this.clearPointerSession(),this.queuedSelectionRender!=null&&(cancelAnimationFrame(this.queuedSelectionRender),this.queuedSelectionRender=void 0),this.interactiveLinesAttr=!1,this.interactiveLineNumbersAttr=!1,this.hasPointerListeners=!1}setup(e){this.setSelectionDirty();const{usesCustomGutterUtility:t=!1,enableGutterUtility:n=!1}=this.options;this.pre!==e&&(this.cleanUp(),this.pre=e),n?this.ensureGutterUtilityNode(t):this.gutterUtilityContainer!=null&&(this.gutterUtilityContainer.remove(),this.gutterUtilityLine=void 0,this.gutterUtilityContainer=void 0,this.gutterUtilityButton=void 0,this.gutterUtilitySlot=void 0,this.pointerSession.mode==="gutterSelecting"&&(this.clearPointerSession(),this.detachDocumentPointerListeners())),this.syncPointerListeners(e),this.updateInteractiveLineAttributes(),this.renderSelection(),this.placeUtility()}setSelectionDirty(){this.renderedSelectionRange=void 0}isSelectionDirty(){return this.renderedSelectionRange===null}setSelection(e,t){const n=!(e===this.selectedRange||Vt(e??void 0,this.selectedRange??void 0));!this.isSelectionDirty()&&!n||(this.proposedSelectedRange=void 0,this.selectedRange=e,this.renderSelection(),this.placeUtility(),n&&t?.notify!==!1&&this.notifySelectionCommitted())}getSelection(){return this.selectedRange}getHoveredLine=()=>{const e=this.gutterUtilityLine??this.hoveredLine;if(e!=null){if(this.mode==="diff"&&e.type==="diff-line")return{lineNumber:e.lineNumber,side:e.annotationSide};if(this.mode==="file"&&e.type==="line")return{lineNumber:e.lineNumber}}};handlePointerClick=e=>{const{onHunkExpand:t,onLineClick:n,onLineNumberClick:i,onTokenClick:r,onMergeConflictActionClick:o}=this.options;t==null&&n==null&&i==null&&o==null&&r==null||this.options.onGutterUtilityClick!=null&&Je(e.composedPath())||(de(this.options.__debugPointerEvents,"click","FileDiff.DEBUG.handlePointerClick:",e),this.handlePointerEvent({eventType:"click",event:e}))};handlePointerMove=e=>{if(e.pointerType!=="mouse")return;const{lineHoverHighlight:t="disabled",onLineEnter:n,onLineLeave:i,onTokenEnter:r,onTokenLeave:o,enableGutterUtility:s=!1}=this.options;t==="disabled"&&!s&&n==null&&i==null&&r==null&&o==null||(de(this.options.__debugPointerEvents,"move","FileDiff.DEBUG.handlePointerMove:",e),this.handlePointerEvent({eventType:"move",event:e}))};handlePointerLeave=e=>{const{__debugPointerEvents:t}=this.options;if(de(t,"move","FileDiff.DEBUG.handlePointerLeave: no event"),this.hoveredLine==null&&this.hoveredToken==null){de(t,"move","FileDiff.DEBUG.handlePointerLeave: returned early, no hovered line or token");return}this.hoveredToken!=null&&(this.options.onTokenLeave?.(this.hoveredToken,e),this.clearHoveredToken()),this.hoveredLine!=null&&(this.options.onLineLeave?.({...this.hoveredLine,event:e}),this.clearHoveredLine()),this.placeUtility()};handlePointerEvent({eventType:e,event:t}){const{__debugPointerEvents:n}=this.options,i=t.composedPath();de(n,e,"FileDiff.DEBUG.handlePointerEvent:",{eventType:e,composedPath:i});const r=this.resolvePointerTarget(i);de(n,e,"FileDiff.DEBUG.handlePointerEvent: resolvePointerTarget result:",r);const{onLineClick:o,onLineNumberClick:s,onLineEnter:l,onLineLeave:a,onTokenClick:d,onTokenEnter:h,onTokenLeave:c,onHunkExpand:u,onMergeConflictActionClick:f}=this.options;switch(e){case"move":{const p=wt(r)&&this.hoveredLine?.lineElement===r.lineElement;ht(r)&&this.hoveredToken?.tokenElement===r.tokenElement||(this.hoveredToken!=null&&(c?.(this.hoveredToken,t),this.clearHoveredToken()),ht(r)&&(this.setHoveredToken(this.toTokenEventBaseProps(r)),h?.(this.hoveredToken,t))),p||(this.hoveredLine!=null&&(a?.({...this.hoveredLine,event:t}),this.clearHoveredLine()),wt(r)?(this.setHoveredLine(this.toEventBaseProps(r)),this.placeUtility(),l?.({...this.hoveredLine,event:t})):this.placeUtility());break}case"click":{if(r==null)break;if(go(r)&&f!=null){f(r);break}if(po(r)&&u!=null){u(r.hunkIndex,r.all||t.shiftKey?"both":r.direction,r.all||t.shiftKey?Number.POSITIVE_INFINITY:void 0);break}if(!wt(r))break;ht(r)&&d!=null&&d(this.toTokenEventBaseProps(r),t);const p=this.toEventBaseProps(r);s!=null&&r.numberColumn?s({...p,event:t}):o?.({...p,event:t});break}}}syncPointerListeners(e){const{__debugPointerEvents:t,lineHoverHighlight:n="disabled",onLineClick:i,onLineNumberClick:r,onLineEnter:o,onLineLeave:s,onTokenClick:l,onTokenEnter:a,onTokenLeave:d,onHunkExpand:h,onMergeConflictActionClick:c,enableGutterUtility:u=!1,enableLineSelection:f=!1,onGutterUtilityClick:p}=this.options,m=p!=null,y=n!=="disabled"||i!=null||r!=null||o!=null||s!=null||l!=null||a!=null||d!=null||h!=null||c!=null||u||f||m;y&&!this.hasPointerListeners?(e.addEventListener("click",this.handlePointerClick),e.addEventListener("pointerdown",this.handlePointerDown),e.addEventListener("pointermove",this.handlePointerMove),e.addEventListener("pointerleave",this.handlePointerLeave),this.hasPointerListeners=!0,de(t,"click","FileDiff.DEBUG.attachEventListeners: Attaching click events for:",(()=>{const C=[];return(t==="both"||t==="click")&&(i!=null&&C.push("onLineClick"),r!=null&&C.push("onLineNumberClick"),h!=null&&C.push("expandable hunk separators"),c!=null&&C.push("merge conflict actions")),C})()),de(t,"move","FileDiff.DEBUG.attachEventListeners: Attaching pointer move event"),de(t,"move","FileDiff.DEBUG.attachEventListeners: Attaching pointer leave event")):!y&&this.hasPointerListeners&&(e.removeEventListener("click",this.handlePointerClick),e.removeEventListener("pointerdown",this.handlePointerDown),e.removeEventListener("pointermove",this.handlePointerMove),e.removeEventListener("pointerleave",this.handlePointerLeave),this.hasPointerListeners=!1);const v=this.pointerSession.mode==="selecting"||this.pointerSession.mode==="pendingSingleLineUnselect",g=this.pointerSession.mode==="gutterSelecting";(!f&&v||!m&&g)&&(this.clearPointerSession(),this.detachDocumentPointerListeners(),this.selectionAnchor=void 0,this.clearPendingSingleLineState())}updateInteractiveLineAttributes(){if(this.pre==null)return;const{onLineClick:e,onLineNumberClick:t,enableLineSelection:n=!1}=this.options,i=e!=null,r=t!=null||n;i&&!this.interactiveLinesAttr?(this.pre.setAttribute("data-interactive-lines",""),this.interactiveLinesAttr=!0):!i&&this.interactiveLinesAttr&&(this.pre.removeAttribute("data-interactive-lines"),this.interactiveLinesAttr=!1),r&&!this.interactiveLineNumbersAttr?(this.pre.setAttribute("data-interactive-line-numbers",""),this.interactiveLineNumbersAttr=!0):!r&&this.interactiveLineNumbersAttr&&(this.pre.removeAttribute("data-interactive-line-numbers"),this.interactiveLineNumbersAttr=!1)}handlePointerDown=e=>{if(e.pointerType==="mouse"&&e.button!==0||this.pre==null||this.pointerSession.mode!=="idle")return;const t=e.composedPath();Je(t)&&this.options.onGutterUtilityClick!=null?this.startGutterSelectionFromPointerDown(e):(e.pointerType!=="mouse"&&this.revealUtilityFromGutterPath(t),this.startLineSelectionFromPointerDown(e))};startLineSelectionFromPointerDown(e){const{enableLineSelection:t=!1}=this.options;if(!t)return;const n=this.resolveSelectionInfo(e,{source:"event-path",requireNumberColumn:!0});if(n==null)return;const{pre:i}=this;if(i==null)return;const{lineNumber:r,eventSide:o,lineIndex:s}=n;if(e.shiftKey&&this.selectedRange!=null){const l=this.getIndexesFromSelection(this.selectedRange,i.getAttribute("data-diff-type")==="split");if(l==null)return;const a=l.start<=l.end?s>=l.start:s<=l.end;this.selectionAnchor={lineNumber:a?this.selectedRange.start:this.selectedRange.end,side:a?this.selectedRange.side:this.selectedRange.endSide??this.selectedRange.side},this.updateSelection(r,o,!1),this.notifySelectionStart(this.getCurrentSelectionRange()),this.pointerSession={mode:"selecting",pointerId:e.pointerId},this.attachDocumentPointerListeners();return}if(this.selectedRange?.start===r&&this.selectedRange?.end===r){const l={lineNumber:r,side:o};this.selectionAnchor=l,this.pointerSession={mode:"pendingSingleLineUnselect",pointerId:e.pointerId,anchor:l,pending:l},this.attachDocumentPointerListeners();return}this.options.controlledSelection===!0?this.proposedSelectedRange=null:this.selectedRange=null,this.placeUtility(),this.selectionAnchor={lineNumber:r,side:o},this.updateSelection(r,o,!1),this.notifySelectionStart(this.getCurrentSelectionRange()),this.pointerSession={mode:"selecting",pointerId:e.pointerId},this.attachDocumentPointerListeners()}startGutterSelectionFromPointerDown(e){const{enableLineSelection:t=!1,onGutterUtilityClick:n}=this.options;if(n==null)return;const i=this.currentSelectionEnds(),r=i?.bottom??this.resolveSelectionPoint(e,{source:"event-path",excludeUtility:!1}),o=i?.top??r;r==null||o==null||(e.preventDefault(),e.stopPropagation(),this.pointerSession={mode:"gutterSelecting",pointerId:e.pointerId,anchor:o,current:r},t&&(this.selectionAnchor={lineNumber:o.lineNumber,side:o.side},this.updateSelection(r.lineNumber,r.side,!1),this.notifySelectionStart(this.getCurrentSelectionRange())),this.attachDocumentPointerListeners())}handleDocumentPointerMove=e=>{const{enableLineSelection:t=!1}=this.options;switch(this.pointerSession.mode){case"idle":return;case"gutterSelecting":{if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault();const n=this.resolveSelectionPoint(e,{source:"coordinates-first"});if(n==null)return;this.pointerSession.current=n,t===!0&&this.updateSelection(n.lineNumber,n.side);return}case"selecting":{if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault();const n=this.resolveSelectionInfo(e,{source:"coordinates-first",requireNumberColumn:!1});if(n==null||this.selectionAnchor==null)return;this.updateSelection(n.lineNumber,n.eventSide);return}case"pendingSingleLineUnselect":{if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault();const n=this.resolveSelectionInfo(e,{source:"coordinates-first",requireNumberColumn:!1});if(n==null||this.selectionAnchor==null)return;const i={lineNumber:n.lineNumber,side:n.eventSide};if(uo(this.pointerSession.pending,i))return;this.updateSelection(n.lineNumber,n.eventSide,!1),this.notifySelectionStart(this.getCurrentSelectionRange()),this.notifySelectionChangeDelta(),this.pointerSession={mode:"selecting",pointerId:e.pointerId};return}}};handleDocumentPointerUp=e=>{const{enableLineSelection:t=!1,onGutterUtilityClick:n}=this.options;switch(this.pointerSession.mode){case"idle":return;case"gutterSelecting":{if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault();const i=this.resolveSelectionPoint(e,{source:"coordinates-first"});i!=null&&(this.pointerSession.current=i,t&&this.updateSelection(i.lineNumber,i.side)),n?.(this.buildSelectedLineRange(this.pointerSession.anchor,this.pointerSession.current)),this.selectionAnchor=void 0,t&&(this.notifySelectionEnd(this.getCurrentSelectionRange()),this.notifySelectionCommitted(),this.clearProposedSelection()),this.clearPointerSession(),this.detachDocumentPointerListeners();return}case"pendingSingleLineUnselect":if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault(),this.updateSelection(null,void 0,!1),this.selectionAnchor=void 0,this.clearPendingSingleLineState(),this.detachDocumentPointerListeners(),this.notifySelectionEnd(this.getCurrentSelectionRange()),this.notifySelectionCommitted(),this.clearProposedSelection();return;case"selecting":if(e.pointerId!==this.pointerSession.pointerId)return;e.preventDefault(),this.selectionAnchor=void 0,this.detachDocumentPointerListeners(),this.clearPointerSession(),this.notifySelectionEnd(this.getCurrentSelectionRange()),this.notifySelectionCommitted(),this.clearProposedSelection()}};handleDocumentPointerCancel=e=>{switch(this.pointerSession.mode){case"idle":return;case"gutterSelecting":case"selecting":case"pendingSingleLineUnselect":if("pointerId"in this.pointerSession&&e.pointerId!==this.pointerSession.pointerId)return;this.selectionAnchor=void 0,this.clearProposedSelection(),this.clearPendingSingleLineState(),this.clearPointerSession(),this.detachDocumentPointerListeners()}};clearHoveredLine(){this.hoveredLine!=null&&(this.hoveredLine.lineElement.removeAttribute("data-hovered"),this.hoveredLine.numberElement.removeAttribute("data-hovered"),this.hoveredLine=void 0)}setHoveredLine(e){const{lineHoverHighlight:t="disabled"}=this.options;this.hoveredLine!=null&&this.clearHoveredLine(),this.hoveredLine=e,t!=="disabled"&&((t==="both"||t==="line")&&this.hoveredLine.lineElement.setAttribute("data-hovered",""),(t==="both"||t==="number")&&this.hoveredLine.numberElement.setAttribute("data-hovered",""))}clearHoveredToken(){this.hoveredToken!=null&&(this.hoveredToken=void 0)}setHoveredToken(e){this.hoveredToken!=null&&this.clearHoveredToken(),this.hoveredToken=e}ensureGutterUtilityNode(e){if(this.gutterUtilityContainer==null&&(this.gutterUtilityContainer=document.createElement("div"),this.gutterUtilityContainer.setAttribute("data-gutter-utility-slot","")),e)this.gutterUtilityButton!=null&&(this.gutterUtilityButton.remove(),this.gutterUtilityButton=void 0),this.gutterUtilitySlot==null&&(this.gutterUtilitySlot=document.createElement("slot"),this.gutterUtilitySlot.name="gutter-utility-slot"),this.gutterUtilitySlot.parentNode!==this.gutterUtilityContainer&&this.gutterUtilityContainer.replaceChildren(this.gutterUtilitySlot);else{if(this.gutterUtilitySlot?.remove(),this.gutterUtilitySlot=void 0,this.gutterUtilityButton==null){const t=document.createElement("div");t.innerHTML=fe(co());const n=t.firstElementChild;if(!(n instanceof HTMLButtonElement))throw new Error("InteractionManager.ensureGutterUtilityNode: Node element should be a button");n.remove(),this.gutterUtilityButton=n}this.gutterUtilityButton.parentNode!==this.gutterUtilityContainer&&this.gutterUtilityContainer.replaceChildren(this.gutterUtilityButton)}}revealUtilityFromGutterPath(e){if(this.placeUtilityFromSelection())return;const t=this.resolvePointerTarget(e);Be(t)&&t.numberColumn&&this.showUtilityOnLine(this.toEventBaseProps(t))}placeUtility(){if(!this.placeUtilityFromSelection()){if(this.hoveredLine!=null){this.showUtilityOnLine(this.hoveredLine);return}this.hideUtility()}}placeUtilityFromSelection(){const e=this.currentSelectionEnds();if(e==null)return!1;const t=this.targetForSelectionPoint(e.bottom);return t==null?this.hideUtility():this.showUtilityOnLine(this.toEventBaseProps(t)),!0}showUtilityOnLine(e){this.gutterUtilityContainer!=null&&(this.gutterUtilityLine=e,e.numberElement.appendChild(this.gutterUtilityContainer))}hideUtility(){this.gutterUtilityContainer?.remove(),this.gutterUtilityLine=void 0}currentSelectionEnds(){const e=this.getCurrentSelectionRange();return e==null?void 0:this.selectionEnds(e)}selectionEnds(e){const t={lineNumber:e.start,side:e.side},n={lineNumber:e.end,side:e.endSide??e.side},i=this.selectionPointRowIndex(t),r=this.selectionPointRowIndex(n);if(!(i==null||r==null))return i>r?{top:n,bottom:t}:{top:t,bottom:n}}selectionPointRowIndex(e){const t=this.getLineIndex(e.lineNumber,e.side);if(t!=null)return this.isSplitDiff()?t[1]:t[0]}targetForSelectionPoint(e){if(this.pre==null)return;const t=this.getLineIndex(e.lineNumber,e.side);if(t==null)return;const n=this.mode==="diff"?`${t[0]},${t[1]}`:`${t[0]}`,i=this.pre.querySelectorAll(`[data-column-number="${e.lineNumber}"][data-line-index="${n}"]`);for(const r of i){if(!(r instanceof HTMLElement))continue;const o=this.resolvePointerTarget(Qe(r));if(Be(o)&&!(this.mode==="diff"&&e.side!=null&&o.side!==e.side))return o}}attachDocumentPointerListeners(){this.hasDocumentPointerListeners||(document.addEventListener("pointermove",this.handleDocumentPointerMove),document.addEventListener("pointerup",this.handleDocumentPointerUp),document.addEventListener("pointercancel",this.handleDocumentPointerCancel),this.hasDocumentPointerListeners=!0)}detachDocumentPointerListeners(){this.hasDocumentPointerListeners&&(document.removeEventListener("pointermove",this.handleDocumentPointerMove),document.removeEventListener("pointerup",this.handleDocumentPointerUp),document.removeEventListener("pointercancel",this.handleDocumentPointerCancel),this.hasDocumentPointerListeners=!1)}clearPointerSession(){this.pointerSession={mode:"idle"}}clearPendingSingleLineState(){this.pointerSession.mode==="pendingSingleLineUnselect"&&(this.pointerSession={mode:"idle"})}selectionInfoFromPath(e,t){const n=this.resolvePointerTarget(e);if(Be(n)&&!(t&&!n.numberColumn)&&n.splitLineIndex!=null)return{lineIndex:n.splitLineIndex,lineNumber:n.lineNumber,eventSide:this.mode==="diff"?n.side:void 0}}resolveSelectionInfo(e,t){const n=this.resolveSelectionPath(e,t);return n!=null?this.selectionInfoFromPath(n,t.requireNumberColumn):void 0}selectionPointFromPath(e){const t=this.resolvePointerTarget(e);if(Be(t))return{lineNumber:t.lineNumber,side:this.mode==="diff"?t.side:void 0}}resolveSelectionPoint(e,t){const n=this.resolveSelectionPath(e,t);return n!=null?this.selectionPointFromPath(n):void 0}resolveSelectionPath(e,t){const n=t.excludeUtility!==!1;switch(t.source){case"event-path":return this.pathFromEventPath(e.composedPath(),n);case"coordinates-first":{const i=this.pathFromCoordinates(e,n);return i!==void 0?i??void 0:this.pathFromEventPath(e.composedPath(),n)}}}pathFromCoordinates(e,t){const n=this.hitTest(e);if(n!==void 0)return n===null?null:this.pathFromElement(n,t)??null}pathFromEventPath(e,t){if(!(t&&Je(e))){for(const n of e)if(n instanceof Element)return this.pathFromElement(n,t)}}pathFromElement(e,t){const n=Qe(e);if(t&&Je(n))return;const i=bo(e);return i!=null?Qe(i):this.pathFromAnnotationSlot(e)}pathFromAnnotationSlot(e){const t=Co(vo(e));if(t==null)return;const n=this.targetForSelectionPoint(t);return n!=null?Qe(n.lineElement):void 0}hitTest(e){if(!Number.isFinite(e.clientX)||!Number.isFinite(e.clientY))return;const t=this.pre?.getRootNode(),n=En(t)?t:En(document)?document:void 0;if(n!=null)return n.elementFromPoint(e.clientX,e.clientY)}getLineIndex(e,t){const{getLineIndex:n}=this.options;return n!=null?n(e,t):[e-1,e-1]}getCurrentSelectionRange(){return this.proposedSelectedRange!==void 0?this.proposedSelectedRange:this.selectedRange}clearProposedSelection(){this.proposedSelectedRange=void 0}updateSelection(e,t,n=!0){const i=this.getCurrentSelectionRange();let r;if(e==null)r=null;else{const o=this.selectionAnchor?.side??t,s=this.selectionAnchor?.lineNumber??e;r=this.buildSelectionRange(s,e,o,t)}Vt(i??void 0,r??void 0)||(this.options.controlledSelection===!0?this.proposedSelectedRange=r:(this.selectedRange=r,this.queuedSelectionRender??=requestAnimationFrame(this.renderSelection)),this.placeUtility(),n&&this.notifySelectionChangeDelta())}getIndexesFromSelection(e,t){if(this.pre==null)return;const n=this.getLineIndex(e.start,e.side),i=this.getLineIndex(e.end,e.endSide??e.side);return n!=null&&i!=null?{start:t?n[1]:n[0],end:t?i[1]:i[0]}:void 0}renderSelection=()=>{if(this.queuedSelectionRender!=null&&(cancelAnimationFrame(this.queuedSelectionRender),this.queuedSelectionRender=void 0),this.pre==null||this.renderedSelectionRange===this.selectedRange)return;const e=this.pre.querySelectorAll("[data-selected-line]");for(const l of e)l.removeAttribute("data-selected-line");if(this.renderedSelectionRange=this.selectedRange,this.selectedRange==null)return;const{children:t}=this.pre;if(t.length===0)return;if(t.length>2)throw console.error(t),new Error("InteractionManager.renderSelection: Somehow there are more than 2 code elements...");const n=this.pre.getAttribute("data-diff-type")==="split",i=this.getIndexesFromSelection(this.selectedRange,n);if(i==null)throw console.error({rowRange:i,selectedRange:this.selectedRange}),new Error("InteractionManager.renderSelection: No valid rowRange");const r=i.start===i.end,o=Math.min(i.start,i.end),s=Math.max(i.start,i.end);for(const l of t){const[a,d]=l.children,h=d.children.length;if(h!==a.children.length)throw new Error("InteractionManager.renderSelection: gutter and content children dont match, something is wrong");for(let c=0;cs)break;if(p==null||pNumber.parseInt(i,10)).filter(i=>!Number.isNaN(i));if(t&&n.length===2)return n[1];if(!t)return n[0]}};function qe({enableTokenInteractionsOnWhitespace:e,enableGutterUtility:t,lineHoverHighlight:n,onGutterUtilityClick:i,onLineClick:r,onLineEnter:o,onLineLeave:s,onLineNumberClick:l,onTokenClick:a,onTokenEnter:d,onTokenLeave:h,renderGutterUtility:c,__debugPointerEvents:u,enableLineSelection:f,controlledSelection:p,onLineSelected:m,onLineSelectionStart:y,onLineSelectionChange:v,onLineSelectionEnd:g},C,b,x){return{enableTokenInteractionsOnWhitespace:e,enableGutterUtility:fo({enableGutterUtility:t,renderGutterUtility:c,onGutterUtilityClick:i}),usesCustomGutterUtility:c!=null,lineHoverHighlight:n,onGutterUtilityClick:i,onHunkExpand:C,onMergeConflictActionClick:x,onLineClick:r,onLineEnter:o,onLineLeave:s,onLineNumberClick:l,onTokenClick:a,onTokenEnter:d,onTokenLeave:h,__debugPointerEvents:u,enableLineSelection:f,controlledSelection:p,onLineSelected:m,onLineSelectionStart:y,onLineSelectionChange:v,onLineSelectionEnd:g,getLineIndex:b}}function fo({enableGutterUtility:e,renderGutterUtility:t,onGutterUtilityClick:n}){if(n!=null&&t!=null)throw new Error("Cannot use both 'onGutterUtilityClick' and 'renderGutterUtility'. Use only one gutter utility API.");return e??!1}function Be(e){return e!=null&&"kind"in e&&e.kind==="line"}function ht(e){return e!=null&&"kind"in e&&e.kind==="token"}function wt(e){return Be(e)||ht(e)}function po(e){return"type"in e&&e.type==="line-info"}function go(e){return"kind"in e&&e.kind==="merge-conflict-action"}function mo(e){return e==="current"||e==="incoming"||e==="both"}function Tn(e,t){const n=e?.querySelector(t);return n instanceof HTMLElement?n:void 0}function Qe(e){const t=[];let n=e;for(;n!=null;)t.push(n),n=n.parentNode;return t}function bo(e){const t=e.closest("[data-line], [data-column-number]");if(t instanceof HTMLElement)return t;const n=e.closest('[data-line-annotation], [data-gutter-buffer="annotation"]');if(!(n instanceof HTMLElement))return;const i=n.previousElementSibling;return i instanceof HTMLElement&&(i.hasAttribute("data-line")||i.hasAttribute("data-column-number"))?i:void 0}function vo(e){const t=e.closest('[slot^="annotation-"]');if(t instanceof HTMLElement)return t.getAttribute("slot")??void 0;if(e instanceof HTMLElement){const n=e.getAttribute("name")??void 0;return n!=null&&n.startsWith("annotation-")?n:void 0}}function Co(e){if(e==null)return;const t=/^annotation-(?:(additions|deletions)-)?(\d+)$/.exec(e);if(t==null)return;const n=Number.parseInt(t[2],10);if(!(!Number.isFinite(n)||n<=0))return{lineNumber:n,side:t[1]}}function En(e){return e!=null&&typeof e.elementFromPoint=="function"}function In(e,t){switch(e){case"change-deletion":return"deletions";case"change-addition":return"additions";default:return t.hasAttribute("data-deletions")?"deletions":"additions"}}function Rn(e){const t=e.getAttribute("data-line-type");if(t!=null)switch(t){case"change-deletion":case"change-addition":case"context":case"context-expanded":return t;default:return}}function Je(e){for(const t of e)if(t instanceof HTMLElement&&(t.hasAttribute("data-utility-button")||t.hasAttribute("data-gutter-utility-slot")||t.getAttribute("slot")==="gutter-utility-slot"||t.getAttribute("name")==="gutter-utility-slot"))return!0;return!1}function de(e="none",t,...n){switch(e){case"none":return;case"both":break;case"click":if(t!=="click")return;break;case"move":if(t!=="move")return;break}console.log(...n)}var Hi=class ce{static resizeObserver;static managersByElement=new Map;static getResizeObserver(){const t=ce.resizeObserver??new ResizeObserver(ce.handleSharedResizeEntries);return ce.resizeObserver=t,t}static handleSharedResizeEntries(t){const n=new Map;for(const i of t){const r=ce.managersByElement.get(i.target);if(r==null)continue;const o=n.get(r);o==null?n.set(r,[i]):o.push(i)}for(const[i,r]of n)i.handleResizeEntries(r)}observedNodes=new Map;setup(t,n){const i=new Set;let r=0;const o=new Map(this.observedNodes);this.observedNodes.clear();for(const s of t.children){if(r===2)break;const l=(()=>{if(s instanceof HTMLElement&&s.tagName==="CODE")return s})();if(l==null)continue;r++;let a=o.get(l);if(a!=null&&a.type!=="code")throw new Error("ResizeManager.setup: somehow a code node is being used for an annotation, should be impossible");let d=l.firstElementChild;d instanceof HTMLElement||(d=null),a!=null?(this.observedNodes.set(l,a),o.delete(l),a.numberElement!==d?(a.numberElement!=null&&(this.unobserve(a.numberElement),o.delete(a.numberElement)),d!=null&&(this.observe(d),o.delete(d),this.observedNodes.set(d,a)),a.numberElement=d,a.numberWidth=0):a.numberElement!=null?(o.delete(a.numberElement),this.observedNodes.set(a.numberElement,a)):a.numberWidth=0):(a={type:"code",codeElement:l,numberElement:d,codeWidth:"auto",numberWidth:0},this.observedNodes.set(l,a),this.observe(l),d!=null&&(this.observedNodes.set(d,a),this.observe(d)))}if(r>1&&!n){const s=t.querySelectorAll('[data-line-annotation*=","]'),l=new Map;for(const a of s){if(!(a instanceof HTMLElement))continue;const d=a.getAttribute("data-line-annotation")??"";if(!/^-?\d+,-?\d+$/.test(d)){console.error("DiffFileRenderer.setupResizeObserver: Invalid element or annotation",{lineAnnotation:d,element:a});continue}let h=l.get(d);h==null&&(h=[],l.set(d,h)),h.push(a)}for(const[a,d]of l){if(d.length!==2){console.error("DiffFileRenderer.setupResizeObserver: Bad Pair",a,d);continue}const[h,c]=d,u=h.firstElementChild,f=c.firstElementChild;if(!(h instanceof HTMLElement)||!(c instanceof HTMLElement)||!(u instanceof HTMLElement)||!(f instanceof HTMLElement))continue;let p=o.get(u);if(p!=null){this.observedNodes.set(u,p),this.observedNodes.set(f,p),o.delete(u),o.delete(f);continue}const m=u.getBoundingClientRect().height,y=f.getBoundingClientRect().height;p={type:"annotations",column1:{container:h,child:u,childHeight:m},column2:{container:c,child:f,childHeight:y},currentHeight:"auto"},i.add({child1:u,child2:f,item:p,newHeight:Math.max(m,y)})}for(const a of i)this.applyNewHeight(a.item,a.newHeight),this.observedNodes.set(a.child1,a.item),this.observedNodes.set(a.child2,a.item),this.observe(a.child1),this.observe(a.child2);i.clear()}for(const[s,l]of o)this.unobserve(s),l.type==="code"?xo(l):Lo(l);o.clear()}cleanUp(){for(const t of this.observedNodes.keys())this.unobserve(t);this.observedNodes.clear()}observe(t){const{managersByElement:n}=ce,i=n.get(t);if(i!==this){if(i!=null&&i!==this)throw new Error("ResizeManager.observe: element is already owned by another ResizeManager");n.set(t,this),ce.getResizeObserver().observe(t)}}unobserve(t){const{managersByElement:n,resizeObserver:i}=ce,r=n.get(t);if(r!=null){if(r!==this)throw new Error("ResizeManager.unobserve: element is owned by another ResizeManager");n.delete(t),i?.unobserve(t),i!=null&&n.size===0&&(i.disconnect(),ce.resizeObserver=void 0)}}handleResizeEntries(t){const n=new Map,i=new Set;for(const r of t){const{target:o,borderBoxSize:s,contentBoxSize:l}=r;if(!(o instanceof HTMLElement)){console.error("ResizeManager.handleResizeEntries: Invalid element for ResizeObserver",r);continue}const a=this.observedNodes.get(o);if(a==null){console.error("ResizeManager.handleResizeEntries: Not a valid observed node",r);continue}if(a.type==="annotations"){const d=(()=>{if(o===a.column1.child)return a.column1;if(o===a.column2.child)return a.column2})();if(d==null){console.error("ResizeManager.handleResizeEntries: Couldn't find a column for",{item:a,target:o});continue}d.childHeight=s[0].blockSize,i.add(a)}else if(a.type==="code"){const d=n.get(a)??{},h=l[0].inlineSize;o===a.codeElement?d.codeInlineSize=h:o===a.numberElement&&(d.numberInlineSize=h),n.set(a,d)}}this.applyAnnotationUpdates(i),i.clear(),this.applyColumnUpdates(n),n.clear()}applyAnnotationUpdates(t){for(const n of t)this.applyNewHeight(n,Math.max(n.column1.childHeight,n.column2.childHeight))}applyColumnUpdates=t=>{for(const[n,i]of t){const r=i.codeInlineSize!=null?So(i.codeInlineSize):n.codeWidth,o=i.numberInlineSize!=null?yo(i.numberInlineSize):n.numberWidth,s=r!==n.codeWidth,l=o!==n.numberWidth;if(!(!s&&!l)&&(n.codeWidth=r,n.numberWidth=o,s&&n.codeElement.style.setProperty("--diffs-column-width",`${typeof r=="number"?`${r}px`:"auto"}`),l&&n.codeElement.style.setProperty("--diffs-column-number-width",`${o===0?"auto":`${o}px`}`),s||l&&r!=="auto")){const a=typeof r=="number"?Math.max(r-o,0):0;n.codeElement.style.setProperty("--diffs-column-content-width",`${a>0?`${a}px`:"auto"}`)}}};applyNewHeight(t,n){n!==t.currentHeight&&(t.currentHeight=Math.max(n,0),t.column1.container.style.setProperty("--diffs-annotation-min-height",`${t.currentHeight}px`),t.column2.container.style.setProperty("--diffs-annotation-min-height",`${t.currentHeight}px`))}};function So(e){const t=Math.max(Math.floor(e),0);return t===0?"auto":t}function yo(e){return Math.max(Math.ceil(e),0)}function xo(e){e.codeElement.isConnected&&(e.codeElement.style.removeProperty("--diffs-column-content-width"),e.codeElement.style.removeProperty("--diffs-column-number-width"),e.codeElement.style.removeProperty("--diffs-column-width"))}function Lo(e){e.column1.container.isConnected&&e.column1.container.style.removeProperty("--diffs-annotation-min-height"),e.column2.container.isConnected&&e.column2.container.style.removeProperty("--diffs-annotation-min-height")}const Ce=new Map,Tt=new Map,Gt=new Map,ft=new Set;function pt(e){for(const t of Array.isArray(e)?e:[e])if(!(t==="text"||t==="ansi")&&!ft.has(t))return!1;return!0}function An(e,t){e=Array.isArray(e)?e:[e];for(const n of e){if(ft.has(n.name))continue;let i=Ce.get(n.name);i==null&&(i=n,Ce.set(n.name,i)),ft.add(i.name),t.loadLanguageSync(i.data)}}function ko(){Ce.clear(),ft.clear()}function Mi(){return typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope}async function Di(e){if(Mi())throw new Error(`resolveLanguage("${e}") cannot be called from a worker context. Languages must be pre-resolved on the main thread and passed to the worker via the resolvedLanguages parameter.`);const t=Tt.get(e);if(t!=null)return t;try{let n=Gt.get(e);if(n==null&&Object.prototype.hasOwnProperty.call(Sn,e)&&(n=Sn[e]),n==null)throw new Error(`resolveLanguage: "${e}" not found in bundled or custom languages`);const i=n().then(({default:r})=>{const o={name:e,data:r};return Ce.has(e)||Ce.set(e,o),o});return Tt.set(e,i),await i}finally{Tt.delete(e)}}function Pi(e){return Ce.get(e)??Di(e)}const gt=new Set;function Hn(e,t){e=Array.isArray(e)?e:[e];for(let n of e){let i;if(typeof n=="string"){if(i=Y.getResolvedTheme(n),i==null)throw new Error(`loadResolvedThemes: ${n} is not resolved, you must resolve it before calling loadResolvedThemes`)}else i=n,n=n.name,Y.getResolvedTheme(n)==null&&Y.seedResolvedTheme(n,i);gt.has(n)||(gt.add(n),t.loadThemeSync(i))}}function wo(){Y.clearResolvedThemes(),gt.clear()}function Oi(e){if(Mi())throw new Error(`Theme "${e}" cannot be resolved from a worker context. Themes must be pre-resolved on the main thread and passed to the worker via the resolvedLanguages parameter.`);if(Y.hasRegisteredTheme(e))return;const t=Hr.getTheme(e);if(t!=null){Y.registerThemeIfAbsent(t.name,t.load);return}throw new Error(`No valid theme loader registered for "${e}"`)}function Ni(e,t){if(t.name!==e)throw new Error(`resolvedTheme: themeName: ${e} does not match theme.name: ${t.name}`)}async function To(e){Oi(e);const t=await Y.resolveTheme(e);return Ni(e,t),t}function Eo(e){return Y.getResolvedTheme(e)??To(e)}let $;async function St({themes:e,langs:t,preferredHighlighter:n="shiki-js"}){$??=wr({themes:[],langs:["text"],engine:n==="shiki-wasm"?Tr(Mr(()=>import("./wasm-CG6Dc4jp.js"),[])):Er()});const i=Io($)?await $:$;$=i;const r=[];for(const s of t){if(s==="text"||s==="ansi")continue;const l=Pi(s);"then"in l?r.push(l):An(l,i)}const o=[];for(const s of e){const l=Eo(s);"then"in l?o.push(l):Hn(l,$)}return(r.length>0||o.length>0)&&await Promise.all([Promise.all(r).then(s=>{An(s,i)}),Promise.all(o).then(s=>{Hn(s,i)})]),i}function vl(e=$){return e!=null&&!("then"in e)}function Fi(){if($!=null&&!("then"in $))return $}function Io(e=$){return e!=null&&"then"in e}function Cl(e=$){return e==null}async function Sl(e){await St(e)}async function yl(){$!=null&&((await $).dispose(),ko(),wo(),$=void 0)}for(const e of Dr.getThemes())Y.registerThemeIfAbsent(e.name,e.load);function dn(e=P){const t=[];return typeof e=="string"?t.push(e):(t.push(e.dark),t.push(e.light)),t}function We(e){for(const t of dn(e))if(!gt.has(t))return!1;return!0}function Ro(e){return Y.hasResolvedThemes(e)}function Oe(e,t){return Me(e.theme,t.theme)&&e.useTokenTransformer===t.useTokenTransformer&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength}function se(e,t){return e?.cacheKey===t?.cacheKey&&e?.contents===t?.contents&&e?.name===t?.name&&e?.lang===t?.lang}function yt(e,t){return e==null||t==null?e===t:e.startingLine===t.startingLine&&e.totalLines===t.totalLines&&e.bufferBefore===t.bufferBefore&&e.bufferAfter===t.bufferAfter}function jt(e){return R({tagName:"div",children:[R({tagName:"div",children:e.annotations?.map(t=>R({tagName:"slot",properties:{name:t}})),properties:{"data-annotation-content":""}})],properties:{"data-line-annotation":`${e.hunkIndex},${e.lineIndex}`}})}function Ao(e){switch(e){case"file":return"diffs-icon-file-code";case"change":return"diffs-icon-symbol-modified";case"new":return"diffs-icon-symbol-added";case"deleted":return"diffs-icon-symbol-deleted";case"rename-pure":case"rename-changed":return"diffs-icon-symbol-moved"}}function zi({fileOrDiff:e,mode:t,stickyHeader:n}){const i="type"in e?e:void 0,r={"data-diffs-header":t,"data-change-type":i?.type,"data-sticky":n?"":void 0};return R({tagName:"div",children:[t==="custom"?R({tagName:"slot",properties:{name:sn}}):Ho({name:e.name,prevName:"prevName"in e?e.prevName:void 0,iconType:i?.type??"file"}),...t==="custom"?[]:[Mo(i)]],properties:r})}function Ho({name:e,prevName:t,iconType:n}){const i=[R({tagName:"slot",properties:{name:rn}}),ut({name:Ao(n),properties:{"data-change-icon":n}})];return t!=null&&(i.push(R({tagName:"div",children:[R({tagName:"bdi",children:[V(t)]})],properties:{"data-prev-name":""}})),i.push(ut({name:"diffs-icon-arrow-right-short",properties:{"data-rename-icon":""}}))),i.push(R({tagName:"div",children:[R({tagName:"bdi",children:[V(e)]})],properties:{"data-title":""}})),R({tagName:"div",children:i,properties:{"data-header-content":""}})}function Mo(e){const t=[];if(e!=null){let n=0,i=0;for(const r of e.hunks)n+=r.additionLines,i+=r.deletionLines;(i>0||n===0)&&t.push(R({tagName:"span",children:[V(`-${i}`)],properties:{"data-deletions-count":""}})),(n>0||i===0)&&t.push(R({tagName:"span",children:[V(`+${n}`)],properties:{"data-additions-count":""}}))}return t.push(R({tagName:"slot",properties:{name:on}})),R({tagName:"div",children:t,properties:{"data-metadata":""}})}function Ui(e){return R({tagName:"pre",properties:Do(e)})}function Do({diffIndicators:e,disableBackground:t,disableLineNumbers:n,overflow:i,split:r,totalLines:o,type:s,customProperties:l}){return{...l,"data-diff":s==="diff"?"":void 0,"data-file":s==="file"?"":void 0,"data-diff-type":s==="diff"?r?"split":"single":void 0,"data-overflow":i,"data-disable-line-numbers":n?"":void 0,"data-background":t?void 0:"","data-indicators":e==="bars"||e==="classic"?e:void 0,style:`--diffs-min-number-column-width-default:${`${o}`.length}ch;`}}const J=new Map;let mt=0;const Ne={"1c":"1c",abap:"abap",as:"actionscript-3",ada:"ada",adb:"ada",ads:"ada",adoc:"asciidoc",asciidoc:"asciidoc","component.html":"angular-html","component.ts":"angular-ts",conf:"nginx",htaccess:"apache",cls:"tex",trigger:"apex",apl:"apl",applescript:"applescript",scpt:"applescript",ara:"ara",asm:"asm",s:"riscv",astro:"astro",awk:"awk",bal:"ballerina",sh:"zsh",bash:"zsh",bat:"cmd",cmd:"cmd",be:"berry",beancount:"beancount",bib:"bibtex",bicep:"bicep","blade.php":"blade",bsl:"bsl",c:"c",h:"objective-cpp",cs:"csharp",cpp:"cpp",hpp:"cpp",cc:"cpp",cxx:"cpp",hh:"cpp",cdc:"cdc",cairo:"cairo",clar:"clarity",clj:"clojure",cljs:"clojure",cljc:"clojure",soy:"soy",cmake:"cmake","CMakeLists.txt":"cmake",cob:"cobol",cbl:"cobol",cobol:"cobol",CODEOWNERS:"codeowners",ql:"ql",coffee:"coffeescript",lisp:"lisp",cl:"lisp",lsp:"lisp",log:"log",v:"verilog",cql:"cql",cr:"crystal",css:"css",csv:"csv",cue:"cue",cypher:"cypher",cyp:"cypher",d:"d",dart:"dart",dax:"dax",desktop:"desktop",diff:"diff",patch:"diff",Dockerfile:"dockerfile",dockerfile:"dockerfile",env:"dotenv",dm:"dream-maker",edge:"edge",el:"emacs-lisp",ex:"elixir",exs:"elixir",elm:"elm",erb:"erb",erl:"erlang",hrl:"erlang",f:"fortran-fixed-form",for:"fortran-fixed-form",fs:"fsharp",fsi:"fsharp",fsx:"fsharp",f03:"f03",f08:"f08",f18:"f18",f77:"f77",f90:"fortran-free-form",f95:"fortran-free-form",fnl:"fennel",fish:"fish",ftl:"ftl",tres:"gdresource",res:"gdresource",gd:"gdscript",gdshader:"gdshader",gs:"genie",feature:"gherkin",COMMIT_EDITMSG:"git-commit","git-rebase-todo":"git-rebase",gjs:"glimmer-js",gleam:"gleam",gts:"glimmer-ts",glsl:"glsl",vert:"glsl",frag:"glsl",shader:"shaderlab",gp:"gnuplot",plt:"gnuplot",gnuplot:"gnuplot",go:"go",graphql:"graphql",gql:"graphql",groovy:"groovy",gvy:"groovy",hack:"hack",haml:"haml",hbs:"handlebars",handlebars:"handlebars",hs:"haskell",lhs:"haskell",hx:"haxe",hcl:"hcl",hjson:"hjson",hlsl:"hlsl",fx:"hlsl",html:"html",htm:"html",http:"http",rest:"http",hxml:"hxml",hy:"hy",imba:"imba",ini:"ini",cfg:"ini",jade:"pug",pug:"pug",java:"java",js:"javascript",mjs:"javascript",cjs:"javascript",jinja:"jinja",jinja2:"jinja",j2:"jinja",jison:"jison",jl:"julia",json:"json",json5:"json5",jsonc:"jsonc",jsonl:"jsonl",jsonnet:"jsonnet",libsonnet:"jsonnet",jssm:"jssm",jsx:"jsx",kt:"kotlin",kts:"kts",kql:"kusto",tex:"tex",ltx:"tex",lean:"lean4",less:"less",liquid:"liquid",lit:"lit",ll:"llvm",logo:"logo",lua:"lua",luau:"luau",Makefile:"makefile",mk:"makefile",makefile:"makefile",md:"markdown",markdown:"markdown",marko:"marko",m:"wolfram",mat:"matlab",mdc:"mdc",mdx:"mdx",wiki:"wikitext",mediawiki:"wikitext",mmd:"mermaid",mermaid:"mermaid",mips:"mipsasm",mojo:"mojo","🔥":"mojo",move:"move",nar:"narrat",nf:"nextflow",nim:"nim",nims:"nim",nimble:"nim",nix:"nix",nu:"nushell",mm:"objective-cpp",ml:"ocaml",mli:"ocaml",mll:"ocaml",mly:"ocaml",pas:"pascal",p:"pascal",pl:"prolog",pm:"perl",t:"perl",raku:"raku",p6:"raku",pl6:"raku",php:"php",phtml:"php",pls:"plsql",sql:"sql",po:"po",polar:"polar",pcss:"postcss",pot:"pot",potx:"potx",pq:"powerquery",pqm:"powerquery",ps1:"powershell",psm1:"powershell",psd1:"powershell",prisma:"prisma",pro:"prolog",P:"prolog",properties:"properties",proto:"protobuf",pp:"puppet",purs:"purescript",py:"python",pyw:"python",pyi:"python",qml:"qml",qmldir:"qmldir",qss:"qss",r:"r",R:"r",rkt:"racket",rktl:"racket",razor:"razor",cshtml:"razor",rb:"ruby",rbw:"ruby",reg:"reg",regex:"regexp",rel:"rel",rs:"rust",rst:"rst",rake:"ruby",gemspec:"ruby",jbuilder:"ruby",builder:"ruby",rabl:"ruby",arb:"ruby",ru:"ruby",podspec:"ruby",Gemfile:"ruby",Rakefile:"ruby",Guardfile:"ruby",Capfile:"ruby",Berksfile:"ruby",Brewfile:"ruby",Vagrantfile:"ruby",Thorfile:"ruby",Appraisals:"ruby",Dangerfile:"ruby",sas:"sas",sass:"sass",scala:"scala",sc:"scala",scm:"scheme",ss:"scheme",sld:"scheme",scss:"scss",sdbl:"sdbl",shadergraph:"shader",st:"smalltalk",sol:"solidity",sparql:"sparql",rq:"sparql",spl:"splunk",config:"ssh-config",do:"stata",ado:"stata",dta:"stata",styl:"stylus",stylus:"stylus",svelte:"svelte",swift:"swift",sv:"system-verilog",svh:"system-verilog",service:"systemd",socket:"systemd",device:"systemd",timer:"systemd",talon:"talonscript",tasl:"tasl",tcl:"tcl",templ:"templ",tf:"tf",tfvars:"tfvars",toml:"toml",ts:"typescript",tsp:"typespec",tsv:"tsv",tsx:"tsx",ttl:"turtle",twig:"twig",typ:"typst",vv:"v",vala:"vala",vapi:"vala",vb:"vb",vbs:"vb",bas:"vb",vh:"verilog",vhd:"vhdl",vhdl:"vhdl",vim:"vimscript",vue:"vue","vine.ts":"vue-vine",vy:"vyper",wasm:"wasm",wat:"wasm",wy:"文言",wgsl:"wgsl",wit:"wit",wl:"wolfram",nb:"wolfram",xml:"xml",xsl:"xsl",xslt:"xsl",yaml:"yaml",yml:"yml",zs:"zenscript",zig:"zig",zsh:"zsh",sty:"tex"};function X(e){if(J.has(e))return J.get(e)??"text";if(Ne[e]!=null)return Ne[e];const t=e.match(/\.([^/\\]+\.[^/\\]+)$/);if(t!=null){if(J.has(t[1]))return J.get(t[1])??"text";if(Ne[t[1]]!=null)return Ne[t[1]]??"text"}const n=e.match(/\.([^.]+)$/)?.[1]??"";return J.has(n)?J.get(n)??"text":Ne[n]??"text"}function xl(e,t){if(e<=mt)return!1;J.clear();for(const n in t){const i=t[n];i!=null&&J.set(n,i)}return mt=e,!0}function Ll(){return mt}function Po(e,t){const n=J.get(e);return n===t?!1:(n!=null&&console.warn(`setCustomExtension: overriding custom mapping for "${e}" from "${n}" to "${t}"`),J.set(e,t),mt++,!0)}function kl(){return Object.fromEntries(J)}function hn(e,{theme:t,preferredHighlighter:n="shiki-js"}){return{langs:[e??"text"],themes:dn(t),preferredHighlighter:n}}function pe(e){return`annotation-${"side"in e?`${e.side}-`:""}${e.lineNumber}`}function ye(e){return e.replace(/\n$|\r\n$/,"")}function Oo(e,t,n){const i=typeof n.lineInfo=="function"?n.lineInfo(t):n.lineInfo[t-1];if(i==null){const r=`processLine: line ${t}, contains no state.lineInfo`;throw console.error(r,{node:e,line:t,state:n}),new Error(r)}return e.tagName="div",e.properties["data-line"]=i.lineNumber,e.properties["data-alt-line"]=i.altLineNumber,e.properties["data-line-type"]=i.type,e.properties["data-line-index"]=i.lineIndex,e.children.length===0&&e.children.push(V(` +`)),e}const Ze=Symbol("no-token"),Et=Symbol("multiple-tokens");function Bi(e){const t=No(e);if(t!=null)return t;let n=Ze;const i=[];let r=[],o;const s=()=>{if(r.length===0||o==null){r=[],o=void 0;return}if(r.length===1){const a=r[0];if(a?.type==="element"){Fo(a,o);for(const d of a.children)ct(d)}else ct(a);i.push(a),r=[],o=void 0;return}for(const a of r)ct(a);i.push(R({tagName:"span",properties:{"data-char":o},children:r})),r=[],o=void 0},l=a=>{if(a!==Ze){if(a===Et){n=Et;return}if(n===Ze){n=a;return}n!==a&&(n=Et)}};for(const a of e.children){const d=a.type==="element"?Bi(a):Ze;if(l(d),typeof d!="number"){s(),i.push(a);continue}o!=null&&o!==d&&s(),o??=d,r.push(a)}return s(),e.children=i,n}function No(e){const t=e.properties["data-char"];if(typeof t=="number")return t}function ct(e){if(e.type==="element"){e.properties["data-char"]=void 0;for(const t of e.children)ct(t)}}function Fo(e,t){e.properties["data-char"]=t}function zo(e={}){const{classPrefix:t="__shiki_",classSuffix:n="",classReplacer:i=l=>l}=e,r=new Map;function o(l){return Object.entries(l).map(([a,d])=>`${a}:${d}`).join(";")}function s(l){let a=t+Uo(typeof l=="string"?l:o(l))+n;return a=i(a),r.has(a)||r.set(a,typeof l=="string"?l:{...l}),a}return{name:"@shikijs/transformers:style-to-class",pre(l){if(!l.properties.style)return;const a=s(l.properties.style);delete l.properties.style,this.addClassToHast(l,a)},tokens(l){for(const a of l)for(const d of a){if(!d.htmlStyle)continue;const h=s(d.htmlStyle);d.htmlStyle={},d.htmlAttrs||={},d.htmlAttrs.class?d.htmlAttrs.class+=` ${h}`:d.htmlAttrs.class=h}},getClassRegistry(){return r},getCSS(){let l="";for(const[a,d]of r.entries())l+=`.${a}{${typeof d=="string"?d:o(d)}}`;return l},clearRegistry(){r.clear()}}}function Uo(e,t=0){let n=3735928559^t,i=1103547991^t;for(let r=0,o;r>>16,2246822507),n^=Math.imul(i^i>>>13,3266489909),i=Math.imul(i^i>>>16,2246822507),i^=Math.imul(n^n>>>13,3266489909),(4294967296*(2097151&i)+(n>>>0)).toString(36).slice(0,6)}function _i(e=!1,t=!1){const n={lineInfo:[]},i=[{line(r){return delete r.properties.class,r},pre(r){const o=ho(r),s=[];if(o!=null){let l=1;for(const a of o.children)a.type==="element"&&(e&&Bi(a),s.push(Oo(a,l,n)),l++);o.children=s}return r},...e?{tokens(r){for(const o of r){let s=0;for(const l of o){const a=l;a.__lineChar??=s,s+=l.content.length}}},preprocess(r,o){o.mergeWhitespaces="never"},span(r,o,s,l,a){if(a?.offset!=null&&a.content!=null){const d=a.__lineChar;return d!=null&&(r.properties["data-char"]=d),r}return r}}:null}];return t&&i.push(Bo,Mn),{state:n,transformers:i,toClass:Mn}}const Mn=zo({classPrefix:"hl-"}),Bo={name:"token-style-normalizer",tokens(e){for(const t of e)for(const n of t){if(n.htmlStyle!=null)continue;const i={};n.color!=null&&(i.color=n.color),n.bgColor!=null&&(i["background-color"]=n.bgColor),n.fontStyle!=null&&n.fontStyle!==0&&((n.fontStyle&1)!==0&&(i["font-style"]="italic"),(n.fontStyle&2)!==0&&(i["font-weight"]="bold"),(n.fontStyle&4)!==0&&(i["text-decoration"]="underline")),Object.keys(i).length>0&&(n.htmlStyle=i)}}};function _(e){return`--${e==="token"?"diffs-token":"diffs"}-`}const _o=/^#(?:[0-9a-f]{3}0|[0-9a-f]{6}00)$/i,$o=/^0(?:\.0+)?%?$/;function Vo(e){const t=e.indexOf("(");if(t<=0||!e.endsWith(")"))return;const n=e.slice(0,t).trim();if(!/^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch|color)$/i.test(n))return;const i=e.slice(t+1,-1).trim();if(i.length===0)return;const r=i.lastIndexOf("/");if(r!==-1)return i.slice(r+1).trim();if(/^(?:rgba|hsla)$/i.test(n)){const o=i.split(",");if(o.length===4)return o[3]?.trim()}}function Wo(e){const t=/^#([0-9a-f]{3}|[0-9a-f]{6}|[0-9a-f]{8})\b/i.exec(e.trim());if(t==null)return null;const n=t[1];let i,r=1;return n.length===3?i=n.split("").map(o=>o+o).join(""):n.length===6?i=n:(i=n.slice(0,6),r=parseInt(n.slice(6,8),16)/255),[parseInt(i.slice(0,2),16),parseInt(i.slice(2,4),16),parseInt(i.slice(4,6),16),r]}function It(e){if(e==null)return null;const t=Wo(e);if(t==null)return null;const n=t[0]/255,i=t[1]/255,r=t[2]/255,o=s=>s<=.03928?s/12.92:((s+.055)/1.055)**2.4;return .2126*o(n)+.7152*o(i)+.0722*o(r)}function Dn(e){if(e==null)return!1;const t=e.trim().toLowerCase();if(t==="transparent"||_o.test(t))return!0;const n=Vo(t);return n!=null&&$o.test(n)}function Go(e,t,n){if(t==null||n==null)return!1;const i=It(e),r=It(t),o=It(n);return i==null||r==null||o==null?!1:Math.abs(i-o){const s=e.at(-1);return s===""||s===` +`||s===`\r +`||s==="\r"?Math.max(0,e.length-2):e.length-1})();for(let s=t;s0||l<1/0,{state:h,transformers:c}=_i(r),u=o?"text":e.lang??X(e.name),f=typeof n=="string"?t.getTheme(n).type:void 0,p=cn({theme:n,highlighter:t});h.lineInfo=g=>({type:"context",lineIndex:g-1+s,lineNumber:g+s});const m=typeof n=="string"?{lang:u,theme:n,transformers:c,defaultColor:!1,cssVariablePrefix:_("token"),tokenizeMaxLineLength:i,tokenizeTimeLimit:0}:{lang:u,themes:n,transformers:c,defaultColor:!1,cssVariablePrefix:_("token"),tokenizeMaxLineLength:i,tokenizeTimeLimit:0},y=qt(t.codeToHast(d?Yo(a??vt(e.contents),s,l):ye(e.contents),m)),v=d?new Array(s):y;return d&&v.push(...y),{code:v,themeStyles:p,baseThemeType:f}}function Yo(e,t,n){let i="";return bt({lines:e,startingLine:t,totalLines:n,callback({content:r}){i+=r}}),i}const $i="-1,-1";function Kt(e){return e?.some(t=>t.lineNumber===0)??!1}function Yt(e){const t=e[0];return t!=null&&t.length>0?t:void 0}function xt(e){return e.startingLine===0&&e.totalLines>0}function Vi(e,t){return R({tagName:"div",children:e,properties:{"data-content":"",style:`grid-row: span ${t}`}})}function Xt(e){return(e.lang??X(e.name))==="text"}function Wi(e){return e.useTokenTransformer===!0||e.onTokenClick!=null||e.onTokenEnter!=null||e.onTokenLeave!=null}let Xo=-1;var Qo=class{options;onRenderUpdate;workerManager;__id=`file-renderer:${++Xo}`;highlighter;renderCache;computedLang="text";lineAnnotations={};lineCache;constructor(e={theme:P},t,n){this.options=e,this.onRenderUpdate=t,this.workerManager=n,n?.isWorkingPool()!==!0&&(this.highlighter=We(e.theme??P)?Fi():void 0)}setOptions(e){this.options=e}mergeOptions(e){this.options={...this.options,...e}}setLineAnnotations(e){this.lineAnnotations={};for(const t of e){const n=this.lineAnnotations[t.lineNumber]??[];this.lineAnnotations[t.lineNumber]=n,n.push(t)}}cleanUp(){this.recycle(),this.workerManager=void 0,this.onRenderUpdate=void 0}recycle(){this.clearRenderCache(),this.highlighter=void 0,this.workerManager?.cleanUpTasks(this),this.lineCache=void 0}clearRenderCache(){this.renderCache=void 0}hydrate(e){const{options:t}=this.getRenderOptions(e),n=Mt(this.getOrCreateLineCache(e).length,this.getTokenizeMaxLength());let i=this.workerManager?.getFileResultCache(e);i!=null&&!Oe(t,i.options)&&(i=void 0),this.renderCache??={file:e,options:t,highlighted:!n&&!Xt(e),result:n?void 0:i?.result,renderRange:void 0},this.workerManager?.isWorkingPool()===!0?this.renderCache.result==null&&!n&&this.workerManager.highlightFileAST(this,e):this.highlighter==null&&(this.computedLang=e.lang??X(e.name),this.initializeHighlighter())}getRenderOptions(e){const t=(()=>{if(this.workerManager?.isWorkingPool()===!0)return this.workerManager.getFileRenderOptions();const{theme:i=P,tokenizeMaxLineLength:r=1e3}=this.options;return{theme:i,useTokenTransformer:Wi(this.options),tokenizeMaxLineLength:r}})(),{renderCache:n}=this;return n?.result==null?{options:t,forceHighlight:!0}:!se(e,n.file)||!Oe(t,n.options)?{options:t,forceHighlight:!0}:{options:t,forceHighlight:!1}}getOrCreateLineCache(e){if(e.cacheKey==null)return this.lineCache=void 0,vt(e.contents);let{lineCache:t}=this;return(t==null||t.cacheKey!==e.cacheKey)&&(t={cacheKey:e.cacheKey,lines:vt(e.contents)}),this.lineCache=t,t.lines}renderFile(e=this.renderCache?.file,t=Re){if(e==null)return;let{options:n,forceHighlight:i}=this.getRenderOptions(e);const r=this.getMatchingWorkerResultCache(e,n);r!=null&&!this.hasHighlightedRenderCache(e,n)&&(this.renderCache={file:e,highlighted:!0,renderRange:void 0,...r},i=!1),this.renderCache??={file:e,highlighted:!1,options:n,result:void 0,renderRange:void 0};const o=this.getOrCreateLineCache(e),s=e.contents.length>0,l=!s||Xt(e)||Mt(o.length,this.getTokenizeMaxLength()),a=!se(e,this.renderCache.file),d=!yt(this.renderCache.renderRange,t);if(this.workerManager?.isWorkingPool()===!0)(l||this.renderCache.result==null||!this.renderCache.highlighted&&(a||d))&&(this.renderCache.file=e,this.renderCache.options=n,this.renderCache.highlighted=!1,(this.renderCache.result==null||a||d||i)&&(this.renderCache.result=this.workerManager.getPlainFileAST(e,t.startingLine,t.totalLines,o)),this.renderCache.renderRange=t),!l&&s&&(!this.renderCache.highlighted||i)&&this.workerManager.highlightFileAST(this,e);else{this.computedLang=e.lang??X(e.name);const h=this.highlighter!=null&&We(n.theme),c=this.highlighter!=null&&pt(this.computedLang),u=!l&&c;if(this.highlighter!=null&&h&&(i||l||!this.renderCache.highlighted&&u||this.renderCache.result==null)){const{result:f,options:p}=this.renderFileWithHighlighter(e,this.highlighter,l||!c);this.renderCache={file:e,options:p,highlighted:u,result:f,renderRange:void 0}}(!h||!l&&!c)&&this.asyncHighlight(e).then(({result:f,options:p})=>{this.renderCache!=null&&(this.renderCache.highlighted=!1),this.onHighlightSuccess(e,f,p,!l)})}return this.renderCache.result!=null?this.processFileResult(this.renderCache.file,t,this.renderCache.result):void 0}async asyncRender(e,t=Re){const{result:n}=await this.asyncHighlight(e);return this.processFileResult(e,t,n)}async asyncHighlight(e){const t=Mt(this.getOrCreateLineCache(e).length,this.getTokenizeMaxLength());this.computedLang=t?"text":e.lang??X(e.name);const n=this.highlighter!=null&&Ro(dn(this.options.theme)),i=t||this.highlighter!=null&&pt(this.computedLang);return(this.highlighter==null||!n||!i)&&(this.highlighter=await this.initializeHighlighter()),this.renderFileWithHighlighter(e,this.highlighter,t)}renderFileWithHighlighter(e,t,n=!1){const{options:i}=this.getRenderOptions(e);return{result:Ko(e,t,i,{forcePlainText:n}),options:i}}processFileResult(e,t,{code:n,themeStyles:i,baseThemeType:r}){const{disableFileHeader:o=!1}=this.options,s=[],l=we(),a=this.getOrCreateLineCache(e);let d=0;const h=xt(t)?Yt(this.lineAnnotations):void 0;return h!=null&&(l.children.push(G("context","annotation",1)),s.push(jt({hunkIndex:-1,lineIndex:-1,annotations:h.map(c=>pe(c))})),d++),bt({lines:a,startingLine:t.startingLine,totalLines:t.totalLines,callback:({lineIndex:c,lineNumber:u})=>{const f=n[c];if(f==null){const p="FileRenderer.processFileResult: Line doesnt exist";throw console.error(p,{name:e.name,lineIndex:c,lineNumber:u,lines:a}),new Error(p)}if(f!=null){l.children.push(Ri("context",u,`${c}`)),s.push(f),d++;const p=this.lineAnnotations[u];p!=null&&(l.children.push(G("context","annotation",1)),s.push(jt({hunkIndex:0,lineIndex:u,annotations:p.map(m=>pe(m))})),d++)}}}),l.properties.style=`grid-row: span ${d}`,{gutterAST:l.children??[],contentAST:s,preAST:this.createPreElement(a.length),headerAST:o?void 0:this.renderHeader(e),totalLines:a.length,rowCount:d,themeStyles:i,baseThemeType:r,bufferBefore:t.bufferBefore,bufferAfter:t.bufferAfter,css:""}}renderHeader(e){const{headerRenderMode:t="default",stickyHeader:n=!1}=this.options;return zi({fileOrDiff:e,mode:t,stickyHeader:n})}renderFullHTML(e){return fe(this.renderFullAST(e))}renderFullAST(e,t=[]){return t.push(R({tagName:"code",children:this.renderCodeAST(e),properties:{"data-code":""}})),{...e.preAST,children:t}}renderCodeAST(e){const t=we();return t.children=e.gutterAST,t.properties.style=`grid-row: span ${e.rowCount}`,[t,Vi(e.contentAST,e.rowCount)]}renderPartialHTML(e,t=!1){return t?fe(R({tagName:"code",children:e,properties:{"data-code":""}})):fe(e)}async initializeHighlighter(){return this.highlighter=await St(hn(this.computedLang,this.options)),this.highlighter}onHighlightSuccess(e,t,n,i=!0){if(this.renderCache==null)return;const r=!se(e,this.renderCache.file)||!this.renderCache.highlighted||!Oe(n,this.renderCache.options);this.renderCache={file:e,options:n,highlighted:i,result:t,renderRange:void 0},r&&this.onRenderUpdate?.()}getMatchingWorkerResultCache(e,t){const n=this.workerManager?.getFileResultCache(e);if(!(n==null||!Oe(t,n.options)))return n}hasHighlightedRenderCache(e,t){const{renderCache:n}=this;return n?.result!=null&&n.highlighted&&se(e,n.file)&&Oe(t,n.options)}onHighlightError(e){console.error(e)}getTokenizeMaxLength(){return this.options.tokenizeMaxLength??1e5}createPreElement(e){const{disableLineNumbers:t=!1,overflow:n="scroll"}=this.options;return Ui({type:"file",diffIndicators:"none",disableBackground:!0,disableLineNumbers:t,overflow:n,split:!1,totalLines:e})}};function Mt(e,t){return e>t}const Gi=``;function Jo(e,t){return e.lineNumber===t.lineNumber&&e.metadata===t.metadata}function ji(e,t){return e==null||t==null?e===t:Zo(e.customProperties,t.customProperties)&&e.type===t.type&&e.diffIndicators===t.diffIndicators&&e.disableBackground===t.disableBackground&&e.disableLineNumbers===t.disableLineNumbers&&e.overflow===t.overflow&&e.split===t.split&&e.totalLines===t.totalLines}const On={};function Zo(e=On,t=On){if(e===t)return!0;const n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;for(const r of n)if(e[r]!==t[r])return!1;return!0}function un(e){const t=document.createElement("div");return t.dataset.annotationSlot="",t.slot=e,t.style.whiteSpace="normal",t}function qi(){const e=document.createElement("div");return e.slot="gutter-utility-slot",e.style.position="absolute",e.style.top="0",e.style.bottom="0",e.style.textAlign="center",e.style.whiteSpace="normal",e.style.touchAction="none",e}function Ki(){const e=document.createElement("style");return e.setAttribute(wi,""),e}var Yi=`@layer base { + :host { + --diffs-font-fallback: "SF Mono", Monaco, Consolas, "Ubuntu Mono", "Liberation Mono", + "Courier New", monospace; + --diffs-header-font-fallback: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", + "Noto Sans", "Liberation Sans", Arial, sans-serif; + --diffs-mixer: light-dark(#000, #fff); + --diffs-gap-fallback: 8px; + --diffs-scrollbar-gutter-fallback: 6px; + --diffs-scrollbar-gutter: var(--diffs-scrollbar-gutter-override, var(--diffs-scrollbar-gutter-measured, var(--diffs-scrollbar-gutter-fallback))); + --diffs-added-light: #0dbe4e; + --diffs-added-dark: #5ecc71; + --diffs-modified-light: #009fff; + --diffs-modified-dark: #69b1ff; + --diffs-deleted-light: #ff2e3f; + --diffs-deleted-dark: #ff6762; + color-scheme: light dark; + font-family: var(--diffs-header-font-family, var(--diffs-header-font-fallback)); + font-size: var(--diffs-font-size, 13px); + line-height: var(--diffs-line-height, 20px); + font-feature-settings: var(--diffs-font-features); + --diffs-bg: light-dark(var(--diffs-light-bg, #fff), var(--diffs-dark-bg, #000)); + --diffs-bg-buffer: var(--diffs-bg-buffer-override, light-dark(color-mix(in lab, var(--diffs-bg) 92%, var(--diffs-mixer)), color-mix(in lab, var(--diffs-bg) 92%, var(--diffs-mixer)))); + --diffs-bg-context: var(--diffs-bg-context-override, light-dark(color-mix(in lab, var(--diffs-bg) 98.5%, var(--diffs-mixer)), color-mix(in lab, var(--diffs-bg) 92.5%, var(--diffs-mixer)))); + --diffs-bg-context-gutter: var(--diffs-bg-context-gutter-override, light-dark(color-mix(in lab, var(--diffs-bg-context) 90%, var(--diffs-bg)), color-mix(in lab, var(--diffs-bg-context) 45%, var(--diffs-bg)))); + --diffs-bg-separator: var(--diffs-bg-separator-override, light-dark(color-mix(in lab, var(--diffs-bg) 96%, var(--diffs-mixer)), color-mix(in lab, var(--diffs-bg) 85%, var(--diffs-mixer)))); + --diffs-fg: light-dark(var(--diffs-light, #000), var(--diffs-dark, #fff)); + --diffs-fg-number: var(--diffs-fg-number-override, light-dark(color-mix(in lab, var(--diffs-fg) 65%, var(--diffs-bg)), color-mix(in lab, var(--diffs-fg) 65%, var(--diffs-bg)))); + --diffs-fg-conflict-marker: var(--diffs-fg-conflict-marker-override, var(--diffs-fg-number)); + --diffs-deletion-base: var(--diffs-deletion-color-override, light-dark(var(--diffs-light-deletion-color, var(--diffs-deletion-color, var(--diffs-deleted-light))), var(--diffs-dark-deletion-color, var(--diffs-deletion-color, var(--diffs-deleted-dark))))); + --diffs-addition-base: var(--diffs-addition-color-override, light-dark(var(--diffs-light-addition-color, var(--diffs-addition-color, var(--diffs-added-light))), var(--diffs-dark-addition-color, var(--diffs-addition-color, var(--diffs-added-dark))))); + --diffs-modified-base: var(--diffs-modified-color-override, light-dark(var(--diffs-light-modified-color, var(--diffs-modified-color, var(--diffs-modified-light))), var(--diffs-dark-modified-color, var(--diffs-modified-color, var(--diffs-modified-dark))))); + --diffs-bg-deletion: var(--diffs-bg-deletion-override, light-dark(color-mix(in lab, var(--diffs-bg) 88%, var(--diffs-deletion-base)), color-mix(in lab, var(--diffs-bg) 80%, var(--diffs-deletion-base)))); + --diffs-bg-deletion-emphasis: var(--diffs-bg-deletion-emphasis-override, light-dark(rgb(from var(--diffs-deletion-base) r g b / .15), rgb(from var(--diffs-deletion-base) r g b / .2))); + --diffs-bg-addition: var(--diffs-bg-addition-override, light-dark(color-mix(in lab, var(--diffs-bg) 88%, var(--diffs-addition-base)), color-mix(in lab, var(--diffs-bg) 80%, var(--diffs-addition-base)))); + --diffs-bg-addition-emphasis: var(--diffs-bg-addition-emphasis-override, light-dark(rgb(from var(--diffs-addition-base) r g b / .15), rgb(from var(--diffs-addition-base) r g b / .2))); + --diffs-selection-base: var(--diffs-modified-base); + --diffs-selection-number-fg: light-dark(color-mix(in lab, var(--diffs-selection-base) 65%, var(--diffs-mixer)), color-mix(in lab, var(--diffs-selection-base) 75%, var(--diffs-mixer))); + background-color: var(--diffs-bg); + color: var(--diffs-fg); + display: block; + } + + pre, code, [data-error-wrapper] { + isolation: isolate; + font-family: var(--diffs-font-family, var(--diffs-font-fallback)); + outline: none; + margin: 0; + padding: 0; + display: block; + } + + pre, code { + background-color: var(--diffs-bg); + } + + code { + contain: content; + } + + *, :before, :after { + box-sizing: border-box; + } + + [data-icon-sprite] { + display: none; + } + + [data-diffs-header], [data-separator] { + font-family: var(--diffs-header-font-family, var(--diffs-header-font-fallback)); + } + + [data-diffs-header][data-sticky] { + z-index: 1; + background-color: var(--diffs-bg); + position: sticky; + top: 0; + } + + [data-file-info] { + color: var(--fg); + background-color: color-mix(in lab, var(--bg) 98%, var(--fg)); + border-block: 1px solid color-mix(in lab, var(--bg) 95%, var(--fg)); + padding: 10px; + font-weight: 700; + } + + [data-diff], [data-file] { + --diffs-grid-number-column-width: minmax(min-content, max-content); + --diffs-code-grid: var(--diffs-grid-number-column-width) 1fr; + + &[data-dehydrated] { + --diffs-code-grid: var(--diffs-grid-number-column-width) minmax(0, 1fr); + } + + &:hover [data-code]::-webkit-scrollbar-thumb { + background-color: var(--diffs-bg-context); + } + } + + @supports (-webkit-touch-callout: none) { + :host { + --diffs-scrollbar-gutter-fallback: 0px; + } + } + + [data-line] span { + color: light-dark(var(--diffs-token-light, var(--diffs-light)), var(--diffs-token-dark, var(--diffs-dark))); + background-color: light-dark(var(--diffs-token-light-bg, inherit), var(--diffs-token-dark-bg, inherit)); + font-weight: light-dark(var(--diffs-token-light-font-weight, inherit), var(--diffs-token-dark-font-weight, inherit)); + font-style: light-dark(var(--diffs-token-light-font-style, inherit), var(--diffs-token-dark-font-style, inherit)); + text-decoration: light-dark(var(--diffs-token-light-text-decoration, inherit), var(--diffs-token-dark-text-decoration, inherit)); + } + + [data-line], [data-gutter-buffer], [data-column-number], [data-line-annotation], [data-no-newline], [data-merge-conflict], [data-merge-conflict-actions] { + --diffs-computed-decoration-bg: var(--diffs-bg); + --diffs-computed-diff-line-bg: var(--diffs-bg); + --diffs-computed-selected-line-bg: var(--diffs-bg); + color: var(--diffs-fg); + background-color: var(--diffs-line-bg, var(--diffs-bg)); + + @media (pointer: fine) { + &:where([data-hovered]) { + --diffs-computed-hovered-line-bg: light-dark(color-mix(in lab, + var(--diffs-computed-selected-line-bg) 97%, + var(--diffs-bg-hover-override, var(--diffs-mixer))), color-mix(in lab, + var(--diffs-computed-selected-line-bg) 91%, + var(--diffs-bg-hover-override, var(--diffs-mixer)))); + --diffs-line-bg: var(--diffs-computed-hovered-line-bg, inherit); + } + } + } + + [data-line], [data-no-newline] { + &[data-decoration-bg] { + --mix-deco-light: 92%; + --mix-deco-dark: 85%; + + &[data-decoration-bg-depth="2"] { + --mix-deco-light: 88%; + --mix-deco-dark: 80%; + } + + &[data-decoration-bg-depth="3"] { + --mix-deco-light: 85%; + --mix-deco-dark: 78%; + } + + @media (pointer: fine) { + &[data-hovered]:not([data-selected-line]) { + --mix-deco-light: 85%; + --mix-deco-dark: 85%; + } + + &[data-hovered]:not([data-selected-line])[data-decoration-bg-depth="2"] { + --mix-deco-light: 83%; + --mix-deco-dark: 83%; + } + + &[data-hovered]:not([data-selected-line])[data-decoration-bg-depth="3"] { + --mix-deco-light: 81%; + --mix-deco-dark: 81%; + } + } + + --diffs-computed-decoration-bg: light-dark(color-mix(in lab, + var(--diffs-bg) var(--mix-deco-light), + var(--diffs-decoration-bg)), color-mix(in lab, + var(--diffs-bg) var(--mix-deco-dark), + var(--diffs-decoration-bg))); + --diffs-computed-diff-line-bg: var(--diffs-computed-decoration-bg); + --diffs-computed-selected-line-bg: var(--diffs-computed-decoration-bg); + --diffs-line-bg: var(--diffs-computed-decoration-bg); + } + } + + [data-line-annotation], [data-gutter-buffer="annotation"] { + --diffs-annotation-bg: var(--diffs-bg-context); + --diffs-computed-decoration-bg: var(--diffs-annotation-bg); + --diffs-computed-diff-line-bg: var(--diffs-annotation-bg); + --diffs-computed-selected-line-bg: var(--diffs-annotation-bg); + --diffs-line-bg: var(--diffs-annotation-bg); + } + + [data-merge-conflict-actions], [data-gutter-buffer="merge-conflict-action"], [data-gutter-buffer="merge-conflict-marker-base"], [data-gutter-buffer="merge-conflict-marker-separator"], [data-merge-conflict="marker-base"], [data-merge-conflict="marker-separator"] { + --diffs-computed-decoration-bg: var(--diffs-bg-context); + --diffs-computed-diff-line-bg: var(--diffs-bg-context); + --diffs-computed-selected-line-bg: var(--diffs-bg-context); + --diffs-line-bg: var(--diffs-bg-context); + } + + [data-gutter-buffer="merge-conflict-marker-start"], [data-merge-conflict="marker-start"] { + --diffs-computed-decoration-bg: light-dark(color-mix(in lab, + var(--diffs-bg) 78%, + var(--conflict-bg-current-header-override, var(--diffs-addition-base))), color-mix(in lab, + var(--diffs-bg) 68%, + var(--conflict-bg-current-header-override, var(--diffs-addition-base)))); + --diffs-computed-diff-line-bg: var(--diffs-computed-decoration-bg); + --diffs-computed-selected-line-bg: var(--diffs-computed-decoration-bg); + --diffs-line-bg: var(--diffs-computed-decoration-bg); + } + + [data-gutter-buffer="merge-conflict-marker-end"], [data-merge-conflict="marker-end"] { + --diffs-computed-decoration-bg: light-dark(color-mix(in lab, + var(--diffs-bg) 78%, + var(--conflict-bg-incoming-header-override, var(--diffs-modified-base))), color-mix(in lab, + var(--diffs-bg) 68%, + var(--conflict-bg-incoming-header-override, var(--diffs-modified-base)))); + --diffs-computed-diff-line-bg: var(--diffs-computed-decoration-bg); + --diffs-computed-selected-line-bg: var(--diffs-computed-decoration-bg); + --diffs-line-bg: var(--diffs-computed-decoration-bg); + } + + [data-has-merge-conflict] [data-line-annotation], [data-has-merge-conflict] [data-gutter-buffer="annotation"] { + --diffs-computed-decoration-bg: var(--diffs-bg); + --diffs-computed-diff-line-bg: var(--diffs-bg); + --diffs-computed-selected-line-bg: var(--diffs-bg); + --diffs-line-bg: var(--diffs-bg); + } + + :where([data-background]) { + & [data-gutter-buffer], & [data-column-number] { + --mix-light: 91%; + --mix-dark: 85%; + } + + & [data-line], & [data-no-newline] { + --mix-light: 88%; + --mix-dark: 80%; + } + + & [data-gutter-buffer], & [data-column-number], & [data-line], & [data-no-newline] { + --diffs-diff-line-mix-target: var(--diffs-bg); + + &[data-line-type="change-deletion"] { + --diffs-diff-line-mix-target: var(--diffs-bg-deletion-override, var(--diffs-deletion-base)); + + @media (pointer: fine) { + &[data-hovered] { + --mix-light: 80%; + --mix-dark: 75%; + } + } + + &:where([data-gutter-buffer], [data-column-number]) { + color: var(--diffs-fg-number-deletion-override, var(--diffs-deletion-base)); + --diffs-diff-line-mix-target: var(--diffs-bg-deletion-number-override, var(--diffs-deletion-base)); + } + + --diffs-computed-diff-line-bg: light-dark(color-mix(in lab, + var(--diffs-computed-decoration-bg) var(--mix-light), + var(--diffs-diff-line-mix-target)), color-mix(in lab, + var(--diffs-computed-decoration-bg) var(--mix-dark), + var(--diffs-diff-line-mix-target))); + --diffs-computed-selected-line-bg: var(--diffs-computed-diff-line-bg); + --diffs-line-bg: var(--diffs-computed-diff-line-bg, inherit); + } + + &[data-line-type="change-addition"] { + --diffs-diff-line-mix-target: var(--diffs-bg-addition-override, var(--diffs-addition-base)); + + @media (pointer: fine) { + &[data-hovered] { + --mix-light: 80%; + --mix-dark: 70%; + } + } + + &:where([data-gutter-buffer], [data-column-number]) { + color: var(--diffs-fg-number-addition-override, var(--diffs-addition-base)); + --diffs-diff-line-mix-target: var(--diffs-bg-addition-number-override, var(--diffs-addition-base)); + } + + --diffs-computed-diff-line-bg: light-dark(color-mix(in lab, + var(--diffs-computed-decoration-bg) var(--mix-light), + var(--diffs-diff-line-mix-target)), color-mix(in lab, + var(--diffs-computed-decoration-bg) var(--mix-dark), + var(--diffs-diff-line-mix-target))); + --diffs-computed-selected-line-bg: var(--diffs-computed-diff-line-bg); + --diffs-line-bg: var(--diffs-computed-diff-line-bg, inherit); + } + + &[data-merge-conflict="current"] { + --diffs-diff-line-mix-target: var(--conflict-bg-current-override, var(--diffs-addition-base)); + + &:where([data-gutter-buffer], [data-column-number]) { + color: var(--diffs-fg-number-addition-override, var(--diffs-addition-base)); + --diffs-diff-line-mix-target: var(--conflict-bg-current-number-override, var(--diffs-addition-base)); + } + + @media (pointer: fine) { + &[data-hovered] { + --mix-light: 80%; + --mix-dark: 70%; + } + } + + --diffs-computed-diff-line-bg: light-dark(color-mix(in lab, + var(--diffs-computed-decoration-bg) var(--mix-light), + var(--diffs-diff-line-mix-target)), color-mix(in lab, + var(--diffs-computed-decoration-bg) var(--mix-dark), + var(--diffs-diff-line-mix-target))); + --diffs-computed-selected-line-bg: var(--diffs-computed-diff-line-bg); + --diffs-line-bg: var(--diffs-computed-diff-line-bg, inherit); + } + + &[data-merge-conflict="incoming"] { + --diffs-diff-line-mix-target: var(--conflict-bg-incoming-override, var(--diffs-modified-base)); + + &:where([data-gutter-buffer], [data-column-number]) { + color: var(--diffs-modified-base); + --diffs-diff-line-mix-target: var(--conflict-bg-incoming-number-override, var(--diffs-modified-base)); + } + + @media (pointer: fine) { + &[data-hovered] { + --mix-light: 80%; + --mix-dark: 70%; + } + } + + --diffs-computed-diff-line-bg: light-dark(color-mix(in lab, + var(--diffs-computed-decoration-bg) var(--mix-light), + var(--diffs-diff-line-mix-target)), color-mix(in lab, + var(--diffs-computed-decoration-bg) var(--mix-dark), + var(--diffs-diff-line-mix-target))); + --diffs-computed-selected-line-bg: var(--diffs-computed-diff-line-bg); + --diffs-line-bg: var(--diffs-computed-diff-line-bg, inherit); + } + } + } + + [data-gutter-buffer], [data-column-number], [data-line], [data-line-annotation], [data-merge-conflict], [data-merge-conflict-actions], [data-no-newline] { + --diffs-selection-mix-target: var(--diffs-bg-selection-override, var(--diffs-selection-base)); + + &:where([data-line], [data-line-annotation], [data-merge-conflict], [data-merge-conflict-actions], [data-no-newline])[data-selected-line] { + --mix-selection-light: 82%; + --mix-selection-dark: 75%; + + @media (pointer: fine) { + &[data-hovered]:not([data-merge-conflict], [data-line-type="change-addition"], [data-line-type="change-deletion"]) { + --mix-selection-light: 75%; + --mix-selection-dark: 70%; + } + } + } + + &:where([data-gutter-buffer], [data-column-number])[data-selected-line] { + --mix-selection-light: 75%; + --mix-selection-dark: 60%; + --diffs-selection-mix-target: var(--diffs-bg-selection-number-override, var(--diffs-selection-base)); + + @media (pointer: fine) { + &[data-hovered]:not([data-merge-conflict], [data-line-type="change-addition"], [data-line-type="change-deletion"]) { + --mix-selection-light: 70%; + --mix-selection-dark: 55%; + } + } + } + + &[data-selected-line] { + --diffs-computed-selected-line-bg: light-dark(color-mix(in lab, + var(--diffs-computed-diff-line-bg) var(--mix-selection-light), + var(--diffs-selection-mix-target)), color-mix(in lab, + var(--diffs-computed-diff-line-bg) var(--mix-selection-dark), + var(--diffs-selection-mix-target))); + --diffs-line-bg: var(--diffs-computed-selected-line-bg, inherit); + } + } + + [data-gutter-buffer], [data-column-number] { + &[data-selected-line] { + color: var(--diffs-selection-number-fg); + } + } + + [data-no-newline] { + user-select: none; + + & span { + opacity: .6; + } + } + + [data-diff-type="split"][data-overflow="scroll"] { + grid-template-columns: 1fr 1fr; + display: grid; + + & [data-additions] { + border-left: 1px solid var(--diffs-bg); + } + + & [data-deletions] { + border-right: 1px solid var(--diffs-bg); + } + } + + [data-code] { + grid-auto-flow: dense; + grid-template-columns: var(--diffs-code-grid); + overflow: var(--diffs-overflow-override, scroll) clip; + overscroll-behavior-x: none; + tab-size: var(--diffs-tab-size, 2); + padding-top: var(--diffs-gap-block, var(--diffs-gap-fallback)); + padding-bottom: max(0px, + calc(var(--diffs-gap-block, var(--diffs-gap-fallback)) - + var(--diffs-scrollbar-gutter))); + scrollbar-gutter: stable; + align-self: flex-start; + display: grid; + } + + [data-diffs-scrollbar-measure] { + opacity: 0; + pointer-events: none; + scrollbar-gutter: auto; + grid-template-columns: none; + width: 100px; + height: 100px; + padding: 0; + position: absolute; + top: -200px; + left: -200px; + } + + [data-container-size] { + container-type: inline-size; + } + + [data-code]::-webkit-scrollbar { + width: 0; + height: var(--diffs-scrollbar-gutter); + } + + [data-code]::-webkit-scrollbar-track { + background: none; + } + + [data-code]::-webkit-scrollbar-thumb { + background-color: #0000; + background-clip: content-box; + border: 1px solid #0000; + border-radius: 3px; + } + + [data-code]::-webkit-scrollbar-corner { + background-color: #0000; + } + + @supports ((-moz-appearance: none)) { + [data-code] { + scrollbar-width: thin; + scrollbar-color: var(--diffs-bg-context) transparent; + padding-bottom: var(--diffs-gap-block, var(--diffs-gap-fallback)); + } + } + + [data-diffs-header] ~ [data-diff], [data-diffs-header] ~ [data-file] { + & [data-code], &[data-overflow="wrap"] { + padding-top: 0; + } + } + + [data-gutter] { + grid-template-rows: subgrid; + grid-template-columns: subgrid; + z-index: 3; + background-color: var(--diffs-bg); + grid-column: 1; + display: grid; + position: relative; + + & [data-gutter-buffer], & [data-column-number] { + border-right: var(--diffs-gap-style, 2px solid var(--diffs-bg)); + } + } + + [data-content] { + grid-template-rows: subgrid; + grid-template-columns: subgrid; + background-color: var(--diffs-bg); + grid-column: 2; + min-width: 0; + display: grid; + } + + [data-diff-type="split"][data-overflow="wrap"] { + grid-auto-flow: dense; + grid-template-columns: repeat(2, var(--diffs-code-grid)); + padding-block: var(--diffs-gap-block, var(--diffs-gap-fallback)); + display: grid; + + & [data-deletions] { + display: contents; + + & [data-gutter] { + grid-column: 1; + } + + & [data-content] { + border-right: 1px solid var(--diffs-bg); + grid-column: 2; + } + } + + & [data-additions] { + display: contents; + + & [data-gutter] { + border-left: 1px solid var(--diffs-bg); + grid-column: 3; + } + + & [data-content] { + grid-column: 4; + } + } + } + + [data-overflow="scroll"] [data-gutter] { + position: sticky; + left: 0; + } + + [data-interactive-lines] [data-line] { + cursor: pointer; + } + + [data-interactive-line-numbers] [data-column-number] { + cursor: pointer; + touch-action: none; + } + + [data-content-buffer], [data-gutter-buffer] { + user-select: none; + min-height: 1lh; + position: relative; + } + + [data-gutter-buffer] { + padding-left: 2ch; + padding-right: 1ch; + + &:before { + content: ""; + min-width: var(--diffs-min-number-column-width, var(--diffs-min-number-column-width-default, 3ch)); + display: block; + } + } + + [data-gutter-buffer="annotation"] { + --diffs-annotation-bg: var(--diffs-bg-context-gutter); + min-height: 0; + } + + [data-gutter-buffer="buffer"] { + --diffs-line-bg: var(--diffs-bg-context-gutter); + } + + [data-content-buffer] { + background-position: 5px 0; + background-size: 8px 8px; + background-origin: border-box; + background-image: repeating-linear-gradient(-45deg, + transparent, + transparent calc(3px * 1.414), + var(--diffs-bg-buffer) calc(3px * 1.414), + var(--diffs-bg-buffer) calc(4px * 1.414)); + grid-column: 1; + } + + [data-separator] { + box-sizing: content-box; + background-color: var(--diffs-bg); + } + + [data-separator="simple"] { + min-height: 4px; + } + + [data-separator="line-info"], [data-separator="line-info-basic"], [data-separator="metadata"], [data-separator="simple"] { + background-color: var(--diffs-bg-separator); + } + + [data-separator="line-info"], [data-separator="line-info-basic"], [data-separator="metadata"] { + height: 32px; + position: relative; + } + + [data-separator-wrapper] { + user-select: none; + fill: currentColor; + background-color: var(--diffs-bg); + align-items: center; + height: 100%; + display: flex; + position: absolute; + inset-inline: 0; + } + + [data-content] [data-separator-wrapper] { + display: none; + } + + [data-separator="metadata"] [data-separator-wrapper] { + background-color: var(--diffs-bg-separator); + height: 100%; + color: var(--diffs-fg-number); + white-space: nowrap; + text-overflow: ellipsis; + min-width: min-content; + padding-inline: 1ch; + inset-inline: 100% auto; + overflow: hidden; + } + + [data-separator="line-info"] { + margin-block: var(--diffs-gap-block, var(--diffs-gap-fallback)); + + & [data-separator-wrapper] { + min-width: 16px; + } + } + + [data-separator="line-info-basic"], [data-separator="metadata"] { + margin-block: 0; + } + + [data-separator="line-info"][data-separator-first] { + margin-top: 0; + } + + [data-separator="line-info"][data-separator-last] { + margin-bottom: 0; + } + + [data-expand-index] [data-separator-wrapper] { + grid-template-columns: 32px auto; + display: grid; + } + + [data-expand-index] [data-separator-wrapper][data-separator-multi-button] { + grid-template-columns: 32px 32px auto; + } + + [data-expand-button], [data-separator-content] { + background-color: var(--diffs-bg-separator); + flex: none; + align-items: center; + display: flex; + } + + [data-expand-index] [data-separator-content]:hover { + cursor: pointer; + text-decoration: underline; + } + + [data-expand-button] { + cursor: pointer; + min-width: 32px; + color: var(--diffs-fg-number); + border-right: 2px solid var(--diffs-bg); + flex-shrink: 0; + justify-content: center; + align-self: stretch; + + &:hover { + color: var(--diffs-fg); + } + + &[data-expand-all-button] { + display: none; + } + } + + [data-expand-down] [data-icon] { + transform: scaleY(-1); + } + + [data-separator-content] { + height: 100%; + color: var(--diffs-fg-number); + flex: auto; + justify-content: flex-start; + padding: 0 1ch; + overflow: hidden; + } + + [data-separator="line-info"], [data-separator="line-info-basic"] { + & [data-separator-content] { + user-select: none; + height: 100%; + overflow: clip; + } + } + + [data-unmodified-lines] { + text-overflow: ellipsis; + white-space: nowrap; + flex: 0 auto; + min-width: 0; + display: block; + overflow: hidden; + } + + @supports (width: 1cqi) { + [data-unified] { + & [data-separator="line-info"] [data-separator-wrapper] { + padding-inline: var(--diffs-gap-inline, var(--diffs-gap-fallback)); + width: 100cqi; + + & [data-separator-content] { + border-radius: 6px; + } + } + + & [data-separator="line-info"][data-expand-index] [data-separator-wrapper] [data-separator-content] { + border-top-left-radius: unset; + border-bottom-left-radius: unset; + } + } + + [data-gutter] { + & [data-separator="line-info"] [data-separator-wrapper] { + padding-left: var(--diffs-gap-inline, var(--diffs-gap-fallback)); + } + + & [data-separator="line-info"] [data-separator-content] { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + } + + & [data-separator="line-info"][data-expand-index] [data-separator-content] { + border-top-left-radius: unset; + border-bottom-left-radius: unset; + } + } + + [data-additions] { + & [data-content] [data-separator="line-info"] { + background-color: var(--diffs-bg); + + & [data-separator-wrapper] { + display: none; + } + } + + & [data-gutter] [data-separator="line-info"] [data-separator-wrapper] { + background-color: var(--diffs-bg-separator); + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; + height: 100%; + display: block; + + & [data-separator-content], & [data-expand-button] { + display: none; + } + } + } + + [data-overflow="scroll"] [data-additions] [data-gutter] [data-separator="line-info"] [data-separator-wrapper] { + width: calc(100cqi - var(--diffs-gap-inline, var(--diffs-gap-fallback))); + } + + [data-overflow="wrap"] [data-additions] [data-content] [data-separator="line-info"] [data-separator-wrapper] { + background-color: var(--diffs-bg-separator); + height: 100%; + margin-right: var(--diffs-gap-inline, var(--diffs-gap-fallback)); + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; + display: block; + + & [data-separator-content], & [data-expand-button] { + display: none; + } + } + + [data-separator="line-info"] [data-separator-wrapper] { + & [data-expand-both], & [data-expand-down], & [data-expand-up] { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + } + } + + @media (pointer: fine) { + [data-separator="line-info"] [data-separator-wrapper] { + &[data-separator-multi-button] { + & [data-expand-up] { + border-top-left-radius: 6px; + border-bottom-left-radius: unset; + } + + & [data-expand-down] { + border-bottom-left-radius: 6px; + border-top-left-radius: unset; + } + } + } + } + } + + @media (pointer: coarse) { + [data-separator="line-info-basic"] [data-separator-wrapper][data-separator-multi-button] { + grid-template-columns: 34px 34px auto; + + & [data-separator-content] { + grid-column: unset; + grid-row: unset; + } + } + + @supports (width: 1cqi) { + [data-separator="line-info"] [data-separator-wrapper] { + & [data-expand-both], & [data-expand-down], & [data-expand-up] { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + } + + &[data-separator-multi-button] { + & [data-expand-up] { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + } + + & [data-expand-down] { + border-bottom-left-radius: unset; + border-top-left-radius: unset; + } + } + } + } + } + + @media (pointer: fine) { + [data-separator-wrapper][data-separator-multi-button] { + grid-template-rows: 50% 50%; + display: grid; + + & [data-separator-content] { + grid-area: 1 / 2 / -1; + min-width: min-content; + } + + & [data-expand-button] { + grid-column: 1; + } + } + + [data-separator="line-info"] [data-separator-wrapper], [data-separator="line-info"] [data-separator-wrapper][data-separator-multi-button] { + grid-template-columns: 34px auto; + } + + [data-separator="line-info-basic"][data-expand-index] [data-separator-wrapper] { + grid-template-columns: 100% auto; + } + + [data-separator="line-info"], [data-separator="line-info-basic"] { + & [data-separator-multi-button] { + & [data-expand-up] { + border-bottom: 1px solid var(--diffs-bg); + border-right: 2px solid var(--diffs-bg); + } + + & [data-expand-down] { + border-top: 1px solid var(--diffs-bg); + border-right: 2px solid var(--diffs-bg); + } + } + } + } + + [data-additions] [data-gutter] [data-separator-wrapper], [data-additions] [data-separator="line-info-basic"] [data-separator-wrapper], [data-content] [data-separator-wrapper] { + display: none; + } + + [data-line-annotation] { + min-height: var(--diffs-annotation-min-height, 0); + z-index: 2; + } + + [data-merge-conflict-actions] { + z-index: 2; + } + + [data-separator="custom"] { + grid-template-columns: subgrid; + display: grid; + } + + [data-line], [data-column-number], [data-no-newline] { + padding-inline: 1ch; + position: relative; + } + + [data-indicators="classic"] [data-line] { + padding-inline-start: 2ch; + } + + [data-indicators="classic"] { + & [data-line-type="change-addition"], & [data-line-type="change-deletion"] { + &[data-no-newline], &[data-line] { + &:before { + user-select: none; + width: 1ch; + height: 1lh; + display: inline-block; + position: absolute; + top: 0; + left: 0; + } + } + } + + & [data-line-type="change-addition"] { + &[data-line], &[data-no-newline] { + &:before { + content: "+"; + color: var(--diffs-addition-base); + } + } + } + + & [data-line-type="change-deletion"] { + &[data-line], &[data-no-newline] { + &:before { + content: "-"; + color: var(--diffs-deletion-base); + } + } + } + } + + [data-indicators="bars"] { + & [data-line-type="change-deletion"], & [data-line-type="change-addition"] { + &[data-column-number] { + &:before { + content: ""; + user-select: none; + contain: strict; + width: 4px; + height: 100%; + display: block; + position: absolute; + top: 0; + left: 0; + } + } + } + + & [data-line-type="change-deletion"] { + &[data-column-number] { + &:before { + background-image: linear-gradient(0deg, + var(--diffs-bg-deletion) 50%, + var(--diffs-deletion-base) 50%); + background-repeat: repeat; + background-size: 2px 2px; + background-size: calc(1lh / round(1lh / 2px)) + calc(1lh / round(1lh / 2px)); + } + } + } + + & [data-line-type="change-addition"] { + &[data-column-number] { + &:before { + background-color: var(--diffs-addition-base); + } + } + } + } + + [data-overflow="wrap"] { + & [data-line], & [data-annotation-content] { + white-space: pre-wrap; + word-break: break-word; + } + } + + [data-overflow="scroll"] [data-line] { + white-space: pre; + min-height: 1lh; + } + + [data-column-number] { + box-sizing: content-box; + text-align: right; + user-select: none; + color: var(--diffs-fg-number); + padding-left: 2ch; + } + + [data-line-number-content] { + min-width: var(--diffs-min-number-column-width, var(--diffs-min-number-column-width-default, 3ch)); + z-index: 1; + display: inline-block; + position: relative; + } + + [data-disable-line-numbers] { + & [data-gutter-buffer], & [data-column-number] { + min-width: 4px; + padding: 0; + + &:before { + min-width: 0; + } + } + + & [data-line-number-content] { + display: none; + } + + & [data-gutter-utility-slot] { + right: unset; + justify-content: flex-start; + left: 0; + } + + &[data-indicators="bars"] [data-gutter-utility-slot] { + left: 6px; + } + } + + [data-file][data-disable-line-numbers] { + & [data-gutter-buffer], & [data-column-number] { + border-right: 0; + min-width: 0; + } + } + + [data-diff-span] { + box-decoration-break: clone; + border-radius: 3px; + } + + [data-line-type="change-addition"] [data-diff-span] { + background-color: var(--diffs-bg-addition-emphasis); + } + + [data-line-type="change-deletion"] [data-diff-span] { + background-color: var(--diffs-bg-deletion-emphasis); + } + + [data-merge-conflict="marker-start"], [data-merge-conflict="marker-base"], [data-merge-conflict="marker-separator"], [data-merge-conflict="marker-end"] { + color: var(--diffs-fg); + padding-left: 1ch; + } + + [data-merge-conflict="marker-start"], [data-merge-conflict="marker-end"] { + align-items: center; + display: flex; + + &:after { + color: var(--diffs-fg-conflict-marker); + font-size: .75rem; + font-style: normal; + line-height: 1.25rem; + font-family: var(--diffs-header-font-family, var(--diffs-header-font-fallback)); + padding-left: 1ch; + } + } + + [data-merge-conflict="marker-start"]:after { + content: "(Current Change)"; + } + + [data-merge-conflict="marker-end"]:after { + content: "(Incoming Change)"; + } + + [data-merge-conflict-actions-content] { + min-height: 1.75rem; + font-family: var(--diffs-header-font-family, var(--diffs-header-font-fallback)); + color: var(--diffs-fg); + align-items: center; + gap: .25rem; + padding-inline: .5rem; + font-size: .75rem; + line-height: 1.2; + display: flex; + } + + [data-merge-conflict-action] { + appearance: none; + color: var(--diffs-fg-number); + font: inherit; + cursor: pointer; + background: none; + border: 0; + padding: 0; + font-style: normal; + } + + [data-merge-conflict-action]:hover { + color: var(--diffs-fg); + } + + [data-merge-conflict-action="current"]:hover { + color: var(--diffs-addition-base); + } + + [data-merge-conflict-action="incoming"]:hover { + color: var(--diffs-modified-base); + } + + [data-merge-conflict-action-separator] { + color: var(--diffs-fg-number); + opacity: .6; + user-select: none; + } + + [data-diffs-header="default"] { + background-color: var(--diffs-bg); + justify-content: space-between; + align-items: center; + gap: var(--diffs-gap-inline, var(--diffs-gap-fallback)); + min-height: calc(1lh + (var(--diffs-gap-block, var(--diffs-gap-fallback)) * 3)); + z-index: 2; + flex-direction: row; + padding-inline: 16px; + display: flex; + position: relative; + top: 0; + } + + [data-header-content] { + align-items: center; + gap: var(--diffs-gap-inline, var(--diffs-gap-fallback)); + white-space: nowrap; + flex-direction: row; + min-width: 0; + display: flex; + } + + [data-header-content] [data-prev-name], [data-header-content] [data-title] { + text-overflow: ellipsis; + white-space: nowrap; + direction: rtl; + min-width: 0; + overflow: hidden; + } + + [data-prev-name] { + opacity: .7; + } + + [data-rename-icon] { + fill: currentColor; + flex-grow: 0; + flex-shrink: 0; + } + + [data-diffs-header="default"] [data-metadata] { + white-space: nowrap; + align-items: center; + gap: 1ch; + display: flex; + } + + [data-diffs-header="default"] [data-additions-count] { + font-family: var(--diffs-font-family, var(--diffs-font-fallback)); + color: var(--diffs-addition-base); + } + + [data-diffs-header="default"] [data-deletions-count] { + font-family: var(--diffs-font-family, var(--diffs-font-fallback)); + color: var(--diffs-deletion-base); + } + + [data-change-icon] { + fill: currentColor; + flex-shrink: 0; + } + + [data-change-icon="change"], [data-change-icon="rename-pure"], [data-change-icon="rename-changed"] { + color: var(--diffs-modified-base); + } + + [data-change-icon="new"] { + color: var(--diffs-addition-base); + } + + [data-change-icon="deleted"] { + color: var(--diffs-deletion-base); + } + + [data-change-icon="file"] { + opacity: .6; + } + + [data-annotation-content] { + z-index: 2; + isolation: isolate; + align-self: flex-start; + min-width: 0; + display: flow-root; + position: relative; + } + + [data-overflow="scroll"] [data-annotation-content], [data-overflow="scroll"] [data-merge-conflict-actions-content] { + width: var(--diffs-column-content-width, auto); + left: var(--diffs-column-number-width, 0); + position: sticky; + } + + [data-annotation-slot] { + text-wrap-mode: wrap; + word-break: normal; + white-space-collapse: collapse; + } + + [data-gutter-utility-slot] { + touch-action: none; + justify-content: flex-end; + display: flex; + position: absolute; + top: 0; + bottom: 0; + right: 0; + } + + [data-utility-button] { + appearance: none; + cursor: pointer; + width: 1lh; + height: 1lh; + font-size: var(--diffs-font-size, 13px); + line-height: var(--diffs-line-height, 20px); + background-color: var(--diffs-modified-base); + color: var(--diffs-bg); + fill: currentColor; + z-index: 4; + touch-action: none; + border: none; + border-radius: 4px; + justify-content: center; + align-items: center; + margin-right: calc(-1lh + 1ch); + padding: 0; + display: flex; + position: relative; + + &:before { + content: ""; + display: block; + position: absolute; + inset: 0 0 0 -4px; + } + } + + [data-decoration-bar-stack] { + pointer-events: none; + isolation: isolate; + z-index: 1; + background-color: var(--diffs-decoration-bar-color, transparent); + box-sizing: content-box; + border-left: 2px solid var(--diffs-bg); + border-right: 2px solid var(--diffs-bg); + width: 6px; + position: absolute; + top: 0; + bottom: 0; + right: -2px; + + [data-decoration-bar-depth="1"] & { + background-color: color-mix(in lab, + var(--diffs-bg) 20%, + var(--diffs-decoration-bar-color, transparent)); + } + + [data-decoration-bar-depth="2"] & { + background-color: color-mix(in lab, + var(--diffs-bg) 45%, + var(--diffs-decoration-bar-color, transparent)); + } + + [data-decoration-bar-depth="3"] & { + background-color: color-mix(in lab, + var(--diffs-bg) 65%, + var(--diffs-decoration-bar-color, transparent)); + } + + [data-decoration-bar-start] & { + border-top-left-radius: 5px; + border-top-right-radius: 5px; + } + + [data-decoration-bar-end] & { + z-index: 3; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 5px; + } + } + + [data-placeholder] { + contain: strict; + } + + [data-error-wrapper] { + padding: var(--diffs-gap-block, var(--diffs-gap-fallback)) + var(--diffs-gap-inline, var(--diffs-gap-fallback)); + scrollbar-width: none; + max-height: 400px; + overflow: auto; + + & [data-error-message] { + color: var(--diffs-deletion-base); + font-size: 18px; + font-weight: bold; + } + + & [data-error-stack] { + color: var(--diffs-fg-number); + } + } +} + +@layer theme, rendered, unsafe; +`;let et;function He(e){if(et!=null)return et;const t=e.host;if(typeof HTMLElement<"u"&&t instanceof HTMLElement&&!t.isConnected)return;const n=document.createElement("div");n.setAttribute("data-code",""),n.setAttribute(no,"true");const i=document.createElement("div");return i.style.position="relative",i.style.width="200%",i.style.height="200%",n.appendChild(i),e.appendChild(n),et=Math.max(n.offsetHeight-n.clientHeight,0),n.remove(),et}function Xi(e){return`${Ti}: ${e==null?"var(--diffs-scrollbar-gutter-fallback)":`${e}px`};`}const fn="@layer base, theme, rendered, unsafe;",es=new RegExp(`${ns(Ti)}\\s*:\\s*[^;]+;`);function ts(e){return`${fn} +${Yi} +@layer theme { + ${e} +}`}function pn(e){return`${fn} +@layer unsafe { + ${e} +}`}function gn(e,t="system",n){return`${fn} +@layer rendered { + :host {${t==="system"?"":` + color-scheme: ${t};`} + ${Xi(n)} + ${e} + } +}`}function Qi(e,t){const n=Xi(t);return e.replace(es,n)}function ns(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ge({code:e,pre:t,columnType:n,rowSpan:i,containerSize:r=!1}={}){return e==null&&(e=document.createElement("code"),e.setAttribute("data-code",""),n!=null&&e.setAttribute(`data-${n}`,""),t?.appendChild(e)),i!=null?e.style.setProperty("grid-row",`span ${i}`):e.style.removeProperty("grid-row"),r?e.setAttribute("data-container-size",""):e.removeAttribute("data-container-size"),e}function Ji(e,t){if(t==null)return;const n=e.shadowRoot??e.attachShadow({mode:"open"});n.innerHTML===""&&(n.innerHTML=t)}function mn(e,{type:t,diffIndicators:n,disableBackground:i,disableLineNumbers:r,overflow:o,split:s,totalLines:l,customProperties:a}){if(a!=null)for(const d in a){const h=a[d];h!=null&&e.setAttribute(d,`${h}`)}switch(t==="diff"?(e.setAttribute("data-diff",""),e.removeAttribute("data-file")):(e.setAttribute("data-file",""),e.removeAttribute("data-diff")),n){case"bars":case"classic":e.setAttribute("data-indicators",n);break;case"none":e.removeAttribute("data-indicators");break}return r?e.setAttribute("data-disable-line-numbers",""):e.removeAttribute("data-disable-line-numbers"),i?e.removeAttribute("data-background"):e.setAttribute("data-background",""),t==="diff"?e.setAttribute("data-diff-type",s?"split":"single"):e.removeAttribute("data-diff-type"),e.setAttribute("data-overflow",o),e.style.setProperty("--diffs-min-number-column-width-default",`${`${l}`.length}ch`),e}function Ke(e){if(typeof HTMLStyleElement<"u"&&e instanceof HTMLStyleElement)return!0;const t=e.tagName??e.nodeName;return typeof t=="string"&&t.toLowerCase()==="style"}function Nn(e){return{theme:e?.theme,disableLineNumbers:e?.disableLineNumbers,overflow:e?.overflow,themeType:e?.themeType,collapsed:e?.collapsed,disableFileHeader:e?.disableFileHeader,disableVirtualizationBuffers:e?.disableVirtualizationBuffers,stickyHeader:e?.stickyHeader,preferredHighlighter:e?.preferredHighlighter,useCSSClasses:e?.useCSSClasses,useTokenTransformer:e?.useTokenTransformer,tokenizeMaxLineLength:e?.tokenizeMaxLineLength,tokenizeMaxLength:e?.tokenizeMaxLength,unsafeCSS:e?.unsafeCSS,headerRenderMode:e?.renderCustomHeader!=null?"custom":"default"}}function bn({shadowRoot:e,currentNode:t,themeCSS:n}){if(n.trim()===""){t?.remove();return}return t??=is(),t.textContent=n,t.parentNode!==e&&e.appendChild(t),t}function is(){const e=document.createElement("style");return e.setAttribute(ki,""),e}if(typeof HTMLElement<"u"&&customElements.get("diffs-container")==null){let e;class t extends HTMLElement{constructor(){if(super(),this.shadowRoot!=null)return;const i=this.attachShadow({mode:"open"});e==null&&(e=new CSSStyleSheet,e.replaceSync(Yi)),i.adoptedStyleSheets=[e]}connectedCallback(){He(this.shadowRoot??this.attachShadow({mode:"open"}))}}customElements.define(xi,t)}const rs=[];let os=-1;var ss=class{options;workerManager;isContainerManaged;static LoadedCustomComponent=!0;__id=`file:${++os}`;type="file";fileContainer;spriteSVG;pre;code;bufferBefore;bufferAfter;themeCSSStyle;appliedThemeCSS;hasAdoptedThemeCSS=!1;unsafeCSSStyle;appliedUnsafeCSS;gutterUtilityContent;errorWrapper;placeHolder;lastRenderedHeaderHTML;cachedHeaderHTML;appliedPreAttributes;lastRowCount;mounted=!1;headerElement;headerCustom;headerPrefix;headerMetadata;fileRenderer;resizeManager;interactionManager;annotationCache=new Map;lineAnnotations=[];managersDirty=!1;file;renderRange;enabled=!0;constructor(e={theme:P},t,n=!1){this.options=e,this.workerManager=t,this.isContainerManaged=n,this.fileRenderer=new Qo(e,this.handleHighlightRender,this.workerManager),this.resizeManager=new Hi,this.interactionManager=new Ai("file",qe(e)),this.workerManager?.subscribeToThemeChanges(this)}handleHighlightRender=()=>{this.rerender()};rerender(){!this.enabled||this.file==null||this.render({file:this.file,forceRender:!0,renderRange:this.renderRange})}onThemeChange(){this.fileRenderer.clearRenderCache(),this.rerender()}setOptions(e){e!=null&&(this.options=e,this.cachedHeaderHTML=void 0,this.syncInteractionOptions())}syncInteractionOptions(){this.interactionManager.setOptions(qe(this.options))}mergeOptions(e){this.options={...this.options,...e}}setThemeType(e){(this.options.themeType??"system")!==e&&(this.mergeOptions({themeType:e}),this.applyCachedThemeState(e))}applyCachedThemeState(e){if(typeof this.options.theme=="string"||this.fileContainer==null||this.appliedThemeCSS==null)return!1;const t=this.appliedThemeCSS.baseThemeType??e;return this.appliedThemeCSS.themeType===t?!1:(this.applyThemeState(this.fileContainer,this.appliedThemeCSS.themeStyles,e,this.appliedThemeCSS.baseThemeType),!0)}hasThemeChanged(){return this.appliedThemeCSS!=null&&!Me(this.appliedThemeCSS.theme,this.options.theme??P)}getHoveredLine=()=>this.interactionManager.getHoveredLine();setLineAnnotations(e){this.lineAnnotations=e}setSelectedLines(e,t){this.interactionManager.setSelection(e,t)}flushManagers(){if(!this.managersDirty||this.pre==null){this.managersDirty=!1;return}const{overflow:e="scroll"}=this.options;this.interactionManager.setup(this.pre),this.resizeManager.setup(this.pre,e==="wrap"),this.managersDirty=!1}cleanUp(e=!1){this.emitPostRender(!0),this.resizeManager.cleanUp(),this.interactionManager.cleanUp(),this.managersDirty=!1,this.workerManager?.unsubscribeToThemeChanges(this),this.renderRange=void 0,this.isContainerManaged||this.fileContainer?.remove(),this.fileContainer=void 0,this.mounted=!1,e||(this.lineAnnotations=[]),this.annotationCache.clear(),this.pre=void 0,this.bufferBefore=void 0,this.bufferAfter=void 0,this.appliedPreAttributes=void 0,this.lastRowCount=void 0,this.headerElement=void 0,this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0,this.lastRenderedHeaderHTML=void 0,e||(this.cachedHeaderHTML=void 0),this.errorWrapper=void 0,this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0,this.hasAdoptedThemeCSS=!1,this.unsafeCSSStyle=void 0,this.appliedUnsafeCSS=void 0,this.placeHolder=void 0,this.unsafeCSSStyle=void 0,e?this.fileRenderer.recycle():(this.fileRenderer.cleanUp(),this.workerManager=void 0,this.file=void 0),this.enabled=!1}virtualizedSetup(){this.enabled=!0,this.workerManager?.subscribeToThemeChanges(this)}hydrate(e){const{fileContainer:t,prerenderedHTML:n,preventEmit:i=!1,file:r,lineAnnotations:o}=e;this.hydrateElements(t,n),as(this.pre,r,this.options.collapsed)||ls(this.headerElement,r,this.options.disableFileHeader)?this.render({...e,preventEmit:!0}):this.hydrationSetup({file:r,lineAnnotations:o}),i||this.emitPostRender()}hydrateElements(e,t){this.fileContainer!==e&&this.emitPostRender(!0),Ji(e,t);for(const n of Array.from(e.shadowRoot?.children??[])){if(n instanceof SVGElement){this.spriteSVG=n;continue}if(n instanceof HTMLElement){if(n instanceof HTMLPreElement){this.pre=n,this.appliedPreAttributes=void 0;continue}if(n instanceof HTMLStyleElement&&n.hasAttribute("data-theme-css")){this.themeCSSStyle=n;continue}if(n instanceof HTMLStyleElement&&n.hasAttribute("data-unsafe-css")){this.unsafeCSSStyle=n,this.appliedUnsafeCSS=n.textContent;continue}if("diffsHeader"in n.dataset){this.headerElement=n,this.lastRenderedHeaderHTML=void 0;continue}}}this.pre!=null&&(this.syncCodeNodeFromPre(this.pre),this.pre.removeAttribute("data-dehydrated")),this.fileContainer=e,this.hydrateMeasuredScrollbar()}hydrationSetup({file:e,lineAnnotations:t}){this.lineAnnotations=t??this.lineAnnotations,this.file=e,this.fileRenderer.setOptions(Nn(this.options)),this.syncInteractionOptions(),this.pre!=null&&(this.fileRenderer.hydrate(e),this.renderAnnotations(),this.renderGutterUtility(),this.injectUnsafeCSS(),this.managersDirty=!0,this.flushManagers())}getOrCreateLineCache(e=this.file){return e!=null?this.fileRenderer.getOrCreateLineCache(e):rs}render({file:e,fileContainer:t,forceRender:n=!1,preventEmit:i=!1,containerWrapper:r,deferManagers:o=!1,lineAnnotations:s,renderRange:l}){const{collapsed:a=!1,themeType:d="system"}=this.options;if(!this.enabled)throw new Error("File.render: attempting to call render after cleaned up");const h=a?void 0:l,c=this.renderRange,u=this.hasThemeChanged(),f=s!=null&&(s.length>0||this.lineAnnotations.length>0)?s!==this.lineAnnotations:!1,p=!se(this.file,e);if(!a&&!n&&yt(h,this.renderRange)&&!p&&!f&&!u)return this.applyCachedThemeState(d);this.renderRange=h,p&&(this.cachedHeaderHTML=void 0),this.file=e,this.fileRenderer.setOptions(Nn(this.options)),this.syncInteractionOptions(),s!=null&&this.setLineAnnotations(s),this.fileRenderer.setLineAnnotations(this.lineAnnotations);const{disableErrorHandling:m=!1,disableFileHeader:y=!1}=this.options;if(y&&(this.headerElement!=null&&(this.headerElement.remove(),this.headerElement=void 0,this.lastRenderedHeaderHTML=void 0),this.clearHeaderSlots()),t=this.getOrCreateFileContainerNode(t,r),this.applyCachedThemeState(d),a){this.removeRenderedCode(),this.clearAuxiliaryNodes();try{const v=this.fileRenderer.renderFile(e,Ei);v!=null&&this.applyThemeState(t,v.themeStyles,d,v.baseThemeType),v?.headerAST!=null&&this.applyHeaderToDOM(v.headerAST,t),this.injectUnsafeCSS()}catch(v){if(m)throw v;console.error(v),v instanceof Error&&this.applyErrorToDOM(v,t)}return i||this.emitPostRender(),!0}try{const v=this.getOrCreatePreNode(t);if(!this.canPartiallyRender(n,f,p||u)||!this.applyPartialRender(c,h)){const g=this.fileRenderer.renderFile(e,h);if(g==null)return this.workerManager?.isInitialized()===!1&&this.workerManager.initialize().then(()=>this.rerender()),!1;this.applyThemeState(t,g.themeStyles,d,g.baseThemeType),g.headerAST!=null&&this.applyHeaderToDOM(g.headerAST,t),this.applyFullRender(g,v)}this.applyBuffers(v,h),this.injectUnsafeCSS(),this.managersDirty=!0,o||this.flushManagers(),this.renderAnnotations(),this.renderGutterUtility()}catch(v){if(m)throw v;console.error(v),v instanceof Error&&this.applyErrorToDOM(v,t)}return i||this.emitPostRender(),!0}emitPostRender(e=!1){const{fileContainer:t,options:{onPostRender:n}}=this;if(e){if(!this.mounted||(this.mounted=!1,t==null))return;n?.(t,this,"unmount");return}if(t==null)return;const i=this.mounted?"update":"mount";this.mounted=!0,n?.(t,this,i)}removeRenderedCode(){this.resizeManager.cleanUp(),this.interactionManager.cleanUp(),this.bufferBefore?.remove(),this.bufferBefore=void 0,this.bufferAfter?.remove(),this.bufferAfter=void 0,this.code?.remove(),this.code=void 0,this.pre?.remove(),this.pre=void 0,this.appliedPreAttributes=void 0,this.lastRowCount=void 0}clearAuxiliaryNodes(){for(const{element:e}of this.annotationCache.values())e.remove();this.annotationCache.clear(),this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0}canPartiallyRender(e,t,n){return!(e||t||n)}renderPlaceholder(e){if(this.fileContainer==null)return!1;if(this.emitPostRender(!0),this.cleanChildNodes(),this.placeHolder==null){const t=this.fileContainer.shadowRoot??this.fileContainer.attachShadow({mode:"open"});this.placeHolder=document.createElement("div"),this.placeHolder.dataset.placeholder="",t.appendChild(this.placeHolder)}return this.placeHolder.style.setProperty("height",`${e}px`),!0}primeHighlightCache(){const{file:e,workerManager:t}=this;e==null||e.cacheKey==null||t==null||Xt(e)||this.fileRenderer.getOrCreateLineCache(e).length>(this.options.tokenizeMaxLength??1e5)||t.primeFileHighlightCache(e)}cleanChildNodes(){this.resizeManager.cleanUp(),this.interactionManager.cleanUp(),this.bufferAfter?.remove(),this.bufferBefore?.remove(),this.code?.remove(),this.errorWrapper?.remove(),this.headerElement?.remove(),this.gutterUtilityContent?.remove(),this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerCustom?.remove(),this.pre?.remove(),this.spriteSVG?.remove(),this.themeCSSStyle?.remove(),this.unsafeCSSStyle?.remove(),this.bufferAfter=void 0,this.bufferBefore=void 0,this.code=void 0,this.errorWrapper=void 0,this.headerElement=void 0,this.gutterUtilityContent=void 0,this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0,this.pre=void 0,this.spriteSVG=void 0,this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0,this.hasAdoptedThemeCSS=!1,this.unsafeCSSStyle=void 0,this.appliedUnsafeCSS=void 0,this.lastRenderedHeaderHTML=void 0,this.lastRowCount=void 0,this.mounted=!1}renderAnnotations(){if(this.isContainerManaged||this.fileContainer==null){for(const{element:n}of this.annotationCache.values())n.remove();this.annotationCache.clear();return}const e=new Map(this.annotationCache),{renderAnnotation:t}=this.options;if(t!=null&&this.lineAnnotations.length>0)for(const[n,i]of this.lineAnnotations.entries()){const r=`${n}-${pe(i)}`;let o=this.annotationCache.get(r);if(o==null||!Jo(i,o.annotation)){o?.element.remove();const s=t(i);if(s==null)continue;o={element:un(pe(i)),annotation:i},o.element.appendChild(s),this.fileContainer.appendChild(o.element),this.annotationCache.set(r,o)}e.delete(r)}for(const[n,{element:i}]of e.entries())this.annotationCache.delete(n),i.remove()}renderGutterUtility(){const{renderGutterUtility:e}=this.options;if(this.fileContainer==null||e==null){this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0;return}const t=e(this.interactionManager.getHoveredLine);if(t!=null&&this.gutterUtilityContent!=null)return;if(t==null){this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0;return}const n=qi();n.appendChild(t),this.fileContainer.appendChild(n),this.gutterUtilityContent=n}injectUnsafeCSS(){const{unsafeCSS:e}=this.options,t=this.fileContainer?.shadowRoot;if(t!=null){if(e==null||e===""){this.unsafeCSSStyle!=null&&(this.unsafeCSSStyle.remove(),this.unsafeCSSStyle=void 0),this.appliedUnsafeCSS=void 0;return}this.unsafeCSSStyle?.parentNode===t&&this.appliedUnsafeCSS===e||(this.unsafeCSSStyle??=Ki(),this.unsafeCSSStyle.parentNode!==t&&t.appendChild(this.unsafeCSSStyle),this.unsafeCSSStyle.textContent=pn(e),this.appliedUnsafeCSS=e)}}applyThemeState(e,t,n,i){const r=e.shadowRoot??e.attachShadow({mode:"open"}),o=i??n,s=this.options.theme??P,l=typeof s=="string"?s:{...s},a=He(r);if(this.themeCSSStyle?.parentNode===r&&this.appliedThemeCSS?.themeStyles===t&&this.appliedThemeCSS.themeType===o&&this.appliedThemeCSS.scrollbarGutter===a){this.appliedThemeCSS.theme=l;return}if(this.hasAdoptedThemeCSS&&this.themeCSSStyle?.parentNode===r){this.hasAdoptedThemeCSS=!1,this.appliedThemeCSS={theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a};return}this.themeCSSStyle=bn({shadowRoot:r,currentNode:this.themeCSSStyle,themeCSS:gn(t,o,a)}),this.appliedThemeCSS=this.themeCSSStyle!=null?{theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a}:void 0}hydrateMeasuredScrollbar(){const e=this.fileContainer?.shadowRoot;e==null||this.themeCSSStyle==null||(this.themeCSSStyle.textContent=Qi(this.themeCSSStyle.textContent??"",He(e)))}applyFullRender(e,t){this.cleanupErrorWrapper(),this.applyPreNodeAttributes(t,e),this.code=Ge({code:this.code}),this.code.innerHTML=this.fileRenderer.renderPartialHTML(this.fileRenderer.renderCodeAST(e)),t.replaceChildren(this.code),this.lastRowCount=e.rowCount}applyPartialRender(e,t){if(e==null||t==null)return!1;const{file:n,code:i}=this,r=i!=null?this.getColumns(i):void 0;if(n==null||i==null||r==null)return!1;const o=e.startingLine,s=t.startingLine,l=e.totalLines===1/0?Number.POSITIVE_INFINITY:o+e.totalLines,a=t.totalLines===1/0?Number.POSITIVE_INFINITY:s+t.totalLines,d=Math.max(o,s),h=Math.min(l,a);if(h<=d||!this.trimDOMToOverlap(r.gutter,d,h)||!this.trimDOMToOverlap(r.content,d,h))return!1;let{length:c}=r.content.children;const u=(y,v)=>{if(!(v<=0))return this.fileRenderer.renderFile(n,{startingLine:y,totalLines:v,bufferBefore:0,bufferAfter:0})},f=sh?u(h,p):void 0;return m===void 0&&a>h?!1:(this.cleanupErrorWrapper(),f!=null&&(r.gutter.insertAdjacentHTML("afterbegin",this.fileRenderer.renderPartialHTML(f.gutterAST)),r.content.insertAdjacentHTML("afterbegin",this.fileRenderer.renderPartialHTML(f.contentAST)),c+=f.rowCount),m!=null&&(r.gutter.insertAdjacentHTML("beforeend",this.fileRenderer.renderPartialHTML(m.gutterAST)),r.content.insertAdjacentHTML("beforeend",this.fileRenderer.renderPartialHTML(m.contentAST)),c+=m.rowCount),this.lastRowCount!==c&&(r.gutter.style.setProperty("grid-row",`span ${c}`),r.content.style.setProperty("grid-row",`span ${c}`),this.lastRowCount=c),!0)}getColumns(e){const t=e.children[0],n=e.children[1];if(!(!(t instanceof HTMLElement)||!(n instanceof HTMLElement)||t.dataset.gutter==null||n.dataset.content==null))return{gutter:t,content:n}}trimDOMToOverlap(e,t,n){const i=this.getDOMBoundaryIndices(e,[t,n]),r=i.get(t)??e.children.length,o=i.get(n)??e.children.length;if(r>o)return!1;for(let s=e.children.length-1;s>=o;s-=1)e.children[s]?.remove();for(let s=r-1;s>=0;s-=1)e.children[s]?.remove();return!0}getDOMBoundaryIndices(e,t){const n=[...new Set(t)].sort((l,a)=>l-a),i=new Map;if(n.length===0)return i;let r=0,o=n[r];const{children:s}=e;o===0&&(i.set(0,0),r+=1,o=n[r]);for(let l=0;l=o;)i.set(o,l),r+=1,o=n[r];if(r>=n.length)break}}for(const l of n)i.has(l)||i.set(l,s.length);return i}getLineIndexFromDOMNode(e){const t=e.dataset.lineIndex;if(t==null)return;const n=Number(t);return Number.isNaN(n)?void 0:n}applyBuffers(e,t){if(t==null||this.shouldDisableVirtualizationBuffers()){this.bufferBefore!=null&&(this.bufferBefore.remove(),this.bufferBefore=void 0),this.bufferAfter!=null&&(this.bufferAfter.remove(),this.bufferAfter=void 0);return}t.bufferBefore>0?(this.bufferBefore==null&&(this.bufferBefore=document.createElement("div"),this.bufferBefore.dataset.virtualizerBuffer="before",e.before(this.bufferBefore)),this.bufferBefore.style.setProperty("height",`${t.bufferBefore}px`),this.bufferBefore.style.setProperty("contain","strict")):this.bufferBefore!=null&&(this.bufferBefore.remove(),this.bufferBefore=void 0),t.bufferAfter>0?(this.bufferAfter==null&&(this.bufferAfter=document.createElement("div"),this.bufferAfter.dataset.virtualizerBuffer="after",e.after(this.bufferAfter)),this.bufferAfter.style.setProperty("height",`${t.bufferAfter}px`),this.bufferAfter.style.setProperty("contain","strict")):this.bufferAfter!=null&&(this.bufferAfter.remove(),this.bufferAfter=void 0)}shouldDisableVirtualizationBuffers(){return this.options.disableVirtualizationBuffers??!1}applyHeaderToDOM(e,t){const{file:n}=this;if(n==null)return;this.cleanupErrorWrapper(),this.placeHolder?.remove(),this.placeHolder=void 0;const i=this.cachedHeaderHTML??fe(e);if(this.cachedHeaderHTML=i,i!==this.lastRenderedHeaderHTML){const l=document.createElement("div");l.innerHTML=i;const a=l.firstElementChild;if(!(a instanceof HTMLElement))return;this.headerElement!=null?t.shadowRoot?.replaceChild(a,this.headerElement):t.shadowRoot?.prepend(a),this.headerElement=a,this.lastRenderedHeaderHTML=i}if(this.isContainerManaged)return;const{renderHeaderPrefix:r,renderCustomHeader:o,renderHeaderMetadata:s}=this.options;if(o!=null){const l=o(n)??void 0;this.headerCustom=this.upsertHeaderSlotElement(t,this.headerCustom,sn,l),this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerPrefix=void 0,this.headerMetadata=void 0}else{const l=r?.(n)??void 0,a=s?.(n)??void 0;this.headerPrefix=this.upsertHeaderSlotElement(t,this.headerPrefix,rn,l),this.headerMetadata=this.upsertHeaderSlotElement(t,this.headerMetadata,on,a),this.headerCustom?.remove(),this.headerCustom=void 0}}clearHeaderSlots(){this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerCustom?.remove(),this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0}upsertHeaderSlotElement(e,t,n,i){if(i==null){t?.remove();return}const r=t??this.createHeaderSlotElement(n);return t==null&&e.appendChild(r),this.replaceHeaderSlotContent(r,i),r}replaceHeaderSlotContent(e,t){e.replaceChildren(),t instanceof Element?e.appendChild(t):e.innerText=`${t}`}createHeaderSlotElement(e){const t=document.createElement("div");return t.slot=e,t}getOrCreateFileContainerNode(e,t){const{fileContainer:n}=this,i=e??n??document.createElement("diffs-container"),r=n!==i;return r&&this.emitPostRender(!0),this.fileContainer=i,n!=null&&r&&(this.lastRenderedHeaderHTML=void 0,this.headerElement=void 0),t!=null&&this.fileContainer.parentNode!==t&&t.appendChild(this.fileContainer),r&&this.adoptReusableShellElements(this.fileContainer),this.ensureSpriteSVG(this.fileContainer),this.fileContainer}adoptReusableShellElements(e){const{shadowRoot:t}=e;if(t!=null)for(const n of t.children)n instanceof SVGElement?this.spriteSVG??=n:Ke(n)&&n.hasAttribute("data-theme-css")?(this.themeCSSStyle??=n,this.hasAdoptedThemeCSS=!0):Ke(n)&&n.hasAttribute("data-unsafe-css")&&(this.unsafeCSSStyle??=n,this.appliedUnsafeCSS??=this.options.unsafeCSS??void 0)}ensureSpriteSVG(e){const t=e.shadowRoot??e.attachShadow({mode:"open"});if(this.spriteSVG==null){const n=document.createElement("div");n.innerHTML=Gi;const i=n.firstChild;i instanceof SVGElement&&(this.spriteSVG=i)}this.spriteSVG!=null&&this.spriteSVG.parentNode!==t&&t.appendChild(this.spriteSVG)}getOrCreatePreNode(e){const t=e.shadowRoot??e.attachShadow({mode:"open"});return this.pre==null?(this.pre=document.createElement("pre"),this.appliedPreAttributes=void 0,this.code=void 0,t.appendChild(this.pre)):this.pre.parentNode!==t&&(e.shadowRoot?.appendChild(this.pre),this.appliedPreAttributes=void 0),this.placeHolder?.remove(),this.placeHolder=void 0,this.pre}syncCodeNodeFromPre(e){this.code=void 0;for(const t of Array.from(e.children))if(t instanceof HTMLElement&&t.hasAttribute("data-code")){this.code=t;return}}applyPreNodeAttributes(e,{totalLines:t}){const{overflow:n="scroll",disableLineNumbers:i=!1}=this.options,r={type:"file",split:!1,overflow:n,disableLineNumbers:i,diffIndicators:"none",disableBackground:!0,totalLines:t};ji(r,this.appliedPreAttributes)||(mn(e,r),this.appliedPreAttributes=r)}applyErrorToDOM(e,t){this.cleanupErrorWrapper(),this.pre?.remove(),this.pre=void 0,this.appliedPreAttributes=void 0;const n=t.shadowRoot??t.attachShadow({mode:"open"});this.errorWrapper??=document.createElement("div"),this.errorWrapper.dataset.errorWrapper="",this.errorWrapper.textContent="",n.appendChild(this.errorWrapper);const i=document.createElement("div");i.dataset.errorMessage="",i.innerText=e.message,this.errorWrapper.appendChild(i);const r=document.createElement("pre");r.dataset.errorStack="",r.innerText=e.stack??"No Error Stack",this.errorWrapper.appendChild(r)}cleanupErrorWrapper(){this.errorWrapper?.remove(),this.errorWrapper=void 0}};function as(e,t,n=!1){return!n&&e==null&&t!=null}function ls(e,t,n=!1){return e==null&&t!=null&&!n}function Dt(e){return{...an,...e}}function oe(e,t){const n=ds(e,t);return t?n:e.diffHeaderHeight+n}function ds(e,t){return e.paddingTop??(t?e.spacing:0)}function Ct(e){return e.paddingBottom??e.spacing}function hs(e){switch(e){case"simple":return 4;case"metadata":case"line-info":case"line-info-basic":case"custom":return 32}}const cs=5e3;let us=-1;function fs(e,t){return(e.overflow??"scroll")!==(t.overflow??"scroll")||(e.collapsed??!1)!==(t.collapsed??!1)||(e.disableLineNumbers??!1)!==(t.disableLineNumbers??!1)||(e.disableFileHeader??!1)!==(t.disableFileHeader??!1)||e.unsafeCSS!==t.unsafeCSS}var ps=class extends ss{virtualizer;metrics;__id=`virtualized-file:${++us}`;top;height=0;cache={heights:new Map,checkpoints:[],fileAnnotationHeight:0};isVisible=!1;isSetup=!1;layoutDirty=!0;forceRenderOverride;currentCollapsed;constructor(e,t,n=an,i,r=!1){super(e,i,r),this.virtualizer=t,this.metrics=n}setMetrics(e,t=!1){!t&&Ae(this.metrics,e)||(this.metrics=e,this.resetLayoutCache())}setLineAnnotations(e){this.syncLineAnnotations(e)&&this.resetLayoutCache()}syncLineAnnotations(e){return e==null||e===this.lineAnnotations||e.length===0&&this.lineAnnotations.length===0?!1:(super.setLineAnnotations(e),!0)}hasLineAnnotations(){return this.lineAnnotations.some(e=>e.lineNumber>0)}getLineHeight(e,t=!1){const n=this.cache.heights.get(e);if(n!=null)return n;const i=t?2:1;return this.metrics.lineHeight*i}setOptions(e){if(this.isAdvancedMode())throw new Error("VirtualizedFile.setOptions cannot be used inside CodeView. Update CodeView options instead.");if(e==null)return;const{options:t}=this,n=!ln(t,e),i=fs(t,e);super.setOptions(e),i&&this.resetLayoutCache(!0),n&&(this.forceRenderOverride=!0),n&&this.virtualizer.instanceChanged(this,i)}setThemeType(e){if(this.isAdvancedMode())throw new Error("VirtualizedFile.setThemeType cannot be used inside CodeView. Update CodeView options instead.");super.setThemeType(e)}resetLayoutCache(e=!1){this.layoutDirty=!0,this.cache.fileAnnotationHeight=0,this.cache.heights.size>0&&this.cache.heights.clear(),this.cache.checkpoints.length>0&&(this.cache.checkpoints.length=0),this.renderRange!=null&&(this.renderRange=void 0),e&&this.isSimpleMode()&&this.computeApproximateSize()}reconcileHeights(){let e=!1;if(this.fileContainer==null||this.file==null)return this.height!==0&&(e=!0),this.height=0,e;const{overflow:t="scroll"}=this.options;if(this.top=this.getVirtualizedTop(),t==="scroll"&&this.lineAnnotations.length===0&&!this.isResizeDebuggingEnabled()||this.code==null)return e;const n=this.code.children[1];if(!(n instanceof HTMLElement))return e;const i=Kt(this.lineAnnotations);if(this.renderRange!=null&&i&&xt(this.renderRange)){const r=gs(n)??0;r!==this.cache.fileAnnotationHeight&&(this.cache.fileAnnotationHeight=r,e=!0)}else!i&&this.cache.fileAnnotationHeight!==0&&(this.cache.fileAnnotationHeight=0,e=!0);for(const r of n.children){if(!(r instanceof HTMLElement))continue;const o=r.dataset.lineIndex;if(o==null)continue;const s=Number(o);let l=r.getBoundingClientRect().height,a=!1;r.nextElementSibling instanceof HTMLElement&&("lineAnnotation"in r.nextElementSibling.dataset||"noNewline"in r.nextElementSibling.dataset)&&("noNewline"in r.nextElementSibling.dataset&&(a=!0),l+=r.nextElementSibling.getBoundingClientRect().height);const d=this.getLineHeight(s,a);l!==d&&(e=!0,l===this.metrics.lineHeight*(a?2:1)?this.cache.heights.delete(s):this.cache.heights.set(s,l))}return(e||this.isResizeDebuggingEnabled())&&this.computeApproximateSize(!0),e}onRender=e=>this.fileContainer==null||this.file==null?!1:(e&&(this.top=this.getVirtualizedTop()),this.render({file:this.file}));prepareCodeViewItem(e,t,n,i){const r=this.syncLineAnnotations(i);let o=n?.resetFileLayoutCache===!0||r;n?.metrics!=null&&(this.metrics=n.metrics,o=!0);const{collapsed:s=!1}=this.options;return this.currentCollapsed!==s&&(this.currentCollapsed=s,o=!0),o&&this.resetLayoutCache(),this.file!==e&&(this.layoutDirty=!0),this.file=e,this.top=t,this.computeApproximateSize(),this.height}getLinePosition(e){if(this.file==null||e<1)return;const{disableFileHeader:t=!1,collapsed:n=!1}=this.options,i=Fn(this.getOrCreateLineCache(this.file));let r=oe(this.metrics,t);if(n||i<0)return{top:r,height:0};const o=Math.min(Math.max(e-1,0),i),{overflow:s="scroll"}=this.options,{lineHeight:l}=this.metrics;if(r+=this.cache.fileAnnotationHeight,s==="scroll"&&!this.hasLineAnnotations())return{top:r+o*l,height:l};const a=this.getLayoutCheckpointBeforeLineIndex(o);r=a?.top??r;for(let d=a?.lineIndex??0;dl?void 0:{lineNumber:u+1,top:o+a+u*h}}let d=o+(s===0?a:this.renderRange.bufferBefore);for(let h=s;h<=l;h++){if(d>=e)return{lineNumber:h+1,top:d};d+=this.getLineHeight(h)}}getVirtualizedHeight(){return this.height}getAdvancedStickySpecs(e){if(this.top==null||this.file==null)return;if(this.options.collapsed===!0)return{topOffset:this.top,height:this.height};const t=e!=null?this.computeRenderRangeFromWindow(this.file,this.top,e):this.renderRange;if(t==null)return;const{bufferBefore:n,bufferAfter:i,totalLines:r}=t;let o=0;if(r===0){const s=e??this.virtualizer.getWindowSpecs();this.top{this.addLayoutCheckpoint(h,this.height),this.height+=this.getLineHeight(h,!1)}}),l.length>0&&(this.height+=d),this.fileContainer!=null&&t&&!n){const h=this.fileContainer.getBoundingClientRect();h.height!==this.height?console.log("VirtualizedFile.computeApproximateSize: computed height doesnt match",{name:this.file.name,elementHeight:h.height,computedHeight:this.height}):console.log("VirtualizedFile.computeApproximateSize: computed height IS CORRECT")}this.layoutDirty=!1}setVisibility(e){this.isAdvancedMode()||this.fileContainer==null||(e&&!this.isVisible?(this.top=this.getVirtualizedTop(),this.isVisible=!0):!e&&this.isVisible&&(this.isVisible=!1,this.rerender()))}rerender(){!this.enabled||this.file==null||(this.forceRenderOverride=!0,this.virtualizer.instanceChanged(this,!1))}render({fileContainer:e,file:t,forceRender:n=!1,lineAnnotations:i,...r}){const{forceRenderOverride:o,isSetup:s}=this;this.forceRenderOverride=void 0;const l=this.syncLineAnnotations(i);if(l&&this.resetLayoutCache(),this.file??=t,e=this.getOrCreateFileContainerNode(e),this.file==null)return console.error("VirtualizedFile.render: attempting to virtually render when we dont have file"),!1;if(s)this.top??=this.getVirtualizedTop();else{this.computeApproximateSize();const c=this.getSimpleVirtualizer();if(this.top??=this.getVirtualizedTop(),this.isAdvancedMode())this.isVisible=!0;else{if(c==null)throw new Error("VirtualizedFile.render: simple virtualizer is not available");c.connect(e,this),this.isVisible=c.isInstanceVisible(this.top??0,this.height)}this.isSetup=!0}if(!this.isVisible&&this.isSimpleMode())return this.renderPlaceholder(this.height);const a=this.virtualizer.getWindowSpecs(),d=this.top??0,h=this.computeRenderRangeFromWindow(this.file,d,a);return super.render({file:this.file,fileContainer:e,renderRange:h,lineAnnotations:i,forceRender:(o??n)||l,...r})}syncVirtualizedTop(){this.top=this.getVirtualizedTop()}shouldDisableVirtualizationBuffers(){return this.isAdvancedMode()||super.shouldDisableVirtualizationBuffers()}isSimpleMode(){return this.virtualizer.type==="simple"}isAdvancedMode(){return this.virtualizer.type==="advanced"}addLayoutCheckpoint(e,t){e%cs===0&&this.cache.checkpoints.push({lineIndex:e,top:t})}getLayoutCheckpointBeforeLineIndex(e){if(e<=0||this.cache.checkpoints.length===0)return;let t=0,n=this.cache.checkpoints.length-1,i;for(;t<=n;){const r=t+n>>1,o=this.cache.checkpoints[r];if(o==null)throw new Error("VirtualizedFile: invalid checkpoint index");o.lineIndex<=e?(i=o,t=r+1):n=r-1}return i}getLayoutCheckpointBeforeTop(e,t){let n=0,i=this.cache.checkpoints.length-1,r=-1;for(;n<=i;){const o=n+i>>1,s=this.cache.checkpoints[o];if(s==null)throw new Error("VirtualizedFile: invalid checkpoint index");s.top<=e?(r=o,n=o+1):i=o-1}if(t==null)return r>=0?this.cache.checkpoints[r]:void 0;for(let o=r;o>=0;o--){const s=this.cache.checkpoints[o];if(s==null)throw new Error("VirtualizedFile: invalid checkpoint index");if(s.lineIndex%t===0)return s}}getVirtualizedTop(){return this.virtualizer.type==="advanced"?this.virtualizer.getLocalTopForInstance(this):this.fileContainer!=null?this.virtualizer.getOffsetInScrollContainer(this.fileContainer):0}getSimpleVirtualizer(){return this.virtualizer.type==="simple"?this.virtualizer:void 0}isResizeDebuggingEnabled(){return this.getSimpleVirtualizer()?.config.resizeDebugging??!1}computeRenderRangeFromWindow(e,t,{top:n,bottom:i}){const{disableFileHeader:r=!1,overflow:o="scroll"}=this.options,{hunkLineCount:s,lineHeight:l}=this.metrics,a=this.getOrCreateLineCache(e),d=a.length,h=this.height,c=oe(this.metrics,r),u=d>0?Ct(this.metrics):0,{fileAnnotationHeight:f}=this.cache,p=c+f,m=Math.max(0,h-c-f-u),y=Kt(this.lineAnnotations),v=t+c,g=f>0&&y&&vn;if(ti)return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:h-c-u};if(d<=s)return{startingLine:0,totalLines:s,bufferBefore:0,bufferAfter:0};const C=Math.ceil(Math.max(i-n,0)/l),b=Math.ceil(C/s)*s+s*2,x=b/s,S=(n+i)/2;if(o==="scroll"&&!this.hasLineAnnotations()){const Z=t+p,be=Z+m;if(!g&&!(Zn))return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:h-c-u};const ae=Math.floor(g&&S{const be=A%s===0,ae=Math.floor(A/s);if(be&&(w[ae]=I-(t+p),H!=null)){if(H<=0)return!0;H--}const j=this.getLineHeight(Z,!1);return I>n-j&&IS&&(T??=ae),H==null&&I>=i&&be&&(H=k),A++,I+=j,!1}}),E==null)if(g)E=0,T=0;else return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:h-c-u};T??=E;const N=Math.round(T-x/2),W=Math.max(0,Math.ceil(d/s)-x),M=Math.max(0,Math.min(N,W)),F=M*s,O=N<0?b+N*s:b,Q=w[M]??0,ge=F===0?0:f+Q,me=M+O/s,xe=me0&&(f[f.length-1]===` +`||f[f.length-1]==="\r"||f[f.length-1]===`\r +`||f[f.length-1]==="");)f.pop();const{additionStart:b,deletionStart:x}=m;h=d?h:x-1,c=d?c:b-1;const S={collapsedBefore:0,splitLineCount:0,splitLineStart:0,unifiedLineCount:0,unifiedLineStart:0,additionCount:m.additionCount,additionStart:b,additionLines:y,deletionCount:m.deletionCount,deletionStart:x,deletionLines:v,deletionLineIndex:h,additionLineIndex:c,hunkContent:[],hunkContext:_n(m.hunkContext),hunkSpecs:U(p),noEOFCRAdditions:!1,noEOFCRDeletions:!1};let k=0,w=0;for(let L=1;L=S.additionCount&&w>=S.deletionCount&&!I.startsWith("\\")){if(o&&Es(I)&&!Is(I))throw Error("parsePatchContent: hunk has more lines than expected");break}const A=I[0];if(A!=="+"&&A!=="-"&&A!==" "&&A!=="\\"){if(o)throw Error("parsePatchContent: invalid hunk line");console.error(`parseLineType: Invalid firstChar: "${A}", full line: "${I}"`),console.error("processFile: invalid rawLine:",I);continue}const E=Hs(A);if(E==="addition"){if(o&&k>=S.additionCount)throw Error("parsePatchContent: hunk has too many addition lines");const T=Pt(I);(g==null||g.type!=="change")&&(g=Ot("change",h,c),S.hunkContent.push(g)),c++,k++,d&&a.additionLines.push(T),g.additions++,y++,C="addition"}else if(E==="deletion"){if(o&&w>=S.deletionCount)throw Error("parsePatchContent: hunk has too many deletion lines");const T=Pt(I);(g==null||g.type!=="change")&&(g=Ot("change",h,c),S.hunkContent.push(g)),h++,w++,d&&a.deletionLines.push(T),g.deletions++,v++,C="deletion"}else if(E==="context"){if(o&&(w>=S.deletionCount||k>=S.additionCount))throw Error("parsePatchContent: hunk has too many context lines");const T=Pt(I);(g==null||g.type!=="context")&&(g=Ot("context",h,c),S.hunkContent.push(g)),c++,h++,k++,w++,d&&(a.deletionLines.push(T),a.additionLines.push(T)),g.lines++,C="context"}else if(E==="metadata"&&g!=null){if(g.type==="context"?(S.noEOFCRAdditions=!0,S.noEOFCRDeletions=!0):C==="deletion"?S.noEOFCRDeletions=!0:C==="addition"&&(S.noEOFCRAdditions=!0),d&&(C==="addition"||C==="context")){const T=a.additionLines.length-1;T>=0&&(a.additionLines[T]=ye(a.additionLines[T]))}if(d&&(C==="deletion"||C==="context")){const T=a.deletionLines.length-1;T>=0&&(a.deletionLines[T]=ye(a.deletionLines[T]))}}}if(o&&(k!==S.additionCount||w!==S.deletionCount))throw Error("parsePatchContent: hunk line count mismatch");S.additionLines=y,S.deletionLines=v,S.collapsedBefore=Math.max(S.additionStart-1-s,0),a.hunks.push(S),s=S.additionStart+S.additionCount-1;for(const L of S.hunkContent)L.type==="context"?(S.splitLineCount+=L.lines,S.unifiedLineCount+=L.lines):(S.splitLineCount+=Math.max(L.additions,L.deletions),S.unifiedLineCount+=L.deletions+L.additions);S.splitLineStart=a.splitLineCount+S.collapsedBefore,S.unifiedLineStart=a.unifiedLineCount+S.collapsedBefore,a.splitLineCount+=S.collapsedBefore+S.splitLineCount,a.unifiedLineCount+=S.collapsedBefore+S.unifiedLineCount}if(a!=null){if(o&&d&&!n&&a.hunks.length===0)throw Error("parsePatchContent: unified file has no hunks");if(a.hunks.length>0&&!d&&a.additionLines.length>0&&a.deletionLines.length>0){const u=a.hunks[a.hunks.length-1],f=u.additionStart+u.additionCount-1,p=a.additionLines.length,m=Math.max(p-f,0);a.splitLineCount+=m,a.unifiedLineCount+=m}return n||(a.prevName!=null&&a.name!==a.prevName?a.hunks.length>0?a.type="rename-changed":a.type="rename-pure":(i==null||i.contents==="")&&r!=null&&r.contents!==""?a.type="new":i!=null&&i.contents!==""&&(r==null||r.contents==="")&&(a.type="deleted")),a.type!=="rename-pure"&&a.type!=="rename-changed"&&(a.prevName=void 0),a}}function xs(e,t,n=!1){const i=[],r=Ls(e)?e.split(Kr):[e];for(const o of r)try{i.push(Cs(o,t!=null?`${t}-${i.length}`:void 0,n))}catch(s){if(n)throw s;console.error(s)}return i}function Ls(e){return e.startsWith("From ")||e.includes(` +From `)}function zn(e){const t=tr(e);for(let n=0;nn&&t.push(e.slice(n,i)),n=i,s=!0,i=Jt(e,l);continue}if(s&&e.startsWith("@@ -",i)){const d=ir(e.slice(i,l));d!=null&&(r=d.deletionCount,o=d.additionCount)}i=l;continue}const a=e[i];if(a==="\\"){i=l;continue}a===" "?(r=Math.max(r-1,0),o=Math.max(o-1,0)):a==="-"?r=Math.max(r-1,0):a==="+"&&(o=Math.max(o-1,0)),i=l}return t.push(e.slice(n)),t}function Ts(e){return nr(e,0)}function nr(e,t){const n=Jt(e,t);return Un(e,t,"---")&&Un(e,n,"+++")}function Un(e,t,n){if(!e.startsWith(n,t))return!1;const i=e[t+n.length];if(i!==" "&&i!==" ")return!1;for(let r=t+n.length+1;r9)break;i=i*10+r}if(n!==t)return{value:i,endIndex:n}}function Rs(e){return e.endsWith(`\r +`)?e.slice(0,-2):e.endsWith(` +`)?e.slice(0,-1):e}function As(e){return e.startsWith("diff --git")||e.includes(` +diff --git`)}function rr(e,t){if(e.length===0)return[""];const n=` +${t}`,i=e.startsWith(t)?0:Bn(e,n,0);if(i===-1)return[e];const r=[];i>0&&r.push(e.slice(0,i));let o=i;for(;;){const s=Bn(e,n,o+1);if(s===-1)break;r.push(e.slice(o,s)),o=s}return r.push(e.slice(o)),r}function Bn(e,t,n){const i=e.indexOf(t,n);return i===-1?-1:i+1}function _n(e){return e==null?e:U(e)}function Hs(e){return e===" "?"context":e==="\\"?"metadata":e==="+"?"addition":"deletion"}function Pt(e){const t=e.slice(1);return U(t===""?` +`:t)}function Ot(e,t,n){return e==="change"?{type:"change",additions:0,deletions:0,additionLineIndex:n,deletionLineIndex:t}:{type:"context",lines:0,additionLineIndex:n,deletionLineIndex:t}}function Zt(e,t,n,i=!1){const r=ys(Gr(e.name,t.name,e.contents,t.contents,e.header,t.header,n),{cacheKey:(()=>{if(e.cacheKey!=null&&t.cacheKey!=null)return`${e.cacheKey}:${t.cacheKey}`})(),oldFile:e,newFile:t,throwOnError:i});if(r==null)throw new Error("parseDiffFrom: FileInvalid diff -- probably need to fix something -- if the files are the same maybe?");return t.lang!=null&&(r.lang=t.lang),r}var Ms=class{isDeletionsScrolling=!1;isAdditionsScrolling=!1;timeoutId=-1;codeDeletions;codeAdditions;enabled=!1;cleanUp(){this.enabled&&(this.codeDeletions?.removeEventListener("scroll",this.handleDeletionsScroll),this.codeAdditions?.removeEventListener("scroll",this.handleAdditionsScroll),clearTimeout(this.timeoutId),this.codeDeletions=void 0,this.codeAdditions=void 0,this.enabled=!1)}setup(e,t,n){if(t==null||n==null)for(const i of e.children??[])i instanceof HTMLElement&&("deletions"in i.dataset?t=i:"additions"in i.dataset&&(n=i));if(n==null||t==null){this.cleanUp();return}this.codeDeletions!==t&&(this.codeDeletions?.removeEventListener("scroll",this.handleDeletionsScroll),this.codeDeletions=t,t.addEventListener("scroll",this.handleDeletionsScroll,{passive:!0})),this.codeAdditions!==n&&(this.codeAdditions?.removeEventListener("scroll",this.handleAdditionsScroll),this.codeAdditions=n,n.addEventListener("scroll",this.handleAdditionsScroll,{passive:!0})),this.enabled=!0}handleDeletionsScroll=()=>{this.isAdditionsScrolling||(this.isDeletionsScrolling=!0,clearTimeout(this.timeoutId),this.timeoutId=setTimeout(()=>{this.isDeletionsScrolling=!1},300),this.codeAdditions?.scrollTo({left:this.codeDeletions?.scrollLeft}))};handleAdditionsScroll=()=>{this.isDeletionsScrolling||(this.isAdditionsScrolling=!0,clearTimeout(this.timeoutId),this.timeoutId=setTimeout(()=>{this.isAdditionsScrolling=!1},300),this.codeDeletions?.scrollTo({left:this.codeAdditions?.scrollLeft}))}};function Fe(e,t){return Me(e.theme,t.theme)&&e.useTokenTransformer===t.useTokenTransformer&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength&&e.lineDiffType===t.lineDiffType&&e.maxLineDiffLength===t.maxLineDiffLength}function nt(e){return R({tagName:"div",properties:{"data-content-buffer":"","data-buffer-size":e,style:`grid-row: span ${e};min-height:calc(${e} * 1lh)`}})}function it(e){return R({tagName:"div",children:[R({tagName:"span",children:[V("No newline at end of file")]})],properties:{"data-no-newline":"","data-line-type":e,"data-column-content":""}})}function Nt(e){return R({tagName:"div",children:[ut({name:e==="both"?"diffs-icon-expand-all":"diffs-icon-expand",properties:{"data-icon":""}})],properties:{role:"button","data-expand-button":"","data-expand-both":e==="both"?"":void 0,"data-expand-up":e==="up"?"":void 0,"data-expand-down":e==="down"?"":void 0}})}function Le({type:e,content:t,expandIndex:n,chunked:i=!1,slotName:r,isFirstHunk:o,isLastHunk:s}){let l=0;const a=[];if(e==="metadata"&&t!=null&&a.push(R({tagName:"div",children:[V(t)],properties:{"data-separator-wrapper":""}})),(e==="line-info"||e==="line-info-basic")&&t!=null){const d=[];n!=null&&(i?(o||(d.push(Nt("up")),l++),s||(d.push(Nt("down")),l++)):(d.push(Nt(!o&&!s?"both":o?"down":"up")),l++)),d.push(R({tagName:"div",children:[R({tagName:"span",children:[V(t)],properties:{"data-unmodified-lines":""}})],properties:{"data-separator-content":""}})),i&&n!=null&&d.push(R({tagName:"div",children:[V("Expand all")],properties:{role:"button","data-expand-button":"","data-expand-all-button":""}})),a.push(R({tagName:"div",children:d,properties:{"data-separator-wrapper":"","data-separator-multi-button":l>1?"":void 0}}))}return e==="custom"&&r!=null&&a.push(R({tagName:"slot",properties:{name:r}})),R({tagName:"div",children:a,properties:{"data-separator":a.length===0?"simple":e,"data-expand-index":n,"data-separator-first":o?"":void 0,"data-separator-last":s?"":void 0}})}function Ds(e,t){return`hunk-separator-${e}-${t}`}function Ps(e){const t=e.at(-1);return t==null?0:Math.max(t.additionStart+t.additionCount,t.deletionStart+t.deletionCount)}function Os(e){return e.startingLine===0&&e.totalLines===1/0&&e.bufferBefore===0&&e.bufferAfter===0}function $n({line:e,spanStart:t,spanLength:n}){return{start:{line:e,character:t},end:{line:e,character:t+n},properties:{"data-diff-span":""},alwaysWrap:!0}}function rt({item:e,arr:t,enableJoin:n,isNeutral:i=!1,isLastItem:r=!1}){const o=t[t.length-1];if(o==null||r||!n){t.push([i?0:1,e.value]);return}const s=o[0]===0;if(i===s||i&&e.value.length===1&&!s){o[1]+=e.value;return}t.push([i?0:1,e.value])}function Ye({isPartial:e,rangeSize:t,expandedHunks:n,hunkIndex:i,collapsedContextThreshold:r}){const o=Math.max(t,0);if(o===0||e)return{fromStart:0,fromEnd:0,rangeSize:o,collapsedLines:o,renderAll:!1};if(n===!0||o<=r)return{fromStart:o,fromEnd:0,rangeSize:o,collapsedLines:0,renderAll:!0};const s=n?.get(i),l=Math.min(Math.max(s?.fromStart??0,0),o),a=Math.min(Math.max(s?.fromEnd??0,0),o),d=l+a,h=d>=o;return{fromStart:h?o:l,fromEnd:h?0:a,rangeSize:o,collapsedLines:Math.max(o-d,0),renderAll:h}}function or({fileDiff:e,errorPrefix:t}){const n=e.hunks[e.hunks.length-1];if(n==null||e.isPartial||e.additionLines.length===0||e.deletionLines.length===0)return 0;const i=e.additionLines.length-(n.additionLineIndex+n.additionCount),r=e.deletionLines.length-(n.deletionLineIndex+n.deletionCount);if(i<=0&&r<=0)return 0;if(i!==r)throw new Error(`${t}: trailing context mismatch (additions=${i}, deletions=${r}) for ${e.name}`);return Math.min(i,r)}function Xe({fileDiff:e,hunkIndex:t,expandedHunks:n,collapsedContextThreshold:i,errorPrefix:r}){if(t!==e.hunks.length-1)return;const o=or({fileDiff:e,errorPrefix:r});if(o<=0)return;if(n===!0||o<=i)return{fromStart:o,fromEnd:0,rangeSize:o,collapsedLines:0,renderAll:!0};const s=n?.get(e.hunks.length),l=Math.min(Math.max(s?.fromStart??0,0),o);return{fromStart:l,fromEnd:0,rangeSize:o,collapsedLines:o-l,renderAll:l>=o}}function sr({type:e,metrics:t}){return t.hunkSeparatorHeight??hs(e)}function ar({type:e,metrics:t}){return e==="simple"||e==="metadata"||e==="line-info-basic"?0:t.spacing}function Ns({type:e,hunkIndex:t,hunkSpecs:n}){switch(e){case"simple":return t>0;case"metadata":return n!=null;case"line-info":case"line-info-basic":case"custom":return!0}}function Fs(e){return e!=="simple"&&e!=="metadata"}function $e({type:e,metrics:t,hunkIndex:n,hunkSpecs:i}){if(!Ns({type:e,hunkIndex:n,hunkSpecs:i}))return;const r=sr({type:e,metrics:t}),o=ar({type:e,metrics:t}),s=n>0?o:0,l=o;return{height:r,gapBefore:s,gapAfter:l,totalHeight:s+r+l}}function Ve({type:e,metrics:t}){if(!Fs(e))return;const n=sr({type:e,metrics:t}),i=ar({type:e,metrics:t});return{height:n,gapBefore:i,gapAfter:0,totalHeight:i+n}}function je({diff:e,diffStyle:t,startingLine:n=0,totalLines:i=1/0,expandedHunks:r,collapsedContextThreshold:o=1,callback:s}){const l=zs({diff:e,diffStyle:t,startingLine:n,expandedHunks:r,collapsedContextThreshold:o}),a={viewportStart:n,viewportEnd:n+i,isWindowedHighlight:n>0||i<1/0,splitCount:l.splitCount,unifiedCount:l.unifiedCount,finalHunkIndex:e.hunks.length-1,shouldBreak(){if(!a.isWindowedHighlight)return!1;const d=a.unifiedCount>=n+i,h=a.splitCount>=n+i;return t==="unified"?d:(t==="split"||d)&&h},shouldSkip(d,h){if(!a.isWindowedHighlight)return!1;const c=a.unifiedCount+d=n-d&&a.unifiedCount=n-d&&a.splitCount0?0:t==="unified"?w===h.unifiedLineStart+h.unifiedLineCount-1?u.collapsedLines:0:L===h.splitLineStart+h.splitLineCount-1?u.collapsedLines:0},y=function(){return m?0:(m=!0,c.collapsedLines)};const h=e.hunks[d];if(h==null)throw new Error("iterateOverDiff: invalid hunk index");if(a.shouldBreak())break;const c=Ye({isPartial:e.isPartial,rangeSize:h.collapsedBefore,expandedHunks:r,hunkIndex:d,collapsedContextThreshold:o}),u=d===a.finalHunkIndex?Xe({fileDiff:e,hunkIndex:d,expandedHunks:r,collapsedContextThreshold:o,errorPrefix:"iterateOverDiff"}):void 0,f=c.fromStart+c.fromEnd;let m=c.collapsedLines===0;if(a.shouldSkip(f,f))a.incrementCounts(f,f),y();else{let w=h.unifiedLineStart-c.rangeSize,L=h.splitLineStart-c.rangeSize,I=h.deletionLineIndex-c.rangeSize,A=h.additionLineIndex-c.rangeSize,E=h.deletionStart-c.rangeSize,T=h.additionStart-c.rangeSize;if(ot(a,c.fromStart,t,H=>a.emit({hunkIndex:d,hunk:h,collapsedBefore:0,collapsedAfter:0,type:"context-expanded",deletionLine:{lineNumber:E+H,lineIndex:I+H,noEOFCR:!1,unifiedLineIndex:w+H,splitLineIndex:L+H},additionLine:{unifiedLineIndex:w+H,splitLineIndex:L+H,lineIndex:A+H,lineNumber:T+H,noEOFCR:!1}}))||(w=h.unifiedLineStart-c.fromEnd,L=h.splitLineStart-c.fromEnd,I=h.deletionLineIndex-c.fromEnd,A=h.additionLineIndex-c.fromEnd,E=h.deletionStart-c.fromEnd,T=h.additionStart-c.fromEnd,ot(a,c.fromEnd,t,H=>a.emit({hunkIndex:d,hunk:h,collapsedBefore:y(),collapsedAfter:0,type:"context-expanded",deletionLine:{lineNumber:E+H,lineIndex:I+H,noEOFCR:!1,unifiedLineIndex:w+H,splitLineIndex:L+H},additionLine:{unifiedLineIndex:w+H,splitLineIndex:L+H,lineIndex:A+H,lineNumber:T+H,noEOFCR:!1}}),()=>{y()})))break e}let v=h.unifiedLineStart,g=h.splitLineStart,C=h.deletionLineIndex,b=h.additionLineIndex,x=h.deletionStart,S=h.additionStart;const k=h.hunkContent.at(-1);for(const w of h.hunkContent){if(a.shouldBreak())break e;const L=w===k;if(w.type==="context"){if(a.shouldSkip(w.lines,w.lines))a.incrementCounts(w.lines,w.lines),y();else if(ot(a,w.lines,t,I=>{const A=L&&I===w.lines-1,E=v+I,T=g+I;return a.emit({hunkIndex:d,hunk:h,collapsedBefore:y(),collapsedAfter:p(E,T),type:"context",deletionLine:{lineNumber:x+I,lineIndex:C+I,noEOFCR:A&&h.noEOFCRDeletions,unifiedLineIndex:E,splitLineIndex:T},additionLine:{unifiedLineIndex:E,splitLineIndex:T,lineIndex:b+I,lineNumber:S+I,noEOFCR:A&&h.noEOFCRAdditions}})},()=>{y()}))break e;v+=w.lines,g+=w.lines,C+=w.lines,b+=w.lines,x+=w.lines,S+=w.lines}else{const I=Math.max(w.deletions,w.additions),A=w.deletions+w.additions;if(!a.shouldSkip(A,I)){const E=_s(a,w,t);(E[0]?.[0]??0)>0&&y();for(const[T,H]of E)for(let N=T;N{const T=E===A-1;return a.emit({hunkIndex:e.hunks.length,hunk:void 0,collapsedBefore:0,collapsedAfter:T?w:0,type:"context-expanded",deletionLine:{lineNumber:x+E,lineIndex:C+E,noEOFCR:!1,unifiedLineIndex:v+E,splitLineIndex:g+E},additionLine:{unifiedLineIndex:v+E,splitLineIndex:g+E,lineIndex:b+E,lineNumber:S+E,noEOFCR:!1}})},void 0,()=>a.shouldBreak()))break e}}}function zs({diff:e,diffStyle:t,startingLine:n,expandedHunks:i,collapsedContextThreshold:r}){if(n<=0||t==="both")return{hunkIndex:0,splitCount:0,unifiedCount:0};const o=Us({diff:e,expandedHunks:i,collapsedContextThreshold:r});let s=0,l=e.hunks.length-1,a=e.hunks.length;for(;s<=l;){const h=s+l>>1,c=o[h+1];if(c==null)throw new Error("iterateOverDiff: invalid hunk prefix index");(t==="unified"?c.unifiedCount:c.splitCount)>n?(a=h,l=h-1):s=h+1}if(a>=e.hunks.length){const h=o[e.hunks.length];if(h==null)throw new Error("iterateOverDiff: invalid terminal hunk prefix index");return{hunkIndex:e.hunks.length,splitCount:h.splitCount,unifiedCount:h.unifiedCount}}const d=o[a];if(d==null)throw new Error("iterateOverDiff: invalid selected hunk prefix index");return{hunkIndex:a,splitCount:d.splitCount,unifiedCount:d.unifiedCount}}function Us({diff:e,expandedHunks:t,collapsedContextThreshold:n}){let i=0,r=0;const o=e.hunks.length-1,s=[{splitCount:0,unifiedCount:0}];for(let l=0;la&&i.push([a,d])}if(n!=="split"&&r(e.unifiedCount),n!=="unified"&&r(e.splitCount),i.length===0)return[0,0];let o=i[0][0],s=i[0][1];for(let l=1;l0&&(e.incrementCounts(s,s),r?.());let a=s;for(;a=l){e.incrementCounts(t-a,t-a);break}if(e.isInWindow(0,0)){if(i(a)===!0)return!0}else e.incrementCounts(1,1);a++}return!1}function _s(e,t,n){if(!e.isWindowedHighlight)return[[0,n==="unified"?t.deletions+t.additions:Math.max(t.deletions,t.additions)]];const i=n!=="split",r=n!=="unified",o=n==="unified"?"unified":"split",s=[];function l(c,u){if(c+u<=e.viewportStart||c>=e.viewportEnd)return;const f=Math.max(0,e.viewportStart-c),p=Math.min(u,e.viewportEnd-c);return p>f?[f,p]:void 0}function a(c,u){return o==="split"?c:u==="additions"?[c[0]+t.deletions,c[1]+t.deletions]:c}function d(c,u){if(c==null)return;const[f,p]=a(c,u);p>f&&s.push([f,p])}if(i&&(d(l(e.unifiedCount,t.deletions),"deletions"),d(l(e.unifiedCount+t.deletions,t.additions),"additions")),r&&(d(l(e.splitCount,t.deletions),"deletions"),d(l(e.splitCount,t.additions),"additions")),s.length===0)return s;s.sort((c,u)=>c[0]-u[0]);const h=[s[0]];for(const[c,u]of s.slice(1)){const f=h[h.length-1];c<=f[1]?f[1]=Math.max(f[1],u):h.push([c,u])}return h}function $s({hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:i,diffStyle:r,index:o,unifiedLineIndex:s,splitLineIndex:l,additionLineIndex:a,deletionLineIndex:d,additionLineNumber:h,deletionLineNumber:c,content:u,isLastContent:f,unifiedCount:p,splitCount:m}){const y=o=u.deletions?s+o:void 0:o=u.deletions?a+(o-u.deletions):void 0:o=u.deletions?h+(o-u.deletions):void 0:o0||o<1/0,d=typeof n.theme=="string"?t.getTheme(n.theme).type:void 0,h=cn({theme:n.theme,highlighter:t}),c=i&&!a&&(e.unifiedLineCount>1e3||e.splitLineCount>1e3)?"none":n.lineDiffType,u={deletionLines:[],additionLines:[]},{maxLineDiffLength:f}=n,p=!i&&!e.isPartial,m=i?s:void 0,y=new Map;function v(C){const b=p?0:C,x=y.get(b)??js();return y.set(b,x),x}function g(C,b,x,S){if(a){let k=x.at(-1);(k==null||k.targetIndex+k.count!==b)&&(k={targetIndex:b,originalOffset:S.length,count:0},x.push(k)),k.count++}S.push(C)}je({diff:e,diffStyle:"both",startingLine:r,totalLines:o,expandedHunks:a?m:!0,collapsedContextThreshold:l,callback:({hunkIndex:C,additionLine:b,deletionLine:x,type:S})=>{const k=v(C),w=b!=null?b.splitLineIndex:x.splitLineIndex;S==="change"&&b!=null&&x!=null&&Gs({additionLine:e.additionLines[b.lineIndex],deletionLine:e.deletionLines[x.lineIndex],deletionLineIndex:k.deletionContent.length,additionLineIndex:k.additionContent.length,deletionDecorations:k.deletionDecorations,additionDecorations:k.additionDecorations,lineDiffType:c,maxLineDiffLength:f}),x!=null&&(g(e.deletionLines[x.lineIndex],x.lineIndex,k.deletionSegments,k.deletionContent),k.deletionInfo.push({type:S==="change"?"change-deletion":S,lineNumber:x.lineNumber,altLineNumber:S==="change"?void 0:b.lineNumber??void 0,lineIndex:`${x.unifiedLineIndex},${w}`})),b!=null&&(g(e.additionLines[b.lineIndex],b.lineIndex,k.additionSegments,k.additionContent),k.additionInfo.push({type:S==="change"?"change-addition":S,lineNumber:b.lineNumber,altLineNumber:S==="change"?void 0:x.lineNumber??void 0,lineIndex:`${b.unifiedLineIndex},${w}`}))}});for(const C of y.values()){if(C.deletionContent.length===0&&C.additionContent.length===0)continue;const b={name:e.prevName??e.name,contents:C.deletionContent.value},x={name:e.name,contents:C.additionContent.value},{deletionLines:S,additionLines:k}=qs({deletionFile:b,deletionInfo:C.deletionInfo,deletionDecorations:C.deletionDecorations,additionFile:x,additionInfo:C.additionInfo,additionDecorations:C.additionDecorations,highlighter:t,options:n,languageOverride:i?"text":e.lang});if(p){u.deletionLines=S,u.additionLines=k;continue}if(C.deletionSegments.length>0)for(const w of C.deletionSegments)for(let L=0;L0)for(const w of C.additionSegments)for(let L=0;Ll||t.length>l))return;const a=s==="char"?Fr(e,t):Br(e,t),d=[],h=[],c=s==="word-alt",u=a.at(-1);for(const p of a){const m=p===u;!p.added&&!p.removed?(rt({item:p,arr:d,enableJoin:c,isNeutral:!0,isLastItem:m}),rt({item:p,arr:h,enableJoin:c,isNeutral:!0,isLastItem:m})):p.removed?rt({item:p,arr:d,enableJoin:c,isLastItem:m}):rt({item:p,arr:h,enableJoin:c,isLastItem:m})}let f=0;for(const p of d)p[0]===1&&r.push($n({line:n,spanStart:f,spanLength:p[1].length})),f+=p[1].length;f=0;for(const p of h)p[0]===1&&o.push($n({line:i,spanStart:f,spanLength:p[1].length})),f+=p[1].length}function js(){return{deletionContent:{push(e){this.value+=e,this.length++},value:"",length:0},additionContent:{push(e){this.value+=e,this.length++},value:"",length:0},deletionInfo:[],additionInfo:[],deletionDecorations:[],additionDecorations:[],deletionSegments:[],additionSegments:[]}}function qs({deletionFile:e,additionFile:t,deletionInfo:n,additionInfo:i,highlighter:r,deletionDecorations:o,additionDecorations:s,languageOverride:l,options:{theme:a=P,...d}}){const h=l??X(e.name),c=l??X(t.name),{state:u,transformers:f}=_i(d.useTokenTransformer),p=typeof a=="string"?{...d,lang:"text",theme:a,transformers:f,decorations:void 0,defaultColor:!1,cssVariablePrefix:_("token"),tokenizeTimeLimit:0}:{...d,lang:"text",themes:a,transformers:f,decorations:void 0,defaultColor:!1,cssVariablePrefix:_("token"),tokenizeTimeLimit:0};return{deletionLines:e.contents===""?[]:(p.lang=h,u.lineInfo=n,p.decorations=o,qt(r.codeToHast(ye(e.contents),p))),additionLines:t.contents===""?[]:(p.lang=c,p.decorations=s,u.lineInfo=i,qt(r.codeToHast(ye(t.contents),p)))}}function en(e){const t=e.lang??X(e.name),n=e.lang??(e.prevName!=null?X(e.prevName):"text");return t==="text"&&n==="text"}let Ks=-1;var lr=class{options;onRenderUpdate;workerManager;__id=`diff-hunks-renderer:${++Ks}`;highlighter;diff;expandedHunks=new Map;deletionAnnotations={};additionAnnotations={};computedLang="text";renderCache;constructor(e={theme:P},t,n){this.options=e,this.onRenderUpdate=t,this.workerManager=n,n?.isWorkingPool()!==!0&&(this.highlighter=We(e.theme??P)?Fi():void 0)}cleanUp(){this.recycle(),this.expandedHunks.clear(),this.workerManager=void 0,this.onRenderUpdate=void 0}recycle(){this.highlighter=void 0,this.diff=void 0,this.clearRenderCache(),this.additionAnnotations={},this.deletionAnnotations={},this.workerManager?.cleanUpTasks(this)}clearRenderCache(){this.renderCache=void 0}setOptions(e){this.options=e}mergeOptions(e){this.options={...this.options,...e}}expandHunk(e,t,n=this.getOptionsWithDefaults().expansionLineCount){const i={...this.expandedHunks.get(e)??{fromStart:0,fromEnd:0}};(t==="up"||t==="both")&&(i.fromStart+=n),(t==="down"||t==="both")&&(i.fromEnd+=n),this.renderCache?.highlighted!==!0&&this.clearRenderCache(),this.expandedHunks.set(e,i)}getExpandedHunk(e){return this.expandedHunks.get(e)??so}getExpandedHunksMap(){return this.expandedHunks}setLineAnnotations(e){this.additionAnnotations={},this.deletionAnnotations={};for(const t of e){const n=(()=>{switch(t.side){case"deletions":return this.deletionAnnotations;case"additions":return this.additionAnnotations}})(),i=n[t.lineNumber]??[];n[t.lineNumber]=i,i.push(t)}}getUnifiedLineDecoration({lineType:e}){return{gutterLineType:e}}getSplitLineDecoration({side:e,type:t}){return t!=="change"?{gutterLineType:t}:{gutterLineType:e==="deletions"?"change-deletion":"change-addition"}}createAnnotationElement=e=>jt(e);getOptionsWithDefaults(){const{diffIndicators:e="bars",diffStyle:t="split",disableBackground:n=!1,disableFileHeader:i=!1,disableLineNumbers:r=!1,disableVirtualizationBuffers:o=!1,collapsed:s=!1,expandUnchanged:l=!1,collapsedContextThreshold:a=1,expansionLineCount:d=100,hunkSeparators:h="line-info",lineDiffType:c="word-alt",maxLineDiffLength:u=1e3,overflow:f="scroll",stickyHeader:p=!1,theme:m=P,headerRenderMode:y="default",tokenizeMaxLineLength:v=1e3,tokenizeMaxLength:g=io,useTokenTransformer:C=!1,useCSSClasses:b=!1}=this.options;return{diffIndicators:e,diffStyle:t,disableBackground:n,disableFileHeader:i,disableLineNumbers:r,disableVirtualizationBuffers:o,collapsed:s,expandUnchanged:l,collapsedContextThreshold:a,expansionLineCount:d,hunkSeparators:h,lineDiffType:c,maxLineDiffLength:u,overflow:f,stickyHeader:p,theme:this.workerManager?.getDiffRenderOptions().theme??m,headerRenderMode:y,tokenizeMaxLineLength:v,tokenizeMaxLength:g,useTokenTransformer:C,useCSSClasses:b}}async initializeHighlighter(){return this.highlighter=await St(hn(this.computedLang,this.options)),this.highlighter}hydrate(e){if(e==null)return;this.diff=e;const{options:t}=this.getRenderOptions(e),n=zt(e,this.getTokenizeMaxLength());let i=this.workerManager?.getDiffResultCache(e);i!=null&&!Fe(t,i.options)&&(i=void 0),this.renderCache??={diff:e,highlighted:!n&&!en(e),options:t,result:n?void 0:i?.result,renderRange:void 0},this.workerManager?.isWorkingPool()===!0?this.renderCache.result==null&&!n&&this.workerManager.highlightDiffAST(this,this.diff):this.highlighter==null&&(this.computedLang=e.lang??X(e.name),this.initializeHighlighter())}getRenderOptions(e){const t=(()=>{if(this.workerManager?.isWorkingPool()===!0)return this.workerManager.getDiffRenderOptions();const{theme:i,tokenizeMaxLineLength:r,lineDiffType:o,maxLineDiffLength:s}=this.getOptionsWithDefaults();return{theme:i,useTokenTransformer:Wi(this.options),tokenizeMaxLineLength:r,lineDiffType:o,maxLineDiffLength:s}})();this.getOptionsWithDefaults();const{renderCache:n}=this;return n?.result==null?{options:t,forceHighlight:!0}:!_e(e,n.diff)||!Fe(t,n.options)?{options:t,forceHighlight:!0}:{options:t,forceHighlight:!1}}renderDiff(e=this.renderCache?.diff,t=Re){if(e==null)return;const{expandUnchanged:n=!1,collapsedContextThreshold:i}=this.getOptionsWithDefaults();let{options:r,forceHighlight:o}=this.getRenderOptions(e);const s=this.getMatchingWorkerResultCache(e,r);s!=null&&!this.hasHighlightedRenderCache(e,r)&&(this.renderCache={diff:e,highlighted:!0,renderRange:void 0,...s},o=!1),this.renderCache??={diff:e,highlighted:!1,options:r,result:void 0,renderRange:void 0};const l=e.additionLines.length>0||e.deletionLines.length>0,a=!l||en(e)||zt(e,this.getTokenizeMaxLength()),d=!_e(e,this.renderCache.diff),h=!yt(this.renderCache.renderRange,t);if(this.workerManager?.isWorkingPool()===!0)(a||this.renderCache.result==null||!this.renderCache.highlighted&&(d||h))&&(this.renderCache.diff=e,this.renderCache.options=r,this.renderCache.highlighted=!1,(this.renderCache.result==null||d||h||o)&&(this.renderCache.result=this.workerManager.getPlainDiffAST(e,t.startingLine,t.totalLines,Os(t)||n?!0:this.expandedHunks,i)),this.renderCache.renderRange=t),!a&&l&&(!this.renderCache.highlighted||o)&&this.workerManager.highlightDiffAST(this,e);else{this.computedLang=e.lang??X(e.name);const c=this.highlighter!=null&&We(r.theme),u=this.highlighter!=null&&pt(this.computedLang),f=!a&&u;if(this.highlighter!=null&&c&&(o||a||!this.renderCache.highlighted&&f||this.renderCache.result==null)){const{result:p,options:m}=this.renderDiffWithHighlighter(e,this.highlighter,a||!u);this.renderCache={diff:e,options:m,highlighted:f,result:p,renderRange:void 0}}(!c||!a&&!u)&&this.asyncHighlight(e).then(({result:p,options:m})=>{this.renderCache!=null&&(this.renderCache.highlighted=!1),this.onHighlightSuccess(e,p,m,!a)})}return this.renderCache.result!=null?this.processDiffResult(this.renderCache.diff,t,this.renderCache.result):void 0}async asyncRender(e,t=Re){const{result:n}=await this.asyncHighlight(e);return this.processDiffResult(e,t,n)}createPreElement(e,t,n){const{diffIndicators:i,disableBackground:r,disableLineNumbers:o,overflow:s}=this.getOptionsWithDefaults();return Ui({type:"diff",diffIndicators:i,disableBackground:r,disableLineNumbers:o,overflow:s,split:e,totalLines:t,customProperties:n})}async asyncHighlight(e){const t=zt(e,this.getTokenizeMaxLength());this.computedLang=t?"text":e.lang??X(e.name);const n=this.highlighter!=null&&We(this.options.theme??P),i=t||this.highlighter!=null&&pt(this.computedLang);return(this.highlighter==null||!n||!i)&&(this.highlighter=await this.initializeHighlighter()),this.renderDiffWithHighlighter(e,this.highlighter,t)}renderDiffWithHighlighter(e,t,n=!1){const{options:i}=this.getRenderOptions(e),{collapsedContextThreshold:r}=this.getOptionsWithDefaults();return{result:Ws(e,t,i,{forcePlainText:n,expandedHunks:n?!0:void 0,collapsedContextThreshold:r}),options:i}}onHighlightSuccess(e,t,n,i=!0){if(this.renderCache==null)return;const r=!this.renderCache.highlighted||!Fe(this.renderCache.options,n)||!_e(this.renderCache.diff,e);this.renderCache={diff:e,options:n,highlighted:i,result:t,renderRange:void 0},r&&this.onRenderUpdate?.()}getMatchingWorkerResultCache(e,t){const n=this.workerManager?.getDiffResultCache(e);if(!(n==null||!Fe(t,n.options)))return n}hasHighlightedRenderCache(e,t){const{renderCache:n}=this;return n?.result!=null&&n.highlighted&&_e(e,n.diff)&&Fe(t,n.options)}onHighlightError(e){console.error(e)}getTokenizeMaxLength(){return this.options.tokenizeMaxLength??1e5}processDiffResult(e,t,{code:n,themeStyles:i,baseThemeType:r}){const{diffStyle:o,disableFileHeader:s,expandUnchanged:l,expansionLineCount:a,collapsedContextThreshold:d,hunkSeparators:h}=this.getOptionsWithDefaults();this.diff=e;const c=o==="unified";let u=[],f=[],p=[];const m=[],{additionLines:y,deletionLines:v}=n,g={rowCount:0,hunkSeparators:h,additionsContentAST:u,deletionsContentAST:f,unifiedContentAST:p,unifiedGutterAST:we(),deletionsGutterAST:we(),additionsGutterAST:we(),expansionLineCount:a,hunkData:m,incrementRowCount(T=1){g.rowCount+=T},pushToGutter(T,H){switch(T){case"unified":g.unifiedGutterAST.children.push(H);break;case"deletions":g.deletionsGutterAST.children.push(H);break;case"additions":g.additionsGutterAST.children.push(H);break}}},C=or({fileDiff:e,errorPrefix:"DiffHunksRenderer.processDiffResult"}),b={size:0,side:void 0,increment(){this.size+=1},flush(){if(o!=="unified"){if(this.size<=0||this.side==null){this.side=void 0,this.size=0;return}this.side==="additions"?(g.pushToGutter("additions",G(void 0,"buffer",this.size)),u?.push(nt(this.size))):(g.pushToGutter("deletions",G(void 0,"buffer",this.size)),f?.push(nt(this.size))),this.size=0,this.side=void 0}}},x=(T,H,N,W,M)=>{g.pushToGutter(T,Ri(H,N,W,M))};function S(T){b.flush(),o==="unified"?Ft("unified",T,g):(Ft("deletions",T,g),Ft("additions",T,g))}this.pushFileLevelAnnotations(e,o,t,g),je({diff:e,diffStyle:o,startingLine:t.startingLine,totalLines:t.totalLines,expandedHunks:l?!0:this.expandedHunks,collapsedContextThreshold:d,callback:({hunkIndex:T,hunk:H,collapsedBefore:N,collapsedAfter:W,additionLine:M,deletionLine:F,type:O})=>{const Q=F!=null?F.splitLineIndex:M.splitLineIndex,ge=M!=null?M.unifiedLineIndex:F.unifiedLineIndex;o==="split"&&O!=="change"&&b.flush(),N>0&&S({hunkIndex:T,collapsedLines:N,rangeSize:Math.max(H?.collapsedBefore??0,0),hunkSpecs:H?.hunkSpecs,isFirstHunk:T===0,isLastHunk:!1,isExpandable:!e.isPartial});const me=o==="unified"?ge:Q,xe={type:O,hunkIndex:T,lineIndex:me,unifiedLineIndex:ge,splitLineIndex:Q,deletionLine:F,additionLine:M};if(o==="unified"){const D=this.getUnifiedInjectedRowsForLine?.(xe);D?.before!=null&&Gn(D.before,g);let B=F!=null?v[F.lineIndex]:void 0,z=M!=null?y[M.lineIndex]:void 0;if(B==null&&z==null){const te="DiffHunksRenderer.processDiffResult: deletionLine and additionLine are null, something is wrong";throw console.error(te,{file:e.name}),new Error(te)}const le=O==="change"?M!=null?"change-addition":"change-deletion":O,ee=this.getUnifiedLineDecoration({type:O,lineType:le,additionLineIndex:M?.lineIndex,deletionLineIndex:F?.lineIndex});x("unified",ee.gutterLineType,M!=null?M.lineNumber:F.lineNumber,`${ge},${Q}`,ee.gutterProperties),z!=null?z=at(z,ee.contentProperties):B!=null&&(B=at(B,ee.contentProperties)),st({diffStyle:"unified",type:O,deletionLine:B,additionLine:z,unifiedSpan:this.getAnnotations("unified",F?.lineNumber,M?.lineNumber,T,me),createAnnotationElement:te=>this.createAnnotationElement(te),context:g}),D?.after!=null&&Gn(D.after,g)}else{const D=this.getSplitInjectedRowsForLine?.(xe);D?.before!=null&&jn(D.before,g,b);let B=F!=null?v[F.lineIndex]:void 0,z=M!=null?y[M.lineIndex]:void 0;const le=this.getSplitLineDecoration({side:"deletions",type:O,lineIndex:F?.lineIndex}),ee=this.getSplitLineDecoration({side:"additions",type:O,lineIndex:M?.lineIndex});if(B==null&&z==null){const q="DiffHunksRenderer.processDiffResult: deletionLine and additionLine are null, something is wrong";throw console.error(q,{file:e.name}),new Error(q)}const te=(()=>{if(O==="change"){if(z==null)return"additions";if(B==null)return"deletions"}})();if(te!=null){if(b.side!=null&&b.side!==te)throw new Error("DiffHunksRenderer.processDiffResult: iterateOverDiff, invalid pending splits");b.side=te,b.increment()}const De=this.getAnnotations("split",F?.lineNumber,M?.lineNumber,T,me);if(De!=null&&b.size>0&&b.flush(),F!=null){const q=at(B,le.contentProperties);x("deletions",le.gutterLineType,F.lineNumber,`${F.unifiedLineIndex},${Q}`,le.gutterProperties),q!=null&&(B=q)}if(M!=null){const q=at(z,ee.contentProperties);x("additions",ee.gutterLineType,M.lineNumber,`${M.unifiedLineIndex},${Q}`,ee.gutterProperties),q!=null&&(z=q)}st({diffStyle:"split",type:O,additionLine:z,deletionLine:B,...De,createAnnotationElement:q=>this.createAnnotationElement(q),context:g}),D?.after!=null&&jn(D.after,g,b)}const Z=o==="split"&&H!=null&&Q===H.splitLineStart+H.splitLineCount-1,be=Z?H.noEOFCRDeletions:!1,ae=Z?H.noEOFCRAdditions:!1,j=(F?.noEOFCR??!1)||be,Se=(M?.noEOFCR??!1)||ae;if(Se||j){if(o==="split"&&b.flush(),j){const D=O==="context"||O==="context-expanded"?O:"change-deletion";o==="unified"?(g.unifiedContentAST.push(it(D)),g.pushToGutter("unified",G(D,"metadata",1))):(g.deletionsContentAST.push(it(D)),g.pushToGutter("deletions",G(D,"metadata",1)),Se||(g.pushToGutter("additions",G(void 0,"buffer",1)),g.additionsContentAST.push(nt(1))))}if(Se){const D=O==="context"||O==="context-expanded"?O:"change-addition";o==="unified"?(g.unifiedContentAST.push(it(D)),g.pushToGutter("unified",G(D,"metadata",1))):(g.additionsContentAST.push(it(D)),g.pushToGutter("additions",G(D,"metadata",1)),j||(g.pushToGutter("deletions",G(void 0,"buffer",1)),g.deletionsContentAST.push(nt(1))))}g.incrementRowCount(1)}W>0&&h!=="simple"&&S({hunkIndex:O==="context-expanded"?T:T+1,collapsedLines:W,rangeSize:C,hunkSpecs:void 0,isFirstHunk:!1,isLastHunk:!0,isExpandable:!e.isPartial}),g.incrementRowCount(1)}}),o==="split"&&b.flush();const k=Math.max(Ps(e.hunks),e.additionLines.length??0,e.deletionLines.length??0),w=t.bufferBefore>0||t.bufferAfter>0,L=!c&&e.type!=="deleted",I=!c&&e.type!=="new",A=g.rowCount>0||w;u=L&&A?u:void 0,f=I&&A?f:void 0,p=c&&A?p:void 0;const E=this.createPreElement(f!=null&&u!=null,k);return{unifiedGutterAST:c&&A?g.unifiedGutterAST.children:void 0,unifiedContentAST:p,deletionsGutterAST:I&&A?g.deletionsGutterAST.children:void 0,deletionsContentAST:f,additionsGutterAST:L&&A?g.additionsGutterAST.children:void 0,additionsContentAST:u,hunkData:m,preNode:E,themeStyles:i,baseThemeType:r,headerElement:s?void 0:this.renderHeader(this.diff),totalLines:k,rowCount:g.rowCount,bufferBefore:t.bufferBefore,bufferAfter:t.bufferAfter,css:""}}renderCodeAST(e,t){const n=e==="unified"?t.unifiedGutterAST:e==="deletions"?t.deletionsGutterAST:t.additionsGutterAST,i=e==="unified"?t.unifiedContentAST:e==="deletions"?t.deletionsContentAST:t.additionsContentAST;if(n==null||i==null)return;const r=we(n);return r.properties.style=`grid-row: span ${t.rowCount}`,[r,Vi(i,t.rowCount)]}renderFullAST(e,t=[]){const n=this.getOptionsWithDefaults().hunkSeparators==="line-info",i=this.renderCodeAST("unified",e);if(i!=null)return t.push(R({tagName:"code",children:i,properties:{"data-code":"","data-container-size":n?"":void 0,"data-unified":""}})),{...e.preNode,children:t};const r=this.renderCodeAST("deletions",e);r!=null&&t.push(R({tagName:"code",children:r,properties:{"data-code":"","data-container-size":n?"":void 0,"data-deletions":""}}));const o=this.renderCodeAST("additions",e);return o!=null&&t.push(R({tagName:"code",children:o,properties:{"data-code":"","data-container-size":n?"":void 0,"data-additions":""}})),{...e.preNode,children:t}}renderFullHTML(e,t=[]){return fe(this.renderFullAST(e,t))}renderPartialHTML(e,t){return t==null?fe(e):fe(R({tagName:"code",children:e,properties:{"data-code":"","data-container-size":this.getOptionsWithDefaults().hunkSeparators==="line-info"?"":void 0,[`data-${t}`]:""}}))}pushFileLevelAnnotations(e,t,n,i){if(!xt(n))return;const r=e.type!=="new"?Vn(Yt(this.deletionAnnotations)):[],o=e.type!=="deleted"?Vn(Yt(this.additionAnnotations)):[];if(r.length===0&&o.length===0)return;const s=-1,l=-1,{createAnnotationElement:a}=this;if(t==="unified"){st({diffStyle:t,type:"context",unifiedSpan:{type:"annotation",hunkIndex:s,lineIndex:l,annotations:r.concat(o)},createAnnotationElement:a,context:i});return}st({diffStyle:t,type:"context",deletionSpan:{type:"annotation",hunkIndex:s,lineIndex:l,annotations:r},additionSpan:{type:"annotation",hunkIndex:s,lineIndex:l,annotations:o},createAnnotationElement:a,context:i})}getAnnotations(e,t,n,i,r){const o={type:"annotation",hunkIndex:i,lineIndex:r,annotations:[]};if(t!=null)for(const l of this.deletionAnnotations[t]??[])o.annotations.push(pe(l));const s={type:"annotation",hunkIndex:i,lineIndex:r,annotations:[]};if(n!=null)for(const l of this.additionAnnotations[n]??[])(e==="unified"?o:s).annotations.push(pe(l));if(e==="unified")return o.annotations.length>0?o:void 0;if(!(s.annotations.length===0&&o.annotations.length===0))return{deletionSpan:o,additionSpan:s}}renderHeader(e){const{headerRenderMode:t,stickyHeader:n}=this.getOptionsWithDefaults();return zi({fileOrDiff:e,mode:t,stickyHeader:n})}};function Vn(e){return e?.map(t=>pe(t))??[]}const Ys=new Intl.PluralRules("en-US");function Wn(e){return`${e} unmodified line${Ys.select(e)==="one"?"":"s"}`}function Gn(e,t){for(const n of e)t.unifiedContentAST.push(n.content),t.pushToGutter("unified",n.gutter),t.incrementRowCount(1)}function jn(e,t,n){for(const{deletion:i,addition:r}of e){if(i==null&&r==null)continue;const o=i!=null&&r!=null?void 0:i==null?"deletions":"additions";(o==null||n.side!==o)&&n.flush(),i!=null&&(t.deletionsContentAST.push(i.content),t.pushToGutter("deletions",i.gutter)),r!=null&&(t.additionsContentAST.push(r.content),t.pushToGutter("additions",r.gutter)),o!=null&&(n.side=o,n.increment()),t.incrementRowCount(1)}}function st({diffStyle:e,type:t,deletionLine:n,additionLine:i,unifiedSpan:r,deletionSpan:o,additionSpan:s,createAnnotationElement:l,context:a}){let d=!1;if(e==="unified"){if(i!=null?a.unifiedContentAST.push(i):n!=null&&a.unifiedContentAST.push(n),r!=null){const h=t==="change"?n!=null?"change-deletion":"change-addition":t;a.unifiedContentAST.push(l(r)),a.pushToGutter("unified",G(h,"annotation",1)),d=!0}}else if(e==="split"){if(n!=null&&a.deletionsContentAST.push(n),i!=null&&a.additionsContentAST.push(i),o!=null){const h=t==="change"?n!=null?"change-deletion":"context":t;a.deletionsContentAST.push(l(o)),a.pushToGutter("deletions",G(h,"annotation",1)),d=!0}if(s!=null){const h=t==="change"?i!=null?"change-addition":"context":t;a.additionsContentAST.push(l(s)),a.pushToGutter("additions",G(h,"annotation",1)),d=!0}}d&&a.incrementRowCount(1)}function Ft(e,{hunkIndex:t,collapsedLines:n,rangeSize:i,hunkSpecs:r,isFirstHunk:o,isLastHunk:s,isExpandable:l},a){if(n<=0)return;const d=e==="unified"?a.unifiedContentAST:e==="deletions"?a.deletionsContentAST:a.additionsContentAST;if(a.hunkSeparators==="metadata"){r!=null&&(a.pushToGutter(e,Le({type:"metadata",content:r,isFirstHunk:o,isLastHunk:s})),d.push(Le({type:"metadata",content:r,isFirstHunk:o,isLastHunk:s})),e!=="additions"&&a.incrementRowCount(1));return}if(a.hunkSeparators==="simple"){t>0&&(a.pushToGutter(e,Le({type:"simple",isFirstHunk:o,isLastHunk:!1})),d.push(Le({type:"simple",isFirstHunk:o,isLastHunk:!1})),e!=="additions"&&a.incrementRowCount(1));return}const h=Ds(e,t),c=i>a.expansionLineCount,u=l?t:void 0;a.pushToGutter(e,Le({type:a.hunkSeparators,content:Wn(n),expandIndex:u,chunked:c,slotName:h,isFirstHunk:o,isLastHunk:s})),d.push(Le({type:a.hunkSeparators,content:Wn(n),expandIndex:u,chunked:c,slotName:h,isFirstHunk:o,isLastHunk:s})),e!=="additions"&&a.incrementRowCount(1),a.hunkData.push({slotName:h,hunkIndex:t,lines:n,type:e,expandable:l?{up:!o,down:!s,chunked:c}:void 0})}function at(e,t){return e==null||e.type!=="element"||t==null?e:{...e,properties:{...e.properties,...t}}}function zt(e,t){return Math.max(e.additionLines.length,e.deletionLines.length)>t}function Xs(e,t){return e.lineNumber===t.lineNumber&&e.side===t.side&&e.metadata===t.metadata}function Qs(e,t){return e.slotName===t.slotName&&e.hunkIndex===t.hunkIndex&&e.lines===t.lines&&e.type===t.type&&e.expandable?.chunked===t.expandable?.chunked&&e.expandable?.up===t.expandable?.up&&e.expandable?.down===t.expandable?.down}function Js(e){return{theme:e?.theme,disableLineNumbers:e?.disableLineNumbers,overflow:e?.overflow,collapsed:e?.collapsed,disableFileHeader:e?.disableFileHeader,disableVirtualizationBuffers:e?.disableVirtualizationBuffers,stickyHeader:e?.stickyHeader,preferredHighlighter:e?.preferredHighlighter,useCSSClasses:e?.useCSSClasses,useTokenTransformer:e?.useTokenTransformer,tokenizeMaxLineLength:e?.tokenizeMaxLineLength,tokenizeMaxLength:e?.tokenizeMaxLength,diffStyle:e?.diffStyle,diffIndicators:e?.diffIndicators,disableBackground:e?.disableBackground,hunkSeparators:typeof e?.hunkSeparators=="function"?"custom":e?.hunkSeparators,expandUnchanged:e?.expandUnchanged,collapsedContextThreshold:e?.collapsedContextThreshold,lineDiffType:e?.lineDiffType,maxLineDiffLength:e?.maxLineDiffLength,expansionLineCount:e?.expansionLineCount,headerRenderMode:e?.renderCustomHeader!=null?"custom":"default"}}let Zs=-1;var dr=class{options;workerManager;isContainerManaged;static LoadedCustomComponent=!0;__id=`file-diff:${++Zs}`;type="file-diff";fileContainer;spriteSVG;pre;codeUnified;codeDeletions;codeAdditions;bufferBefore;bufferAfter;themeCSSStyle;appliedThemeCSS;hasAdoptedThemeCSS=!1;unsafeCSSStyle;appliedUnsafeCSS;gutterUtilityContent;headerElement;headerPrefix;headerMetadata;headerCustom;separatorCache=new Map;errorWrapper;placeHolder;hunksRenderer;resizeManager;scrollSyncManager;interactionManager;annotationCache=new Map;lineAnnotations=[];managersDirty=!1;deletionFile;additionFile;fileDiff;renderRange;appliedPreAttributes;lastRenderedHeaderHTML;cachedHeaderHTML;lastRowCount;mounted=!1;enabled=!0;constructor(e={theme:P},t,n=!1){this.options=e,this.workerManager=t,this.isContainerManaged=n,this.hunksRenderer=this.createHunksRenderer(e),this.resizeManager=new Hi,this.scrollSyncManager=new Ms,this.interactionManager=new Ai("diff",qe(e,typeof e.hunkSeparators=="function"||(e.hunkSeparators??"line-info")==="line-info"||e.hunkSeparators==="line-info-basic"?this.handleExpandHunk:void 0,this.getLineIndex)),this.workerManager?.subscribeToThemeChanges(this),this.enabled=!0}handleHighlightRender=()=>{this.rerender()};getHunksRendererOptions(e){return Js(e)}createHunksRenderer(e){return new lr(this.getHunksRendererOptions(e),this.handleHighlightRender,this.workerManager)}getLineIndex=(e,t="additions")=>{if(this.fileDiff==null)return;const n=this.fileDiff.hunks.at(-1);let i,r;e:for(const o of this.fileDiff.hunks){let s=t==="deletions"?o.deletionStart:o.additionStart;const l=t==="deletions"?o.deletionCount:o.additionCount;let a=o.splitLineStart,d=o.unifiedLineStart;if(e=s+l){if(o===n){const h=e-(s+l);i=d+o.unifiedLineCount+h,r=a+o.splitLineCount+h;break e}continue}for(const h of o.hunkContent)if(h.type==="context")if(ethis.interactionManager.getHoveredLine();setLineAnnotations(e){this.lineAnnotations=e}canPartiallyRender(e,t,n){return!(e||t||n||typeof this.options.hunkSeparators=="function")}setSelectedLines(e,t){this.interactionManager.setSelection(e,t)}flushManagers(){if(!this.managersDirty||this.pre==null){this.managersDirty=!1;return}const{diffStyle:e="split",overflow:t="scroll"}=this.options;this.interactionManager.setup(this.pre),this.resizeManager.setup(this.pre,t==="wrap"),t==="scroll"&&e==="split"?this.scrollSyncManager.setup(this.pre,this.codeDeletions,this.codeAdditions):this.scrollSyncManager.cleanUp(),this.managersDirty=!1}cleanUp(e=!1){this.emitPostRender(!0),this.resizeManager.cleanUp(),this.interactionManager.cleanUp(),this.scrollSyncManager.cleanUp(),this.managersDirty=!1,this.workerManager?.unsubscribeToThemeChanges(this),this.renderRange=void 0,this.isContainerManaged||this.fileContainer?.remove(),this.fileContainer=void 0,this.mounted=!1,e||(this.lineAnnotations=[]),this.clearAuxiliaryNodes(),this.annotationCache.clear(),this.pre=void 0,this.codeUnified=void 0,this.codeDeletions=void 0,this.codeAdditions=void 0,this.bufferBefore=void 0,this.bufferAfter=void 0,this.appliedPreAttributes=void 0,this.headerElement=void 0,this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0,this.placeHolder=void 0,this.lastRenderedHeaderHTML=void 0,e||(this.cachedHeaderHTML=void 0),this.errorWrapper=void 0,this.spriteSVG=void 0,this.lastRowCount=void 0,this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0,this.hasAdoptedThemeCSS=!1,this.unsafeCSSStyle=void 0,this.appliedUnsafeCSS=void 0,e?this.hunksRenderer.recycle():(this.hunksRenderer.cleanUp(),this.workerManager=void 0,this.fileDiff=void 0,this.deletionFile=void 0,this.additionFile=void 0),this.enabled=!1}virtualizedSetup(){this.enabled=!0,this.workerManager?.subscribeToThemeChanges(this)}hydrate(e){const{fileContainer:t,prerenderedHTML:n,preventEmit:i=!1,lineAnnotations:r,oldFile:o,newFile:s,fileDiff:l}=e;this.hydrateElements(t,n),na(this.pre,ea({fileDiff:l,oldFile:o,newFile:s}),this.options.collapsed)||ia(this.headerElement,ta({fileDiff:l,oldFile:o,newFile:s}),this.options.disableFileHeader)?this.render({...e,preventEmit:!0}):this.hydrationSetup({fileDiff:l,oldFile:o,newFile:s,lineAnnotations:r}),i||this.emitPostRender()}hydrateElements(e,t){this.fileContainer!==e&&this.emitPostRender(!0),Ji(e,t);for(const n of e.shadowRoot?.children??[]){if(n instanceof SVGElement){this.spriteSVG=n;continue}if(n instanceof HTMLElement){if(n instanceof HTMLPreElement){this.pre=n;for(const i of n.children)!(i instanceof HTMLElement)||i.tagName.toLowerCase()!=="code"||("deletions"in i.dataset&&(this.codeDeletions=i),"additions"in i.dataset&&(this.codeAdditions=i),"unified"in i.dataset&&(this.codeUnified=i));continue}if("diffsHeader"in n.dataset){this.headerElement=n;continue}if(n instanceof HTMLStyleElement&&n.hasAttribute("data-theme-css")){this.themeCSSStyle=n;continue}if(n instanceof HTMLStyleElement&&n.hasAttribute("data-unsafe-css")){this.unsafeCSSStyle=n,this.appliedUnsafeCSS=n.textContent;continue}}}this.pre!=null&&(this.syncCodeNodesFromPre(this.pre),this.pre.removeAttribute("data-dehydrated")),this.fileContainer=e,this.hydrateMeasuredScrollbar()}hydrationSetup({fileDiff:e,oldFile:t,newFile:n,lineAnnotations:i}){this.lineAnnotations=i??this.lineAnnotations,this.additionFile=n,this.deletionFile=t,this.fileDiff=e??(t!=null&&n!=null?Zt(t,n,this.options.parseDiffOptions):void 0),this.pre!=null&&(this.syncInteractionOptions(),this.hunksRenderer.hydrate(this.fileDiff),this.renderAnnotations(),this.renderGutterUtility(),this.injectUnsafeCSS(),this.managersDirty=!0,this.flushManagers())}rerender(){!this.enabled||this.fileDiff==null&&this.additionFile==null&&this.deletionFile==null||this.render({forceRender:!0,renderRange:this.renderRange})}onThemeChange(){this.hunksRenderer.clearRenderCache(),this.rerender()}handleExpandHunk=(e,t,n)=>{this.expandHunk(e,t,n)};expandHunk=(e,t,n)=>{this.hunksRenderer.expandHunk(e,t,n),this.rerender()};render({oldFile:e,newFile:t,fileDiff:n,deferManagers:i=!1,forceRender:r=!1,preventEmit:o=!1,lineAnnotations:s,fileContainer:l,containerWrapper:a,renderRange:d}){if(!this.enabled)throw new Error("FileDiff.render: attempting to call render after cleaned up");const{collapsed:h=!1,themeType:c="system"}=this.options,u=h?void 0:d,f=this.hasThemeChanged(),p=e!=null&&t!=null&&(!se(e,this.deletionFile)||!se(t,this.additionFile));let m=n!=null&&n!==this.fileDiff;const y=s!=null&&(s.length>0||this.lineAnnotations.length>0)?s!==this.lineAnnotations:!1;if(!h&&yt(u,this.renderRange)&&!r&&!y&&!f&&(n!=null&&n===this.fileDiff||n==null&&!p))return this.applyCachedThemeState(c);const{renderRange:v}=this;if(this.renderRange=u,this.deletionFile=e,this.additionFile=t,n!=null?this.fileDiff=n:e!=null&&t!=null&&p&&(m=!0,this.fileDiff=Zt(e,t,this.options.parseDiffOptions)),m&&(this.cachedHeaderHTML=void 0),s!=null&&this.setLineAnnotations(s),this.fileDiff==null)return!1;this.hunksRenderer.setOptions(this.getHunksRendererOptions(this.options)),this.syncInteractionOptions(),this.hunksRenderer.setLineAnnotations(this.lineAnnotations);const{disableErrorHandling:g=!1,disableFileHeader:C=!1}=this.options;if(C&&(this.headerElement!=null&&(this.headerElement.remove(),this.headerElement=void 0,this.lastRenderedHeaderHTML=void 0),this.clearHeaderSlots()),l=this.getOrCreateFileContainer(l,a),this.applyCachedThemeState(c),h){this.removeRenderedCode(),this.clearAuxiliaryNodes();try{const b=this.hunksRenderer.renderDiff(this.fileDiff,Ei);b!=null&&this.applyThemeState(l,b.themeStyles,c,b.baseThemeType),b?.headerElement!=null&&this.applyHeaderToDOM(b.headerElement,l),this.renderSeparators([]),this.injectUnsafeCSS()}catch(b){if(g)throw b;console.error(b),b instanceof Error&&this.applyErrorToDOM(b,l)}return o||this.emitPostRender(),!0}try{const b=this.getOrCreatePreNode(l);if(!(this.canPartiallyRender(r,y,p||m||f)&&this.applyPartialRender({previousRenderRange:v,renderRange:u}))){const x=this.hunksRenderer.renderDiff(this.fileDiff,u);if(x==null)return this.workerManager?.isInitialized()===!1&&this.workerManager.initialize().then(()=>this.rerender()),!1;this.applyThemeState(l,x.themeStyles,c,x.baseThemeType),x.headerElement!=null&&this.applyHeaderToDOM(x.headerElement,l),x.additionsContentAST!=null||x.deletionsContentAST!=null||x.unifiedContentAST!=null?this.applyHunksToDOM(b,x):this.pre!=null&&(this.pre.remove(),this.pre=void 0),this.renderSeparators(x.hunkData)}this.applyBuffers(b,u),this.injectUnsafeCSS(),this.renderAnnotations(),this.renderGutterUtility(),this.managersDirty=!0,i||this.flushManagers()}catch(b){if(g)throw b;console.error(b),b instanceof Error&&this.applyErrorToDOM(b,l)}return o||this.emitPostRender(),!0}emitPostRender(e=!1){const{fileContainer:t,options:{onPostRender:n}}=this;if(e){if(!this.mounted||(this.mounted=!1,t==null))return;this.options.onPostRender?.(t,this,"unmount");return}if(t==null)return;const i=this.mounted?"update":"mount";this.mounted=!0,n?.(t,this,i)}removeRenderedCode(){this.resizeManager.cleanUp(),this.scrollSyncManager.cleanUp(),this.interactionManager.cleanUp(),this.bufferBefore?.remove(),this.bufferBefore=void 0,this.bufferAfter?.remove(),this.bufferAfter=void 0,this.codeUnified?.remove(),this.codeUnified=void 0,this.codeDeletions?.remove(),this.codeDeletions=void 0,this.codeAdditions?.remove(),this.codeAdditions=void 0,this.pre?.remove(),this.pre=void 0,this.appliedPreAttributes=void 0,this.lastRowCount=void 0}clearAuxiliaryNodes(){for(const{element:e}of this.separatorCache.values())e.remove();this.separatorCache.clear();for(const{element:e}of this.annotationCache.values())e.remove();this.annotationCache.clear(),this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0}renderPlaceholder(e){if(this.fileContainer==null)return!1;if(this.emitPostRender(!0),this.cleanChildNodes(),this.placeHolder==null){const t=this.fileContainer.shadowRoot??this.fileContainer.attachShadow({mode:"open"});this.placeHolder=document.createElement("div"),this.placeHolder.dataset.placeholder="",t.appendChild(this.placeHolder)}return this.placeHolder.style.setProperty("height",`${e}px`),!0}primeHighlightCache(){const{fileDiff:e,workerManager:t}=this;if(e==null||t==null||en(e))return;const n=this.options.tokenizeMaxLength??1e5;Math.max(e.additionLines.length,e.deletionLines.length)>n||t.primeDiffHighlightCache(e)}cleanChildNodes(){this.resizeManager.cleanUp(),this.scrollSyncManager.cleanUp(),this.interactionManager.cleanUp(),this.clearAuxiliaryNodes(),this.bufferAfter?.remove(),this.bufferBefore?.remove(),this.codeAdditions?.remove(),this.codeDeletions?.remove(),this.codeUnified?.remove(),this.errorWrapper?.remove(),this.headerElement?.remove(),this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerCustom?.remove(),this.pre?.remove(),this.spriteSVG?.remove(),this.themeCSSStyle?.remove(),this.unsafeCSSStyle?.remove(),this.bufferAfter=void 0,this.bufferBefore=void 0,this.codeAdditions=void 0,this.codeDeletions=void 0,this.codeUnified=void 0,this.errorWrapper=void 0,this.headerElement=void 0,this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0,this.pre=void 0,this.spriteSVG=void 0,this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0,this.hasAdoptedThemeCSS=!1,this.unsafeCSSStyle=void 0,this.appliedUnsafeCSS=void 0,this.lastRenderedHeaderHTML=void 0,this.lastRowCount=void 0,this.mounted=!1}renderSeparators(e){const{hunkSeparators:t}=this.options;if(this.isContainerManaged||this.fileContainer==null||typeof t!="function"){for(const{element:i}of this.separatorCache.values())i.remove();this.separatorCache.clear();return}const n=new Map(this.separatorCache);for(const i of e){const r=i.slotName;let o=this.separatorCache.get(r);if(o==null||!Qs(i,o.hunkData)){o?.element.remove();const s=document.createElement("div");s.style.display="contents",s.slot=i.slotName;const l=t(i,this);l!=null&&s.appendChild(l),this.fileContainer.appendChild(s),o={element:s,hunkData:i},this.separatorCache.set(r,o)}n.delete(r)}for(const[i,{element:r}]of n.entries())this.separatorCache.delete(i),r.remove()}renderAnnotations(){if(this.isContainerManaged||this.fileContainer==null){for(const{element:n}of this.annotationCache.values())n.remove();this.annotationCache.clear();return}const e=new Map(this.annotationCache),{renderAnnotation:t}=this.options;if(t!=null&&this.lineAnnotations.length>0)for(const[n,i]of this.lineAnnotations.entries()){const r=`${n}-${pe(i)}`;let o=this.annotationCache.get(r);if(o==null||!Xs(i,o.annotation)){o?.element.remove();const s=t(i);if(s==null)continue;o={element:un(pe(i)),annotation:i},o.element.appendChild(s),this.fileContainer.appendChild(o.element),this.annotationCache.set(r,o)}e.delete(r)}for(const[n,{element:i}]of e.entries())this.annotationCache.delete(n),i.remove()}renderGutterUtility(){const{renderGutterUtility:e}=this.options;if(this.fileContainer==null||e==null){this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0;return}const t=e(this.interactionManager.getHoveredLine);if(t!=null&&this.gutterUtilityContent!=null)return;if(t==null){this.gutterUtilityContent?.remove(),this.gutterUtilityContent=void 0;return}const n=qi();n.appendChild(t),this.fileContainer.appendChild(n),this.gutterUtilityContent=n}getOrCreateFileContainer(e,t){const{fileContainer:n}=this,i=e??n??document.createElement("diffs-container"),r=n!==i;return r&&this.emitPostRender(!0),this.fileContainer=i,n!=null&&r&&(this.lastRenderedHeaderHTML=void 0,this.headerElement=void 0),t!=null&&this.fileContainer.parentNode!==t&&t.appendChild(this.fileContainer),r&&this.adoptReusableShellElements(this.fileContainer),this.ensureSpriteSVG(this.fileContainer),this.fileContainer}adoptReusableShellElements(e){const{shadowRoot:t}=e;if(t!=null)for(const n of t.children)n instanceof SVGElement?this.spriteSVG??=n:Ke(n)&&n.hasAttribute("data-theme-css")?(this.themeCSSStyle??=n,this.hasAdoptedThemeCSS=!0):Ke(n)&&n.hasAttribute("data-unsafe-css")&&(this.unsafeCSSStyle??=n,this.appliedUnsafeCSS??=this.options.unsafeCSS??void 0)}ensureSpriteSVG(e){const t=e.shadowRoot??e.attachShadow({mode:"open"});if(this.spriteSVG==null){const n=document.createElement("div");n.innerHTML=Gi;const i=n.firstChild;i instanceof SVGElement&&(this.spriteSVG=i)}this.spriteSVG!=null&&this.spriteSVG.parentNode!==t&&t.appendChild(this.spriteSVG)}getOrCreatePreNode(e){const t=e.shadowRoot??e.attachShadow({mode:"open"});return this.pre==null?(this.pre=document.createElement("pre"),this.appliedPreAttributes=void 0,this.codeUnified=void 0,this.codeDeletions=void 0,this.codeAdditions=void 0,t.appendChild(this.pre)):this.pre.parentNode!==t&&(t.appendChild(this.pre),this.appliedPreAttributes=void 0),this.placeHolder?.remove(),this.placeHolder=void 0,this.pre}syncCodeNodesFromPre(e){this.codeUnified=void 0,this.codeDeletions=void 0,this.codeAdditions=void 0;for(const t of Array.from(e.children))t instanceof HTMLElement&&(t.hasAttribute("data-unified")?this.codeUnified=t:t.hasAttribute("data-deletions")?this.codeDeletions=t:t.hasAttribute("data-additions")&&(this.codeAdditions=t))}applyHeaderToDOM(e,t){this.cleanupErrorWrapper(),this.placeHolder?.remove(),this.placeHolder=void 0;const{fileDiff:n}=this,i=this.cachedHeaderHTML??fe(e);if(this.cachedHeaderHTML=i,i!==this.lastRenderedHeaderHTML){const d=document.createElement("div");d.innerHTML=i;const h=d.firstElementChild;if(!(h instanceof HTMLElement))return;this.headerElement!=null?t.shadowRoot?.replaceChild(h,this.headerElement):t.shadowRoot?.prepend(h),this.headerElement=h,this.lastRenderedHeaderHTML=i}if(this.isContainerManaged||n==null)return;const{renderCustomHeader:r,renderHeaderPrefix:o,renderHeaderMetadata:s}=this.options;if(r!=null){const d=r(n)??void 0;this.headerCustom=this.upsertHeaderSlotElement(t,this.headerCustom,sn,d),this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerPrefix=void 0,this.headerMetadata=void 0;return}const l=o?.(n)??void 0,a=s?.(n)??void 0;this.headerPrefix=this.upsertHeaderSlotElement(t,this.headerPrefix,rn,l),this.headerMetadata=this.upsertHeaderSlotElement(t,this.headerMetadata,on,a),this.headerCustom?.remove(),this.headerCustom=void 0}clearHeaderSlots(){this.headerPrefix?.remove(),this.headerMetadata?.remove(),this.headerCustom?.remove(),this.headerPrefix=void 0,this.headerMetadata=void 0,this.headerCustom=void 0}upsertHeaderSlotElement(e,t,n,i){if(i==null){t?.remove();return}const r=t??this.createHeaderSlotElement(n);return t==null&&e.appendChild(r),this.replaceHeaderSlotContent(r,i),r}replaceHeaderSlotContent(e,t){e.replaceChildren(),t instanceof Element?e.appendChild(t):e.innerText=`${t}`}createHeaderSlotElement(e){const t=document.createElement("div");return t.slot=e,t}injectUnsafeCSS(){const{unsafeCSS:e}=this.options,t=this.fileContainer?.shadowRoot;if(t!=null){if(e==null||e===""){this.unsafeCSSStyle!=null&&(this.unsafeCSSStyle.remove(),this.unsafeCSSStyle=void 0),this.appliedUnsafeCSS=void 0;return}this.unsafeCSSStyle?.parentNode===t&&this.appliedUnsafeCSS===e||(this.unsafeCSSStyle??=Ki(),this.unsafeCSSStyle.parentNode!==t&&t.appendChild(this.unsafeCSSStyle),this.unsafeCSSStyle.textContent=pn(e),this.appliedUnsafeCSS=e)}}applyThemeState(e,t,n,i){const r=e.shadowRoot??e.attachShadow({mode:"open"}),o=i??n,s=this.options.theme??P,l=typeof s=="string"?s:{...s},a=He(r);if(this.themeCSSStyle?.parentNode===r&&this.appliedThemeCSS?.themeStyles===t&&this.appliedThemeCSS.themeType===o&&this.appliedThemeCSS.scrollbarGutter===a){this.appliedThemeCSS.theme=l;return}if(this.hasAdoptedThemeCSS&&this.themeCSSStyle?.parentNode===r){this.hasAdoptedThemeCSS=!1,this.appliedThemeCSS={theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a};return}this.themeCSSStyle=bn({shadowRoot:r,currentNode:this.themeCSSStyle,themeCSS:gn(t,o,a)}),this.appliedThemeCSS=this.themeCSSStyle!=null?{theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a}:void 0}hydrateMeasuredScrollbar(){const e=this.fileContainer?.shadowRoot;e==null||this.themeCSSStyle==null||(this.themeCSSStyle.textContent=Qi(this.themeCSSStyle.textContent??"",He(e)))}applyHunksToDOM(e,t){const{overflow:n="scroll"}=this.options,i=(this.options.hunkSeparators??"line-info")==="line-info",r=n==="wrap"?t.rowCount:void 0;this.cleanupErrorWrapper(),this.applyPreNodeAttributes(e,t);let o=!1;const s=[],l=this.hunksRenderer.renderCodeAST("unified",t),a=this.hunksRenderer.renderCodeAST("deletions",t),d=this.hunksRenderer.renderCodeAST("additions",t);l!=null?(o=this.codeUnified==null||this.codeAdditions!=null||this.codeDeletions!=null,this.codeDeletions?.remove(),this.codeDeletions=void 0,this.codeAdditions?.remove(),this.codeAdditions=void 0,this.codeUnified=Ge({code:this.codeUnified,columnType:"unified",rowSpan:r,containerSize:i}),this.codeUnified.innerHTML=this.hunksRenderer.renderPartialHTML(l),s.push(this.codeUnified)):a!=null||d!=null?(a!=null?(o=this.codeDeletions==null||this.codeUnified!=null,this.codeUnified?.remove(),this.codeUnified=void 0,this.codeDeletions=Ge({code:this.codeDeletions,columnType:"deletions",rowSpan:r,containerSize:i}),this.codeDeletions.innerHTML=this.hunksRenderer.renderPartialHTML(a),s.push(this.codeDeletions)):(this.codeDeletions?.remove(),this.codeDeletions=void 0),d!=null?(o=o||this.codeAdditions==null||this.codeUnified!=null,this.codeUnified?.remove(),this.codeUnified=void 0,this.codeAdditions=Ge({code:this.codeAdditions,columnType:"additions",rowSpan:r,containerSize:i}),this.codeAdditions.innerHTML=this.hunksRenderer.renderPartialHTML(d),s.push(this.codeAdditions)):(this.codeAdditions?.remove(),this.codeAdditions=void 0)):(this.codeUnified?.remove(),this.codeUnified=void 0,this.codeDeletions?.remove(),this.codeDeletions=void 0,this.codeAdditions?.remove(),this.codeAdditions=void 0),s.length===0?e.textContent="":o&&e.replaceChildren(...s),this.lastRowCount=t.rowCount}applyPartialRender({previousRenderRange:e,renderRange:t}){const{pre:n,codeUnified:i,codeAdditions:r,codeDeletions:o,options:{diffStyle:s="split"}}=this;if(n==null||e==null||t==null||!Number.isFinite(e.totalLines)||!Number.isFinite(t.totalLines)||this.lastRowCount==null)return!1;const l=this.getCodeColumns(s,i,o,r);if(l==null)return!1;const a=e.startingLine,d=t.startingLine,h=a+e.totalLines,c=d+t.totalLines,u=Math.max(a,d),f=Math.min(h,c);if(f<=u)return!1;const p=Math.max(0,u-a),m=Math.max(0,h-f),y=this.trimColumns({columns:l,trimStart:p,trimEnd:m,previousStart:a,overlapStart:u,overlapEnd:f,diffStyle:s});if(y<0)throw new Error("applyPartialRender: failed to trim to overlap");if(this.lastRowCount{if(!(k<=0||this.fileDiff==null))return this.hunksRenderer.renderDiff(this.fileDiff,{startingLine:S,totalLines:k,bufferBefore:0,bufferAfter:0})},C=g(d,Math.max(u-d,0));if(C==null&&df)return!1;const x=(S,k)=>{if(S!=null){if(s==="unified"&&!Array.isArray(l))this.insertPartialHTML(s,l,S,k);else if(s==="split"&&Array.isArray(l))this.insertPartialHTML(s,l,S,k);else throw new Error("FileDiff.applyPartialRender.applyChunk: invalid chunk application");v+=S.rowCount}};return this.cleanupErrorWrapper(),x(C,"afterbegin"),x(b,"beforeend"),this.lastRowCount!==v&&(this.applyRowSpan(s,l,v),this.lastRowCount=v),!0}insertPartialHTML(e,t,n,i){if(e==="unified"&&!Array.isArray(t)){const r=this.hunksRenderer.renderCodeAST("unified",n);this.renderPartialColumn(t,r,i)}else if(e==="split"&&Array.isArray(t)){const r=this.hunksRenderer.renderCodeAST("deletions",n),o=this.hunksRenderer.renderCodeAST("additions",n);this.renderPartialColumn(t[0],r,i),this.renderPartialColumn(t[1],o,i)}else throw new Error("FileDiff.insertPartialHTML: Invalid argument composition")}renderPartialColumn(e,t,n){if(e==null||t==null)return;const i=qn(t[0]),r=qn(t[1]);if(i==null||r==null)throw new Error("FileDiff.insertPartialHTML: Unexpected AST structure");const o=r.at(0);n==="beforeend"&&o?.type==="element"&&typeof o.properties["data-buffer-size"]=="number"&&this.mergeBuffersIfNecessary(o.properties["data-buffer-size"],e.content.children[e.content.children.length-1],e.gutter.children[e.gutter.children.length-1],i,r,!0);const s=r.at(-1);n==="afterbegin"&&s?.type==="element"&&typeof s.properties["data-buffer-size"]=="number"&&this.mergeBuffersIfNecessary(s.properties["data-buffer-size"],e.content.children[0],e.gutter.children[0],i,r,!1),e.gutter.insertAdjacentHTML(n,this.hunksRenderer.renderPartialHTML(i)),e.content.insertAdjacentHTML(n,this.hunksRenderer.renderPartialHTML(r))}mergeBuffersIfNecessary(e,t,n,i,r,o){if(!(t instanceof HTMLElement)||!(n instanceof HTMLElement))return;const s=this.getBufferSize(t.dataset);s!=null&&(o?(i.shift(),r.shift()):(i.pop(),r.pop()),this.updateBufferSize(t,s+e),this.updateBufferSize(n,s+e))}applyRowSpan(e,t,n){const i=r=>{r!=null&&(r.gutter.style.setProperty("grid-row",`span ${n}`),r.content.style.setProperty("grid-row",`span ${n}`))};if(e==="unified"&&!Array.isArray(t))i(t);else if(e==="split"&&Array.isArray(t))i(t[0]),i(t[1]);else throw new Error("dun fuuuuked up")}trimColumnRows(e,t,n){let i=0,r=0,o=0,s=!1;const l=n>=0;if(e==null)return 0;const a=Array.from(e.content.children),d=Array.from(e.gutter.children);if(a.length!==d.length)throw new Error("FileDiff.trimColumnRows: columns do not match");for(;o0||l&&i>=n)&&(h.remove(),c.remove(),t>0&&(t--,t===0&&(s=!0)),r++),i++;continue}if("separator"in h.dataset&&"separator"in c.dataset){(t>0||l&&i>=n)&&(h.remove(),c.remove(),r++);continue}if(h.dataset.gutterBuffer==="annotation"&&"lineAnnotation"in c.dataset){(t>0||l&&i>=n)&&(h.remove(),c.remove(),r++);continue}if(h.dataset.gutterBuffer==="metadata"&&"noNewline"in c.dataset){(t>0||l&&i>=n)&&(h.remove(),c.remove(),r++);continue}if(h.dataset.gutterBuffer==="buffer"&&"contentBuffer"in c.dataset){const u=this.getBufferSize(c.dataset);if(u==null)throw new Error("FileDiff.trimColumnRows: invalid element");if(t>0){const f=Math.min(t,u),p=u-f;p>0?(this.updateBufferSize(h,p),this.updateBufferSize(c,p),r+=f):(h.remove(),c.remove(),r+=u),t-=f,t===0&&p===0&&(s=!0)}else if(l){const f=i,p=i+u-1;if(n<=f)h.remove(),c.remove(),r+=u;else if(n<=p){const m=p-n+1,y=u-m;this.updateBufferSize(h,y),this.updateBufferSize(c,y),r+=m}}i+=u;continue}throw console.error({gutterElement:h,contentElement:c}),new Error("FileDiff.trimColumnRows: unknown row elements")}return r}trimColumns({columns:e,diffStyle:t,overlapEnd:n,overlapStart:i,previousStart:r,trimEnd:o,trimStart:s}){const l=Math.max(0,i-r),a=n-r;if(a<0)throw new Error("FileDiff.trimColumns: overlap ends before previous");const d=s>0,h=o>0;if(!d&&!h)return 0;const c=d?l:0,u=h?a:-1;if(t==="unified"&&!Array.isArray(e))return this.trimColumnRows(e,c,u);if(t==="split"&&Array.isArray(e)){const f=this.trimColumnRows(e[0],c,u),p=this.trimColumnRows(e[1],c,u);if(e[0]!=null&&e[1]!=null&&f!==p)throw new Error("FileDiff.trimColumns: split columns out of sync");return e[0]!=null?f:p}else throw console.error({diffStyle:t,columns:e}),new Error("FileDiff.trimColumns: Invalid columns for diffType")}getBufferSize(e){const t=Number.parseInt(e?.bufferSize??"",10);return Number.isNaN(t)?void 0:t}updateBufferSize(e,t){e.dataset.bufferSize=`${t}`,e.style.setProperty("grid-row",`span ${t}`),e.style.setProperty("min-height",`calc(${t} * 1lh)`)}getCodeColumns(e,t,n,i){function r(o){if(o==null)return;const s=o.children[0],l=o.children[1];if(!(!(s instanceof HTMLElement)||!(l instanceof HTMLElement)||s.dataset.gutter==null||l.dataset.content==null))return{gutter:s,content:l}}if(e==="unified")return r(t);{const o=r(n),s=r(i);return o!=null||s!=null?[o,s]:void 0}}applyBuffers(e,t){if(t==null||this.shouldDisableVirtualizationBuffers()){this.bufferBefore!=null&&(this.bufferBefore.remove(),this.bufferBefore=void 0),this.bufferAfter!=null&&(this.bufferAfter.remove(),this.bufferAfter=void 0);return}t.bufferBefore>0?(this.bufferBefore==null&&(this.bufferBefore=document.createElement("div"),this.bufferBefore.dataset.virtualizerBuffer="before",e.before(this.bufferBefore)),this.bufferBefore.style.setProperty("height",`${t.bufferBefore}px`),this.bufferBefore.style.setProperty("contain","strict")):this.bufferBefore!=null&&(this.bufferBefore.remove(),this.bufferBefore=void 0),t.bufferAfter>0?(this.bufferAfter==null&&(this.bufferAfter=document.createElement("div"),this.bufferAfter.dataset.virtualizerBuffer="after",e.after(this.bufferAfter)),this.bufferAfter.style.setProperty("height",`${t.bufferAfter}px`),this.bufferAfter.style.setProperty("contain","strict")):this.bufferAfter!=null&&(this.bufferAfter.remove(),this.bufferAfter=void 0)}shouldDisableVirtualizationBuffers(){return this.options.disableVirtualizationBuffers??!1}applyPreNodeAttributes(e,{additionsContentAST:t,deletionsContentAST:n,totalLines:i},r){const{diffIndicators:o="bars",disableBackground:s=!1,disableLineNumbers:l=!1,overflow:a="scroll",diffStyle:d="split"}=this.options,h={type:"diff",diffIndicators:o,disableBackground:s,disableLineNumbers:l,overflow:a,split:d==="unified"?!1:t!=null&&n!=null,totalLines:i,customProperties:r};ji(h,this.appliedPreAttributes)||(mn(e,h),this.appliedPreAttributes=h)}applyErrorToDOM(e,t){this.cleanupErrorWrapper(),this.pre?.remove(),this.pre=void 0,this.appliedPreAttributes=void 0;const n=t.shadowRoot??t.attachShadow({mode:"open"});this.errorWrapper??=document.createElement("div"),this.errorWrapper.dataset.errorWrapper="",this.errorWrapper.textContent="",n.appendChild(this.errorWrapper);const i=document.createElement("div");i.dataset.errorMessage="",i.innerText=e.message,this.errorWrapper.appendChild(i);const r=document.createElement("pre");r.dataset.errorStack="",r.innerText=e.stack??"No Error Stack",this.errorWrapper.appendChild(r)}cleanupErrorWrapper(){this.errorWrapper?.remove(),this.errorWrapper=void 0}};function ea({fileDiff:e,oldFile:t,newFile:n}){return e!=null&&e.hunks.length>0||t!=null||n!=null}function ta({fileDiff:e,oldFile:t,newFile:n}){return e!=null||t!=null||n!=null}function na(e,t,n=!1){return!n&&e==null&&t}function ia(e,t,n=!1){return e==null&&t&&!n}function qn(e){if(!(e==null||e.type!=="element"))return e.children??[]}function ra({fileDiff:e,metrics:t,disableFileHeader:n,hunkSeparators:i,expandUnchanged:r,expandedHunks:o,collapsedContextThreshold:s}){let l=oe(t,n),a=l;const d=r?!0:o,h=e.hunks.length-1;for(let c=0;c0){const v=$e({type:i,metrics:t,hunkIndex:c,hunkSpecs:u.hunkSpecs})?.totalHeight??0;l+=v,a+=v}l+=u.splitLineCount*t.lineHeight,a+=u.unifiedLineCount*t.lineHeight;const m=oa(u);l+=m.split*t.lineHeight,a+=m.unified*t.lineHeight;const y=c===h?Xe({fileDiff:e,hunkIndex:c,expandedHunks:d,collapsedContextThreshold:s,errorPrefix:"computeEstimatedDiffHeights"}):void 0;if(y!=null){const v=(y.fromStart+y.fromEnd)*t.lineHeight;if(l+=v,a+=v,y.collapsedLines>0){const g=Ve({type:i,metrics:t})?.totalHeight??0;l+=g,a+=g}}}if(e.hunks.length>0){const c=Ct(t);l+=c,a+=c}return{splitHeight:l,unifiedHeight:a}}function oa(e){if(!e.noEOFCRAdditions&&!e.noEOFCRDeletions)return{split:0,unified:0};const t=e.hunkContent.at(-1);if(t==null)return{split:0,unified:0};if(t.type==="context"){const n=t.lines>0?1:0;return{split:n,unified:n}}return sa(e,t)}function sa(e,t){const n=(t.deletions>0&&e.noEOFCRDeletions?1:0)+(t.additions>0&&e.noEOFCRAdditions?1:0),i=t.deletions>0&&e.noEOFCRDeletions,r=t.additions>0&&e.noEOFCRAdditions;return{split:i||r?1:0,unified:n}}const tn=5e3;let aa=-1;var la=class extends dr{__id=`little-virtualized-file-diff:${++aa}`;top;height=0;metrics;cache={heightDeltas:new Map,measuredHeightDeltaTotal:0,estimatedSplitHeight:void 0,estimatedUnifiedHeight:void 0,checkpoints:[],totalLines:0,fileAnnotationHeight:0};isVisible=!1;isSetup=!1;virtualizer;layoutDirty=!0;forceRenderOverride;currentCollapsed;constructor(e,t,n,i,r=!1){super(e,i,r),this.virtualizer=t,this.metrics=Dt(n)}setMetrics(e,t=!1){const n=Dt(e);!t&&Ae(this.metrics,n)||(this.metrics=n,this.resetLayoutCache({includeEstimatedHeights:!0}))}setLineAnnotations(e){this.syncLineAnnotations(e)&&this.resetLayoutCache({includeEstimatedHeights:!1})}syncLineAnnotations(e){return e==null||e===this.lineAnnotations||e.length===0&&this.lineAnnotations.length===0?!1:(super.setLineAnnotations(e),!0)}setFileAnnotationHeight(e){const t=this.cache.fileAnnotationHeight;return e===t?!1:(this.cache.fileAnnotationHeight=e,this.cache.measuredHeightDeltaTotal+=e-t,!0)}hasFileAnnotations(e=this.fileDiff){return e==null||!Kt(this.lineAnnotations)?!1:this.lineAnnotations.some(t=>t.lineNumber!==0?!1:e.type==="new"?t.side==="additions":e.type==="deleted"?t.side==="deletions":!0)}getLineHeight(e,t=!1){return this.getEstimatedLineHeight(t)+(this.cache.heightDeltas.get(e)??0)}getEstimatedLineHeight(e=!1){const t=e?2:1;return this.metrics.lineHeight*t}setOptions(e){if(this.isAdvancedMode())throw new Error("VirtualizedFileDiff.setOptions cannot be used inside CodeView. Update CodeView options instead.");if(e==null)return;const{options:t}=this,n=!ln(t,e),i=n&&pa(t,e);super.setOptions(e),i&&this.resetLayoutCache({forceSimpleRecompute:!0,includeEstimatedHeights:ga(t,e)}),n&&(this.forceRenderOverride=!0),n&&this.isSimpleMode()&&this.virtualizer.instanceChanged(this,i)}setThemeType(e){if(this.isAdvancedMode())throw new Error("VirtualizedFileDiff.setThemeType cannot be used inside CodeView. Update CodeView options instead.");super.setThemeType(e)}resetLayoutCache({forceSimpleRecompute:e=!1,includeEstimatedHeights:t=!1}={}){this.layoutDirty=!0,this.cache.fileAnnotationHeight=0,this.cache.heightDeltas.size>0&&this.cache.heightDeltas.clear(),this.cache.measuredHeightDeltaTotal!==0&&(this.cache.measuredHeightDeltaTotal=0),this.cache.checkpoints.length>0&&(this.cache.checkpoints.length=0),this.cache.totalLines!==0&&(this.cache.totalLines=0),t&&(this.cache.estimatedSplitHeight=void 0,this.cache.estimatedUnifiedHeight=void 0),this.renderRange!=null&&(this.renderRange=void 0),e&&this.isSimpleMode()&&this.computeApproximateSize()}reconcileHeights(){let e=!1;const{overflow:t="scroll"}=this.options;if(this.fileContainer==null||this.fileDiff==null)return this.height!==0&&(e=!0),this.height=0,e;if(this.top=this.getVirtualizedTop(),t==="scroll"&&this.lineAnnotations.length===0&&!this.isResizeDebuggingEnabled())return e;const n=this.getDiffStyle(),i=n==="split"?[this.codeDeletions,this.codeAdditions]:[this.codeUnified],r=this.hasFileAnnotations(this.fileDiff);if(this.renderRange!=null&&r&&xt(this.renderRange)){const o=da(i)??0;this.setFileAnnotationHeight(o)&&(e=!0)}else!r&&this.setFileAnnotationHeight(0)&&(e=!0);for(const o of i){if(o==null)continue;const s=o.children[1];if(s instanceof HTMLElement)for(const l of s.children){if(!(l instanceof HTMLElement))continue;const a=l.dataset.lineIndex;if(a==null)continue;const d=ba(a,n);let h=l.getBoundingClientRect().height,c=!1;l.nextElementSibling instanceof HTMLElement&&("lineAnnotation"in l.nextElementSibling.dataset||"noNewline"in l.nextElementSibling.dataset)&&("noNewline"in l.nextElementSibling.dataset&&(c=!0),h+=l.nextElementSibling.getBoundingClientRect().height);const u=this.getEstimatedLineHeight(c),f=this.cache.heightDeltas.get(d)??0,p=h-u;p!==f&&(e=!0,this.cache.measuredHeightDeltaTotal+=p-f,p===0?this.cache.heightDeltas.delete(d):this.cache.heightDeltas.set(d,p))}}return(e||this.isResizeDebuggingEnabled())&&this.computeApproximateSize(!0),e}onRender=e=>this.fileContainer==null?!1:(e&&(this.top=this.getVirtualizedTop()),this.render());prepareCodeViewItem(e,t,n,i){const r=!_e(this.fileDiff,e),o=this.syncLineAnnotations(i);let s=n?.resetDiffLayoutCache===!0||r||o,l=r||n?.resetDiffLayoutCache===!0&&n.includeEstimatedDiffHeights;n?.metrics!=null&&(this.metrics=Dt(n.metrics),s=!0,l=!0);const{collapsed:a=!1}=this.options;return this.currentCollapsed!==a&&(this.currentCollapsed=a,s=!0),s&&this.resetLayoutCache({includeEstimatedHeights:l}),this.fileDiff=e,this.top=t,this.computeApproximateSize(),this.height}getLinePosition(e,t="additions"){if(this.fileDiff==null||e<1)return;const n=this.getLineIndex(e,t);if(n==null)return;const{disableFileHeader:i=!1,expandUnchanged:r=!1,collapsed:o=!1,collapsedContextThreshold:s=1}=this.options,l=this.getDiffStyle(),a=this.getHunkSeparatorType(),d=l==="split"?n[1]:n[0];this.approximateLayoutCheckpoints();const h=oe(this.metrics,i),c=this.getLayoutCheckpointBeforeLineIndex(d);let u=c?.top??h+this.cache.fileAnnotationHeight;if(o)return{top:h,height:0};let f;return je({diff:this.fileDiff,diffStyle:l,startingLine:c?.renderedLineIndex??0,expandedHunks:r?!0:this.hunksRenderer.getExpandedHunksMap(),collapsedContextThreshold:s,callback:({hunkIndex:p,hunk:m,collapsedBefore:y,collapsedAfter:v,deletionLine:g,additionLine:C})=>{const b=l==="split"?C?.splitLineIndex??g?.splitLineIndex:C?.unifiedLineIndex??g?.unifiedLineIndex;if(b==null)throw new Error("VirtualizedFileDiff.getLinePosition: missing line index data");if(y>0){const S=$e({type:a,metrics:this.metrics,hunkIndex:p,hunkSpecs:m?.hunkSpecs});if(S!=null){if(u+=S.gapBefore,d>=b-y&&d0){const S=Ve({type:a,metrics:this.metrics});if(S!=null){if(d>b&&d<=b+v)return f={top:u+S.gapBefore,height:S.height},!0;u+=S.totalHeight}}return!1}}),f}getNumericScrollAnchor(e){if(this.fileDiff==null)return;const{disableFileHeader:t=!1,expandUnchanged:n=!1,collapsed:i=!1,collapsedContextThreshold:r=1}=this.options;if(i)return;const o=this.getDiffStyle(),s=this.getHunkSeparatorType();this.approximateLayoutCheckpoints();const l=this.getLayoutCheckpointBeforeTop(e);let a=l?.top??oe(this.metrics,t)+this.cache.fileAnnotationHeight,d;return je({diff:this.fileDiff,diffStyle:o,startingLine:l?.renderedLineIndex??0,expandedHunks:n?!0:this.hunksRenderer.getExpandedHunksMap(),collapsedContextThreshold:r,callback:({hunkIndex:h,hunk:c,collapsedBefore:u,collapsedAfter:f,deletionLine:p,additionLine:m})=>{const y=o==="split"?m?.splitLineIndex??p?.splitLineIndex:m?.unifiedLineIndex??p?.unifiedLineIndex;if(y==null)throw new Error("VirtualizedFileDiff.getNumericScrollAnchor: missing line index data");if(u>0){const g=$e({type:s,metrics:this.metrics,hunkIndex:h,hunkSpecs:c?.hunkSpecs});g!=null&&(a+=g.totalHeight)}if(a>=e&&(p!=null?d={lineNumber:p.lineNumber,side:"deletions",top:a}:m!=null&&(d={lineNumber:m.lineNumber,side:"additions",top:a}),d!=null))return!0;const v=this.getLineHeight(y,(m?.noEOFCR??!1)||(p?.noEOFCR??!1));if(a+=v,f>0){const g=Ve({type:s,metrics:this.metrics});g!=null&&(a+=g.totalHeight)}return!1}}),d}getVirtualizedHeight(){return this.height}getAdvancedStickySpecs(e){if(this.top==null||this.fileDiff==null)return;if(this.options.collapsed===!0)return{topOffset:this.top,height:this.height};const t=e!=null?this.computeRenderRangeFromWindow(this.fileDiff,this.top,e):this.renderRange;if(t==null)return;const{bufferBefore:n,bufferAfter:i,totalLines:r}=t;let o=0;if(r===0){const s=e??this.virtualizer.getWindowSpecs();this.top{this.hunksRenderer.expandHunk(e,t,n),this.forceRenderOverride=!0,this.resetLayoutCache({includeEstimatedHeights:!0}),this.isSimpleMode()&&this.computeApproximateSize(),this.virtualizer.instanceChanged(this,!0)};setVisibility(e){this.isAdvancedMode()||this.fileContainer==null||(this.renderRange=void 0,e&&!this.isVisible?(this.top=this.getVirtualizedTop(),this.isVisible=!0):!e&&this.isVisible&&(this.isVisible=!1,this.rerender()))}rerender(){!this.enabled||this.fileDiff==null&&this.additionFile==null&&this.deletionFile==null||(this.forceRenderOverride=!0,this.virtualizer.instanceChanged(this,!1))}computeApproximateSize(e=!1){const t=this.isResizeDebuggingEnabled();if(!e&&!this.layoutDirty&&!t)return;const n=this.height===0;if(this.height=0,this.cache.checkpoints=[],this.cache.totalLines=0,this.fileDiff==null){this.layoutDirty=!1;return}const{disableFileHeader:i=!1,collapsed:r=!1}=this.options,o=oe(this.metrics,i);if(this.height+=o,r){this.layoutDirty=!1;return}this.height=this.getActiveEstimatedHeight()+this.cache.measuredHeightDeltaTotal,t&&!n&&this.validateComputedHeight(),this.layoutDirty=!1}getActiveEstimatedHeight(){this.ensureEstimatedDiffHeights();const e=this.getDiffStyle()==="split"?this.cache.estimatedSplitHeight:this.cache.estimatedUnifiedHeight;if(e==null)throw new Error("VirtualizedFileDiff.getActiveEstimatedHeight: missing estimated height");return e}ensureEstimatedDiffHeights(){if(this.fileDiff==null){this.cache.estimatedSplitHeight=void 0,this.cache.estimatedUnifiedHeight=void 0;return}if(this.cache.estimatedSplitHeight!=null&&this.cache.estimatedUnifiedHeight!=null)return;const{disableFileHeader:e=!1,expandUnchanged:t=!1,collapsedContextThreshold:n=1}=this.options,{splitHeight:i,unifiedHeight:r}=ra({fileDiff:this.fileDiff,metrics:this.metrics,disableFileHeader:e,hunkSeparators:this.getHunkSeparatorType(),expandUnchanged:t,expandedHunks:this.hunksRenderer.getExpandedHunksMap(),collapsedContextThreshold:n});this.cache.estimatedSplitHeight=i,this.cache.estimatedUnifiedHeight=r}validateComputedHeight(){if(this.fileContainer==null||this.fileDiff==null)return;const e=this.fileContainer.getBoundingClientRect();e.height!==this.height?console.log("VirtualizedFileDiff.computeApproximateSize: computed height doesnt match",{name:this.fileDiff.name,elementHeight:e.height,computedHeight:this.height}):console.log("VirtualizedFileDiff.computeApproximateSize: computed height IS CORRECT")}render({fileContainer:e,oldFile:t,newFile:n,fileDiff:i,forceRender:r=!1,lineAnnotations:o,...s}={}){const{forceRenderOverride:l,isSetup:a}=this;this.forceRenderOverride=void 0;const d=this.syncLineAnnotations(o);if(d&&this.resetLayoutCache({includeEstimatedHeights:!1}),this.fileDiff??=i??(t!=null&&n!=null?Zt(t,n,this.options.parseDiffOptions):void 0),e=this.getOrCreateFileContainer(e),this.fileDiff==null)return console.error("VirtualizedFileDiff.render: attempting to virtually render when we dont have the correct data"),!1;if(a)this.top??=this.getVirtualizedTop();else{this.computeApproximateSize();const f=this.getSimpleVirtualizer();if(this.top??=this.getVirtualizedTop(),this.isAdvancedMode())this.isVisible=!0;else{if(f==null)throw new Error("VirtualizedFileDiff.render: simple virtualizer is not available");f.connect(e,this),this.isVisible=f.isInstanceVisible(this.top??0,this.height)}this.isSetup=!0}if(!this.isVisible&&this.isSimpleMode())return this.renderPlaceholder(this.height);const h=this.virtualizer.getWindowSpecs(),c=this.top??0,u=this.computeRenderRangeFromWindow(this.fileDiff,c,h);return super.render({fileDiff:this.fileDiff,fileContainer:e,renderRange:u,oldFile:t,newFile:n,lineAnnotations:o,forceRender:(l??r)||d,...s})}syncVirtualizedTop(){this.top=this.getVirtualizedTop()}shouldDisableVirtualizationBuffers(){return this.isAdvancedMode()||super.shouldDisableVirtualizationBuffers()}isSimpleMode(){return this.virtualizer.type==="simple"}isAdvancedMode(){return this.virtualizer.type==="advanced"}getVirtualizedTop(){return this.virtualizer.type==="advanced"?this.virtualizer.getLocalTopForInstance(this):this.fileContainer!=null?this.virtualizer.getOffsetInScrollContainer(this.fileContainer):0}getSimpleVirtualizer(){return this.virtualizer.type==="simple"?this.virtualizer:void 0}isResizeDebuggingEnabled(){return this.getSimpleVirtualizer()?.config.resizeDebugging??!1}getDiffStyle(){return this.options.diffStyle??"split"}getHunkSeparatorType(){return ma(this.options.hunkSeparators)}approximateLayoutCheckpoints(){if(this.cache.checkpoints.length>0||this.fileDiff==null||this.fileDiff.hunks.length===0||this.options.collapsed===!0)return;const{disableFileHeader:e=!1,expandUnchanged:t=!1,collapsedContextThreshold:n=1}=this.options,i=this.fileDiff.hunks.length-1,r=this.getDiffStyle(),o=this.getHunkSeparatorType(),s=t?!0:this.hunksRenderer.getExpandedHunksMap(),l=ha(this.cache.heightDeltas);let a=oe(this.metrics,e)+this.cache.fileAnnotationHeight,d=0;const h=({rowCount:c,startLineIndex:u,preSeparatorHeight:f=0,postSeparatorHeight:p=0,metadataOffsets:m=[]})=>{if(c<=0)return;const y=d,v=d+c;let g=ca(y);for(;g0?f:0)+C*this.metrics.lineHeight+ua(m,C)*this.metrics.lineHeight+Kn(l,u,u+C);this.cache.checkpoints.push({renderedLineIndex:g,lineIndex:u+C,top:b}),g+=tn}a+=f+c*this.metrics.lineHeight+m.length*this.metrics.lineHeight+Kn(l,u,u+c)+p,d=v};for(let c=0;c0?$e({type:o,metrics:this.metrics,hunkIndex:c,hunkSpecs:u.hunkSpecs})?.totalHeight??0:0;h({rowCount:f.fromStart,startLineIndex:(r==="split"?u.splitLineStart:u.unifiedLineStart)-f.rangeSize});let m=p;h({rowCount:f.fromEnd,startLineIndex:(r==="split"?u.splitLineStart:u.unifiedLineStart)-f.fromEnd,preSeparatorHeight:m}),f.fromEnd>0&&(m=0);const y=c===i?Xe({fileDiff:this.fileDiff,hunkIndex:c,expandedHunks:s,collapsedContextThreshold:n,errorPrefix:"VirtualizedFileDiff"}):void 0,v=y!=null&&y.collapsedLines>0?Ve({type:o,metrics:this.metrics})?.totalHeight??0:0,g=y!=null?y.fromStart+y.fromEnd:0,C=r==="split"?u.splitLineCount:u.unifiedLineCount,b=r==="split"?u.splitLineStart:u.unifiedLineStart;h({rowCount:C,startLineIndex:b,preSeparatorHeight:m,postSeparatorHeight:g===0?v:0,metadataOffsets:fa({diffStyle:r,hunk:u,rowCount:C})}),y!=null&&g>0&&h({rowCount:g,startLineIndex:b+C,postSeparatorHeight:v})}this.cache.totalLines=d}getLayoutCheckpointBeforeLineIndex(e){if(e<=0||this.cache.checkpoints.length===0)return;let t=0,n=this.cache.checkpoints.length-1,i;for(;t<=n;){const r=t+n>>1,o=this.cache.checkpoints[r];if(o==null)throw new Error("VirtualizedFileDiff: invalid checkpoint index");o.lineIndex<=e?(i=o,t=r+1):n=r-1}return i}getLayoutCheckpointBeforeTop(e,t){let n=0,i=this.cache.checkpoints.length-1,r=-1;for(;n<=i;){const o=n+i>>1,s=this.cache.checkpoints[o];if(s==null)throw new Error("VirtualizedFileDiff: invalid checkpoint index");s.top<=e?(r=o,n=o+1):i=o-1}if(t==null)return r>=0?this.cache.checkpoints[r]:void 0;for(let o=r;o>=0;o--){const s=this.cache.checkpoints[o];if(s==null)throw new Error("VirtualizedFileDiff: invalid checkpoint index");if(s.renderedLineIndex%t===0)return s}}getExpandedLineCount(e,t){let n=0;if(e.isPartial){for(const l of e.hunks)n+=t==="split"?l.splitLineCount:l.unifiedLineCount;return n}const{expandUnchanged:i=!1,collapsedContextThreshold:r=1}=this.options,o=i?!0:this.hunksRenderer.getExpandedHunksMap();for(const[l,a]of e.hunks.entries()){const d=t==="split"?a.splitLineCount:a.unifiedLineCount;n+=d;const h=Math.max(a.collapsedBefore,0),{fromStart:c,fromEnd:u,renderAll:f}=Ye({isPartial:e.isPartial,rangeSize:h,expandedHunks:o,hunkIndex:l,collapsedContextThreshold:r});h>0&&(n+=f?h:c+u)}const s=Xe({fileDiff:e,hunkIndex:e.hunks.length-1,expandedHunks:o,collapsedContextThreshold:r,errorPrefix:"VirtualizedFileDiff"});return s!=null&&(n+=s.fromStart+s.fromEnd),n}computeRenderRangeFromWindow(e,t,{top:n,bottom:i}){const{disableFileHeader:r=!1,expandUnchanged:o=!1,collapsedContextThreshold:s=1}=this.options,{hunkLineCount:l,lineHeight:a}=this.metrics,d=this.getDiffStyle(),h=this.getHunkSeparatorType(),c=this.height;let u=this.cache.totalLines>0?this.cache.totalLines:this.getExpandedLineCount(e,d);const f=oe(this.metrics,r),p=e.hunks.length>0?Ct(this.metrics):0,{fileAnnotationHeight:m}=this.cache,y=f+m,v=Math.max(0,c-f-m-p),g=this.hasFileAnnotations(e),C=t+f,b=m>0&&g&&Cn;if(ti)return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:c-f-p};if(u<=l||e.hunks.length===0)return{startingLine:0,totalLines:l,bufferBefore:0,bufferAfter:0};this.approximateLayoutCheckpoints(),u=this.cache.totalLines>0?this.cache.totalLines:u;const x=Math.ceil(Math.max(i-n,0)/a),S=Math.ceil(x/l)*l+l,k=S/l,w=k,L=[],I=(n+i)/2,A=this.getLayoutCheckpointBeforeTop(Math.max(0,n-t-S*a*2),l);let E=t+(A?.top??y),T=A?.renderedLineIndex??0,H,N,W;if(je({diff:e,diffStyle:d,startingLine:A?.renderedLineIndex??0,expandedHunks:o?!0:this.hunksRenderer.getExpandedHunksMap(),collapsedContextThreshold:s,callback:({hunkIndex:ae,hunk:j,collapsedBefore:Se,collapsedAfter:D,deletionLine:B,additionLine:z})=>{const le=z!=null?z.splitLineIndex:B.splitLineIndex,ee=z!=null?z.unifiedLineIndex:B.unifiedLineIndex,te=(z?.noEOFCR??!1)||(B?.noEOFCR??!1),De=(Se>0?$e({type:h,metrics:this.metrics,hunkIndex:ae,hunkSpecs:j?.hunkSpecs}):void 0)?.totalHeight??0;E+=De;const q=T%l===0,Lt=Math.floor(T/l);if(q&&(L[Lt]=E-(t+y+De),W!=null)){if(W<=0)return!0;W--}const kt=this.getLineHeight(d==="split"?le:ee,te);return E>n-kt&&EI&&(N=Lt),W==null&&E>=i&&q&&(W=w),T++,E+=kt,D>0&&(E+=Ve({type:h,metrics:this.metrics})?.totalHeight??0),!1}}),H==null)if(b)H=0,N=0;else return{startingLine:0,totalLines:0,bufferBefore:0,bufferAfter:c-f-p};N??=H;const M=Math.round(N-k/2),F=Math.max(0,Math.ceil(u/l)-k),O=Math.max(0,Math.min(M,F)),Q=O*l,ge=M<0?S+M*l:S,me=L[O]??0,xe=Q===0?0:m+me,Z=O+ge/l,be=Zo[0]-s[0]),n=[],i=[0];let r=0;for(const[o,s]of t)n.push(o),r+=s,i.push(r);return{lineIndexes:n,prefixTotals:i}}function Kn({lineIndexes:e,prefixTotals:t},n,i){if(n>=i||e.length===0)return 0;const r=Yn(e,n);return(t[Yn(e,i)]??0)-(t[r]??0)}function Yn(e,t){let n=0,i=e.length;for(;n>1,o=e[r];if(o==null)throw new Error("VirtualizedFileDiff: invalid prefix index");o0&&(t.noEOFCRAdditions||t.noEOFCRDeletions)?[n-1]:[];const s=[],l=n-o;return i.deletions>0&&t.noEOFCRDeletions&&s.push(l+i.deletions-1),i.additions>0&&t.noEOFCRAdditions&&s.push(n-1),s}function pa(e,t){return(e.diffStyle??"split")!==(t.diffStyle??"split")||(e.overflow??"scroll")!==(t.overflow??"scroll")||(e.collapsed??!1)!==(t.collapsed??!1)||(e.disableLineNumbers??!1)!==(t.disableLineNumbers??!1)||(e.disableFileHeader??!1)!==(t.disableFileHeader??!1)||(e.diffIndicators??"bars")!==(t.diffIndicators??"bars")||(e.hunkSeparators??"line-info")!==(t.hunkSeparators??"line-info")||(e.expandUnchanged??!1)!==(t.expandUnchanged??!1)||(e.collapsedContextThreshold??1)!==(t.collapsedContextThreshold??1)||e.unsafeCSS!==t.unsafeCSS}function ga(e,t){return(e.disableFileHeader??!1)!==(t.disableFileHeader??!1)||(e.hunkSeparators??"line-info")!==(t.hunkSeparators??"line-info")||(e.expandUnchanged??!1)!==(t.expandUnchanged??!1)||(e.collapsedContextThreshold??1)!==(t.collapsedContextThreshold??1)}function ma(e){return typeof e=="function"?"custom":e??"line-info"}function ba(e,t){const[n,i]=e.split(",").map(Number);return t==="split"?i:n}function ie(e){const t=window.devicePixelRatio??1;return Math.round(e*t)/t}const va=["theme","disableLineNumbers","overflow","themeType","disableFileHeader","disableVirtualizationBuffers","preferredHighlighter","useCSSClasses","useTokenTransformer","tokenizeMaxLineLength","tokenizeMaxLength","unsafeCSS","diffStyle","diffIndicators","disableBackground","expandUnchanged","collapsedContextThreshold","lineDiffType","maxLineDiffLength","expansionLineCount","lineHoverHighlight","enableTokenInteractionsOnWhitespace","enableGutterUtility","__debugPointerEvents","enableLineSelection","controlledSelection","disableErrorHandling"],Ca=["theme","disableLineNumbers","overflow","themeType","disableFileHeader","disableVirtualizationBuffers","preferredHighlighter","useCSSClasses","useTokenTransformer","tokenizeMaxLineLength","tokenizeMaxLength","unsafeCSS","lineHoverHighlight","enableTokenInteractionsOnWhitespace","enableGutterUtility","__debugPointerEvents","enableLineSelection","controlledSelection","disableErrorHandling"],Xn=["renderCustomHeader","renderHeaderPrefix","renderHeaderMetadata","renderAnnotation","renderGutterUtility","onPostRender","onGutterUtilityClick","onLineClick","onLineNumberClick","onLineEnter","onLineLeave","onTokenClick","onTokenEnter","onTokenLeave"],Qn=["onLineSelected","onLineSelectionStart","onLineSelectionChange","onLineSelectionEnd"],hr=Symbol("CodeView.itemOptionsState");function Jn(e,t){Object.defineProperty(e,hr,{configurable:!1,enumerable:!1,value:t})}function ze(e){return e[hr]}function he(e,t,n){Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get(){return n(this)}})}const Sa=120,Zn="--diffs-overflow-override",vn=12e6,cr=1e6,ur=2e6,ya=vn-ur,ei=vn-cr,xa=(()=>{const{navigator:e}=globalThis,t=e.userAgent,n=/iP(?:hone|ad|od)/.test(t),i=e.platform==="MacIntel"&&e.maxTouchPoints>1;return(n||i)&&/AppleWebKit/.test(t)&&/Safari/.test(t)&&!/(CriOS|FxiOS|EdgiOS|OPiOS)/.test(t)})();var wl=class ue{static __STOP=!1;static __lastScrollPosition=0;type="advanced";config={overscrollSize:200,intersectionObserverMargin:0,resizeDebugging:!1};items=[];idToItem=new Map;selectedLines=null;instanceToItem=new Map;layoutDirtyIndex;pendingLayoutReset;renderOptionsRevision=0;slotCoordinator;slotSnapshot;scrollListeners=new Set;scrollHeight=0;containerHeight=-1;scrollTop=0;scrollPageOffset=0;scrollDirty=!0;scrollInteractionFixTimer;pointerEventsDisabled=!1;codeOverflowFix=!1;height=0;heightDirty=!0;windowSpecs={top:0,bottom:0};renderState={scrollTop:-1,firstIndex:-1,lastIndex:-1,stickyHeight:0,stickyTop:-1,stickyBottom:-1};itemMetricsCache=Pe;fileOptionsPrototype;diffOptionsPrototype;pendingScrollTarget;pendingLayoutAnchor;shouldFixContainerFocus=!1;scrollAnimation;root;resizeObserver;container=document.createElement("div");stickyContainer=document.createElement("div");stickyOffset=document.createElement("div");elementPool=[];elementPoolVersion=0;elementPoolTracker=new WeakMap;pendingElementPool=[];options;workerManager;isContainerManaged;constructor(t={theme:P},n,i=!1){this.options=t,this.computeMetricsCache(t.itemMetrics),this.fileOptionsPrototype=this.createFileOptionsPrototype(),this.diffOptionsPrototype=this.createDiffOptionsPrototype(),this.workerManager=n,this.isContainerManaged=i,this.stickyOffset.style.contain="layout size",this.stickyContainer.style.position="sticky",this.stickyContainer.style.width="100%",this.stickyContainer.style.contain="layout style inline-size",this.stickyContainer.style.isolation="isolate",this.stickyContainer.style.display="flex",this.stickyContainer.style.flexDirection="column"}getLayout(){return this.options.layout??ro}computeMetricsCache(t){return this.itemMetricsCache={hunkLineCount:t?.hunkLineCount??Pe.hunkLineCount,lineHeight:t?.lineHeight??Pe.lineHeight,diffHeaderHeight:t?.diffHeaderHeight??Pe.diffHeaderHeight,hunkSeparatorHeight:t?.hunkSeparatorHeight,spacing:t?.spacing??Pe.spacing,paddingTop:t?.paddingTop,paddingBottom:t?.paddingBottom},this.itemMetricsCache}getSmoothScrollSettings(){return this.options.smoothScrollSettings??oo}shouldDisablePointerEvents(){return this.options.pointerEventsOnScroll!==!0}shouldValidateItemHeights(){return qr&&this.options.__devOnlyValidateItemHeights===!0}validateRenderedItemHeight(t){if(!this.shouldValidateItemHeights()||t.element==null)return;const n=t.instance.getAdvancedStickySpecs();if(n==null)return;const i=n.height,r=t.element.getBoundingClientRect().height;i!==r&&console.error("CodeView: reconciled item height does not match DOM height",{id:t.item.id,type:t.type,index:t.index,version:t.version,expectedHeight:i,actualHeight:r,delta:r-i,stickyTopOffset:n.topOffset,virtualizedHeight:t.instance.getVirtualizedHeight(),top:t.top,scrollTop:this.getScrollTop(),windowSpecs:{...this.windowSpecs},element:t.element,instance:t.instance})}validateStickyContainerHeight(){if(!this.shouldValidateItemHeights())return;const{firstIndex:t,lastIndex:n,stickyHeight:i,stickyTop:r,stickyBottom:o}=this.renderState;if(t===-1||n===-1)return;const s=this.stickyContainer.getBoundingClientRect().height;Math.abs(s-i)<1||console.error("CodeView: sticky container height does not match computed layout",{computedStickyHeight:i,actualStickyHeight:s,delta:s-i,stickyTop:r,stickyBottom:o,firstIndex:t,lastIndex:n,firstStickySpecs:this.items[t]?.instance.getAdvancedStickySpecs(),lastStickySpecs:this.items[n]?.instance.getAdvancedStickySpecs(),scrollTop:this.getScrollTop(),scrollPageOffset:this.scrollPageOffset,windowSpecs:{...this.windowSpecs},stickyContainer:this.stickyContainer})}clearScrollInteractionTimer(){this.scrollInteractionFixTimer!=null&&(clearTimeout(this.scrollInteractionFixTimer),this.scrollInteractionFixTimer=void 0)}suspendScrollInteractions(){this.clearScrollInteractionTimer(),this.shouldDisablePointerEvents()&&!this.pointerEventsDisabled&&(this.stickyContainer.style.pointerEvents="none",this.pointerEventsDisabled=!0),xa&&!this.codeOverflowFix&&(this.stickyContainer.style.setProperty(Zn,"hidden"),this.codeOverflowFix=!0),this.scrollInteractionFixTimer=setTimeout(this.restoreScrollInteractions,Sa)}restoreScrollInteractions=()=>{this.clearScrollInteractionTimer(),this.pointerEventsDisabled&&(this.stickyContainer.style.removeProperty("pointer-events"),this.pointerEventsDisabled=!1),this.codeOverflowFix&&(this.stickyContainer.style.setProperty(Zn,"auto"),this.codeOverflowFix=!1)};syncLayout(){const{gap:t,paddingBottom:n,paddingTop:i}=this.getLayout();this.stickyContainer.style.gap=`${t}px`,this.container?.style.setProperty("margin-top",`${i}px`),this.container?.style.setProperty("margin-bottom",`${n}px`)}setup(t){if(this.root!=null)throw new Error("CodeView.setup: already setup");this.workerManager?.subscribeToThemeChanges(this),this.root=t,this.root.style.overflowAnchor="none",this.root.hasAttribute("tabindex")||(this.root.tabIndex=-1),this.container??=document.createElement("div"),this.container.style.contain="layout style",this.syncLayout(),this.container.appendChild(this.stickyOffset),this.container.appendChild(this.stickyContainer),this.root.appendChild(this.container),this.scrollDirty=!0,this.heightDirty=!0,this.resizeObserver=new ResizeObserver(this.handleResize),this.resizeObserver.observe(this.stickyContainer),this.root.addEventListener("scroll",this.handleScroll,{passive:!0}),this.root.addEventListener("wheel",this.clearPendingScroll,{passive:!0}),this.root.addEventListener("touchstart",this.clearPendingScroll,{passive:!0}),this.root.addEventListener("pointerdown",this.clearPendingScroll,{passive:!0}),this.root.addEventListener("keydown",this.clearPendingScroll,{passive:!0}),this.resizeObserver.observe(this.root),this.render(!0),window.__INSTANCE=this,window.__TOGGLE=()=>{ue.__STOP?(ue.__STOP=!1,this.scrollTo({type:"position",position:ue.__lastScrollPosition,behavior:"instant"})):(ue.__lastScrollPosition=this.getScrollTop(),ue.__STOP=!0)}}reset(){this.restoreScrollInteractions(),this.cleanAllRenderedItems(),this.selectedLines=null,this.items.length=0,this.idToItem.clear(),this.instanceToItem.clear(),this.layoutDirtyIndex=void 0,this.pendingLayoutReset=void 0,this.stickyContainer.textContent="",this.stickyOffset.style.height="",this.container?.style.removeProperty("height"),this.containerHeight=-1,this.windowSpecs={top:0,bottom:0},this.pendingLayoutAnchor=void 0,this.shouldFixContainerFocus=!1,this.height=0,this.scrollTop=0,this.scrollPageOffset=0,this.scrollHeight=0,this.scrollDirty=!0,this.heightDirty=!0,this.resetRenderState(),this.isContainerManaged||this.flushSlotCoordinator()}cleanUp(){this.reset(),this.clearElementPool(),this.restoreScrollInteractions(),this.workerManager?.unsubscribeToThemeChanges(this),this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.root?.removeEventListener("scroll",this.handleScroll),this.root?.removeEventListener("wheel",this.clearPendingScroll),this.root?.removeEventListener("touchstart",this.clearPendingScroll),this.root?.removeEventListener("pointerdown",this.clearPendingScroll),this.root?.removeEventListener("keydown",this.clearPendingScroll),this.root?.style.removeProperty("overflow-anchor"),this.container?.remove(),this.stickyOffset.remove(),this.stickyContainer.remove(),this.stickyContainer.textContent="",this.root=void 0,this.container=void 0}cleanAllRenderedItems(){if(this.renderState.firstIndex!==-1)for(let t=this.renderState.firstIndex;t<=this.renderState.lastIndex;t++){const n=this.items[t];if(n==null)throw new Error(`CodeView.cleanAllRenderedItems: Item does not exist at index: ${t}`);this.releaseRenderedItem(n)}}primeScrollTarget(t){if(t.type==="position")return;const n=this.idToItem.get(t.id);n?.instance.primeHighlightCache()}getElementPoolLimit(){const t=this.getHeight()+this.config.overscrollSize*2,{diffHeaderHeight:n}=this.itemMetricsCache;return Math.max(8,Math.ceil(t/Math.max(n,10))+1)*(this.isContainerManaged?2:1)}acquireElement(){this.promotePendingPooledElements();let t=this.elementPool.pop();for(;t!=null&&!this.isElementPoolGenerationCurrent(t);)t=this.elementPool.pop();return t??=document.createElement(xi),this.markElementPoolGenerationCurrent(t),t}releaseRenderedItem(t){const{element:n}=t;n!=null&&this.renderedItemOwnsFocus(n)&&(this.shouldFixContainerFocus=!0),t.instance.cleanUp(!0),t.element=void 0,n!=null&&(n.remove(),this.cleanElement(n),this.queueElementForPool(n))}renderedItemOwnsFocus(t){const{activeElement:n}=document;return n===t||t.contains(n)||t.shadowRoot?.activeElement!=null}fixContainerFocus(){this.shouldFixContainerFocus&&(this.shouldFixContainerFocus=!1,this.root?.focus({preventScroll:!0}))}cleanElement(t){const{shadowRoot:n}=t;if(n!=null)for(const i of Array.from(n.children))Ea(i)||i.remove();this.isContainerManaged||t.replaceChildren()}queueElementForPool(t){const n=this.getElementPoolLimit();!this.isElementPoolGenerationCurrent(t)||this.getElementPoolSize()>=n||(this.isElementClean(t)?this.elementPool.push(t):this.pendingElementPool.push(t))}promotePendingPooledElements(){if(this.pendingElementPool.length===0)return;const{pendingElementPool:t}=this;this.pendingElementPool=[];const n=this.getElementPoolLimit();for(const i of t)this.isElementPoolGenerationCurrent(i)&&this.isElementClean(i)&&this.elementPool.lengththis.windowSpecs.bottom}onThemeChange(){this.invalidateElementPool()}setOptions(t){if(t==null)return;this.capturePendingLayoutAnchor();const{options:n}=this,i=this.getLayout(),{itemMetricsCache:r}=this;ka(n,t)&&this.invalidateElementPool(),this.options=t;const o=this.computeMetricsCache(t.itemMetrics),s=!Ae(r,o),l=!Ae(i,this.getLayout());l&&this.syncLayout();const a=s||wa(n,t);if(a){const d=this.pendingLayoutReset;this.pendingLayoutReset={metrics:s?o:d?.metrics,resetFileLayoutCache:!0,resetDiffLayoutCache:!0,includeEstimatedDiffHeights:d?.includeEstimatedDiffHeights===!0||s||Ta(n,t)}}(l||a)&&(this.markLayoutDirtyFromIndex(0),this.scrollDirty=!0),ln(n,t)||this.renderOptionsRevision++,!this.isContainerManaged&&this.items.length>0&&this.render()}capturePendingLayoutAnchor(){this.root==null||this.items.length===0||this.pendingScrollTarget!=null||(this.pendingLayoutAnchor=this.getScrollAnchor(this.getScrollTop()))}render(t=!1){ue.__STOP||(t?(ao(this.computeRenderRangeAndEmit),this.computeRenderRangeAndEmit()):K(this.computeRenderRangeAndEmit))}instanceChanged(t,n){const i=this.instanceToItem.get(t);if(i==null)throw new Error("CodeView.instanceChanged: An instance has changed that is not registered");n&&this.markItemLayoutDirty(i),this.render()}getWindowSpecs(){return this.windowSpecs}getContainerElement(){return this.root}getRenderedItems(){const{firstIndex:t,lastIndex:n}=this.renderState;if(t===-1||n===-1||n{this.scrollListeners.delete(t)}}getLocalTopForInstance(t){const n=this.instanceToItem.get(t);if(n==null)throw new Error("CodeView.getLocalTopForInstance: unknown virtualized instance");return n.top}getTopForItem(t){const n=this.idToItem.get(t);if(n!=null)return n.top+this.getLayout().paddingTop}createItem(t,n,i){const{itemMetricsCache:r}=this;if(t.type==="diff"){const s=new la(this.createDiffOptions(t.id),this,r,this.workerManager,this.isContainerManaged);return{type:"diff",item:t,version:t.version,index:n,top:i,height:0,element:void 0,renderedOptionsRevision:this.renderOptionsRevision,instance:s}}const o=new ps(this.createFileOptions(t.id),this,r,this.workerManager,this.isContainerManaged);return{type:"file",item:t,version:t.version,index:n,top:i,height:0,element:void 0,renderedOptionsRevision:this.renderOptionsRevision,instance:o}}applySelectedLines(t,n){const{selectedLines:i}=this;t==null&&i==null||t!=null&&i?.id===t.id&&Vt(i.range,t.range)||(i!=null&&i.id!==t?.id&&this.idToItem.get(i.id)?.instance.setSelectedLines(null,{notify:!1}),this.selectedLines=t,this.idToItem.get(t?.id??"")?.instance.setSelectedLines(t?.range??null,n))}syncSelection(){if(this.selectedLines==null)return;const t=this.idToItem.get(this.selectedLines.id);if(t==null){this.selectedLines=null;return}t.instance.setSelectedLines(this.selectedLines.range,{notify:!1})}renamePendingScrollTarget(t,n){const{pendingScrollTarget:i}=this;i==null||i.type==="position"||i.id!==t||(this.pendingScrollTarget={...i,id:n})}renamePendingLayoutAnchor(t,n){this.pendingLayoutAnchor?.id===t&&(this.pendingLayoutAnchor.id=n)}createFileOptionsPrototype(){const t={};for(const n of Ca)he(t,n,()=>this.options[n]);he(t,"stickyHeader",()=>this.options.stickyHeaders),he(t,"collapsed",n=>this.getItemOptions(ze(n),"file")?.item.collapsed===!0);for(const n of Xn)this.defineItemSharedCallback(t,"file",n);for(const n of Qn)this.defineItemSelectionCallback(t,"file",n);return t}createDiffOptionsPrototype(){const t={};for(const n of va)he(t,n,()=>this.options[n]);he(t,"stickyHeader",()=>this.options.stickyHeaders),he(t,"hunkSeparators",()=>this.options.hunkSeparators),he(t,"collapsed",n=>this.getItemOptions(ze(n),"diff")?.item.collapsed===!0);for(const n of Xn)this.defineItemSharedCallback(t,"diff",n);for(const n of Qn)this.defineItemSelectionCallback(t,"diff",n);return t}createFileOptions(t){const n=Object.create(this.fileOptionsPrototype);return Jn(n,{id:t}),n}createDiffOptions(t){const n=Object.create(this.diffOptionsPrototype);return Jn(n,{id:t}),n}updateItemOptionsId(t,n){ze(t).id=n}getItemOptions(t,n){const i=this.idToItem.get(t.id);if(!(i==null||i.type!==n))return i}defineItemSharedCallback(t,n,i){he(t,i,r=>{if(this.options[i]==null)return;const o=ze(r),s=o.callbackCache??={};let l=s[i];return l==null&&(l=((...a)=>{const d=this.getItemOptions(o,n);if(d==null)return;const h=this.options[i];return h?.(...a,d)}),s[i]=l),l})}defineItemSelectionCallback(t,n,i){he(t,i,r=>{if(this.options.enableLineSelection!==!0)return;const o=ze(r),s=o.callbackCache??={};let l=s[i];return l==null&&(l=(a=>{const d=this.getItemOptions(o,n);if(d==null)return;const h=a==null?null:{id:d.item.id,range:a};this.options.controlledSelection!==!0&&(a!=null||this.selectedLines?.id===d.item.id)&&this.applySelectedLines(h,{notify:!1}),this.options.onSelectedLinesChange?.(h);const c=this.options[i];return c?.(a,d)}),s[i]=l),l})}markLayoutDirtyFromIndex(t){this.layoutDirtyIndex=Math.min(this.layoutDirtyIndex??t,t)}markItemLayoutDirty(t){if(this.items[t.index]!==t)throw new Error(`CodeView.markItemLayoutDirty: unknown item id "${t.item.id}"`);this.markLayoutDirtyFromIndex(t.index)}tryAppendItems(t){if(t.length<=this.items.length)return!1;for(let n=0;n=o.length?this.resetRenderState():this.renderState.lastIndex>=o.length&&(this.renderState.lastIndex=o.length-1),this.markLayoutDirtyFromIndex(a),this.scrollDirty=!0,this.render())}syncItemRecord(t,n){if(t.type!==n.type)throw new Error(`CodeView.syncItemRecord: type mismatch for id "${n.id}"`);return t.version===n.version?!1:(t.item=n,t.version=n.version,t.renderedOptionsRevision=-1,!0)}getMaxScrollTopForHeight(t){const{paddingBottom:n,paddingTop:i}=this.getLayout();return Math.max(i+t+n-this.getHeight(),0)}getMaxScrollTop(){return this.getMaxScrollTopForHeight(this.getScrollHeight())}shouldRebaseScroll(){return this.getMaxScrollTop()>ei}getPagedScrollHeight(){return this.shouldRebaseScroll()?Math.min(this.getScrollHeight(),vn):this.getScrollHeight()}getMaxPagedScrollTop(){return this.getMaxScrollTopForHeight(this.getPagedScrollHeight())}clampPagedScrollTop(t){const n=this.getMaxPagedScrollTop();return Math.max(0,Math.min(t,n))}clampScrollTop(t){const n=this.getMaxScrollTop();return Math.max(0,Math.min(t,n))}getMaxScrollPageOffset(){return Math.max(this.getMaxScrollTop()-this.getMaxPagedScrollTop(),0)}clampScrollPageOffset(t){const n=this.getMaxScrollPageOffset();return Math.max(0,Math.min(t,n))}resolveScrollPageWindow(t,n){let i=ie(this.clampPagedScrollTop(n)),r=this.clampScrollPageOffset(t-i);return i=ie(this.clampPagedScrollTop(t-r)),r=this.clampScrollPageOffset(t-i),{pagedScrollTop:i,scrollPageOffset:r}}resolvePagedScrollPosition(t){if(!this.shouldRebaseScroll())return{pagedScrollTop:this.clampPagedScrollTop(t),scrollPageOffset:0};const n=this.clampScrollPageOffset(this.scrollPageOffset),i=t-n,r=this.getMaxPagedScrollTop(),o=this.getMaxScrollPageOffset(),s=i>ei&&n0;return i<0||i>r||s||l?this.resolveScrollPageWindow(t,l?Math.min(ya,r):ur):{pagedScrollTop:ie(this.clampPagedScrollTop(i)),scrollPageOffset:n}}needsScrollPageUpdate(t){const n=ie(this.clampScrollTop(t)),{scrollPageOffset:i}=this.resolvePagedScrollPosition(n);return i!==this.scrollPageOffset}getPagedLayoutTop(t){return this.shouldRebaseScroll()?Math.max(t-this.scrollPageOffset,0):t}getStickyHeaderOffset(){return this.options.stickyHeaders===!0&&this.options.disableFileHeader!==!0?this.itemMetricsCache.diffHeaderHeight:0}getScrollTargetRect(t){const n=this.idToItem.get(t.id);if(n==null){console.warn(`CodeView.scrollTo: unknown item id "${t.id}"`);return}if(t.type==="item")return{top:n.top,height:n.height};if(t.type==="range"){const r=this.getRangeScrollPosition(n,t);if(r==null){console.warn(`CodeView.scrollTo: unable to resolve range ${ti(t.range)} for item "${t.id}"`);return}return{top:n.top+r.top,height:r.height}}const i=this.getLineScrollPosition(n,t);if(i==null){console.warn(`CodeView.scrollTo: unable to resolve line ${t.lineNumber} for item "${t.id}"`);return}return{top:n.top+i.top,height:i.height}}normalizeScrollTarget(t){if(t.type==="position"||t.align!=="nearest")return t;const n=this.getScrollTargetRect(t);if(n==null)return;const i=t.offset??0,r=this.getLayout().paddingTop+n.top,o=r+n.height,s=this.getScrollTop(),l=s+(t.type==="line"||t.type==="range"?this.getStickyHeaderOffset():0),a=s+this.getHeight();if(!(r-i<=l&&o+i>=a)){if(r-ia)return{...t,align:"end"}}}resolveScrollTargetTop(t){if(t.type==="position"){const r=this.clampScrollTop(t.position);return r!==t.position?r:this.clampScrollTop(t.position-this.getStickyHeaderOffset())}const n=this.idToItem.get(t.id);if(n==null){console.warn(`CodeView.scrollTo: unknown item id "${t.id}"`);return}if(t.type==="item")return this.clampScrollTop(this.resolveAlignedScrollPosition(n.top,n.height,t.align,t.offset));if(t.type==="range"){const r=this.getRangeScrollPosition(n,t);if(r==null){console.warn(`CodeView.scrollTo: unable to resolve range ${ti(t.range)} for item "${t.id}"`);return}return this.clampScrollTop(this.resolveAlignedScrollPosition(n.top+r.top,r.height,t.align,t.offset,this.getStickyHeaderOffset()))}const i=this.getLineScrollPosition(n,t);if(i==null){console.warn(`CodeView.scrollTo: unable to resolve line ${t.lineNumber} for item "${t.id}"`);return}return this.clampScrollTop(this.resolveAlignedScrollPosition(n.top+i.top,i.height,t.align,t.offset,this.getStickyHeaderOffset()))}resolveAlignedScrollPosition(t,n,i,r=0,o=0){t+=this.getLayout().paddingTop;const s=this.getHeight();return i==="center"&&n+r{if(ue.__STOP||this.container==null)return;const n=this.getHeight(),i=this.getScrollTop();let r=i,o=this.pendingLayoutAnchor!=null,s=this.getScrollAnchor(r);if(this.layoutDirtyIndex!=null&&(this.recomputeLayout(this.layoutDirtyIndex,this.pendingLayoutReset),this.layoutDirtyIndex=void 0,this.pendingLayoutReset=void 0,o=!0),o&&s!=null){const S=this.resolveAnchoredScrollTop(s);if(S!=null){const k=S-r;r=S,this.scrollAnimation!=null&&(this.scrollAnimation.position+=k)}}o&&(r=this.clampScrollTop(r),this.syncContainerHeight());const l=this.computeTargetScrollTopForFrame(r,t),a=!o&&(this.renderState.scrollTop===-1||Math.abs(l-this.renderState.scrollTop)>n+this.config.overscrollSize*2);a&&(s=void 0),this.windowSpecs=Wt({scrollTop:l,height:n,scrollHeight:this.getScrollHeight(),fitPerfectly:a,fitPerfectlyOverscroll:this.getFitPerfectlyOverscroll(),overscrollSize:this.config.overscrollSize});let d=i;(this.pendingScrollTarget!=null&&l!==d||this.needsScrollPageUpdate(l))&&(this.applyScrollFix(l,d,this.windowSpecs),d=l);const{top:h,bottom:c}=this.windowSpecs,{firstIndex:u,lastIndex:f}=this.renderState;if(u>=0)for(let S=u;S<=f;S++){const k=this.items[S];if(k==null)throw new Error(`CodeView.computeRenderRangeAndEmit: No item at index: ${S}`);k.top>h-k.height&&k.top<=c||this.releaseRenderedItem(k)}let p;const m=new Set,y=this.findFirstVisibleIndex(h),v=this.findLastVisibleIndex(c);for(let S=y;S<=v;S++){const k=this.items[S];if(k==null)throw new Error("CodeView.computeRenderRangeAndEmit: missing item");const{instance:w}=k;k.element==null?(k.element=this.acquireElement(),ri(this.stickyContainer,k.element,p),w.virtualizedSetup(),ii(k,k.element)&&(k.renderedOptionsRevision=this.renderOptionsRevision,m.add(k)),p=k.element):(ri(this.stickyContainer,k.element,p),ii(k,void 0,k.renderedOptionsRevision!==this.renderOptionsRevision)&&(k.renderedOptionsRevision=this.renderOptionsRevision,m.add(k)),p=k.element)}this.renderState.firstIndex=y<=v?y:-1,this.renderState.lastIndex=v,this.flushSlotCoordinator(),this.reconcileRenderedItems(m),this.syncContainerHeight(),this.updateStickyPositioning();const g=s!=null?this.resolveAnchoredScrollTop(s):void 0;s===this.pendingLayoutAnchor&&(this.pendingLayoutAnchor=void 0);const C=g!=null?g-r:0;let b=l,x=!1;if(this.pendingScrollTarget!=null){const S=this.advanceScrollAnimation(t,C);S!=null?(b=S,x=!0):b=r}else b=g??l;b!==d&&(this.applyScrollFix(b,d,this.windowSpecs),d=b),x&&this.pendingScrollTarget!=null&&this.isPendingTargetSettled(this.pendingScrollTarget)&&(this.pendingScrollTarget=void 0,this.scrollAnimation=void 0),this.renderState.scrollTop=ie(d),this.flushManagers(m),this.validateStickyContainerHeight(),this.fixContainerFocus(),(a||this.scrollAnimation!=null)&&this.render()};flushManagers(t){for(const n of t)n.instance.flushManagers()}syncContainerHeight(){const t=this.getPagedScrollHeight();this.container==null||this.containerHeight===t||(this.container.style.height=`${t}px`,this.containerHeight=t)}getStickyBounds(t){const{firstIndex:n,lastIndex:i}=t!=null?{firstIndex:this.findFirstVisibleIndex(t.top),lastIndex:this.findLastVisibleIndex(t.bottom)}:this.renderState;if(n===-1||i===-1||n>i)return;const r=this.items[n]?.instance.getAdvancedStickySpecs(t),o=this.items[i]?.instance.getAdvancedStickySpecs(t);if(!(r==null||o==null))return{stickyTop:this.getPagedLayoutTop(Math.max(r.topOffset,0)),stickyBottom:this.getPagedLayoutTop(o.topOffset+o.height)}}applyStickyPositioning({stickyTop:t,stickyBottom:n}){const i=this.getHeight(),{itemMetricsCache:r}=this,o=n-t;this.renderState.stickyHeight=o,this.renderState.stickyTop=t,this.renderState.stickyBottom=n,this.stickyOffset.style.height=`${t}px`;const s=(Math.random()*r.lineHeight>>0)*-1,l=-Math.max(o+s,0)+i;this.stickyContainer.style.top=`${l}px`,this.stickyContainer.style.bottom=`${l+r.diffHeaderHeight}px`}syncPagedScrollScaffolding(t){this.syncContainerHeight();const n=this.getStickyBounds(t);n!=null&&this.applyStickyPositioning(n)}reconcileRenderedItems(t){const{firstIndex:n,lastIndex:i}=this.renderState;if(n===-1)return;let r=-1,o=!1;for(let s=n;si);s++){const l=this.items[s];if(l==null)throw new Error("CodeView.reconcileRenderedItems: Invalid item");r===-1?r=l.top:l.top!==r&&(l.top=r,l.instance.syncVirtualizedTop(),o=!0),(t==null?s<=i:t.has(l))&&(l.instance.reconcileHeights()&&(o=!0,l.height=l.instance.getVirtualizedHeight()),this.validateRenderedItemHeight(l)),r+=l.instance.getVirtualizedHeight(),s{ue.__STOP||(this.suspendScrollInteractions(),this.scrollDirty=!0,this.notifyScroll(),this.render())};clearPendingScroll=()=>{this.pendingScrollTarget=void 0,this.pendingLayoutAnchor=void 0,this.scrollAnimation=void 0};handleResize=t=>{for(const n of t)if(n.target===this.stickyContainer){if(n.borderBoxSize[0].blockSize!==this.renderState.stickyHeight){const i=this.getScrollTop(),r=this.getScrollAnchor(i);this.reconcileRenderedItems(),this.updateStickyPositioning();const o=r!=null?this.resolveAnchoredScrollTop(r):void 0;if(o!=null){const s=o-i;this.applyScrollFix(o,i,this.windowSpecs),this.scrollAnimation!=null&&(this.scrollAnimation.position+=s)}this.pendingScrollTarget!=null&&this.isPendingTargetSettled(this.pendingScrollTarget)&&(this.pendingScrollTarget=void 0,this.scrollAnimation=void 0)}}else this.scrollDirty=!0,this.heightDirty=!0,this.render()};getScrollAnchorViewportTop(t,n){return t=t+s)break;if(d>=t)return{type:"item",id:a.item.id,viewportOffset:d-t};const h=this.getScrollAnchorViewportTop(d,t)-d,c=a.instance.getNumericScrollAnchor(h);if(c!=null){const u=d+c.top;return{type:"line",id:a.item.id,lineNumber:c.lineNumber,side:c.side,viewportOffset:u-t}}}}resolveAnchoredScrollTop(t){const n=this.idToItem.get(t.id);if(n==null)return;const{paddingTop:i}=this.getLayout();if(t.type==="item"){const s=i+n.top;return this.clampScrollTop(s-t.viewportOffset)}const r=n.type==="diff"?n.instance.getLinePosition(t.lineNumber,t.side):n.instance.getLinePosition(t.lineNumber);if(r==null)return;const o=i+n.top+r.top;return this.clampScrollTop(o-t.viewportOffset)}applyScrollFix(t,n,i){if(this.root==null)return;const r=ie(this.clampScrollTop(t)),o=ie(n),{scrollPageOffset:s}=this,l=ie(this.clampPagedScrollTop(o-s)),{pagedScrollTop:a,scrollPageOffset:d}=this.resolvePagedScrollPosition(r),h=a,c=s!==d;r===this.renderState.scrollTop&&r===o&&h===l&&!c||(this.suspendScrollInteractions(),(h!==l||c)&&(this.scrollPageOffset=d,this.syncPagedScrollScaffolding(i)),h!==l&&this.root.scrollTo({top:h,behavior:"instant"}),this.renderState.scrollTop=r,this.scrollTop=r,this.scrollDirty=!1)}isPendingTargetSettled(t){const n=this.resolveScrollTargetTop(t);return n==null?!0:ie(this.getScrollTop())===ie(n)}getScrollTop(){if(!this.scrollDirty)return this.scrollTop;this.scrollDirty=!1;const t=this.root?.scrollTop??0;return this.scrollTop=this.clampScrollTop(t+this.scrollPageOffset),this.scrollTop}getHeight(){return this.heightDirty?(this.heightDirty=!1,this.height=this.root?.getBoundingClientRect().height??0,this.height):this.height}getScrollHeight(){return this.scrollHeight}flushSlotCoordinator(){if(this.slotCoordinator==null)return;const{onSnapshotChange:t}=this.slotCoordinator,n=oi(this.getRenderedItems(),this.slotCoordinator);Ra(this.slotSnapshot,n)||(this.slotSnapshot=n,t(n))}notifyScroll(){if(this.scrollListeners.size===0)return;const t=this.getScrollTop();for(const n of this.scrollListeners)n(t,this)}findFirstVisibleIndex(t){let n=0,i=this.items.length-1,r=this.items.length;for(;n<=i;){const o=n+i>>1,s=this.items[o];if(s==null)throw new Error("CodeView.findFirstVisibleIndex: invalid item index");s.top+s.height>t?(r=o,i=o-1):n=o+1}return r}findLastVisibleIndex(t){let n=0,i=this.items.length-1,r=-1;for(;n<=i;){const o=n+i>>1,s=this.items[o];if(s==null)throw new Error("CodeView.findLastVisibleIndex: invalid item index");s.top<=t?(r=o,n=o+1):i=o-1}return r}recomputeLayout(t=0,n){if(this.items.length===0){this.scrollHeight=0;return}const i=this.getLayout();let r=0;if(t>0){const o=this.items[t-1];if(o==null)throw new Error("CodeView.recomputeLayout: invalid dirty index");r=o.top+o.height+i.gap}for(let o=t;o0}function oi(e,{hasHeaderRenderers:t,hasAnnotationRenderer:n,hasGutterRenderer:i}){if(e.length===0)return;if(t||i)return e;if(!n)return;const r=[];for(const o of e)Ia(o.item)&&r.push(o);return r.length>0?r:void 0}function Ra(e,t){if(e==null||t==null)return e===t;if(e.length!==t.length)return!1;for(let n=0;n{const a=l===n.length-1,d=this.options.highlighter.codeToTokens(s,{...this.options,grammarState:this.lastStableGrammarState}),h=d.tokens[0];a||h.push({content:` +`,offset:0}),a?(r=h,this.lastUnstableCodeChunk=s):(this.lastStableGrammarState=d.grammarState,i.push(...h))}),this.tokensStable.push(...i),this.tokensUnstable=r,{recall:o,stable:i,unstable:r}}close(){const t=this.tokensUnstable;return this.tokensUnstable=[],this.lastUnstableCodeChunk="",this.lastStableGrammarState=void 0,{stable:t}}clear(){this.tokensStable=[],this.tokensUnstable=[],this.lastUnstableCodeChunk="",this.lastStableGrammarState=void 0}clone(){const t=new fr(this.options);return t.lastUnstableCodeChunk=this.lastUnstableCodeChunk,t.tokensUnstable=this.tokensUnstable,t.tokensStable=this.tokensStable,t.lastStableGrammarState=this.lastStableGrammarState,t}},si=class extends TransformStream{tokenizer;options;constructor(e){const t=new Aa(e),{allowRecalls:n=!1}=e;super({async transform(i,r){const{stable:o,unstable:s,recall:l}=await t.enqueue(i);n&&l>0&&r.enqueue({recall:l});for(const a of o)r.enqueue(a);if(n)for(const a of s)r.enqueue(a)},async flush(i){const{stable:r}=t.close();if(!n)for(const o of r)i.enqueue(o)}}),this.tokenizer=t,this.options=e}};function Ha(e){const t=document.createElement("span");return t.style=Ir(e.htmlStyle??Rr(e)),t.textContent=e.content,t}let Ma=-1;var Tl=class{options;__id=`file-stream:${++Ma}`;highlighter;stream;abortController;fileContainer;pre;code;gutterElement;contentElement;themeCSSStyle;appliedThemeCSS;currentRowCount=0;constructor(e={theme:P}){this.options=e,this.currentLineIndex=this.options.startingLineIndex??1}cleanUp(){this.abortController?.abort(),this.abortController=void 0}setThemeType(e){(this.options.themeType??"system")!==e&&(this.options={...this.options,themeType:e},!(typeof this.options.theme=="string"||this.fileContainer==null||this.appliedThemeCSS==null)&&this.applyThemeState(this.fileContainer,this.appliedThemeCSS.themeStyles,e,this.appliedThemeCSS.baseThemeType))}async initializeHighlighter(){return this.highlighter=await St(hn(this.options.lang,this.options)),this.highlighter}queuedSetupArgs;async setup(e,t){const n=this.queuedSetupArgs!=null;if(this.queuedSetupArgs=[e,t],n)return;this.highlighter??=await this.initializeHighlighter();const[i,r]=this.queuedSetupArgs;this.queuedSetupArgs=void 0;const o=i;this.setupStream(o,r,this.highlighter)}setupStream(e,t,n){const{disableLineNumbers:i=!1,overflow:r="scroll",theme:o=P,themeType:s="system"}=this.options,l=this.getOrCreateFileContainer();l.parentElement==null&&t.appendChild(l),this.pre??=document.createElement("pre"),this.pre.parentElement==null&&l.shadowRoot?.appendChild(this.pre);const a=typeof o=="string"?n.getTheme(o).type:void 0,d=cn({theme:o,highlighter:n});this.applyThemeState(l,d,s,a);const h=mn(this.pre,{type:"file",diffIndicators:"none",disableBackground:!0,disableLineNumbers:i,overflow:r,split:!1,totalLines:0});h.textContent="",this.pre=h,this.code=Ge({code:this.code,pre:h}),this.gutterElement=void 0,this.contentElement=void 0,this.currentRowCount=0,this.currentLineElement=void 0,this.currentLineIndex=this.options.startingLineIndex??1,this.abortController?.abort(),this.abortController=new AbortController;const{onStreamStart:c,onStreamClose:u,onStreamAbort:f}=this.options;this.stream?.cancel().catch(()=>{}),this.stream=e,this.stream.pipeThrough(typeof o=="string"?new si({...this.options,theme:o,highlighter:n,allowRecalls:!0,defaultColor:!1,cssVariablePrefix:_("token"),tokenizeTimeLimit:0}):new si({...this.options,themes:o,highlighter:n,allowRecalls:!0,defaultColor:!1,cssVariablePrefix:_("token"),tokenizeTimeLimit:0})).pipeTo(new WritableStream({start(p){c?.(p)},close(){u?.()},abort(p){f?.(p)},write:this.handleWrite}),{signal:this.abortController.signal}).catch(p=>{p.name!=="AbortError"&&console.error("FileStream pipe error:",p)})}queuedTokens=[];handleWrite=e=>{"recall"in e&&this.queuedTokens.length>=e.recall?this.queuedTokens.length=this.queuedTokens.length-e.recall:this.queuedTokens.push(e),K(this.render),this.options.onStreamWrite?.(e)};currentLineIndex;currentLineElement;render=()=>{this.options.onPreRender?.(this);const{gutter:e,content:t}=this.getOrCreateStreamColumns(),n=document.createDocumentFragment(),i=document.createDocumentFragment();for(const r of this.queuedTokens)if("recall"in r){if(this.currentLineElement==null)throw new Error("FileStream.render: no current line element, shouldnt be possible to get here");if(r.recall>this.currentLineElement.childNodes.length)throw new Error("FileStream.render: Token recall exceed the current line, there's probably a bug...");for(let o=0;o0&&e.appendChild(n),i.childNodes.length>0&&t.appendChild(i),this.queuedTokens.length=0,this.options.onPostRender?.(this)};getOrCreateStreamColumns(){if(this.code==null)throw new Error("FileStream: expected code element to exist");if(this.gutterElement!=null&&this.contentElement!=null)return{gutter:this.gutterElement,content:this.contentElement};const e=document.createElement("div");e.dataset.gutter="";const t=document.createElement("div");return t.dataset.content="",this.code.appendChild(e),this.code.appendChild(t),this.gutterElement=e,this.contentElement=t,{gutter:e,content:t}}updateRowSpan(){this.gutterElement!=null&&(this.gutterElement.style.gridRow=`span ${this.currentRowCount}`),this.contentElement!=null&&(this.contentElement.style.gridRow=`span ${this.currentRowCount}`)}createLine(){const e=this.currentLineIndex,t=`${e-1}`,n=document.createElement("div");n.dataset.columnNumber=`${e}`,n.dataset.lineType="context",n.dataset.lineIndex=t;const i=document.createElement("span");i.dataset.lineNumberContent="",i.textContent=`${e}`,n.appendChild(i);const r=document.createElement("div");return r.dataset.line=`${e}`,r.dataset.lineType="context",r.dataset.lineIndex=t,this.currentRowCount+=1,this.updateRowSpan(),this.currentLineElement=r,{gutterLine:n,contentLine:r}}getOrCreateFileContainer(e){return e!=null&&e===this.fileContainer||e==null&&this.fileContainer!=null?this.fileContainer:(this.fileContainer!=null&&e!=null&&e!==this.fileContainer&&(this.themeCSSStyle=void 0,this.appliedThemeCSS=void 0),this.fileContainer=e??document.createElement("diffs-container"),this.fileContainer)}applyThemeState(e,t,n,i){const r=e.shadowRoot??e.attachShadow({mode:"open"}),o=i??n,s=this.options.theme??P,l=typeof s=="string"?s:{...s},a=He(r);if(this.themeCSSStyle?.parentNode===r&&this.appliedThemeCSS?.themeStyles===t&&this.appliedThemeCSS.themeType===o&&this.appliedThemeCSS.scrollbarGutter===a){this.appliedThemeCSS.theme=l;return}this.themeCSSStyle=bn({shadowRoot:r,currentNode:this.themeCSSStyle,themeCSS:gn(t,o,a)}),this.appliedThemeCSS=this.themeCSSStyle!=null?{theme:l,themeStyles:t,themeType:o,baseThemeType:i,scrollbarGutter:a}:void 0}};function pr(e,t){const{resolution:n,hunkIndex:i,startContentIndex:r,endContentIndex:o,indexesToDelete:s=new Set}=t,l=e.hunks[i];if(l==null)throw console.error({diff:e,hunkIndex:i}),new Error(`resolveRegion: Invalid hunk index: ${i}`);if(r<0||o>=l.hunkContent.length||r>o)throw new Error(`resolveRegion: Invalid content range, ${r}, ${o}`);const{hunks:a,additionLines:d,deletionLines:h}=e,c={...e,hunks:[],deletionLines:[],additionLines:[],splitLineCount:0,unifiedLineCount:0,cacheKey:e.cacheKey!=null?`${e.cacheKey}:${n[0]}-${i}:${r}-${o}`:void 0},u={nextAdditionLineIndex:0,nextDeletionLineIndex:0,nextAdditionStart:1,nextDeletionStart:1,splitLineCount:0,unifiedLineCount:0},f=i===a.length-1&&o===l.hunkContent.length-1,p=!e.isPartial;for(const[y,v]of a.entries()){Da(e,c,u,v.deletionLineIndex-v.collapsedBefore,v.additionLineIndex-v.collapsedBefore,v.collapsedBefore,p);const g={...v,hunkContent:[],additionStart:u.nextAdditionStart,deletionStart:u.nextDeletionStart,additionLineIndex:u.nextAdditionLineIndex,deletionLineIndex:u.nextDeletionLineIndex,additionCount:0,deletionCount:0,deletionLines:0,additionLines:0,splitLineStart:u.splitLineCount,unifiedLineStart:u.unifiedLineCount,splitLineCount:0,unifiedLineCount:0};for(const[C,b]of v.hunkContent.entries())if(y!==i||Co){ai(b,c,h,d);const x={...b,additionLineIndex:u.nextAdditionLineIndex,deletionLineIndex:u.nextDeletionLineIndex};g.hunkContent.push(x),Ut(x,u,g)}else if(s.has(C))g.hunkContent.push({type:"context",lines:0,deletionLineIndex:u.nextDeletionLineIndex,additionLineIndex:u.nextAdditionLineIndex});else if(b.type==="context"){ai(b,c,h,d);const x={...b,deletionLineIndex:u.nextDeletionLineIndex,additionLineIndex:u.nextAdditionLineIndex};g.hunkContent.push(x),Ut(x,u,g)}else{Pa(n,b,c,h,d);const x={type:"context",lines:n==="deletions"?b.deletions:n==="additions"?b.additions:b.deletions+b.additions,deletionLineIndex:u.nextDeletionLineIndex,additionLineIndex:u.nextAdditionLineIndex};g.hunkContent.push(x),Ut(x,u,g)}if(y===i&&f){const C=n==="deletions"?v.noEOFCRDeletions:v.noEOFCRAdditions;g.noEOFCRAdditions=C,g.noEOFCRDeletions=C}c.hunks.push(g)}const m=a.at(-1);return m!=null&&!e.isPartial&&gr(c,h,d,m.deletionLineIndex+m.deletionCount,m.additionLineIndex+m.additionCount,Math.min(h.length-(m.deletionLineIndex+m.deletionCount),d.length-(m.additionLineIndex+m.additionCount))),c.splitLineCount=u.splitLineCount,c.unifiedLineCount=u.unifiedLineCount,c}function gr(e,t,n,i,r,o){for(let s=0;s0){let c=0,u=0,f=i.indexOf(` +`,c);for(;f!==-1;)di(n,i.slice(c,f+1),u),c=f+1,u++,f=i.indexOf(` +`,c);c0)throw new Error("parseMergeConflictDiffFromFile: unfinished merge conflict marker stack");n.activeHunk!=null&&n.activeHunk.hunkContent.length>0&&(Cn(n,n.activeHunk,"trailing"),yr(n));for(let c=0;c0&&n.additionLines.length>0&&n.deletionLines.length>0){const c=n.hunks[n.hunks.length-1],u=Math.max(n.additionLines.length-(c.additionStart+c.additionCount-1),0);n.splitLineCount+=u,n.unifiedLineCount+=u}const o=n.deletionLines.join(""),s=n.additionLines.join(""),l=gi(e,"current",o),a=gi(e,"incoming",s);let d="change";s===""?d="deleted":o===""&&(d="new");const h={name:e.name,prevName:void 0,type:d,hunks:n.hunks,splitLineCount:n.splitLineCount,unifiedLineCount:n.unifiedLineCount,isPartial:!1,deletionLines:n.deletionLines,additionLines:n.additionLines,cacheKey:e.cacheKey!=null?`${e.cacheKey}:merge-conflict-diff`:void 0};return{fileDiff:h,currentFile:l,incomingFile:a,actions:n.actions,markerRows:Lr(h,n.actions)}}function di(e,t,n){const i=e.conflictStack[e.conflictStack.length-1];if(i==null){if(t.length>=7&&t.charCodeAt(0)===60&&pi(t)==="start"){ui(e,t,n);return}hi(e,t);return}const r=pi(t);if(r==="start"){ui(e,t,n);return}if(r==="base"){i.stage="base",i.baseMarkerLineIndex=n,i.markerLines.base=t;return}if(r==="separator"){i.stage="incoming",i.separatorLineIndex=n,i.markerLines.separator=t;return}if(r==="end"){const o=e.conflictStack.pop();if(o==null)throw new Error("parseMergeConflictDiffFromFile: encountered end marker before start marker");Ua(e,o,n,t);return}i.stage==="current"?ci(e,"deletion",t,i.conflictIndex,"current"):i.stage==="base"?hi(e,t,i.conflictIndex):ci(e,"addition",t,i.conflictIndex,"incoming")}function Cr(e){return e.activeHunk??=xr(e.additionLines.length+1,e.deletionLines.length+1),e.activeHunk}function Sr(e,t,n,i){const r=e.conflictBuilders[t];if(r==null)throw new Error(`parseMergeConflictDiffFromFile: failed to locate conflict action ${t}`);const o=r.action,s=e.hunks.length;if(o.hunkIndex<0)o.hunkIndex=s;else if(o.hunkIndex!==s)throw new Error(`parseMergeConflictDiffFromFile: conflict ${t} spans multiple hunks and cannot be anchored`);if(o.startContentIndex<0&&(o.startContentIndex=i),o.endContentIndex=i,o.endMarkerContentIndex=i,n==="current"){o.currentContentIndex??=i;return}if(n==="base"){o.baseContentIndex??=i;return}o.incomingContentIndex=i}function Fa(e,t,n,i){const r=e.hunkContent,o=r[r.length-1];return o?.type==="change"?(t==="addition"?o.additions++:o.deletions++,r.length-1):(r.push({type:"change",additions:t==="addition"?1:0,deletions:t==="deletion"?1:0,additionLineIndex:n,deletionLineIndex:i}),r.length-1)}function Cn(e,t,n){let i=t.contextBufferCount,r=t.contextBufferAdditionStart,o=t.contextBufferDeletionStart;if(n==="leading"&&i>e.maxContextLines){const h=i-e.maxContextLines;r+=h,o+=h,i=e.maxContextLines,t.additionStart+=h,t.deletionStart+=h,t.additionLineIndex+=h,t.deletionLineIndex+=h}if(n==="trailing"&&i>e.maxContextLines&&(i=e.maxContextLines),i===0){t.contextBufferCount=0,t.contextBufferBaseConflicts=void 0;return}const s=t.hunkContent,l=s[s.length-1];let a;l?.type==="context"?(l.lines+=i,a=s.length-1):(s.push({type:"context",lines:i,additionLineIndex:r,deletionLineIndex:o}),a=s.length-1),t.additionCount+=i,t.deletionCount+=i;const d=t.contextBufferBaseConflicts;if(d!=null){const h=r-t.contextBufferAdditionStart;for(const[c,u]of d)c>=h&&c=d&&(s??=new Map,s.set(h-d,c))}Cn(e,t,"trailing");const l=t.additionCount,a=t.deletionCount;yr(e),e.activeHunk=xr(t.additionStart+l+i,t.deletionStart+a+i),e.activeHunk.contextBufferAdditionStart=r,e.activeHunk.contextBufferDeletionStart=o,e.activeHunk.contextBufferCount=e.maxContextLines,e.activeHunk.contextBufferBaseConflicts=s}function hi(e,t,n=-1){const i=Cr(e);i.contextBufferCount===0&&(i.contextBufferAdditionStart=e.additionLines.length,i.contextBufferDeletionStart=e.deletionLines.length),e.additionLines.push(t),e.deletionLines.push(t),n>=0&&(i.contextBufferBaseConflicts??=new Map,i.contextBufferBaseConflicts.set(i.contextBufferCount,n)),i.contextBufferCount++}function ci(e,t,n,i,r){let o=Cr(e);o.hunkContent.length>0&&o.contextBufferCount>e.maxContextLines2&&(za(e),o=e.activeHunk),Cn(e,o,o.hunkContent.length===0?"leading":"before-change");const s=e.additionLines.length,l=e.deletionLines.length;t==="addition"?e.additionLines.push(n):e.deletionLines.push(n);const a=Fa(o,t,s,l);t==="addition"?(o.additionCount++,o.additionLines++):(o.deletionCount++,o.deletionLines++),Sr(e,i,r,a)}function Ua(e,t,n,i){if(t.separatorLineIndex==null||t.markerLines.separator==null)throw new Error(`parseMergeConflictDiffFromFile: conflict ${t.conflictIndex} is missing a separator marker`);const r=e.conflictBuilders[t.conflictIndex];if(r==null)throw new Error(`parseMergeConflictDiffFromFile: failed to finalize conflict ${t.conflictIndex}`);const o=r.action;o.markerLines.separator=t.markerLines.separator,o.markerLines.end=i,t.markerLines.base!=null&&(o.markerLines.base=t.markerLines.base),o.conflict={conflictIndex:t.conflictIndex,startLineIndex:t.startLineIndex,startLineNumber:t.startLineIndex+1,separatorLineIndex:t.separatorLineIndex,separatorLineNumber:t.separatorLineIndex+1,endLineIndex:n,endLineNumber:n+1,baseMarkerLineIndex:t.baseMarkerLineIndex,baseMarkerLineNumber:t.baseMarkerLineIndex!=null?t.baseMarkerLineIndex+1:void 0};const s=o.currentContentIndex??o.incomingContentIndex;if(o.currentContentIndex??=s,o.incomingContentIndex??=s,o.startContentIndex<0&&s!=null&&(o.startContentIndex=s),o.endContentIndex<0&&s!=null&&(o.endContentIndex=s),o.endMarkerContentIndex<0&&s!=null&&(o.endMarkerContentIndex=s),o.hunkIndex<0||o.startContentIndex<0||o.endContentIndex<0||o.endMarkerContentIndex<0)throw new Error(`parseMergeConflictDiffFromFile: failed to anchor merge conflict ${t.conflictIndex}`);e.actions[o.conflictIndex]=o,r.completed=!0}function ui(e,t,n){const i=e.nextConflictIndex;e.nextConflictIndex++,e.conflictStack.push({conflictIndex:i,stage:"current",startLineIndex:n,markerLines:{start:t}}),e.conflictBuilders[i]={completed:!1,action:{conflict:{conflictIndex:i,startLineIndex:n,startLineNumber:n+1,separatorLineIndex:n,separatorLineNumber:n+1,endLineIndex:n,endLineNumber:n+1,baseMarkerLineIndex:void 0,baseMarkerLineNumber:void 0},conflictIndex:i,hunkIndex:-1,startContentIndex:-1,endContentIndex:-1,endMarkerContentIndex:-1,markerLines:{start:t,separator:"",end:""}}}}function xr(e,t){return{additionStart:e,deletionStart:t,additionCount:0,deletionCount:0,additionLines:0,deletionLines:0,additionLineIndex:Math.max(e-1,0),deletionLineIndex:Math.max(t-1,0),hunkContent:[],contextBufferAdditionStart:Math.max(e-1,0),contextBufferDeletionStart:Math.max(t-1,0),contextBufferCount:0,contextBufferBaseConflicts:void 0}}function fi(e,t){return t===1?`${e}`:`${e},${t}`}function pi(e){if(e.length<7)return;const t=e.charCodeAt(0);if(t!==60&&t!==62&&t!==61&&t!==124)return;const n=Ba(e);if(n<7)return;let i=1;for(;i0&&e.charCodeAt(t-1)===10&&t--,t>0&&e.charCodeAt(t-1)===13&&t--,t}function _a(e){return e===9||e===10||e===11||e===12||e===13||e===32}function gi(e,t,n){return{...e,contents:n,cacheKey:e.cacheKey!=null?`${e.cacheKey}:merge-conflict-${t}`:void 0}}function Lr(e,t){const n=[],i=new Array(e.hunks.length),r=(s,l)=>{const a=e.hunks[s];if(a==null)return 0;let d=i[s];if(d==null){d=new Array(a.hunkContent.length+1);let h=a.unifiedLineStart;d[0]=h;for(let c=0;c{const a=r(s,l),d=i[s]?.[Math.max(l+1,0)]??r(s,l+1);return Math.max(a,d-1)};for(const s of t){if(s==null)continue;const l=e.hunks[s.hunkIndex];if(l==null)continue;const a=r(s.hunkIndex,s.startContentIndex);if(n.push(ke(s,"marker-start",s.startContentIndex,s.markerLines.start,a)),s.baseContentIndex!=null){const f=s.currentContentIndex,p=s.incomingContentIndex;if(f==null||p==null)continue;const m=s.markerLines.base;if(m==null)continue;const y=l.hunkContent[f],v=l.hunkContent[s.baseContentIndex],g=l.hunkContent[p];if(y?.type!=="change"||v?.type!=="context"||g?.type!=="change")continue;const C=r(s.hunkIndex,f),b=r(s.hunkIndex,p);n.push(ke(s,"marker-base",s.baseContentIndex,m,C+y.deletions)),n.push(ke(s,"marker-separator",s.baseContentIndex,s.markerLines.separator,b),ke(s,"marker-end",s.endMarkerContentIndex,s.markerLines.end,o(s.hunkIndex,s.endMarkerContentIndex)));continue}const d=s.currentContentIndex;if(d==null)continue;const h=l.hunkContent[d];if(h?.type!=="change")continue;const c=r(s.hunkIndex,d),u=h.deletions>0?c+h.deletions:a;n.push(ke(s,"marker-separator",d,s.markerLines.separator,u),ke(s,"marker-end",s.endMarkerContentIndex,s.markerLines.end,o(s.hunkIndex,s.endMarkerContentIndex)))}return n}function ke(e,t,n,i,r){return{type:t,hunkIndex:e.hunkIndex,contentIndex:n,conflictIndex:e.conflictIndex,lineText:i,lineIndex:r}}function $a(e,t){let n=e.unifiedLineStart;for(let i=0;i{const t=this.injectedRows.get(`${e.hunkIndex}:${e.lineIndex}`);if(t==null||t.length===0)return;const{mergeConflictActionsType:n}=this.getOptionsWithDefaults(),i=[],r=[];for(const o of t){if(o.type==="actions"){i.push({content:Va({row:o,includeDefaultActions:n==="default",includeSlot:!0}),gutter:Ci("action")});continue}(o.type==="marker-end"?r:i).push({content:Wa(o),gutter:Ci("marker",o.type)})}return{before:i.length>0?i:void 0,after:r.length>0?r:void 0}};getOptionsWithDefaults(){const e=super.getOptionsWithDefaults();return e.diffStyle="unified",e.lineDiffType="none",e.mergeConflictActionsType=this.options.mergeConflictActionsType??"default",e}};function bi(e){return e!=null?{"data-merge-conflict":e}:void 0}function vi(e,t){if(t!=null){if(e==="change")return t==="current"||t==="incoming"?{"data-line-type":"context","data-merge-conflict":t}:void 0;if(t==="marker-start"||t==="marker-base"||t==="marker-separator"||t==="marker-end")return{"data-merge-conflict":t}}}function Ci(e,t){const n=G(void 0,"annotation",1);return n.properties["data-gutter-buffer"]=e==="action"?"merge-conflict-action":`merge-conflict-${t??"marker"}`,n}function Va({row:e,includeDefaultActions:t,includeSlot:n}){const i=t?Ga(e.conflictIndex):[];return i.push(R({tagName:"slot",properties:{name:br({hunkIndex:e.hunkIndex,lineIndex:e.lineIndex,conflictIndex:e.conflictIndex}),"data-merge-conflict-action-slot":""}})),R({tagName:"div",properties:{"data-merge-conflict-actions":""},children:[R({tagName:"div",properties:{"data-merge-conflict-actions-content":""},children:i})]})}function Wa(e){return R({tagName:"div",properties:{"data-merge-conflict":e.type,"data-merge-conflict-marker-row":""},children:[V(e.lineText.replace(/(?:\r\n|\n|\r)$/,""))]})}function Ga(e){return[Bt({resolution:"current",label:"Accept current change",conflictIndex:e}),Si(),Bt({resolution:"incoming",label:"Accept incoming change",conflictIndex:e}),Si(),Bt({resolution:"both",label:"Accept both",conflictIndex:e})]}function Bt({resolution:e,label:t,conflictIndex:n}){return R({tagName:"button",properties:{type:"button","data-merge-conflict-action":e,"data-merge-conflict-conflict-index":`${n}`},children:[V(t)]})}function Si(){return R({tagName:"span",properties:{"data-merge-conflict-action-separator":""},children:[V("|")]})}function ja(e,t){return e.hunkIndex===t.hunkIndex&&e.startContentIndex===t.startContentIndex&&e.endContentIndex===t.endContentIndex&&e.currentContentIndex===t.currentContentIndex&&e.baseContentIndex===t.baseContentIndex&&e.incomingContentIndex===t.incomingContentIndex&&e.endMarkerContentIndex===t.endMarkerContentIndex&&e.conflictIndex===t.conflictIndex&&qa(e.conflict,t.conflict)}function qa(e,t){return e.conflictIndex===t.conflictIndex&&e.startLineIndex===t.startLineIndex&&e.startLineNumber===t.startLineNumber&&e.separatorLineIndex===t.separatorLineIndex&&e.separatorLineNumber===t.separatorLineNumber&&e.endLineIndex===t.endLineIndex&&e.endLineNumber===t.endLineNumber&&e.baseMarkerLineIndex===t.baseMarkerLineIndex&&e.baseMarkerLineNumber===t.baseMarkerLineNumber}let Ka=-1;var El=class extends dr{options;__id=`unresolved-file:${++Ka}`;type="unresolved-file";computedCache={file:void 0,fileDiff:void 0,actions:void 0,markerRows:void 0};conflictActions=[];markerRows=[];conflictActionCache=new Map;constructor(e={theme:P},t,n=!1){super(void 0,t,n),this.options=e,this.setOptions(e)}setOptions(e){if(e!=null){if(e.onMergeConflictAction!=null&&e.onMergeConflictResolve!=null)throw new Error("UnresolvedFile: onMergeConflictAction and onMergeConflictResolve are mutually exclusive. Use only one callback.");this.options=e,this.hunksRenderer.setOptions(this.getHunksRendererOptions(e)),this.syncInteractionOptions()}}syncInteractionOptions(){this.interactionManager.setOptions(qe(this.options,typeof this.options.hunkSeparators=="function"||(this.options.hunkSeparators??"line-info")==="line-info"||this.options.hunkSeparators==="line-info-basic"?this.handleExpandHunk:void 0,this.getLineIndex,this.handleMergeConflictActionClick))}createHunksRenderer(e){return new mi(this.getHunksRendererOptions(e),this.handleHighlightRender,this.workerManager)}getHunksRendererOptions(e){return il(e,this.options)}applyPreNodeAttributes(e,t){super.applyPreNodeAttributes(e,t,{"data-has-merge-conflict":""})}cleanUp(){this.emitPostRender(!0),this.clearMergeConflictActionCache(),this.computedCache={file:void 0,fileDiff:void 0,actions:void 0,markerRows:void 0},this.conflictActions=[],super.cleanUp()}getOrComputeDiff({file:e,fileDiff:t,actions:n,markerRows:i}){const{maxContextLines:r,onMergeConflictAction:o}=this.options;e:if(o!=null){const s=t!=null;if(s!==(n!=null)||s!==(i!=null))throw new Error("UnresolvedFile.getOrComputeDiff: fileDiff, actions, and markerRows must be passed together");if(t!=null&&n!=null&&i!=null){this.computedCache={file:e??this.computedCache.file,fileDiff:t,actions:n,markerRows:i};break e}else if(e!=null||this.computedCache.file!=null){if(e!=null&&this.computedCache.file!=null&&!se(e,this.computedCache.file)&&this.computedCache.fileDiff!=null&&this.computedCache.actions!=null)throw new Error("UnresolvedFile.getOrComputeDiff: file can only be used to initialize unresolved state once. Pass fileDiff and actions for subsequent updates.");if(e??=this.computedCache.file,e==null)throw new Error("UnresolvedFile.getOrComputeDiff: file is null, should be impossible");if(!se(e,this.computedCache.file)||this.computedCache.fileDiff==null||this.computedCache.actions==null){const l=li(e,r);this.computedCache={file:e,fileDiff:l.fileDiff,actions:l.actions,markerRows:l.markerRows}}t=this.computedCache.fileDiff,n=this.computedCache.actions,i=this.computedCache.markerRows;break e}else{t=this.computedCache.fileDiff,n=this.computedCache.actions,i=this.computedCache.markerRows;break e}}else{if(t!=null||n!=null||i!=null)throw new Error("UnresolvedFile.getOrComputeDiff: fileDiff, actions, and markerRows are only usable in controlled mode, you must pass in `onMergeConflictAction`");if(e!=null&&this.computedCache.file!=null&&!se(e,this.computedCache.file))throw new Error("UnresolvedFile.getOrComputeDiff: uncontrolled unresolved files parse the file only once. Later updates must come from the cached diff state.");if(this.computedCache.file??=e,this.computedCache.fileDiff==null&&this.computedCache.file!=null){const s=li(this.computedCache.file,r);this.computedCache.fileDiff=s.fileDiff,this.computedCache.actions=s.actions,this.computedCache.markerRows=s.markerRows}t=this.computedCache.fileDiff,n=this.computedCache.actions,i=this.computedCache.markerRows;break e}if(!(t==null||n==null||i==null))return{fileDiff:t,actions:n,markerRows:i}}hydrate(e){const{file:t,fileDiff:n,actions:i,markerRows:r,lineAnnotations:o,fileContainer:s,prerenderedHTML:l,preventEmit:a=!1}=e,d=this.getOrComputeDiff({file:t,fileDiff:n,actions:i,markerRows:r});d!=null&&(this.hydrateElements(s,l),this.setActiveMergeConflictState(d.actions,d.markerRows),tl(this.pre,d.fileDiff,this.options.collapsed)||nl(this.headerElement,d.fileDiff,this.options.disableFileHeader)?this.render({...e,preventEmit:!0}):(this.hydrationSetup({fileDiff:d.fileDiff,lineAnnotations:o}),this.pre!=null&&this.renderMergeConflictActionSlots()),a||this.emitPostRender())}rerender(){!this.enabled||this.fileDiff==null||this.render({forceRender:!0,renderRange:this.renderRange})}render(e={}){const{file:t,fileDiff:n,actions:i,markerRows:r,lineAnnotations:o,preventEmit:s=!1,...l}=e,a=this.getOrComputeDiff({file:t,fileDiff:n,actions:i,markerRows:r});if(a==null)return!1;this.setActiveMergeConflictState(a.actions,a.markerRows);const d=super.render({...l,fileDiff:a.fileDiff,lineAnnotations:o,preventEmit:!0});return d&&(this.renderMergeConflictActionSlots(),s||this.emitPostRender()),d}resolveConflict(e,t,n=this.computedCache.fileDiff){const i=this.conflictActions[e];if(n==null||i==null)return;if(i.conflictIndex!==e)throw console.error({conflictIndex:e,action:i}),new Error("UnresolvedFile.resolveConflict: conflictIndex and conflictAction don't match");const r=Oa(n,i,t),o=this.computedCache.file,{file:s,actions:l,markerRows:a}=Ya({fileDiff:r,previousActions:this.conflictActions,resolvedConflictIndex:e,previousFile:o,resolution:t});return{file:s,fileDiff:r,actions:l,markerRows:a}}resolveConflictAndRender(e,t){const n=this.conflictActions[e];if(n==null)return;if(n.conflictIndex!==e)throw console.error({conflictIndex:e,action:n}),new Error("UnresolvedFile.resolveConflictAndRender: conflictIndex and conflictAction don't match");const i={resolution:t,conflict:n.conflict},{file:r,fileDiff:o,actions:s,markerRows:l}=this.resolveConflict(e,t)??{};r==null||o==null||s==null||l==null||(this.computedCache={file:r,fileDiff:o,actions:s,markerRows:l},this.setActiveMergeConflictState(s,l),this.workerManager!=null?this.hunksRenderer.renderDiff(o):this.render({forceRender:!0}),this.options.onMergeConflictResolve?.(r,i))}setActiveMergeConflictState(e=this.conflictActions,t=this.markerRows){this.conflictActions=e,this.markerRows=t,this.computedCache.fileDiff!=null&&this.hunksRenderer instanceof mi&&this.hunksRenderer.setConflictState(this.options.mergeConflictActionsType==="none"?[]:e,t,this.computedCache.fileDiff)}handleMergeConflictActionClick=e=>{const t=this.conflictActions[e.conflictIndex];if(t==null)return;if(t.conflictIndex!==e.conflictIndex)throw console.error({conflictIndex:e.conflictIndex,action:t}),new Error("UnresolvedFile.handleMergeConflictActionClick: conflictIndex and conflictAction don't match");const n={resolution:e.resolution,conflict:t.conflict};if(this.options.onMergeConflictAction!=null){this.options.onMergeConflictAction(n,this);return}this.resolveConflictAndRender(e.conflictIndex,e.resolution)};renderMergeConflictActionSlots(){const{fileDiff:e}=this.computedCache;if(this.isContainerManaged||this.fileContainer==null||typeof this.options.mergeConflictActionsType!="function"||this.conflictActions.length===0||e==null){this.clearMergeConflictActionCache();return}const t=new Map(this.conflictActionCache);for(let n=0;n{if(s!==t&&o!=null)return o.conflict.startLineIndex>n.conflict.endLineIndex?{...o,conflict:el(o.conflict,r)}:o})}function Za(e,t){const n=(e.baseMarkerLineIndex??e.separatorLineIndex)-e.startLineIndex-1,i=e.endLineIndex-e.separatorLineIndex-1;return(t==="current"?n:t==="incoming"?i:n+i)-(e.endLineIndex-e.startLineIndex+1)}function el(e,t){return{...e,startLineIndex:e.startLineIndex+t,startLineNumber:e.startLineNumber+t,separatorLineIndex:e.separatorLineIndex+t,separatorLineNumber:e.separatorLineNumber+t,endLineIndex:e.endLineIndex+t,endLineNumber:e.endLineNumber+t,baseMarkerLineIndex:e.baseMarkerLineIndex!=null?e.baseMarkerLineIndex+t:void 0,baseMarkerLineNumber:e.baseMarkerLineNumber!=null?e.baseMarkerLineNumber+t:void 0}}function tl(e,t,n=!1){return!n&&e==null&&t!=null}function nl(e,t,n=!1){return e==null&&t!=null&&!n}function il(e,t){return{...t,...e,hunkSeparators:typeof e?.hunkSeparators=="function"?"custom":e?.hunkSeparators,mergeConflictActionsType:typeof e?.mergeConflictActionsType=="function"?"custom":e?.mergeConflictActionsType}}function rl(e,t){return e==null||t==null?e===t:e.top===t.top&&e.bottom===t.bottom}const kr=1e3,ol=kr*4,sl=[0,1e-6,.99999,1],al={overscrollSize:kr,intersectionObserverMargin:ol,resizeDebugging:!1};let lt=0,ll=-1;var Il=class re{static __STOP=!1;static __lastScrollPosition=0;__id=`virtualizer-${++ll}`;config;type="simple";intersectionObserver;scrollTop=0;height=0;scrollHeight=0;windowSpecs={top:0,bottom:0};root;contentContainer;resizeObserver;observers=new Map;visibleInstances=new Map;visibleInstancesDirty=!1;instancesChanged=new Set;scrollDirty=!0;heightDirty=!0;scrollHeightDirty=!0;renderedObservers=0;connectQueue=new Map;constructor(t){this.config={...al,...t}}setup(t,n){if(this.root==null){this.root=t,this.resizeObserver=new ResizeObserver(this.handleContainerResize),this.intersectionObserver=new IntersectionObserver(this.handleIntersectionChange,{root:this.root,threshold:sl,rootMargin:`${this.config.intersectionObserverMargin}px 0px ${this.config.intersectionObserverMargin}px 0px`}),t instanceof Document?this.setupWindow():this.setupElement(n),window.__INSTANCE=this,window.__TOGGLE=()=>{re.__STOP?(re.__STOP=!1,(this.getScrollContainerElement()??window).scrollTo({top:re.__lastScrollPosition}),K(this.computeRenderRangeAndEmit)):(re.__lastScrollPosition=this.getScrollTop(),re.__STOP=!0)};for(const[i,r]of this.connectQueue.entries())this.connect(i,r);this.connectQueue.clear(),this.markDOMDirty(),K(this.computeRenderRangeAndEmit)}}instanceChanged(t,n){this.instancesChanged.add(t),n&&this.markDOMDirty(),K(this.computeRenderRangeAndEmit)}getWindowSpecs(){return this.windowSpecs.top===0&&this.windowSpecs.bottom===0&&(this.windowSpecs=Wt({scrollTop:this.getScrollTop(),height:this.getHeight(),scrollHeight:this.getScrollHeight(),overscrollSize:this.config.overscrollSize})),this.windowSpecs}isInstanceVisible(t,n){const i=this.getScrollTop(),r=this.getHeight(),o=this.config.intersectionObserverMargin,s=i-o,l=i+r+o;return!(tl)}handleContainerResize=t=>{if(this.root==null)return;let n=!1;for(const i of t){const r=i.borderBoxSize[0].blockSize;this.root instanceof Document?r!==this.scrollHeight&&(this.scrollHeightDirty=!0,n=!0,this.config.resizeDebugging&&(console.log("Virtualizer: content size change",this.__id,{sizeChange:r-lt,newSize:r}),lt=r)):i.target===this.root?r!==this.height&&(this.heightDirty=!0,n=!0):i.target===this.contentContainer&&(this.scrollHeightDirty=!0,n=!0,this.config.resizeDebugging&&(console.log("Virtualizer: scroller size change",this.__id,{sizeChange:r-lt,newSize:r}),lt=r))}n&&K(this.computeRenderRangeAndEmit)};setupWindow(){if(this.root==null||!(this.root instanceof Document))throw new Error("Virtualizer.setupWindow: Invalid setup method");window.addEventListener("scroll",this.handleWindowScroll,{passive:!0}),window.addEventListener("resize",this.handleWindowResize,{passive:!0}),this.resizeObserver?.observe(this.root.documentElement)}setupElement(t){if(this.root==null||this.root instanceof Document)throw new Error("Virtualizer.setupElement: Invalid setup method");this.root.addEventListener("scroll",this.handleElementScroll,{passive:!0}),this.resizeObserver?.observe(this.root),t??=this.root.firstElementChild??void 0,t instanceof HTMLElement&&(this.contentContainer=t,this.resizeObserver?.observe(t))}cleanUp(){this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.intersectionObserver?.disconnect(),this.intersectionObserver=void 0,this.root?.removeEventListener("scroll",this.handleElementScroll),window.removeEventListener("scroll",this.handleWindowScroll),window.removeEventListener("resize",this.handleWindowResize),this.root=void 0,this.contentContainer=void 0,this.observers.clear(),this.visibleInstances.clear(),this.instancesChanged.clear(),this.connectQueue.clear(),this.visibleInstancesDirty=!1,this.windowSpecs={top:0,bottom:0},this.scrollTop=0,this.height=0,this.scrollHeight=0}getOffsetInScrollContainer(t){return this.getScrollTop()+Ue(t,this.getScrollContainerElement())}connect(t,n){if(this.observers.has(t))throw new Error("Virtualizer.connect: instance is already connected...");return this.intersectionObserver==null?this.connectQueue.set(t,n):(this.intersectionObserver.observe(t),this.observers.set(t,n),this.instancesChanged.add(n),this.markDOMDirty(),K(this.computeRenderRangeAndEmit)),()=>this.disconnect(t)}disconnect(t){const n=this.observers.get(t);this.connectQueue.delete(t),n!=null&&(this.intersectionObserver?.unobserve(t),this.observers.delete(t),this.visibleInstances.delete(t)&&(this.visibleInstancesDirty=!0),this.markDOMDirty(),K(this.computeRenderRangeAndEmit))}handleWindowResize=()=>{re.__STOP||window.innerHeight===this.height||(this.heightDirty=!0,K(this.computeRenderRangeAndEmit))};handleWindowScroll=()=>{re.__STOP||this.root==null||!(this.root instanceof Document)||(this.scrollDirty=!0,K(this.computeRenderRangeAndEmit))};handleElementScroll=()=>{re.__STOP||this.root==null||this.root instanceof Document||(this.scrollDirty=!0,K(this.computeRenderRangeAndEmit))};computeRenderRangeAndEmit=()=>{if(re.__STOP)return;const t=this.heightDirty||this.scrollHeightDirty;if(!this.scrollDirty&&!this.scrollHeightDirty&&!this.heightDirty&&this.renderedObservers===this.observers.size&&!this.visibleInstancesDirty&&this.instancesChanged.size===0)return;let n=this.instancesChanged.size>0;if(this.instancesChanged.size===0){const o=Wt({scrollTop:this.getScrollTop(),height:this.getHeight(),scrollHeight:this.getScrollHeight(),overscrollSize:this.config.overscrollSize});if(!t&&rl(this.windowSpecs,o)&&this.renderedObservers===this.observers.size&&!this.visibleInstancesDirty)return;this.windowSpecs=o}this.visibleInstancesDirty=!1,this.renderedObservers=this.observers.size;const i=this.getScrollAnchor(this.height),r=new Set;for(const o of t?this.observers.values():this.visibleInstances.values())o.onRender(t)&&r.add(o);for(const o of this.instancesChanged)r.has(o)||o.onRender(t)&&r.add(o);this.scrollFix(i);for(const o of r)o.reconcileHeights();n||=this.instancesChanged.size>0,n&&this.markDOMDirty(),(n||t)&&K(this.computeRenderRangeAndEmit),r.clear(),this.instancesChanged.clear()};scrollFix(t){if(t==null)return;const n=this.getScrollContainerElement(),{lineIndex:i,lineOffset:r,fileElement:o,fileOffset:s,fileTypeOffset:l}=t;if(i!=null&&r!=null){const d=o.shadowRoot?.querySelector(`[data-line][data-line-index="${i}"]`);if(d instanceof HTMLElement){const h=Ue(d,n);if(h!==r){const c=h-r;this.applyScrollFix(c)}return}}const a=Ue(o,n);if(l==="top")a!==s&&this.applyScrollFix(a-s);else{const d=a+o.getBoundingClientRect().height;d!==s&&this.applyScrollFix(d-s)}}applyScrollFix(t){this.root==null||this.root instanceof Document?window.scrollTo({top:window.scrollY+t,behavior:"instant"}):this.root.scrollTo({top:this.root.scrollTop+t,behavior:"instant"}),this.markDOMDirty()}getScrollAnchor(t){const n=this.getScrollContainerElement();let i;for(const[r]of this.visibleInstances.entries()){const o=Ue(r,n),s=o+r.offsetHeight;let l,a;s<=0?(l=s,a="bottom"):(l=o,a="top");let d,h;if(s>0&&o=0&&(i.fileOffset<0||li.fileOffset))&&(c=!0),c&&(i={fileElement:r,fileTypeOffset:a,fileOffset:l,lineIndex:d,lineOffset:h})}return i}handleIntersectionChange=t=>{this.scrollDirty=!0;for(const{target:n,isIntersecting:i}of t){if(!(n instanceof HTMLElement))throw new Error("Virtualizer.handleIntersectionChange: target not an HTMLElement");const r=this.observers.get(n);r!=null&&(i&&!this.visibleInstances.has(n)?(r.setVisibility(!0),this.visibleInstances.set(n,r),this.visibleInstancesDirty=!0):!i&&this.visibleInstances.has(n)&&(r.setVisibility(!1),this.visibleInstances.delete(n),this.visibleInstancesDirty=!0))}this.visibleInstancesDirty&&K(this.computeRenderRangeAndEmit)};getScrollTop(){if(!this.scrollDirty)return this.scrollTop;this.scrollDirty=!1;let t=this.root==null?0:this.root instanceof Document?window.scrollY:this.root.scrollTop;return t=Math.max(0,Math.min(t,this.getScrollHeight()-this.getHeight())),this.scrollTop=t,t}getScrollHeight(){return this.scrollHeightDirty?(this.scrollHeightDirty=!1,this.scrollHeight=this.root==null?0:this.root instanceof Document?this.root.documentElement.scrollHeight:this.root.scrollHeight,this.scrollHeight):this.scrollHeight}getHeight(){return this.heightDirty?(this.heightDirty=!1,this.height=this.root==null?0:this.root instanceof Document?globalThis.innerHeight:this.root.getBoundingClientRect().height,this.height):this.height}markDOMDirty(){this.scrollDirty=!0,this.scrollHeightDirty=!0,this.heightDirty=!0}getScrollContainerElement(){return this.root==null||this.root instanceof Document?void 0:this.root}};function Ue(e,t){const n=e.getBoundingClientRect(),i=t?.getBoundingClientRect().top??0;return n.top-i}function Rl(e){const t=[];for(const n of e){const i=Ce.get(n);if(i==null)throw new Error(`getResolvedLanguages: ${n} is not resolved. Please resolve languages before calling getResolvedLanguages`);t.push(i)}return t}function Al(e){for(const t of Array.isArray(e)?e:[e])if(!Ce.has(t))return!1;return!0}function Hl(e,t,n=[]){if(e==="text"||e==="ansi")throw new Error("registerCustomLanguage: 'text' and 'ansi' are reserved language names");if(Gt.has(e)){console.error(`registerCustomLanguage: lang: ${e} is already registered`);return}Gt.set(e,t);for(const i of n)Po(i,e)}async function Ml(e){const t=[],n=[];for(const i of e){if(i==="text"||i==="ansi")continue;const r=Pi(i)??Di(i);"then"in r?n.push(r):t.push(r)}return n.length>0&&await Promise.all(n).then(i=>{for(const r of i){if(r==null)throw new Error("resolvedLanguages: unable to resolve language");t.push(r)}}),t}function Dl(e){return Y.getResolvedThemes(e)}function Pl(e,t,n=!1){const i=Ar({name:e,variablePrefix:_("global"),variableDefaults:t,fontStyle:n});Pr(e,()=>Promise.resolve(i))}async function Ol(e){for(const n of e)Oi(n);const t=await Y.resolveThemes(e);for(let n=0;n0&&(dt(i,t,"trailing"),_t(i,n)),i=void 0);const l=parseInt(s[3]),a=parseInt(s[1]),d=parseInt(s[4]??"1"),h=parseInt(s[2]??"1");isNaN(l)||isNaN(a)||isNaN(d)||isNaN(h)?n.push(o):i={additionStart:l,deletionStart:a,additionCount:0,deletionCount:0,hunkLines:[],contextLines:[]};continue}if(i==null){n.push(o);continue}if(o.startsWith(" "))i.contextLines.push(o);else if(o!==""){if(i.hunkLines.length>0&&i.contextLines.length>t*2){const l=i.contextLines.length-t*2,a=i.contextLines.slice(-t);dt(i,t,"trailing");const{additionCount:d,deletionCount:h}=i;_t(i,n),i={additionStart:i.additionStart+d+l,deletionStart:i.deletionStart+h+l,deletionCount:0,additionCount:0,contextLines:a,hunkLines:[]}}dt(i,t,i.hunkLines.length===0?"leading":"before-change"),i.hunkLines.push(o),o.startsWith("+")?i.additionCount+=1:o.startsWith("-")&&(i.deletionCount+=1)}}i!=null&&i.hunkLines.length>0&&(dt(i,t,"trailing"),_t(i,n));const r=n.join(` +`);return e.endsWith(` +`)?`${r} +`:r}function dt(e,t,n){if(n==="leading"&&e.contextLines.length>t){const i=e.contextLines.length-t;e.contextLines.splice(0,i),e.additionStart+=i,e.deletionStart+=i}return n==="trailing"&&e.contextLines.length>t&&(e.contextLines.length=t),e.contextLines.length>0&&(e.hunkLines.push(...e.contextLines),e.additionCount+=e.contextLines.length,e.deletionCount+=e.contextLines.length,e.contextLines.length=0),e}function _t(e,t){t.push(`@@ -${yi(e.deletionStart,e.deletionCount)} +${yi(e.additionStart,e.additionCount)} @@`),t.push(...e.hunkLines)}function yi(e,t){return t===1?`${e}`:`${e},${t}`}export{Zr as ALTERNATE_FILE_NAMES_GIT,ft as AttachedLanguages,gt as AttachedThemes,Kr as COMMIT_METADATA_SPLIT,to as CORE_CSS_ATTRIBUTE,sn as CUSTOM_HEADER_SLOT_ID,si as CodeToTokenTransformStream,wl as CodeView,Pe as DEFAULT_CODE_VIEW_FILE_METRICS,ro as DEFAULT_CODE_VIEW_LAYOUT,bl as DEFAULT_COLLAPSED_CONTEXT_THRESHOLD,so as DEFAULT_EXPANDED_REGION,Re as DEFAULT_RENDER_RANGE,oo as DEFAULT_SMOOTH_SCROLL_SETTINGS,P as DEFAULT_THEMES,io as DEFAULT_TOKENIZE_MAX_LENGTH,an as DEFAULT_VIRTUAL_FILE_METRICS,qr as DIFFS_DEVELOPMENT_BUILD,Ti as DIFFS_SCROLLBAR_GUTTER_MEASURED_PROPERTY,no as DIFFS_SCROLLBAR_MEASURE_ATTRIBUTE,xi as DIFFS_TAG_NAME,lr as DiffHunksRenderer,Ei as EMPTY_RENDER_RANGE,Ne as EXTENSION_TO_FILE_FORMAT,Qr as FILENAME_HEADER_REGEX,Jr as FILENAME_HEADER_REGEX_GIT,ul as FILE_CONTEXT_BLOB,ss as File,dr as FileDiff,Qo as FileRenderer,Tl as FileStream,Li as GIT_DIFF_FILE_BREAK_REGEX,on as HEADER_METADATA_SLOT_ID,rn as HEADER_PREFIX_SLOT_ID,Yr as HUNK_HEADER,eo as INDEX_LINE_METADATA,Ai as InteractionManager,pl as MERGE_CONFLICT_BASE_MARKER_REGEX,ml as MERGE_CONFLICT_END_MARKER_REGEX,gl as MERGE_CONFLICT_SEPARATOR_MARKER_REGEX,fl as MERGE_CONFLICT_START_MARKER_REGEX,Gt as RegisteredCustomLanguages,Hi as ResizeManager,Ce as ResolvedLanguages,Tt as ResolvingLanguages,Xr as SPLIT_WITH_NEWLINES,Gi as SVGSpriteSheet,Ms as ScrollSyncManager,Aa as ShikiStreamTokenizer,ki as THEME_CSS_ATTRIBUTE,cl as UNIFIED_DIFF_FILE_BREAK_REGEX,wi as UNSAFE_CSS_ATTRIBUTE,El as UnresolvedFile,ps as VirtualizedFile,la as VirtualizedFileDiff,Il as Virtualizer,Xs as areDiffLineAnnotationsEqual,Fe as areDiffRenderOptionsEqual,_e as areDiffTargetsEqual,Oe as areFileRenderOptionsEqual,se as areFilesEqual,Qs as areHunkDataEqual,pt as areLanguagesAttached,Jo as areLineAnnotationsEqual,Ae as areObjectsEqual,ln as areOptionsEqual,ji as arePrePropertiesEqual,yt as areRenderRangesEqual,Vt as areSelectionsEqual,We as areThemesAttached,Me as areThemesEqual,rl as areVirtualWindowSpecsEqual,Nl as areWorkerStatsEqual,An as attachResolvedLanguages,Hn as attachResolvedThemes,ye as cleanLastNewline,ko as cleanUpResolvedLanguages,wo as cleanUpResolvedThemes,Kl as codeToHtml,jt as createAnnotationElement,un as createAnnotationWrapperNode,Ar as createCSSVariablesTheme,$n as createDiffSpanDecoration,nt as createEmptyRowBuffer,zi as createFileHeaderElement,G as createGutterGap,Ri as createGutterItem,qi as createGutterUtilityContentNode,co as createGutterUtilityElement,we as createGutterWrapper,R as createHastElement,ut as createIconElement,it as createNoNewlineElement,Ui as createPreElement,Do as createPreWrapperProperties,Fl as createRowNodes,Le as createSeparator,Ha as createSpanFromToken,zl as createStyleElement,V as createTextNodeElement,Ul as createThemeStyleElement,_i as createTransformerWithState,Ki as createUnsafeCSSStyleNode,Wt as createWindowFromScrollPosition,ao as dequeueRender,U as detachString,Bl as diffAcceptRejectHunk,yl as disposeHighlighter,ho as findCodeElement,_ as formatCSSVariablePrefix,kl as getCustomExtensionsMap,Ll as getCustomExtensionsVersion,X as getFiletypeFromFileName,Fi as getHighlighterIfLoaded,hn as getHighlighterOptions,cn as getHighlighterThemeStyles,Ds as getHunkSeparatorSlotName,Ao as getIconForType,pe as getLineAnnotationName,_l as getLineEndingType,qt as getLineNodes,Ge as getOrCreateCodeNode,Rl as getResolvedLanguages,Pi as getResolvedOrResolveLanguage,Eo as getResolvedOrResolveTheme,Dl as getResolvedThemes,St as getSharedHighlighter,$l as getSingularPatch,dn as getThemes,Ps as getTotalLineCountFromHunks,il as getUnresolvedDiffHunksRendererOptions,Al as hasResolvedLanguages,Ro as hasResolvedThemes,Os as isDefaultRenderRange,vl as isHighlighterLoaded,Io as isHighlighterLoading,Cl as isHighlighterNull,Mi as isWorkerContext,Zt as parseDiffFromFile,Vl as parseLineType,xs as parsePatchFiles,Qi as patchScrollbarGutterSize,qe as pluckInteractionOptions,lo as prefersReducedMotion,Sl as preloadHighlighter,Ji as prerenderHTMLIfNecessary,ys as processFile,Oo as processLine,Cs as processPatch,rt as pushOrJoinSpan,K as queueRender,Pl as registerCustomCSSVariableTheme,Hl as registerCustomLanguage,Pr as registerCustomTheme,Zi as releaseStringDetachBuffer,Ws as renderDiffWithHighlighter,Ko as renderFileWithHighlighter,xl as replaceCustomExtensions,Oa as resolveConflict,Di as resolveLanguage,Ml as resolveLanguages,pr as resolveRegion,To as resolveTheme,Ol as resolveThemes,Po as setCustomExtension,Wl as setLanguageOverride,mn as setPreNodeProperties,Gl as trimPatchContext,ts as wrapCoreCSS,gn as wrapThemeCSS,pn as wrapUnsafeCSS}; diff --git a/apps/kimi-code/dist-web/assets/index-CWMEBP78.js b/apps/kimi-code/dist-web/assets/index-CWMEBP78.js new file mode 100644 index 0000000000..5dfc859550 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/index-CWMEBP78.js @@ -0,0 +1,151 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/angular-html-DA-rfuFy.js","assets/html-pp8916En.js","assets/javascript-wDzz0qaB.js","assets/css-CLj8gQPS.js","assets/angular-ts-BrjP3tb8.js","assets/scss-D5BDwBP9.js","assets/apl-CORt7UWP.js","assets/xml-sdJ4AIDG.js","assets/java-CylS5w8V.js","assets/json-Cp-IABpG.js","assets/astro-HNnZUWAn.js","assets/typescript-BPQ3VLAy.js","assets/postcss-CXtECtnM.js","assets/tsx-COt5Ahok.js","assets/blade-2xfisSek.js","assets/html-derivative-DlHx6ybY.js","assets/sql-CRqJ_cUM.js","assets/bsl-BO_Y6i37.js","assets/sdbl-DVxCFoDh.js","assets/cairo-KRGpt6FW.js","assets/python-B6aJPvgy.js","assets/cobol-nBiQ_Alo.js","assets/coffee-Ch7k5sss.js","assets/cpp-UfJy6YNI.js","assets/regexp-CDVJQ6XC.js","assets/glsl-DplSGwfg.js","assets/c-BIGW1oBm.js","assets/crystal-DGywbUpC.js","assets/shellscript-Yzrsuije.js","assets/edge-FbVlp4U3.js","assets/elixir-CkH2-t6x.js","assets/elm-DbKCFpqz.js","assets/erb-Dm6A9KJ5.js","assets/ruby-DyJCeAvU.js","assets/haml-D5jkg6IW.js","assets/graphql-ChdNCCLP.js","assets/jsx-g9-lgVsj.js","assets/lua-BaeVxFsk.js","assets/yaml-Buea-lGh.js","assets/erlang-DsQrWhSR.js","assets/markdown-Cvjx9yec.js","assets/fortran-fixed-form-CkoXwp7k.js","assets/fortran-free-form-BxgE0vQu.js","assets/fsharp-CXgrBDvD.js","assets/gdresource-BOOCDP_w.js","assets/gdshader-DkwncUOv.js","assets/gdscript-C5YyOfLZ.js","assets/git-commit-F4YmCXRG.js","assets/diff-D97Zzqfu.js","assets/git-rebase-r7XF79zn.js","assets/glimmer-js-ByusRIyA.js","assets/glimmer-ts-BfAWNZQY.js","assets/hack-DbPARsA_.js","assets/handlebars-BpdQsYii.js","assets/http-jrhK8wxY.js","assets/hurl-irOxFIW8.js","assets/csv-fuZLfV_i.js","assets/hxml-Bvhsp5Yf.js","assets/haxe-CzTSHFRz.js","assets/jinja-f2NsQr07.js","assets/jison-wvAkD_A8.js","assets/julia-D7OTSIA_.js","assets/r-Dspwwk_N.js","assets/just-CUsbIsdP.js","assets/perl-B9cMNwum.js","assets/latex-CaSxy8MP.js","assets/tex-idrVyKtj.js","assets/liquid-C0sCDyMI.js","assets/marko-DjSrsDqO.js","assets/less-B1dDrJ26.js","assets/mdc-DTYItulj.js","assets/nextflow-C-mBbutL.js","assets/nextflow-groovy-vE_lwT2v.js","assets/nginx-BpAMiNFr.js","assets/nim-BIad80T-.js","assets/php-Csjmro_R.js","assets/pug-DKIMFp6K.js","assets/qml-3beO22l8.js","assets/razor-BjBPvh-w.js","assets/csharp-DSvCPggb.js","assets/rst-CpCqk9r5.js","assets/cmake-D1j8_8rp.js","assets/sas-DEy46yEz.js","assets/shaderlab-Dg9Lc6iA.js","assets/hlsl-D3lLCCz7.js","assets/shellsession-BADoaaVG.js","assets/soy-8wufbnw4.js","assets/sparql-rVzFXLq3.js","assets/turtle-BsS91CYL.js","assets/stata-DI20mbqo.js","assets/surrealql-Bq5Q-fJD.js","assets/svelte-Cy7k_4gC.js","assets/templ-DhtptRzy.js","assets/go-C27-OAKa.js","assets/ts-tags-D351s5mN.js","assets/twig-CW1WmMYd.js","assets/vue-D2xRrEX4.js","assets/vue-html-AaS7Mt5G.js","assets/vue-vine-BoDAl6tE.js","assets/stylus-BEDo0Tqx.js","assets/xsl-CtQFsRM5.js"])))=>i.map(i=>d[i]); +import{bR as l,cE as En,cF as _t,cG as bn,cH as vn,cI as yt,cJ as x,cK as V,cL as Pe,cM as J,cN as wn,cO as it,cP as An,cQ as Tn,cR as Rr,cS as Cn,cT as Ln,cU as xr,cV as Vr,cW as Nr,cX as $r,cY as Mr,cZ as Ur}from"./index-Dnz6Zudc.js";const Br=["area","base","basefont","bgsound","br","col","command","embed","frame","hr","image","img","input","keygen","link","meta","param","source","track","wbr"];class Ee{constructor(n,t,r){this.normal=t,this.property=n,r&&(this.space=r)}}Ee.prototype.normal={};Ee.prototype.property={};Ee.prototype.space=void 0;function kn(e,n){const t={},r={};for(const o of e)Object.assign(t,o.property),Object.assign(r,o.normal);return new Ee(t,r,n)}function at(e){return e.toLowerCase()}class N{constructor(n,t){this.attribute=t,this.property=n}}N.prototype.attribute="";N.prototype.booleanish=!1;N.prototype.boolean=!1;N.prototype.commaOrSpaceSeparated=!1;N.prototype.commaSeparated=!1;N.prototype.defined=!1;N.prototype.mustUseProperty=!1;N.prototype.number=!1;N.prototype.overloadedBoolean=!1;N.prototype.property="";N.prototype.spaceSeparated=!1;N.prototype.space=void 0;let Fr=0;const w=ne(),k=ne(),st=ne(),h=ne(),T=ne(),ee=ne(),$=ne();function ne(){return 2**++Fr}const lt=Object.freeze(Object.defineProperty({__proto__:null,boolean:w,booleanish:k,commaOrSpaceSeparated:$,commaSeparated:ee,number:h,overloadedBoolean:st,spaceSeparated:T},Symbol.toStringTag,{value:"Module"})),qe=Object.keys(lt);class Et extends N{constructor(n,t,r,o){let i=-1;if(super(n,t),Ft(this,"space",o),typeof r=="number")for(;++i4&&t.slice(0,4)==="data"&&zr.test(n)){if(n.charAt(4)==="-"){const i=n.slice(5).replace(Gt,Xr);r="data"+i.charAt(0).toUpperCase()+i.slice(1)}else{const i=n.slice(4);if(!Gt.test(i)){let a=i.replace(jr,qr);a.charAt(0)!=="-"&&(a="-"+a),n="data"+a}}o=Et}return new o(r,n)}function qr(e){return"-"+e.toLowerCase()}function Xr(e){return e.charAt(1).toUpperCase()}const Jr=kn([In,Gr,Sn,Dn,Rn],"html"),xn=kn([In,Hr,Sn,Dn,Rn],"svg"),Ht={}.hasOwnProperty;function Qr(e,n){const t=n||{};function r(o,...i){let a=r.invalid;const s=r.handlers;if(o&&Ht.call(o,e)){const u=String(o[e]);a=Ht.call(s,u)?s[u]:r.unknown}if(a)return a.call(this,o,...i)}return r.handlers=t.handlers||{},r.invalid=t.invalid,r.unknown=t.unknown,r}const Zr=/["&'<>`]/g,Kr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Yr=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,eo=/[|\\{}()[\]^$+*?.]/g,jt=new WeakMap;function to(e,n){if(e=e.replace(n.subset?no(n.subset):Zr,r),n.subset||n.escapeOnly)return e;return e.replace(Kr,t).replace(Yr,r);function t(o,i,a){return n.format((o.charCodeAt(0)-55296)*1024+o.charCodeAt(1)-56320+65536,a.charCodeAt(i+2),n)}function r(o,i,a){return n.format(o.charCodeAt(0),a.charCodeAt(i+1),n)}}function no(e){let n=jt.get(e);return n||(n=ro(e),jt.set(e,n)),n}function ro(e){const n=[];let t=-1;for(;++t",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",permil:"‰",lsaquo:"‹",rsaquo:"›",euro:"€"},uo=["cent","copy","divide","gt","lt","not","para","times"],Vn={}.hasOwnProperty,ut={};let we;for(we in Xe)Vn.call(Xe,we)&&(ut[Xe[we]]=we);const co=/[^\dA-Za-z]/;function po(e,n,t,r){const o=String.fromCharCode(e);if(Vn.call(ut,o)){const i=ut[o],a="&"+i;return t&&lo.includes(i)&&!uo.includes(i)&&(!r||n&&n!==61&&co.test(String.fromCharCode(n)))?a:a+";"}return""}function mo(e,n,t){let r=io(e,n,t.omitOptionalSemicolons),o;if((t.useNamedReferences||t.useShortestReferences)&&(o=po(e,n,t.omitOptionalSemicolons,t.attribute)),(t.useShortestReferences||!o)&&t.useShortestReferences){const i=so(e,n,t.omitOptionalSemicolons);i.length|^->||--!>|"],ho=["<",">"];function _o(e,n,t,r){return r.settings.bogusComments?"":"";function o(i){return ue(i,Object.assign({},r.settings.characterReferences,{subset:ho}))}}function yo(e,n,t,r){return""}function zt(e,n){const t=String(e);if(typeof n!="string")throw new TypeError("Expected character");let r=0,o=t.indexOf(n);for(;o!==-1;)r++,o=t.indexOf(n,o+n.length);return r}function Eo(e,n){const t=n||{};return(e[e.length-1]===""?[...e,""]:e).join((t.padRight?" ":"")+","+(t.padLeft===!1?"":" ")).trim()}function bo(e){return e.join(" ").trim()}const vo=/[ \t\n\f\r]/g;function bt(e){return typeof e=="object"?e.type==="text"?Wt(e.value):!1:Wt(e)}function Wt(e){return e.replace(vo,"")===""}const O=$n(1),Nn=$n(-1),wo=[];function $n(e){return n;function n(t,r,o){const i=t?t.children:wo;let a=(r||0)+e,s=i[a];if(!o)for(;s&&bt(s);)a+=e,s=i[a];return s}}const Ao={}.hasOwnProperty;function Mn(e){return n;function n(t,r,o){return Ao.call(e,t.tagName)&&e[t.tagName](t,r,o)}}const vt=Mn({body:Co,caption:Je,colgroup:Je,dd:Po,dt:Io,head:Je,html:To,li:ko,optgroup:Oo,option:So,p:Lo,rp:qt,rt:qt,tbody:Ro,td:Xt,tfoot:xo,th:Xt,thead:Do,tr:Vo});function Je(e,n,t){const r=O(t,n,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&bt(r.value.charAt(0)))}function To(e,n,t){const r=O(t,n);return!r||r.type!=="comment"}function Co(e,n,t){const r=O(t,n);return!r||r.type!=="comment"}function Lo(e,n,t){const r=O(t,n);return r?r.type==="element"&&(r.tagName==="address"||r.tagName==="article"||r.tagName==="aside"||r.tagName==="blockquote"||r.tagName==="details"||r.tagName==="div"||r.tagName==="dl"||r.tagName==="fieldset"||r.tagName==="figcaption"||r.tagName==="figure"||r.tagName==="footer"||r.tagName==="form"||r.tagName==="h1"||r.tagName==="h2"||r.tagName==="h3"||r.tagName==="h4"||r.tagName==="h5"||r.tagName==="h6"||r.tagName==="header"||r.tagName==="hgroup"||r.tagName==="hr"||r.tagName==="main"||r.tagName==="menu"||r.tagName==="nav"||r.tagName==="ol"||r.tagName==="p"||r.tagName==="pre"||r.tagName==="section"||r.tagName==="table"||r.tagName==="ul"):!t||!(t.type==="element"&&(t.tagName==="a"||t.tagName==="audio"||t.tagName==="del"||t.tagName==="ins"||t.tagName==="map"||t.tagName==="noscript"||t.tagName==="video"))}function ko(e,n,t){const r=O(t,n);return!r||r.type==="element"&&r.tagName==="li"}function Io(e,n,t){const r=O(t,n);return!!(r&&r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd"))}function Po(e,n,t){const r=O(t,n);return!r||r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd")}function qt(e,n,t){const r=O(t,n);return!r||r.type==="element"&&(r.tagName==="rp"||r.tagName==="rt")}function Oo(e,n,t){const r=O(t,n);return!r||r.type==="element"&&r.tagName==="optgroup"}function So(e,n,t){const r=O(t,n);return!r||r.type==="element"&&(r.tagName==="option"||r.tagName==="optgroup")}function Do(e,n,t){const r=O(t,n);return!!(r&&r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot"))}function Ro(e,n,t){const r=O(t,n);return!r||r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot")}function xo(e,n,t){return!O(t,n)}function Vo(e,n,t){const r=O(t,n);return!r||r.type==="element"&&r.tagName==="tr"}function Xt(e,n,t){const r=O(t,n);return!r||r.type==="element"&&(r.tagName==="td"||r.tagName==="th")}const No=Mn({body:Uo,colgroup:Bo,head:Mo,html:$o,tbody:Fo});function $o(e){const n=O(e,-1);return!n||n.type!=="comment"}function Mo(e){const n=new Set;for(const r of e.children)if(r.type==="element"&&(r.tagName==="base"||r.tagName==="title")){if(n.has(r.tagName))return!1;n.add(r.tagName)}const t=e.children[0];return!t||t.type==="element"}function Uo(e){const n=O(e,-1,!0);return!n||n.type!=="comment"&&!(n.type==="text"&&bt(n.value.charAt(0)))&&!(n.type==="element"&&(n.tagName==="meta"||n.tagName==="link"||n.tagName==="script"||n.tagName==="style"||n.tagName==="template"))}function Bo(e,n,t){const r=Nn(t,n),o=O(e,-1,!0);return t&&r&&r.type==="element"&&r.tagName==="colgroup"&&vt(r,t.children.indexOf(r),t)?!1:!!(o&&o.type==="element"&&o.tagName==="col")}function Fo(e,n,t){const r=Nn(t,n),o=O(e,-1);return t&&r&&r.type==="element"&&(r.tagName==="thead"||r.tagName==="tbody")&&vt(r,t.children.indexOf(r),t)?!1:!!(o&&o.type==="element"&&o.tagName==="tr")}const Ae={name:[[` +\f\r &/=>`.split(""),` +\f\r "&'/=>\``.split("")],[`\0 +\f\r "&'/<=>`.split(""),`\0 +\f\r "&'/<=>\``.split("")]],unquoted:[[` +\f\r &>`.split(""),`\0 +\f\r "&'<=>\``.split("")],[`\0 +\f\r "&'<=>\``.split(""),`\0 +\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Go(e,n,t,r){const o=r.schema,i=o.space==="svg"?!1:r.settings.omitOptionalTags;let a=o.space==="svg"?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase());const s=[];let u;o.space==="html"&&e.tagName==="svg"&&(r.schema=xn);const c=Ho(r,e.properties),p=r.all(o.space==="html"&&e.tagName==="template"?e.content:e);return r.schema=o,p&&(a=!1),(c||!i||!No(e,n,t))&&(s.push("<",e.tagName,c?" "+c:""),a&&(o.space==="svg"||r.settings.closeSelfClosing)&&(u=c.charAt(c.length-1),(!r.settings.tightSelfClosing||u==="/"||u&&u!=='"'&&u!=="'")&&s.push(" "),s.push("/")),s.push(">")),s.push(p),!a&&(!i||!vt(e,n,t))&&s.push(""),s.join("")}function Ho(e,n){const t=[];let r=-1,o;if(n){for(o in n)if(n[o]!==null&&n[o]!==void 0){const i=jo(e,o,n[o]);i&&t.push(i)}}for(;++rzt(t,e.alternative)&&(a=e.alternative),s=a+ue(t,Object.assign({},e.settings.characterReferences,{subset:(a==="'"?Ae.single:Ae.double)[o][i],attribute:!0}))+a),u+(s&&"="+s))}const zo=["<","&"];function Un(e,n,t,r){return t&&t.type==="element"&&(t.tagName==="script"||t.tagName==="style")?e.value:ue(e.value,Object.assign({},r.settings.characterReferences,{subset:zo}))}function Wo(e,n,t,r){return r.settings.allowDangerousHtml?e.value:Un(e,n,t,r)}function qo(e,n,t,r){return r.all(e)}const Xo=Qr("type",{invalid:Jo,unknown:Qo,handlers:{comment:_o,doctype:yo,element:Go,raw:Wo,root:qo,text:Un}});function Jo(e){throw new Error("Expected node, not `"+e+"`")}function Qo(e){const n=e;throw new Error("Cannot compile unknown node `"+n.type+"`")}const Zo={},Ko={},Yo=[];function ei(e,n){const t=n||Zo,r=t.quote||'"',o=r==='"'?"'":'"';if(r!=='"'&&r!=="'")throw new Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:ti,all:ni,settings:{omitOptionalTags:t.omitOptionalTags||!1,allowParseErrors:t.allowParseErrors||!1,allowDangerousCharacters:t.allowDangerousCharacters||!1,quoteSmart:t.quoteSmart||!1,preferUnquoted:t.preferUnquoted||!1,tightAttributes:t.tightAttributes||!1,upperDoctype:t.upperDoctype||!1,tightDoctype:t.tightDoctype||!1,bogusComments:t.bogusComments||!1,tightCommaSeparatedLists:t.tightCommaSeparatedLists||!1,tightSelfClosing:t.tightSelfClosing||!1,collapseEmptyAttributes:t.collapseEmptyAttributes||!1,allowDangerousHtml:t.allowDangerousHtml||!1,voids:t.voids||Br,characterReferences:t.characterReferences||Ko,closeSelfClosing:t.closeSelfClosing||!1,closeEmptyElements:t.closeEmptyElements||!1},schema:t.space==="svg"?xn:Jr,quote:r,alternative:o}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function ti(e,n,t){return Xo(e,n,t,this)}function ni(e){const n=[],t=e&&e.children||Yo;let r=-1;for(;++r{let t={};for(var r in e)ct(t,r,{get:e[r],enumerable:!0});return ct(t,Symbol.toStringTag,{value:"Module"}),t},ai=(e,n,t,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(var o=oi(n),i=0,a=o.length,s;in[u]).bind(null,s),enumerable:!(r=ri(n,s))||r.enumerable});return e},Bn=(e,n,t)=>(ai(e,n,"default"),t);const be=[{id:"abap",name:"ABAP",import:(()=>l(()=>import("./abap-BdImnpbu.js"),[]))},{id:"actionscript-3",name:"ActionScript",import:(()=>l(()=>import("./actionscript-3-CoDkCxhg.js"),[]))},{id:"ada",name:"Ada",import:(()=>l(()=>import("./ada-bCR0ucgS.js"),[]))},{id:"angular-html",name:"Angular HTML",import:(()=>l(()=>import("./angular-html-DA-rfuFy.js").then(e=>e.f),__vite__mapDeps([0,1,2,3])))},{id:"angular-ts",name:"Angular TypeScript",import:(()=>l(()=>import("./angular-ts-BrjP3tb8.js"),__vite__mapDeps([4,0,1,2,3,5])))},{id:"apache",name:"Apache Conf",import:(()=>l(()=>import("./apache-Pmp26Uib.js"),[]))},{id:"apex",name:"Apex",import:(()=>l(()=>import("./apex-Dqspr-GT.js"),[]))},{id:"apl",name:"APL",import:(()=>l(()=>import("./apl-CORt7UWP.js"),__vite__mapDeps([6,1,2,3,7,8,9])))},{id:"applescript",name:"AppleScript",import:(()=>l(()=>import("./applescript-Co6uUVPk.js"),[]))},{id:"ara",name:"Ara",import:(()=>l(()=>import("./ara-BRHolxvo.js"),[]))},{id:"asciidoc",name:"AsciiDoc",aliases:["adoc"],import:(()=>l(()=>import("./asciidoc-Ve4PFQV2.js"),[]))},{id:"asm",name:"Assembly",import:(()=>l(()=>import("./asm-D_Q5rh1f.js"),[]))},{id:"astro",name:"Astro",import:(()=>l(()=>import("./astro-HNnZUWAn.js"),__vite__mapDeps([10,9,2,11,3,12,13])))},{id:"awk",name:"AWK",import:(()=>l(()=>import("./awk-DMzUqQB5.js"),[]))},{id:"ballerina",name:"Ballerina",import:(()=>l(()=>import("./ballerina-BFfxhgS-.js"),[]))},{id:"bat",name:"Batch File",aliases:["batch"],import:(()=>l(()=>import("./bat-BkioyH1T.js"),[]))},{id:"beancount",name:"Beancount",import:(()=>l(()=>import("./beancount-k_qm7-4y.js"),[]))},{id:"berry",name:"Berry",aliases:["be"],import:(()=>l(()=>import("./berry-uYugtg8r.js"),[]))},{id:"bibtex",name:"BibTeX",import:(()=>l(()=>import("./bibtex-CHM0blh-.js"),[]))},{id:"bicep",name:"Bicep",import:(()=>l(()=>import("./bicep-Bmn6On1c.js"),[]))},{id:"bird2",name:"BIRD2 Configuration",aliases:["bird"],import:(()=>l(()=>import("./bird2-BIv1doCn.js"),[]))},{id:"blade",name:"Blade",import:(()=>l(()=>import("./blade-2xfisSek.js"),__vite__mapDeps([14,15,1,2,3,7,8,16,9])))},{id:"bsl",name:"1C (Enterprise)",aliases:["1c"],import:(()=>l(()=>import("./bsl-BO_Y6i37.js"),__vite__mapDeps([17,18])))},{id:"c",name:"C",import:(()=>l(()=>import("./c-BIGW1oBm.js"),[]))},{id:"c3",name:"C3",import:(()=>l(()=>import("./c3-MRO5bC_T.js"),[]))},{id:"cadence",name:"Cadence",aliases:["cdc"],import:(()=>l(()=>import("./cadence-Bv_4Rxtq.js"),[]))},{id:"cairo",name:"Cairo",import:(()=>l(()=>import("./cairo-KRGpt6FW.js"),__vite__mapDeps([19,20])))},{id:"clarity",name:"Clarity",import:(()=>l(()=>import("./clarity-D53aC0YG.js"),[]))},{id:"clojure",name:"Clojure",aliases:["clj"],import:(()=>l(()=>import("./clojure-P80f7IUj.js"),[]))},{id:"cmake",name:"CMake",import:(()=>l(()=>import("./cmake-D1j8_8rp.js"),[]))},{id:"cobol",name:"COBOL",import:(()=>l(()=>import("./cobol-nBiQ_Alo.js"),__vite__mapDeps([21,1,2,3,8])))},{id:"codeowners",name:"CODEOWNERS",import:(()=>l(()=>import("./codeowners-Bp6g37R7.js"),[]))},{id:"codeql",name:"CodeQL",aliases:["ql"],import:(()=>l(()=>import("./codeql-DsOJ9woJ.js"),[]))},{id:"coffee",name:"CoffeeScript",aliases:["coffeescript"],import:(()=>l(()=>import("./coffee-Ch7k5sss.js"),__vite__mapDeps([22,2])))},{id:"common-lisp",name:"Common Lisp",aliases:["lisp"],import:(()=>l(()=>import("./common-lisp-Cg-RD9OK.js"),[]))},{id:"coq",name:"Coq",import:(()=>l(()=>import("./coq-DkFqJrB1.js"),[]))},{id:"cpp",name:"C++",aliases:["c++"],import:(()=>l(()=>import("./cpp-UfJy6YNI.js"),__vite__mapDeps([23,24,25,26,16])))},{id:"crystal",name:"Crystal",import:(()=>l(()=>import("./crystal-DGywbUpC.js"),__vite__mapDeps([27,1,2,3,16,26,28])))},{id:"csharp",name:"C#",aliases:["c#","cs"],import:(()=>l(()=>import("./csharp-DSvCPggb.js"),[]))},{id:"css",name:"CSS",import:(()=>l(()=>import("./css-CLj8gQPS.js"),[]))},{id:"csv",name:"CSV",import:(()=>l(()=>import("./csv-fuZLfV_i.js"),[]))},{id:"cue",name:"CUE",import:(()=>l(()=>import("./cue-D82EKSYY.js"),[]))},{id:"cypher",name:"Cypher",aliases:["cql"],import:(()=>l(()=>import("./cypher-COkxafJQ.js"),[]))},{id:"d",name:"D",import:(()=>l(()=>import("./d-85-TOEBH.js"),[]))},{id:"dart",name:"Dart",import:(()=>l(()=>import("./dart-bE4Kk8sk.js"),[]))},{id:"dax",name:"DAX",import:(()=>l(()=>import("./dax-CEL-wOlO.js"),[]))},{id:"desktop",name:"Desktop",import:(()=>l(()=>import("./desktop-BmXAJ9_W.js"),[]))},{id:"diff",name:"Diff",import:(()=>l(()=>import("./diff-D97Zzqfu.js"),[]))},{id:"docker",name:"Dockerfile",aliases:["dockerfile"],import:(()=>l(()=>import("./docker-BcOcwvcX.js"),[]))},{id:"dotenv",name:"dotEnv",import:(()=>l(()=>import("./dotenv-Da5cRb03.js"),[]))},{id:"dream-maker",name:"Dream Maker",import:(()=>l(()=>import("./dream-maker-BtqSS_iP.js"),[]))},{id:"edge",name:"Edge",import:(()=>l(()=>import("./edge-FbVlp4U3.js"),__vite__mapDeps([29,11,1,2,3,15])))},{id:"elixir",name:"Elixir",import:(()=>l(()=>import("./elixir-CkH2-t6x.js"),__vite__mapDeps([30,1,2,3])))},{id:"elm",name:"Elm",import:(()=>l(()=>import("./elm-DbKCFpqz.js"),__vite__mapDeps([31,25,26])))},{id:"emacs-lisp",name:"Emacs Lisp",aliases:["elisp"],import:(()=>l(()=>import("./emacs-lisp-CXvaQtF9.js"),[]))},{id:"erb",name:"ERB",import:(()=>l(()=>import("./erb-Dm6A9KJ5.js"),__vite__mapDeps([32,1,2,3,33,34,7,8,16,35,11,36,13,23,24,25,26,28,37,38])))},{id:"erlang",name:"Erlang",aliases:["erl"],import:(()=>l(()=>import("./erlang-DsQrWhSR.js"),__vite__mapDeps([39,40])))},{id:"fennel",name:"Fennel",import:(()=>l(()=>import("./fennel-BYunw83y.js"),[]))},{id:"fish",name:"Fish",import:(()=>l(()=>import("./fish-BvzEVeQv.js"),[]))},{id:"fluent",name:"Fluent",aliases:["ftl"],import:(()=>l(()=>import("./fluent-C4IJs8-o.js"),[]))},{id:"fortran-fixed-form",name:"Fortran (Fixed Form)",aliases:["f","for","f77"],import:(()=>l(()=>import("./fortran-fixed-form-CkoXwp7k.js"),__vite__mapDeps([41,42])))},{id:"fortran-free-form",name:"Fortran (Free Form)",aliases:["f90","f95","f03","f08","f18"],import:(()=>l(()=>import("./fortran-free-form-BxgE0vQu.js"),[]))},{id:"fsharp",name:"F#",aliases:["f#","fs"],import:(()=>l(()=>import("./fsharp-CXgrBDvD.js"),__vite__mapDeps([43,40])))},{id:"gdresource",name:"GDResource",aliases:["tscn","tres"],import:(()=>l(()=>import("./gdresource-BOOCDP_w.js"),__vite__mapDeps([44,45,46])))},{id:"gdscript",name:"GDScript",aliases:["gd"],import:(()=>l(()=>import("./gdscript-C5YyOfLZ.js"),[]))},{id:"gdshader",name:"GDShader",import:(()=>l(()=>import("./gdshader-DkwncUOv.js"),[]))},{id:"genie",name:"Genie",import:(()=>l(()=>import("./genie-D0YGMca9.js"),[]))},{id:"gherkin",name:"Gherkin",import:(()=>l(()=>import("./gherkin-DyxjwDmM.js"),[]))},{id:"git-commit",name:"Git Commit Message",import:(()=>l(()=>import("./git-commit-F4YmCXRG.js"),__vite__mapDeps([47,48])))},{id:"git-rebase",name:"Git Rebase Message",import:(()=>l(()=>import("./git-rebase-r7XF79zn.js"),__vite__mapDeps([49,28])))},{id:"gleam",name:"Gleam",import:(()=>l(()=>import("./gleam-BspZqrRM.js"),[]))},{id:"glimmer-js",name:"Glimmer JS",aliases:["gjs"],import:(()=>l(()=>import("./glimmer-js-ByusRIyA.js"),__vite__mapDeps([50,2,11,3,1])))},{id:"glimmer-ts",name:"Glimmer TS",aliases:["gts"],import:(()=>l(()=>import("./glimmer-ts-BfAWNZQY.js"),__vite__mapDeps([51,11,3,2,1])))},{id:"glsl",name:"GLSL",import:(()=>l(()=>import("./glsl-DplSGwfg.js"),__vite__mapDeps([25,26])))},{id:"gn",name:"GN",import:(()=>l(()=>import("./gn-n2N0HUVH.js"),[]))},{id:"gnuplot",name:"Gnuplot",import:(()=>l(()=>import("./gnuplot-DdkO51Og.js"),[]))},{id:"go",name:"Go",import:(()=>l(()=>import("./go-C27-OAKa.js"),[]))},{id:"graphql",name:"GraphQL",aliases:["gql"],import:(()=>l(()=>import("./graphql-ChdNCCLP.js"),__vite__mapDeps([35,2,11,36,13])))},{id:"groovy",name:"Groovy",import:(()=>l(()=>import("./groovy-gcz8RCvz.js"),[]))},{id:"hack",name:"Hack",import:(()=>l(()=>import("./hack-DbPARsA_.js"),__vite__mapDeps([52,1,2,3,16])))},{id:"haml",name:"Ruby Haml",import:(()=>l(()=>import("./haml-D5jkg6IW.js"),__vite__mapDeps([34,2,3])))},{id:"handlebars",name:"Handlebars",aliases:["hbs"],import:(()=>l(()=>import("./handlebars-BpdQsYii.js"),__vite__mapDeps([53,1,2,3,38])))},{id:"haskell",name:"Haskell",aliases:["hs"],import:(()=>l(()=>import("./haskell-Df6bDoY_.js"),[]))},{id:"haxe",name:"Haxe",import:(()=>l(()=>import("./haxe-CzTSHFRz.js"),[]))},{id:"hcl",name:"HashiCorp HCL",import:(()=>l(()=>import("./hcl-BWvSN4gD.js"),[]))},{id:"hjson",name:"Hjson",import:(()=>l(()=>import("./hjson-D5-asLiD.js"),[]))},{id:"hlsl",name:"HLSL",import:(()=>l(()=>import("./hlsl-D3lLCCz7.js"),[]))},{id:"html",name:"HTML",import:(()=>l(()=>import("./html-pp8916En.js"),__vite__mapDeps([1,2,3])))},{id:"html-derivative",name:"HTML (Derivative)",import:(()=>l(()=>import("./html-derivative-DlHx6ybY.js"),__vite__mapDeps([15,1,2,3])))},{id:"http",name:"HTTP",import:(()=>l(()=>import("./http-jrhK8wxY.js"),__vite__mapDeps([54,28,9,7,8,35,2,11,36,13])))},{id:"hurl",name:"Hurl",import:(()=>l(()=>import("./hurl-irOxFIW8.js"),__vite__mapDeps([55,35,2,11,36,13,7,8,56])))},{id:"hxml",name:"HXML",import:(()=>l(()=>import("./hxml-Bvhsp5Yf.js"),__vite__mapDeps([57,58])))},{id:"hy",name:"Hy",import:(()=>l(()=>import("./hy-DFXneXwc.js"),[]))},{id:"imba",name:"Imba",import:(()=>l(()=>import("./imba-DGztddWO.js"),[]))},{id:"ini",name:"INI",aliases:["properties"],import:(()=>l(()=>import("./ini-BEwlwnbL.js"),[]))},{id:"java",name:"Java",import:(()=>l(()=>import("./java-CylS5w8V.js"),[]))},{id:"javascript",name:"JavaScript",aliases:["js","cjs","mjs"],import:(()=>l(()=>import("./javascript-wDzz0qaB.js"),[]))},{id:"jinja",name:"Jinja",import:(()=>l(()=>import("./jinja-f2NsQr07.js"),__vite__mapDeps([59,1,2,3])))},{id:"jison",name:"Jison",import:(()=>l(()=>import("./jison-wvAkD_A8.js"),__vite__mapDeps([60,2])))},{id:"json",name:"JSON",import:(()=>l(()=>import("./json-Cp-IABpG.js"),[]))},{id:"json5",name:"JSON5",import:(()=>l(()=>import("./json5-C9tS-k6U.js"),[]))},{id:"jsonc",name:"JSON with Comments",import:(()=>l(()=>import("./jsonc-Des-eS-w.js"),[]))},{id:"jsonl",name:"JSON Lines",import:(()=>l(()=>import("./jsonl-DcaNXYhu.js"),[]))},{id:"jsonnet",name:"Jsonnet",import:(()=>l(()=>import("./jsonnet-DFQXde-d.js"),[]))},{id:"jssm",name:"JSSM",aliases:["fsl"],import:(()=>l(()=>import("./jssm-C2t-YnRu.js"),[]))},{id:"jsx",name:"JSX",import:(()=>l(()=>import("./jsx-g9-lgVsj.js"),[]))},{id:"julia",name:"Julia",aliases:["jl"],import:(()=>l(()=>import("./julia-D7OTSIA_.js"),__vite__mapDeps([61,23,24,25,26,16,20,2,62])))},{id:"just",name:"Just",import:(()=>l(()=>import("./just-CUsbIsdP.js"),__vite__mapDeps([63,28,2,11,64,1,3,7,8,16,20,33,34,35,36,13,23,24,25,26,37,38])))},{id:"kdl",name:"KDL",import:(()=>l(()=>import("./kdl-DV7GczEv.js"),[]))},{id:"kotlin",name:"Kotlin",aliases:["kt","kts"],import:(()=>l(()=>import("./kotlin-BdnUsdx6.js"),[]))},{id:"kusto",name:"Kusto",aliases:["kql"],import:(()=>l(()=>import("./kusto-wEQ09or8.js"),[]))},{id:"latex",name:"LaTeX",import:(()=>l(()=>import("./latex-CaSxy8MP.js"),__vite__mapDeps([65,66,62])))},{id:"lean",name:"Lean 4",aliases:["lean4"],import:(()=>l(()=>import("./lean-BZvkOJ9d.js"),[]))},{id:"less",name:"Less",import:(()=>l(()=>import("./less-B1dDrJ26.js"),[]))},{id:"liquid",name:"Liquid",import:(()=>l(()=>import("./liquid-C0sCDyMI.js"),__vite__mapDeps([67,1,2,3,9])))},{id:"llvm",name:"LLVM IR",import:(()=>l(()=>import("./llvm-DjAJT7YJ.js"),[]))},{id:"log",name:"Log file",import:(()=>l(()=>import("./log-2UxHyX5q.js"),[]))},{id:"logo",name:"Logo",import:(()=>l(()=>import("./logo-BtOb2qkB.js"),[]))},{id:"lua",name:"Lua",import:(()=>l(()=>import("./lua-BaeVxFsk.js"),__vite__mapDeps([37,26])))},{id:"luau",name:"Luau",import:(()=>l(()=>import("./luau-KW6xsasC.js"),[]))},{id:"make",name:"Makefile",aliases:["makefile"],import:(()=>l(()=>import("./make-CHLpvVh8.js"),[]))},{id:"markdown",name:"Markdown",aliases:["md"],import:(()=>l(()=>import("./markdown-Cvjx9yec.js"),[]))},{id:"marko",name:"Marko",import:(()=>l(()=>import("./marko-DjSrsDqO.js"),__vite__mapDeps([68,3,69,5,11])))},{id:"matlab",name:"MATLAB",import:(()=>l(()=>import("./matlab-D7o27uSR.js"),[]))},{id:"mdc",name:"MDC",import:(()=>l(()=>import("./mdc-DTYItulj.js"),__vite__mapDeps([70,40,38,15,1,2,3])))},{id:"mdx",name:"MDX",import:(()=>l(()=>import("./mdx-Cmh6b_Ma.js"),[]))},{id:"mermaid",name:"Mermaid",aliases:["mmd"],import:(()=>l(()=>import("./mermaid-mWjccvbQ.js"),[]))},{id:"mipsasm",name:"MIPS Assembly",aliases:["mips"],import:(()=>l(()=>import("./mipsasm-CKIfxQSi.js"),[]))},{id:"mojo",name:"Mojo",import:(()=>l(()=>import("./mojo-rZm6bMo-.js"),[]))},{id:"moonbit",name:"MoonBit",aliases:["mbt","mbti"],import:(()=>l(()=>import("./moonbit-_H4v1dQx.js"),[]))},{id:"move",name:"Move",import:(()=>l(()=>import("./move-IF9eRakj.js"),[]))},{id:"narrat",name:"Narrat Language",aliases:["nar"],import:(()=>l(()=>import("./narrat-DRg8JJMk.js"),[]))},{id:"nextflow",name:"Nextflow",aliases:["nf"],import:(()=>l(()=>import("./nextflow-C-mBbutL.js"),__vite__mapDeps([71,72])))},{id:"nextflow-groovy",name:"Nextflow Groovy",import:(()=>l(()=>import("./nextflow-groovy-vE_lwT2v.js"),[]))},{id:"nginx",name:"Nginx",import:(()=>l(()=>import("./nginx-BpAMiNFr.js"),__vite__mapDeps([73,37,26])))},{id:"nim",name:"Nim",import:(()=>l(()=>import("./nim-BIad80T-.js"),__vite__mapDeps([74,26,1,2,3,7,8,25,40])))},{id:"nix",name:"Nix",import:(()=>l(()=>import("./nix-CwoSXNpI.js"),[]))},{id:"nushell",name:"nushell",aliases:["nu"],import:(()=>l(()=>import("./nushell-Cz2AlsmD.js"),[]))},{id:"objective-c",name:"Objective-C",aliases:["objc"],import:(()=>l(()=>import("./objective-c-DXmwc3jG.js"),[]))},{id:"objective-cpp",name:"Objective-C++",import:(()=>l(()=>import("./objective-cpp-CLxacb5B.js"),[]))},{id:"ocaml",name:"OCaml",import:(()=>l(()=>import("./ocaml-C0hk2d4L.js"),[]))},{id:"odin",name:"Odin",import:(()=>l(()=>import("./odin-BBf5iR-q.js"),[]))},{id:"openscad",name:"OpenSCAD",aliases:["scad"],import:(()=>l(()=>import("./openscad-C4EeE6gA.js"),[]))},{id:"pascal",name:"Pascal",import:(()=>l(()=>import("./pascal-D93ZcfNL.js"),[]))},{id:"perl",name:"Perl",import:(()=>l(()=>import("./perl-B9cMNwum.js"),__vite__mapDeps([64,1,2,3,7,8,16])))},{id:"php",name:"PHP",import:(()=>l(()=>import("./php-Csjmro_R.js"),__vite__mapDeps([75,1,2,3,7,8,16,9])))},{id:"pkl",name:"Pkl",import:(()=>l(()=>import("./pkl-u5AG7uiY.js"),[]))},{id:"plsql",name:"PL/SQL",import:(()=>l(()=>import("./plsql-ChMvpjG-.js"),[]))},{id:"po",name:"Gettext PO",aliases:["pot","potx"],import:(()=>l(()=>import("./po-BTJTHyun.js"),[]))},{id:"polar",name:"Polar",import:(()=>l(()=>import("./polar-C0HS_06l.js"),[]))},{id:"postcss",name:"PostCSS",import:(()=>l(()=>import("./postcss-CXtECtnM.js"),[]))},{id:"powerquery",name:"PowerQuery",import:(()=>l(()=>import("./powerquery-CEu0bR-o.js"),[]))},{id:"powershell",name:"PowerShell",aliases:["ps","ps1"],import:(()=>l(()=>import("./powershell-Dpen1YoG.js"),[]))},{id:"prisma",name:"Prisma",import:(()=>l(()=>import("./prisma-Dd19v3D-.js"),[]))},{id:"prolog",name:"Prolog",import:(()=>l(()=>import("./prolog-CbFg5uaA.js"),[]))},{id:"proto",name:"Protocol Buffer 3",aliases:["protobuf"],import:(()=>l(()=>import("./proto-C7zT0LnQ.js"),[]))},{id:"pug",name:"Pug",aliases:["jade"],import:(()=>l(()=>import("./pug-DKIMFp6K.js"),__vite__mapDeps([76,2,3,1])))},{id:"puppet",name:"Puppet",import:(()=>l(()=>import("./puppet-BMWR74SV.js"),[]))},{id:"purescript",name:"PureScript",import:(()=>l(()=>import("./purescript-CklMAg4u.js"),[]))},{id:"python",name:"Python",aliases:["py"],import:(()=>l(()=>import("./python-B6aJPvgy.js"),[]))},{id:"qml",name:"QML",import:(()=>l(()=>import("./qml-3beO22l8.js"),__vite__mapDeps([77,2])))},{id:"qmldir",name:"QML Directory",import:(()=>l(()=>import("./qmldir-C8lEn-DE.js"),[]))},{id:"qss",name:"Qt Style Sheets",import:(()=>l(()=>import("./qss-IeuSbFQv.js"),[]))},{id:"r",name:"R",import:(()=>l(()=>import("./r-Dspwwk_N.js"),[]))},{id:"racket",name:"Racket",import:(()=>l(()=>import("./racket-BqYA7rlc.js"),[]))},{id:"raku",name:"Raku",aliases:["perl6"],import:(()=>l(()=>import("./raku-DXvB9xmW.js"),[]))},{id:"razor",name:"ASP.NET Razor",import:(()=>l(()=>import("./razor-BjBPvh-w.js"),__vite__mapDeps([78,1,2,3,79])))},{id:"reg",name:"Windows Registry Script",import:(()=>l(()=>import("./reg-C-SQnVFl.js"),[]))},{id:"regexp",name:"RegExp",aliases:["regex"],import:(()=>l(()=>import("./regexp-CDVJQ6XC.js"),[]))},{id:"rel",name:"Rel",import:(()=>l(()=>import("./rel-C3B-1QV4.js"),[]))},{id:"riscv",name:"RISC-V",import:(()=>l(()=>import("./riscv-BM1_JUlF.js"),[]))},{id:"ron",name:"RON",import:(()=>l(()=>import("./ron-D8l8udqQ.js"),[]))},{id:"rosmsg",name:"ROS Interface",import:(()=>l(()=>import("./rosmsg-BJDFO7_C.js"),[]))},{id:"rst",name:"reStructuredText",import:(()=>l(()=>import("./rst-CpCqk9r5.js"),__vite__mapDeps([80,15,1,2,3,23,24,25,26,16,20,28,38,81,33,34,7,8,35,11,36,13,37])))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>l(()=>import("./ruby-DyJCeAvU.js"),__vite__mapDeps([33,1,2,3,34,7,8,16,35,11,36,13,23,24,25,26,28,37,38])))},{id:"rust",name:"Rust",aliases:["rs"],import:(()=>l(()=>import("./rust-B1yitclQ.js"),[]))},{id:"sas",name:"SAS",import:(()=>l(()=>import("./sas-DEy46yEz.js"),__vite__mapDeps([82,16])))},{id:"sass",name:"Sass",import:(()=>l(()=>import("./sass-Cj5Yp3dK.js"),[]))},{id:"scala",name:"Scala",import:(()=>l(()=>import("./scala-C151Ov-r.js"),[]))},{id:"scheme",name:"Scheme",import:(()=>l(()=>import("./scheme-C98Dy4si.js"),[]))},{id:"scss",name:"SCSS",import:(()=>l(()=>import("./scss-D5BDwBP9.js"),__vite__mapDeps([5,3])))},{id:"sdbl",name:"1C (Query)",aliases:["1c-query"],import:(()=>l(()=>import("./sdbl-DVxCFoDh.js"),[]))},{id:"shaderlab",name:"ShaderLab",aliases:["shader"],import:(()=>l(()=>import("./shaderlab-Dg9Lc6iA.js"),__vite__mapDeps([83,84])))},{id:"shellscript",name:"Shell",aliases:["bash","sh","shell","zsh"],import:(()=>l(()=>import("./shellscript-Yzrsuije.js"),[]))},{id:"shellsession",name:"Shell Session",aliases:["console"],import:(()=>l(()=>import("./shellsession-BADoaaVG.js"),__vite__mapDeps([85,28])))},{id:"smalltalk",name:"Smalltalk",import:(()=>l(()=>import("./smalltalk-BERRCDM3.js"),[]))},{id:"solidity",name:"Solidity",import:(()=>l(()=>import("./solidity-rGO070M0.js"),[]))},{id:"soy",name:"Closure Templates",aliases:["closure-templates"],import:(()=>l(()=>import("./soy-8wufbnw4.js"),__vite__mapDeps([86,1,2,3])))},{id:"sparql",name:"SPARQL",import:(()=>l(()=>import("./sparql-rVzFXLq3.js"),__vite__mapDeps([87,88])))},{id:"splunk",name:"Splunk Query Language",aliases:["spl"],import:(()=>l(()=>import("./splunk-BtCnVYZw.js"),[]))},{id:"sql",name:"SQL",import:(()=>l(()=>import("./sql-CRqJ_cUM.js"),[]))},{id:"ssh-config",name:"SSH Config",import:(()=>l(()=>import("./ssh-config-_ykCGR6B.js"),[]))},{id:"stata",name:"Stata",import:(()=>l(()=>import("./stata-DI20mbqo.js"),__vite__mapDeps([89,16])))},{id:"stylus",name:"Stylus",aliases:["styl"],import:(()=>l(()=>import("./stylus-BEDo0Tqx.js"),[]))},{id:"surrealql",name:"SurrealQL",aliases:["surql"],import:(()=>l(()=>import("./surrealql-Bq5Q-fJD.js"),__vite__mapDeps([90,2])))},{id:"svelte",name:"Svelte",import:(()=>l(()=>import("./svelte-Cy7k_4gC.js"),__vite__mapDeps([91,2,11,3,12])))},{id:"swift",name:"Swift",import:(()=>l(()=>import("./swift-D82vCrfD.js"),[]))},{id:"system-verilog",name:"SystemVerilog",import:(()=>l(()=>import("./system-verilog-CnnmHF94.js"),[]))},{id:"systemd",name:"Systemd Units",import:(()=>l(()=>import("./systemd-4A_iFExJ.js"),[]))},{id:"talonscript",name:"TalonScript",aliases:["talon"],import:(()=>l(()=>import("./talonscript-CkByrt1z.js"),[]))},{id:"tasl",name:"Tasl",import:(()=>l(()=>import("./tasl-QIJgUcNo.js"),[]))},{id:"tcl",name:"Tcl",import:(()=>l(()=>import("./tcl-dwOrl1Do.js"),[]))},{id:"templ",name:"Templ",import:(()=>l(()=>import("./templ-DhtptRzy.js"),__vite__mapDeps([92,93,2,3])))},{id:"terraform",name:"Terraform",aliases:["tf","tfvars"],import:(()=>l(()=>import("./terraform-BETggiCN.js"),[]))},{id:"tex",name:"TeX",import:(()=>l(()=>import("./tex-idrVyKtj.js"),__vite__mapDeps([66,62])))},{id:"toml",name:"TOML",import:(()=>l(()=>import("./toml-vGWfd6FD.js"),[]))},{id:"ts-tags",name:"TypeScript with Tags",aliases:["lit"],import:(()=>l(()=>import("./ts-tags-D351s5mN.js"),__vite__mapDeps([94,11,3,2,25,26,1,16,7,8])))},{id:"tsv",name:"TSV",import:(()=>l(()=>import("./tsv-B_m7g4N7.js"),[]))},{id:"tsx",name:"TSX",import:(()=>l(()=>import("./tsx-COt5Ahok.js"),[]))},{id:"turtle",name:"Turtle",import:(()=>l(()=>import("./turtle-BsS91CYL.js"),[]))},{id:"twig",name:"Twig",import:(()=>l(()=>import("./twig-CW1WmMYd.js"),__vite__mapDeps([95,3,2,5,75,1,7,8,16,9,20,33,34,35,11,36,13,23,24,25,26,28,37,38])))},{id:"typescript",name:"TypeScript",aliases:["ts","cts","mts"],import:(()=>l(()=>import("./typescript-BPQ3VLAy.js"),[]))},{id:"typespec",name:"TypeSpec",aliases:["tsp"],import:(()=>l(()=>import("./typespec-CAFt9gP4.js"),[]))},{id:"typst",name:"Typst",aliases:["typ"],import:(()=>l(()=>import("./typst-DHCkPAjA.js"),[]))},{id:"v",name:"V",import:(()=>l(()=>import("./v-BcVCzyr7.js"),[]))},{id:"vala",name:"Vala",import:(()=>l(()=>import("./vala-CsfeWuGM.js"),[]))},{id:"vb",name:"Visual Basic",aliases:["cmd"],import:(()=>l(()=>import("./vb-D17OF-Vu.js"),[]))},{id:"verilog",name:"Verilog",import:(()=>l(()=>import("./verilog-BQ8w6xss.js"),[]))},{id:"vhdl",name:"VHDL",import:(()=>l(()=>import("./vhdl-CeAyd5Ju.js"),[]))},{id:"viml",name:"Vim Script",aliases:["vim","vimscript"],import:(()=>l(()=>import("./viml-CJc9bBzg.js"),[]))},{id:"vue",name:"Vue",import:(()=>l(()=>import("./vue-D2xRrEX4.js"),__vite__mapDeps([96,3,2,11,9,1,15])))},{id:"vue-html",name:"Vue HTML",import:(()=>l(()=>import("./vue-html-AaS7Mt5G.js"),__vite__mapDeps([97,2])))},{id:"vue-vine",name:"Vue Vine",import:(()=>l(()=>import("./vue-vine-BoDAl6tE.js"),__vite__mapDeps([98,3,5,69,99,12,2])))},{id:"vyper",name:"Vyper",aliases:["vy"],import:(()=>l(()=>import("./vyper-CDx5xZoG.js"),[]))},{id:"wasm",name:"WebAssembly",import:(()=>l(()=>import("./wasm-MzD3tlZU.js"),[]))},{id:"wenyan",name:"Wenyan",aliases:["文言"],import:(()=>l(()=>import("./wenyan-BV7otONQ.js"),[]))},{id:"wgsl",name:"WGSL",import:(()=>l(()=>import("./wgsl-Dx-B1_4e.js"),[]))},{id:"wikitext",name:"Wikitext",aliases:["mediawiki","wiki"],import:(()=>l(()=>import("./wikitext-BhOHFoWU.js"),[]))},{id:"wit",name:"WebAssembly Interface Types",import:(()=>l(()=>import("./wit-5i3qLPDT.js"),[]))},{id:"wolfram",name:"Wolfram",aliases:["wl"],import:(()=>l(()=>import("./wolfram-lXgVvXCa.js"),[]))},{id:"xml",name:"XML",import:(()=>l(()=>import("./xml-sdJ4AIDG.js"),__vite__mapDeps([7,8])))},{id:"xsl",name:"XSL",import:(()=>l(()=>import("./xsl-CtQFsRM5.js"),__vite__mapDeps([100,7,8])))},{id:"yaml",name:"YAML",aliases:["yml"],import:(()=>l(()=>import("./yaml-Buea-lGh.js"),[]))},{id:"zenscript",name:"ZenScript",import:(()=>l(()=>import("./zenscript-DVFEvuxE.js"),[]))},{id:"zig",name:"Zig",import:(()=>l(()=>import("./zig-VOosw3JB.js"),[]))}],xe=Object.fromEntries(be.map(e=>[e.id,e.import])),Ve=Object.fromEntries(be.flatMap(e=>e.aliases?.map(n=>[n,e.import])||[])),Ne={...xe,...Ve},$e=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>l(()=>import("./andromeeda-C4gqWexZ.js"),[]))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>l(()=>import("./aurora-x-D-2ljcwZ.js"),[]))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>l(()=>import("./ayu-dark-DYE7WIF3.js"),[]))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>l(()=>import("./ayu-light-BA47KaF1.js"),[]))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>l(()=>import("./ayu-mirage-32ctXXKs.js"),[]))},{id:"catppuccin-frappe",displayName:"Catppuccin Frappé",type:"dark",import:(()=>l(()=>import("./catppuccin-frappe-DFWUc33u.js"),[]))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>l(()=>import("./catppuccin-latte-C9dUb6Cb.js"),[]))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>l(()=>import("./catppuccin-macchiato-DQyhUUbL.js"),[]))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>l(()=>import("./catppuccin-mocha-D87Tk5Gz.js"),[]))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>l(()=>import("./dark-plus-C3mMm8J8.js"),[]))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>l(()=>import("./dracula-BzJJZx-M.js"),[]))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>l(()=>import("./dracula-soft-BXkSAIEj.js"),[]))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>l(()=>import("./everforest-dark-BgDCqdQA.js"),[]))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>l(()=>import("./everforest-light-C8M2exoo.js"),[]))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>l(()=>import("./github-dark-DHJKELXO.js"),[]))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>l(()=>import("./github-dark-default-Cuk6v7N8.js"),[]))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>l(()=>import("./github-dark-dimmed-DH5Ifo-i.js"),[]))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>l(()=>import("./github-dark-high-contrast-E3gJ1_iC.js"),[]))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>l(()=>import("./github-light-DAi9KRSo.js"),[]))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>l(()=>import("./github-light-default-D7oLnXFd.js"),[]))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>l(()=>import("./github-light-high-contrast-BfjtVDDH.js"),[]))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>l(()=>import("./gruvbox-dark-hard-CFHQjOhq.js"),[]))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>l(()=>import("./gruvbox-dark-medium-GsRaNv29.js"),[]))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>l(()=>import("./gruvbox-dark-soft-CVdnzihN.js"),[]))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>l(()=>import("./gruvbox-light-hard-CH1njM8p.js"),[]))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>l(()=>import("./gruvbox-light-medium-DRw_LuNl.js"),[]))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>l(()=>import("./gruvbox-light-soft-hJgmCMqR.js"),[]))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>l(()=>import("./horizon-BUw7H-hv.js"),[]))},{id:"horizon-bright",displayName:"Horizon Bright",type:"light",import:(()=>l(()=>import("./horizon-bright-CUuTKBJd.js"),[]))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>l(()=>import("./houston-DnULxvSX.js"),[]))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>l(()=>import("./kanagawa-dragon-CkXjmgJE.js"),[]))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>l(()=>import("./kanagawa-lotus-CfQXZHmo.js"),[]))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>l(()=>import("./kanagawa-wave-DWedfzmr.js"),[]))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>l(()=>import("./laserwave-DUszq2jm.js"),[]))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>l(()=>import("./light-plus-B7mTdjB0.js"),[]))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>l(()=>import("./material-theme-D5KoaKCx.js"),[]))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>l(()=>import("./material-theme-darker-BfHTSMKl.js"),[]))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>l(()=>import("./material-theme-lighter-B0m2ddpp.js"),[]))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>l(()=>import("./material-theme-ocean-CyktbL80.js"),[]))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>l(()=>import("./material-theme-palenight-Csfq5Kiy.js"),[]))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>l(()=>import("./min-dark-CafNBF8u.js"),[]))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>l(()=>import("./min-light-CTRr51gU.js"),[]))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>l(()=>import("./monokai-D4h5O-jR.js"),[]))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>l(()=>import("./night-owl-C39BiMTA.js"),[]))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>l(()=>import("./night-owl-light-CMTm3GFP.js"),[]))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>l(()=>import("./nord-Ddv68eIx.js"),[]))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>l(()=>import("./one-dark-pro-DVMEJ2y_.js"),[]))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>l(()=>import("./one-light-C3Wv6jpd.js"),[]))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>l(()=>import("./plastic-3e1v2bzS.js"),[]))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>l(()=>import("./poimandres-CS3Unz2-.js"),[]))},{id:"red",displayName:"Red",type:"dark",import:(()=>l(()=>import("./red-bN70gL4F.js"),[]))},{id:"rose-pine",displayName:"Rosé Pine",type:"dark",import:(()=>l(()=>import("./rose-pine-qdsjHGoJ.js"),[]))},{id:"rose-pine-dawn",displayName:"Rosé Pine Dawn",type:"light",import:(()=>l(()=>import("./rose-pine-dawn-DHQR4-dF.js"),[]))},{id:"rose-pine-moon",displayName:"Rosé Pine Moon",type:"dark",import:(()=>l(()=>import("./rose-pine-moon-D4_iv3hh.js"),[]))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>l(()=>import("./slack-dark-BthQWCQV.js"),[]))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>l(()=>import("./slack-ochin-DqwNpetd.js"),[]))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>l(()=>import("./snazzy-light-Bw305WKR.js"),[]))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>l(()=>import("./solarized-dark-DXbdFlpD.js"),[]))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>l(()=>import("./solarized-light-L9t79GZl.js"),[]))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>l(()=>import("./synthwave-84-CbfX1IO0.js"),[]))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>l(()=>import("./tokyo-night-hegEt444.js"),[]))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>l(()=>import("./vesper-DRje8inN.js"),[]))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>l(()=>import("./vitesse-black-Bkuqu6BP.js"),[]))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>l(()=>import("./vitesse-dark-D0r3Knsf.js"),[]))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>l(()=>import("./vitesse-light-CVO1_9PV.js"),[]))}],Me=Object.fromEntries($e.map(e=>[e.id,e.import]));var At=class extends Error{constructor(e){super(e),this.name="ShikiError"}};function si(){return 2147483648}function li(){return typeof performance<"u"?performance.now():Date.now()}const ui=(e,n)=>e+(n-e%n)%n;async function ci(e){let n,t;const r={};function o(f){t=f,r.HEAPU8=new Uint8Array(f),r.HEAPU32=new Uint32Array(f)}function i(f,g,y){r.HEAPU8.copyWithin(f,g,g+y)}function a(f){try{return n.grow(f-t.byteLength+65535>>>16),o(n.buffer),1}catch{}}function s(f){const g=r.HEAPU8.length;f=f>>>0;const y=si();if(f>y)return!1;for(let E=1;E<=4;E*=2){let _=g*(1+.2/E);_=Math.min(_,f+100663296);const b=Math.min(y,ui(Math.max(f,_),65536));if(a(b))return!0}return!1}const u=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function c(f,g,y=1024){const E=g+y;let _=g;for(;f[_]&&!(_>=E);)++_;if(_-g>16&&f.buffer&&u)return u.decode(f.subarray(g,_));let b="";for(;g<_;){let v=f[g++];if(!(v&128)){b+=String.fromCharCode(v);continue}const C=f[g++]&63;if((v&224)===192){b+=String.fromCharCode((v&31)<<6|C);continue}const S=f[g++]&63;if((v&240)===224?v=(v&15)<<12|C<<6|S:v=(v&7)<<18|C<<12|S<<6|f[g++]&63,v<65536)b+=String.fromCharCode(v);else{const H=v-65536;b+=String.fromCharCode(55296|H>>10,56320|H&1023)}}return b}function p(f,g){return f?c(r.HEAPU8,f,g):""}const d={emscripten_get_now:li,emscripten_memcpy_big:i,emscripten_resize_heap:s,fd_write:()=>0};async function m(){const g=await e({env:d,wasi_snapshot_preview1:d});n=g.memory,o(n.buffer),Object.assign(r,g),r.UTF8ToString=p}return await m(),r}var di=Object.defineProperty,pi=(e,n,t)=>n in e?di(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,I=(e,n,t)=>pi(e,typeof n!="symbol"?n+"":n,t);let D=null;function mi(e){throw new At(e.UTF8ToString(e.getLastOnigError()))}class Ue{constructor(n){I(this,"utf16Length"),I(this,"utf8Length"),I(this,"utf16Value"),I(this,"utf8Value"),I(this,"utf16OffsetToUtf8"),I(this,"utf8OffsetToUtf16");const t=n.length,r=Ue._utf8ByteLength(n),o=r!==t,i=o?new Uint32Array(t+1):null;o&&(i[t]=r);const a=o?new Uint32Array(r+1):null;o&&(a[r]=t);const s=new Uint8Array(r);let u=0;for(let c=0;c=55296&&p<=56319&&c+1=56320&&f<=57343&&(d=(p-55296<<10)+65536|f-56320,m=!0)}o&&(i[c]=u,m&&(i[c+1]=u),d<=127?a[u+0]=c:d<=2047?(a[u+0]=c,a[u+1]=c):d<=65535?(a[u+0]=c,a[u+1]=c,a[u+2]=c):(a[u+0]=c,a[u+1]=c,a[u+2]=c,a[u+3]=c)),d<=127?s[u++]=d:d<=2047?(s[u++]=192|(d&1984)>>>6,s[u++]=128|(d&63)>>>0):d<=65535?(s[u++]=224|(d&61440)>>>12,s[u++]=128|(d&4032)>>>6,s[u++]=128|(d&63)>>>0):(s[u++]=240|(d&1835008)>>>18,s[u++]=128|(d&258048)>>>12,s[u++]=128|(d&4032)>>>6,s[u++]=128|(d&63)>>>0),m&&c++}this.utf16Length=t,this.utf8Length=r,this.utf16Value=n,this.utf8Value=s,this.utf16OffsetToUtf8=i,this.utf8OffsetToUtf16=a}static _utf8ByteLength(n){let t=0;for(let r=0,o=n.length;r=55296&&i<=56319&&r+1=56320&&u<=57343&&(a=(i-55296<<10)+65536|u-56320,s=!0)}a<=127?t+=1:a<=2047?t+=2:a<=65535?t+=3:t+=4,s&&r++}return t}createString(n){const t=n.omalloc(this.utf8Length);return n.HEAPU8.set(this.utf8Value,t),t}}const Be=class G{constructor(n){if(I(this,"id",++G.LAST_ID),I(this,"_onigBinding"),I(this,"content"),I(this,"utf16Length"),I(this,"utf8Length"),I(this,"utf16OffsetToUtf8"),I(this,"utf8OffsetToUtf16"),I(this,"ptr"),!D)throw new At("Must invoke loadWasm first.");this._onigBinding=D,this.content=n;const t=new Ue(n);this.utf16Length=t.utf16Length,this.utf8Length=t.utf8Length,this.utf16OffsetToUtf8=t.utf16OffsetToUtf8,this.utf8OffsetToUtf16=t.utf8OffsetToUtf16,this.utf8Length<1e4&&!G._sharedPtrInUse?(G._sharedPtr||(G._sharedPtr=D.omalloc(1e4)),G._sharedPtrInUse=!0,D.HEAPU8.set(t.utf8Value,G._sharedPtr),this.ptr=G._sharedPtr):this.ptr=t.createString(D)}convertUtf8OffsetToUtf16(n){return this.utf8OffsetToUtf16?n<0?0:n>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[n]:n}convertUtf16OffsetToUtf8(n){return this.utf16OffsetToUtf8?n<0?0:n>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[n]:n}dispose(){this.ptr===G._sharedPtr?G._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};I(Be,"LAST_ID",0);I(Be,"_sharedPtr",0);I(Be,"_sharedPtrInUse",!1);let Fn=Be;class fi{constructor(n){if(I(this,"_onigBinding"),I(this,"_ptr"),!D)throw new At("Must invoke loadWasm first.");const t=[],r=[];for(let s=0,u=n.length;s{let r=e;return r=await r,typeof r=="function"&&(r=await r(t)),typeof r=="function"&&(r=await r(t)),gi(r)?r=await r.instantiator(t):hi(r)?r=await r.default(t):(_i(r)&&(r=r.data),yi(r)?typeof WebAssembly.instantiateStreaming=="function"?r=await bi(r)(t):r=await vi(r)(t):Ei(r)?r=await Qe(r)(t):r instanceof WebAssembly.Module?r=await Qe(r)(t):"default"in r&&r.default instanceof WebAssembly.Module&&(r=await Qe(r.default)(t))),"instance"in r&&(r=r.instance),"exports"in r&&(r=r.exports),r})}return Te=n(),Te}function Qe(e){return n=>WebAssembly.instantiate(e,n)}function bi(e){return n=>WebAssembly.instantiateStreaming(e,n)}function vi(e){return async n=>{const t=await e.arrayBuffer();return WebAssembly.instantiate(t,n)}}let Gn;function wi(e){Gn=e}function Ai(){return Gn}async function Tt(e){return e&&await Fe(e),{createScanner(n){return new fi(n.map(t=>typeof t=="string"?t:t.source))},createString(n){return new Fn(n)}}}const Ti=Object.freeze(Object.defineProperty({__proto__:null,createOnigurumaEngine:Tt,getDefaultWasmLoader:Ai,loadWasm:Fe,setDefaultWasmLoader:wi},Symbol.toStringTag,{value:"Module"}));var Hn=wt({});Bn(Hn,Ti);const Jt=/\s+/g;function Ct(e,n){if(!n)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(Jt)),Array.isArray(e.properties.class)||(e.properties.class=[]);const t=Array.isArray(n)?n:n.split(Jt);for(const r of t)r&&!e.properties.class.includes(r)&&e.properties.class.push(r);return e}const Ci=/:?lang=["']([^"']+)["']/g,Li=/(?:```|~~~)([\w-]+)/g,ki=/\\begin\{([\w-]+)\}/g,Ii=/o);function t(o){if(o===e.length)return{line:n.length-1,character:n.at(-1).length};let i=o,a=0;for(const s of n){if(ii&&o[i])}const Pi=["color","background-color"];function Wn(e,n){let t=0;const r=[];for(const o of n)o>t&&r.push({...e,content:e.content.slice(t,o),offset:e.offset+t}),t=o;return tr-o);return t.length?e.map(r=>r.flatMap(o=>{const i=t.filter(a=>o.offseta-o.offset).sort((a,s)=>a-s);return i.length?Wn(o,i):o})):e}function Xn(e,n,t,r,o="css-vars"){const i={content:e.content,explanation:e.explanation,offset:e.offset},a=n.map(p=>ge(e.variants[p])),s=new Set(a.flatMap(p=>Object.keys(p))),u={},c=(p,d)=>{const m=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return t+n[p]+(d==="color"?"":m)};return a.forEach((p,d)=>{for(const m of s){const f=p[m]||"inherit";if(d===0&&r&&Pi.includes(m))if(r==="light-dark()"&&a.length>1){const g=n.findIndex(E=>E==="light"),y=n.findIndex(E=>E==="dark");if(g===-1||y===-1)throw new x('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');u[m]=`light-dark(${a[g][m]||"inherit"}, ${a[y][m]||"inherit"})`,o==="css-vars"&&(u[c(d,m)]=f)}else u[m]=f;else o==="css-vars"&&(u[c(d,m)]=f)}}),i.htmlStyle=u,i}function ge(e){const n={};if(e.color&&(n.color=e.color),e.bgColor&&(n["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&V.Italic&&(n["font-style"]="italic"),e.fontStyle&V.Bold&&(n["font-weight"]="bold");const t=[];e.fontStyle&V.Underline&&t.push("underline"),e.fontStyle&V.Strikethrough&&t.push("line-through"),t.length&&(n["text-decoration"]=t.join(" "))}return n}function Oe(e){return typeof e=="string"?e:Object.entries(e).map(([n,t])=>`${n}:${t}`).join(";")}function Jn(){const e=new WeakMap;function n(t){if(!e.has(t.meta)){let o=function(a){if(typeof a=="number"){if(a<0||a>t.source.length)throw new x(`Invalid decoration offset: ${a}. Code length: ${t.source.length}`);return{...r.indexToPos(a),offset:a}}else{const s=r.lines[a.line];if(s===void 0)throw new x(`Invalid decoration position ${JSON.stringify(a)}. Lines length: ${r.lines.length}`);let u=a.character;if(u<0&&(u=s.length+u),u<0||u>s.length)throw new x(`Invalid decoration position ${JSON.stringify(a)}. Line ${a.line} length: ${s.length}`);return{...a,character:u,offset:r.posToIndex(a.line,u)}}};const r=jn(t.source),i=(t.options.decorations||[]).map(a=>({...a,start:o(a.start),end:o(a.end)}));Oi(i),e.set(t.meta,{decorations:i,converter:r,source:t.source})}return e.get(t.meta)}return{name:"shiki:decorations",tokens(t){if(this.options.decorations?.length)return qn(t,n(this).decorations.flatMap(r=>[r.start.offset,r.end.offset]))},code(t){if(!this.options.decorations?.length)return;const r=n(this),o=[...t.children].filter(p=>p.type==="element"&&p.tagName==="span");if(o.length!==r.converter.lines.length)throw new x(`Number of lines in code element (${o.length}) does not match the number of lines in the source (${r.converter.lines.length}). Failed to apply decorations.`);function i(p,d,m,f){const g=o[p];let y="",E=-1,_=-1;if(d===0&&(E=0),m===0&&(_=0),m===Number.POSITIVE_INFINITY&&(_=g.children.length),E===-1||_===-1)for(let v=0;vy);return p.tagName=d.tagName||"span",p.properties={...p.properties,...f,class:p.properties.class},d.properties?.class&&Ct(p,d.properties.class),p=g(p,m)||p,p}const u=[],c=r.decorations.sort((p,d)=>d.start.offset-p.start.offset||p.end.offset-d.end.offset);for(const p of c){const{start:d,end:m}=p;if(d.line===m.line)i(d.line,d.character,m.character,p);else if(d.linea(f,p));i(m.line,0,m.character,p)}}u.forEach(p=>p())}}}function Oi(e){for(let n=0;nt.end.offset)throw new x(`Invalid decoration range: ${JSON.stringify(t.start)} - ${JSON.stringify(t.end)}`);for(let r=n+1;rNumber.parseInt(r));return t.length!==3||t.some(r=>Number.isNaN(r))?void 0:{type:"rgb",rgb:t}}else if(n==="5"){const t=e.shift();if(t)return{type:"table",index:Number(t)}}}function xi(e){const n=[];for(;e.length>0;){const t=e.shift();if(!t)continue;const r=Number.parseInt(t);if(!Number.isNaN(r))if(r===0)n.push({type:"resetAll"});else if(r<=9)Ze[r]&&n.push({type:"setDecoration",value:Ze[r]});else if(r<=29){const o=Ze[r-20];o&&(n.push({type:"resetDecoration",value:o}),o==="dim"&&n.push({type:"resetDecoration",value:"bold"}))}else if(r<=37)n.push({type:"setForegroundColor",value:{type:"named",name:K[r-30]}});else if(r===38){const o=Qt(e);o&&n.push({type:"setForegroundColor",value:o})}else if(r===39)n.push({type:"resetForegroundColor"});else if(r<=47)n.push({type:"setBackgroundColor",value:{type:"named",name:K[r-40]}});else if(r===48){const o=Qt(e);o&&n.push({type:"setBackgroundColor",value:o})}else r===49?n.push({type:"resetBackgroundColor"}):r===53?n.push({type:"setDecoration",value:"overline"}):r===55?n.push({type:"resetDecoration",value:"overline"}):r>=90&&r<=97?n.push({type:"setForegroundColor",value:{type:"named",name:K[r-90+8]}}):r>=100&&r<=107&&n.push({type:"setBackgroundColor",value:{type:"named",name:K[r-100+8]}})}return n}function Vi(){let e=null,n=null,t=new Set;return{parse(r){const o=[];let i=0;do{const a=Ri(r,i),s=a.sequence?r.substring(i,a.startPosition):r.substring(i);if(s.length>0&&o.push({value:s,foreground:e,background:n,decorations:new Set(t)}),a.sequence){const u=xi(a.sequence);for(const c of u)c.type==="resetAll"?(e=null,n=null,t.clear()):c.type==="resetForegroundColor"?e=null:c.type==="resetBackgroundColor"?n=null:c.type==="resetDecoration"&&t.delete(c.value);for(const c of u)c.type==="setForegroundColor"?e=c.value:c.type==="setBackgroundColor"?n=c.value:c.type==="setDecoration"&&t.add(c.value)}i=a.position}while(iMath.max(0,Math.min(u,255)).toString(16).padStart(2,"0")).join("")}`}let r;function o(){if(r)return r;r=[];for(let c=0;c{const u=`terminal.ansi${s[0].toUpperCase()}${s.substring(1)}`;return[s,e.colors?.[u]||Bi[s]]}))),a=Vi();return o.map(s=>a.parse(s[0]).map(u=>{let c,p;u.decorations.has("reverse")?(c=u.background?i.value(u.background):e.bg,p=u.foreground?i.value(u.foreground):e.fg):(c=u.foreground?i.value(u.foreground):e.fg,p=u.background?i.value(u.background):void 0),c=J(c,r),p=J(p,r),u.decorations.has("dim")&&(c=Fi(c));let d=V.None;return u.decorations.has("bold")&&(d|=V.Bold),u.decorations.has("italic")&&(d|=V.Italic),u.decorations.has("underline")&&(d|=V.Underline),u.decorations.has("strikethrough")&&(d|=V.Strikethrough),{content:u.value,offset:s[1],color:c,bgColor:p,fontStyle:d}}))}function Fi(e){const n=e.match(Mi);if(n){const r=n[1];if(r.length===8){const o=Math.round(Number.parseInt(r.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${r.slice(0,6)}${o}`}else{if(r.length===6)return`#${r}80`;if(r.length===4){const o=r[0],i=r[1],a=r[2],s=r[3];return`#${o}${o}${i}${i}${a}${a}${Math.round(Number.parseInt(`${s}${s}`,16)/2).toString(16).padStart(2,"0")}`}else if(r.length===3){const o=r[0],i=r[1],a=r[2];return`#${o}${o}${i}${i}${a}${a}80`}}}const t=e.match(Ui);return t?`var(${t[1]}-dim)`:e}function De(e,n,t={}){const r=e.resolveLangAlias(t.lang||"text"),{theme:o=e.getLoadedThemes()[0]}=t;if(!An(r)&&!Tn(o)&&r==="ansi"){const{theme:i}=e.setTheme(o);return Zn(i,n,t)}return Rr(e,n,t)}function he(e,n,t){let r,o,i,a,s,u;if("themes"in t){const{defaultColor:c="light",cssVariablePrefix:p="--shiki-",colorsRendering:d="css-vars"}=t,m=Object.entries(t.themes).filter(_=>_[1]).map(_=>({color:_[0],theme:_[1]})).sort((_,b)=>_.color===c?-1:b.color===c?1:0);if(m.length===0)throw new x("`themes` option must not be empty");const f=_t(e,n,t,De);if(u=it(f),c&&c!=="light-dark()"&&!m.some(_=>_.color===c))throw new x(`\`themes\` option must contain the defaultColor key \`${c}\``);const g=m.map(_=>e.getTheme(_.theme)),y=m.map(_=>_.color);i=f.map(_=>_.map(b=>Xn(b,y,p,c,d))),u&&wn(i,u);const E=m.map(_=>Pe(_.theme,t));o=Zt(m,g,E,p,c,"fg",d),r=Zt(m,g,E,p,c,"bg",d),a=`shiki-themes ${g.map(_=>_.name).join(" ")}`,s=c?void 0:[o,r].join(";")}else if("theme"in t){const c=Pe(t.theme,t);i=De(e,n,t);const p=e.getTheme(t.theme);r=J(p.bg,c),o=J(p.fg,c),a=p.name,u=it(i)}else throw new x("Invalid options, either `theme` or `themes` must be provided");return{tokens:i,fg:o,bg:r,themeName:a,rootStyle:s,grammarState:u}}function Zt(e,n,t,r,o,i,a){return e.map((s,u)=>{const c=J(n[u][i],t[u])||"inherit",p=`${r+s.color}${i==="bg"?"-bg":""}:${c}`;if(u===0&&o){if(o==="light-dark()"&&e.length>1){const d=e.findIndex(f=>f.color==="light"),m=e.findIndex(f=>f.color==="dark");if(d===-1||m===-1)throw new x('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');return`light-dark(${J(n[d][i],t[d])||"inherit"}, ${J(n[m][i],t[m])||"inherit"});${p}`}return c}return a==="css-vars"?p:null}).filter(s=>!!s).join(";")}const Kn=/^\s+$/,Gi=/^(\s*)(.*?)(\s*)$/;function _e(e,n,t,r={meta:{},options:t,codeToHast:(o,i)=>_e(e,o,i),codeToTokens:(o,i)=>he(e,o,i)}){let o=n;for(const g of Se(t))o=g.preprocess?.call(r,o,t)||o;let{tokens:i,fg:a,bg:s,themeName:u,rootStyle:c,grammarState:p}=he(e,o,t);const{mergeWhitespaces:d=!0,mergeSameStyleTokens:m=!1}=t;d===!0?i=Hi(i):d==="never"&&(i=ji(i)),m&&(i=zi(i));const f={...r,get source(){return o}};for(const g of Se(t))i=g.tokens?.call(f,i)||i;return Yn(i,{...t,fg:a,bg:s,themeName:u,rootStyle:t.rootStyle===!1?!1:t.rootStyle??c},f,p)}function Yn(e,n,t,r=it(e)){const o=Se(n),i=[],a={type:"root",children:[]},{structure:s="classic",tabindex:u="0"}=n,c={class:`shiki ${n.themeName||""}`};n.rootStyle!==!1&&(n.rootStyle!=null?c.style=n.rootStyle:c.style=`background-color:${n.bg};color:${n.fg}`),u!==!1&&u!=null&&(c.tabindex=u.toString());for(const[y,E]of Object.entries(n.meta||{}))y.startsWith("_")||(c[y]=E);let p={type:"element",tagName:"pre",properties:c,children:[],data:n.data},d={type:"element",tagName:"code",properties:{},children:i};const m=[],f={...t,structure:s,addClassToHast:Ct,get source(){return t.source},get tokens(){return e},get options(){return n},get root(){return a},get pre(){return p},get code(){return d},get lines(){return m}};if(e.forEach((y,E)=>{E&&(s==="inline"?a.children.push({type:"element",tagName:"br",properties:{},children:[]}):s==="classic"&&i.push({type:"text",value:` +`}));let _={type:"element",tagName:"span",properties:{class:"line"},children:[]},b=0;for(const v of y){let C={type:"element",tagName:"span",properties:{...v.htmlAttrs},children:[{type:"text",value:v.content}]};const S=Oe(v.htmlStyle||ge(v));S&&(C.properties.style=S);for(const H of o)C=H?.span?.call(f,C,E+1,b,_,v)||C;s==="inline"?a.children.push(C):s==="classic"&&_.children.push(C),b+=v.content.length}if(s==="classic"){for(const v of o)_=v?.line?.call(f,_,E+1)||_;m.push(_),i.push(_)}else s==="inline"&&m.push(_)}),s==="classic"){for(const y of o)d=y?.code?.call(f,d)||d;p.children.push(d);for(const y of o)p=y?.pre?.call(f,p)||p;a.children.push(p)}else if(s==="inline"){const y=[];let E={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(const b of a.children)b.type==="element"&&b.tagName==="br"?(y.push(E),E={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(b.type==="element"||b.type==="text")&&E.children.push(b);y.push(E);let _={type:"element",tagName:"code",properties:{},children:y};for(const b of o)_=b?.code?.call(f,_)||_;a.children=[];for(let b=0;b<_.children.length;b++){b>0&&a.children.push({type:"element",tagName:"br",properties:{},children:[]});const v=_.children[b];v.type==="element"&&a.children.push(...v.children)}}let g=a;for(const y of o)g=y?.root?.call(f,g)||g;return r&&wn(g,r),g}function Hi(e){return e.map(n=>{const t=[];let r="",o;return n.forEach((i,a)=>{const s=!(i.fontStyle&&(i.fontStyle&V.Underline||i.fontStyle&V.Strikethrough));s&&Kn.test(i.content)&&n[a+1]?(o===void 0&&(o=i.offset),r+=i.content):r?(s?t.push({...i,offset:o,content:r+i.content}):t.push({content:r,offset:o},i),o=void 0,r=""):t.push(i)}),t})}function ji(e){return e.map(n=>n.flatMap(t=>{if(Kn.test(t.content))return t;const r=t.content.match(Gi);if(!r)return t;const[,o,i,a]=r;if(!o&&!a)return t;const s=[{...t,offset:t.offset+o.length,content:i}];return o&&s.unshift({content:o,offset:t.offset}),a&&s.push({content:a,offset:t.offset+o.length+i.length}),s}))}function zi(e){return e.map(n=>{const t=[];for(const r of n){if(t.length===0){t.push({...r});continue}const o=t.at(-1),i=Oe(o.htmlStyle||ge(o)),a=Oe(r.htmlStyle||ge(r)),s=o.fontStyle&&(o.fontStyle&V.Underline||o.fontStyle&V.Strikethrough),u=r.fontStyle&&(r.fontStyle&V.Underline||r.fontStyle&V.Strikethrough);!s&&!u&&i===a?o.content+=r.content:t.push({...r})}return t})}const er=ei;function tr(e,n,t){const r={meta:{},options:t,codeToHast:(i,a)=>_e(e,i,a),codeToTokens:(i,a)=>he(e,i,a)};let o=er(_e(e,n,t,r));for(const i of Se(t))o=i.postprocess?.call(r,o,t)||o;return o}async function Lt(e){const n=await En(e);return{getLastGrammarState:(...t)=>bn(n,...t),codeToTokensBase:(t,r)=>De(n,t,r),codeToTokensWithThemes:(t,r)=>_t(n,t,r),codeToTokens:(t,r)=>he(n,t,r),codeToHast:(t,r)=>_e(n,t,r),codeToHtml:(t,r)=>tr(n,t,r),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...n,getInternalContext:()=>n}}function Wi(e){const n=vn(e);return{getLastGrammarState:(...t)=>bn(n,...t),codeToTokensBase:(t,r)=>De(n,t,r),codeToTokensWithThemes:(t,r)=>_t(n,t,r),codeToTokens:(t,r)=>he(n,t,r),codeToHast:(t,r)=>_e(n,t,r),codeToHtml:(t,r)=>tr(n,t,r),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...n,getInternalContext:()=>n}}function nr(e){let n;async function t(r){if(n){const o=await n;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}else return n=e({...r,themes:r.themes||[],langs:r.langs||[]}),n}return t}const qi=nr(Lt);function rr(e){const n=e.langs,t=e.themes,r=e.engine;async function o(i){function a(d){if(typeof d=="string"){if(d=i.langAlias?.[d]||d,Ln(d))return[];const m=n[d];if(!m)throw new x(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return m}return d}function s(d){if(Cn(d))return"none";if(typeof d=="string"){const m=t[d];if(!m)throw new x(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return m}return d}const u=(i.themes??[]).map(d=>s(d)),c=(i.langs??[]).map(d=>a(d)),p=await Lt({engine:i.engine??r(),...i,themes:u,langs:c});return{...p,loadLanguage(...d){return p.loadLanguage(...d.map(a))},loadTheme(...d){return p.loadTheme(...d.map(s))},getBundledLanguages(){return n},getBundledThemes(){return t}}}return o}function or(e){let n;async function t(r={}){if(n){const o=await n;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}else{n=e({...r,themes:[],langs:[]});const o=await n;return await Promise.all([o.loadTheme(...r.themes||[]),o.loadLanguage(...r.langs||[])]),o}}return t}function ir(e,n){const t=or(e);async function r(o,i){const a=await t({langs:[i.lang],themes:"theme"in i?[i.theme]:Object.values(i.themes)}),s=await n?.guessEmbeddedLanguages?.(o,i.lang,a);return s&&await a.loadLanguage(...s),a}return{getSingletonHighlighter(o){return t(o)},async codeToHtml(o,i){return(await r(o,i)).codeToHtml(o,i)},async codeToHast(o,i){return(await r(o,i)).codeToHast(o,i)},async codeToTokens(o,i){return(await r(o,i)).codeToTokens(o,i)},async codeToTokensBase(o,i){return(await r(o,i)).codeToTokensBase(o,i)},async codeToTokensWithThemes(o,i){return(await r(o,i)).codeToTokensWithThemes(o,i)},async getLastGrammarState(o,i){return(await t({langs:[i.lang],themes:[i.theme]})).getLastGrammarState(o,i)}}}function Xi(e={}){const{name:n="css-variables",variablePrefix:t="--shiki-",fontStyle:r=!0}=e,o=a=>e.variableDefaults?.[a]?`var(${t}${a}, ${e.variableDefaults[a]})`:`var(${t}${a})`,i={name:n,type:"dark",colors:{"editor.foreground":o("foreground"),"editor.background":o("background"),"terminal.ansiBlack":o("ansi-black"),"terminal.ansiRed":o("ansi-red"),"terminal.ansiGreen":o("ansi-green"),"terminal.ansiYellow":o("ansi-yellow"),"terminal.ansiBlue":o("ansi-blue"),"terminal.ansiMagenta":o("ansi-magenta"),"terminal.ansiCyan":o("ansi-cyan"),"terminal.ansiWhite":o("ansi-white"),"terminal.ansiBrightBlack":o("ansi-bright-black"),"terminal.ansiBrightRed":o("ansi-bright-red"),"terminal.ansiBrightGreen":o("ansi-bright-green"),"terminal.ansiBrightYellow":o("ansi-bright-yellow"),"terminal.ansiBrightBlue":o("ansi-bright-blue"),"terminal.ansiBrightMagenta":o("ansi-bright-magenta"),"terminal.ansiBrightCyan":o("ansi-bright-cyan"),"terminal.ansiBrightWhite":o("ansi-bright-white")},tokenColors:[{scope:["keyword.operator.accessor","meta.group.braces.round.function.arguments","meta.template.expression","markup.fenced_code meta.embedded.block"],settings:{foreground:o("foreground")}},{scope:"emphasis",settings:{fontStyle:"italic"}},{scope:["strong","markup.heading.markdown","markup.bold.markdown"],settings:{fontStyle:"bold"}},{scope:["markup.italic.markdown"],settings:{fontStyle:"italic"}},{scope:"meta.link.inline.markdown",settings:{fontStyle:"underline",foreground:o("token-link")}},{scope:["string","markup.fenced_code","markup.inline"],settings:{foreground:o("token-string")}},{scope:["comment","string.quoted.docstring.multi"],settings:{foreground:o("token-comment")}},{scope:["constant.numeric","constant.language","constant.other.placeholder","constant.character.format.placeholder","variable.language.this","variable.other.object","variable.other.class","variable.other.constant","meta.property-name","meta.property-value","support"],settings:{foreground:o("token-constant")}},{scope:["keyword","storage.modifier","storage.type","storage.control.clojure","entity.name.function.clojure","entity.name.tag.yaml","support.function.node","support.type.property-name.json","punctuation.separator.key-value","punctuation.definition.template-expression"],settings:{foreground:o("token-keyword")}},{scope:"variable.parameter.function",settings:{foreground:o("token-parameter")}},{scope:["support.function","entity.name.type","entity.other.inherited-class","meta.function-call","meta.instance.constructor","entity.other.attribute-name","entity.name.function","constant.keyword.clojure"],settings:{foreground:o("token-function")}},{scope:["entity.name.tag","string.quoted","string.regexp","string.interpolated","string.template","string.unquoted.plain.out.yaml","keyword.other.template"],settings:{foreground:o("token-string-expression")}},{scope:["punctuation.definition.arguments","punctuation.definition.dict","punctuation.separator","meta.function-call.arguments"],settings:{foreground:o("token-punctuation")}},{scope:["markup.underline.link","punctuation.definition.metadata.markdown"],settings:{foreground:o("token-link")}},{scope:["beginning.punctuation.definition.list.markdown"],settings:{foreground:o("token-string")}},{scope:["punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown","string.other.link.title.markdown","string.other.link.description.markdown"],settings:{foreground:o("token-keyword")}},{scope:["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],settings:{foreground:o("token-inserted")}},{scope:["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],settings:{foreground:o("token-deleted")}},{scope:["markup.changed","punctuation.definition.changed"],settings:{foreground:o("token-changed")}}]};return r||(i.tokenColors=i.tokenColors?.map(a=>(a.settings?.fontStyle&&delete a.settings.fontStyle,a))),i}var Ji=wt({bundledLanguages:()=>Ne,bundledLanguagesAlias:()=>Ve,bundledLanguagesBase:()=>xe,bundledLanguagesInfo:()=>be,bundledThemes:()=>Me,bundledThemesInfo:()=>$e,codeToHast:()=>It,codeToHtml:()=>kt,codeToTokens:()=>Pt,codeToTokensBase:()=>Ot,codeToTokensWithThemes:()=>St,createHighlighter:()=>Ge,getLastGrammarState:()=>Rt,getSingletonHighlighter:()=>Dt});const Ge=rr({langs:Ne,themes:Me,engine:()=>(0,Hn.createOnigurumaEngine)(l(()=>import("./wasm-CG6Dc4jp.js"),[]))}),{codeToHtml:kt,codeToHast:It,codeToTokens:Pt,codeToTokensBase:Ot,codeToTokensWithThemes:St,getSingletonHighlighter:Dt,getLastGrammarState:Rt}=ir(Ge,{guessEmbeddedLanguages:zn}),Kt=4294967295;var Qi=class{patterns;options;regexps;constructor(e,n={}){this.patterns=e,this.options=n;const{forgiving:t=!1,cache:r,regexConstructor:o}=n;if(!o)throw new Error("Option `regexConstructor` is not provided");this.regexps=e.map(i=>{if(typeof i!="string")return i;const a=r?.get(i);if(a){if(a instanceof RegExp)return a;if(t)return null;throw a}try{const s=o(i);return r?.set(i,s),s}catch(s){if(r?.set(i,s),t)return null;throw s}})}findNextMatchSync(e,n,t){const r=typeof e=="string"?e:e.content,o=[];function i(a,s,u=0){return{index:a,captureIndices:s.indices.map(c=>c==null?{start:Kt,end:Kt,length:0}:{start:c[0]+u,end:c[1]+u,length:c[1]-c[0]})}}for(let a=0;as[1].index));for(const[s,u,c]of o)if(u.index===a)return i(s,u,c)}return null}};function de(e){if([...e].length!==1)throw new Error(`Expected "${e}" to be a single code point`);return e.codePointAt(0)}function Zi(e,n,t){return e.has(n)||e.set(n,t),e.get(n)}const xt=new Set(["alnum","alpha","ascii","blank","cntrl","digit","graph","lower","print","punct","space","upper","word","xdigit"]),R=String.raw;function pe(e,n){if(e==null)throw new Error(n??"Value expected");return e}const ar=R`\[\^?`,sr=`c.? | C(?:-.?)?|${R`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${R`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${R`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${R`o\{[^\}]*\}?`}|${R`\d{1,3}`}`,Vt=/[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/,Ce=new RegExp(R` + \\ (?: + ${sr} + | [gk]<[^>]*>? + | [gk]'[^']*'? + | . + ) + | \( (?: + \? (?: + [:=!>({] + | <[=!] + | <[^>]*> + | '[^']*' + | ~\|? + | #(?:[^)\\]|\\.?)* + | [^:)]*[:)] + )? + | \*[^\)]*\)? + )? + | (?:${Vt.source})+ + | ${ar} + | . +`.replace(/\s+/g,""),"gsu"),Ke=new RegExp(R` + \\ (?: + ${sr} + | . + ) + | \[:(?:\^?\p{Alpha}+|\^):\] + | ${ar} + | && + | . +`.replace(/\s+/g,""),"gsu");function Ki(e,n={}){const t={flags:"",...n,rules:{captureGroup:!1,singleline:!1,...n.rules}};if(typeof e!="string")throw new Error("String expected as pattern");const r=_a(t.flags),o=[r.extended],i={captureGroup:t.rules.captureGroup,getCurrentModX(){return o.at(-1)},numOpenGroups:0,popModX(){o.pop()},pushModX(d){o.push(d)},replaceCurrentModX(d){o[o.length-1]=d},singleline:t.rules.singleline};let a=[],s;for(Ce.lastIndex=0;s=Ce.exec(e);){const d=Yi(i,e,s[0],Ce.lastIndex);d.tokens?a.push(...d.tokens):d.token&&a.push(d.token),d.lastIndex!==void 0&&(Ce.lastIndex=d.lastIndex)}const u=[];let c=0;a.filter(d=>d.type==="GroupOpen").forEach(d=>{d.kind==="capturing"?d.number=++c:d.raw==="("&&u.push(d)}),c||u.forEach((d,m)=>{d.kind="capturing",d.number=m+1});const p=c||u.length;return{tokens:a.map(d=>d.type==="EscapedNumber"?Ea(d,p):d).flat(),flags:r}}function Yi(e,n,t,r){const[o,i]=t;if(t==="["||t==="[^"){const a=ea(n,t,r);return{tokens:a.tokens,lastIndex:a.lastIndex}}if(o==="\\"){if("AbBGyYzZ".includes(i))return{token:Yt(t,t)};if(/^\\g[<']/.test(t)){if(!/^\\g(?:<[^>]+>|'[^']+')$/.test(t))throw new Error(`Invalid group name "${t}"`);return{token:ca(t)}}if(/^\\k[<']/.test(t)){if(!/^\\k(?:<[^>]+>|'[^']+')$/.test(t))throw new Error(`Invalid group name "${t}"`);return{token:ur(t)}}if(i==="K")return{token:cr("keep",t)};if(i==="N"||i==="R")return{token:Y("newline",t,{negate:i==="N"})};if(i==="O")return{token:Y("any",t)};if(i==="X")return{token:Y("text_segment",t)};const a=lr(t,{inCharClass:!1});return Array.isArray(a)?{tokens:a}:{token:a}}if(o==="("){if(i==="*")return{token:fa(t)};if(t==="(?{")throw new Error(`Unsupported callout "${t}"`);if(t.startsWith("(?#")){if(n[r]!==")")throw new Error('Unclosed comment group "(?#"');return{lastIndex:r+1}}if(/^\(\?[-imx]+[:)]$/.test(t))return{token:ma(t,e)};if(e.pushModX(e.getCurrentModX()),e.numOpenGroups++,t==="("&&!e.captureGroup||t==="(?:")return{token:se("group",t)};if(t==="(?>")return{token:se("atomic",t)};if(t==="(?="||t==="(?!"||t==="(?<="||t==="(?")||t.startsWith("(?'")&&t.endsWith("'"))return{token:se("capturing",t,{...t!=="("&&{name:t.slice(3,-1)}})};if(t.startsWith("(?~")){if(t==="(?~|")throw new Error(`Unsupported absence function kind "${t}"`);return{token:se("absence_repeater",t)}}throw t==="(?("?new Error(`Unsupported conditional "${t}"`):new Error(`Invalid or unsupported group option "${t}"`)}if(t===")"){if(e.popModX(),e.numOpenGroups--,e.numOpenGroups<0)throw new Error('Unmatched ")"');return{token:sa(t)}}if(e.getCurrentModX()){if(t==="#"){const a=n.indexOf(` +`,r);return{lastIndex:a===-1?n.length:a}}if(/^\s$/.test(t)){const a=/\s+/y;return a.lastIndex=r,{lastIndex:a.exec(n)?a.lastIndex:r}}}if(t===".")return{token:Y("dot",t)};if(t==="^"||t==="$"){const a=e.singleline?{"^":R`\A`,$:R`\Z`}[t]:t;return{token:Yt(a,t)}}return t==="|"?{token:na(t)}:Vt.test(t)?{tokens:ba(t)}:{token:W(de(t),t)}}function ea(e,n,t){const r=[en(n[1]==="^",n)];let o=1,i;for(Ke.lastIndex=t;i=Ke.exec(e);){const a=i[0];if(a[0]==="["&&a[1]!==":")o++,r.push(en(a[1]==="^",a));else if(a==="]"){if(r.at(-1).type==="CharacterClassOpen")r.push(W(93,a));else if(o--,r.push(ra(a)),!o)break}else{const s=ta(a);Array.isArray(s)?r.push(...s):r.push(s)}}return{tokens:r,lastIndex:Ke.lastIndex||e.length}}function ta(e){if(e[0]==="\\")return lr(e,{inCharClass:!0});if(e[0]==="["){const n=/\[:(?\^?)(?[a-z]+):\]/.exec(e);if(!n||!xt.has(n.groups.name))throw new Error(`Invalid POSIX class "${e}"`);return Y("posix",e,{value:n.groups.name,negate:!!n.groups.negate})}return e==="-"?oa(e):e==="&&"?ia(e):W(de(e),e)}function lr(e,{inCharClass:n}){const t=e[1];if(t==="c"||t==="C")return pa(e);if("dDhHsSwW".includes(t))return ga(e);if(e.startsWith(R`\o{`))throw new Error(`Incomplete, invalid, or unsupported octal code point "${e}"`);if(/^\\[pP]\{/.test(e)){if(e.length===3)throw new Error(`Incomplete or invalid Unicode property "${e}"`);return ha(e)}if(/^\\x[89A-Fa-f]\p{AHex}/u.test(e))try{const r=e.split(/\\x/).slice(1).map(a=>parseInt(a,16)),o=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}).decode(new Uint8Array(r)),i=new TextEncoder;return[...o].map(a=>{const s=[...i.encode(a)].map(u=>`\\x${u.toString(16)}`).join("");return W(de(a),s)})}catch{throw new Error(`Multibyte code "${e}" incomplete or invalid in Oniguruma`)}if(t==="u"||t==="x")return W(ya(e),e);if(tn.has(t))return W(tn.get(t),e);if(/\d/.test(t))return aa(n,e);if(e==="\\")throw new Error(R`Incomplete escape "\"`);if(t==="M")throw new Error(`Unsupported meta "${e}"`);if([...e].length===2)return W(e.codePointAt(1),e);throw new Error(`Unexpected escape "${e}"`)}function na(e){return{type:"Alternator",raw:e}}function Yt(e,n){return{type:"Assertion",kind:e,raw:n}}function ur(e){return{type:"Backreference",raw:e}}function W(e,n){return{type:"Character",value:e,raw:n}}function ra(e){return{type:"CharacterClassClose",raw:e}}function oa(e){return{type:"CharacterClassHyphen",raw:e}}function ia(e){return{type:"CharacterClassIntersector",raw:e}}function en(e,n){return{type:"CharacterClassOpen",negate:e,raw:n}}function Y(e,n,t={}){return{type:"CharacterSet",kind:e,...t,raw:n}}function cr(e,n,t={}){return e==="keep"?{type:"Directive",kind:e,raw:n}:{type:"Directive",kind:e,flags:pe(t.flags),raw:n}}function aa(e,n){return{type:"EscapedNumber",inCharClass:e,raw:n}}function sa(e){return{type:"GroupClose",raw:e}}function se(e,n,t={}){return{type:"GroupOpen",kind:e,...t,raw:n}}function la(e,n,t,r){return{type:"NamedCallout",kind:e,tag:n,arguments:t,raw:r}}function ua(e,n,t,r){return{type:"Quantifier",kind:e,min:n,max:t,raw:r}}function ca(e){return{type:"Subroutine",raw:e}}const da=new Set(["COUNT","CMP","ERROR","FAIL","MAX","MISMATCH","SKIP","TOTAL_COUNT"]),tn=new Map([["a",7],["b",8],["e",27],["f",12],["n",10],["r",13],["t",9],["v",11]]);function pa(e){const n=e[1]==="c"?e[2]:e[3];if(!n||!/[A-Za-z]/.test(n))throw new Error(`Unsupported control character "${e}"`);return W(de(n.toUpperCase())-64,e)}function ma(e,n){let{on:t,off:r}=/^\(\?(?[imx]*)(?:-(?[-imx]*))?/.exec(e).groups;r??="";const o=(n.getCurrentModX()||t.includes("x"))&&!r.includes("x"),i=rn(t),a=rn(r),s={};if(i&&(s.enable=i),a&&(s.disable=a),e.endsWith(")"))return n.replaceCurrentModX(o),cr("flags",e,{flags:s});if(e.endsWith(":"))return n.pushModX(o),n.numOpenGroups++,se("group",e,{...(i||a)&&{flags:s}});throw new Error(`Unexpected flag modifier "${e}"`)}function fa(e){const n=/\(\*(?[A-Za-z_]\w*)?(?:\[(?(?:[A-Za-z_]\w*)?)\])?(?:\{(?[^}]*)\})?\)/.exec(e);if(!n)throw new Error(`Incomplete or invalid named callout "${e}"`);const{name:t,tag:r,args:o}=n.groups;if(!t)throw new Error(`Invalid named callout "${e}"`);if(r==="")throw new Error(`Named callout tag with empty value not allowed "${e}"`);const i=o?o.split(",").filter(p=>p!=="").map(p=>/^[+-]?\d+$/.test(p)?+p:p):[],[a,s,u]=i,c=da.has(t)?t.toLowerCase():"custom";switch(c){case"fail":case"mismatch":case"skip":if(i.length>0)throw new Error(`Named callout arguments not allowed "${i}"`);break;case"error":if(i.length>1)throw new Error(`Named callout allows only one argument "${i}"`);if(typeof a=="string")throw new Error(`Named callout argument must be a number "${a}"`);break;case"max":if(!i.length||i.length>2)throw new Error(`Named callout must have one or two arguments "${i}"`);if(typeof a=="string"&&!/^[A-Za-z_]\w*$/.test(a))throw new Error(`Named callout argument one must be a tag or number "${a}"`);if(i.length===2&&(typeof s=="number"||!/^[<>X]$/.test(s)))throw new Error(`Named callout optional argument two must be '<', '>', or 'X' "${s}"`);break;case"count":case"total_count":if(i.length>1)throw new Error(`Named callout allows only one argument "${i}"`);if(i.length===1&&(typeof a=="number"||!/^[<>X]$/.test(a)))throw new Error(`Named callout optional argument must be '<', '>', or 'X' "${a}"`);break;case"cmp":if(i.length!==3)throw new Error(`Named callout must have three arguments "${i}"`);if(typeof a=="string"&&!/^[A-Za-z_]\w*$/.test(a))throw new Error(`Named callout argument one must be a tag or number "${a}"`);if(typeof s=="number"||!/^(?:[<>!=]=|[<>])$/.test(s))throw new Error(`Named callout argument two must be '==', '!=', '>', '<', '>=', or '<=' "${s}"`);if(typeof u=="string"&&!/^[A-Za-z_]\w*$/.test(u))throw new Error(`Named callout argument three must be a tag or number "${u}"`);break;case"custom":throw new Error(`Undefined callout name "${t}"`);default:throw new Error(`Unexpected named callout kind "${c}"`)}return la(c,r??null,o?.split(",")??null,e)}function nn(e){let n=null,t,r;if(e[0]==="{"){const{minStr:o,maxStr:i}=/^\{(?\d*)(?:,(?\d*))?/.exec(e).groups,a=1e5;if(+o>a||i&&+i>a)throw new Error("Quantifier value unsupported in Oniguruma");if(t=+o,r=i===void 0?+o:i===""?1/0:+i,t>r&&(n="possessive",[t,r]=[r,t]),e.endsWith("?")){if(n==="possessive")throw new Error('Unsupported possessive interval quantifier chain with "?"');n="lazy"}else n||(n="greedy")}else t=e[0]==="+"?1:0,r=e[0]==="?"?1:1/0,n=e[1]==="+"?"possessive":e[1]==="?"?"lazy":"greedy";return ua(n,t,r,e)}function ga(e){const n=e[1].toLowerCase();return Y({d:"digit",h:"hex",s:"space",w:"word"}[n],e,{negate:e[1]!==n})}function ha(e){const{p:n,neg:t,value:r}=/^\\(?

[pP])\{(?\^?)(?[^}]+)/.exec(e).groups;return Y("property",e,{value:r,negate:n==="P"&&!t||n==="p"&&!!t})}function rn(e){const n={};return e.includes("i")&&(n.ignoreCase=!0),e.includes("m")&&(n.dotAll=!0),e.includes("x")&&(n.extended=!0),Object.keys(n).length?n:null}function _a(e){const n={ignoreCase:!1,dotAll:!1,extended:!1,digitIsAscii:!1,posixIsAscii:!1,spaceIsAscii:!1,wordIsAscii:!1,textSegmentMode:null};for(let t=0;t\p{AHex}+)/u.exec(e).groups.hex:e.slice(2);return parseInt(n,16)}function Ea(e,n){const{raw:t,inCharClass:r}=e,o=t.slice(1);if(!r&&(o!=="0"&&o.length===1||o[0]!=="0"&&+o<=n))return[ur(t)];const i=[],a=o.match(/^[0-7]+|\d/g);for(let s=0;s127)throw new Error(R`Octal encoded byte above 177 unsupported "${t}"`)}else c=de(u);i.push(W(c,(s===0?"\\":"")+u))}return i}function ba(e){const n=[],t=new RegExp(Vt,"gy");let r;for(;r=t.exec(e);){const o=r[0];if(o[0]==="{"){const i=/^\{(?\d+),(?\d+)\}\??$/.exec(o);if(i){const{min:a,max:s}=i.groups;if(+a>+s&&o.endsWith("?")){t.lastIndex--,n.push(nn(o.slice(0,-1)));continue}}}n.push(nn(o))}return n}function dr(e,n){if(!Array.isArray(e.body))throw new Error("Expected node with body array");if(e.body.length!==1)return!1;const t=e.body[0];return!n||Object.keys(n).every(r=>n[r]===t[r])}function va(e){return wa.has(e.type)}const wa=new Set(["AbsenceFunction","Backreference","CapturingGroup","Character","CharacterClass","CharacterSet","Group","Quantifier","Subroutine"]);function pr(e,n={}){const t={flags:"",normalizeUnknownPropertyNames:!1,skipBackrefValidation:!1,skipLookbehindValidation:!1,skipPropertyNameValidation:!1,unicodePropertyMap:null,...n,rules:{captureGroup:!1,singleline:!1,...n.rules}},r=Ki(e,{flags:t.flags,rules:{captureGroup:t.rules.captureGroup,singleline:t.rules.singleline}}),o=(m,f)=>{const g=r.tokens[i.nextIndex];switch(i.parent=m,i.nextIndex++,g.type){case"Alternator":return te();case"Assertion":return Aa(g);case"Backreference":return Ta(g,i);case"Character":return He(g.value,{useLastValid:!!f.isCheckingRangeEnd});case"CharacterClassHyphen":return Ca(g,i,f);case"CharacterClassOpen":return La(g,i,f);case"CharacterSet":return ka(g,i);case"Directive":return Ra(g.kind,{flags:g.flags});case"GroupOpen":return Ia(g,i,f);case"NamedCallout":return Va(g.kind,g.tag,g.arguments);case"Quantifier":return Pa(g,i);case"Subroutine":return Oa(g,i);default:throw new Error(`Unexpected token type "${g.type}"`)}},i={capturingGroups:[],hasNumberedRef:!1,namedGroupsByName:new Map,nextIndex:0,normalizeUnknownPropertyNames:t.normalizeUnknownPropertyNames,parent:null,skipBackrefValidation:t.skipBackrefValidation,skipLookbehindValidation:t.skipLookbehindValidation,skipPropertyNameValidation:t.skipPropertyNameValidation,subroutines:[],tokens:r.tokens,unicodePropertyMap:t.unicodePropertyMap,walk:o},a=$a(xa(r.flags));let s=a.body[0];for(;i.nextIndexu.length)throw new Error("Subroutine uses a group number that's not defined");m&&(u[m-1].isSubroutined=!0)}else if(p.has(m)){if(p.get(m).length>1)throw new Error(R`Subroutine uses a duplicate group name "\g<${m}>"`);p.get(m)[0].isSubroutined=!0}else throw new Error(R`Subroutine uses a group name that's not defined "\g<${m}>"`);return a}function Aa({kind:e}){return dt(pe({"^":"line_start",$:"line_end","\\A":"string_start","\\b":"word_boundary","\\B":"word_boundary","\\G":"search_start","\\y":"text_segment_boundary","\\Y":"text_segment_boundary","\\z":"string_end","\\Z":"string_end_newline"}[e],`Unexpected assertion kind "${e}"`),{negate:e===R`\B`||e===R`\Y`})}function Ta({raw:e},n){const t=/^\\k[<']/.test(e),r=t?e.slice(3,-1):e.slice(1),o=(i,a=!1)=>{const s=n.capturingGroups.length;let u=!1;if(i>s)if(n.skipBackrefValidation)u=!0;else throw new Error(`Not enough capturing groups defined to the left "${e}"`);return n.hasNumberedRef=!0,pt(a?s+1-i:i,{orphan:u})};if(t){const i=/^(?-?)0*(?[1-9]\d*)$/.exec(r);if(i)return o(+i.groups.num,!!i.groups.sign);if(/[-+]/.test(r))throw new Error(`Invalid backref name "${e}"`);if(!n.namedGroupsByName.has(r))throw new Error(`Group name not defined to the left "${e}"`);return pt(r)}return o(+r)}function Ca(e,n,t){const{tokens:r,walk:o}=n,i=n.parent,a=i.body.at(-1),s=r[n.nextIndex];if(!t.isCheckingRangeEnd&&a&&a.type!=="CharacterClass"&&a.type!=="CharacterClassRange"&&s&&s.type!=="CharacterClassOpen"&&s.type!=="CharacterClassClose"&&s.type!=="CharacterClassIntersector"){const u=o(i,{...t,isCheckingRangeEnd:!0});if(a.type==="Character"&&u.type==="Character")return i.body.pop(),Da(a,u);throw new Error("Invalid character class range")}return He(de("-"))}function La({negate:e},n,t){const{tokens:r,walk:o}=n,i=[Ie()],a=r[n.nextIndex];let s=sn(a);for(;s.type!=="CharacterClassClose";){if(s.type==="CharacterClassIntersector")i.push(Ie()),n.nextIndex++;else{const c=i.at(-1);c.body.push(o(c,t))}s=sn(r[n.nextIndex],a)}const u=Ie({negate:e});return i.length===1?u.body=i[0].body:(u.kind="intersection",u.body=i.map(c=>c.body.length===1?c.body[0]:c)),n.nextIndex++,u}function ka({kind:e,negate:n,value:t},r){const{normalizeUnknownPropertyNames:o,skipPropertyNameValidation:i,unicodePropertyMap:a}=r;if(e==="property"){const s=je(t);if(xt.has(s)&&!a?.has(s))e="posix",t=s;else return le(t,{negate:n,normalizeUnknownPropertyNames:o,skipPropertyNameValidation:i,unicodePropertyMap:a})}return e==="posix"?Na(t,{negate:n}):mt(e,{negate:n})}function Ia(e,n,t){const{tokens:r,capturingGroups:o,namedGroupsByName:i,skipLookbehindValidation:a,walk:s}=n,u=Ma(e),c=u.type==="AbsenceFunction",p=an(u),d=p&&u.negate;if(u.type==="CapturingGroup"&&(o.push(u),u.name&&Zi(i,u.name,[]).push(u)),c&&t.isInAbsenceFunction)throw new Error("Nested absence function not supported by Oniguruma");let m=ln(r[n.nextIndex]);for(;m.type!=="GroupClose";){if(m.type==="Alternator")u.body.push(te()),n.nextIndex++;else{const f=u.body.at(-1),g=s(f,{...t,isInAbsenceFunction:t.isInAbsenceFunction||c,isInLookbehind:t.isInLookbehind||p,isInNegLookbehind:t.isInNegLookbehind||d});if(f.body.push(g),(p||t.isInLookbehind)&&!a){const y="Lookbehind includes a pattern not allowed by Oniguruma";if(d||t.isInNegLookbehind){if(on(g)||g.type==="CapturingGroup")throw new Error(y)}else if(on(g)||an(g)&&g.negate)throw new Error(y)}}m=ln(r[n.nextIndex])}return n.nextIndex++,u}function Pa({kind:e,min:n,max:t},r){const o=r.parent,i=o.body.at(-1);if(!i||!va(i))throw new Error("Quantifier requires a repeatable token");const a=fr(e,n,t,i);return o.body.pop(),a}function Oa({raw:e},n){const{capturingGroups:t,subroutines:r}=n;let o=e.slice(3,-1);const i=/^(?[-+]?)0*(?[1-9]\d*)$/.exec(o);if(i){const s=+i.groups.num,u=t.length;if(n.hasNumberedRef=!0,o={"":s,"+":u+s,"-":u+1-s}[i.groups.sign],o<1)throw new Error("Invalid subroutine number")}else o==="0"&&(o=0);const a=gr(o);return r.push(a),a}function Sa(e,n){return{type:"AbsenceFunction",kind:e,body:ve(n?.body)}}function te(e){return{type:"Alternative",body:hr(e?.body)}}function dt(e,n){const t={type:"Assertion",kind:e};return(e==="word_boundary"||e==="text_segment_boundary")&&(t.negate=!!n?.negate),t}function pt(e,n){const t=!!n?.orphan;return{type:"Backreference",ref:e,...t&&{orphan:t}}}function mr(e,n){const t={name:void 0,isSubroutined:!1,...n};if(t.name!==void 0&&!Ua(t.name))throw new Error(`Group name "${t.name}" invalid in Oniguruma`);return{type:"CapturingGroup",number:e,...t.name&&{name:t.name},...t.isSubroutined&&{isSubroutined:t.isSubroutined},body:ve(n?.body)}}function He(e,n){const t={useLastValid:!1,...n};if(e>1114111){const r=e.toString(16);if(t.useLastValid)e=1114111;else throw e>1310719?new Error(`Invalid code point out of range "\\x{${r}}"`):new Error(`Invalid code point out of range in JS "\\x{${r}}"`)}return{type:"Character",value:e}}function Ie(e){const n={kind:"union",negate:!1,...e};return{type:"CharacterClass",kind:n.kind,negate:n.negate,body:hr(e?.body)}}function Da(e,n){if(n.valuet)throw new Error("Invalid reversed quantifier range");return{type:"Quantifier",kind:e,min:n,max:t,body:r}}function $a(e,n){return{type:"Regex",body:ve(n?.body),flags:e}}function gr(e){return{type:"Subroutine",ref:e}}function le(e,n){const t={negate:!1,normalizeUnknownPropertyNames:!1,skipPropertyNameValidation:!1,unicodePropertyMap:null,...n};let r=t.unicodePropertyMap?.get(je(e));if(!r){if(t.normalizeUnknownPropertyNames)r=Ba(e);else if(t.unicodePropertyMap&&!t.skipPropertyNameValidation)throw new Error(R`Invalid Unicode property "\p{${e}}"`)}return{type:"CharacterSet",kind:"property",value:r??e,negate:t.negate}}function Ma({flags:e,kind:n,name:t,negate:r,number:o}){switch(n){case"absence_repeater":return Sa("repeater");case"atomic":return B({atomic:!0});case"capturing":return mr(o,{name:t});case"group":return B({flags:e});case"lookahead":case"lookbehind":return Z({behind:n==="lookbehind",negate:r});default:throw new Error(`Unexpected group kind "${n}"`)}}function ve(e){if(e===void 0)e=[te()];else if(!Array.isArray(e)||!e.length||!e.every(n=>n.type==="Alternative"))throw new Error("Invalid body; expected array of one or more Alternative nodes");return e}function hr(e){if(e===void 0)e=[];else if(!Array.isArray(e)||!e.every(n=>!!n.type))throw new Error("Invalid body; expected array of nodes");return e}function on(e){return e.type==="LookaroundAssertion"&&e.kind==="lookahead"}function an(e){return e.type==="LookaroundAssertion"&&e.kind==="lookbehind"}function Ua(e){return/^[\p{Alpha}\p{Pc}][^)]*$/u.test(e)}function Ba(e){return e.trim().replace(/[- _]+/g,"_").replace(/[A-Z][a-z]+(?=[A-Z])/g,"$&_").replace(/[A-Za-z]+/g,n=>n[0].toUpperCase()+n.slice(1).toLowerCase())}function je(e){return e.replace(/[- _]+/g,"").toLowerCase()}function sn(e,n){const t=n;return pe(e,`Unclosed character class${t?.type==="Character"&&t.value===93&&t.raw==="]"?' (started with "]")':""}`)}function ln(e){return pe(e,"Unclosed group")}function fe(e,n,t=null){function r(i,a){for(let s=0;sA-Za-z\-]|<[=!]|\(DEFINE\))`;function Ga(e,n){for(let t=0;t=n&&e[t]++}function Ha(e,n,t,r){return e.slice(0,n)+r+e.slice(n+t.length)}const U=Object.freeze({DEFAULT:"DEFAULT",CHAR_CLASS:"CHAR_CLASS"});function Nt(e,n,t,r){const o=new RegExp(String.raw`${n}|(?<$skip>\[\^?|\\?.)`,"gsu"),i=[!1];let a=0,s="";for(const u of e.matchAll(o)){const{0:c,groups:{$skip:p}}=u;if(!p&&(!r||r===U.DEFAULT==!a)){t instanceof Function?s+=t(u,{context:a?U.CHAR_CLASS:U.DEFAULT,negated:i[i.length-1]}):s+=t;continue}c[0]==="["?(a++,i.push(c[1]==="^")):c==="]"&&a&&(a--,i.pop()),s+=c}return s}function _r(e,n,t,r){Nt(e,n,t,r)}function ja(e,n,t=0,r){if(!new RegExp(n,"su").test(e))return null;const o=new RegExp(`${n}|(?<$skip>\\\\?.)`,"gsu");o.lastIndex=t;let i=0,a;for(;a=o.exec(e);){const{0:s,groups:{$skip:u}}=a;if(!u&&(!r||r===U.DEFAULT==!i))return a;s==="["?i++:s==="]"&&i&&i--,o.lastIndex==a.index&&o.lastIndex++}return null}function ke(e,n,t){return!!ja(e,n,0,t)}function za(e,n){const t=/\\?./gsu;t.lastIndex=n;let r=e.length,o=0,i=1,a;for(;a=t.exec(e);){const[s]=a;if(s==="[")o++;else if(o)s==="]"&&o--;else if(s==="(")i++;else if(s===")"&&(i--,!i)){r=a.index;break}}return e.slice(n,r)}const un=new RegExp(String.raw`(?${Fa})|(?\((?:\?<[^>]+>)?)|\\?.`,"gsu");function Wa(e,n){const t=n?.hiddenCaptures??[];let r=n?.captureTransfers??new Map;if(!/\(\?>/.test(e))return{pattern:e,captureTransfers:r,hiddenCaptures:t};const o="(?>",i="(?:(?=(",a=[0],s=[];let u=0,c=0,p=NaN,d;do{d=!1;let m=0,f=0,g=!1,y;for(un.lastIndex=Number.isNaN(p)?0:p+i.length;y=un.exec(e);){const{0:E,index:_,groups:{capturingStart:b,noncapturingStart:v}}=y;if(E==="[")m++;else if(m)E==="]"&&m--;else if(E===o&&!g)p=_,g=!0;else if(g&&v)f++;else if(b)g?f++:(u++,a.push(u+c));else if(E===")"&&g){if(!f){c++;const C=u+c;if(e=`${e.slice(0,p)}${i}${e.slice(p+o.length,_)}))<$$${C}>)${e.slice(_+1)}`,d=!0,s.push(C),Ga(t,C),r.size){const S=new Map;r.forEach((H,re)=>{S.set(re>=C?re+1:re,H.map(oe=>oe>=C?oe+1:oe))}),r=S}break}f--}}}while(d);return t.push(...s),e=Nt(e,String.raw`\\(?[1-9]\d*)|<\$\$(?\d+)>`,({0:m,groups:{backrefNum:f,wrappedBackrefNum:g}})=>{if(f){const y=+f;if(y>a.length-1)throw new Error(`Backref "${m}" greater than number of captures`);return`\\${a[y]}`}return`\\${g}`},U.DEFAULT),{pattern:e,captureTransfers:r,hiddenCaptures:t}}const yr=String.raw`(?:[?*+]|\{\d+(?:,\d*)?\})`,Ye=new RegExp(String.raw` +\\(?: \d+ + | c[A-Za-z] + | [gk]<[^>]+> + | [pPu]\{[^\}]+\} + | u[A-Fa-f\d]{4} + | x[A-Fa-f\d]{2} + ) +| \((?: \? (?: [:=!>] + | <(?:[=!]|[^>]+>) + | [A-Za-z\-]+: + | \(DEFINE\) + ))? +| (?${yr})(?[?+]?)(?[?*+\{]?) +| \\?. +`.replace(/\s+/g,""),"gsu");function qa(e){if(!new RegExp(`${yr}\\+`).test(e))return{pattern:e};const n=[];let t=null,r=null,o="",i=0,a;for(Ye.lastIndex=0;a=Ye.exec(e);){const{0:s,index:u,groups:{qBase:c,qMod:p,invalidQ:d}}=a;if(s==="[")i||(r=u),i++;else if(s==="]")i?i--:r=null;else if(!i)if(p==="+"&&o&&!o.startsWith("(")){if(d)throw new Error(`Invalid quantifier "${s}"`);let m=-1;if(/^\{\d+\}$/.test(c))e=Ha(e,u+c.length,p,"");else{if(o===")"||o==="]"){const f=o===")"?t:r;if(f===null)throw new Error(`Invalid unmatched "${o}"`);e=`${e.slice(0,f)}(?>${e.slice(f,u)}${c})${e.slice(u+s.length)}`}else e=`${e.slice(0,u-o.length)}(?>${o}${c})${e.slice(u+s.length)}`;m+=4}Ye.lastIndex+=m}else s[0]==="("?n.push(u):s===")"&&(t=n.length?n.pop():null);o=s}return{pattern:e}}const M=String.raw,Xa=M`\\g<(?[^>&]+)&R=(?[^>]+)>`,ft=M`\(\?R=(?[^\)]+)\)|${Xa}`,ze=M`\(\?<(?![=!])(?[^>]+)>`,Er=M`${ze}|(?\()(?!\?)`,Q=new RegExp(M`${ze}|${ft}|\(\?|\\?.`,"gsu"),et="Cannot use multiple overlapping recursions";function Ja(e,n){const{hiddenCaptures:t,mode:r}={hiddenCaptures:[],mode:"plugin",...n};let o=n?.captureTransfers??new Map;if(!new RegExp(ft,"su").test(e))return{pattern:e,captureTransfers:o,hiddenCaptures:t};if(r==="plugin"&&ke(e,M`\(\?\(DEFINE\)`,U.DEFAULT))throw new Error("DEFINE groups cannot be used with recursion");const i=[],a=ke(e,M`\\[1-9]`,U.DEFAULT),s=new Map,u=[];let c=!1,p=0,d=0,m;for(Q.lastIndex=0;m=Q.exec(e);){const{0:f,groups:{captureName:g,rDepth:y,gRNameOrNum:E,gRDepth:_}}=m;if(f==="[")p++;else if(p)f==="]"&&p--;else if(y){if(cn(y),c)throw new Error(et);if(a)throw new Error(`${r==="external"?"Backrefs":"Numbered backrefs"} cannot be used with global recursion`);const b=e.slice(0,m.index),v=e.slice(Q.lastIndex);if(ke(v,ft,U.DEFAULT))throw new Error(et);const C=+y-1;e=dn(b,v,C,!1,t,i,d),o=mn(o,b,C,i.length,0,d);break}else if(E){cn(_);let b=!1;for(const me of u)if(me.name===E||me.num===+E){if(b=!0,me.hasRecursedWithin)throw new Error(et);break}if(!b)throw new Error(M`Recursive \g cannot be used outside the referenced group "${r==="external"?E:M`\g<${E}&R=${_}>`}"`);const v=s.get(E),C=za(e,v);if(a&&ke(C,M`${ze}|\((?!\?)`,U.DEFAULT))throw new Error(`${r==="external"?"Backrefs":"Numbered backrefs"} cannot be used with recursion of capturing groups`);const S=e.slice(v,m.index),H=C.slice(S.length+f.length),re=i.length,oe=+_-1,Bt=dn(S,H,oe,!0,t,i,d);o=mn(o,S,oe,i.length-re,re,d);const Sr=e.slice(0,v),Dr=e.slice(v+C.length);e=`${Sr}${Bt}${Dr}`,Q.lastIndex+=Bt.length-f.length-S.length-H.length,u.forEach(me=>me.hasRecursedWithin=!0),c=!0}else if(g)d++,s.set(String(d),Q.lastIndex),s.set(g,Q.lastIndex),u.push({num:d,name:g});else if(f[0]==="("){const b=f==="(";b&&(d++,s.set(String(d),Q.lastIndex)),u.push(b?{num:d}:{})}else f===")"&&u.pop()}return t.push(...i),{pattern:e,captureTransfers:o,hiddenCaptures:t}}function cn(e){const n=`Max depth must be integer between 2 and 100; used ${e}`;if(!/^[1-9]\d*$/.test(e))throw new Error(n);if(e=+e,e<2||e>100)throw new Error(n)}function dn(e,n,t,r,o,i,a){const s=new Set;r&&_r(e+n,ze,({groups:{captureName:c}})=>{s.add(c)},U.DEFAULT);const u=[t,r?s:null,o,i,a];return`${e}${pn(`(?:${e}`,"forward",...u)}(?:)${pn(`${n})`,"backward",...u)}${n}`}function pn(e,n,t,r,o,i,a){const u=p=>n==="forward"?p+2:t-p+2-1;let c="";for(let p=0;p[^>]+)>`,({0:m,groups:{captureName:f,unnamed:g,backref:y}})=>{if(y&&r&&!r.has(y))return m;const E=`_$${d}`;if(g||f){const _=a+i.length+1;return i.push(_),Qa(o,_),g?m:`(?<${f}${E}>`}return M`\k<${y}${E}>`},U.DEFAULT)}return c}function Qa(e,n){for(let t=0;t=n&&e[t]++}function mn(e,n,t,r,o,i){if(e.size&&r){let a=0;_r(n,Er,()=>a++,U.DEFAULT);const s=i-a+o,u=new Map;return e.forEach((c,p)=>{const d=(r-a*t)/t,m=a*t,f=p>s+a?p+r:p,g=[];for(const y of c)if(y<=s)g.push(y);else if(y>s+a+d)g.push(y+r);else if(y<=s+a)for(let E=0;E<=t;E++)g.push(y+a*E);else for(let E=0;E<=t;E++)g.push(y+m+d*E);u.set(f,g)}),u}return e}var P=String.fromCodePoint,A=String.raw,F={},We=globalThis.RegExp;F.flagGroups=(()=>{try{new We("(?i:)")}catch{return!1}return!0})();F.unicodeSets=(()=>{try{new We("[[]]","v")}catch{return!1}return!0})();F.bugFlagVLiteralHyphenIsRange=F.unicodeSets?(()=>{try{new We(A`[\d\-a]`,"v")}catch{return!0}return!1})():!1;F.bugNestedClassIgnoresNegation=F.unicodeSets&&new We("[[^a]]","v").test("a");function Re(e,{enable:n,disable:t}){return{dotAll:!t?.dotAll&&!!(n?.dotAll||e.dotAll),ignoreCase:!t?.ignoreCase&&!!(n?.ignoreCase||e.ignoreCase)}}function ye(e,n,t){return e.has(n)||e.set(n,t),e.get(n)}function gt(e,n){return fn[e]>=fn[n]}function Za(e,n){if(e==null)throw new Error(n??"Value expected");return e}var fn={ES2025:2025,ES2024:2024,ES2018:2018},Ka={auto:"auto",ES2025:"ES2025",ES2024:"ES2024",ES2018:"ES2018"};function br(e={}){if({}.toString.call(e)!=="[object Object]")throw new Error("Unexpected options");if(e.target!==void 0&&!Ka[e.target])throw new Error(`Unexpected target "${e.target}"`);const n={accuracy:"default",avoidSubclass:!1,flags:"",global:!1,hasIndices:!1,lazyCompileLength:1/0,target:"auto",verbose:!1,...e,rules:{allowOrphanBackrefs:!1,asciiWordBoundaries:!1,captureGroup:!1,recursionLimit:20,singleline:!1,...e.rules}};return n.target==="auto"&&(n.target=F.flagGroups?"ES2025":F.unicodeSets?"ES2024":"ES2018"),n}var Ya="[ -\r ]",es=new Set([P(304),P(305)]),j=A`[\p{L}\p{M}\p{N}\p{Pc}]`;function vr(e){if(es.has(e))return[e];const n=new Set,t=e.toLowerCase(),r=t.toUpperCase(),o=rs.get(t),i=ts.get(t),a=ns.get(t);return[...r].length===1&&n.add(r),a&&n.add(a),o&&n.add(o),n.add(t),i&&n.add(i),[...n]}var $t=new Map(`C Other +Cc Control cntrl +Cf Format +Cn Unassigned +Co Private_Use +Cs Surrogate +L Letter +LC Cased_Letter +Ll Lowercase_Letter +Lm Modifier_Letter +Lo Other_Letter +Lt Titlecase_Letter +Lu Uppercase_Letter +M Mark Combining_Mark +Mc Spacing_Mark +Me Enclosing_Mark +Mn Nonspacing_Mark +N Number +Nd Decimal_Number digit +Nl Letter_Number +No Other_Number +P Punctuation punct +Pc Connector_Punctuation +Pd Dash_Punctuation +Pe Close_Punctuation +Pf Final_Punctuation +Pi Initial_Punctuation +Po Other_Punctuation +Ps Open_Punctuation +S Symbol +Sc Currency_Symbol +Sk Modifier_Symbol +Sm Math_Symbol +So Other_Symbol +Z Separator +Zl Line_Separator +Zp Paragraph_Separator +Zs Space_Separator +ASCII +ASCII_Hex_Digit AHex +Alphabetic Alpha +Any +Assigned +Bidi_Control Bidi_C +Bidi_Mirrored Bidi_M +Case_Ignorable CI +Cased +Changes_When_Casefolded CWCF +Changes_When_Casemapped CWCM +Changes_When_Lowercased CWL +Changes_When_NFKC_Casefolded CWKCF +Changes_When_Titlecased CWT +Changes_When_Uppercased CWU +Dash +Default_Ignorable_Code_Point DI +Deprecated Dep +Diacritic Dia +Emoji +Emoji_Component EComp +Emoji_Modifier EMod +Emoji_Modifier_Base EBase +Emoji_Presentation EPres +Extended_Pictographic ExtPict +Extender Ext +Grapheme_Base Gr_Base +Grapheme_Extend Gr_Ext +Hex_Digit Hex +IDS_Binary_Operator IDSB +IDS_Trinary_Operator IDST +ID_Continue IDC +ID_Start IDS +Ideographic Ideo +Join_Control Join_C +Logical_Order_Exception LOE +Lowercase Lower +Math +Noncharacter_Code_Point NChar +Pattern_Syntax Pat_Syn +Pattern_White_Space Pat_WS +Quotation_Mark QMark +Radical +Regional_Indicator RI +Sentence_Terminal STerm +Soft_Dotted SD +Terminal_Punctuation Term +Unified_Ideograph UIdeo +Uppercase Upper +Variation_Selector VS +White_Space space +XID_Continue XIDC +XID_Start XIDS`.split(/\s/).map(e=>[je(e),e])),ts=new Map([["s",P(383)],[P(383),"s"]]),ns=new Map([[P(223),P(7838)],[P(107),P(8490)],[P(229),P(8491)],[P(969),P(8486)]]),rs=new Map([q(453),q(456),q(459),q(498),...tt(8072,8079),...tt(8088,8095),...tt(8104,8111),q(8124),q(8140),q(8188)]),os=new Map([["alnum",A`[\p{Alpha}\p{Nd}]`],["alpha",A`\p{Alpha}`],["ascii",A`\p{ASCII}`],["blank",A`[\p{Zs}\t]`],["cntrl",A`\p{Cc}`],["digit",A`\p{Nd}`],["graph",A`[\P{space}&&\P{Cc}&&\P{Cn}&&\P{Cs}]`],["lower",A`\p{Lower}`],["print",A`[[\P{space}&&\P{Cc}&&\P{Cn}&&\P{Cs}]\p{Zs}]`],["punct",A`[\p{P}\p{S}]`],["space",A`\p{space}`],["upper",A`\p{Upper}`],["word",A`[\p{Alpha}\p{M}\p{Nd}\p{Pc}]`],["xdigit",A`\p{AHex}`]]);function is(e,n){const t=[];for(let r=e;r<=n;r++)t.push(r);return t}function q(e){const n=P(e);return[n.toLowerCase(),n]}function tt(e,n){return is(e,n).map(t=>q(t))}var wr=new Set(["Lower","Lowercase","Upper","Uppercase","Ll","Lowercase_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter"]);function as(e,n){const t={accuracy:"default",asciiWordBoundaries:!1,avoidSubclass:!1,bestEffortTarget:"ES2025",...n};Ar(e);const r={accuracy:t.accuracy,asciiWordBoundaries:t.asciiWordBoundaries,avoidSubclass:t.avoidSubclass,flagDirectivesByAlt:new Map,jsGroupNameMap:new Map,minTargetEs2024:gt(t.bestEffortTarget,"ES2024"),passedLookbehind:!1,strategy:null,subroutineRefMap:new Map,supportedGNodes:new Set,digitIsAscii:e.flags.digitIsAscii,spaceIsAscii:e.flags.spaceIsAscii,wordIsAscii:e.flags.wordIsAscii};fe(e,ss,r);const o={dotAll:e.flags.dotAll,ignoreCase:e.flags.ignoreCase},i={currentFlags:o,prevFlags:null,globalFlags:o,groupOriginByCopy:new Map,groupsByName:new Map,multiplexCapturesToLeftByRef:new Map,openRefs:new Map,reffedNodesByReferencer:new Map,subroutineRefMap:r.subroutineRefMap};fe(e,ls,i);const a={groupsByName:i.groupsByName,highestOrphanBackref:0,numCapturesToLeft:0,reffedNodesByReferencer:i.reffedNodesByReferencer};return fe(e,us,a),e._originMap=i.groupOriginByCopy,e._strategy=r.strategy,e}var ss={AbsenceFunction({node:e,parent:n,replaceWith:t}){const{body:r,kind:o}=e;if(o==="repeater"){const i=B();i.body[0].body.push(Z({negate:!0,body:r}),le("Any"));const a=B();a.body[0].body.push(fr("greedy",0,1/0,i)),t(L(a,n),{traverse:!0})}else throw new Error('Unsupported absence function "(?~|"')},Alternative:{enter({node:e,parent:n,key:t},{flagDirectivesByAlt:r}){const o=e.body.filter(i=>i.kind==="flags");for(let i=t+1;i\r\n|${o?A`\p{RGI_Emoji}`:m}|\P{M}\p{M}*)`,{skipPropertyNameValidation:!0}),n))}else if(u==="hex")t(X(le("AHex",{negate:c}),n));else if(u==="newline")t(L(z(c?`[^ +]`:`(?>\r +?|[ +\v\f…\u2028\u2029])`),n));else if(u==="posix")if(!o&&(p==="graph"||p==="print")){if(r==="strict")throw new Error(`POSIX class "${p}" requires min target ES2024 or non-strict accuracy`);let d={graph:"!-~",print:" -~"}[p];c&&(d=`\0-${P(d.codePointAt(0)-1)}${P(d.codePointAt(2)+1)}-􏿿`),t(L(z(`[${d}]`),n))}else t(L(ot(z(os.get(p)),c),n));else if(u==="property")$t.has(je(p))||(e.key="sc");else if(u==="space")t(X(le("space",{negate:c}),n));else if(u==="word")t(L(ot(z(j),c),n));else throw new Error(`Unexpected character set kind "${u}"`)},Directive({node:e,parent:n,root:t,remove:r,replaceWith:o,removeAllPrevSiblings:i,removeAllNextSiblings:a}){const{kind:s,flags:u}=e;if(s==="flags")if(!u.enable&&!u.disable)r();else{const c=B({flags:u});c.body[0].body=a(),o(L(c,n),{traverse:!0})}else if(s==="keep"){const c=t.body[0],d=t.body.length===1&&dr(c,{type:"Group"})&&c.body[0].body.length===1?c.body[0]:t;if(n.parent!==d||d.body.length>1)throw new Error(A`Uses "\K" in a way that's unsupported`);const m=Z({behind:!0});m.body[0].body=i(),o(L(m,n))}else throw new Error(`Unexpected directive kind "${s}"`)},Flags({node:e,parent:n}){if(e.posixIsAscii)throw new Error('Unsupported flag "P"');if(e.textSegmentMode==="word")throw new Error('Unsupported flag "y{w}"');["digitIsAscii","extended","posixIsAscii","spaceIsAscii","wordIsAscii","textSegmentMode"].forEach(t=>delete e[t]),Object.assign(e,{global:!1,hasIndices:!1,multiline:!1,sticky:e.sticky??!1}),n.options={disable:{x:!0,n:!0},force:{v:!0}}},Group({node:e}){if(!e.flags)return;const{enable:n,disable:t}=e.flags;n?.extended&&delete n.extended,t?.extended&&delete t.extended,n?.dotAll&&t?.dotAll&&delete n.dotAll,n?.ignoreCase&&t?.ignoreCase&&delete n.ignoreCase,n&&!Object.keys(n).length&&delete e.flags.enable,t&&!Object.keys(t).length&&delete e.flags.disable,!e.flags.enable&&!e.flags.disable&&delete e.flags},LookaroundAssertion({node:e},n){const{kind:t}=e;t==="lookbehind"&&(n.passedLookbehind=!0)},NamedCallout({node:e,parent:n,replaceWith:t}){const{kind:r}=e;if(r==="fail")t(L(Z({negate:!0}),n));else throw new Error(`Unsupported named callout "(*${r.toUpperCase()}"`)},Quantifier({node:e}){if(e.body.type==="Quantifier"){const n=B();n.body[0].body.push(e.body),e.body=L(n,e)}},Regex:{enter({node:e},{supportedGNodes:n}){const t=[];let r=!1,o=!1;for(const i of e.body)if(i.body.length===1&&i.body[0].kind==="search_start")i.body.pop();else{const a=kr(i.body);a?(r=!0,Array.isArray(a)?t.push(...a):t.push(a)):o=!0}r&&!o&&t.forEach(i=>n.add(i))},exit(e,{accuracy:n,passedLookbehind:t,strategy:r}){if(n==="strict"&&t&&r)throw new Error(A`Uses "\G" in a way that requires non-strict accuracy`)}},Subroutine({node:e},{jsGroupNameMap:n}){let{ref:t}=e;typeof t=="string"&&!rt(t)&&(t=nt(t,n),e.ref=t)}},ls={Backreference({node:e},{multiplexCapturesToLeftByRef:n,reffedNodesByReferencer:t}){const{orphan:r,ref:o}=e;r||t.set(e,[...n.get(o).map(({node:i})=>i)])},CapturingGroup:{enter({node:e,parent:n,replaceWith:t,skip:r},{groupOriginByCopy:o,groupsByName:i,multiplexCapturesToLeftByRef:a,openRefs:s,reffedNodesByReferencer:u}){const c=o.get(e);if(c&&s.has(e.number)){const d=X(gn(e.number),n);u.set(d,s.get(e.number)),t(d);return}s.set(e.number,e),a.set(e.number,[]),e.name&&ye(a,e.name,[]);const p=a.get(e.name??e.number);for(let d=0;dm.type==="Group"&&!!m.flags)),d=p?Re(r.globalFlags,p):r.globalFlags;cs(d,r.currentFlags)||(c=B({flags:ms(d)}),c.body[0].body.push(u))}t(L(c,n),{traverse:!s})}},us={Backreference({node:e,parent:n,replaceWith:t},r){if(e.orphan){r.highestOrphanBackref=Math.max(r.highestOrphanBackref,e.ref);return}const i=r.reffedNodesByReferencer.get(e).filter(a=>ds(a,e));if(!i.length)t(L(Z({negate:!0}),n));else if(i.length>1){const a=B({atomic:!0,body:i.reverse().map(s=>te({body:[pt(s.number)]}))});t(L(a,n))}else e.ref=i[0].number},CapturingGroup({node:e},n){e.number=++n.numCapturesToLeft,e.name&&n.groupsByName.get(e.name).get(e).hasDuplicateNameToRemove&&delete e.name},Regex:{exit({node:e},n){const t=Math.max(n.highestOrphanBackref-n.numCapturesToLeft,0);for(let r=0;r{n.forEach(o=>{r.enable?.[o]&&(delete t.disable[o],t.enable[o]=!0),r.disable?.[o]&&(t.disable[o]=!0)})}),Object.keys(t.enable).length||delete t.enable,Object.keys(t.disable).length||delete t.disable,t.enable||t.disable?t:null}function ms({dotAll:e,ignoreCase:n}){const t={};return(e||n)&&(t.enable={},e&&(t.enable.dotAll=!0),n&&(t.enable.ignoreCase=!0)),(!e||!n)&&(t.disable={},!e&&(t.disable.dotAll=!0),!n&&(t.disable.ignoreCase=!0)),t}function Lr(e){if(!e)throw new Error("Node expected");const{body:n}=e;return Array.isArray(n)?n:n?[n]:null}function kr(e){const n=e.find(t=>t.kind==="search_start"||hs(t,{negate:!1})||!fs(t));if(!n)return null;if(n.kind==="search_start")return n;if(n.type==="LookaroundAssertion")return n.body[0].body[0];if(n.type==="CapturingGroup"||n.type==="Group"){const t=[];for(const r of n.body){const o=kr(r.body);if(!o)return null;Array.isArray(o)?t.push(...o):t.push(o)}return t}return null}function Ir(e,n){const t=Lr(e)??[];for(const r of t)if(r===n||Ir(r,n))return!0;return!1}function fs({type:e}){return e==="Assertion"||e==="Directive"||e==="LookaroundAssertion"}function gs(e){const n=["Character","CharacterClass","CharacterSet"];return n.includes(e.type)||e.type==="Quantifier"&&e.min&&n.includes(e.body.type)}function hs(e,n){const t={negate:null,...n};return e.type==="LookaroundAssertion"&&(t.negate===null||e.negate===t.negate)&&e.body.length===1&&dr(e.body[0],{type:"Assertion",kind:"search_start"})}function rt(e){return/^[$_\p{IDS}][$\u200C\u200D\p{IDC}]*$/u.test(e)}function z(e,n){const r=pr(e,{...n,unicodePropertyMap:$t}).body;return r.length>1||r[0].body.length>1?B({body:r}):r[0].body[0]}function ot(e,n){return e.negate=n,e}function X(e,n){return e.parent=n,e}function L(e,n){return Ar(e),e.parent=n,e}function _s(e,n){const t=br(n),r=gt(t.target,"ES2024"),o=gt(t.target,"ES2025"),i=t.rules.recursionLimit;if(!Number.isInteger(i)||i<2||i>20)throw new Error("Invalid recursionLimit; use 2-20");let a=null,s=null;if(!o){const f=[e.flags.ignoreCase];fe(e,ys,{getCurrentModI:()=>f.at(-1),popModI(){f.pop()},pushModI(g){f.push(g)},setHasCasedChar(){f.at(-1)?a=!0:s=!0}})}const u={dotAll:e.flags.dotAll,ignoreCase:!!((e.flags.ignoreCase||a)&&!s)};let c=e;const p={accuracy:t.accuracy,appliedGlobalFlags:u,captureMap:new Map,currentFlags:{dotAll:e.flags.dotAll,ignoreCase:e.flags.ignoreCase},inCharClass:!1,lastNode:c,originMap:e._originMap,recursionLimit:i,useAppliedIgnoreCase:!!(!o&&a&&s),useFlagMods:o,useFlagV:r,verbose:t.verbose};function d(f){return p.lastNode=c,c=f,Za(Es[f.type],`Unexpected node type "${f.type}"`)(f,p,d)}const m={pattern:e.body.map(d).join("|"),flags:d(e.flags),options:{...e.options}};return r||(delete m.options.force.v,m.options.disable.v=!0,m.options.unicodeSetsPlugin=null),m._captureTransfers=new Map,m._hiddenCaptures=[],p.captureMap.forEach((f,g)=>{f.hidden&&m._hiddenCaptures.push(g),f.transferTo&&ye(m._captureTransfers,f.transferTo,[]).push(g)}),m}var ys={"*":{enter({node:e},n){if(_n(e)){const t=n.getCurrentModI();n.pushModI(e.flags?Re({ignoreCase:t},e.flags).ignoreCase:t)}},exit({node:e},n){_n(e)&&n.popModI()}},Backreference(e,n){n.setHasCasedChar()},Character({node:e},n){Mt(P(e.value))&&n.setHasCasedChar()},CharacterClassRange({node:e,skip:n},t){n(),Pr(e,{firstOnly:!0}).length&&t.setHasCasedChar()},CharacterSet({node:e},n){e.kind==="property"&&wr.has(e.value)&&n.setHasCasedChar()}},Es={Alternative({body:e},n,t){return e.map(t).join("")},Assertion({kind:e,negate:n}){if(e==="string_end")return"$";if(e==="string_start")return"^";if(e==="word_boundary")return n?A`\B`:A`\b`;throw new Error(`Unexpected assertion kind "${e}"`)},Backreference({ref:e},n){if(typeof e!="number")throw new Error("Unexpected named backref in transformed AST");if(!n.useFlagMods&&n.accuracy==="strict"&&n.currentFlags.ignoreCase&&!n.captureMap.get(e).ignoreCase)throw new Error("Use of case-insensitive backref to case-sensitive group requires target ES2025 or non-strict accuracy");return"\\"+e},CapturingGroup(e,n,t){const{body:r,name:o,number:i}=e,a={ignoreCase:n.currentFlags.ignoreCase},s=n.originMap.get(e);return s&&(a.hidden=!0,i>s.number&&(a.transferTo=s.number)),n.captureMap.set(i,a),`(${o?`?<${o}>`:""}${r.map(t).join("|")})`},Character({value:e},n){const t=P(e),r=ae(e,{escDigit:n.lastNode.type==="Backreference",inCharClass:n.inCharClass,useFlagV:n.useFlagV});if(r!==t)return r;if(n.useAppliedIgnoreCase&&n.currentFlags.ignoreCase&&Mt(t)){const o=vr(t);return n.inCharClass?o.join(""):o.length>1?`[${o.join("")}]`:o[0]}return t},CharacterClass(e,n,t){const{kind:r,negate:o,parent:i}=e;let{body:a}=e;if(r==="intersection"&&!n.useFlagV)throw new Error("Use of character class intersection requires min target ES2024");F.bugFlagVLiteralHyphenIsRange&&n.useFlagV&&a.some(yn)&&(a=[He(45),...a.filter(c=>!yn(c))]);const s=()=>`[${o?"^":""}${a.map(t).join(r==="intersection"?"&&":"")}]`;if(!n.inCharClass){if((!n.useFlagV||F.bugNestedClassIgnoresNegation)&&!o){const p=a.filter(d=>d.type==="CharacterClass"&&d.kind==="union"&&d.negate);if(p.length){const d=B(),m=d.body[0];return d.parent=i,m.parent=d,a=a.filter(f=>!p.includes(f)),e.body=a,a.length?(e.parent=m,m.body.push(e)):d.body.pop(),p.forEach(f=>{const g=te({body:[f]});f.parent=g,g.parent=d,d.body.push(g)}),t(d)}}n.inCharClass=!0;const c=s();return n.inCharClass=!1,c}const u=a[0];if(r==="union"&&!o&&u&&((!n.useFlagV||!n.verbose)&&i.kind==="union"&&!(F.bugFlagVLiteralHyphenIsRange&&n.useFlagV)||!n.verbose&&i.kind==="intersection"&&a.length===1&&u.type!=="CharacterClassRange"))return a.map(t).join("");if(!n.useFlagV&&i.type==="CharacterClass")throw new Error("Uses nested character class in a way that requires min target ES2024");return s()},CharacterClassRange(e,n){const t=e.min.value,r=e.max.value,o={escDigit:!1,inCharClass:!0,useFlagV:n.useFlagV},i=ae(t,o),a=ae(r,o),s=new Set;if(n.useAppliedIgnoreCase&&n.currentFlags.ignoreCase){const u=Pr(e);Ts(u).forEach(p=>{s.add(Array.isArray(p)?`${ae(p[0],o)}-${ae(p[1],o)}`:ae(p,o))})}return`${i}-${a}${[...s].join("")}`},CharacterSet({kind:e,negate:n,value:t,key:r},o){if(e==="dot")return o.currentFlags.dotAll?o.appliedGlobalFlags.dotAll||o.useFlagMods?".":"[^]":A`[^\n]`;if(e==="digit")return n?A`\D`:A`\d`;if(e==="property"){if(o.useAppliedIgnoreCase&&o.currentFlags.ignoreCase&&wr.has(t))throw new Error(`Unicode property "${t}" can't be case-insensitive when other chars have specific case`);return`${n?A`\P`:A`\p`}{${r?`${r}=`:""}${t}}`}if(e==="word")return n?A`\W`:A`\w`;throw new Error(`Unexpected character set kind "${e}"`)},Flags(e,n){return(n.appliedGlobalFlags.ignoreCase?"i":"")+(e.dotAll?"s":"")+(e.sticky?"y":"")},Group({atomic:e,body:n,flags:t,parent:r},o,i){const a=o.currentFlags;t&&(o.currentFlags=Re(a,t));const s=n.map(i).join("|"),u=!o.verbose&&n.length===1&&r.type!=="Quantifier"&&!e&&(!o.useFlagMods||!t)?s:`(?${Cs(e,t,o.useFlagMods)}${s})`;return o.currentFlags=a,u},LookaroundAssertion({body:e,kind:n,negate:t},r,o){return`(?${`${n==="lookahead"?"":"<"}${t?"!":"="}`}${e.map(o).join("|")})`},Quantifier(e,n,t){return t(e.body)+Ls(e)},Subroutine({isRecursive:e,ref:n},t){if(!e)throw new Error("Unexpected non-recursive subroutine in transformed AST");const r=t.recursionLimit;return n===0?`(?R=${r})`:A`\g<${n}&R=${r}>`}},bs=new Set(["$","(",")","*","+",".","?","[","\\","]","^","{","|","}"]),vs=new Set(["-","\\","]","^","["]),ws=new Set(["(",")","-","/","[","\\","]","^","{","|","}","!","#","$","%","&","*","+",",",".",":",";","<","=",">","?","@","`","~"]),hn=new Map([[9,A`\t`],[10,A`\n`],[11,A`\v`],[12,A`\f`],[13,A`\r`],[8232,A`\u2028`],[8233,A`\u2029`],[65279,A`\uFEFF`]]),As=/^\p{Cased}$/u;function Mt(e){return As.test(e)}function Pr(e,n){const t=!!n?.firstOnly,r=e.min.value,o=e.max.value,i=[];if(r<65&&(o===65535||o>=131071)||r===65536&&o>=131071)return i;for(let a=r;a<=o;a++){const s=P(a);if(!Mt(s))continue;const u=vr(s).filter(c=>{const p=c.codePointAt(0);return po});if(u.length&&(i.push(...u),t))break}return i}function ae(e,{escDigit:n,inCharClass:t,useFlagV:r}){if(hn.has(e))return hn.get(e);if(e<32||e>126&&e<160||e>262143||n&&ks(e))return e>255?`\\u{${e.toString(16).toUpperCase()}}`:`\\x${e.toString(16).toUpperCase().padStart(2,"0")}`;const o=t?r?ws:vs:bs,i=P(e);return(o.has(i)?"\\":"")+i}function Ts(e){const n=e.map(o=>o.codePointAt(0)).sort((o,i)=>o-i),t=[];let r=null;for(let o=0;o";let r="";if(n&&t){const{enable:o,disable:i}=n;r=(o?.ignoreCase?"i":"")+(o?.dotAll?"s":"")+(i?"-":"")+(i?.ignoreCase?"i":"")+(i?.dotAll?"s":"")}return`${r}:`}function Ls({kind:e,max:n,min:t}){let r;return!t&&n===1?r="?":!t&&n===1/0?r="*":t===1&&n===1/0?r="+":t===n?r=`{${t}}`:r=`{${t},${n===1/0?"":n}}`,r+{greedy:"",lazy:"?",possessive:"+"}[e]}function _n({type:e}){return e==="CapturingGroup"||e==="Group"||e==="LookaroundAssertion"}function ks(e){return e>47&&e<58}function yn({type:e,value:n}){return e==="Character"&&n===45}var Is=class ht extends RegExp{#t=new Map;#e=null;#r;#n=null;#o=null;rawOptions={};get source(){return this.#r||"(?:)"}constructor(n,t,r){const o=!!r?.lazyCompile;if(n instanceof RegExp){if(r)throw new Error("Cannot provide options when copying a regexp");const i=n;super(i,t),this.#r=i.source,i instanceof ht&&(this.#t=i.#t,this.#n=i.#n,this.#o=i.#o,this.rawOptions=i.rawOptions)}else{const i={hiddenCaptures:[],strategy:null,transfers:[],...r};super(o?"":n,t),this.#r=n,this.#t=Os(i.hiddenCaptures,i.transfers),this.#o=i.strategy,this.rawOptions=r??{}}o||(this.#e=this)}exec(n){if(!this.#e){const{lazyCompile:o,...i}=this.rawOptions;this.#e=new ht(this.#r,this.flags,i)}const t=this.global||this.sticky,r=this.lastIndex;if(this.#o==="clip_search"&&t&&r){this.lastIndex=0;const o=this.#i(n.slice(r));return o&&(Ps(o,r,n,this.hasIndices),this.lastIndex+=r),o}return this.#i(n)}#i(n){this.#e.lastIndex=this.lastIndex;const t=super.exec.call(this.#e,n);if(this.lastIndex=this.#e.lastIndex,!t||!this.#t.size)return t;const r=[...t];t.length=1;let o;this.hasIndices&&(o=[...t.indices],t.indices.length=1);const i=[0];for(let a=1;a{const s=i[a];s&&(i[a]=[s[0]+n,s[1]+n])})}}function Os(e,n){const t=new Map;for(const r of e)t.set(r,{hidden:!0});for(const[r,o]of n)for(const i of o)ye(t,i,{}).transferTo=r;return t}function Ss(e){const n=/(?\((?:\?<(?![=!])(?[^>]+)>|(?!\?)))|\\?./gsu,t=new Map;let r=0,o=0,i;for(;i=n.exec(e);){const{0:a,groups:{capture:s,name:u}}=i;a==="["?r++:r?a==="]"&&r--:s&&(o++,u&&t.set(o,u))}return t}function Ds(e,n){const t=Rs(e,n);return t.options?new Is(t.pattern,t.flags,t.options):new RegExp(t.pattern,t.flags)}function Rs(e,n){const t=br(n),r=pr(e,{flags:t.flags,normalizeUnknownPropertyNames:!0,rules:{captureGroup:t.rules.captureGroup,singleline:t.rules.singleline},skipBackrefValidation:t.rules.allowOrphanBackrefs,unicodePropertyMap:$t}),o=as(r,{accuracy:t.accuracy,asciiWordBoundaries:t.rules.asciiWordBoundaries,avoidSubclass:t.avoidSubclass,bestEffortTarget:t.target}),i=_s(o,t),a=Ja(i.pattern,{captureTransfers:i._captureTransfers,hiddenCaptures:i._hiddenCaptures,mode:"external"}),s=qa(a.pattern),u=Wa(s.pattern,{captureTransfers:a.captureTransfers,hiddenCaptures:a.hiddenCaptures}),c={pattern:u.pattern,flags:`${t.hasIndices?"d":""}${t.global?"g":""}${i.flags}${i.options.disable.v?"u":"v"}`};if(t.avoidSubclass){if(t.lazyCompileLength!==1/0)throw new Error("Lazy compilation requires subclass")}else{const p=u.hiddenCaptures.sort((g,y)=>g-y),d=Array.from(u.captureTransfers),m=o._strategy,f=c.pattern.length>=t.lazyCompileLength;(p.length||d.length||m||f)&&(c.options={...p.length&&{hiddenCaptures:p},...d.length&&{transfers:d},...m&&{strategy:m},...f&&{lazyCompile:f}})}return c}function Ut(e,n){return Ds(e,{global:!0,hasIndices:!0,lazyCompileLength:3e3,rules:{allowOrphanBackrefs:!0,asciiWordBoundaries:!0,captureGroup:!0,recursionLimit:5,singleline:!0},...n})}function Or(e={}){const n={target:"auto",cache:new Map,...e};return n.regexConstructor||=t=>Ut(t,{target:n.target}),{createScanner(t){return new Qi(t,n)},createString(t){return{content:t}}}}Bn(wt({bundledLanguages:()=>Ne,bundledLanguagesAlias:()=>Ve,bundledLanguagesBase:()=>xe,bundledLanguagesInfo:()=>be,bundledThemes:()=>Me,bundledThemesInfo:()=>$e,codeToHast:()=>It,codeToHtml:()=>kt,codeToTokens:()=>Pt,codeToTokensBase:()=>Ot,codeToTokensWithThemes:()=>St,createHighlighter:()=>Ge,createJavaScriptRegexEngine:()=>Or,createOnigurumaEngine:()=>Tt,defaultJavaScriptRegexConstructor:()=>Ut,getLastGrammarState:()=>Rt,getSingletonHighlighter:()=>Dt,loadWasm:()=>Fe}),Ji);const Vs=Object.freeze(Object.defineProperty({__proto__:null,ShikiError:x,addClassToHast:Ct,applyColorReplacements:J,bundledLanguages:Ne,bundledLanguagesAlias:Ve,bundledLanguagesBase:xe,bundledLanguagesInfo:be,bundledThemes:Me,bundledThemesInfo:$e,codeToHast:It,codeToHtml:kt,codeToTokens:Pt,codeToTokensBase:Ot,codeToTokensWithThemes:St,createBundledHighlighter:rr,createCssVariablesTheme:Xi,createHighlighter:Ge,createHighlighterCore:Lt,createHighlighterCoreSync:Wi,createJavaScriptRegexEngine:Or,createOnigurumaEngine:Tt,createPositionConverter:jn,createShikiInternal:xr,createShikiInternalSync:Vr,createShikiPrimitive:vn,createShikiPrimitiveAsync:En,createSingletonShorthands:ir,defaultJavaScriptRegexConstructor:Ut,flatTokenVariants:Xn,getLastGrammarState:Rt,getSingletonHighlighter:Dt,getSingletonHighlighterCore:qi,getTokenStyleObject:ge,guessEmbeddedLanguages:zn,hastToHtml:er,isNoneTheme:Tn,isPlainLang:An,isSpecialLang:Ln,isSpecialTheme:Cn,loadWasm:Fe,makeSingletonHighlighter:or,makeSingletonHighlighterCore:nr,normalizeGetter:Nr,normalizeTheme:$r,resolveColorReplacements:Pe,splitLines:yt,splitToken:Wn,splitTokens:qn,stringifyTokenStyle:Oe,toArray:Mr,tokenizeAnsiWithTheme:Zn,tokenizeWithTheme:Ur,tokensToHast:Yn,transformerDecorations:Jn},Symbol.toStringTag,{value:"Module"}));export{Tt as a,Ne as b,Ge as c,Or as d,Xi as e,kt as f,ge as g,Vs as i,Oe as s,ei as t}; diff --git a/apps/kimi-code/dist-web/assets/index-CWYttcZZ.js b/apps/kimi-code/dist-web/assets/index-CWYttcZZ.js deleted file mode 100644 index 6ba6e13560..0000000000 --- a/apps/kimi-code/dist-web/assets/index-CWYttcZZ.js +++ /dev/null @@ -1,153 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/angular-html-DA-rfuFy.js","assets/html-pp8916En.js","assets/javascript-wDzz0qaB.js","assets/css-CLj8gQPS.js","assets/angular-ts-BrjP3tb8.js","assets/scss-D5BDwBP9.js","assets/apl-CORt7UWP.js","assets/xml-sdJ4AIDG.js","assets/java-CylS5w8V.js","assets/json-Cp-IABpG.js","assets/astro-HNnZUWAn.js","assets/typescript-BPQ3VLAy.js","assets/postcss-CXtECtnM.js","assets/tsx-COt5Ahok.js","assets/blade-2xfisSek.js","assets/html-derivative-DlHx6ybY.js","assets/sql-CRqJ_cUM.js","assets/bsl-BO_Y6i37.js","assets/sdbl-DVxCFoDh.js","assets/cairo-KRGpt6FW.js","assets/python-B6aJPvgy.js","assets/cobol-nBiQ_Alo.js","assets/coffee-Ch7k5sss.js","assets/cpp-UfJy6YNI.js","assets/regexp-CDVJQ6XC.js","assets/glsl-DplSGwfg.js","assets/c-BIGW1oBm.js","assets/crystal-DGywbUpC.js","assets/shellscript-Yzrsuije.js","assets/edge-FbVlp4U3.js","assets/elixir-CkH2-t6x.js","assets/elm-DbKCFpqz.js","assets/erb-Dm6A9KJ5.js","assets/ruby-DyJCeAvU.js","assets/haml-D5jkg6IW.js","assets/graphql-ChdNCCLP.js","assets/jsx-g9-lgVsj.js","assets/lua-BaeVxFsk.js","assets/yaml-Buea-lGh.js","assets/erlang-DsQrWhSR.js","assets/markdown-Cvjx9yec.js","assets/fortran-fixed-form-CkoXwp7k.js","assets/fortran-free-form-BxgE0vQu.js","assets/fsharp-CXgrBDvD.js","assets/gdresource-BOOCDP_w.js","assets/gdshader-DkwncUOv.js","assets/gdscript-C5YyOfLZ.js","assets/git-commit-F4YmCXRG.js","assets/diff-D97Zzqfu.js","assets/git-rebase-r7XF79zn.js","assets/glimmer-js-ByusRIyA.js","assets/glimmer-ts-BfAWNZQY.js","assets/hack-DbPARsA_.js","assets/handlebars-BpdQsYii.js","assets/http-jrhK8wxY.js","assets/hurl-irOxFIW8.js","assets/csv-fuZLfV_i.js","assets/hxml-Bvhsp5Yf.js","assets/haxe-CzTSHFRz.js","assets/jinja-f2NsQr07.js","assets/jison-wvAkD_A8.js","assets/julia-D7OTSIA_.js","assets/r-Dspwwk_N.js","assets/just-CUsbIsdP.js","assets/perl-B9cMNwum.js","assets/latex-CaSxy8MP.js","assets/tex-idrVyKtj.js","assets/liquid-C0sCDyMI.js","assets/marko-DjSrsDqO.js","assets/less-B1dDrJ26.js","assets/mdc-DTYItulj.js","assets/nextflow-C-mBbutL.js","assets/nextflow-groovy-vE_lwT2v.js","assets/nginx-BpAMiNFr.js","assets/nim-BIad80T-.js","assets/php-Csjmro_R.js","assets/pug-DKIMFp6K.js","assets/qml-3beO22l8.js","assets/razor-BjBPvh-w.js","assets/csharp-DSvCPggb.js","assets/rst-CpCqk9r5.js","assets/cmake-D1j8_8rp.js","assets/sas-DEy46yEz.js","assets/shaderlab-Dg9Lc6iA.js","assets/hlsl-D3lLCCz7.js","assets/shellsession-BADoaaVG.js","assets/soy-8wufbnw4.js","assets/sparql-rVzFXLq3.js","assets/turtle-BsS91CYL.js","assets/stata-DI20mbqo.js","assets/surrealql-Bq5Q-fJD.js","assets/svelte-Cy7k_4gC.js","assets/templ-DhtptRzy.js","assets/go-C27-OAKa.js","assets/ts-tags-D351s5mN.js","assets/twig-CW1WmMYd.js","assets/vue-D2xRrEX4.js","assets/vue-html-AaS7Mt5G.js","assets/vue-vine-BoDAl6tE.js","assets/stylus-BEDo0Tqx.js","assets/xsl-CtQFsRM5.js"])))=>i.map(i=>d[i]); -import{bR as c}from"./index-HU0LCM-X.js";var Ft=Object.defineProperty,eo=Object.getOwnPropertyDescriptor,to=Object.getOwnPropertyNames,no=Object.prototype.hasOwnProperty,an=(e,t)=>{let n={};for(var r in e)Ft(n,r,{get:e[r],enumerable:!0});return Ft(n,Symbol.toStringTag,{value:"Module"}),n},ro=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(var i=to(t),o=0,s=i.length,a;ot[l]).bind(null,a),enumerable:!(r=eo(t,a))||r.enumerable});return e},Sr=(e,t,n)=>(ro(e,t,"default"),n);const Ne=[{id:"abap",name:"ABAP",import:(()=>c(()=>import("./abap-BdImnpbu.js"),[]))},{id:"actionscript-3",name:"ActionScript",import:(()=>c(()=>import("./actionscript-3-CoDkCxhg.js"),[]))},{id:"ada",name:"Ada",import:(()=>c(()=>import("./ada-bCR0ucgS.js"),[]))},{id:"angular-html",name:"Angular HTML",import:(()=>c(()=>import("./angular-html-DA-rfuFy.js").then(e=>e.f),__vite__mapDeps([0,1,2,3])))},{id:"angular-ts",name:"Angular TypeScript",import:(()=>c(()=>import("./angular-ts-BrjP3tb8.js"),__vite__mapDeps([4,0,1,2,3,5])))},{id:"apache",name:"Apache Conf",import:(()=>c(()=>import("./apache-Pmp26Uib.js"),[]))},{id:"apex",name:"Apex",import:(()=>c(()=>import("./apex-Dqspr-GT.js"),[]))},{id:"apl",name:"APL",import:(()=>c(()=>import("./apl-CORt7UWP.js"),__vite__mapDeps([6,1,2,3,7,8,9])))},{id:"applescript",name:"AppleScript",import:(()=>c(()=>import("./applescript-Co6uUVPk.js"),[]))},{id:"ara",name:"Ara",import:(()=>c(()=>import("./ara-BRHolxvo.js"),[]))},{id:"asciidoc",name:"AsciiDoc",aliases:["adoc"],import:(()=>c(()=>import("./asciidoc-Ve4PFQV2.js"),[]))},{id:"asm",name:"Assembly",import:(()=>c(()=>import("./asm-D_Q5rh1f.js"),[]))},{id:"astro",name:"Astro",import:(()=>c(()=>import("./astro-HNnZUWAn.js"),__vite__mapDeps([10,9,2,11,3,12,13])))},{id:"awk",name:"AWK",import:(()=>c(()=>import("./awk-DMzUqQB5.js"),[]))},{id:"ballerina",name:"Ballerina",import:(()=>c(()=>import("./ballerina-BFfxhgS-.js"),[]))},{id:"bat",name:"Batch File",aliases:["batch"],import:(()=>c(()=>import("./bat-BkioyH1T.js"),[]))},{id:"beancount",name:"Beancount",import:(()=>c(()=>import("./beancount-k_qm7-4y.js"),[]))},{id:"berry",name:"Berry",aliases:["be"],import:(()=>c(()=>import("./berry-uYugtg8r.js"),[]))},{id:"bibtex",name:"BibTeX",import:(()=>c(()=>import("./bibtex-CHM0blh-.js"),[]))},{id:"bicep",name:"Bicep",import:(()=>c(()=>import("./bicep-Bmn6On1c.js"),[]))},{id:"bird2",name:"BIRD2 Configuration",aliases:["bird"],import:(()=>c(()=>import("./bird2-BIv1doCn.js"),[]))},{id:"blade",name:"Blade",import:(()=>c(()=>import("./blade-2xfisSek.js"),__vite__mapDeps([14,15,1,2,3,7,8,16,9])))},{id:"bsl",name:"1C (Enterprise)",aliases:["1c"],import:(()=>c(()=>import("./bsl-BO_Y6i37.js"),__vite__mapDeps([17,18])))},{id:"c",name:"C",import:(()=>c(()=>import("./c-BIGW1oBm.js"),[]))},{id:"c3",name:"C3",import:(()=>c(()=>import("./c3-MRO5bC_T.js"),[]))},{id:"cadence",name:"Cadence",aliases:["cdc"],import:(()=>c(()=>import("./cadence-Bv_4Rxtq.js"),[]))},{id:"cairo",name:"Cairo",import:(()=>c(()=>import("./cairo-KRGpt6FW.js"),__vite__mapDeps([19,20])))},{id:"clarity",name:"Clarity",import:(()=>c(()=>import("./clarity-D53aC0YG.js"),[]))},{id:"clojure",name:"Clojure",aliases:["clj"],import:(()=>c(()=>import("./clojure-P80f7IUj.js"),[]))},{id:"cmake",name:"CMake",import:(()=>c(()=>import("./cmake-D1j8_8rp.js"),[]))},{id:"cobol",name:"COBOL",import:(()=>c(()=>import("./cobol-nBiQ_Alo.js"),__vite__mapDeps([21,1,2,3,8])))},{id:"codeowners",name:"CODEOWNERS",import:(()=>c(()=>import("./codeowners-Bp6g37R7.js"),[]))},{id:"codeql",name:"CodeQL",aliases:["ql"],import:(()=>c(()=>import("./codeql-DsOJ9woJ.js"),[]))},{id:"coffee",name:"CoffeeScript",aliases:["coffeescript"],import:(()=>c(()=>import("./coffee-Ch7k5sss.js"),__vite__mapDeps([22,2])))},{id:"common-lisp",name:"Common Lisp",aliases:["lisp"],import:(()=>c(()=>import("./common-lisp-Cg-RD9OK.js"),[]))},{id:"coq",name:"Coq",import:(()=>c(()=>import("./coq-DkFqJrB1.js"),[]))},{id:"cpp",name:"C++",aliases:["c++"],import:(()=>c(()=>import("./cpp-UfJy6YNI.js"),__vite__mapDeps([23,24,25,26,16])))},{id:"crystal",name:"Crystal",import:(()=>c(()=>import("./crystal-DGywbUpC.js"),__vite__mapDeps([27,1,2,3,16,26,28])))},{id:"csharp",name:"C#",aliases:["c#","cs"],import:(()=>c(()=>import("./csharp-DSvCPggb.js"),[]))},{id:"css",name:"CSS",import:(()=>c(()=>import("./css-CLj8gQPS.js"),[]))},{id:"csv",name:"CSV",import:(()=>c(()=>import("./csv-fuZLfV_i.js"),[]))},{id:"cue",name:"CUE",import:(()=>c(()=>import("./cue-D82EKSYY.js"),[]))},{id:"cypher",name:"Cypher",aliases:["cql"],import:(()=>c(()=>import("./cypher-COkxafJQ.js"),[]))},{id:"d",name:"D",import:(()=>c(()=>import("./d-85-TOEBH.js"),[]))},{id:"dart",name:"Dart",import:(()=>c(()=>import("./dart-bE4Kk8sk.js"),[]))},{id:"dax",name:"DAX",import:(()=>c(()=>import("./dax-CEL-wOlO.js"),[]))},{id:"desktop",name:"Desktop",import:(()=>c(()=>import("./desktop-BmXAJ9_W.js"),[]))},{id:"diff",name:"Diff",import:(()=>c(()=>import("./diff-D97Zzqfu.js"),[]))},{id:"docker",name:"Dockerfile",aliases:["dockerfile"],import:(()=>c(()=>import("./docker-BcOcwvcX.js"),[]))},{id:"dotenv",name:"dotEnv",import:(()=>c(()=>import("./dotenv-Da5cRb03.js"),[]))},{id:"dream-maker",name:"Dream Maker",import:(()=>c(()=>import("./dream-maker-BtqSS_iP.js"),[]))},{id:"edge",name:"Edge",import:(()=>c(()=>import("./edge-FbVlp4U3.js"),__vite__mapDeps([29,11,1,2,3,15])))},{id:"elixir",name:"Elixir",import:(()=>c(()=>import("./elixir-CkH2-t6x.js"),__vite__mapDeps([30,1,2,3])))},{id:"elm",name:"Elm",import:(()=>c(()=>import("./elm-DbKCFpqz.js"),__vite__mapDeps([31,25,26])))},{id:"emacs-lisp",name:"Emacs Lisp",aliases:["elisp"],import:(()=>c(()=>import("./emacs-lisp-CXvaQtF9.js"),[]))},{id:"erb",name:"ERB",import:(()=>c(()=>import("./erb-Dm6A9KJ5.js"),__vite__mapDeps([32,1,2,3,33,34,7,8,16,35,11,36,13,23,24,25,26,28,37,38])))},{id:"erlang",name:"Erlang",aliases:["erl"],import:(()=>c(()=>import("./erlang-DsQrWhSR.js"),__vite__mapDeps([39,40])))},{id:"fennel",name:"Fennel",import:(()=>c(()=>import("./fennel-BYunw83y.js"),[]))},{id:"fish",name:"Fish",import:(()=>c(()=>import("./fish-BvzEVeQv.js"),[]))},{id:"fluent",name:"Fluent",aliases:["ftl"],import:(()=>c(()=>import("./fluent-C4IJs8-o.js"),[]))},{id:"fortran-fixed-form",name:"Fortran (Fixed Form)",aliases:["f","for","f77"],import:(()=>c(()=>import("./fortran-fixed-form-CkoXwp7k.js"),__vite__mapDeps([41,42])))},{id:"fortran-free-form",name:"Fortran (Free Form)",aliases:["f90","f95","f03","f08","f18"],import:(()=>c(()=>import("./fortran-free-form-BxgE0vQu.js"),[]))},{id:"fsharp",name:"F#",aliases:["f#","fs"],import:(()=>c(()=>import("./fsharp-CXgrBDvD.js"),__vite__mapDeps([43,40])))},{id:"gdresource",name:"GDResource",aliases:["tscn","tres"],import:(()=>c(()=>import("./gdresource-BOOCDP_w.js"),__vite__mapDeps([44,45,46])))},{id:"gdscript",name:"GDScript",aliases:["gd"],import:(()=>c(()=>import("./gdscript-C5YyOfLZ.js"),[]))},{id:"gdshader",name:"GDShader",import:(()=>c(()=>import("./gdshader-DkwncUOv.js"),[]))},{id:"genie",name:"Genie",import:(()=>c(()=>import("./genie-D0YGMca9.js"),[]))},{id:"gherkin",name:"Gherkin",import:(()=>c(()=>import("./gherkin-DyxjwDmM.js"),[]))},{id:"git-commit",name:"Git Commit Message",import:(()=>c(()=>import("./git-commit-F4YmCXRG.js"),__vite__mapDeps([47,48])))},{id:"git-rebase",name:"Git Rebase Message",import:(()=>c(()=>import("./git-rebase-r7XF79zn.js"),__vite__mapDeps([49,28])))},{id:"gleam",name:"Gleam",import:(()=>c(()=>import("./gleam-BspZqrRM.js"),[]))},{id:"glimmer-js",name:"Glimmer JS",aliases:["gjs"],import:(()=>c(()=>import("./glimmer-js-ByusRIyA.js"),__vite__mapDeps([50,2,11,3,1])))},{id:"glimmer-ts",name:"Glimmer TS",aliases:["gts"],import:(()=>c(()=>import("./glimmer-ts-BfAWNZQY.js"),__vite__mapDeps([51,11,3,2,1])))},{id:"glsl",name:"GLSL",import:(()=>c(()=>import("./glsl-DplSGwfg.js"),__vite__mapDeps([25,26])))},{id:"gn",name:"GN",import:(()=>c(()=>import("./gn-n2N0HUVH.js"),[]))},{id:"gnuplot",name:"Gnuplot",import:(()=>c(()=>import("./gnuplot-DdkO51Og.js"),[]))},{id:"go",name:"Go",import:(()=>c(()=>import("./go-C27-OAKa.js"),[]))},{id:"graphql",name:"GraphQL",aliases:["gql"],import:(()=>c(()=>import("./graphql-ChdNCCLP.js"),__vite__mapDeps([35,2,11,36,13])))},{id:"groovy",name:"Groovy",import:(()=>c(()=>import("./groovy-gcz8RCvz.js"),[]))},{id:"hack",name:"Hack",import:(()=>c(()=>import("./hack-DbPARsA_.js"),__vite__mapDeps([52,1,2,3,16])))},{id:"haml",name:"Ruby Haml",import:(()=>c(()=>import("./haml-D5jkg6IW.js"),__vite__mapDeps([34,2,3])))},{id:"handlebars",name:"Handlebars",aliases:["hbs"],import:(()=>c(()=>import("./handlebars-BpdQsYii.js"),__vite__mapDeps([53,1,2,3,38])))},{id:"haskell",name:"Haskell",aliases:["hs"],import:(()=>c(()=>import("./haskell-Df6bDoY_.js"),[]))},{id:"haxe",name:"Haxe",import:(()=>c(()=>import("./haxe-CzTSHFRz.js"),[]))},{id:"hcl",name:"HashiCorp HCL",import:(()=>c(()=>import("./hcl-BWvSN4gD.js"),[]))},{id:"hjson",name:"Hjson",import:(()=>c(()=>import("./hjson-D5-asLiD.js"),[]))},{id:"hlsl",name:"HLSL",import:(()=>c(()=>import("./hlsl-D3lLCCz7.js"),[]))},{id:"html",name:"HTML",import:(()=>c(()=>import("./html-pp8916En.js"),__vite__mapDeps([1,2,3])))},{id:"html-derivative",name:"HTML (Derivative)",import:(()=>c(()=>import("./html-derivative-DlHx6ybY.js"),__vite__mapDeps([15,1,2,3])))},{id:"http",name:"HTTP",import:(()=>c(()=>import("./http-jrhK8wxY.js"),__vite__mapDeps([54,28,9,7,8,35,2,11,36,13])))},{id:"hurl",name:"Hurl",import:(()=>c(()=>import("./hurl-irOxFIW8.js"),__vite__mapDeps([55,35,2,11,36,13,7,8,56])))},{id:"hxml",name:"HXML",import:(()=>c(()=>import("./hxml-Bvhsp5Yf.js"),__vite__mapDeps([57,58])))},{id:"hy",name:"Hy",import:(()=>c(()=>import("./hy-DFXneXwc.js"),[]))},{id:"imba",name:"Imba",import:(()=>c(()=>import("./imba-DGztddWO.js"),[]))},{id:"ini",name:"INI",aliases:["properties"],import:(()=>c(()=>import("./ini-BEwlwnbL.js"),[]))},{id:"java",name:"Java",import:(()=>c(()=>import("./java-CylS5w8V.js"),[]))},{id:"javascript",name:"JavaScript",aliases:["js","cjs","mjs"],import:(()=>c(()=>import("./javascript-wDzz0qaB.js"),[]))},{id:"jinja",name:"Jinja",import:(()=>c(()=>import("./jinja-f2NsQr07.js"),__vite__mapDeps([59,1,2,3])))},{id:"jison",name:"Jison",import:(()=>c(()=>import("./jison-wvAkD_A8.js"),__vite__mapDeps([60,2])))},{id:"json",name:"JSON",import:(()=>c(()=>import("./json-Cp-IABpG.js"),[]))},{id:"json5",name:"JSON5",import:(()=>c(()=>import("./json5-C9tS-k6U.js"),[]))},{id:"jsonc",name:"JSON with Comments",import:(()=>c(()=>import("./jsonc-Des-eS-w.js"),[]))},{id:"jsonl",name:"JSON Lines",import:(()=>c(()=>import("./jsonl-DcaNXYhu.js"),[]))},{id:"jsonnet",name:"Jsonnet",import:(()=>c(()=>import("./jsonnet-DFQXde-d.js"),[]))},{id:"jssm",name:"JSSM",aliases:["fsl"],import:(()=>c(()=>import("./jssm-C2t-YnRu.js"),[]))},{id:"jsx",name:"JSX",import:(()=>c(()=>import("./jsx-g9-lgVsj.js"),[]))},{id:"julia",name:"Julia",aliases:["jl"],import:(()=>c(()=>import("./julia-D7OTSIA_.js"),__vite__mapDeps([61,23,24,25,26,16,20,2,62])))},{id:"just",name:"Just",import:(()=>c(()=>import("./just-CUsbIsdP.js"),__vite__mapDeps([63,28,2,11,64,1,3,7,8,16,20,33,34,35,36,13,23,24,25,26,37,38])))},{id:"kdl",name:"KDL",import:(()=>c(()=>import("./kdl-DV7GczEv.js"),[]))},{id:"kotlin",name:"Kotlin",aliases:["kt","kts"],import:(()=>c(()=>import("./kotlin-BdnUsdx6.js"),[]))},{id:"kusto",name:"Kusto",aliases:["kql"],import:(()=>c(()=>import("./kusto-wEQ09or8.js"),[]))},{id:"latex",name:"LaTeX",import:(()=>c(()=>import("./latex-CaSxy8MP.js"),__vite__mapDeps([65,66,62])))},{id:"lean",name:"Lean 4",aliases:["lean4"],import:(()=>c(()=>import("./lean-BZvkOJ9d.js"),[]))},{id:"less",name:"Less",import:(()=>c(()=>import("./less-B1dDrJ26.js"),[]))},{id:"liquid",name:"Liquid",import:(()=>c(()=>import("./liquid-C0sCDyMI.js"),__vite__mapDeps([67,1,2,3,9])))},{id:"llvm",name:"LLVM IR",import:(()=>c(()=>import("./llvm-DjAJT7YJ.js"),[]))},{id:"log",name:"Log file",import:(()=>c(()=>import("./log-2UxHyX5q.js"),[]))},{id:"logo",name:"Logo",import:(()=>c(()=>import("./logo-BtOb2qkB.js"),[]))},{id:"lua",name:"Lua",import:(()=>c(()=>import("./lua-BaeVxFsk.js"),__vite__mapDeps([37,26])))},{id:"luau",name:"Luau",import:(()=>c(()=>import("./luau-KW6xsasC.js"),[]))},{id:"make",name:"Makefile",aliases:["makefile"],import:(()=>c(()=>import("./make-CHLpvVh8.js"),[]))},{id:"markdown",name:"Markdown",aliases:["md"],import:(()=>c(()=>import("./markdown-Cvjx9yec.js"),[]))},{id:"marko",name:"Marko",import:(()=>c(()=>import("./marko-DjSrsDqO.js"),__vite__mapDeps([68,3,69,5,11])))},{id:"matlab",name:"MATLAB",import:(()=>c(()=>import("./matlab-D7o27uSR.js"),[]))},{id:"mdc",name:"MDC",import:(()=>c(()=>import("./mdc-DTYItulj.js"),__vite__mapDeps([70,40,38,15,1,2,3])))},{id:"mdx",name:"MDX",import:(()=>c(()=>import("./mdx-Cmh6b_Ma.js"),[]))},{id:"mermaid",name:"Mermaid",aliases:["mmd"],import:(()=>c(()=>import("./mermaid-mWjccvbQ.js"),[]))},{id:"mipsasm",name:"MIPS Assembly",aliases:["mips"],import:(()=>c(()=>import("./mipsasm-CKIfxQSi.js"),[]))},{id:"mojo",name:"Mojo",import:(()=>c(()=>import("./mojo-rZm6bMo-.js"),[]))},{id:"moonbit",name:"MoonBit",aliases:["mbt","mbti"],import:(()=>c(()=>import("./moonbit-_H4v1dQx.js"),[]))},{id:"move",name:"Move",import:(()=>c(()=>import("./move-IF9eRakj.js"),[]))},{id:"narrat",name:"Narrat Language",aliases:["nar"],import:(()=>c(()=>import("./narrat-DRg8JJMk.js"),[]))},{id:"nextflow",name:"Nextflow",aliases:["nf"],import:(()=>c(()=>import("./nextflow-C-mBbutL.js"),__vite__mapDeps([71,72])))},{id:"nextflow-groovy",name:"Nextflow Groovy",import:(()=>c(()=>import("./nextflow-groovy-vE_lwT2v.js"),[]))},{id:"nginx",name:"Nginx",import:(()=>c(()=>import("./nginx-BpAMiNFr.js"),__vite__mapDeps([73,37,26])))},{id:"nim",name:"Nim",import:(()=>c(()=>import("./nim-BIad80T-.js"),__vite__mapDeps([74,26,1,2,3,7,8,25,40])))},{id:"nix",name:"Nix",import:(()=>c(()=>import("./nix-CwoSXNpI.js"),[]))},{id:"nushell",name:"nushell",aliases:["nu"],import:(()=>c(()=>import("./nushell-Cz2AlsmD.js"),[]))},{id:"objective-c",name:"Objective-C",aliases:["objc"],import:(()=>c(()=>import("./objective-c-DXmwc3jG.js"),[]))},{id:"objective-cpp",name:"Objective-C++",import:(()=>c(()=>import("./objective-cpp-CLxacb5B.js"),[]))},{id:"ocaml",name:"OCaml",import:(()=>c(()=>import("./ocaml-C0hk2d4L.js"),[]))},{id:"odin",name:"Odin",import:(()=>c(()=>import("./odin-BBf5iR-q.js"),[]))},{id:"openscad",name:"OpenSCAD",aliases:["scad"],import:(()=>c(()=>import("./openscad-C4EeE6gA.js"),[]))},{id:"pascal",name:"Pascal",import:(()=>c(()=>import("./pascal-D93ZcfNL.js"),[]))},{id:"perl",name:"Perl",import:(()=>c(()=>import("./perl-B9cMNwum.js"),__vite__mapDeps([64,1,2,3,7,8,16])))},{id:"php",name:"PHP",import:(()=>c(()=>import("./php-Csjmro_R.js"),__vite__mapDeps([75,1,2,3,7,8,16,9])))},{id:"pkl",name:"Pkl",import:(()=>c(()=>import("./pkl-u5AG7uiY.js"),[]))},{id:"plsql",name:"PL/SQL",import:(()=>c(()=>import("./plsql-ChMvpjG-.js"),[]))},{id:"po",name:"Gettext PO",aliases:["pot","potx"],import:(()=>c(()=>import("./po-BTJTHyun.js"),[]))},{id:"polar",name:"Polar",import:(()=>c(()=>import("./polar-C0HS_06l.js"),[]))},{id:"postcss",name:"PostCSS",import:(()=>c(()=>import("./postcss-CXtECtnM.js"),[]))},{id:"powerquery",name:"PowerQuery",import:(()=>c(()=>import("./powerquery-CEu0bR-o.js"),[]))},{id:"powershell",name:"PowerShell",aliases:["ps","ps1"],import:(()=>c(()=>import("./powershell-Dpen1YoG.js"),[]))},{id:"prisma",name:"Prisma",import:(()=>c(()=>import("./prisma-Dd19v3D-.js"),[]))},{id:"prolog",name:"Prolog",import:(()=>c(()=>import("./prolog-CbFg5uaA.js"),[]))},{id:"proto",name:"Protocol Buffer 3",aliases:["protobuf"],import:(()=>c(()=>import("./proto-C7zT0LnQ.js"),[]))},{id:"pug",name:"Pug",aliases:["jade"],import:(()=>c(()=>import("./pug-DKIMFp6K.js"),__vite__mapDeps([76,2,3,1])))},{id:"puppet",name:"Puppet",import:(()=>c(()=>import("./puppet-BMWR74SV.js"),[]))},{id:"purescript",name:"PureScript",import:(()=>c(()=>import("./purescript-CklMAg4u.js"),[]))},{id:"python",name:"Python",aliases:["py"],import:(()=>c(()=>import("./python-B6aJPvgy.js"),[]))},{id:"qml",name:"QML",import:(()=>c(()=>import("./qml-3beO22l8.js"),__vite__mapDeps([77,2])))},{id:"qmldir",name:"QML Directory",import:(()=>c(()=>import("./qmldir-C8lEn-DE.js"),[]))},{id:"qss",name:"Qt Style Sheets",import:(()=>c(()=>import("./qss-IeuSbFQv.js"),[]))},{id:"r",name:"R",import:(()=>c(()=>import("./r-Dspwwk_N.js"),[]))},{id:"racket",name:"Racket",import:(()=>c(()=>import("./racket-BqYA7rlc.js"),[]))},{id:"raku",name:"Raku",aliases:["perl6"],import:(()=>c(()=>import("./raku-DXvB9xmW.js"),[]))},{id:"razor",name:"ASP.NET Razor",import:(()=>c(()=>import("./razor-BjBPvh-w.js"),__vite__mapDeps([78,1,2,3,79])))},{id:"reg",name:"Windows Registry Script",import:(()=>c(()=>import("./reg-C-SQnVFl.js"),[]))},{id:"regexp",name:"RegExp",aliases:["regex"],import:(()=>c(()=>import("./regexp-CDVJQ6XC.js"),[]))},{id:"rel",name:"Rel",import:(()=>c(()=>import("./rel-C3B-1QV4.js"),[]))},{id:"riscv",name:"RISC-V",import:(()=>c(()=>import("./riscv-BM1_JUlF.js"),[]))},{id:"ron",name:"RON",import:(()=>c(()=>import("./ron-D8l8udqQ.js"),[]))},{id:"rosmsg",name:"ROS Interface",import:(()=>c(()=>import("./rosmsg-BJDFO7_C.js"),[]))},{id:"rst",name:"reStructuredText",import:(()=>c(()=>import("./rst-CpCqk9r5.js"),__vite__mapDeps([80,15,1,2,3,23,24,25,26,16,20,28,38,81,33,34,7,8,35,11,36,13,37])))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>c(()=>import("./ruby-DyJCeAvU.js"),__vite__mapDeps([33,1,2,3,34,7,8,16,35,11,36,13,23,24,25,26,28,37,38])))},{id:"rust",name:"Rust",aliases:["rs"],import:(()=>c(()=>import("./rust-B1yitclQ.js"),[]))},{id:"sas",name:"SAS",import:(()=>c(()=>import("./sas-DEy46yEz.js"),__vite__mapDeps([82,16])))},{id:"sass",name:"Sass",import:(()=>c(()=>import("./sass-Cj5Yp3dK.js"),[]))},{id:"scala",name:"Scala",import:(()=>c(()=>import("./scala-C151Ov-r.js"),[]))},{id:"scheme",name:"Scheme",import:(()=>c(()=>import("./scheme-C98Dy4si.js"),[]))},{id:"scss",name:"SCSS",import:(()=>c(()=>import("./scss-D5BDwBP9.js"),__vite__mapDeps([5,3])))},{id:"sdbl",name:"1C (Query)",aliases:["1c-query"],import:(()=>c(()=>import("./sdbl-DVxCFoDh.js"),[]))},{id:"shaderlab",name:"ShaderLab",aliases:["shader"],import:(()=>c(()=>import("./shaderlab-Dg9Lc6iA.js"),__vite__mapDeps([83,84])))},{id:"shellscript",name:"Shell",aliases:["bash","sh","shell","zsh"],import:(()=>c(()=>import("./shellscript-Yzrsuije.js"),[]))},{id:"shellsession",name:"Shell Session",aliases:["console"],import:(()=>c(()=>import("./shellsession-BADoaaVG.js"),__vite__mapDeps([85,28])))},{id:"smalltalk",name:"Smalltalk",import:(()=>c(()=>import("./smalltalk-BERRCDM3.js"),[]))},{id:"solidity",name:"Solidity",import:(()=>c(()=>import("./solidity-rGO070M0.js"),[]))},{id:"soy",name:"Closure Templates",aliases:["closure-templates"],import:(()=>c(()=>import("./soy-8wufbnw4.js"),__vite__mapDeps([86,1,2,3])))},{id:"sparql",name:"SPARQL",import:(()=>c(()=>import("./sparql-rVzFXLq3.js"),__vite__mapDeps([87,88])))},{id:"splunk",name:"Splunk Query Language",aliases:["spl"],import:(()=>c(()=>import("./splunk-BtCnVYZw.js"),[]))},{id:"sql",name:"SQL",import:(()=>c(()=>import("./sql-CRqJ_cUM.js"),[]))},{id:"ssh-config",name:"SSH Config",import:(()=>c(()=>import("./ssh-config-_ykCGR6B.js"),[]))},{id:"stata",name:"Stata",import:(()=>c(()=>import("./stata-DI20mbqo.js"),__vite__mapDeps([89,16])))},{id:"stylus",name:"Stylus",aliases:["styl"],import:(()=>c(()=>import("./stylus-BEDo0Tqx.js"),[]))},{id:"surrealql",name:"SurrealQL",aliases:["surql"],import:(()=>c(()=>import("./surrealql-Bq5Q-fJD.js"),__vite__mapDeps([90,2])))},{id:"svelte",name:"Svelte",import:(()=>c(()=>import("./svelte-Cy7k_4gC.js"),__vite__mapDeps([91,2,11,3,12])))},{id:"swift",name:"Swift",import:(()=>c(()=>import("./swift-D82vCrfD.js"),[]))},{id:"system-verilog",name:"SystemVerilog",import:(()=>c(()=>import("./system-verilog-CnnmHF94.js"),[]))},{id:"systemd",name:"Systemd Units",import:(()=>c(()=>import("./systemd-4A_iFExJ.js"),[]))},{id:"talonscript",name:"TalonScript",aliases:["talon"],import:(()=>c(()=>import("./talonscript-CkByrt1z.js"),[]))},{id:"tasl",name:"Tasl",import:(()=>c(()=>import("./tasl-QIJgUcNo.js"),[]))},{id:"tcl",name:"Tcl",import:(()=>c(()=>import("./tcl-dwOrl1Do.js"),[]))},{id:"templ",name:"Templ",import:(()=>c(()=>import("./templ-DhtptRzy.js"),__vite__mapDeps([92,93,2,3])))},{id:"terraform",name:"Terraform",aliases:["tf","tfvars"],import:(()=>c(()=>import("./terraform-BETggiCN.js"),[]))},{id:"tex",name:"TeX",import:(()=>c(()=>import("./tex-idrVyKtj.js"),__vite__mapDeps([66,62])))},{id:"toml",name:"TOML",import:(()=>c(()=>import("./toml-vGWfd6FD.js"),[]))},{id:"ts-tags",name:"TypeScript with Tags",aliases:["lit"],import:(()=>c(()=>import("./ts-tags-D351s5mN.js"),__vite__mapDeps([94,11,3,2,25,26,1,16,7,8])))},{id:"tsv",name:"TSV",import:(()=>c(()=>import("./tsv-B_m7g4N7.js"),[]))},{id:"tsx",name:"TSX",import:(()=>c(()=>import("./tsx-COt5Ahok.js"),[]))},{id:"turtle",name:"Turtle",import:(()=>c(()=>import("./turtle-BsS91CYL.js"),[]))},{id:"twig",name:"Twig",import:(()=>c(()=>import("./twig-CW1WmMYd.js"),__vite__mapDeps([95,3,2,5,75,1,7,8,16,9,20,33,34,35,11,36,13,23,24,25,26,28,37,38])))},{id:"typescript",name:"TypeScript",aliases:["ts","cts","mts"],import:(()=>c(()=>import("./typescript-BPQ3VLAy.js"),[]))},{id:"typespec",name:"TypeSpec",aliases:["tsp"],import:(()=>c(()=>import("./typespec-CAFt9gP4.js"),[]))},{id:"typst",name:"Typst",aliases:["typ"],import:(()=>c(()=>import("./typst-DHCkPAjA.js"),[]))},{id:"v",name:"V",import:(()=>c(()=>import("./v-BcVCzyr7.js"),[]))},{id:"vala",name:"Vala",import:(()=>c(()=>import("./vala-CsfeWuGM.js"),[]))},{id:"vb",name:"Visual Basic",aliases:["cmd"],import:(()=>c(()=>import("./vb-D17OF-Vu.js"),[]))},{id:"verilog",name:"Verilog",import:(()=>c(()=>import("./verilog-BQ8w6xss.js"),[]))},{id:"vhdl",name:"VHDL",import:(()=>c(()=>import("./vhdl-CeAyd5Ju.js"),[]))},{id:"viml",name:"Vim Script",aliases:["vim","vimscript"],import:(()=>c(()=>import("./viml-CJc9bBzg.js"),[]))},{id:"vue",name:"Vue",import:(()=>c(()=>import("./vue-D2xRrEX4.js"),__vite__mapDeps([96,3,2,11,9,1,15])))},{id:"vue-html",name:"Vue HTML",import:(()=>c(()=>import("./vue-html-AaS7Mt5G.js"),__vite__mapDeps([97,2])))},{id:"vue-vine",name:"Vue Vine",import:(()=>c(()=>import("./vue-vine-BoDAl6tE.js"),__vite__mapDeps([98,3,5,69,99,12,2])))},{id:"vyper",name:"Vyper",aliases:["vy"],import:(()=>c(()=>import("./vyper-CDx5xZoG.js"),[]))},{id:"wasm",name:"WebAssembly",import:(()=>c(()=>import("./wasm-MzD3tlZU.js"),[]))},{id:"wenyan",name:"Wenyan",aliases:["文言"],import:(()=>c(()=>import("./wenyan-BV7otONQ.js"),[]))},{id:"wgsl",name:"WGSL",import:(()=>c(()=>import("./wgsl-Dx-B1_4e.js"),[]))},{id:"wikitext",name:"Wikitext",aliases:["mediawiki","wiki"],import:(()=>c(()=>import("./wikitext-BhOHFoWU.js"),[]))},{id:"wit",name:"WebAssembly Interface Types",import:(()=>c(()=>import("./wit-5i3qLPDT.js"),[]))},{id:"wolfram",name:"Wolfram",aliases:["wl"],import:(()=>c(()=>import("./wolfram-lXgVvXCa.js"),[]))},{id:"xml",name:"XML",import:(()=>c(()=>import("./xml-sdJ4AIDG.js"),__vite__mapDeps([7,8])))},{id:"xsl",name:"XSL",import:(()=>c(()=>import("./xsl-CtQFsRM5.js"),__vite__mapDeps([100,7,8])))},{id:"yaml",name:"YAML",aliases:["yml"],import:(()=>c(()=>import("./yaml-Buea-lGh.js"),[]))},{id:"zenscript",name:"ZenScript",import:(()=>c(()=>import("./zenscript-DVFEvuxE.js"),[]))},{id:"zig",name:"Zig",import:(()=>c(()=>import("./zig-VOosw3JB.js"),[]))}],at=Object.fromEntries(Ne.map(e=>[e.id,e.import])),lt=Object.fromEntries(Ne.flatMap(e=>e.aliases?.map(t=>[t,e.import])||[])),ut={...at,...lt},ct=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>c(()=>import("./andromeeda-C4gqWexZ.js"),[]))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>c(()=>import("./aurora-x-D-2ljcwZ.js"),[]))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>c(()=>import("./ayu-dark-DYE7WIF3.js"),[]))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>c(()=>import("./ayu-light-BA47KaF1.js"),[]))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>c(()=>import("./ayu-mirage-32ctXXKs.js"),[]))},{id:"catppuccin-frappe",displayName:"Catppuccin Frappé",type:"dark",import:(()=>c(()=>import("./catppuccin-frappe-DFWUc33u.js"),[]))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>c(()=>import("./catppuccin-latte-C9dUb6Cb.js"),[]))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>c(()=>import("./catppuccin-macchiato-DQyhUUbL.js"),[]))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>c(()=>import("./catppuccin-mocha-D87Tk5Gz.js"),[]))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>c(()=>import("./dark-plus-C3mMm8J8.js"),[]))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>c(()=>import("./dracula-BzJJZx-M.js"),[]))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>c(()=>import("./dracula-soft-BXkSAIEj.js"),[]))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>c(()=>import("./everforest-dark-BgDCqdQA.js"),[]))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>c(()=>import("./everforest-light-C8M2exoo.js"),[]))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>c(()=>import("./github-dark-DHJKELXO.js"),[]))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>c(()=>import("./github-dark-default-Cuk6v7N8.js"),[]))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>c(()=>import("./github-dark-dimmed-DH5Ifo-i.js"),[]))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>c(()=>import("./github-dark-high-contrast-E3gJ1_iC.js"),[]))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>c(()=>import("./github-light-DAi9KRSo.js"),[]))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>c(()=>import("./github-light-default-D7oLnXFd.js"),[]))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>c(()=>import("./github-light-high-contrast-BfjtVDDH.js"),[]))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>c(()=>import("./gruvbox-dark-hard-CFHQjOhq.js"),[]))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>c(()=>import("./gruvbox-dark-medium-GsRaNv29.js"),[]))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>c(()=>import("./gruvbox-dark-soft-CVdnzihN.js"),[]))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>c(()=>import("./gruvbox-light-hard-CH1njM8p.js"),[]))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>c(()=>import("./gruvbox-light-medium-DRw_LuNl.js"),[]))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>c(()=>import("./gruvbox-light-soft-hJgmCMqR.js"),[]))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>c(()=>import("./horizon-BUw7H-hv.js"),[]))},{id:"horizon-bright",displayName:"Horizon Bright",type:"light",import:(()=>c(()=>import("./horizon-bright-CUuTKBJd.js"),[]))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>c(()=>import("./houston-DnULxvSX.js"),[]))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>c(()=>import("./kanagawa-dragon-CkXjmgJE.js"),[]))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>c(()=>import("./kanagawa-lotus-CfQXZHmo.js"),[]))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>c(()=>import("./kanagawa-wave-DWedfzmr.js"),[]))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>c(()=>import("./laserwave-DUszq2jm.js"),[]))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>c(()=>import("./light-plus-B7mTdjB0.js"),[]))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>c(()=>import("./material-theme-D5KoaKCx.js"),[]))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>c(()=>import("./material-theme-darker-BfHTSMKl.js"),[]))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>c(()=>import("./material-theme-lighter-B0m2ddpp.js"),[]))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>c(()=>import("./material-theme-ocean-CyktbL80.js"),[]))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>c(()=>import("./material-theme-palenight-Csfq5Kiy.js"),[]))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>c(()=>import("./min-dark-CafNBF8u.js"),[]))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>c(()=>import("./min-light-CTRr51gU.js"),[]))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>c(()=>import("./monokai-D4h5O-jR.js"),[]))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>c(()=>import("./night-owl-C39BiMTA.js"),[]))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>c(()=>import("./night-owl-light-CMTm3GFP.js"),[]))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>c(()=>import("./nord-Ddv68eIx.js"),[]))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>c(()=>import("./one-dark-pro-DVMEJ2y_.js"),[]))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>c(()=>import("./one-light-C3Wv6jpd.js"),[]))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>c(()=>import("./plastic-3e1v2bzS.js"),[]))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>c(()=>import("./poimandres-CS3Unz2-.js"),[]))},{id:"red",displayName:"Red",type:"dark",import:(()=>c(()=>import("./red-bN70gL4F.js"),[]))},{id:"rose-pine",displayName:"Rosé Pine",type:"dark",import:(()=>c(()=>import("./rose-pine-qdsjHGoJ.js"),[]))},{id:"rose-pine-dawn",displayName:"Rosé Pine Dawn",type:"light",import:(()=>c(()=>import("./rose-pine-dawn-DHQR4-dF.js"),[]))},{id:"rose-pine-moon",displayName:"Rosé Pine Moon",type:"dark",import:(()=>c(()=>import("./rose-pine-moon-D4_iv3hh.js"),[]))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>c(()=>import("./slack-dark-BthQWCQV.js"),[]))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>c(()=>import("./slack-ochin-DqwNpetd.js"),[]))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>c(()=>import("./snazzy-light-Bw305WKR.js"),[]))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>c(()=>import("./solarized-dark-DXbdFlpD.js"),[]))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>c(()=>import("./solarized-light-L9t79GZl.js"),[]))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>c(()=>import("./synthwave-84-CbfX1IO0.js"),[]))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>c(()=>import("./tokyo-night-hegEt444.js"),[]))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>c(()=>import("./vesper-DRje8inN.js"),[]))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>c(()=>import("./vitesse-black-Bkuqu6BP.js"),[]))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>c(()=>import("./vitesse-dark-D0r3Knsf.js"),[]))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>c(()=>import("./vitesse-light-CVO1_9PV.js"),[]))}],dt=Object.fromEntries(ct.map(e=>[e.id,e.import]));var ln=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function io(){return 2147483648}function oo(){return typeof performance<"u"?performance.now():Date.now()}const so=(e,t)=>e+(t-e%t)%t;async function ao(e){let t,n;const r={};function i(h){n=h,r.HEAPU8=new Uint8Array(h),r.HEAPU32=new Uint32Array(h)}function o(h,m,E){r.HEAPU8.copyWithin(h,m,m+E)}function s(h){try{return t.grow(h-n.byteLength+65535>>>16),i(t.buffer),1}catch{}}function a(h){const m=r.HEAPU8.length;h=h>>>0;const E=io();if(h>E)return!1;for(let b=1;b<=4;b*=2){let g=m*(1+.2/b);g=Math.min(g,h+100663296);const y=Math.min(E,so(Math.max(h,g),65536));if(s(y))return!0}return!1}const l=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function u(h,m,E=1024){const b=m+E;let g=m;for(;h[g]&&!(g>=b);)++g;if(g-m>16&&h.buffer&&l)return l.decode(h.subarray(m,g));let y="";for(;m>10,56320|I&1023)}}return y}function p(h,m){return h?u(r.HEAPU8,h,m):""}const d={emscripten_get_now:oo,emscripten_memcpy_big:o,emscripten_resize_heap:a,fd_write:()=>0};async function f(){const m=await e({env:d,wasi_snapshot_preview1:d});t=m.memory,i(t.buffer),Object.assign(r,m),r.UTF8ToString=p}return await f(),r}var lo=Object.defineProperty,uo=(e,t,n)=>t in e?lo(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,P=(e,t,n)=>uo(e,typeof t!="symbol"?t+"":t,n);let D=null;function co(e){throw new ln(e.UTF8ToString(e.getLastOnigError()))}class pt{constructor(t){P(this,"utf16Length"),P(this,"utf8Length"),P(this,"utf16Value"),P(this,"utf8Value"),P(this,"utf16OffsetToUtf8"),P(this,"utf8OffsetToUtf16");const n=t.length,r=pt._utf8ByteLength(t),i=r!==n,o=i?new Uint32Array(n+1):null;i&&(o[n]=r);const s=i?new Uint32Array(r+1):null;i&&(s[r]=n);const a=new Uint8Array(r);let l=0;for(let u=0;u=55296&&p<=56319&&u+1=56320&&h<=57343&&(d=(p-55296<<10)+65536|h-56320,f=!0)}i&&(o[u]=l,f&&(o[u+1]=l),d<=127?s[l+0]=u:d<=2047?(s[l+0]=u,s[l+1]=u):d<=65535?(s[l+0]=u,s[l+1]=u,s[l+2]=u):(s[l+0]=u,s[l+1]=u,s[l+2]=u,s[l+3]=u)),d<=127?a[l++]=d:d<=2047?(a[l++]=192|(d&1984)>>>6,a[l++]=128|(d&63)>>>0):d<=65535?(a[l++]=224|(d&61440)>>>12,a[l++]=128|(d&4032)>>>6,a[l++]=128|(d&63)>>>0):(a[l++]=240|(d&1835008)>>>18,a[l++]=128|(d&258048)>>>12,a[l++]=128|(d&4032)>>>6,a[l++]=128|(d&63)>>>0),f&&u++}this.utf16Length=n,this.utf8Length=r,this.utf16Value=t,this.utf8Value=a,this.utf16OffsetToUtf8=o,this.utf8OffsetToUtf16=s}static _utf8ByteLength(t){let n=0;for(let r=0,i=t.length;r=55296&&o<=56319&&r+1=56320&&l<=57343&&(s=(o-55296<<10)+65536|l-56320,a=!0)}s<=127?n+=1:s<=2047?n+=2:s<=65535?n+=3:n+=4,a&&r++}return n}createString(t){const n=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,n),n}}const ht=class X{constructor(t){if(P(this,"id",++X.LAST_ID),P(this,"_onigBinding"),P(this,"content"),P(this,"utf16Length"),P(this,"utf8Length"),P(this,"utf16OffsetToUtf8"),P(this,"utf8OffsetToUtf16"),P(this,"ptr"),!D)throw new ln("Must invoke loadWasm first.");this._onigBinding=D,this.content=t;const n=new pt(t);this.utf16Length=n.utf16Length,this.utf8Length=n.utf8Length,this.utf16OffsetToUtf8=n.utf16OffsetToUtf8,this.utf8OffsetToUtf16=n.utf8OffsetToUtf16,this.utf8Length<1e4&&!X._sharedPtrInUse?(X._sharedPtr||(X._sharedPtr=D.omalloc(1e4)),X._sharedPtrInUse=!0,D.HEAPU8.set(n.utf8Value,X._sharedPtr),this.ptr=X._sharedPtr):this.ptr=n.createString(D)}convertUtf8OffsetToUtf16(t){return this.utf8OffsetToUtf16?t<0?0:t>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[t]:t}convertUtf16OffsetToUtf8(t){return this.utf16OffsetToUtf8?t<0?0:t>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[t]:t}dispose(){this.ptr===X._sharedPtr?X._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};P(ht,"LAST_ID",0);P(ht,"_sharedPtr",0);P(ht,"_sharedPtrInUse",!1);let Lr=ht;class po{constructor(t){if(P(this,"_onigBinding"),P(this,"_ptr"),!D)throw new ln("Must invoke loadWasm first.");const n=[],r=[];for(let a=0,l=t.length;a{let r=e;return r=await r,typeof r=="function"&&(r=await r(n)),typeof r=="function"&&(r=await r(n)),ho(r)?r=await r.instantiator(n):fo(r)?r=await r.default(n):(mo(r)&&(r=r.data),go(r)?typeof WebAssembly.instantiateStreaming=="function"?r=await yo(r)(n):r=await Eo(r)(n):_o(r)?r=await Lt(r)(n):r instanceof WebAssembly.Module?r=await Lt(r)(n):"default"in r&&r.default instanceof WebAssembly.Module&&(r=await Lt(r.default)(n))),"instance"in r&&(r=r.instance),"exports"in r&&(r=r.exports),r})}return Fe=t(),Fe}function Lt(e){return t=>WebAssembly.instantiate(e,t)}function yo(e){return t=>WebAssembly.instantiateStreaming(e,t)}function Eo(e){return async t=>{const n=await e.arrayBuffer();return WebAssembly.instantiate(n,t)}}let Rr;function bo(e){Rr=e}function wo(){return Rr}async function un(e){return e&&await ft(e),{createScanner(t){return new po(t.map(n=>typeof n=="string"?n:n.source))},createString(t){return new Lr(t)}}}const vo=Object.freeze(Object.defineProperty({__proto__:null,createOnigurumaEngine:un,getDefaultWasmLoader:wo,loadWasm:ft,setDefaultWasmLoader:bo},Symbol.toStringTag,{value:"Module"}));var Ir=an({});Sr(Ir,vo);var L=class extends Error{constructor(e){super(e),this.name="ShikiError"}};function Co(e){return cn(e)}function cn(e){return Array.isArray(e)?Ao(e):e instanceof RegExp?e:typeof e=="object"?ko(e):e}function Ao(e){let t=[];for(let n=0,r=e.length;n{for(let r in n)e[r]=n[r]}),e}function Pr(e){const t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?Pr(e.substring(0,e.length-1)):e.substr(~t+1)}var Rt=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,je=class{static hasCaptures(e){return e===null?!1:(Rt.lastIndex=0,Rt.test(e))}static replaceCaptures(e,t,n){return e.replace(Rt,(r,i,o,s)=>{let a=n[parseInt(i||o,10)];if(a){let l=t.substring(a.start,a.end);for(;l[0]===".";)l=l.substring(1);switch(s){case"downcase":return l.toLowerCase();case"upcase":return l.toUpperCase();default:return l}}else return r})}};function Or(e,t){return et?1:0}function xr(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let n=e.length,r=t.length;if(n===r){for(let i=0;ithis._root.match(e));getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;const t=e.scopeName,r=this._cachedMatchRoot.get(t).find(i=>So(e.parent,i.parentScopes));return r?new Vr(r.fontStyle,r.foreground,r.background):null}},It=class Ke{constructor(t,n){this.parent=t,this.scopeName=n}static push(t,n){for(const r of n)t=new Ke(t,r);return t}static from(...t){let n=null;for(let r=0;r"){if(n===t.length-1)return!1;r=t[++n],i=!0}for(;e&&!Lo(e.scopeName,r);){if(i)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function Lo(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var Vr=class{constructor(e,t,n){this.fontStyle=e,this.foregroundId=t,this.backgroundId=n}};function Ro(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,n=[],r=0;for(let i=0,o=t.length;i1&&(b=m.slice(0,m.length-1),b.reverse()),n[r++]=new Io(E,b,i,l,u,p)}}return n}var Io=class{constructor(e,t,n,r,i,o){this.scope=e,this.parentScopes=t,this.index=n,this.fontStyle=r,this.foreground=i,this.background=o}},$=(e=>(e[e.NotSet=-1]="NotSet",e[e.None=0]="None",e[e.Italic=1]="Italic",e[e.Bold=2]="Bold",e[e.Underline=4]="Underline",e[e.Strikethrough=8]="Strikethrough",e))($||{});function To(e,t){e.sort((l,u)=>{let p=Or(l.scope,u.scope);return p!==0||(p=xr(l.parentScopes,u.parentScopes),p!==0)?p:l.index-u.index});let n=0,r="#000000",i="#ffffff";for(;e.length>=1&&e[0].scope==="";){let l=e.shift();l.fontStyle!==-1&&(n=l.fontStyle),l.foreground!==null&&(r=l.foreground),l.background!==null&&(i=l.background)}let o=new Po(t),s=new Vr(n,o.getId(r),o.getId(i)),a=new xo(new jt(0,null,-1,0,0),[]);for(let l=0,u=e.length;lt?console.log("how did this happen?"):this.scopeDepth=t,n!==-1&&(this.fontStyle=n),r!==0&&(this.foreground=r),i!==0&&(this.background=i)}},xo=class Ht{constructor(t,n=[],r={}){this._mainRule=t,this._children=r,this._rulesWithParentScopes=n}_rulesWithParentScopes;static _cmpBySpecificity(t,n){if(t.scopeDepth!==n.scopeDepth)return n.scopeDepth-t.scopeDepth;let r=0,i=0;for(;t.parentScopes[r]===">"&&r++,n.parentScopes[i]===">"&&i++,!(r>=t.parentScopes.length||i>=n.parentScopes.length);){const o=n.parentScopes[i].length-t.parentScopes[r].length;if(o!==0)return o;r++,i++}return n.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let r=t.indexOf("."),i,o;if(r===-1?(i=t,o=""):(i=t.substring(0,r),o=t.substring(r+1)),this._children.hasOwnProperty(i))return this._children[i].match(o)}const n=this._rulesWithParentScopes.concat(this._mainRule);return n.sort(Ht._cmpBySpecificity),n}insert(t,n,r,i,o,s){if(n===""){this._doInsertHere(t,r,i,o,s);return}let a=n.indexOf("."),l,u;a===-1?(l=n,u=""):(l=n.substring(0,a),u=n.substring(a+1));let p;this._children.hasOwnProperty(l)?p=this._children[l]:(p=new Ht(this._mainRule.clone(),jt.cloneArr(this._rulesWithParentScopes)),this._children[l]=p),p.insert(t+1,u,r,i,o,s)}_doInsertHere(t,n,r,i,o){if(n===null){this._mainRule.acceptOverwrite(t,r,i,o);return}for(let s=0,a=this._rulesWithParentScopes.length;s>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,n,r,i,o,s,a){let l=U.getLanguageId(t),u=U.getTokenType(t),p=U.containsBalancedBrackets(t)?1:0,d=U.getFontStyle(t),f=U.getForeground(t),h=U.getBackground(t);return n!==0&&(l=n),r!==8&&(u=r),i!==null&&(p=i?1:0),o!==-1&&(d=o),s!==0&&(f=s),a!==0&&(h=a),(l<<0|u<<8|p<<10|d<<11|f<<15|h<<24)>>>0}};function Ze(e,t){const n=[],r=Do(e);let i=r.next();for(;i!==null;){let l=0;if(i.length===2&&i.charAt(1)===":"){switch(i.charAt(0)){case"R":l=1;break;case"L":l=-1;break;default:console.log(`Unknown priority ${i} in scope selector`)}i=r.next()}let u=s();if(n.push({matcher:u,priority:l}),i!==",")break;i=r.next()}return n;function o(){if(i==="-"){i=r.next();const l=o();return u=>!!l&&!l(u)}if(i==="("){i=r.next();const l=a();return i===")"&&(i=r.next()),l}if(Mn(i)){const l=[];do l.push(i),i=r.next();while(Mn(i));return u=>t(l,u)}return null}function s(){const l=[];let u=o();for(;u;)l.push(u),u=o();return p=>l.every(d=>d(p))}function a(){const l=[];let u=s();for(;u&&(l.push(u),i==="|"||i===",");){do i=r.next();while(i==="|"||i===",");u=s()}return p=>l.some(d=>d(p))}}function Mn(e){return!!e&&!!e.match(/[\w\.:]+/)}function Do(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,n=t.exec(e);return{next:()=>{if(!n)return null;const r=n[0];return n=t.exec(e),r}}}function Mr(e){typeof e.dispose=="function"&&e.dispose()}var Se=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},No=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},Vo=class{_references=[];_seenReferenceKeys=new Set;get references(){return this._references}visitedRule=new Set;add(e){const t=e.toKey();this._seenReferenceKeys.has(t)||(this._seenReferenceKeys.add(t),this._references.push(e))}},$o=class{constructor(e,t){this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new Se(this.initialScopeName)]}seenFullScopeRequests=new Set;seenPartialScopeRequests=new Set;Q;processQueue(){const e=this.Q;this.Q=[];const t=new Vo;for(const n of e)Mo(n,this.initialScopeName,this.repo,t);for(const n of t.references)if(n instanceof Se){if(this.seenFullScopeRequests.has(n.scopeName))continue;this.seenFullScopeRequests.add(n.scopeName),this.Q.push(n)}else{if(this.seenFullScopeRequests.has(n.scopeName)||this.seenPartialScopeRequests.has(n.toKey()))continue;this.seenPartialScopeRequests.add(n.toKey()),this.Q.push(n)}}};function Mo(e,t,n,r){const i=n.lookup(e.scopeName);if(!i){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}const o=n.lookup(t);e instanceof Se?Qe({baseGrammar:o,selfGrammar:i},r):Wt(e.ruleName,{baseGrammar:o,selfGrammar:i,repository:i.repository},r);const s=n.injections(e.scopeName);if(s)for(const a of s)r.add(new Se(a))}function Wt(e,t,n){if(t.repository&&t.repository[e]){const r=t.repository[e];et([r],t,n)}}function Qe(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&et(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&et(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function et(e,t,n){for(const r of e){if(n.visitedRule.has(r))continue;n.visitedRule.add(r);const i=r.repository?Tr({},t.repository,r.repository):t.repository;Array.isArray(r.patterns)&&et(r.patterns,{...t,repository:i},n);const o=r.include;if(!o)continue;const s=Gr(o);switch(s.kind){case 0:Qe({...t,selfGrammar:t.baseGrammar},n);break;case 1:Qe(t,n);break;case 2:Wt(s.ruleName,{...t,repository:i},n);break;case 3:case 4:const a=s.scopeName===t.selfGrammar.scopeName?t.selfGrammar:s.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(a){const l={baseGrammar:t.baseGrammar,selfGrammar:a,repository:i};s.kind===4?Wt(s.ruleName,l,n):Qe(l,n)}else s.kind===4?n.add(new No(s.scopeName,s.ruleName)):n.add(new Se(s.scopeName));break}}}var Go=class{kind=0},Bo=class{kind=1},Uo=class{constructor(e){this.ruleName=e}kind=2},Fo=class{constructor(e){this.scopeName=e}kind=3},jo=class{constructor(e,t){this.scopeName=e,this.ruleName=t}kind=4};function Gr(e){if(e==="$base")return new Go;if(e==="$self")return new Bo;const t=e.indexOf("#");if(t===-1)return new Fo(e);if(t===0)return new Uo(e.substring(1));{const n=e.substring(0,t),r=e.substring(t+1);return new jo(n,r)}}var Ho=/\\(\d+)/,Gn=/\\(\d+)/g,Wo=-1,Br=-2;var Ve=class{$location;id;_nameIsCapturing;_name;_contentNameIsCapturing;_contentName;constructor(e,t,n,r){this.$location=e,this.id=t,this._name=n||null,this._nameIsCapturing=je.hasCaptures(this._name),this._contentName=r||null,this._contentNameIsCapturing=je.hasCaptures(this._contentName)}get debugName(){const e=this.$location?`${Pr(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${e}`}getName(e,t){return!this._nameIsCapturing||this._name===null||e===null||t===null?this._name:je.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:je.replaceCaptures(this._contentName,e,t)}},zo=class extends Ve{retokenizeCapturedWithRuleId;constructor(e,t,n,r,i){super(e,t,n,r),this.retokenizeCapturedWithRuleId=i}dispose(){}collectPatterns(e,t){throw new Error("Not supported!")}compile(e,t){throw new Error("Not supported!")}compileAG(e,t,n,r){throw new Error("Not supported!")}},qo=class extends Ve{_match;captures;_cachedCompiledPatterns;constructor(e,t,n,r,i){super(e,t,n,null),this._match=new Le(r,this.id),this.captures=i,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(e,t){t.push(this._match)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e).compileAG(e,n,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new Re,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Bn=class extends Ve{hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,n,r,i){super(e,t,n,r),this.patterns=i.patterns,this.hasMissingPatterns=i.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(e,t){for(const n of this.patterns)e.getRule(n).collectPatterns(e,t)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e).compileAG(e,n,r)}_getCachedCompiledPatterns(e){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new Re,this.collectPatterns(e,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},zt=class extends Ve{_begin;beginCaptures;_end;endHasBackReferences;endCaptures;applyEndPatternLast;hasMissingPatterns;patterns;_cachedCompiledPatterns;constructor(e,t,n,r,i,o,s,a,l,u){super(e,t,n,r),this._begin=new Le(i,this.id),this.beginCaptures=o,this._end=new Le(s||"￿",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=a,this.applyEndPatternLast=l||!1,this.patterns=u.patterns,this.hasMissingPatterns=u.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(e,t){return this._end.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e,t).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e,t).compileAG(e,n,r)}_getCachedCompiledPatterns(e,t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new Re;for(const n of this.patterns)e.getRule(n).collectPatterns(e,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,t):this._cachedCompiledPatterns.setSource(0,t)),this._cachedCompiledPatterns}},tt=class extends Ve{_begin;beginCaptures;whileCaptures;_while;whileHasBackReferences;hasMissingPatterns;patterns;_cachedCompiledPatterns;_cachedCompiledWhilePatterns;constructor(e,t,n,r,i,o,s,a,l){super(e,t,n,r),this._begin=new Le(i,this.id),this.beginCaptures=o,this.whileCaptures=a,this._while=new Le(s,Br),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(e,t){return this._while.resolveBackReferences(e,t)}collectPatterns(e,t){t.push(this._begin)}compile(e,t){return this._getCachedCompiledPatterns(e).compile(e)}compileAG(e,t,n,r){return this._getCachedCompiledPatterns(e).compileAG(e,n,r)}_getCachedCompiledPatterns(e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new Re;for(const t of this.patterns)e.getRule(t).collectPatterns(e,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(e,t){return this._getCachedCompiledWhilePatterns(e,t).compile(e)}compileWhileAG(e,t,n,r){return this._getCachedCompiledWhilePatterns(e,t).compileAG(e,n,r)}_getCachedCompiledWhilePatterns(e,t){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new Re,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,t||"￿"),this._cachedCompiledWhilePatterns}},Ur=class V{static createCaptureRule(t,n,r,i,o){return t.registerRule(s=>new zo(n,s,r,i,o))}static getCompiledRuleId(t,n,r){return t.id||n.registerRule(i=>{if(t.id=i,t.match)return new qo(t.$vscodeTextmateLocation,t.id,t.name,t.match,V._compileCaptures(t.captures,n,r));if(typeof t.begin>"u"){t.repository&&(r=Tr({},r,t.repository));let o=t.patterns;return typeof o>"u"&&t.include&&(o=[{include:t.include}]),new Bn(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,V._compilePatterns(o,n,r))}return t.while?new tt(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,V._compileCaptures(t.beginCaptures||t.captures,n,r),t.while,V._compileCaptures(t.whileCaptures||t.captures,n,r),V._compilePatterns(t.patterns,n,r)):new zt(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,V._compileCaptures(t.beginCaptures||t.captures,n,r),t.end,V._compileCaptures(t.endCaptures||t.captures,n,r),t.applyEndPatternLast,V._compilePatterns(t.patterns,n,r))}),t.id}static _compileCaptures(t,n,r){let i=[];if(t){let o=0;for(const s in t){if(s==="$vscodeTextmateLocation")continue;const a=parseInt(s,10);a>o&&(o=a)}for(let s=0;s<=o;s++)i[s]=null;for(const s in t){if(s==="$vscodeTextmateLocation")continue;const a=parseInt(s,10);let l=0;t[s].patterns&&(l=V.getCompiledRuleId(t[s],n,r)),i[a]=V.createCaptureRule(n,t[s].$vscodeTextmateLocation,t[s].name,t[s].contentName,l)}}return i}static _compilePatterns(t,n,r){let i=[];if(t)for(let o=0,s=t.length;ot.substring(i.start,i.end));return Gn.lastIndex=0,this.source.replace(Gn,(i,o)=>Dr(r[parseInt(o,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],n=[],r=[],i=[],o,s,a,l;for(o=0,s=this.source.length;on.source);this._cached=new Un(e,t,this._items.map(n=>n.ruleId))}return this._cached}compileAG(e,t,n){return this._hasAnchors?t?n?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,n)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,n)),this._anchorCache.A1_G0):n?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,n)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,n)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,n){let r=this._items.map(i=>i.resolveAnchors(t,n));return new Un(e,r,this._items.map(i=>i.ruleId))}},Un=class{constructor(e,t,n){this.regExps=t,this.rules=n,this.scanner=e.createOnigScanner(t)}scanner;dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){const e=[];for(let t=0,n=this.rules.length;t{const n=this._scopeToLanguage(t),r=this._toStandardTokenType(t);return new Tt(n,r)});_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){const n=t.match(qt.STANDARD_TOKEN_TYPE_REGEXP);if(!n)return 8;switch(n[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"meta.embedded":return 0}throw new Error("Unexpected match for standard token type!")}static STANDARD_TOKEN_TYPE_REGEXP=/\b(comment|string|regex|meta\.embedded)\b/},Ko=class{values;scopesRegExp;constructor(e){if(e.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(e);const t=e.map(([n,r])=>Dr(n));t.sort(),t.reverse(),this.scopesRegExp=new RegExp(`^((${t.join(")|(")}))($|\\.)`,"")}}match(e){if(!this.scopesRegExp)return;const t=e.match(this.scopesRegExp);if(t)return this.values.get(t[1])}},Fn=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function jr(e,t,n,r,i,o,s,a){const l=t.content.length;let u=!1,p=-1;if(s){const h=Qo(e,t,n,r,i,o);i=h.stack,r=h.linePos,n=h.isFirstLine,p=h.anchorPosition}const d=Date.now();for(;!u;){if(a!==0&&Date.now()-d>a)return new Fn(i,!0);f()}return new Fn(i,!1);function f(){const h=Jo(e,t,n,r,i,p);if(!h){o.produce(i,l),u=!0;return}const m=h.captureIndices,E=h.matchedRuleId,b=m&&m.length>0?m[0].end>r:!1;if(E===Wo){const g=i.getRule(e);o.produce(i,m[0].start),i=i.withContentNameScopesList(i.nameScopesList),Ce(e,t,n,i,o,g.endCaptures,m),o.produce(i,m[0].end);const y=i;if(i=i.parent,p=y.getAnchorPos(),!b&&y.getEnterPos()===r){i=y,o.produce(i,l),u=!0;return}}else{const g=e.getRule(E);o.produce(i,m[0].start);const y=i,w=g.getName(t.content,m),A=i.contentNameScopesList.pushAttributed(w,e);if(i=i.push(E,r,p,m[0].end===l,null,A,A),g instanceof zt){const k=g;Ce(e,t,n,i,o,k.beginCaptures,m),o.produce(i,m[0].end),p=m[0].end;const I=k.getContentName(t.content,m),M=A.pushAttributed(I,e);if(i=i.withContentNameScopesList(M),k.endHasBackReferences&&(i=i.withEndRule(k.getEndWithResolvedBackReferences(t.content,m))),!b&&y.hasSameRuleAs(i)){i=i.pop(),o.produce(i,l),u=!0;return}}else if(g instanceof tt){const k=g;Ce(e,t,n,i,o,k.beginCaptures,m),o.produce(i,m[0].end),p=m[0].end;const I=k.getContentName(t.content,m),M=A.pushAttributed(I,e);if(i=i.withContentNameScopesList(M),k.whileHasBackReferences&&(i=i.withEndRule(k.getWhileWithResolvedBackReferences(t.content,m))),!b&&y.hasSameRuleAs(i)){i=i.pop(),o.produce(i,l),u=!0;return}}else if(Ce(e,t,n,i,o,g.captures,m),o.produce(i,m[0].end),i=i.pop(),!b){i=i.safePop(),o.produce(i,l),u=!0;return}}m[0].end>r&&(r=m[0].end,n=!1)}}function Qo(e,t,n,r,i,o){let s=i.beginRuleCapturedEOL?0:-1;const a=[];for(let l=i;l;l=l.pop()){const u=l.getRule(e);u instanceof tt&&a.push({rule:u,stack:l})}for(let l=a.pop();l;l=a.pop()){const{ruleScanner:u,findOptions:p}=es(l.rule,e,l.stack.endRule,n,r===s),d=u.findNextMatchSync(t,r,p);if(d){if(d.ruleId!==Br){i=l.stack.pop();break}d.captureIndices&&d.captureIndices.length&&(o.produce(l.stack,d.captureIndices[0].start),Ce(e,t,n,l.stack,o,l.rule.whileCaptures,d.captureIndices),o.produce(l.stack,d.captureIndices[0].end),s=d.captureIndices[0].end,d.captureIndices[0].end>r&&(r=d.captureIndices[0].end,n=!1))}else{i=l.stack.pop();break}}return{stack:i,linePos:r,anchorPosition:s,isFirstLine:n}}function Jo(e,t,n,r,i,o){const s=Yo(e,t,n,r,i,o),a=e.getInjections();if(a.length===0)return s;const l=Zo(a,e,t,n,r,i,o);if(!l)return s;if(!s)return l;const u=s.captureIndices[0].start,p=l.captureIndices[0].start;return p=a)&&(a=w,l=y.captureIndices,u=y.ruleId,p=m.priority,a===i))break}return l?{priorityMatch:p===-1,captureIndices:l,matchedRuleId:u}:null}function Hr(e,t,n,r,i){return{ruleScanner:e.compileAG(t,n,r,i),findOptions:0}}function es(e,t,n,r,i){return{ruleScanner:e.compileWhileAG(t,n,r,i),findOptions:0}}function Ce(e,t,n,r,i,o,s){if(o.length===0)return;const a=t.content,l=Math.min(o.length,s.length),u=[],p=s[0].end;for(let d=0;dp)break;for(;u.length>0&&u[u.length-1].endPos<=h.start;)i.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop();if(u.length>0?i.produceFromScopes(u[u.length-1].scopes,h.start):i.produce(r,h.start),f.retokenizeCapturedWithRuleId){const E=f.getName(a,s),b=r.contentNameScopesList.pushAttributed(E,e),g=f.getContentName(a,s),y=b.pushAttributed(g,e),w=r.push(f.retokenizeCapturedWithRuleId,h.start,-1,!1,null,b,y),A=e.createOnigString(a.substring(0,h.end));jr(e,A,n&&h.start===0,h.start,w,i,!1,0),Mr(A);continue}const m=f.getName(a,s);if(m!==null){const b=(u.length>0?u[u.length-1].scopes:r.contentNameScopesList).pushAttributed(m,e);u.push(new ts(b,h.end))}}for(;u.length>0;)i.produceFromScopes(u[u.length-1].scopes,u[u.length-1].endPos),u.pop()}var ts=class{scopes;endPos;constructor(e,t){this.scopes=e,this.endPos=t}};function ns(e,t,n,r,i,o,s,a){return new is(e,t,n,r,i,o,s,a)}function jn(e,t,n,r,i){const o=Ze(t,nt),s=Ur.getCompiledRuleId(n,r,i.repository);for(const a of o)e.push({debugSelector:t,matcher:a.matcher,ruleId:s,grammar:i,priority:a.priority})}function nt(e,t){if(t.length{for(let i=n;in&&e.substr(0,n)===t&&e[n]==="."}var is=class{constructor(e,t,n,r,i,o,s,a){if(this._rootScopeName=e,this.balancedBracketSelectors=o,this._onigLib=a,this._basicScopeAttributesProvider=new Xo(n,r),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=s,this._grammar=Hn(t,null),this._injections=null,this._tokenTypeMatchers=[],i)for(const l of Object.keys(i)){const u=Ze(l,nt);for(const p of u)this._tokenTypeMatchers.push({matcher:p.matcher,type:i[l]})}}_rootId;_lastRuleId;_ruleId2desc;_includedGrammars;_grammarRepository;_grammar;_injections;_basicScopeAttributesProvider;_tokenTypeMatchers;get themeProvider(){return this._grammarRepository}dispose(){for(const e of this._ruleId2desc)e&&e.dispose()}createOnigScanner(e){return this._onigLib.createOnigScanner(e)}createOnigString(e){return this._onigLib.createOnigString(e)}getMetadataForScope(e){return this._basicScopeAttributesProvider.getBasicScopeAttributes(e)}_collectInjections(){const e={lookup:i=>i===this._rootScopeName?this._grammar:this.getExternalGrammar(i),injections:i=>this._grammarRepository.injections(i)},t=[],n=this._rootScopeName,r=e.lookup(n);if(r){const i=r.injections;if(i)for(let s in i)jn(t,s,i[s],this,r);const o=this._grammarRepository.injections(n);o&&o.forEach(s=>{const a=this.getExternalGrammar(s);if(a){const l=a.injectionSelector;l&&jn(t,l,a,this,a)}})}return t.sort((i,o)=>i.priority-o.priority),t}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(e){const t=++this._lastRuleId,n=e(t);return this._ruleId2desc[t]=n,n}getRule(e){return this._ruleId2desc[e]}getExternalGrammar(e,t){if(this._includedGrammars[e])return this._includedGrammars[e];if(this._grammarRepository){const n=this._grammarRepository.lookup(e);if(n)return this._includedGrammars[e]=Hn(n,t&&t.$base),this._includedGrammars[e]}}tokenizeLine(e,t,n=0){const r=this._tokenize(e,t,!1,n);return{tokens:r.lineTokens.getResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}tokenizeLine2(e,t,n=0){const r=this._tokenize(e,t,!0,n);return{tokens:r.lineTokens.getBinaryResult(r.ruleStack,r.lineLength),ruleStack:r.ruleStack,stoppedEarly:r.stoppedEarly}}_tokenize(e,t,n,r){this._rootId===-1&&(this._rootId=Ur.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let i;if(!t||t===Xt.NULL){i=!0;const u=this._basicScopeAttributesProvider.getDefaultAttributes(),p=this.themeProvider.getDefaults(),d=le.set(0,u.languageId,u.tokenType,null,p.fontStyle,p.foregroundId,p.backgroundId),f=this.getRule(this._rootId).getName(null,null);let h;f?h=Ae.createRootAndLookUpScopeName(f,d,this):h=Ae.createRoot("unknown",d),t=new Xt(null,this._rootId,-1,-1,!1,null,h,h)}else i=!1,t.reset();e=e+` -`;const o=this.createOnigString(e),s=o.content.length,a=new ss(n,e,this._tokenTypeMatchers,this.balancedBracketSelectors),l=jr(this,o,i,0,t,a,!0,r);return Mr(o),{lineLength:s,lineTokens:a,ruleStack:l.stack,stoppedEarly:l.stoppedEarly}}};function Hn(e,t){return e=Co(e),e.repository=e.repository||{},e.repository.$self={$vscodeTextmateLocation:e.$vscodeTextmateLocation,patterns:e.patterns,name:e.scopeName},e.repository.$base=t||e.repository.$self,e}var Ae=class K{constructor(t,n,r){this.parent=t,this.scopePath=n,this.tokenAttributes=r}static fromExtension(t,n){let r=t,i=t?.scopePath??null;for(const o of n)i=It.push(i,o.scopeNames),r=new K(r,i,o.encodedTokenAttributes);return r}static createRoot(t,n){return new K(null,new It(null,t),n)}static createRootAndLookUpScopeName(t,n,r){const i=r.getMetadataForScope(t),o=new It(null,t),s=r.themeProvider.themeMatch(o),a=K.mergeAttributes(n,i,s);return new K(null,o,a)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return K.equals(this,t)}static equals(t,n){do{if(t===n||!t&&!n)return!0;if(!t||!n||t.scopeName!==n.scopeName||t.tokenAttributes!==n.tokenAttributes)return!1;t=t.parent,n=n.parent}while(!0)}static mergeAttributes(t,n,r){let i=-1,o=0,s=0;return r!==null&&(i=r.fontStyle,o=r.foregroundId,s=r.backgroundId),le.set(t,n.languageId,n.tokenType,null,i,o,s)}pushAttributed(t,n){if(t===null)return this;if(t.indexOf(" ")===-1)return K._pushAttributed(this,t,n);const r=t.split(/ /g);let i=this;for(const o of r)i=K._pushAttributed(i,o,n);return i}static _pushAttributed(t,n,r){const i=r.getMetadataForScope(n),o=t.scopePath.push(n),s=r.themeProvider.themeMatch(o),a=K.mergeAttributes(t.tokenAttributes,i,s);return new K(t,o,a)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){const n=[];let r=this;for(;r&&r!==t;)n.push({encodedTokenAttributes:r.tokenAttributes,scopeNames:r.scopePath.getExtensionIfDefined(r.parent?.scopePath??null)}),r=r.parent;return r===t?n.reverse():void 0}},Xt=class ie{constructor(t,n,r,i,o,s,a,l){this.parent=t,this.ruleId=n,this.beginRuleCapturedEOL=o,this.endRule=s,this.nameScopesList=a,this.contentNameScopesList=l,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=r,this._anchorPos=i}_stackElementBrand=void 0;static NULL=new ie(null,0,0,0,!1,null,null,null);_enterPos;_anchorPos;depth;equals(t){return t===null?!1:ie._equals(this,t)}static _equals(t,n){return t===n?!0:this._structuralEquals(t,n)?Ae.equals(t.contentNameScopesList,n.contentNameScopesList):!1}static _structuralEquals(t,n){do{if(t===n||!t&&!n)return!0;if(!t||!n||t.depth!==n.depth||t.ruleId!==n.ruleId||t.endRule!==n.endRule)return!1;t=t.parent,n=n.parent}while(!0)}clone(){return this}static _reset(t){for(;t;)t._enterPos=-1,t._anchorPos=-1,t=t.parent}reset(){ie._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,n,r,i,o,s,a){return new ie(this,t,n,r,i,o,s,a)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){const t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,n){return this.parent&&(n=this.parent._writeString(t,n)),t[n++]=`(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`,n}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new ie(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(t){let n=this;for(;n&&n._enterPos===t._enterPos;){if(n.ruleId===t.ruleId)return!0;n=n.parent}return!1}toStateStackFrame(){return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList??null)??[],contentNameScopesList:this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList)??[]}}static pushFrame(t,n){const r=Ae.fromExtension(t?.nameScopesList??null,n.nameScopesList);return new ie(t,n.ruleId,n.enterPos??-1,n.anchorPos??-1,n.beginRuleCapturedEOL,n.endRule,r,Ae.fromExtension(r,n.contentNameScopesList))}},os=class{balancedBracketScopes;unbalancedBracketScopes;allowAny=!1;constructor(e,t){this.balancedBracketScopes=e.flatMap(n=>n==="*"?(this.allowAny=!0,[]):Ze(n,nt).map(r=>r.matcher)),this.unbalancedBracketScopes=t.flatMap(n=>Ze(n,nt).map(r=>r.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(const t of this.unbalancedBracketScopes)if(t(e))return!1;for(const t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},ss=class{constructor(e,t,n,r){this.balancedBracketSelectors=r,this._emitBinaryTokens=e,this._tokenTypeOverrides=n,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}_emitBinaryTokens;_lineText;_tokens;_binaryTokens;_lastTokenEndIndex;_tokenTypeOverrides;produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let r=e?.tokenAttributes??0,i=!1;if(this.balancedBracketSelectors?.matchesAlways&&(i=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){const o=e?.getScopeNames()??[];for(const s of this._tokenTypeOverrides)s.matcher(o)&&(r=le.set(r,0,s.type,null,-1,0,0));this.balancedBracketSelectors&&(i=this.balancedBracketSelectors.match(o))}if(i&&(r=le.set(r,0,8,i,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===r){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(r),this._lastTokenEndIndex=t;return}const n=e?.getScopeNames()??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:n}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);const n=new Uint32Array(this._binaryTokens.length);for(let r=0,i=this._binaryTokens.length;r0;)s.Q.map(a=>this._loadSingleGrammar(a.scopeName)),s.processQueue();return this._grammarForScopeName(t,n,r,i,o)}_loadSingleGrammar(t){this._ensureGrammarCache.has(t)||(this._doLoadSingleGrammar(t),this._ensureGrammarCache.set(t,!0))}_doLoadSingleGrammar(t){const n=this._options.loadGrammar(t);if(n){const r=typeof this._options.getInjections=="function"?this._options.getInjections(t):void 0;this._syncRegistry.addGrammar(n,r)}}addGrammar(t,n=[],r=0,i=null){return this._syncRegistry.addGrammar(t,n),this._grammarForScopeName(t.scopeName,r,i)}_grammarForScopeName(t,n=0,r=null,i=null,o=null){return this._syncRegistry.grammarForScopeName(t,n,r,i,o)}},Kt=Xt.NULL;function Ie(e,t){const n=typeof e=="string"?{}:{...e.colorReplacements},r=typeof e=="string"?e:e.name;for(const[i,o]of Object.entries(t?.colorReplacements||{}))typeof o=="string"?n[i]=o:i===r&&Object.assign(n,o);return n}function ee(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Wr(e){return Array.isArray(e)?e:[e]}async function dn(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function $e(e){return!e||["plaintext","txt","text","plain"].includes(e)}function pn(e){return e==="ansi"||$e(e)}function Me(e){return e==="none"}function hn(e){return Me(e)}const us=/(\r?\n)/g;function Ge(e,t=!1){if(e.length===0)return[["",0]];const n=e.split(us);let r=0;const i=[];for(let o=0;o!l.name&&!l.scope):void 0;a?.settings?.foreground&&(r=a.settings.foreground),a?.settings?.background&&(n=a.settings.background),!r&&t?.colors?.["editor.foreground"]&&(r=t.colors["editor.foreground"]),!n&&t?.colors?.["editor.background"]&&(n=t.colors["editor.background"]),r||(r=t.type==="light"?Wn.light:Wn.dark),n||(n=t.type==="light"?zn.light:zn.dark),t.fg=r,t.bg=n}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let i=0;const o=new Map;function s(a){if(o.has(a))return o.get(a);i+=1;const l=`#${i.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?s(a):(o.set(a,l),l)}t.settings=t.settings.map(a=>{const l=a.settings?.foreground&&!a.settings.foreground.startsWith("#"),u=a.settings?.background&&!a.settings.background.startsWith("#");if(!l&&!u)return a;const p={...a,settings:{...a.settings}};if(l){const d=s(a.settings.foreground);t.colorReplacements[d]=a.settings.foreground,p.settings.foreground=d}if(u){const d=s(a.settings.background);t.colorReplacements[d]=a.settings.background,p.settings.background=d}return p});for(const a of Object.keys(t.colors||{}))if((a==="editor.foreground"||a==="editor.background"||a.startsWith("terminal.ansi"))&&!t.colors[a]?.startsWith("#")){const l=s(t.colors[a]);t.colorReplacements[l]=t.colors[a],t.colors[a]=l}return Object.defineProperty(t,qn,{enumerable:!1,writable:!1,value:!0}),t}async function zr(e){return[...new Set((await Promise.all(e.filter(t=>!pn(t)).map(async t=>await dn(t).then(n=>Array.isArray(n)?n:[n])))).flat())]}async function qr(e){return(await Promise.all(e.map(async t=>hn(t)?null:mt(await dn(t))))).filter(t=>!!t)}function Xr(e,t){if(!t)return e;if(t[e]){const n=new Set([e]);for(;t[e];){if(e=t[e],n.has(e))throw new L(`Circular alias \`${[...n].join(" -> ")} -> ${e}\``);n.add(e)}}return e}var cs=class extends ls{_resolver;_themes;_langs;_alias;_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;constructor(e,t,n,r={}){super(e),this._resolver=e,this._themes=t,this._langs=n,this._alias=r,this._themes.map(i=>this.loadTheme(i)),this.loadLanguages(this._langs)}getTheme(e){return typeof e=="string"?this._resolvedThemes.get(e):this.loadTheme(e)}loadTheme(e){const t=mt(e);return t.name&&(this._resolvedThemes.set(t.name,t),this._loadedThemesCache=null),t}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(e){let t=this._textmateThemeCache.get(e);t||(t=Ye.createFromRawTheme(e),this._textmateThemeCache.set(e,t)),this._syncRegistry.setTheme(t)}getGrammar(e){return e=Xr(e,this._alias),this._resolvedGrammars.get(e)}loadLanguage(e){if(this.getGrammar(e.name))return;const t=new Set([...this._langMap.values()].filter(i=>i.embeddedLangsLazy?.includes(e.name)));this._resolver.addLanguage(e);const n={balancedBracketSelectors:e.balancedBracketSelectors||["*"],unbalancedBracketSelectors:e.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(e.scopeName,e);const r=this.loadGrammarWithConfiguration(e.scopeName,1,n);if(r.name=e.name,this._resolvedGrammars.set(e.name,r),e.aliases&&e.aliases.forEach(i=>{this._alias[i]=e.name}),this._loadedLanguagesCache=null,t.size)for(const i of t)this._resolvedGrammars.delete(i.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(i.scopeName),this._syncRegistry?._grammars?.delete(i.scopeName),this.loadLanguage(this._langMap.get(i.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(e){for(const r of e)this.resolveEmbeddedLanguages(r);const t=[...this._langGraph.entries()],n=t.filter(([r,i])=>!i);if(n.length){const r=t.filter(([i,o])=>o?(o.embeddedLanguages||o.embeddedLangs)?.some(s=>n.map(([a])=>a).includes(s)):!1).filter(i=>!n.includes(i));throw new L(`Missing languages ${n.map(([i])=>`\`${i}\``).join(", ")}, required by ${r.map(([i])=>`\`${i}\``).join(", ")}`)}for(const[r,i]of t)this._resolver.addLanguage(i);for(const[r,i]of t)this.loadLanguage(i)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(e){this._langMap.set(e.name,e),this._langGraph.set(e.name,e);const t=e.embeddedLanguages??e.embeddedLangs;if(t)for(const n of t)this._langGraph.set(n,this._langMap.get(n))}},ds=class{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(e,t){this._onigLib={createOnigScanner:n=>e.createScanner(n),createOnigString:n=>e.createString(n)},t.forEach(n=>this.addLanguage(n))}get onigLib(){return this._onigLib}getLangRegistration(e){return this._langs.get(e)}loadGrammar(e){return this._scopeToLang.get(e)}addLanguage(e){this._langs.set(e.name,e),e.aliases&&e.aliases.forEach(t=>{this._langs.set(t,e)}),this._scopeToLang.set(e.scopeName,e),e.injectTo&&e.injectTo.forEach(t=>{this._injections.get(t)||this._injections.set(t,[]),this._injections.get(t).push(e.scopeName)})}getInjections(e){const t=e.split(".");let n=[];for(let r=1;r<=t.length;r++){const i=t.slice(0,r).join(".");n=[...n,...this._injections.get(i)||[]]}return n}};let ve=0;function gt(e){ve+=1,e.warnings!==!1&&ve>=10&&ve%10===0&&console.warn(`[Shiki] ${ve} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new L("`engine` option is required for synchronous mode");const n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(mt),i=new cs(new ds(e.engine,n),r,n,e.langAlias);let o;function s(y){return Xr(y,e.langAlias)}function a(y){b();const w=i.getGrammar(typeof y=="string"?y:y.name);if(!w)throw new L(`Language \`${y}\` not found, you may need to load it first`);return w}function l(y){if(y==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};b();const w=i.getTheme(y);if(!w)throw new L(`Theme \`${y}\` not found, you may need to load it first`);return w}function u(y){b();const w=l(y);return o!==y&&(i.setTheme(w),o=y),{theme:w,colorMap:i.getColorMap()}}function p(){return b(),i.getLoadedThemes()}function d(){return b(),i.getLoadedLanguages()}function f(...y){b(),i.loadLanguages(y.flat(1))}async function h(...y){return f(await zr(y))}function m(...y){b();for(const w of y.flat(1))i.loadTheme(w)}async function E(...y){return b(),m(await qr(y))}function b(){if(t)throw new L("Shiki instance has been disposed")}function g(){t||(t=!0,i.dispose(),ve-=1)}return{setTheme:u,getTheme:l,getLanguage:a,getLoadedThemes:p,getLoadedLanguages:d,resolveLangAlias:s,loadLanguage:h,loadLanguageSync:f,loadTheme:E,loadThemeSync:m,dispose:g,[Symbol.dispose]:g}}const ps=gt;async function fn(e){e.engine||console.warn("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");const[t,n,r]=await Promise.all([qr(e.themes||[]),zr(e.langs||[]),e.engine]);return gt({...e,themes:t,langs:n,engine:r})}const hs=fn,Kr=new WeakMap;function _t(e,t){Kr.set(e,t)}function Te(e){return Kr.get(e)}var yt=class Qr{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,n){return new Qr(Object.fromEntries(Wr(n).map(r=>[r,Kt])),t)}constructor(...t){if(t.length===2){const[n,r]=t;this.lang=r,this._stacks=n}else{const[n,r,i]=t;this.lang=r,this._stacks={[i]:n}}}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return fs(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function fs(e){const t=[],n=new Set;function r(i){if(n.has(i))return;n.add(i);const o=i?.nameScopesList?.scopeName;o&&t.push(o),i.parent&&r(i.parent)}return r(e),t}function ms(e,t){if(!(e instanceof yt))throw new L("Invalid grammar state");return e.getInternalStack(t)}const gs=/,/,_s=/ /;function Jr(e,t,n={}){const{theme:r=e.getLoadedThemes()[0]}=n;if($e(e.resolveLangAlias(n.lang||"text"))||Me(r))return Ge(t).map(a=>[{content:a[0],offset:a[1]}]);const{theme:i,colorMap:o}=e.setTheme(r),s=e.getLanguage(n.lang||"text");if(n.grammarState){if(n.grammarState.lang!==s.name)throw new L(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${s.name}"`);if(!n.grammarState.themes.includes(i.name))throw new L(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${i.name}"`)}return Zr(t,s,i,o,n)}function Yr(...e){if(e.length===2)return Te(e[1]);const[t,n,r={}]=e,{lang:i="text",theme:o=t.getLoadedThemes()[0]}=r;if($e(i)||Me(o))throw new L("Plain language does not have grammar state");if(i==="ansi")throw new L("ANSI language does not have grammar state");const{theme:s,colorMap:a}=t.setTheme(o),l=t.getLanguage(i);return new yt(mn(n,l,s,a,r).stateStack,l.name,s.name)}function Zr(e,t,n,r,i){const o=mn(e,t,n,r,i),s=new yt(o.stateStack,t.name,n.name);return _t(o.tokens,s),o.tokens}function mn(e,t,n,r,i){const o=Ie(n,i),{tokenizeMaxLineLength:s=0,tokenizeTimeLimit:a=500,includeExplanation:l=!1}=i,u=Ge(e);let p=i.grammarState?ms(i.grammarState,n.name)??Kt:i.grammarContextCode!=null?mn(i.grammarContextCode,t,n,r,{...i,grammarState:void 0,grammarContextCode:void 0}).stateStack:Kt,d=[];const f=[];for(let h=0,m=u.length;h0&&E.length>=s){d=[],f.push([{content:E,offset:b,color:"",fontStyle:0}]);continue}let g,y,w;l&&l!=="tokenType"&&(g=t.tokenizeLine(E,p,a),y=g.tokens,w=0);const A=t.tokenizeLine2(E,p,a),k=A.tokens.length/2;for(let I=0;ISt.trim());break;case"object":he=Q.scope;break;default:continue}Nn.push({settings:Q,selectors:he.map(St=>St.split(_s))})}q.explanation=[];let Vn=0;for(;M+Vn({scopeName:t}))}function Es(e,t){const n=[];for(let r=0,i=t.length;r=0&&i>=0;)Xn(e[r],n[i])&&(r-=1),i-=1;return r===-1}function ws(e,t,n){const r=[];for(const{selectors:i,settings:o}of e)for(const s of i)if(bs(s,t,n)){r.push(o);break}return r}function gn(e,t,n,r=Jr){const i=Object.entries(n.themes).filter(u=>u[1]).map(u=>({color:u[0],theme:u[1]})),o=i.map(u=>{const p=r(e,t,{...n,theme:u.theme});return{tokens:p,state:Te(p),theme:typeof u.theme=="string"?u.theme:u.theme.name}}),s=vs(...o.map(u=>u.tokens)),a=s[0].map((u,p)=>u.map((d,f)=>{const h={content:d.content,variants:{},offset:d.offset};return"includeExplanation"in n&&n.includeExplanation&&(h.explanation=d.explanation),s.forEach((m,E)=>{const{content:b,explanation:g,offset:y,...w}=m[p][f];h.variants[i[E].color]=w}),h})),l=o[0].state?new yt(Object.fromEntries(o.map(u=>[u.theme,u.state?.getInternalStack(u.theme)])),o[0].state.lang):void 0;return l&&_t(a,l),a}function vs(...e){const t=e.map(()=>[]),n=e.length;for(let r=0;rl[r]),o=t.map(()=>[]);t.forEach((l,u)=>l.push(o[u]));const s=i.map(()=>0),a=i.map(l=>l[0]);for(;a.every(l=>l);){const l=Math.min(...a.map(u=>u.content.length));for(let u=0;u4&&n.slice(0,4)==="data"&&Rs.test(t)){if(t.charAt(4)==="-"){const o=t.slice(5).replace(Qn,Ps);r="data"+o.charAt(0).toUpperCase()+o.slice(1)}else{const o=t.slice(4);if(!Qn.test(o)){let s=o.replace(Ls,Ts);s.charAt(0)!=="-"&&(s="-"+s),t="data"+s}}i=_n}return new i(r,t)}function Ts(e){return"-"+e.toLowerCase()}function Ps(e){return e.charAt(1).toUpperCase()}const Os=ei([ti,ks,ii,oi,si],"html"),ai=ei([ti,Ss,ii,oi,si],"svg"),Jn={}.hasOwnProperty;function xs(e,t){const n=t||{};function r(i,...o){let s=r.invalid;const a=r.handlers;if(i&&Jn.call(i,e)){const l=String(i[e]);s=Jn.call(a,l)?a[l]:r.unknown}if(s)return s.call(this,i,...o)}return r.handlers=n.handlers||{},r.invalid=n.invalid,r.unknown=n.unknown,r}const Ds=/["&'<>`]/g,Ns=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Vs=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,$s=/[|\\{}()[\]^$+*?.]/g,Yn=new WeakMap;function Ms(e,t){if(e=e.replace(t.subset?Gs(t.subset):Ds,r),t.subset||t.escapeOnly)return e;return e.replace(Ns,n).replace(Vs,r);function n(i,o,s){return t.format((i.charCodeAt(0)-55296)*1024+i.charCodeAt(1)-56320+65536,s.charCodeAt(o+2),t)}function r(i,o,s){return t.format(i.charCodeAt(0),s.charCodeAt(o+1),t)}}function Gs(e){let t=Yn.get(e);return t||(t=Bs(e),Yn.set(e,t)),t}function Bs(e){const t=[];let n=-1;for(;++n",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",permil:"‰",lsaquo:"‹",rsaquo:"›",euro:"€"},zs=["cent","copy","divide","gt","lt","not","para","times"],li={}.hasOwnProperty,Zt={};let He;for(He in Ot)li.call(Ot,He)&&(Zt[Ot[He]]=He);const qs=/[^\dA-Za-z]/;function Xs(e,t,n,r){const i=String.fromCharCode(e);if(li.call(Zt,i)){const o=Zt[i],s="&"+o;return n&&Ws.includes(o)&&!zs.includes(o)&&(!r||t&&t!==61&&qs.test(String.fromCharCode(t)))?s:s+";"}return""}function Ks(e,t,n){let r=Fs(e,t,n.omitOptionalSemicolons),i;if((n.useNamedReferences||n.useShortestReferences)&&(i=Xs(e,t,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!i)&&n.useShortestReferences){const o=Hs(e,t,n.omitOptionalSemicolons);o.length|^->||--!>|"],Ys=["<",">"];function Zs(e,t,n,r){return r.settings.bogusComments?"":"";function i(o){return ye(o,Object.assign({},r.settings.characterReferences,{subset:Ys}))}}function ea(e,t,n,r){return""}function Zn(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function ta(e,t){const n=t||{};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}function na(e){return e.join(" ").trim()}const ra=/[ \t\n\f\r]/g;function yn(e){return typeof e=="object"?e.type==="text"?er(e.value):!1:er(e)}function er(e){return e.replace(ra,"")===""}const x=ci(1),ui=ci(-1),ia=[];function ci(e){return t;function t(n,r,i){const o=n?n.children:ia;let s=(r||0)+e,a=o[s];if(!i)for(;a&&yn(a);)s+=e,a=o[s];return a}}const oa={}.hasOwnProperty;function di(e){return t;function t(n,r,i){return oa.call(e,n.tagName)&&e[n.tagName](n,r,i)}}const En=di({body:aa,caption:xt,colgroup:xt,dd:da,dt:ca,head:xt,html:sa,li:ua,optgroup:pa,option:ha,p:la,rp:tr,rt:tr,tbody:ma,td:nr,tfoot:ga,th:nr,thead:fa,tr:_a});function xt(e,t,n){const r=x(n,t,!0);return!r||r.type!=="comment"&&!(r.type==="text"&&yn(r.value.charAt(0)))}function sa(e,t,n){const r=x(n,t);return!r||r.type!=="comment"}function aa(e,t,n){const r=x(n,t);return!r||r.type!=="comment"}function la(e,t,n){const r=x(n,t);return r?r.type==="element"&&(r.tagName==="address"||r.tagName==="article"||r.tagName==="aside"||r.tagName==="blockquote"||r.tagName==="details"||r.tagName==="div"||r.tagName==="dl"||r.tagName==="fieldset"||r.tagName==="figcaption"||r.tagName==="figure"||r.tagName==="footer"||r.tagName==="form"||r.tagName==="h1"||r.tagName==="h2"||r.tagName==="h3"||r.tagName==="h4"||r.tagName==="h5"||r.tagName==="h6"||r.tagName==="header"||r.tagName==="hgroup"||r.tagName==="hr"||r.tagName==="main"||r.tagName==="menu"||r.tagName==="nav"||r.tagName==="ol"||r.tagName==="p"||r.tagName==="pre"||r.tagName==="section"||r.tagName==="table"||r.tagName==="ul"):!n||!(n.type==="element"&&(n.tagName==="a"||n.tagName==="audio"||n.tagName==="del"||n.tagName==="ins"||n.tagName==="map"||n.tagName==="noscript"||n.tagName==="video"))}function ua(e,t,n){const r=x(n,t);return!r||r.type==="element"&&r.tagName==="li"}function ca(e,t,n){const r=x(n,t);return!!(r&&r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd"))}function da(e,t,n){const r=x(n,t);return!r||r.type==="element"&&(r.tagName==="dt"||r.tagName==="dd")}function tr(e,t,n){const r=x(n,t);return!r||r.type==="element"&&(r.tagName==="rp"||r.tagName==="rt")}function pa(e,t,n){const r=x(n,t);return!r||r.type==="element"&&r.tagName==="optgroup"}function ha(e,t,n){const r=x(n,t);return!r||r.type==="element"&&(r.tagName==="option"||r.tagName==="optgroup")}function fa(e,t,n){const r=x(n,t);return!!(r&&r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot"))}function ma(e,t,n){const r=x(n,t);return!r||r.type==="element"&&(r.tagName==="tbody"||r.tagName==="tfoot")}function ga(e,t,n){return!x(n,t)}function _a(e,t,n){const r=x(n,t);return!r||r.type==="element"&&r.tagName==="tr"}function nr(e,t,n){const r=x(n,t);return!r||r.type==="element"&&(r.tagName==="td"||r.tagName==="th")}const ya=di({body:wa,colgroup:va,head:ba,html:Ea,tbody:Ca});function Ea(e){const t=x(e,-1);return!t||t.type!=="comment"}function ba(e){const t=new Set;for(const r of e.children)if(r.type==="element"&&(r.tagName==="base"||r.tagName==="title")){if(t.has(r.tagName))return!1;t.add(r.tagName)}const n=e.children[0];return!n||n.type==="element"}function wa(e){const t=x(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&yn(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function va(e,t,n){const r=ui(n,t),i=x(e,-1,!0);return n&&r&&r.type==="element"&&r.tagName==="colgroup"&&En(r,n.children.indexOf(r),n)?!1:!!(i&&i.type==="element"&&i.tagName==="col")}function Ca(e,t,n){const r=ui(n,t),i=x(e,-1);return n&&r&&r.type==="element"&&(r.tagName==="thead"||r.tagName==="tbody")&&En(r,n.children.indexOf(r),n)?!1:!!(i&&i.type==="element"&&i.tagName==="tr")}const We={name:[[` -\f\r &/=>`.split(""),` -\f\r "&'/=>\``.split("")],[`\0 -\f\r "&'/<=>`.split(""),`\0 -\f\r "&'/<=>\``.split("")]],unquoted:[[` -\f\r &>`.split(""),`\0 -\f\r "&'<=>\``.split("")],[`\0 -\f\r "&'<=>\``.split(""),`\0 -\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Aa(e,t,n,r){const i=r.schema,o=i.space==="svg"?!1:r.settings.omitOptionalTags;let s=i.space==="svg"?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase());const a=[];let l;i.space==="html"&&e.tagName==="svg"&&(r.schema=ai);const u=ka(r,e.properties),p=r.all(i.space==="html"&&e.tagName==="template"?e.content:e);return r.schema=i,p&&(s=!1),(u||!o||!ya(e,t,n))&&(a.push("<",e.tagName,u?" "+u:""),s&&(i.space==="svg"||r.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!r.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&a.push(" "),a.push("/")),a.push(">")),a.push(p),!s&&(!o||!En(e,t,n))&&a.push(""),a.join("")}function ka(e,t){const n=[];let r=-1,i;if(t){for(i in t)if(t[i]!==null&&t[i]!==void 0){const o=Sa(e,i,t[i]);o&&n.push(o)}}for(;++rZn(n,e.alternative)&&(s=e.alternative),a=s+ye(n,Object.assign({},e.settings.characterReferences,{subset:(s==="'"?We.single:We.double)[i][o],attribute:!0}))+s),l+(a&&"="+a))}const La=["<","&"];function pi(e,t,n,r){return n&&n.type==="element"&&(n.tagName==="script"||n.tagName==="style")?e.value:ye(e.value,Object.assign({},r.settings.characterReferences,{subset:La}))}function Ra(e,t,n,r){return r.settings.allowDangerousHtml?e.value:pi(e,t,n,r)}function Ia(e,t,n,r){return r.all(e)}const Ta=xs("type",{invalid:Pa,unknown:Oa,handlers:{comment:Zs,doctype:ea,element:Aa,raw:Ra,root:Ia,text:pi}});function Pa(e){throw new Error("Expected node, not `"+e+"`")}function Oa(e){const t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}const xa={},Da={},Na=[];function Va(e,t){const n=t||xa,r=n.quote||'"',i=r==='"'?"'":'"';if(r!=='"'&&r!=="'")throw new Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:$a,all:Ma,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||Cs,characterReferences:n.characterReferences||Da,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space==="svg"?ai:Os,quote:r,alternative:i}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function $a(e,t,n){return Ta(e,t,n,this)}function Ma(e){const t=[],n=e&&e.children||Na;let r=-1;for(;++ri);function n(i){if(i===e.length)return{line:t.length-1,character:t.at(-1).length};let o=i,s=0;for(const a of t){if(oo&&i[o])}const ja=["color","background-color"];function mi(e,t){let n=0;const r=[];for(const i of t)i>n&&r.push({...e,content:e.content.slice(n,i),offset:e.offset+n}),n=i;return nr-i);return n.length?e.map(r=>r.flatMap(i=>{const o=n.filter(s=>i.offsets-i.offset).sort((s,a)=>s-a);return o.length?mi(i,o):i})):e}function _i(e,t,n,r,i="css-vars"){const o={content:e.content,explanation:e.explanation,offset:e.offset},s=t.map(p=>Pe(e.variants[p])),a=new Set(s.flatMap(p=>Object.keys(p))),l={},u=(p,d)=>{const f=d==="color"?"":d==="background-color"?"-bg":`-${d}`;return n+t[p]+(d==="color"?"":f)};return s.forEach((p,d)=>{for(const f of a){const h=p[f]||"inherit";if(d===0&&r&&ja.includes(f))if(r==="light-dark()"&&s.length>1){const m=t.findIndex(b=>b==="light"),E=t.findIndex(b=>b==="dark");if(m===-1||E===-1)throw new L('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');l[f]=`light-dark(${s[m][f]||"inherit"}, ${s[E][f]||"inherit"})`,i==="css-vars"&&(l[u(d,f)]=h)}else l[f]=h;else i==="css-vars"&&(l[u(d,f)]=h)}}),o.htmlStyle=l,o}function Pe(e){const t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&$.Italic&&(t["font-style"]="italic"),e.fontStyle&$.Bold&&(t["font-weight"]="bold");const n=[];e.fontStyle&$.Underline&&n.push("underline"),e.fontStyle&$.Strikethrough&&n.push("line-through"),n.length&&(t["text-decoration"]=n.join(" "))}return t}function rt(e){return typeof e=="string"?e:Object.entries(e).map(([t,n])=>`${t}:${n}`).join(";")}function yi(){const e=new WeakMap;function t(n){if(!e.has(n.meta)){let i=function(s){if(typeof s=="number"){if(s<0||s>n.source.length)throw new L(`Invalid decoration offset: ${s}. Code length: ${n.source.length}`);return{...r.indexToPos(s),offset:s}}else{const a=r.lines[s.line];if(a===void 0)throw new L(`Invalid decoration position ${JSON.stringify(s)}. Lines length: ${r.lines.length}`);let l=s.character;if(l<0&&(l=a.length+l),l<0||l>a.length)throw new L(`Invalid decoration position ${JSON.stringify(s)}. Line ${s.line} length: ${a.length}`);return{...s,character:l,offset:r.posToIndex(s.line,l)}}};const r=hi(n.source),o=(n.options.decorations||[]).map(s=>({...s,start:i(s.start),end:i(s.end)}));Ha(o),e.set(n.meta,{decorations:o,converter:r,source:n.source})}return e.get(n.meta)}return{name:"shiki:decorations",tokens(n){if(this.options.decorations?.length)return gi(n,t(this).decorations.flatMap(r=>[r.start.offset,r.end.offset]))},code(n){if(!this.options.decorations?.length)return;const r=t(this),i=[...n.children].filter(p=>p.type==="element"&&p.tagName==="span");if(i.length!==r.converter.lines.length)throw new L(`Number of lines in code element (${i.length}) does not match the number of lines in the source (${r.converter.lines.length}). Failed to apply decorations.`);function o(p,d,f,h){const m=i[p];let E="",b=-1,g=-1;if(d===0&&(b=0),f===0&&(g=0),f===Number.POSITIVE_INFINITY&&(g=m.children.length),b===-1||g===-1)for(let w=0;wE);return p.tagName=d.tagName||"span",p.properties={...p.properties,...h,class:p.properties.class},d.properties?.class&&bn(p,d.properties.class),p=m(p,f)||p,p}const l=[],u=r.decorations.sort((p,d)=>d.start.offset-p.start.offset||p.end.offset-d.end.offset);for(const p of u){const{start:d,end:f}=p;if(d.line===f.line)o(d.line,d.character,f.character,p);else if(d.lines(h,p));o(f.line,0,f.character,p)}}l.forEach(p=>p())}}}function Ha(e){for(let t=0;tn.end.offset)throw new L(`Invalid decoration range: ${JSON.stringify(n.start)} - ${JSON.stringify(n.end)}`);for(let r=t+1;rNumber.parseInt(r));return n.length!==3||n.some(r=>Number.isNaN(r))?void 0:{type:"rgb",rgb:n}}else if(t==="5"){const n=e.shift();if(n)return{type:"table",index:Number(n)}}}function Xa(e){const t=[];for(;e.length>0;){const n=e.shift();if(!n)continue;const r=Number.parseInt(n);if(!Number.isNaN(r))if(r===0)t.push({type:"resetAll"});else if(r<=9)Dt[r]&&t.push({type:"setDecoration",value:Dt[r]});else if(r<=29){const i=Dt[r-20];i&&(t.push({type:"resetDecoration",value:i}),i==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(r<=37)t.push({type:"setForegroundColor",value:{type:"named",name:se[r-30]}});else if(r===38){const i=ir(e);i&&t.push({type:"setForegroundColor",value:i})}else if(r===39)t.push({type:"resetForegroundColor"});else if(r<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:se[r-40]}});else if(r===48){const i=ir(e);i&&t.push({type:"setBackgroundColor",value:i})}else r===49?t.push({type:"resetBackgroundColor"}):r===53?t.push({type:"setDecoration",value:"overline"}):r===55?t.push({type:"resetDecoration",value:"overline"}):r>=90&&r<=97?t.push({type:"setForegroundColor",value:{type:"named",name:se[r-90+8]}}):r>=100&&r<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:se[r-100+8]}})}return t}function Ka(){let e=null,t=null,n=new Set;return{parse(r){const i=[];let o=0;do{const s=qa(r,o),a=s.sequence?r.substring(o,s.startPosition):r.substring(o);if(a.length>0&&i.push({value:a,foreground:e,background:t,decorations:new Set(n)}),s.sequence){const l=Xa(s.sequence);for(const u of l)u.type==="resetAll"?(e=null,t=null,n.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&n.delete(u.value);for(const u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&n.add(u.value)}o=s.position}while(oMath.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let r;function i(){if(r)return r;r=[];for(let u=0;u{const l=`terminal.ansi${a[0].toUpperCase()}${a.substring(1)}`;return[a,e.colors?.[l]||el[a]]}))),s=Ka();return i.map(a=>s.parse(a[0]).map(l=>{let u,p;l.decorations.has("reverse")?(u=l.background?o.value(l.background):e.bg,p=l.foreground?o.value(l.foreground):e.fg):(u=l.foreground?o.value(l.foreground):e.fg,p=l.background?o.value(l.background):void 0),u=ee(u,r),p=ee(p,r),l.decorations.has("dim")&&(u=tl(u));let d=$.None;return l.decorations.has("bold")&&(d|=$.Bold),l.decorations.has("italic")&&(d|=$.Italic),l.decorations.has("underline")&&(d|=$.Underline),l.decorations.has("strikethrough")&&(d|=$.Strikethrough),{content:l.value,offset:a[1],color:u,bgColor:p,fontStyle:d}}))}function tl(e){const t=e.match(Ya);if(t){const r=t[1];if(r.length===8){const i=Math.round(Number.parseInt(r.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${r.slice(0,6)}${i}`}else{if(r.length===6)return`#${r}80`;if(r.length===4){const i=r[0],o=r[1],s=r[2],a=r[3];return`#${i}${i}${o}${o}${s}${s}${Math.round(Number.parseInt(`${a}${a}`,16)/2).toString(16).padStart(2,"0")}`}else if(r.length===3){const i=r[0],o=r[1],s=r[2];return`#${i}${i}${o}${o}${s}${s}80`}}}const n=e.match(Za);return n?`var(${n[1]}-dim)`:e}function ot(e,t,n={}){const r=e.resolveLangAlias(n.lang||"text"),{theme:i=e.getLoadedThemes()[0]}=n;if(!$e(r)&&!Me(i)&&r==="ansi"){const{theme:o}=e.setTheme(i);return bi(o,t,n)}return Jr(e,t,n)}function Oe(e,t,n){let r,i,o,s,a,l;if("themes"in n){const{defaultColor:u="light",cssVariablePrefix:p="--shiki-",colorsRendering:d="css-vars"}=n,f=Object.entries(n.themes).filter(g=>g[1]).map(g=>({color:g[0],theme:g[1]})).sort((g,y)=>g.color===u?-1:y.color===u?1:0);if(f.length===0)throw new L("`themes` option must not be empty");const h=gn(e,t,n,ot);if(l=Te(h),u&&u!=="light-dark()"&&!f.some(g=>g.color===u))throw new L(`\`themes\` option must contain the defaultColor key \`${u}\``);const m=f.map(g=>e.getTheme(g.theme)),E=f.map(g=>g.color);o=h.map(g=>g.map(y=>_i(y,E,p,u,d))),l&&_t(o,l);const b=f.map(g=>Ie(g.theme,n));i=or(f,m,b,p,u,"fg",d),r=or(f,m,b,p,u,"bg",d),s=`shiki-themes ${m.map(g=>g.name).join(" ")}`,a=u?void 0:[i,r].join(";")}else if("theme"in n){const u=Ie(n.theme,n);o=ot(e,t,n);const p=e.getTheme(n.theme);r=ee(p.bg,u),i=ee(p.fg,u),s=p.name,l=Te(o)}else throw new L("Invalid options, either `theme` or `themes` must be provided");return{tokens:o,fg:i,bg:r,themeName:s,rootStyle:a,grammarState:l}}function or(e,t,n,r,i,o,s){return e.map((a,l)=>{const u=ee(t[l][o],n[l])||"inherit",p=`${r+a.color}${o==="bg"?"-bg":""}:${u}`;if(l===0&&i){if(i==="light-dark()"&&e.length>1){const d=e.findIndex(h=>h.color==="light"),f=e.findIndex(h=>h.color==="dark");if(d===-1||f===-1)throw new L('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');return`light-dark(${ee(t[d][o],n[d])||"inherit"}, ${ee(t[f][o],n[f])||"inherit"});${p}`}return u}return s==="css-vars"?p:null}).filter(a=>!!a).join(";")}const wi=/^\s+$/,nl=/^(\s*)(.*?)(\s*)$/;function xe(e,t,n,r={meta:{},options:n,codeToHast:(i,o)=>xe(e,i,o),codeToTokens:(i,o)=>Oe(e,i,o)}){let i=t;for(const m of it(n))i=m.preprocess?.call(r,i,n)||i;let{tokens:o,fg:s,bg:a,themeName:l,rootStyle:u,grammarState:p}=Oe(e,i,n);const{mergeWhitespaces:d=!0,mergeSameStyleTokens:f=!1}=n;d===!0?o=rl(o):d==="never"&&(o=il(o)),f&&(o=ol(o));const h={...r,get source(){return i}};for(const m of it(n))o=m.tokens?.call(h,o)||o;return vi(o,{...n,fg:s,bg:a,themeName:l,rootStyle:n.rootStyle===!1?!1:n.rootStyle??u},h,p)}function vi(e,t,n,r=Te(e)){const i=it(t),o=[],s={type:"root",children:[]},{structure:a="classic",tabindex:l="0"}=t,u={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?u.style=t.rootStyle:u.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(u.tabindex=l.toString());for(const[E,b]of Object.entries(t.meta||{}))E.startsWith("_")||(u[E]=b);let p={type:"element",tagName:"pre",properties:u,children:[],data:t.data},d={type:"element",tagName:"code",properties:{},children:o};const f=[],h={...n,structure:a,addClassToHast:bn,get source(){return n.source},get tokens(){return e},get options(){return t},get root(){return s},get pre(){return p},get code(){return d},get lines(){return f}};if(e.forEach((E,b)=>{b&&(a==="inline"?s.children.push({type:"element",tagName:"br",properties:{},children:[]}):a==="classic"&&o.push({type:"text",value:` -`}));let g={type:"element",tagName:"span",properties:{class:"line"},children:[]},y=0;for(const w of E){let A={type:"element",tagName:"span",properties:{...w.htmlAttrs},children:[{type:"text",value:w.content}]};const k=rt(w.htmlStyle||Pe(w));k&&(A.properties.style=k);for(const I of i)A=I?.span?.call(h,A,b+1,y,g,w)||A;a==="inline"?s.children.push(A):a==="classic"&&g.children.push(A),y+=w.content.length}if(a==="classic"){for(const w of i)g=w?.line?.call(h,g,b+1)||g;f.push(g),o.push(g)}else a==="inline"&&f.push(g)}),a==="classic"){for(const E of i)d=E?.code?.call(h,d)||d;p.children.push(d);for(const E of i)p=E?.pre?.call(h,p)||p;s.children.push(p)}else if(a==="inline"){const E=[];let b={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(const y of s.children)y.type==="element"&&y.tagName==="br"?(E.push(b),b={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(y.type==="element"||y.type==="text")&&b.children.push(y);E.push(b);let g={type:"element",tagName:"code",properties:{},children:E};for(const y of i)g=y?.code?.call(h,g)||g;s.children=[];for(let y=0;y0&&s.children.push({type:"element",tagName:"br",properties:{},children:[]});const w=g.children[y];w.type==="element"&&s.children.push(...w.children)}}let m=s;for(const E of i)m=E?.root?.call(h,m)||m;return r&&_t(m,r),m}function rl(e){return e.map(t=>{const n=[];let r="",i;return t.forEach((o,s)=>{const a=!(o.fontStyle&&(o.fontStyle&$.Underline||o.fontStyle&$.Strikethrough));a&&wi.test(o.content)&&t[s+1]?(i===void 0&&(i=o.offset),r+=o.content):r?(a?n.push({...o,offset:i,content:r+o.content}):n.push({content:r,offset:i},o),i=void 0,r=""):n.push(o)}),n})}function il(e){return e.map(t=>t.flatMap(n=>{if(wi.test(n.content))return n;const r=n.content.match(nl);if(!r)return n;const[,i,o,s]=r;if(!i&&!s)return n;const a=[{...n,offset:n.offset+i.length,content:o}];return i&&a.unshift({content:i,offset:n.offset}),s&&a.push({content:s,offset:n.offset+i.length+o.length}),a}))}function ol(e){return e.map(t=>{const n=[];for(const r of t){if(n.length===0){n.push({...r});continue}const i=n.at(-1),o=rt(i.htmlStyle||Pe(i)),s=rt(r.htmlStyle||Pe(r)),a=i.fontStyle&&(i.fontStyle&$.Underline||i.fontStyle&$.Strikethrough),l=r.fontStyle&&(r.fontStyle&$.Underline||r.fontStyle&$.Strikethrough);!a&&!l&&o===s?i.content+=r.content:n.push({...r})}return n})}const Ci=Va;function Ai(e,t,n){const r={meta:{},options:n,codeToHast:(o,s)=>xe(e,o,s),codeToTokens:(o,s)=>Oe(e,o,s)};let i=Ci(xe(e,t,n,r));for(const o of it(n))i=o.postprocess?.call(r,i,n)||i;return i}async function wn(e){const t=await fn(e);return{getLastGrammarState:(...n)=>Yr(t,...n),codeToTokensBase:(n,r)=>ot(t,n,r),codeToTokensWithThemes:(n,r)=>gn(t,n,r),codeToTokens:(n,r)=>Oe(t,n,r),codeToHast:(n,r)=>xe(t,n,r),codeToHtml:(n,r)=>Ai(t,n,r),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function sl(e){const t=gt(e);return{getLastGrammarState:(...n)=>Yr(t,...n),codeToTokensBase:(n,r)=>ot(t,n,r),codeToTokensWithThemes:(n,r)=>gn(t,n,r),codeToTokens:(n,r)=>Oe(t,n,r),codeToHast:(n,r)=>xe(t,n,r),codeToHtml:(n,r)=>Ai(t,n,r),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function ki(e){let t;async function n(r){if(t){const i=await t;return await Promise.all([i.loadTheme(...r.themes||[]),i.loadLanguage(...r.langs||[])]),i}else return t=e({...r,themes:r.themes||[],langs:r.langs||[]}),t}return n}const al=ki(wn);function Si(e){const t=e.langs,n=e.themes,r=e.engine;async function i(o){function s(d){if(typeof d=="string"){if(d=o.langAlias?.[d]||d,pn(d))return[];const f=t[d];if(!f)throw new L(`Language \`${d}\` is not included in this bundle. You may want to load it from external source.`);return f}return d}function a(d){if(hn(d))return"none";if(typeof d=="string"){const f=n[d];if(!f)throw new L(`Theme \`${d}\` is not included in this bundle. You may want to load it from external source.`);return f}return d}const l=(o.themes??[]).map(d=>a(d)),u=(o.langs??[]).map(d=>s(d)),p=await wn({engine:o.engine??r(),...o,themes:l,langs:u});return{...p,loadLanguage(...d){return p.loadLanguage(...d.map(s))},loadTheme(...d){return p.loadTheme(...d.map(a))},getBundledLanguages(){return t},getBundledThemes(){return n}}}return i}function Li(e){let t;async function n(r={}){if(t){const i=await t;return await Promise.all([i.loadTheme(...r.themes||[]),i.loadLanguage(...r.langs||[])]),i}else{t=e({...r,themes:[],langs:[]});const i=await t;return await Promise.all([i.loadTheme(...r.themes||[]),i.loadLanguage(...r.langs||[])]),i}}return n}function Ri(e,t){const n=Li(e);async function r(i,o){const s=await n({langs:[o.lang],themes:"theme"in o?[o.theme]:Object.values(o.themes)}),a=await t?.guessEmbeddedLanguages?.(i,o.lang,s);return a&&await s.loadLanguage(...a),s}return{getSingletonHighlighter(i){return n(i)},async codeToHtml(i,o){return(await r(i,o)).codeToHtml(i,o)},async codeToHast(i,o){return(await r(i,o)).codeToHast(i,o)},async codeToTokens(i,o){return(await r(i,o)).codeToTokens(i,o)},async codeToTokensBase(i,o){return(await r(i,o)).codeToTokensBase(i,o)},async codeToTokensWithThemes(i,o){return(await r(i,o)).codeToTokensWithThemes(i,o)},async getLastGrammarState(i,o){return(await n({langs:[o.lang],themes:[o.theme]})).getLastGrammarState(i,o)}}}function ll(e={}){const{name:t="css-variables",variablePrefix:n="--shiki-",fontStyle:r=!0}=e,i=s=>e.variableDefaults?.[s]?`var(${n}${s}, ${e.variableDefaults[s]})`:`var(${n}${s})`,o={name:t,type:"dark",colors:{"editor.foreground":i("foreground"),"editor.background":i("background"),"terminal.ansiBlack":i("ansi-black"),"terminal.ansiRed":i("ansi-red"),"terminal.ansiGreen":i("ansi-green"),"terminal.ansiYellow":i("ansi-yellow"),"terminal.ansiBlue":i("ansi-blue"),"terminal.ansiMagenta":i("ansi-magenta"),"terminal.ansiCyan":i("ansi-cyan"),"terminal.ansiWhite":i("ansi-white"),"terminal.ansiBrightBlack":i("ansi-bright-black"),"terminal.ansiBrightRed":i("ansi-bright-red"),"terminal.ansiBrightGreen":i("ansi-bright-green"),"terminal.ansiBrightYellow":i("ansi-bright-yellow"),"terminal.ansiBrightBlue":i("ansi-bright-blue"),"terminal.ansiBrightMagenta":i("ansi-bright-magenta"),"terminal.ansiBrightCyan":i("ansi-bright-cyan"),"terminal.ansiBrightWhite":i("ansi-bright-white")},tokenColors:[{scope:["keyword.operator.accessor","meta.group.braces.round.function.arguments","meta.template.expression","markup.fenced_code meta.embedded.block"],settings:{foreground:i("foreground")}},{scope:"emphasis",settings:{fontStyle:"italic"}},{scope:["strong","markup.heading.markdown","markup.bold.markdown"],settings:{fontStyle:"bold"}},{scope:["markup.italic.markdown"],settings:{fontStyle:"italic"}},{scope:"meta.link.inline.markdown",settings:{fontStyle:"underline",foreground:i("token-link")}},{scope:["string","markup.fenced_code","markup.inline"],settings:{foreground:i("token-string")}},{scope:["comment","string.quoted.docstring.multi"],settings:{foreground:i("token-comment")}},{scope:["constant.numeric","constant.language","constant.other.placeholder","constant.character.format.placeholder","variable.language.this","variable.other.object","variable.other.class","variable.other.constant","meta.property-name","meta.property-value","support"],settings:{foreground:i("token-constant")}},{scope:["keyword","storage.modifier","storage.type","storage.control.clojure","entity.name.function.clojure","entity.name.tag.yaml","support.function.node","support.type.property-name.json","punctuation.separator.key-value","punctuation.definition.template-expression"],settings:{foreground:i("token-keyword")}},{scope:"variable.parameter.function",settings:{foreground:i("token-parameter")}},{scope:["support.function","entity.name.type","entity.other.inherited-class","meta.function-call","meta.instance.constructor","entity.other.attribute-name","entity.name.function","constant.keyword.clojure"],settings:{foreground:i("token-function")}},{scope:["entity.name.tag","string.quoted","string.regexp","string.interpolated","string.template","string.unquoted.plain.out.yaml","keyword.other.template"],settings:{foreground:i("token-string-expression")}},{scope:["punctuation.definition.arguments","punctuation.definition.dict","punctuation.separator","meta.function-call.arguments"],settings:{foreground:i("token-punctuation")}},{scope:["markup.underline.link","punctuation.definition.metadata.markdown"],settings:{foreground:i("token-link")}},{scope:["beginning.punctuation.definition.list.markdown"],settings:{foreground:i("token-string")}},{scope:["punctuation.definition.string.begin.markdown","punctuation.definition.string.end.markdown","string.other.link.title.markdown","string.other.link.description.markdown"],settings:{foreground:i("token-keyword")}},{scope:["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],settings:{foreground:i("token-inserted")}},{scope:["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],settings:{foreground:i("token-deleted")}},{scope:["markup.changed","punctuation.definition.changed"],settings:{foreground:i("token-changed")}}]};return r||(o.tokenColors=o.tokenColors?.map(s=>(s.settings?.fontStyle&&delete s.settings.fontStyle,s))),o}var ul=an({bundledLanguages:()=>ut,bundledLanguagesAlias:()=>lt,bundledLanguagesBase:()=>at,bundledLanguagesInfo:()=>Ne,bundledThemes:()=>dt,bundledThemesInfo:()=>ct,codeToHast:()=>Cn,codeToHtml:()=>vn,codeToTokens:()=>An,codeToTokensBase:()=>kn,codeToTokensWithThemes:()=>Sn,createHighlighter:()=>Et,getLastGrammarState:()=>Rn,getSingletonHighlighter:()=>Ln});const Et=Si({langs:ut,themes:dt,engine:()=>(0,Ir.createOnigurumaEngine)(c(()=>import("./wasm-CG6Dc4jp.js"),[]))}),{codeToHtml:vn,codeToHast:Cn,codeToTokens:An,codeToTokensBase:kn,codeToTokensWithThemes:Sn,getSingletonHighlighter:Ln,getLastGrammarState:Rn}=Ri(Et,{guessEmbeddedLanguages:fi}),sr=4294967295;var cl=class{patterns;options;regexps;constructor(e,t={}){this.patterns=e,this.options=t;const{forgiving:n=!1,cache:r,regexConstructor:i}=t;if(!i)throw new Error("Option `regexConstructor` is not provided");this.regexps=e.map(o=>{if(typeof o!="string")return o;const s=r?.get(o);if(s){if(s instanceof RegExp)return s;if(n)return null;throw s}try{const a=i(o);return r?.set(o,a),a}catch(a){if(r?.set(o,a),n)return null;throw a}})}findNextMatchSync(e,t,n){const r=typeof e=="string"?e:e.content,i=[];function o(s,a,l=0){return{index:s,captureIndices:a.indices.map(u=>u==null?{start:sr,end:sr,length:0}:{start:u[0]+l,end:u[1]+l,length:u[1]-u[0]})}}for(let s=0;sa[1].index));for(const[a,l,u]of i)if(l.index===s)return o(a,l,u)}return null}};function be(e){if([...e].length!==1)throw new Error(`Expected "${e}" to be a single code point`);return e.codePointAt(0)}function dl(e,t,n){return e.has(t)||e.set(t,n),e.get(t)}const In=new Set(["alnum","alpha","ascii","blank","cntrl","digit","graph","lower","print","punct","space","upper","word","xdigit"]),N=String.raw;function we(e,t){if(e==null)throw new Error(t??"Value expected");return e}const Ii=N`\[\^?`,Ti=`c.? | C(?:-.?)?|${N`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${N`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${N`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${N`o\{[^\}]*\}?`}|${N`\d{1,3}`}`,Tn=/[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/,ze=new RegExp(N` - \\ (?: - ${Ti} - | [gk]<[^>]*>? - | [gk]'[^']*'? - | . - ) - | \( (?: - \? (?: - [:=!>({] - | <[=!] - | <[^>]*> - | '[^']*' - | ~\|? - | #(?:[^)\\]|\\.?)* - | [^:)]*[:)] - )? - | \*[^\)]*\)? - )? - | (?:${Tn.source})+ - | ${Ii} - | . -`.replace(/\s+/g,""),"gsu"),Nt=new RegExp(N` - \\ (?: - ${Ti} - | . - ) - | \[:(?:\^?\p{Alpha}+|\^):\] - | ${Ii} - | && - | . -`.replace(/\s+/g,""),"gsu");function pl(e,t={}){const n={flags:"",...t,rules:{captureGroup:!1,singleline:!1,...t.rules}};if(typeof e!="string")throw new Error("String expected as pattern");const r=Pl(n.flags),i=[r.extended],o={captureGroup:n.rules.captureGroup,getCurrentModX(){return i.at(-1)},numOpenGroups:0,popModX(){i.pop()},pushModX(d){i.push(d)},replaceCurrentModX(d){i[i.length-1]=d},singleline:n.rules.singleline};let s=[],a;for(ze.lastIndex=0;a=ze.exec(e);){const d=hl(o,e,a[0],ze.lastIndex);d.tokens?s.push(...d.tokens):d.token&&s.push(d.token),d.lastIndex!==void 0&&(ze.lastIndex=d.lastIndex)}const l=[];let u=0;s.filter(d=>d.type==="GroupOpen").forEach(d=>{d.kind==="capturing"?d.number=++u:d.raw==="("&&l.push(d)}),u||l.forEach((d,f)=>{d.kind="capturing",d.number=f+1});const p=u||l.length;return{tokens:s.map(d=>d.type==="EscapedNumber"?xl(d,p):d).flat(),flags:r}}function hl(e,t,n,r){const[i,o]=n;if(n==="["||n==="[^"){const s=fl(t,n,r);return{tokens:s.tokens,lastIndex:s.lastIndex}}if(i==="\\"){if("AbBGyYzZ".includes(o))return{token:ar(n,n)};if(/^\\g[<']/.test(n)){if(!/^\\g(?:<[^>]+>|'[^']+')$/.test(n))throw new Error(`Invalid group name "${n}"`);return{token:Al(n)}}if(/^\\k[<']/.test(n)){if(!/^\\k(?:<[^>]+>|'[^']+')$/.test(n))throw new Error(`Invalid group name "${n}"`);return{token:Oi(n)}}if(o==="K")return{token:xi("keep",n)};if(o==="N"||o==="R")return{token:ae("newline",n,{negate:o==="N"})};if(o==="O")return{token:ae("any",n)};if(o==="X")return{token:ae("text_segment",n)};const s=Pi(n,{inCharClass:!1});return Array.isArray(s)?{tokens:s}:{token:s}}if(i==="("){if(o==="*")return{token:Rl(n)};if(n==="(?{")throw new Error(`Unsupported callout "${n}"`);if(n.startsWith("(?#")){if(t[r]!==")")throw new Error('Unclosed comment group "(?#"');return{lastIndex:r+1}}if(/^\(\?[-imx]+[:)]$/.test(n))return{token:Ll(n,e)};if(e.pushModX(e.getCurrentModX()),e.numOpenGroups++,n==="("&&!e.captureGroup||n==="(?:")return{token:ge("group",n)};if(n==="(?>")return{token:ge("atomic",n)};if(n==="(?="||n==="(?!"||n==="(?<="||n==="(?")||n.startsWith("(?'")&&n.endsWith("'"))return{token:ge("capturing",n,{...n!=="("&&{name:n.slice(3,-1)}})};if(n.startsWith("(?~")){if(n==="(?~|")throw new Error(`Unsupported absence function kind "${n}"`);return{token:ge("absence_repeater",n)}}throw n==="(?("?new Error(`Unsupported conditional "${n}"`):new Error(`Invalid or unsupported group option "${n}"`)}if(n===")"){if(e.popModX(),e.numOpenGroups--,e.numOpenGroups<0)throw new Error('Unmatched ")"');return{token:wl(n)}}if(e.getCurrentModX()){if(n==="#"){const s=t.indexOf(` -`,r);return{lastIndex:s===-1?t.length:s}}if(/^\s$/.test(n)){const s=/\s+/y;return s.lastIndex=r,{lastIndex:s.exec(t)?s.lastIndex:r}}}if(n===".")return{token:ae("dot",n)};if(n==="^"||n==="$"){const s=e.singleline?{"^":N`\A`,$:N`\Z`}[n]:n;return{token:ar(s,n)}}return n==="|"?{token:gl(n)}:Tn.test(n)?{tokens:Dl(n)}:{token:Z(be(n),n)}}function fl(e,t,n){const r=[lr(t[1]==="^",t)];let i=1,o;for(Nt.lastIndex=n;o=Nt.exec(e);){const s=o[0];if(s[0]==="["&&s[1]!==":")i++,r.push(lr(s[1]==="^",s));else if(s==="]"){if(r.at(-1).type==="CharacterClassOpen")r.push(Z(93,s));else if(i--,r.push(_l(s)),!i)break}else{const a=ml(s);Array.isArray(a)?r.push(...a):r.push(a)}}return{tokens:r,lastIndex:Nt.lastIndex||e.length}}function ml(e){if(e[0]==="\\")return Pi(e,{inCharClass:!0});if(e[0]==="["){const t=/\[:(?\^?)(?[a-z]+):\]/.exec(e);if(!t||!In.has(t.groups.name))throw new Error(`Invalid POSIX class "${e}"`);return ae("posix",e,{value:t.groups.name,negate:!!t.groups.negate})}return e==="-"?yl(e):e==="&&"?El(e):Z(be(e),e)}function Pi(e,{inCharClass:t}){const n=e[1];if(n==="c"||n==="C")return Sl(e);if("dDhHsSwW".includes(n))return Il(e);if(e.startsWith(N`\o{`))throw new Error(`Incomplete, invalid, or unsupported octal code point "${e}"`);if(/^\\[pP]\{/.test(e)){if(e.length===3)throw new Error(`Incomplete or invalid Unicode property "${e}"`);return Tl(e)}if(/^\\x[89A-Fa-f]\p{AHex}/u.test(e))try{const r=e.split(/\\x/).slice(1).map(s=>parseInt(s,16)),i=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}).decode(new Uint8Array(r)),o=new TextEncoder;return[...i].map(s=>{const a=[...o.encode(s)].map(l=>`\\x${l.toString(16)}`).join("");return Z(be(s),a)})}catch{throw new Error(`Multibyte code "${e}" incomplete or invalid in Oniguruma`)}if(n==="u"||n==="x")return Z(Ol(e),e);if(ur.has(n))return Z(ur.get(n),e);if(/\d/.test(n))return bl(t,e);if(e==="\\")throw new Error(N`Incomplete escape "\"`);if(n==="M")throw new Error(`Unsupported meta "${e}"`);if([...e].length===2)return Z(e.codePointAt(1),e);throw new Error(`Unexpected escape "${e}"`)}function gl(e){return{type:"Alternator",raw:e}}function ar(e,t){return{type:"Assertion",kind:e,raw:t}}function Oi(e){return{type:"Backreference",raw:e}}function Z(e,t){return{type:"Character",value:e,raw:t}}function _l(e){return{type:"CharacterClassClose",raw:e}}function yl(e){return{type:"CharacterClassHyphen",raw:e}}function El(e){return{type:"CharacterClassIntersector",raw:e}}function lr(e,t){return{type:"CharacterClassOpen",negate:e,raw:t}}function ae(e,t,n={}){return{type:"CharacterSet",kind:e,...n,raw:t}}function xi(e,t,n={}){return e==="keep"?{type:"Directive",kind:e,raw:t}:{type:"Directive",kind:e,flags:we(n.flags),raw:t}}function bl(e,t){return{type:"EscapedNumber",inCharClass:e,raw:t}}function wl(e){return{type:"GroupClose",raw:e}}function ge(e,t,n={}){return{type:"GroupOpen",kind:e,...n,raw:t}}function vl(e,t,n,r){return{type:"NamedCallout",kind:e,tag:t,arguments:n,raw:r}}function Cl(e,t,n,r){return{type:"Quantifier",kind:e,min:t,max:n,raw:r}}function Al(e){return{type:"Subroutine",raw:e}}const kl=new Set(["COUNT","CMP","ERROR","FAIL","MAX","MISMATCH","SKIP","TOTAL_COUNT"]),ur=new Map([["a",7],["b",8],["e",27],["f",12],["n",10],["r",13],["t",9],["v",11]]);function Sl(e){const t=e[1]==="c"?e[2]:e[3];if(!t||!/[A-Za-z]/.test(t))throw new Error(`Unsupported control character "${e}"`);return Z(be(t.toUpperCase())-64,e)}function Ll(e,t){let{on:n,off:r}=/^\(\?(?[imx]*)(?:-(?[-imx]*))?/.exec(e).groups;r??="";const i=(t.getCurrentModX()||n.includes("x"))&&!r.includes("x"),o=dr(n),s=dr(r),a={};if(o&&(a.enable=o),s&&(a.disable=s),e.endsWith(")"))return t.replaceCurrentModX(i),xi("flags",e,{flags:a});if(e.endsWith(":"))return t.pushModX(i),t.numOpenGroups++,ge("group",e,{...(o||s)&&{flags:a}});throw new Error(`Unexpected flag modifier "${e}"`)}function Rl(e){const t=/\(\*(?[A-Za-z_]\w*)?(?:\[(?(?:[A-Za-z_]\w*)?)\])?(?:\{(?[^}]*)\})?\)/.exec(e);if(!t)throw new Error(`Incomplete or invalid named callout "${e}"`);const{name:n,tag:r,args:i}=t.groups;if(!n)throw new Error(`Invalid named callout "${e}"`);if(r==="")throw new Error(`Named callout tag with empty value not allowed "${e}"`);const o=i?i.split(",").filter(p=>p!=="").map(p=>/^[+-]?\d+$/.test(p)?+p:p):[],[s,a,l]=o,u=kl.has(n)?n.toLowerCase():"custom";switch(u){case"fail":case"mismatch":case"skip":if(o.length>0)throw new Error(`Named callout arguments not allowed "${o}"`);break;case"error":if(o.length>1)throw new Error(`Named callout allows only one argument "${o}"`);if(typeof s=="string")throw new Error(`Named callout argument must be a number "${s}"`);break;case"max":if(!o.length||o.length>2)throw new Error(`Named callout must have one or two arguments "${o}"`);if(typeof s=="string"&&!/^[A-Za-z_]\w*$/.test(s))throw new Error(`Named callout argument one must be a tag or number "${s}"`);if(o.length===2&&(typeof a=="number"||!/^[<>X]$/.test(a)))throw new Error(`Named callout optional argument two must be '<', '>', or 'X' "${a}"`);break;case"count":case"total_count":if(o.length>1)throw new Error(`Named callout allows only one argument "${o}"`);if(o.length===1&&(typeof s=="number"||!/^[<>X]$/.test(s)))throw new Error(`Named callout optional argument must be '<', '>', or 'X' "${s}"`);break;case"cmp":if(o.length!==3)throw new Error(`Named callout must have three arguments "${o}"`);if(typeof s=="string"&&!/^[A-Za-z_]\w*$/.test(s))throw new Error(`Named callout argument one must be a tag or number "${s}"`);if(typeof a=="number"||!/^(?:[<>!=]=|[<>])$/.test(a))throw new Error(`Named callout argument two must be '==', '!=', '>', '<', '>=', or '<=' "${a}"`);if(typeof l=="string"&&!/^[A-Za-z_]\w*$/.test(l))throw new Error(`Named callout argument three must be a tag or number "${l}"`);break;case"custom":throw new Error(`Undefined callout name "${n}"`);default:throw new Error(`Unexpected named callout kind "${u}"`)}return vl(u,r??null,i?.split(",")??null,e)}function cr(e){let t=null,n,r;if(e[0]==="{"){const{minStr:i,maxStr:o}=/^\{(?\d*)(?:,(?\d*))?/.exec(e).groups,s=1e5;if(+i>s||o&&+o>s)throw new Error("Quantifier value unsupported in Oniguruma");if(n=+i,r=o===void 0?+i:o===""?1/0:+o,n>r&&(t="possessive",[n,r]=[r,n]),e.endsWith("?")){if(t==="possessive")throw new Error('Unsupported possessive interval quantifier chain with "?"');t="lazy"}else t||(t="greedy")}else n=e[0]==="+"?1:0,r=e[0]==="?"?1:1/0,t=e[1]==="+"?"possessive":e[1]==="?"?"lazy":"greedy";return Cl(t,n,r,e)}function Il(e){const t=e[1].toLowerCase();return ae({d:"digit",h:"hex",s:"space",w:"word"}[t],e,{negate:e[1]!==t})}function Tl(e){const{p:t,neg:n,value:r}=/^\\(?

[pP])\{(?\^?)(?[^}]+)/.exec(e).groups;return ae("property",e,{value:r,negate:t==="P"&&!n||t==="p"&&!!n})}function dr(e){const t={};return e.includes("i")&&(t.ignoreCase=!0),e.includes("m")&&(t.dotAll=!0),e.includes("x")&&(t.extended=!0),Object.keys(t).length?t:null}function Pl(e){const t={ignoreCase:!1,dotAll:!1,extended:!1,digitIsAscii:!1,posixIsAscii:!1,spaceIsAscii:!1,wordIsAscii:!1,textSegmentMode:null};for(let n=0;n\p{AHex}+)/u.exec(e).groups.hex:e.slice(2);return parseInt(t,16)}function xl(e,t){const{raw:n,inCharClass:r}=e,i=n.slice(1);if(!r&&(i!=="0"&&i.length===1||i[0]!=="0"&&+i<=t))return[Oi(n)];const o=[],s=i.match(/^[0-7]+|\d/g);for(let a=0;a127)throw new Error(N`Octal encoded byte above 177 unsupported "${n}"`)}else u=be(l);o.push(Z(u,(a===0?"\\":"")+l))}return o}function Dl(e){const t=[],n=new RegExp(Tn,"gy");let r;for(;r=n.exec(e);){const i=r[0];if(i[0]==="{"){const o=/^\{(?\d+),(?\d+)\}\??$/.exec(i);if(o){const{min:s,max:a}=o.groups;if(+s>+a&&i.endsWith("?")){n.lastIndex--,t.push(cr(i.slice(0,-1)));continue}}}t.push(cr(i))}return t}function Di(e,t){if(!Array.isArray(e.body))throw new Error("Expected node with body array");if(e.body.length!==1)return!1;const n=e.body[0];return!t||Object.keys(t).every(r=>t[r]===n[r])}function Nl(e){return Vl.has(e.type)}const Vl=new Set(["AbsenceFunction","Backreference","CapturingGroup","Character","CharacterClass","CharacterSet","Group","Quantifier","Subroutine"]);function Ni(e,t={}){const n={flags:"",normalizeUnknownPropertyNames:!1,skipBackrefValidation:!1,skipLookbehindValidation:!1,skipPropertyNameValidation:!1,unicodePropertyMap:null,...t,rules:{captureGroup:!1,singleline:!1,...t.rules}},r=pl(e,{flags:n.flags,rules:{captureGroup:n.rules.captureGroup,singleline:n.rules.singleline}}),i=(f,h)=>{const m=r.tokens[o.nextIndex];switch(o.parent=f,o.nextIndex++,m.type){case"Alternator":return ce();case"Assertion":return $l(m);case"Backreference":return Ml(m,o);case"Character":return bt(m.value,{useLastValid:!!h.isCheckingRangeEnd});case"CharacterClassHyphen":return Gl(m,o,h);case"CharacterClassOpen":return Bl(m,o,h);case"CharacterSet":return Ul(m,o);case"Directive":return ql(m.kind,{flags:m.flags});case"GroupOpen":return Fl(m,o,h);case"NamedCallout":return Kl(m.kind,m.tag,m.arguments);case"Quantifier":return jl(m,o);case"Subroutine":return Hl(m,o);default:throw new Error(`Unexpected token type "${m.type}"`)}},o={capturingGroups:[],hasNumberedRef:!1,namedGroupsByName:new Map,nextIndex:0,normalizeUnknownPropertyNames:n.normalizeUnknownPropertyNames,parent:null,skipBackrefValidation:n.skipBackrefValidation,skipLookbehindValidation:n.skipLookbehindValidation,skipPropertyNameValidation:n.skipPropertyNameValidation,subroutines:[],tokens:r.tokens,unicodePropertyMap:n.unicodePropertyMap,walk:i},s=Jl(Xl(r.flags));let a=s.body[0];for(;o.nextIndexl.length)throw new Error("Subroutine uses a group number that's not defined");f&&(l[f-1].isSubroutined=!0)}else if(p.has(f)){if(p.get(f).length>1)throw new Error(N`Subroutine uses a duplicate group name "\g<${f}>"`);p.get(f)[0].isSubroutined=!0}else throw new Error(N`Subroutine uses a group name that's not defined "\g<${f}>"`);return s}function $l({kind:e}){return en(we({"^":"line_start",$:"line_end","\\A":"string_start","\\b":"word_boundary","\\B":"word_boundary","\\G":"search_start","\\y":"text_segment_boundary","\\Y":"text_segment_boundary","\\z":"string_end","\\Z":"string_end_newline"}[e],`Unexpected assertion kind "${e}"`),{negate:e===N`\B`||e===N`\Y`})}function Ml({raw:e},t){const n=/^\\k[<']/.test(e),r=n?e.slice(3,-1):e.slice(1),i=(o,s=!1)=>{const a=t.capturingGroups.length;let l=!1;if(o>a)if(t.skipBackrefValidation)l=!0;else throw new Error(`Not enough capturing groups defined to the left "${e}"`);return t.hasNumberedRef=!0,tn(s?a+1-o:o,{orphan:l})};if(n){const o=/^(?-?)0*(?[1-9]\d*)$/.exec(r);if(o)return i(+o.groups.num,!!o.groups.sign);if(/[-+]/.test(r))throw new Error(`Invalid backref name "${e}"`);if(!t.namedGroupsByName.has(r))throw new Error(`Group name not defined to the left "${e}"`);return tn(r)}return i(+r)}function Gl(e,t,n){const{tokens:r,walk:i}=t,o=t.parent,s=o.body.at(-1),a=r[t.nextIndex];if(!n.isCheckingRangeEnd&&s&&s.type!=="CharacterClass"&&s.type!=="CharacterClassRange"&&a&&a.type!=="CharacterClassOpen"&&a.type!=="CharacterClassClose"&&a.type!=="CharacterClassIntersector"){const l=i(o,{...n,isCheckingRangeEnd:!0});if(s.type==="Character"&&l.type==="Character")return o.body.pop(),zl(s,l);throw new Error("Invalid character class range")}return bt(be("-"))}function Bl({negate:e},t,n){const{tokens:r,walk:i}=t,o=[Je()],s=r[t.nextIndex];let a=fr(s);for(;a.type!=="CharacterClassClose";){if(a.type==="CharacterClassIntersector")o.push(Je()),t.nextIndex++;else{const u=o.at(-1);u.body.push(i(u,n))}a=fr(r[t.nextIndex],s)}const l=Je({negate:e});return o.length===1?l.body=o[0].body:(l.kind="intersection",l.body=o.map(u=>u.body.length===1?u.body[0]:u)),t.nextIndex++,l}function Ul({kind:e,negate:t,value:n},r){const{normalizeUnknownPropertyNames:i,skipPropertyNameValidation:o,unicodePropertyMap:s}=r;if(e==="property"){const a=wt(n);if(In.has(a)&&!s?.has(a))e="posix",n=a;else return _e(n,{negate:t,normalizeUnknownPropertyNames:i,skipPropertyNameValidation:o,unicodePropertyMap:s})}return e==="posix"?Ql(n,{negate:t}):nn(e,{negate:t})}function Fl(e,t,n){const{tokens:r,capturingGroups:i,namedGroupsByName:o,skipLookbehindValidation:s,walk:a}=t,l=Yl(e),u=l.type==="AbsenceFunction",p=hr(l),d=p&&l.negate;if(l.type==="CapturingGroup"&&(i.push(l),l.name&&dl(o,l.name,[]).push(l)),u&&n.isInAbsenceFunction)throw new Error("Nested absence function not supported by Oniguruma");let f=mr(r[t.nextIndex]);for(;f.type!=="GroupClose";){if(f.type==="Alternator")l.body.push(ce()),t.nextIndex++;else{const h=l.body.at(-1),m=a(h,{...n,isInAbsenceFunction:n.isInAbsenceFunction||u,isInLookbehind:n.isInLookbehind||p,isInNegLookbehind:n.isInNegLookbehind||d});if(h.body.push(m),(p||n.isInLookbehind)&&!s){const E="Lookbehind includes a pattern not allowed by Oniguruma";if(d||n.isInNegLookbehind){if(pr(m)||m.type==="CapturingGroup")throw new Error(E)}else if(pr(m)||hr(m)&&m.negate)throw new Error(E)}}f=mr(r[t.nextIndex])}return t.nextIndex++,l}function jl({kind:e,min:t,max:n},r){const i=r.parent,o=i.body.at(-1);if(!o||!Nl(o))throw new Error("Quantifier requires a repeatable token");const s=$i(e,t,n,o);return i.body.pop(),s}function Hl({raw:e},t){const{capturingGroups:n,subroutines:r}=t;let i=e.slice(3,-1);const o=/^(?[-+]?)0*(?[1-9]\d*)$/.exec(i);if(o){const a=+o.groups.num,l=n.length;if(t.hasNumberedRef=!0,i={"":a,"+":l+a,"-":l+1-a}[o.groups.sign],i<1)throw new Error("Invalid subroutine number")}else i==="0"&&(i=0);const s=Mi(i);return r.push(s),s}function Wl(e,t){return{type:"AbsenceFunction",kind:e,body:Ue(t?.body)}}function ce(e){return{type:"Alternative",body:Gi(e?.body)}}function en(e,t){const n={type:"Assertion",kind:e};return(e==="word_boundary"||e==="text_segment_boundary")&&(n.negate=!!t?.negate),n}function tn(e,t){const n=!!t?.orphan;return{type:"Backreference",ref:e,...n&&{orphan:n}}}function Vi(e,t){const n={name:void 0,isSubroutined:!1,...t};if(n.name!==void 0&&!Zl(n.name))throw new Error(`Group name "${n.name}" invalid in Oniguruma`);return{type:"CapturingGroup",number:e,...n.name&&{name:n.name},...n.isSubroutined&&{isSubroutined:n.isSubroutined},body:Ue(t?.body)}}function bt(e,t){const n={useLastValid:!1,...t};if(e>1114111){const r=e.toString(16);if(n.useLastValid)e=1114111;else throw e>1310719?new Error(`Invalid code point out of range "\\x{${r}}"`):new Error(`Invalid code point out of range in JS "\\x{${r}}"`)}return{type:"Character",value:e}}function Je(e){const t={kind:"union",negate:!1,...e};return{type:"CharacterClass",kind:t.kind,negate:t.negate,body:Gi(e?.body)}}function zl(e,t){if(t.valuen)throw new Error("Invalid reversed quantifier range");return{type:"Quantifier",kind:e,min:t,max:n,body:r}}function Jl(e,t){return{type:"Regex",body:Ue(t?.body),flags:e}}function Mi(e){return{type:"Subroutine",ref:e}}function _e(e,t){const n={negate:!1,normalizeUnknownPropertyNames:!1,skipPropertyNameValidation:!1,unicodePropertyMap:null,...t};let r=n.unicodePropertyMap?.get(wt(e));if(!r){if(n.normalizeUnknownPropertyNames)r=eu(e);else if(n.unicodePropertyMap&&!n.skipPropertyNameValidation)throw new Error(N`Invalid Unicode property "\p{${e}}"`)}return{type:"CharacterSet",kind:"property",value:r??e,negate:n.negate}}function Yl({flags:e,kind:t,name:n,negate:r,number:i}){switch(t){case"absence_repeater":return Wl("repeater");case"atomic":return H({atomic:!0});case"capturing":return Vi(i,{name:n});case"group":return H({flags:e});case"lookahead":case"lookbehind":return oe({behind:t==="lookbehind",negate:r});default:throw new Error(`Unexpected group kind "${t}"`)}}function Ue(e){if(e===void 0)e=[ce()];else if(!Array.isArray(e)||!e.length||!e.every(t=>t.type==="Alternative"))throw new Error("Invalid body; expected array of one or more Alternative nodes");return e}function Gi(e){if(e===void 0)e=[];else if(!Array.isArray(e)||!e.every(t=>!!t.type))throw new Error("Invalid body; expected array of nodes");return e}function pr(e){return e.type==="LookaroundAssertion"&&e.kind==="lookahead"}function hr(e){return e.type==="LookaroundAssertion"&&e.kind==="lookbehind"}function Zl(e){return/^[\p{Alpha}\p{Pc}][^)]*$/u.test(e)}function eu(e){return e.trim().replace(/[- _]+/g,"_").replace(/[A-Z][a-z]+(?=[A-Z])/g,"$&_").replace(/[A-Za-z]+/g,t=>t[0].toUpperCase()+t.slice(1).toLowerCase())}function wt(e){return e.replace(/[- _]+/g,"").toLowerCase()}function fr(e,t){const n=t;return we(e,`Unclosed character class${n?.type==="Character"&&n.value===93&&n.raw==="]"?' (started with "]")':""}`)}function mr(e){return we(e,"Unclosed group")}function ke(e,t,n=null){function r(o,s){for(let a=0;aA-Za-z\-]|<[=!]|\(DEFINE\))`;function nu(e,t){for(let n=0;n=t&&e[n]++}function ru(e,t,n,r){return e.slice(0,t)+r+e.slice(t+n.length)}const j=Object.freeze({DEFAULT:"DEFAULT",CHAR_CLASS:"CHAR_CLASS"});function Pn(e,t,n,r){const i=new RegExp(String.raw`${t}|(?<$skip>\[\^?|\\?.)`,"gsu"),o=[!1];let s=0,a="";for(const l of e.matchAll(i)){const{0:u,groups:{$skip:p}}=l;if(!p&&(!r||r===j.DEFAULT==!s)){n instanceof Function?a+=n(l,{context:s?j.CHAR_CLASS:j.DEFAULT,negated:o[o.length-1]}):a+=n;continue}u[0]==="["?(s++,o.push(u[1]==="^")):u==="]"&&s&&(s--,o.pop()),a+=u}return a}function Bi(e,t,n,r){Pn(e,t,n,r)}function iu(e,t,n=0,r){if(!new RegExp(t,"su").test(e))return null;const i=new RegExp(`${t}|(?<$skip>\\\\?.)`,"gsu");i.lastIndex=n;let o=0,s;for(;s=i.exec(e);){const{0:a,groups:{$skip:l}}=s;if(!l&&(!r||r===j.DEFAULT==!o))return s;a==="["?o++:a==="]"&&o&&o--,i.lastIndex==s.index&&i.lastIndex++}return null}function Xe(e,t,n){return!!iu(e,t,0,n)}function ou(e,t){const n=/\\?./gsu;n.lastIndex=t;let r=e.length,i=0,o=1,s;for(;s=n.exec(e);){const[a]=s;if(a==="[")i++;else if(i)a==="]"&&i--;else if(a==="(")o++;else if(a===")"&&(o--,!o)){r=s.index;break}}return e.slice(t,r)}const gr=new RegExp(String.raw`(?${tu})|(?\((?:\?<[^>]+>)?)|\\?.`,"gsu");function su(e,t){const n=t?.hiddenCaptures??[];let r=t?.captureTransfers??new Map;if(!/\(\?>/.test(e))return{pattern:e,captureTransfers:r,hiddenCaptures:n};const i="(?>",o="(?:(?=(",s=[0],a=[];let l=0,u=0,p=NaN,d;do{d=!1;let f=0,h=0,m=!1,E;for(gr.lastIndex=Number.isNaN(p)?0:p+o.length;E=gr.exec(e);){const{0:b,index:g,groups:{capturingStart:y,noncapturingStart:w}}=E;if(b==="[")f++;else if(f)b==="]"&&f--;else if(b===i&&!m)p=g,m=!0;else if(m&&w)h++;else if(y)m?h++:(l++,s.push(l+u));else if(b===")"&&m){if(!h){u++;const A=l+u;if(e=`${e.slice(0,p)}${o}${e.slice(p+i.length,g)}))<$$${A}>)${e.slice(g+1)}`,d=!0,a.push(A),nu(n,A),r.size){const k=new Map;r.forEach((I,M)=>{k.set(M>=A?M+1:M,I.map(z=>z>=A?z+1:z))}),r=k}break}h--}}}while(d);return n.push(...a),e=Pn(e,String.raw`\\(?[1-9]\d*)|<\$\$(?\d+)>`,({0:f,groups:{backrefNum:h,wrappedBackrefNum:m}})=>{if(h){const E=+h;if(E>s.length-1)throw new Error(`Backref "${f}" greater than number of captures`);return`\\${s[E]}`}return`\\${m}`},j.DEFAULT),{pattern:e,captureTransfers:r,hiddenCaptures:n}}const Ui=String.raw`(?:[?*+]|\{\d+(?:,\d*)?\})`,Vt=new RegExp(String.raw` -\\(?: \d+ - | c[A-Za-z] - | [gk]<[^>]+> - | [pPu]\{[^\}]+\} - | u[A-Fa-f\d]{4} - | x[A-Fa-f\d]{2} - ) -| \((?: \? (?: [:=!>] - | <(?:[=!]|[^>]+>) - | [A-Za-z\-]+: - | \(DEFINE\) - ))? -| (?${Ui})(?[?+]?)(?[?*+\{]?) -| \\?. -`.replace(/\s+/g,""),"gsu");function au(e){if(!new RegExp(`${Ui}\\+`).test(e))return{pattern:e};const t=[];let n=null,r=null,i="",o=0,s;for(Vt.lastIndex=0;s=Vt.exec(e);){const{0:a,index:l,groups:{qBase:u,qMod:p,invalidQ:d}}=s;if(a==="[")o||(r=l),o++;else if(a==="]")o?o--:r=null;else if(!o)if(p==="+"&&i&&!i.startsWith("(")){if(d)throw new Error(`Invalid quantifier "${a}"`);let f=-1;if(/^\{\d+\}$/.test(u))e=ru(e,l+u.length,p,"");else{if(i===")"||i==="]"){const h=i===")"?n:r;if(h===null)throw new Error(`Invalid unmatched "${i}"`);e=`${e.slice(0,h)}(?>${e.slice(h,l)}${u})${e.slice(l+a.length)}`}else e=`${e.slice(0,l-i.length)}(?>${i}${u})${e.slice(l+a.length)}`;f+=4}Vt.lastIndex+=f}else a[0]==="("?t.push(l):a===")"&&(n=t.length?t.pop():null);i=a}return{pattern:e}}const F=String.raw,lu=F`\\g<(?[^>&]+)&R=(?[^>]+)>`,rn=F`\(\?R=(?[^\)]+)\)|${lu}`,vt=F`\(\?<(?![=!])(?[^>]+)>`,Fi=F`${vt}|(?\()(?!\?)`,re=new RegExp(F`${vt}|${rn}|\(\?|\\?.`,"gsu"),$t="Cannot use multiple overlapping recursions";function uu(e,t){const{hiddenCaptures:n,mode:r}={hiddenCaptures:[],mode:"plugin",...t};let i=t?.captureTransfers??new Map;if(!new RegExp(rn,"su").test(e))return{pattern:e,captureTransfers:i,hiddenCaptures:n};if(r==="plugin"&&Xe(e,F`\(\?\(DEFINE\)`,j.DEFAULT))throw new Error("DEFINE groups cannot be used with recursion");const o=[],s=Xe(e,F`\\[1-9]`,j.DEFAULT),a=new Map,l=[];let u=!1,p=0,d=0,f;for(re.lastIndex=0;f=re.exec(e);){const{0:h,groups:{captureName:m,rDepth:E,gRNameOrNum:b,gRDepth:g}}=f;if(h==="[")p++;else if(p)h==="]"&&p--;else if(E){if(_r(E),u)throw new Error($t);if(s)throw new Error(`${r==="external"?"Backrefs":"Numbered backrefs"} cannot be used with global recursion`);const y=e.slice(0,f.index),w=e.slice(re.lastIndex);if(Xe(w,rn,j.DEFAULT))throw new Error($t);const A=+E-1;e=yr(y,w,A,!1,n,o,d),i=br(i,y,A,o.length,0,d);break}else if(b){_r(g);let y=!1;for(const q of l)if(q.name===b||q.num===+b){if(y=!0,q.hasRecursedWithin)throw new Error($t);break}if(!y)throw new Error(F`Recursive \g cannot be used outside the referenced group "${r==="external"?b:F`\g<${b}&R=${g}>`}"`);const w=a.get(b),A=ou(e,w);if(s&&Xe(A,F`${vt}|\((?!\?)`,j.DEFAULT))throw new Error(`${r==="external"?"Backrefs":"Numbered backrefs"} cannot be used with recursion of capturing groups`);const k=e.slice(w,f.index),I=A.slice(k.length+h.length),M=o.length,z=+g-1,pe=yr(k,I,z,!0,n,o,d);i=br(i,k,z,o.length-M,M,d);const At=e.slice(0,w),kt=e.slice(w+A.length);e=`${At}${pe}${kt}`,re.lastIndex+=pe.length-h.length-k.length-I.length,l.forEach(q=>q.hasRecursedWithin=!0),u=!0}else if(m)d++,a.set(String(d),re.lastIndex),a.set(m,re.lastIndex),l.push({num:d,name:m});else if(h[0]==="("){const y=h==="(";y&&(d++,a.set(String(d),re.lastIndex)),l.push(y?{num:d}:{})}else h===")"&&l.pop()}return n.push(...o),{pattern:e,captureTransfers:i,hiddenCaptures:n}}function _r(e){const t=`Max depth must be integer between 2 and 100; used ${e}`;if(!/^[1-9]\d*$/.test(e))throw new Error(t);if(e=+e,e<2||e>100)throw new Error(t)}function yr(e,t,n,r,i,o,s){const a=new Set;r&&Bi(e+t,vt,({groups:{captureName:u}})=>{a.add(u)},j.DEFAULT);const l=[n,r?a:null,i,o,s];return`${e}${Er(`(?:${e}`,"forward",...l)}(?:)${Er(`${t})`,"backward",...l)}${t}`}function Er(e,t,n,r,i,o,s){const l=p=>t==="forward"?p+2:n-p+2-1;let u="";for(let p=0;p[^>]+)>`,({0:f,groups:{captureName:h,unnamed:m,backref:E}})=>{if(E&&r&&!r.has(E))return f;const b=`_$${d}`;if(m||h){const g=s+o.length+1;return o.push(g),cu(i,g),m?f:`(?<${h}${b}>`}return F`\k<${E}${b}>`},j.DEFAULT)}return u}function cu(e,t){for(let n=0;n=t&&e[n]++}function br(e,t,n,r,i,o){if(e.size&&r){let s=0;Bi(t,Fi,()=>s++,j.DEFAULT);const a=o-s+i,l=new Map;return e.forEach((u,p)=>{const d=(r-s*n)/n,f=s*n,h=p>a+s?p+r:p,m=[];for(const E of u)if(E<=a)m.push(E);else if(E>a+s+d)m.push(E+r);else if(E<=a+s)for(let b=0;b<=n;b++)m.push(E+s*b);else for(let b=0;b<=n;b++)m.push(E+f+d*b);l.set(h,m)}),l}return e}var O=String.fromCodePoint,C=String.raw,W={},Ct=globalThis.RegExp;W.flagGroups=(()=>{try{new Ct("(?i:)")}catch{return!1}return!0})();W.unicodeSets=(()=>{try{new Ct("[[]]","v")}catch{return!1}return!0})();W.bugFlagVLiteralHyphenIsRange=W.unicodeSets?(()=>{try{new Ct(C`[\d\-a]`,"v")}catch{return!0}return!1})():!1;W.bugNestedClassIgnoresNegation=W.unicodeSets&&new Ct("[[^a]]","v").test("a");function st(e,{enable:t,disable:n}){return{dotAll:!n?.dotAll&&!!(t?.dotAll||e.dotAll),ignoreCase:!n?.ignoreCase&&!!(t?.ignoreCase||e.ignoreCase)}}function De(e,t,n){return e.has(t)||e.set(t,n),e.get(t)}function on(e,t){return wr[e]>=wr[t]}function du(e,t){if(e==null)throw new Error(t??"Value expected");return e}var wr={ES2025:2025,ES2024:2024,ES2018:2018},pu={auto:"auto",ES2025:"ES2025",ES2024:"ES2024",ES2018:"ES2018"};function ji(e={}){if({}.toString.call(e)!=="[object Object]")throw new Error("Unexpected options");if(e.target!==void 0&&!pu[e.target])throw new Error(`Unexpected target "${e.target}"`);const t={accuracy:"default",avoidSubclass:!1,flags:"",global:!1,hasIndices:!1,lazyCompileLength:1/0,target:"auto",verbose:!1,...e,rules:{allowOrphanBackrefs:!1,asciiWordBoundaries:!1,captureGroup:!1,recursionLimit:20,singleline:!1,...e.rules}};return t.target==="auto"&&(t.target=W.flagGroups?"ES2025":W.unicodeSets?"ES2024":"ES2018"),t}var hu="[ -\r ]",fu=new Set([O(304),O(305)]),J=C`[\p{L}\p{M}\p{N}\p{Pc}]`;function Hi(e){if(fu.has(e))return[e];const t=new Set,n=e.toLowerCase(),r=n.toUpperCase(),i=_u.get(n),o=mu.get(n),s=gu.get(n);return[...r].length===1&&t.add(r),s&&t.add(s),i&&t.add(i),t.add(n),o&&t.add(o),[...t]}var On=new Map(`C Other -Cc Control cntrl -Cf Format -Cn Unassigned -Co Private_Use -Cs Surrogate -L Letter -LC Cased_Letter -Ll Lowercase_Letter -Lm Modifier_Letter -Lo Other_Letter -Lt Titlecase_Letter -Lu Uppercase_Letter -M Mark Combining_Mark -Mc Spacing_Mark -Me Enclosing_Mark -Mn Nonspacing_Mark -N Number -Nd Decimal_Number digit -Nl Letter_Number -No Other_Number -P Punctuation punct -Pc Connector_Punctuation -Pd Dash_Punctuation -Pe Close_Punctuation -Pf Final_Punctuation -Pi Initial_Punctuation -Po Other_Punctuation -Ps Open_Punctuation -S Symbol -Sc Currency_Symbol -Sk Modifier_Symbol -Sm Math_Symbol -So Other_Symbol -Z Separator -Zl Line_Separator -Zp Paragraph_Separator -Zs Space_Separator -ASCII -ASCII_Hex_Digit AHex -Alphabetic Alpha -Any -Assigned -Bidi_Control Bidi_C -Bidi_Mirrored Bidi_M -Case_Ignorable CI -Cased -Changes_When_Casefolded CWCF -Changes_When_Casemapped CWCM -Changes_When_Lowercased CWL -Changes_When_NFKC_Casefolded CWKCF -Changes_When_Titlecased CWT -Changes_When_Uppercased CWU -Dash -Default_Ignorable_Code_Point DI -Deprecated Dep -Diacritic Dia -Emoji -Emoji_Component EComp -Emoji_Modifier EMod -Emoji_Modifier_Base EBase -Emoji_Presentation EPres -Extended_Pictographic ExtPict -Extender Ext -Grapheme_Base Gr_Base -Grapheme_Extend Gr_Ext -Hex_Digit Hex -IDS_Binary_Operator IDSB -IDS_Trinary_Operator IDST -ID_Continue IDC -ID_Start IDS -Ideographic Ideo -Join_Control Join_C -Logical_Order_Exception LOE -Lowercase Lower -Math -Noncharacter_Code_Point NChar -Pattern_Syntax Pat_Syn -Pattern_White_Space Pat_WS -Quotation_Mark QMark -Radical -Regional_Indicator RI -Sentence_Terminal STerm -Soft_Dotted SD -Terminal_Punctuation Term -Unified_Ideograph UIdeo -Uppercase Upper -Variation_Selector VS -White_Space space -XID_Continue XIDC -XID_Start XIDS`.split(/\s/).map(e=>[wt(e),e])),mu=new Map([["s",O(383)],[O(383),"s"]]),gu=new Map([[O(223),O(7838)],[O(107),O(8490)],[O(229),O(8491)],[O(969),O(8486)]]),_u=new Map([te(453),te(456),te(459),te(498),...Mt(8072,8079),...Mt(8088,8095),...Mt(8104,8111),te(8124),te(8140),te(8188)]),yu=new Map([["alnum",C`[\p{Alpha}\p{Nd}]`],["alpha",C`\p{Alpha}`],["ascii",C`\p{ASCII}`],["blank",C`[\p{Zs}\t]`],["cntrl",C`\p{Cc}`],["digit",C`\p{Nd}`],["graph",C`[\P{space}&&\P{Cc}&&\P{Cn}&&\P{Cs}]`],["lower",C`\p{Lower}`],["print",C`[[\P{space}&&\P{Cc}&&\P{Cn}&&\P{Cs}]\p{Zs}]`],["punct",C`[\p{P}\p{S}]`],["space",C`\p{space}`],["upper",C`\p{Upper}`],["word",C`[\p{Alpha}\p{M}\p{Nd}\p{Pc}]`],["xdigit",C`\p{AHex}`]]);function Eu(e,t){const n=[];for(let r=e;r<=t;r++)n.push(r);return n}function te(e){const t=O(e);return[t.toLowerCase(),t]}function Mt(e,t){return Eu(e,t).map(n=>te(n))}var Wi=new Set(["Lower","Lowercase","Upper","Uppercase","Ll","Lowercase_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter"]);function bu(e,t){const n={accuracy:"default",asciiWordBoundaries:!1,avoidSubclass:!1,bestEffortTarget:"ES2025",...t};zi(e);const r={accuracy:n.accuracy,asciiWordBoundaries:n.asciiWordBoundaries,avoidSubclass:n.avoidSubclass,flagDirectivesByAlt:new Map,jsGroupNameMap:new Map,minTargetEs2024:on(n.bestEffortTarget,"ES2024"),passedLookbehind:!1,strategy:null,subroutineRefMap:new Map,supportedGNodes:new Set,digitIsAscii:e.flags.digitIsAscii,spaceIsAscii:e.flags.spaceIsAscii,wordIsAscii:e.flags.wordIsAscii};ke(e,wu,r);const i={dotAll:e.flags.dotAll,ignoreCase:e.flags.ignoreCase},o={currentFlags:i,prevFlags:null,globalFlags:i,groupOriginByCopy:new Map,groupsByName:new Map,multiplexCapturesToLeftByRef:new Map,openRefs:new Map,reffedNodesByReferencer:new Map,subroutineRefMap:r.subroutineRefMap};ke(e,vu,o);const s={groupsByName:o.groupsByName,highestOrphanBackref:0,numCapturesToLeft:0,reffedNodesByReferencer:o.reffedNodesByReferencer};return ke(e,Cu,s),e._originMap=o.groupOriginByCopy,e._strategy=r.strategy,e}var wu={AbsenceFunction({node:e,parent:t,replaceWith:n}){const{body:r,kind:i}=e;if(i==="repeater"){const o=H();o.body[0].body.push(oe({negate:!0,body:r}),_e("Any"));const s=H();s.body[0].body.push($i("greedy",0,1/0,o)),n(R(s,t),{traverse:!0})}else throw new Error('Unsupported absence function "(?~|"')},Alternative:{enter({node:e,parent:t,key:n},{flagDirectivesByAlt:r}){const i=e.body.filter(o=>o.kind==="flags");for(let o=n+1;o\r\n|${i?C`\p{RGI_Emoji}`:f}|\P{M}\p{M}*)`,{skipPropertyNameValidation:!0}),t))}else if(l==="hex")n(ne(_e("AHex",{negate:u}),t));else if(l==="newline")n(R(Y(u?`[^ -]`:`(?>\r -?|[ -\v\f…\u2028\u2029])`),t));else if(l==="posix")if(!i&&(p==="graph"||p==="print")){if(r==="strict")throw new Error(`POSIX class "${p}" requires min target ES2024 or non-strict accuracy`);let d={graph:"!-~",print:" -~"}[p];u&&(d=`\0-${O(d.codePointAt(0)-1)}${O(d.codePointAt(2)+1)}-􏿿`),n(R(Y(`[${d}]`),t))}else n(R(Ut(Y(yu.get(p)),u),t));else if(l==="property")On.has(wt(p))||(e.key="sc");else if(l==="space")n(ne(_e("space",{negate:u}),t));else if(l==="word")n(R(Ut(Y(J),u),t));else throw new Error(`Unexpected character set kind "${l}"`)},Directive({node:e,parent:t,root:n,remove:r,replaceWith:i,removeAllPrevSiblings:o,removeAllNextSiblings:s}){const{kind:a,flags:l}=e;if(a==="flags")if(!l.enable&&!l.disable)r();else{const u=H({flags:l});u.body[0].body=s(),i(R(u,t),{traverse:!0})}else if(a==="keep"){const u=n.body[0],d=n.body.length===1&&Di(u,{type:"Group"})&&u.body[0].body.length===1?u.body[0]:n;if(t.parent!==d||d.body.length>1)throw new Error(C`Uses "\K" in a way that's unsupported`);const f=oe({behind:!0});f.body[0].body=o(),i(R(f,t))}else throw new Error(`Unexpected directive kind "${a}"`)},Flags({node:e,parent:t}){if(e.posixIsAscii)throw new Error('Unsupported flag "P"');if(e.textSegmentMode==="word")throw new Error('Unsupported flag "y{w}"');["digitIsAscii","extended","posixIsAscii","spaceIsAscii","wordIsAscii","textSegmentMode"].forEach(n=>delete e[n]),Object.assign(e,{global:!1,hasIndices:!1,multiline:!1,sticky:e.sticky??!1}),t.options={disable:{x:!0,n:!0},force:{v:!0}}},Group({node:e}){if(!e.flags)return;const{enable:t,disable:n}=e.flags;t?.extended&&delete t.extended,n?.extended&&delete n.extended,t?.dotAll&&n?.dotAll&&delete t.dotAll,t?.ignoreCase&&n?.ignoreCase&&delete t.ignoreCase,t&&!Object.keys(t).length&&delete e.flags.enable,n&&!Object.keys(n).length&&delete e.flags.disable,!e.flags.enable&&!e.flags.disable&&delete e.flags},LookaroundAssertion({node:e},t){const{kind:n}=e;n==="lookbehind"&&(t.passedLookbehind=!0)},NamedCallout({node:e,parent:t,replaceWith:n}){const{kind:r}=e;if(r==="fail")n(R(oe({negate:!0}),t));else throw new Error(`Unsupported named callout "(*${r.toUpperCase()}"`)},Quantifier({node:e}){if(e.body.type==="Quantifier"){const t=H();t.body[0].body.push(e.body),e.body=R(t,e)}},Regex:{enter({node:e},{supportedGNodes:t}){const n=[];let r=!1,i=!1;for(const o of e.body)if(o.body.length===1&&o.body[0].kind==="search_start")o.body.pop();else{const s=Qi(o.body);s?(r=!0,Array.isArray(s)?n.push(...s):n.push(s)):i=!0}r&&!i&&n.forEach(o=>t.add(o))},exit(e,{accuracy:t,passedLookbehind:n,strategy:r}){if(t==="strict"&&n&&r)throw new Error(C`Uses "\G" in a way that requires non-strict accuracy`)}},Subroutine({node:e},{jsGroupNameMap:t}){let{ref:n}=e;typeof n=="string"&&!Bt(n)&&(n=Gt(n,t),e.ref=n)}},vu={Backreference({node:e},{multiplexCapturesToLeftByRef:t,reffedNodesByReferencer:n}){const{orphan:r,ref:i}=e;r||n.set(e,[...t.get(i).map(({node:o})=>o)])},CapturingGroup:{enter({node:e,parent:t,replaceWith:n,skip:r},{groupOriginByCopy:i,groupsByName:o,multiplexCapturesToLeftByRef:s,openRefs:a,reffedNodesByReferencer:l}){const u=i.get(e);if(u&&a.has(e.number)){const d=ne(vr(e.number),t);l.set(d,a.get(e.number)),n(d);return}a.set(e.number,e),s.set(e.number,[]),e.name&&De(s,e.name,[]);const p=s.get(e.name??e.number);for(let d=0;df.type==="Group"&&!!f.flags)),d=p?st(r.globalFlags,p):r.globalFlags;Au(d,r.currentFlags)||(u=H({flags:Lu(d)}),u.body[0].body.push(l))}n(R(u,t),{traverse:!a})}},Cu={Backreference({node:e,parent:t,replaceWith:n},r){if(e.orphan){r.highestOrphanBackref=Math.max(r.highestOrphanBackref,e.ref);return}const o=r.reffedNodesByReferencer.get(e).filter(s=>ku(s,e));if(!o.length)n(R(oe({negate:!0}),t));else if(o.length>1){const s=H({atomic:!0,body:o.reverse().map(a=>ce({body:[tn(a.number)]}))});n(R(s,t))}else e.ref=o[0].number},CapturingGroup({node:e},t){e.number=++t.numCapturesToLeft,e.name&&t.groupsByName.get(e.name).get(e).hasDuplicateNameToRemove&&delete e.name},Regex:{exit({node:e},t){const n=Math.max(t.highestOrphanBackref-t.numCapturesToLeft,0);for(let r=0;r{t.forEach(i=>{r.enable?.[i]&&(delete n.disable[i],n.enable[i]=!0),r.disable?.[i]&&(n.disable[i]=!0)})}),Object.keys(n.enable).length||delete n.enable,Object.keys(n.disable).length||delete n.disable,n.enable||n.disable?n:null}function Lu({dotAll:e,ignoreCase:t}){const n={};return(e||t)&&(n.enable={},e&&(n.enable.dotAll=!0),t&&(n.enable.ignoreCase=!0)),(!e||!t)&&(n.disable={},!e&&(n.disable.dotAll=!0),!t&&(n.disable.ignoreCase=!0)),n}function Ki(e){if(!e)throw new Error("Node expected");const{body:t}=e;return Array.isArray(t)?t:t?[t]:null}function Qi(e){const t=e.find(n=>n.kind==="search_start"||Tu(n,{negate:!1})||!Ru(n));if(!t)return null;if(t.kind==="search_start")return t;if(t.type==="LookaroundAssertion")return t.body[0].body[0];if(t.type==="CapturingGroup"||t.type==="Group"){const n=[];for(const r of t.body){const i=Qi(r.body);if(!i)return null;Array.isArray(i)?n.push(...i):n.push(i)}return n}return null}function Ji(e,t){const n=Ki(e)??[];for(const r of n)if(r===t||Ji(r,t))return!0;return!1}function Ru({type:e}){return e==="Assertion"||e==="Directive"||e==="LookaroundAssertion"}function Iu(e){const t=["Character","CharacterClass","CharacterSet"];return t.includes(e.type)||e.type==="Quantifier"&&e.min&&t.includes(e.body.type)}function Tu(e,t){const n={negate:null,...t};return e.type==="LookaroundAssertion"&&(n.negate===null||e.negate===n.negate)&&e.body.length===1&&Di(e.body[0],{type:"Assertion",kind:"search_start"})}function Bt(e){return/^[$_\p{IDS}][$\u200C\u200D\p{IDC}]*$/u.test(e)}function Y(e,t){const r=Ni(e,{...t,unicodePropertyMap:On}).body;return r.length>1||r[0].body.length>1?H({body:r}):r[0].body[0]}function Ut(e,t){return e.negate=t,e}function ne(e,t){return e.parent=t,e}function R(e,t){return zi(e),e.parent=t,e}function Pu(e,t){const n=ji(t),r=on(n.target,"ES2024"),i=on(n.target,"ES2025"),o=n.rules.recursionLimit;if(!Number.isInteger(o)||o<2||o>20)throw new Error("Invalid recursionLimit; use 2-20");let s=null,a=null;if(!i){const h=[e.flags.ignoreCase];ke(e,Ou,{getCurrentModI:()=>h.at(-1),popModI(){h.pop()},pushModI(m){h.push(m)},setHasCasedChar(){h.at(-1)?s=!0:a=!0}})}const l={dotAll:e.flags.dotAll,ignoreCase:!!((e.flags.ignoreCase||s)&&!a)};let u=e;const p={accuracy:n.accuracy,appliedGlobalFlags:l,captureMap:new Map,currentFlags:{dotAll:e.flags.dotAll,ignoreCase:e.flags.ignoreCase},inCharClass:!1,lastNode:u,originMap:e._originMap,recursionLimit:o,useAppliedIgnoreCase:!!(!i&&s&&a),useFlagMods:i,useFlagV:r,verbose:n.verbose};function d(h){return p.lastNode=u,u=h,du(xu[h.type],`Unexpected node type "${h.type}"`)(h,p,d)}const f={pattern:e.body.map(d).join("|"),flags:d(e.flags),options:{...e.options}};return r||(delete f.options.force.v,f.options.disable.v=!0,f.options.unicodeSetsPlugin=null),f._captureTransfers=new Map,f._hiddenCaptures=[],p.captureMap.forEach((h,m)=>{h.hidden&&f._hiddenCaptures.push(m),h.transferTo&&De(f._captureTransfers,h.transferTo,[]).push(m)}),f}var Ou={"*":{enter({node:e},t){if(Ar(e)){const n=t.getCurrentModI();t.pushModI(e.flags?st({ignoreCase:n},e.flags).ignoreCase:n)}},exit({node:e},t){Ar(e)&&t.popModI()}},Backreference(e,t){t.setHasCasedChar()},Character({node:e},t){xn(O(e.value))&&t.setHasCasedChar()},CharacterClassRange({node:e,skip:t},n){t(),Yi(e,{firstOnly:!0}).length&&n.setHasCasedChar()},CharacterSet({node:e},t){e.kind==="property"&&Wi.has(e.value)&&t.setHasCasedChar()}},xu={Alternative({body:e},t,n){return e.map(n).join("")},Assertion({kind:e,negate:t}){if(e==="string_end")return"$";if(e==="string_start")return"^";if(e==="word_boundary")return t?C`\B`:C`\b`;throw new Error(`Unexpected assertion kind "${e}"`)},Backreference({ref:e},t){if(typeof e!="number")throw new Error("Unexpected named backref in transformed AST");if(!t.useFlagMods&&t.accuracy==="strict"&&t.currentFlags.ignoreCase&&!t.captureMap.get(e).ignoreCase)throw new Error("Use of case-insensitive backref to case-sensitive group requires target ES2025 or non-strict accuracy");return"\\"+e},CapturingGroup(e,t,n){const{body:r,name:i,number:o}=e,s={ignoreCase:t.currentFlags.ignoreCase},a=t.originMap.get(e);return a&&(s.hidden=!0,o>a.number&&(s.transferTo=a.number)),t.captureMap.set(o,s),`(${i?`?<${i}>`:""}${r.map(n).join("|")})`},Character({value:e},t){const n=O(e),r=me(e,{escDigit:t.lastNode.type==="Backreference",inCharClass:t.inCharClass,useFlagV:t.useFlagV});if(r!==n)return r;if(t.useAppliedIgnoreCase&&t.currentFlags.ignoreCase&&xn(n)){const i=Hi(n);return t.inCharClass?i.join(""):i.length>1?`[${i.join("")}]`:i[0]}return n},CharacterClass(e,t,n){const{kind:r,negate:i,parent:o}=e;let{body:s}=e;if(r==="intersection"&&!t.useFlagV)throw new Error("Use of character class intersection requires min target ES2024");W.bugFlagVLiteralHyphenIsRange&&t.useFlagV&&s.some(kr)&&(s=[bt(45),...s.filter(u=>!kr(u))]);const a=()=>`[${i?"^":""}${s.map(n).join(r==="intersection"?"&&":"")}]`;if(!t.inCharClass){if((!t.useFlagV||W.bugNestedClassIgnoresNegation)&&!i){const p=s.filter(d=>d.type==="CharacterClass"&&d.kind==="union"&&d.negate);if(p.length){const d=H(),f=d.body[0];return d.parent=o,f.parent=d,s=s.filter(h=>!p.includes(h)),e.body=s,s.length?(e.parent=f,f.body.push(e)):d.body.pop(),p.forEach(h=>{const m=ce({body:[h]});h.parent=m,m.parent=d,d.body.push(m)}),n(d)}}t.inCharClass=!0;const u=a();return t.inCharClass=!1,u}const l=s[0];if(r==="union"&&!i&&l&&((!t.useFlagV||!t.verbose)&&o.kind==="union"&&!(W.bugFlagVLiteralHyphenIsRange&&t.useFlagV)||!t.verbose&&o.kind==="intersection"&&s.length===1&&l.type!=="CharacterClassRange"))return s.map(n).join("");if(!t.useFlagV&&o.type==="CharacterClass")throw new Error("Uses nested character class in a way that requires min target ES2024");return a()},CharacterClassRange(e,t){const n=e.min.value,r=e.max.value,i={escDigit:!1,inCharClass:!0,useFlagV:t.useFlagV},o=me(n,i),s=me(r,i),a=new Set;if(t.useAppliedIgnoreCase&&t.currentFlags.ignoreCase){const l=Yi(e);Mu(l).forEach(p=>{a.add(Array.isArray(p)?`${me(p[0],i)}-${me(p[1],i)}`:me(p,i))})}return`${o}-${s}${[...a].join("")}`},CharacterSet({kind:e,negate:t,value:n,key:r},i){if(e==="dot")return i.currentFlags.dotAll?i.appliedGlobalFlags.dotAll||i.useFlagMods?".":"[^]":C`[^\n]`;if(e==="digit")return t?C`\D`:C`\d`;if(e==="property"){if(i.useAppliedIgnoreCase&&i.currentFlags.ignoreCase&&Wi.has(n))throw new Error(`Unicode property "${n}" can't be case-insensitive when other chars have specific case`);return`${t?C`\P`:C`\p`}{${r?`${r}=`:""}${n}}`}if(e==="word")return t?C`\W`:C`\w`;throw new Error(`Unexpected character set kind "${e}"`)},Flags(e,t){return(t.appliedGlobalFlags.ignoreCase?"i":"")+(e.dotAll?"s":"")+(e.sticky?"y":"")},Group({atomic:e,body:t,flags:n,parent:r},i,o){const s=i.currentFlags;n&&(i.currentFlags=st(s,n));const a=t.map(o).join("|"),l=!i.verbose&&t.length===1&&r.type!=="Quantifier"&&!e&&(!i.useFlagMods||!n)?a:`(?${Gu(e,n,i.useFlagMods)}${a})`;return i.currentFlags=s,l},LookaroundAssertion({body:e,kind:t,negate:n},r,i){return`(?${`${t==="lookahead"?"":"<"}${n?"!":"="}`}${e.map(i).join("|")})`},Quantifier(e,t,n){return n(e.body)+Bu(e)},Subroutine({isRecursive:e,ref:t},n){if(!e)throw new Error("Unexpected non-recursive subroutine in transformed AST");const r=n.recursionLimit;return t===0?`(?R=${r})`:C`\g<${t}&R=${r}>`}},Du=new Set(["$","(",")","*","+",".","?","[","\\","]","^","{","|","}"]),Nu=new Set(["-","\\","]","^","["]),Vu=new Set(["(",")","-","/","[","\\","]","^","{","|","}","!","#","$","%","&","*","+",",",".",":",";","<","=",">","?","@","`","~"]),Cr=new Map([[9,C`\t`],[10,C`\n`],[11,C`\v`],[12,C`\f`],[13,C`\r`],[8232,C`\u2028`],[8233,C`\u2029`],[65279,C`\uFEFF`]]),$u=/^\p{Cased}$/u;function xn(e){return $u.test(e)}function Yi(e,t){const n=!!t?.firstOnly,r=e.min.value,i=e.max.value,o=[];if(r<65&&(i===65535||i>=131071)||r===65536&&i>=131071)return o;for(let s=r;s<=i;s++){const a=O(s);if(!xn(a))continue;const l=Hi(a).filter(u=>{const p=u.codePointAt(0);return pi});if(l.length&&(o.push(...l),n))break}return o}function me(e,{escDigit:t,inCharClass:n,useFlagV:r}){if(Cr.has(e))return Cr.get(e);if(e<32||e>126&&e<160||e>262143||t&&Uu(e))return e>255?`\\u{${e.toString(16).toUpperCase()}}`:`\\x${e.toString(16).toUpperCase().padStart(2,"0")}`;const i=n?r?Vu:Nu:Du,o=O(e);return(i.has(o)?"\\":"")+o}function Mu(e){const t=e.map(i=>i.codePointAt(0)).sort((i,o)=>i-o),n=[];let r=null;for(let i=0;i";let r="";if(t&&n){const{enable:i,disable:o}=t;r=(i?.ignoreCase?"i":"")+(i?.dotAll?"s":"")+(o?"-":"")+(o?.ignoreCase?"i":"")+(o?.dotAll?"s":"")}return`${r}:`}function Bu({kind:e,max:t,min:n}){let r;return!n&&t===1?r="?":!n&&t===1/0?r="*":n===1&&t===1/0?r="+":n===t?r=`{${n}}`:r=`{${n},${t===1/0?"":t}}`,r+{greedy:"",lazy:"?",possessive:"+"}[e]}function Ar({type:e}){return e==="CapturingGroup"||e==="Group"||e==="LookaroundAssertion"}function Uu(e){return e>47&&e<58}function kr({type:e,value:t}){return e==="Character"&&t===45}var Fu=class sn extends RegExp{#t=new Map;#e=null;#r;#n=null;#i=null;rawOptions={};get source(){return this.#r||"(?:)"}constructor(t,n,r){const i=!!r?.lazyCompile;if(t instanceof RegExp){if(r)throw new Error("Cannot provide options when copying a regexp");const o=t;super(o,n),this.#r=o.source,o instanceof sn&&(this.#t=o.#t,this.#n=o.#n,this.#i=o.#i,this.rawOptions=o.rawOptions)}else{const o={hiddenCaptures:[],strategy:null,transfers:[],...r};super(i?"":t,n),this.#r=t,this.#t=Hu(o.hiddenCaptures,o.transfers),this.#i=o.strategy,this.rawOptions=r??{}}i||(this.#e=this)}exec(t){if(!this.#e){const{lazyCompile:i,...o}=this.rawOptions;this.#e=new sn(this.#r,this.flags,o)}const n=this.global||this.sticky,r=this.lastIndex;if(this.#i==="clip_search"&&n&&r){this.lastIndex=0;const i=this.#o(t.slice(r));return i&&(ju(i,r,t,this.hasIndices),this.lastIndex+=r),i}return this.#o(t)}#o(t){this.#e.lastIndex=this.lastIndex;const n=super.exec.call(this.#e,t);if(this.lastIndex=this.#e.lastIndex,!n||!this.#t.size)return n;const r=[...n];n.length=1;let i;this.hasIndices&&(i=[...n.indices],n.indices.length=1);const o=[0];for(let s=1;s{const a=o[s];a&&(o[s]=[a[0]+t,a[1]+t])})}}function Hu(e,t){const n=new Map;for(const r of e)n.set(r,{hidden:!0});for(const[r,i]of t)for(const o of i)De(n,o,{}).transferTo=r;return n}function Wu(e){const t=/(?\((?:\?<(?![=!])(?[^>]+)>|(?!\?)))|\\?./gsu,n=new Map;let r=0,i=0,o;for(;o=t.exec(e);){const{0:s,groups:{capture:a,name:l}}=o;s==="["?r++:r?s==="]"&&r--:a&&(i++,l&&n.set(i,l))}return n}function zu(e,t){const n=qu(e,t);return n.options?new Fu(n.pattern,n.flags,n.options):new RegExp(n.pattern,n.flags)}function qu(e,t){const n=ji(t),r=Ni(e,{flags:n.flags,normalizeUnknownPropertyNames:!0,rules:{captureGroup:n.rules.captureGroup,singleline:n.rules.singleline},skipBackrefValidation:n.rules.allowOrphanBackrefs,unicodePropertyMap:On}),i=bu(r,{accuracy:n.accuracy,asciiWordBoundaries:n.rules.asciiWordBoundaries,avoidSubclass:n.avoidSubclass,bestEffortTarget:n.target}),o=Pu(i,n),s=uu(o.pattern,{captureTransfers:o._captureTransfers,hiddenCaptures:o._hiddenCaptures,mode:"external"}),a=au(s.pattern),l=su(a.pattern,{captureTransfers:s.captureTransfers,hiddenCaptures:s.hiddenCaptures}),u={pattern:l.pattern,flags:`${n.hasIndices?"d":""}${n.global?"g":""}${o.flags}${o.options.disable.v?"u":"v"}`};if(n.avoidSubclass){if(n.lazyCompileLength!==1/0)throw new Error("Lazy compilation requires subclass")}else{const p=l.hiddenCaptures.sort((m,E)=>m-E),d=Array.from(l.captureTransfers),f=i._strategy,h=u.pattern.length>=n.lazyCompileLength;(p.length||d.length||f||h)&&(u.options={...p.length&&{hiddenCaptures:p},...d.length&&{transfers:d},...f&&{strategy:f},...h&&{lazyCompile:h}})}return u}function Dn(e,t){return zu(e,{global:!0,hasIndices:!0,lazyCompileLength:3e3,rules:{allowOrphanBackrefs:!0,asciiWordBoundaries:!0,captureGroup:!0,recursionLimit:5,singleline:!0},...t})}function Zi(e={}){const t={target:"auto",cache:new Map,...e};return t.regexConstructor||=n=>Dn(n,{target:t.target}),{createScanner(n){return new cl(n,t)},createString(n){return{content:n}}}}Sr(an({bundledLanguages:()=>ut,bundledLanguagesAlias:()=>lt,bundledLanguagesBase:()=>at,bundledLanguagesInfo:()=>Ne,bundledThemes:()=>dt,bundledThemesInfo:()=>ct,codeToHast:()=>Cn,codeToHtml:()=>vn,codeToTokens:()=>An,codeToTokensBase:()=>kn,codeToTokensWithThemes:()=>Sn,createHighlighter:()=>Et,createJavaScriptRegexEngine:()=>Zi,createOnigurumaEngine:()=>un,defaultJavaScriptRegexConstructor:()=>Dn,getLastGrammarState:()=>Rn,getSingletonHighlighter:()=>Ln,loadWasm:()=>ft}),ul);const Ju=Object.freeze(Object.defineProperty({__proto__:null,ShikiError:L,addClassToHast:bn,applyColorReplacements:ee,bundledLanguages:ut,bundledLanguagesAlias:lt,bundledLanguagesBase:at,bundledLanguagesInfo:Ne,bundledThemes:dt,bundledThemesInfo:ct,codeToHast:Cn,codeToHtml:vn,codeToTokens:An,codeToTokensBase:kn,codeToTokensWithThemes:Sn,createBundledHighlighter:Si,createCssVariablesTheme:ll,createHighlighter:Et,createHighlighterCore:wn,createHighlighterCoreSync:sl,createJavaScriptRegexEngine:Zi,createOnigurumaEngine:un,createPositionConverter:hi,createShikiInternal:hs,createShikiInternalSync:ps,createShikiPrimitive:gt,createShikiPrimitiveAsync:fn,createSingletonShorthands:Ri,defaultJavaScriptRegexConstructor:Dn,flatTokenVariants:_i,getLastGrammarState:Rn,getSingletonHighlighter:Ln,getSingletonHighlighterCore:al,getTokenStyleObject:Pe,guessEmbeddedLanguages:fi,hastToHtml:Ci,isNoneTheme:Me,isPlainLang:$e,isSpecialLang:pn,isSpecialTheme:hn,loadWasm:ft,makeSingletonHighlighter:Li,makeSingletonHighlighterCore:ki,normalizeGetter:dn,normalizeTheme:mt,resolveColorReplacements:Ie,splitLines:Ge,splitToken:mi,splitTokens:gi,stringifyTokenStyle:rt,toArray:Wr,tokenizeAnsiWithTheme:bi,tokenizeWithTheme:Zr,tokensToHast:vi,transformerDecorations:yi},Symbol.toStringTag,{value:"Module"}));export{un as a,ut as b,Et as c,Zi as d,ll as e,vn as f,Pe as g,Ju as i,mt as n,rt as s,Va as t}; diff --git a/apps/kimi-code/dist-web/assets/index-Cj6xJi2l.css b/apps/kimi-code/dist-web/assets/index-Cj6xJi2l.css new file mode 100644 index 0000000000..5203fe8fa7 --- /dev/null +++ b/apps/kimi-code/dist-web/assets/index-Cj6xJi2l.css @@ -0,0 +1,32 @@ +.ui-action-card[data-v-e52e7748]{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);font-family:var(--font-ui);text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.ui-action-card[data-v-e52e7748]:hover:not(:disabled){border-color:var(--color-line-strong);background:var(--color-surface)}.ui-action-card[data-v-e52e7748]:focus-visible{outline:none;box-shadow:var(--p-focus-ring-strong)}.ui-action-card[data-v-e52e7748]:disabled{opacity:.5;cursor:not-allowed}.ui-action-card__leading[data-v-e52e7748]{align-self:flex-start;display:inline-flex;flex:none}.ui-action-card__text[data-v-e52e7748]{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.ui-action-card__title[data-v-e52e7748]{display:block;font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.ui-action-card__title[data-v-e52e7748] .ui-badge{margin-left:var(--space-2);vertical-align:middle}.ui-action-card__hint[data-v-e52e7748]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal)}.ui-action-card__chevron[data-v-e52e7748]{color:var(--color-text-faint);flex:none}.ui-tip__bubble[data-v-19764006]{position:fixed;z-index:var(--z-tooltip);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--tip-lines);max-width:280px;padding:4px 8px;border-radius:var(--radius-sm);background:var(--color-text);color:var(--color-bg);font-family:var(--font-ui);font-size:var(--text-xs);line-height:1.35;overflow:hidden;overflow-wrap:anywhere;pointer-events:none;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.ui-tip__bubble.positioned[data-v-19764006]{opacity:1}.ui-icon-button[data-v-ae430378]{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0;border:var(--p-hairline) solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.ui-icon-button[data-v-ae430378]:hover:not(:disabled){background:var(--color-hover);color:var(--color-text)}.ui-icon-button.is-pressed[data-v-ae430378]{background:var(--color-selected);color:var(--color-text)}.ui-icon-button.is-pressed[data-v-ae430378]:hover:not(:disabled){background:var(--color-selected-hover)}.ui-icon-button[data-v-ae430378]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ui-icon-button[data-v-ae430378]:disabled{opacity:.5;cursor:not-allowed}.ui-icon-button--sm[data-v-ae430378]{width:var(--icon-button-sm);height:var(--icon-button-sm);border-radius:var(--radius-sm)}.ui-icon-button--md[data-v-ae430378]{width:32px;height:32px}.ui-icon-button--lg[data-v-ae430378]{width:44px;height:44px}.ui-icon-button[data-v-ae430378] svg{width:var(--p-ic-md);height:var(--p-ic-md)}.ui-icon-button--sm[data-v-ae430378] svg{width:var(--p-ic-md);height:var(--p-ic-md)}.ui-icon-button--lg[data-v-ae430378] svg{width:var(--p-ic-lg);height:var(--p-ic-lg)}.ui-action-toast-host[data-v-23d7613a]{position:fixed;top:calc(48px + var(--space-2));left:50%;translate:-50% 0;z-index:var(--z-toast);max-width:calc(100vw - 32px)}.ui-action-toast[data-v-23d7613a]{display:flex;align-items:center;gap:var(--space-2);padding:4px 6px 4px 14px;background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);font-family:var(--font-ui);font-size:var(--text-base);line-height:1.45;color:var(--color-text);white-space:nowrap}.ui-action-toast__body[data-v-23d7613a]{min-width:0}.ui-action-toast__body button[data-v-23d7613a-s]{border:0;padding:0;margin-inline:var(--space-1);background:none;color:var(--color-accent);cursor:pointer;font:inherit}.ui-action-toast__body button[data-v-23d7613a-s]:hover{color:var(--color-accent-hover);text-decoration:underline}.ui-action-toast__body button[data-v-23d7613a-s]:focus-visible{outline:none;box-shadow:var(--p-focus-ring);border-radius:var(--radius-xs)}.ui-action-toast__close[data-v-23d7613a]{flex:none}.ui-badge[data-v-8fbd890a]{display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-full);font-family:var(--font-ui);font-weight:var(--weight-medium);line-height:1;white-space:nowrap;border:var(--p-hairline) solid transparent}.ui-badge--md[data-v-8fbd890a]{height:22px;padding:0 9px;font-size:var(--text-xs)}.ui-badge--sm[data-v-8fbd890a]{height:18px;padding:0 7px;font-size:11px}.ui-badge--lg[data-v-8fbd890a]{padding:0 var(--space-2);font-size:var(--md-b3);line-height:var(--leading-normal);border-radius:var(--radius-md);white-space:normal;overflow-wrap:anywhere}.ui-badge__dot[data-v-8fbd890a]{width:6px;height:6px;border-radius:var(--radius-full);background:currentColor;flex:none}.ui-badge--neutral[data-v-8fbd890a]{background:var(--color-surface-sunken);color:var(--color-text-muted);border-color:var(--color-line)}.ui-badge--soft[data-v-8fbd890a]{background:var(--color-selected);color:var(--color-text)}.ui-badge--info[data-v-8fbd890a]{background:var(--color-accent-soft);color:var(--color-accent-hover);border-color:var(--color-accent-bd)}.ui-badge--success[data-v-8fbd890a]{background:var(--color-success-soft);color:var(--color-success);border-color:var(--color-success-bd)}.ui-badge--warning[data-v-8fbd890a]{background:var(--color-warning-soft);color:var(--color-warning);border-color:var(--color-warning-bd)}.ui-badge--danger[data-v-8fbd890a]{background:var(--color-danger-soft);color:var(--color-danger);border-color:var(--color-danger-bd)}.ui-badge--solid[data-v-8fbd890a]{background:var(--color-text);color:var(--color-bg)}.ui-banner[data-v-6d8a7768]{display:flex;align-items:center;gap:10px;padding:10px 14px;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-normal)}.ui-banner__icon[data-v-6d8a7768]{display:inline-flex;flex:none}.ui-banner__icon svg[data-v-6d8a7768]{width:18px;height:18px}.ui-banner--info[data-v-6d8a7768]{background:var(--color-accent-soft);border-color:var(--color-accent-bd)}.ui-banner--warning[data-v-6d8a7768]{background:var(--color-warning-soft);border-color:var(--color-warning-bd)}.ui-banner--danger[data-v-6d8a7768]{background:var(--color-danger-soft);border-color:var(--color-danger-bd)}.ui-banner--info .ui-banner__icon[data-v-6d8a7768]{color:var(--color-accent)}.ui-banner--warning .ui-banner__icon[data-v-6d8a7768]{color:var(--color-warning)}.ui-banner--danger .ui-banner__icon[data-v-6d8a7768]{color:var(--color-danger)}.ui-spinner[data-v-bf7852f3]{display:inline-flex;flex:none;color:var(--color-accent)}.ui-spinner--xs[data-v-bf7852f3]{width:var(--p-ic-md);height:var(--p-ic-md)}.ui-spinner--xs .ui-spinner__track[data-v-bf7852f3],.ui-spinner--xs .ui-spinner__arc[data-v-bf7852f3]{r:10.875px;stroke-width:calc(var(--p-ring-stroke) * 1.5)}.ui-spinner--xs .ui-spinner__arc[data-v-bf7852f3]{stroke-dasharray:67.7 67.7;stroke-dashoffset:45.9}.ui-spinner--sm[data-v-bf7852f3]{width:14px;height:14px}.ui-spinner--md[data-v-bf7852f3]{width:18px;height:18px}.ui-spinner--lg[data-v-bf7852f3]{width:28px;height:28px}.ui-spinner__svg[data-v-bf7852f3]{width:100%;height:100%}.ui-spinner__track[data-v-bf7852f3]{fill:none;stroke:var(--color-line);stroke-width:2.2}.ui-spinner__arc[data-v-bf7852f3]{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:56 56;stroke-dashoffset:38}.ui-button[data-v-e1f48763]{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:var(--p-hairline) solid transparent;border-radius:var(--radius-md);font-family:var(--font-ui);font-weight:var(--weight-medium);line-height:1;cursor:pointer;white-space:nowrap;transition:background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.ui-button[data-v-e1f48763]:focus-visible{outline:none;box-shadow:var(--p-focus-ring-strong)}.ui-button[data-v-e1f48763]:not(:disabled):active{transform:scale(.98)}.ui-button[data-v-e1f48763]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.ui-button--xs[data-v-e1f48763]{height:24px;padding:0 var(--space-2);font-size:var(--text-xs);border-radius:var(--radius-sm)}.ui-button--sm[data-v-e1f48763]{height:30px;padding:0 var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-sm)}.ui-button--md[data-v-e1f48763]{height:36px;padding:0 var(--space-4);font-size:var(--text-base)}.ui-button--lg[data-v-e1f48763]{height:42px;padding:0 var(--space-5);font-size:15px;border-radius:var(--radius-lg)}.ui-button__content[data-v-e1f48763]{display:inline-flex;align-items:center;gap:var(--space-2)}.ui-button__content[data-v-e1f48763] svg{flex:none}.ui-button__content[data-v-e1f48763] svg:not([width]){width:1em;height:1em}.ui-button--primary[data-v-e1f48763]{background:var(--color-accent);color:var(--color-text-on-accent);border-color:var(--color-accent);box-shadow:var(--shadow-xs)}.ui-button--primary[data-v-e1f48763]:not(:disabled):hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.ui-button--secondary[data-v-e1f48763]{background:var(--color-surface-raised);color:var(--color-text);border-color:var(--color-line-strong);box-shadow:var(--shadow-xs)}.ui-button--secondary[data-v-e1f48763]:not(:disabled):hover{border-color:var(--color-line-strong);background:var(--color-hover)}.ui-button--inverted[data-v-e1f48763]{background:var(--color-send-bg);color:var(--color-send-icon);border-color:transparent;box-shadow:var(--shadow-xs)}.ui-button--inverted[data-v-e1f48763]:not(:disabled):hover{background:var(--color-send-bg-hover)}.ui-button--inverted[data-v-e1f48763]:disabled{background:var(--color-send-bg-disabled);color:var(--color-send-icon-disabled);opacity:1}.ui-button--ghost[data-v-e1f48763]{background:transparent;color:var(--color-text-muted);border-color:transparent}.ui-button--ghost[data-v-e1f48763]:not(:disabled):hover{background:var(--color-hover);color:var(--color-text-strong)}.ui-button--danger[data-v-e1f48763]{background:var(--color-danger);color:var(--color-text-on-accent);border-color:var(--color-danger);box-shadow:var(--shadow-xs)}.ui-button--danger[data-v-e1f48763]:not(:disabled):hover{filter:brightness(.96)}.ui-button--danger-soft[data-v-e1f48763]{background:var(--color-danger-soft);color:var(--color-danger);border-color:var(--color-danger-bd)}.ui-button--danger-soft[data-v-e1f48763]:not(:disabled):hover{background:var(--color-danger);color:var(--color-text-on-accent);border-color:var(--color-danger)}.ui-button--orange-soft[data-v-e1f48763]{background:var(--color-orange-soft);color:var(--color-orange);border-color:transparent}.ui-button--text[data-v-e1f48763]{height:auto;padding:0;background:transparent;border-color:transparent;border-radius:var(--radius-xs);color:var(--color-text-muted);font-size:inherit;font-weight:inherit;text-decoration:underline;text-underline-offset:2px}.ui-button--text[data-v-e1f48763]:not(:disabled):hover{color:var(--color-text)}.ui-button--text[data-v-e1f48763]:not(:disabled):active{transform:none}.ui-button.is-loading .ui-button__content[data-v-e1f48763]{opacity:.7}.ui-button .ui-button__spinner[data-v-e1f48763]{flex:none;color:inherit}.ui-button__spinner[data-v-e1f48763] .ui-spinner__track{opacity:.35}.ui-card[data-v-cda946c0]{background:var(--color-surface);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);overflow:hidden}.ui-card.is-elevated[data-v-cda946c0]{box-shadow:var(--shadow-md);border-color:transparent}.ui-card__head[data-v-cda946c0]{display:flex;align-items:center;gap:var(--space-2);padding:10px 14px;border-bottom:var(--p-hairline) solid var(--color-line);background:var(--color-surface);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text)}.ui-card__body[data-v-cda946c0]{padding:14px;color:var(--color-text-muted)}.ui-card--sm>.ui-card__body[data-v-cda946c0]{padding:var(--space-2) var(--space-3)}.ui-card__foot[data-v-cda946c0]{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:10px 14px;border-top:var(--p-hairline) solid var(--color-line);background:var(--color-surface)}.ui-check[data-v-acffd4ba]{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.ui-check.is-disabled[data-v-acffd4ba]{opacity:.5;cursor:not-allowed}.ui-check__input[data-v-acffd4ba]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.ui-check__box[data-v-acffd4ba]{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;flex:none;border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text-on-accent);transition:background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.ui-check.is-on .ui-check__box[data-v-acffd4ba]{background:var(--color-accent);border-color:var(--color-accent)}.ui-check__input:focus-visible+.ui-check__box[data-v-acffd4ba]{box-shadow:var(--p-focus-ring)}.ui-check__box svg[data-v-acffd4ba]{width:12px;height:12px}.ui-check__label[data-v-acffd4ba]{font-family:var(--font-ui);font-size:var(--text-base);color:var(--color-text)}.ctx-ring[data-v-ef2d1b6a]{width:16px;height:16px;flex:none;transform:rotate(-90deg)}.ctx-ring-track[data-v-ef2d1b6a]{stroke:var(--line)}.ctx-ring-fill[data-v-ef2d1b6a]{stroke:var(--color-accent);transition:stroke-dashoffset .3s ease,stroke .3s ease}.ctx-ring-origin[data-v-ef2d1b6a]{fill:var(--color-accent)}.ctx-ring--indeterminate .ctx-ring-fill[data-v-ef2d1b6a]{transform-box:view-box;transform-origin:center;transition:stroke .3s ease;animation:ctx-ring-spin-ef2d1b6a var(--duration-flash) linear infinite}@keyframes ctx-ring-spin-ef2d1b6a{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ctx-ring--indeterminate .ctx-ring-fill[data-v-ef2d1b6a]{animation:none}}.ui-dialog__overlay[data-v-c33919d1]{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:#0d111747;animation:kimi-dialog-overlay-in-c33919d1 var(--duration-base) var(--ease-out)}@keyframes kimi-dialog-overlay-in-c33919d1{0%{opacity:0}to{opacity:1}}.ui-dialog[data-v-c33919d1]{max-height:calc(100vh - var(--space-8) * 2);display:flex;flex-direction:column;background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);outline:none;overflow:hidden;animation:kimi-card-in var(--duration-slow) var(--ease-out)}.ui-dialog--sm[data-v-c33919d1]{width:min(360px,100%)}.ui-dialog--md[data-v-c33919d1]{width:min(440px,100%)}.ui-dialog--lg[data-v-c33919d1]{width:min(640px,100%)}.ui-dialog--xl[data-v-c33919d1]{width:min(880px,100%)}.ui-dialog--fixed-height[data-v-c33919d1]{height:min(680px,calc(100vh - var(--space-8) * 2))}.ui-dialog--grouped[data-v-c33919d1]{background:var(--color-bg)}.ui-dialog--flush .ui-dialog__body[data-v-c33919d1]{padding:0}.ui-dialog__head[data-v-c33919d1]{display:flex;align-items:flex-start;gap:var(--space-3);padding:20px var(--dialog-pad-x) 14px}.ui-dialog__titles[data-v-c33919d1]{flex:1;min-width:0}.ui-dialog__title[data-v-c33919d1]{font-size:var(--text-lg);font-weight:500;color:var(--color-text);line-height:var(--leading-tight);overflow-wrap:anywhere}.ui-dialog__desc[data-v-c33919d1]{margin-top:4px;font-size:var(--text-base);color:var(--color-text-muted)}.ui-dialog__close[data-v-c33919d1]{flex:none;margin-top:-2px}.ui-dialog__body[data-v-c33919d1]{flex:1;min-height:0;padding:4px var(--dialog-pad-x) 18px;color:var(--color-text);overflow:auto}.ui-dialog__foot[data-v-c33919d1]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px var(--dialog-pad-x) 20px}@media(max-width:640px){.ui-dialog__overlay[data-v-c33919d1]{align-items:flex-end;padding:0;top:var(--app-top, 0px);bottom:auto;height:100vh;height:100dvh;height:var(--app-height, 100dvh)}.ui-dialog[data-v-c33919d1]{width:100%;max-width:100%;max-height:calc(var(--app-height, 100dvh) * .86);border-right:none;border-bottom:none;border-left:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding-bottom:var(--safe-bottom, 0px);animation:ui-dialog-sheet-up-c33919d1 var(--duration-slow) var(--ease-out)}.ui-dialog--fixed-height[data-v-c33919d1]{height:calc(var(--app-height, 100dvh) * .86)}}@keyframes ui-dialog-sheet-up-c33919d1{0%{transform:translateY(101%)}to{transform:translateY(0)}}.ui-empty[data-v-a8b39ebb]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;color:var(--color-text-muted)}.ui-empty__icon[data-v-a8b39ebb]{color:var(--color-text-faint)}.ui-empty__icon[data-v-a8b39ebb] svg{width:48px;height:48px}.ui-empty__title[data-v-a8b39ebb]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text-muted)}.ui-empty__hint[data-v-a8b39ebb]{font-size:var(--text-sm);color:var(--color-text-muted)}.ui-empty--lg .ui-empty__title[data-v-a8b39ebb]{font-size:var(--text-xl);line-height:var(--leading-tight);color:var(--color-text)}.ui-favicon[data-ink=dark][data-v-93ad484b]{filter:var(--favicon-dark-ink-filter)}.ui-favicon[data-ink=light][data-v-93ad484b]{filter:var(--favicon-light-ink-filter)}.ui-field[data-v-a6fe84a4]{display:flex;flex-direction:column;gap:6px}.ui-field__label[data-v-a6fe84a4]{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted)}.ui-field__hint[data-v-a6fe84a4]{font-size:var(--text-xs);color:var(--color-text-faint)}.ui-field__error[data-v-a6fe84a4]{font-size:var(--text-xs);color:var(--color-danger)}.ui-input[data-v-790e4789]{width:100%;border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface-overlay);box-shadow:var(--shadow-xs);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal);padding:0 var(--space-3);transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.ui-input--md[data-v-790e4789]{height:38px}.ui-input--xs[data-v-790e4789]{height:var(--space-6);padding-inline:var(--space-2);font-size:var(--text-sm);border-radius:var(--radius-sm)}.ui-input--sm[data-v-790e4789]{height:32px;font-size:var(--text-sm);border-radius:var(--radius-sm)}.ui-input.is-embedded[data-v-790e4789]{border:none;background:transparent;box-shadow:none;padding-inline:0}.ui-input.is-embedded[data-v-790e4789]:focus{box-shadow:none}.ui-input[data-v-790e4789]::placeholder{color:var(--color-text-faint)}.ui-input[data-v-790e4789]:hover:not(:disabled):not(:focus){border-color:var(--color-line-strong)}.ui-input[data-v-790e4789]:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--p-focus-ring)}.ui-input[data-v-790e4789]:disabled{opacity:.5;cursor:not-allowed}.ui-input[readonly][data-v-790e4789]{background:var(--color-surface-sunken)}.ui-input.has-error[data-v-790e4789]{border-color:var(--color-danger)}.ui-input.has-error[data-v-790e4789]:focus{box-shadow:0 0 0 3px var(--color-danger-soft)}.ui-kbd[data-v-94e6fa5b]{display:inline-flex;align-items:center;gap:3px;flex:none}.ui-kbd__key[data-v-94e6fa5b]{display:inline-flex;align-items:center;justify-content:center;min-width:var(--kbd-min-width);height:var(--kbd-height);padding:0 var(--kbd-padding-x);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-xs);background:transparent;color:inherit;font-family:var(--font-kbd);font-size:var(--kbd-font-size);line-height:var(--leading-solid)}.ui-kbd--button .ui-kbd__key[data-v-94e6fa5b]{background:color-mix(in srgb,currentColor 16%,transparent);border-color:color-mix(in srgb,currentColor 35%,transparent);box-shadow:0 1px color-mix(in srgb,currentColor 12%,transparent)}.ui-link[data-v-2c379b58]{color:var(--color-accent);text-decoration:none;cursor:pointer;font:inherit;transition:color var(--duration-base) var(--ease-out)}.ui-link[data-v-2c379b58]:hover{color:var(--color-accent-hover);text-decoration:underline}.ui-link[data-v-2c379b58]:focus-visible{outline:none;box-shadow:var(--p-focus-ring);border-radius:var(--radius-xs)}.ui-link--muted[data-v-2c379b58]{color:var(--color-text-muted)}.ui-link--muted[data-v-2c379b58]:hover{color:var(--color-text)}.ui-menu[data-v-c75ed4a2]{min-width:180px;padding:var(--menu-pad);background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);display:flex;flex-direction:column}.ui-menu-item[data-v-4b436907]{display:flex;align-items:center;gap:7px;width:100%;padding:var(--menu-item-padding-block) var(--menu-item-padding-inline);border:none;border-radius:var(--radius-menu-item);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-option-label);line-height:var(--leading-tight);text-align:left;cursor:pointer;transition:background var(--duration-base),color var(--duration-base)}.ui-menu-item[data-v-4b436907]:hover:not(:disabled):not(.is-active):not(.is-danger){background:var(--color-hover);color:var(--color-text-strong)}.ui-menu-item[data-v-4b436907]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ui-menu-item[data-v-4b436907]:disabled{opacity:.5;cursor:not-allowed}.ui-menu-item.is-active[data-v-4b436907]{background:var(--color-hover);color:var(--color-text)}.ui-menu-item.is-danger[data-v-4b436907]{color:var(--color-danger)}.ui-menu-item.is-danger[data-v-4b436907]:hover:not(:disabled){background:var(--color-hover)}.ui-menu-item[data-v-4b436907] svg{display:block;width:16px;height:16px;flex:none;color:var(--muted);transition:color var(--duration-base)}.ui-menu-item[data-v-4b436907]:hover:not(:disabled):not(.is-active):not(.is-danger) svg{color:var(--color-text-strong)}.ui-menu-item.is-active[data-v-4b436907] svg{color:var(--color-text)}.ui-menu-item.is-danger[data-v-4b436907] svg{color:var(--color-danger)}.ui-menu-item--lg[data-v-4b436907]{min-height:44px;padding:12px 14px;font-size:var(--text-sm)}.ui-menu-item-row[data-v-4b436907]{display:flex;align-items:center;border-radius:var(--radius-menu-item);transition:background var(--duration-base)}.ui-menu-item-row>.ui-menu-item[data-v-4b436907]{flex:1;min-width:0}.ui-menu-item-row[data-v-4b436907]:hover:not(.is-disabled),.ui-menu-item-row.is-active[data-v-4b436907]{background:var(--color-hover)}.ui-menu-item-row>.ui-menu-item[data-v-4b436907]:hover:not(:disabled):not(.is-active):not(.is-danger),.ui-menu-item-row>.ui-menu-item.is-active[data-v-4b436907]{background:transparent}.ui-menu-item__action[data-v-4b436907]{flex:none;display:inline-flex;align-items:center;gap:var(--space-1);padding-inline-end:var(--space-1)}.ui-menu-item__action[data-v-4b436907]:empty{display:none}.ui-menu-sep[data-v-4b436907]{height:1px;margin:4px 0;background:var(--color-line)}.ui-tip[data-v-4f57efde]{display:contents}.ui-panel-header[data-v-3f73fde3]{flex:none;display:flex;align-items:center;gap:var(--space-2);height:var(--panel-head-h, 48px);padding:0 var(--panel-head-inset, 11px) 0 var(--space-3);box-sizing:border-box;min-width:0;border-bottom:var(--p-hairline) solid var(--color-line);background:var(--bg)}.ui-panel-header__title[data-v-3f73fde3]{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--weight-semibold) var(--ui-b2) var(--font-ui);color:var(--color-text)}.ui-panel-header__sub[data-v-3f73fde3]{flex:1 1 0%;min-width:20%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--ui-c1) var(--font-ui);color:var(--color-text-muted)}.ui-panel-header__close[data-v-3f73fde3]{flex:none;margin-left:auto}.ui-panel-header.wrap[data-v-3f73fde3]{flex-wrap:wrap;height:auto;min-height:var(--panel-head-h, 48px);padding-top:3px;padding-bottom:3px;gap:4px 6px}.ui-panel-header.wrap .ui-panel-header__close[data-v-3f73fde3]{margin-left:0}.ui-pill[data-v-827de660]{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:var(--p-hairline) solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:1;white-space:nowrap;cursor:default;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}button.ui-pill[data-v-827de660]{cursor:pointer}button.ui-pill[data-v-827de660]:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-strong)}button.ui-pill[data-v-827de660]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}button.ui-pill[data-v-827de660]:disabled{opacity:.5;cursor:not-allowed}.ui-pill.is-active[data-v-827de660]{background:var(--color-accent-soft);color:var(--color-accent)}.ui-pill[data-v-827de660] svg{width:var(--p-ic-sm);height:var(--p-ic-sm);flex:none;color:var(--color-text-faint)}.ui-scroll-area[data-v-657c8668]{position:relative;min-width:0;min-height:0;overflow:hidden}.ui-scroll-area__viewport[data-v-657c8668]{width:100%;height:100%;scrollbar-width:none}.ui-scroll-area__viewport[data-v-657c8668]::-webkit-scrollbar{display:none}.ui-scroll-area__viewport[data-v-657c8668]:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.ui-scroll-area__bar[data-v-657c8668]{position:absolute;z-index:3;opacity:0;pointer-events:none;touch-action:none;transition:opacity var(--duration-base) var(--ease-out)}.ui-scroll-area__bar.is-visible[data-v-657c8668]{opacity:1;pointer-events:auto}.ui-scroll-area__bar--vertical[data-v-657c8668]{inset:var(--ui-scroll-area-track-inset, 2px) 2px var(--ui-scroll-area-track-inset, 2px) auto;width:10px}.ui-scroll-area__bar--horizontal[data-v-657c8668]{inset:auto var(--ui-scroll-area-track-inset, 2px) 2px var(--ui-scroll-area-track-inset, 2px);height:10px}.ui-scroll-area__thumb[data-v-657c8668]{position:absolute;display:block;border-radius:999px;background:color-mix(in srgb,var(--color-text-muted) 62%,transparent);transition:background var(--duration-fast) var(--ease-out),width var(--duration-fast) var(--ease-out),height var(--duration-fast) var(--ease-out)}.ui-scroll-area__bar--vertical .ui-scroll-area__thumb[data-v-657c8668]{right:1px;width:4px}.ui-scroll-area__bar--horizontal .ui-scroll-area__thumb[data-v-657c8668]{bottom:1px;height:4px}.ui-scroll-area__bar:hover .ui-scroll-area__thumb[data-v-657c8668],.ui-scroll-area__thumb[data-v-657c8668]:active{background:color-mix(in srgb,var(--color-text-muted) 82%,transparent)}.ui-scroll-area__bar--vertical:hover .ui-scroll-area__thumb[data-v-657c8668],.ui-scroll-area__bar--vertical .ui-scroll-area__thumb[data-v-657c8668]:active{width:6px}.ui-scroll-area__bar--horizontal:hover .ui-scroll-area__thumb[data-v-657c8668],.ui-scroll-area__bar--horizontal .ui-scroll-area__thumb[data-v-657c8668]:active{height:6px}.ui-seg[data-v-d1055351]{position:relative;display:inline-flex;gap:2px;padding:2px;background:var(--color-surface-sunken);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md)}.ui-seg__item[data-v-d1055351]{position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--space-1);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-weight:var(--weight-medium);cursor:pointer;line-height:1;white-space:nowrap;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.ui-seg__swatch[data-v-d1055351]{width:7px;height:7px;border:var(--p-hairline) solid color-mix(in srgb,currentColor 22%,transparent);border-radius:50%;flex:none}.ui-seg__icon[data-v-d1055351]{flex:none}.ui-seg--md .ui-seg__item[data-v-d1055351]{padding:5px var(--space-3);font-size:var(--text-sm)}.ui-seg--sm .ui-seg__item[data-v-d1055351]{height:24px;padding:0 var(--space-2);font-size:var(--text-sm)}.ui-seg--xs .ui-seg__item[data-v-d1055351]{height:20px;padding:0 var(--space-2);font-size:var(--text-xs)}.ui-seg__item[data-v-d1055351]:hover:not(.is-on):not(:disabled){color:var(--color-text)}.ui-seg--disabled[data-v-d1055351]{opacity:.5}.ui-seg__item[data-v-d1055351]:disabled{cursor:not-allowed}.ui-seg__item.is-on[data-v-d1055351]{color:var(--color-text);background:var(--color-surface-raised);box-shadow:var(--shadow-sm)}.ui-seg__item[data-v-d1055351]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ui-select[data-v-e6b12a18]{position:relative;width:100%;font-family:var(--font-ui)}.ui-select__trigger[data-v-e6b12a18]{display:flex;align-items:center;gap:var(--space-2);width:100%;height:100%;padding:0 var(--space-3);border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-md);background:transparent;box-shadow:none;color:var(--color-text);font:inherit;font-size:var(--text-base);line-height:var(--leading-normal);text-align:left;cursor:pointer;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out)}.ui-select--md[data-v-e6b12a18]{height:38px}.ui-select--sm[data-v-e6b12a18]{height:32px}.ui-select--sm .ui-select__trigger[data-v-e6b12a18]{font-size:var(--text-sm)}.ui-select__trigger[data-v-e6b12a18]:hover:not(:disabled){border-color:var(--color-line-strong)}.ui-select__trigger[data-v-e6b12a18]:focus-visible,.ui-select.is-open .ui-select__trigger[data-v-e6b12a18]{outline:none;border-color:var(--color-accent);box-shadow:var(--p-focus-ring)}.ui-select.has-error .ui-select__trigger[data-v-e6b12a18]{border-color:var(--color-danger)}.ui-select.has-error .ui-select__trigger[data-v-e6b12a18]:focus-visible{box-shadow:0 0 0 3px var(--color-danger-soft)}.ui-select__value[data-v-e6b12a18]{min-width:0;flex:1;display:flex;align-items:center;gap:var(--space-2);overflow:hidden;white-space:nowrap}.ui-select__value-text[data-v-e6b12a18]{min-width:0;overflow:hidden;text-overflow:ellipsis}.ui-select__value.is-placeholder[data-v-e6b12a18]{color:var(--color-text-faint)}.ui-select__icon[data-v-e6b12a18]{flex:none;width:14px;height:14px;border-radius:3px}.ui-select__icon--option[data-v-e6b12a18]{width:16px;height:16px;border-radius:4px}.ui-select__chevron[data-v-e6b12a18]{flex:none;color:var(--color-text-muted);transition:transform var(--duration-base) var(--ease-out)}.ui-select.is-open .ui-select__chevron[data-v-e6b12a18]{transform:rotate(180deg)}.ui-select.is-disabled[data-v-e6b12a18]{opacity:.5}.ui-select.is-disabled .ui-select__trigger[data-v-e6b12a18]{cursor:not-allowed}.ui-select__menu[data-v-e6b12a18]{position:fixed;z-index:var(--z-modal-dropdown);max-height:260px;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-1);border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);box-shadow:var(--shadow-lg)}.ui-select__group[data-v-e6b12a18]{padding:var(--space-2) var(--space-2) var(--space-1);color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-medium)}.ui-select__option[data-v-e6b12a18]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:32px;padding:var(--space-1) var(--space-2);border:none;border-radius:var(--radius-select-option);background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer}.ui-select__option.is-active[data-v-e6b12a18]{background:var(--color-hover);color:var(--color-text-strong)}.ui-select__option[data-v-e6b12a18]:disabled{opacity:.45;cursor:not-allowed}.ui-select__check[data-v-e6b12a18]{flex:none;color:transparent}.ui-select__option.is-selected .ui-select__check[data-v-e6b12a18]{color:var(--color-accent)}.ui-skeleton[data-v-861ece71]{display:block;border-radius:var(--radius-sm);background:var(--color-surface-sunken);animation:ui-skeleton-breathe-861ece71 1.2s var(--ease-in-out) infinite}.ui-skeleton.is-circle[data-v-861ece71]{border-radius:var(--radius-full)}@keyframes ui-skeleton-breathe-861ece71{0%,to{opacity:.5}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.ui-skeleton[data-v-861ece71]{animation:none;opacity:.6}}.kw-dot[data-v-ddf97fc4]{width:7px;height:7px;border-radius:var(--radius-full);background:var(--color-text-faint);flex:none}.kw-dot--ok[data-v-ddf97fc4]{background:var(--color-success)}.kw-dot--error[data-v-ddf97fc4]{background:var(--color-danger)}.kw-dot--suspended[data-v-ddf97fc4]{background:var(--color-warning)}.kw-dot--running[data-v-ddf97fc4]{background:var(--color-accent);position:relative}.kw-dot--running[data-v-ddf97fc4]:after{content:"";position:absolute;inset:0;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-accent) 40%,transparent);animation:kw-dot-pulse-ddf97fc4 1.4s var(--ease-out) infinite}@keyframes kw-dot-pulse-ddf97fc4{0%{transform:scale(1);opacity:1}to{transform:scale(2.7);opacity:0}}.ui-switch[data-v-3cf7b836]{position:relative;width:36px;height:20px;flex:none;padding:0;border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-full);background:var(--color-line-strong);cursor:pointer;transition:background var(--duration-slow) var(--ease-in-out)}.ui-switch.is-on[data-v-3cf7b836]{background:var(--color-accent)}.ui-switch[data-v-3cf7b836]:disabled{opacity:.5;cursor:not-allowed}.ui-switch[data-v-3cf7b836]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ui-switch__thumb[data-v-3cf7b836]{position:absolute;top:50%;left:1.5px;width:var(--space-4);height:var(--space-4);border-radius:var(--radius-full);background:var(--color-text-on-accent);box-shadow:var(--shadow-xs);transform:translateY(-50%);transition:left var(--duration-slow) var(--ease-in-out),width var(--duration-slow) var(--ease-in-out)}.ui-switch:not(:disabled):hover .ui-switch__thumb[data-v-3cf7b836]{width:calc(var(--space-4) * 1.125)}.ui-switch.is-on .ui-switch__thumb[data-v-3cf7b836]{left:calc(100% - var(--space-4) - 1.5px)}.ui-switch.is-on:not(:disabled):hover .ui-switch__thumb[data-v-3cf7b836]{left:calc(100% - var(--space-4) * 1.125 - 1.5px)}.ui-textarea[data-v-a08469a1]{width:100%;min-height:84px;resize:vertical;border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface-overlay);box-shadow:var(--shadow-xs);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal);padding:10px 12px;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.ui-textarea--sm[data-v-a08469a1]{min-height:4rem;padding:var(--space-2);font-size:var(--text-sm)}.ui-textarea[data-v-a08469a1]::placeholder{color:var(--color-text-faint)}.ui-textarea.is-autosize[data-v-a08469a1]{overflow:hidden}.ui-textarea.no-resize[data-v-a08469a1]{resize:none}.ui-textarea[data-v-a08469a1]:hover:not(:disabled):not(:focus){border-color:var(--color-line-strong)}.ui-textarea[data-v-a08469a1]:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--p-focus-ring)}.ui-textarea[data-v-a08469a1]:disabled{opacity:.5;cursor:not-allowed}.ui-textarea[readonly][data-v-a08469a1]{background:var(--color-surface-sunken)}.ui-textarea.has-error[data-v-a08469a1]{border-color:var(--color-danger)}.ui-textarea.has-error[data-v-a08469a1]:focus{box-shadow:0 0 0 3px var(--color-danger-soft)}.ui-toast[data-v-ed19c769]{display:flex;align-items:flex-start;gap:11px;width:360px;max-width:100%;padding:13px 14px;background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);font-family:var(--font-ui);line-height:1.45}.ui-toast__icon[data-v-ed19c769]{flex:none;width:20px;height:20px;margin-top:1px;border-radius:var(--radius-full);display:grid;place-items:center;background:var(--color-accent-soft);color:var(--color-accent)}.ui-toast__icon svg[data-v-ed19c769]{width:12px;height:12px}.ui-toast--success .ui-toast__icon[data-v-ed19c769]{background:var(--color-success-soft);color:var(--color-success)}.ui-toast--warning .ui-toast__icon[data-v-ed19c769]{background:var(--color-warning-soft);color:var(--color-warning)}.ui-toast--danger .ui-toast__icon[data-v-ed19c769]{background:var(--color-danger-soft);color:var(--color-danger)}.ui-toast--danger[data-v-ed19c769]{border-color:color-mix(in srgb,var(--color-danger) 35%,transparent)}.ui-toast__body[data-v-ed19c769]{flex:1;min-width:0}.ui-toast__title[data-v-ed19c769]{font-size:var(--text-base);font-weight:500;color:var(--color-text);overflow-wrap:anywhere}.ui-toast__msg[data-v-ed19c769]{margin-top:2px;font-size:var(--text-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.ui-toast--danger .ui-toast__msg[data-v-ed19c769]{color:var(--color-danger)}.ui-toast__close[data-v-ed19c769]{flex:none;margin:-3px -4px 0 0}/*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */.pswp{--pswp-bg: #000;--pswp-placeholder-bg: #222;--pswp-root-z-index: 100000;--pswp-preloader-color: rgba(79, 79, 79, .4);--pswp-preloader-color-secondary: rgba(255, 255, 255, .9);--pswp-icon-color: #fff;--pswp-icon-color-secondary: #4f4f4f;--pswp-icon-stroke-color: #4f4f4f;--pswp-icon-stroke-width: 2px;--pswp-error-text-color: var(--pswp-icon-color)}.pswp{position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--pswp-root-z-index);display:none;touch-action:none;outline:0;opacity:.003;contain:layout style size;-webkit-tap-highlight-color:rgba(0,0,0,0)}.pswp:focus{outline:0}.pswp *{box-sizing:border-box}.pswp img{max-width:none}.pswp--open{display:block}.pswp,.pswp__bg{transform:translateZ(0);will-change:opacity}.pswp__bg{opacity:.005;background:var(--pswp-bg)}.pswp,.pswp__scroll-wrap{overflow:hidden}.pswp__scroll-wrap,.pswp__bg,.pswp__container,.pswp__item,.pswp__content,.pswp__img,.pswp__zoom-wrap{position:absolute;top:0;left:0;width:100%;height:100%}.pswp__img,.pswp__zoom-wrap{width:auto;height:auto}.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img{cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,.pswp__img{cursor:-webkit-zoom-out;cursor:-moz-zoom-out;cursor:zoom-out}.pswp__container,.pswp__img,.pswp__button,.pswp__counter{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pswp__item{z-index:1;overflow:hidden}.pswp__hidden{display:none!important}.pswp__content{pointer-events:none}.pswp__content>*{pointer-events:auto}.pswp__error-msg-container{display:grid}.pswp__error-msg{margin:auto;font-size:1em;line-height:1;color:var(--pswp-error-text-color)}.pswp .pswp__hide-on-close{opacity:.005;will-change:opacity;transition:opacity var(--pswp-transition-duration) cubic-bezier(.4,0,.22,1);z-index:10;pointer-events:none}.pswp--ui-visible .pswp__hide-on-close{opacity:1;pointer-events:auto}.pswp__button{position:relative;display:block;width:50px;height:60px;padding:0;margin:0;overflow:hidden;cursor:pointer;background:none;border:0;box-shadow:none;opacity:.85;-webkit-appearance:none;-webkit-touch-callout:none}.pswp__button:hover,.pswp__button:active,.pswp__button:focus{transition:none;padding:0;background:none;border:0;box-shadow:none;opacity:1}.pswp__button:disabled{opacity:.3;cursor:auto}.pswp__icn{fill:var(--pswp-icon-color);color:var(--pswp-icon-color-secondary)}.pswp__icn{position:absolute;top:14px;left:9px;width:32px;height:32px;overflow:hidden;pointer-events:none}.pswp__icn-shadow{stroke:var(--pswp-icon-stroke-color);stroke-width:var(--pswp-icon-stroke-width);fill:none}.pswp__icn:focus{outline:0}div.pswp__img--placeholder,.pswp__img--with-bg{background:var(--pswp-placeholder-bg)}.pswp__top-bar{position:absolute;left:0;top:0;width:100%;height:60px;display:flex;flex-direction:row;justify-content:flex-end;z-index:10;pointer-events:none!important}.pswp__top-bar>*{pointer-events:auto;will-change:opacity}.pswp__button--close{margin-right:6px}.pswp__button--arrow{position:absolute;width:75px;height:100px;top:50%;margin-top:-50px}.pswp__button--arrow:disabled{display:none;cursor:default}.pswp__button--arrow .pswp__icn{top:50%;margin-top:-30px;width:60px;height:60px;background:none;border-radius:0}.pswp--one-slide .pswp__button--arrow{display:none}.pswp--touch .pswp__button--arrow{visibility:hidden}.pswp--has_mouse .pswp__button--arrow{visibility:visible}.pswp__button--arrow--prev{right:auto;left:0}.pswp__button--arrow--next{right:0}.pswp__button--arrow--next .pswp__icn{left:auto;right:14px;transform:scaleX(-1)}.pswp__button--zoom{display:none}.pswp--zoom-allowed .pswp__button--zoom{display:block}.pswp--zoomed-in .pswp__zoom-icn-bar-v{display:none}.pswp__preloader{position:relative;overflow:hidden;width:50px;height:60px;margin-right:auto}.pswp__preloader .pswp__icn{opacity:0;transition:opacity .2s linear;animation:pswp-clockwise .6s linear infinite}.pswp__preloader--active .pswp__icn{opacity:.85}@keyframes pswp-clockwise{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pswp__counter{height:30px;margin-top:15px;margin-inline-start:20px;font-size:14px;line-height:30px;color:var(--pswp-icon-color);text-shadow:1px 1px 3px var(--pswp-icon-color-secondary);opacity:.85}.pswp--one-slide .pswp__counter{display:none}.pswp{--pswp-root-z-index: var(--z-modal);--pswp-bg: var(--color-scrim-strong);-webkit-app-region:no-drag}.media-preview-caption{position:absolute;left:0;right:0;bottom:var(--space-4);padding:0 var(--space-6);color:var(--color-text-on-scrim);font-size:var(--ui-font-size-xs);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.error-boundary[data-v-3fe116a9]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);height:100%;padding:var(--space-6)}.error-boundary.fullscreen[data-v-3fe116a9]{position:fixed;inset:0;z-index:var(--z-modal);background:var(--color-bg)}.error-boundary-close[data-v-3fe116a9]{position:absolute;top:var(--space-4);right:var(--space-4)}.error-boundary-icon[data-v-3fe116a9]{color:var(--color-warning)}.error-boundary-title[data-v-3fe116a9]{margin:0;font-size:var(--text-sm);color:var(--color-text-muted)}.md-frontmatter[data-v-88212169]{margin-bottom:var(--space-6);font:var(--md-b3)/var(--leading-normal) var(--font-ui)}.metadata-title[data-v-88212169]{margin-bottom:var(--space-2);font-weight:var(--weight-medium);color:var(--color-text-muted)}.metadata-fields[data-v-88212169]{display:grid;grid-template-columns:fit-content(40%) minmax(0,1fr);gap:var(--space-1) var(--space-4);margin:0}.metadata-fields dt[data-v-88212169]{font-family:var(--font-mono);overflow-wrap:anywhere}.metadata-fields dd[data-v-88212169]{min-width:0;margin:0;color:var(--color-text)}.metadata-value[data-v-88212169]{white-space:pre-wrap;overflow-wrap:anywhere}.metadata-tags[data-v-88212169]{display:flex;flex-wrap:wrap;gap:var(--space-1)}.metadata-tag[data-v-88212169]{max-width:100%;overflow-x:auto}.metadata-source[data-v-88212169]{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-family:var(--font-mono)}:where(.markstream-vue) button{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:transparent;border:0;font:inherit;color:inherit}.markstream-vue li:has(.checkbox-node){list-style-type:none;margin-left:calc(-1 * var(--ms-flow-list-indent))}.markstream-vue .text-node{white-space:pre-wrap;overflow-wrap:break-word}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.markstream-vue .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.markstream-vue .pointer-events-none{pointer-events:none}.markstream-vue .\!visible{visibility:visible!important}.markstream-vue .visible{visibility:visible}.markstream-vue .collapse{visibility:collapse}.markstream-vue .static{position:static}.markstream-vue .fixed{position:fixed}.markstream-vue .absolute{position:absolute}.markstream-vue .relative{position:relative}.markstream-vue .inset-0{inset:0}.markstream-vue .right-2{right:8px}.markstream-vue .right-6{right:24px}.markstream-vue .top-2{top:8px}.markstream-vue .top-6{top:24px}.markstream-vue .z-10{z-index:10}.markstream-vue .z-50{z-index:50}.markstream-vue .m-0{margin:0}.markstream-vue .mx-0\.5{margin-left:2px;margin-right:2px}.markstream-vue .mr-2{margin-right:8px}.markstream-vue .mt-2{margin-top:8px}.markstream-vue .block{display:block}.markstream-vue .inline{display:inline}.markstream-vue .flex{display:flex}.markstream-vue .inline-flex{display:inline-flex}.markstream-vue .table{display:table}.markstream-vue .flow-root{display:flow-root}.markstream-vue .grid{display:grid}.markstream-vue .contents{display:contents}.markstream-vue .list-item{display:list-item}.markstream-vue .hidden{display:none}.markstream-vue .h-4{height:16px}.markstream-vue .h-full{height:100%}.markstream-vue .max-h-full{max-height:100%}.markstream-vue .min-h-full{min-height:100%}.markstream-vue .w-2\/3{width:66.666667%}.markstream-vue .w-4{width:16px}.markstream-vue .w-4\/5{width:80%}.markstream-vue .w-full{width:100%}.markstream-vue .min-w-\[160px\]{min-width:160px}.markstream-vue .max-w-full{max-width:100%}.markstream-vue .flex-1{flex:1 1 0%}.markstream-vue .flex-shrink{flex-shrink:1}.markstream-vue .flex-shrink-0{flex-shrink:0}.markstream-vue .shrink{flex-shrink:1}.markstream-vue .shrink-0{flex-shrink:0}.markstream-vue .grow{flex-grow:1}.markstream-vue .border-collapse{border-collapse:collapse}.markstream-vue .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.markstream-vue .animate-spin{animation:spin 1s linear infinite}.markstream-vue .cursor-grab{cursor:grab}.markstream-vue .cursor-grabbing{cursor:grabbing}.markstream-vue .cursor-not-allowed{cursor:not-allowed}.markstream-vue .cursor-pointer{cursor:pointer}.markstream-vue .resize{resize:both}.markstream-vue .list-decimal{list-style-type:decimal}.markstream-vue .list-disc{list-style-type:disc}.markstream-vue .flex-wrap{flex-wrap:wrap}.markstream-vue .items-center{align-items:center}.markstream-vue .items-baseline{align-items:baseline}.markstream-vue .justify-center{justify-content:center}.markstream-vue .justify-between{justify-content:space-between}.markstream-vue .gap-0\.5{gap:2px}.markstream-vue .gap-1\.5{gap:6px}.markstream-vue .gap-2{gap:8px}.markstream-vue .gap-\[var\(--ms-gap-header-actions\)\]{gap:var(--ms-gap-header-actions)}.markstream-vue .gap-x-1{-moz-column-gap:4px;column-gap:4px}.markstream-vue .gap-x-2{-moz-column-gap:8px;column-gap:8px}.markstream-vue .overflow-hidden{overflow:hidden}.markstream-vue .overflow-x-auto{overflow-x:auto}.markstream-vue .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.markstream-vue .whitespace-nowrap{white-space:nowrap}.markstream-vue .whitespace-pre-wrap{white-space:pre-wrap}.markstream-vue .rounded{border-radius:calc(var(--ms-radius) * .5)}.markstream-vue .rounded-lg{border-radius:var(--ms-radius)}.markstream-vue .rounded-md{border-radius:calc(var(--ms-radius) * .75)}.markstream-vue .border{border-width:1px}.markstream-vue .border-b{border-bottom-width:1px}.markstream-vue .border-t{border-top-width:1px}.markstream-vue .border-\[var\(--code-border\)\]{border-color:var(--code-border)}.markstream-vue .border-\[var\(--footnote-border\)\]{border-color:var(--footnote-border)}.markstream-vue .border-\[var\(--hr-border\)\]{border-color:var(--hr-border)}.markstream-vue .bg-\[hsl\(var\(--ms-popover\)\)\]{background-color:hsl(var(--ms-popover))}.markstream-vue .bg-\[var\(--code-header-bg\)\]{background-color:var(--code-header-bg)}.markstream-vue .p-0{padding:0}.markstream-vue .p-1{padding:4px}.markstream-vue .p-4{padding:16px}.markstream-vue .p-\[var\(--ms-action-btn-padding\)\]{padding:var(--ms-action-btn-padding)}.markstream-vue .px-1\.5{padding-left:6px;padding-right:6px}.markstream-vue .px-2{padding-left:8px;padding-right:8px}.markstream-vue .px-4{padding-left:16px;padding-right:16px}.markstream-vue .px-\[var\(--ms-inset-panel-x\)\]{padding-left:var(--ms-inset-panel-x);padding-right:var(--ms-inset-panel-x)}.markstream-vue .py-0\.5{padding-top:2px;padding-bottom:2px}.markstream-vue .py-1\.5{padding-top:6px;padding-bottom:6px}.markstream-vue .py-\[var\(--ms-inset-panel-y\)\]{padding-top:var(--ms-inset-panel-y);padding-bottom:var(--ms-inset-panel-y)}.markstream-vue .pb-3{padding-bottom:12px}.markstream-vue .pt-2{padding-top:8px}.markstream-vue .text-left{text-align:left}.markstream-vue .text-center{text-align:center}.markstream-vue .text-right{text-align:right}.markstream-vue .font-mono{font-family:var(--ms-font-mono)}.markstream-vue .text-\[length\:var\(--ms-text-label\)\]{font-size:var(--ms-text-label)}.markstream-vue .text-sm{font-size:14px;line-height:20px}.markstream-vue .text-xs{font-size:12px;line-height:16px}.markstream-vue .font-medium{font-weight:500}.markstream-vue .font-semibold{font-weight:600}.markstream-vue .uppercase{text-transform:uppercase}.markstream-vue .lowercase{text-transform:lowercase}.markstream-vue .italic{font-style:italic}.markstream-vue .leading-\[normal\]{line-height:normal}.markstream-vue .leading-none{line-height:1}.markstream-vue .leading-relaxed{line-height:1.625}.markstream-vue .text-\[\#0366d6\]{--tw-text-opacity: 1;color:rgb(3 102 214 / var(--tw-text-opacity, 1))}.markstream-vue .text-\[hsl\(var\(--ms-popover-foreground\)\)\]{color:hsl(var(--ms-popover-foreground))}.markstream-vue .text-\[var\(--code-action-fg\)\]{color:var(--code-action-fg)}.markstream-vue .text-\[var\(--code-fg\)\]{color:var(--code-fg)}.markstream-vue .underline{text-decoration-line:underline}.markstream-vue .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.markstream-vue .opacity-0{opacity:0}.markstream-vue .opacity-50{opacity:.5}.markstream-vue .shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.markstream-vue .shadow-\[var\(--ms-shadow-popover\)\]{--tw-shadow-color: var(--ms-shadow-popover);--tw-shadow: var(--tw-shadow-colored)}.markstream-vue .outline{outline-style:solid}.markstream-vue .blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.markstream-vue .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.markstream-vue .backdrop-blur{--tw-backdrop-blur: blur(8px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.markstream-vue .backdrop-filter{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.markstream-vue .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.markstream-vue .transition-\[height\]{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.markstream-vue .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.markstream-vue .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.markstream-vue .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.markstream-vue .ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.markstream-vue{--ms-background: 0 0% 100%;--ms-foreground: 0 0% 10%;--ms-muted: 0 0% 96.5%;--ms-muted-foreground: 0 0% 43%;--ms-secondary: 0 0% 93.5%;--ms-secondary-foreground: 0 0% 10%;--ms-accent: 0 0% 91%;--ms-accent-foreground: 0 0% 10%;--ms-primary: 0 0% 10%;--ms-primary-foreground: 0 0% 100%;--ms-destructive: 0 62% 52%;--ms-destructive-foreground: 0 0% 100%;--ms-border: 0 0% 87%;--ms-ring: 0 0% 10%;--ms-popover: 0 0% 100%;--ms-popover-foreground: 0 0% 10%;--ms-radius: 8px;--ms-info: 215 60% 50%;--ms-info-foreground: 0 0% 100%;--ms-success: 152 56% 39%;--ms-success-foreground: 0 0% 100%;--ms-warning: 38 64% 46%;--ms-warning-foreground: 0 0% 9%;--ms-diff-added: 152 50% 36%;--ms-diff-removed: 0 58% 48%;--ms-highlight: 50 60% 72%;--ms-highlight-foreground: 0 0% 0%;--ms-font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--ms-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}.dark .markstream-vue,.markstream-vue.dark{--ms-background: 0 0% 7%;--ms-foreground: 0 0% 93%;--ms-muted: 0 0% 12%;--ms-muted-foreground: 0 0% 60%;--ms-secondary: 0 0% 16%;--ms-secondary-foreground: 0 0% 93%;--ms-accent: 0 0% 24%;--ms-accent-foreground: 0 0% 93%;--ms-primary: 0 0% 93%;--ms-primary-foreground: 0 0% 10%;--ms-destructive: 0 60% 50%;--ms-destructive-foreground: 0 0% 93%;--ms-border: 0 0% 20%;--ms-ring: 0 0% 80%;--ms-popover: 0 0% 9%;--ms-popover-foreground: 0 0% 93%;--ms-info: 215 55% 62%;--ms-info-foreground: 0 0% 100%;--ms-success: 152 48% 55%;--ms-success-foreground: 0 0% 100%;--ms-warning: 32 65% 58%;--ms-warning-foreground: 0 0% 9%;--ms-diff-added: 152 42% 60%;--ms-diff-removed: 0 58% 58%;--ms-highlight: 48 65% 50%;--ms-highlight-foreground: 0 0% 0%;--ms-shadow-subtle: 0 1px 3px 0 hsl(0 0% 0% / .25);--ms-shadow-popover: 0 4px 6px -1px hsl(0 0% 0% / .2), 0 2px 4px -2px hsl(0 0% 0% / .15);--ms-shadow-modal: 0 10px 15px -3px hsl(0 0% 0% / .5), 0 4px 6px -4px hsl(0 0% 0% / .4);--ms-shadow-preview: 0 10px 40px hsl(0 0% 0% / .6);--tooltip-bg: hsl(0 0% 12%);--tooltip-fg: hsl(0 0% 72%);--code-bg: #111827;--code-header-bg: hsl(var(--ms-muted));--admonition-note-header-bg: color-mix(in srgb, hsl(var(--ms-info)) 12%, transparent);--admonition-tip-header-bg: color-mix(in srgb, hsl(var(--ms-success)) 12%, transparent);--admonition-warn-header-bg: color-mix(in srgb, hsl(var(--ms-warning)) 12%, transparent);--admonition-danger-header-bg: color-mix(in srgb, hsl(var(--ms-destructive)) 12%, transparent)}.markstream-vue{font-family:var(--ms-font-sans);font-size:var(--ms-text-body);line-height:var(--ms-leading-body);--inline-code-bg: hsl(var(--ms-secondary));--inline-code-fg: hsl(var(--ms-foreground) / .75);--inline-code-border: hsl(var(--ms-border) / .9);--code-bg: #fff;--code-fg: hsl(var(--ms-foreground));--code-border: hsl(var(--ms-border));--code-header-bg: hsl(var(--ms-secondary));--code-selection-bg: hsl(var(--ms-accent) / .3);--code-line-number: hsl(var(--ms-muted-foreground));--markstream-code-line-number-align: right;--code-action-fg: hsl(var(--ms-muted-foreground));--code-action-hover-bg: hsl(var(--ms-accent));--code-action-hover-fg: hsl(var(--ms-accent-foreground));--code-action-active-bg: hsl(var(--ms-primary));--code-action-active-fg: hsl(var(--ms-primary-foreground));--diff-added-fg: hsl(var(--ms-diff-added));--diff-removed-fg: hsl(var(--ms-diff-removed));--diff-added-bg: hsl(var(--ms-diff-added) / .1);--diff-added-inline-bg: hsl(var(--ms-diff-added) / .2);--diff-removed-bg: hsl(var(--ms-diff-removed) / .1);--diff-removed-inline-bg: hsl(var(--ms-diff-removed) / .2);--blockquote-border: hsl(var(--ms-muted-foreground) / .2);--admonition-bg: hsl(var(--ms-muted));--admonition-border: hsl(var(--ms-border));--admonition-fg: hsl(var(--ms-foreground));--admonition-muted: hsl(var(--ms-muted-foreground));--admonition-header-bg: hsl(var(--ms-muted) / .5);--admonition-note: hsl(var(--ms-info));--admonition-tip: hsl(var(--ms-success));--admonition-warning: hsl(var(--ms-warning));--admonition-danger: hsl(var(--ms-destructive));--admonition-note-header-bg: color-mix(in srgb, hsl(var(--ms-info)) 6%, transparent);--admonition-tip-header-bg: color-mix(in srgb, hsl(var(--ms-success)) 6%, transparent);--admonition-warn-header-bg: color-mix(in srgb, hsl(var(--ms-warning)) 6%, transparent);--admonition-danger-header-bg: color-mix(in srgb, hsl(var(--ms-destructive)) 6%, transparent);--table-border: hsl(var(--ms-border));--table-header-bg: hsl(var(--ms-muted));--link-color: hsl(var(--ms-info));--list-marker: hsl(var(--ms-muted-foreground) / .5);--list-counter-marker: hsl(var(--ms-muted-foreground));--hr-border: hsl(var(--ms-border));--highlight-bg: hsl(var(--ms-highlight));--footnote-border: hsl(var(--ms-border));--tooltip-bg: hsl(0 0% 18%);--tooltip-fg: hsl(0 0% 88%);--tooltip-border: hsl(var(--ms-border));--modal-overlay: hsl(0 0% 0% / .7);--modal-bg: hsl(var(--ms-popover));--modal-fg: hsl(var(--ms-popover-foreground));--diagram-bg: hsl(var(--ms-muted));--diagram-border: hsl(var(--ms-border));--diagram-header-bg: hsl(var(--ms-muted));--loading-spinner: hsl(var(--ms-muted-foreground));--loading-shimmer: hsl(var(--ms-muted) / .5);--image-placeholder-bg: hsl(var(--ms-muted));--focus-ring: hsl(var(--ms-ring));--ms-space-1: 4px;--ms-space-1_5: 6px;--ms-space-2: 8px;--ms-space-2_5: 10px;--ms-space-3: 12px;--ms-space-4: 16px;--ms-space-5: 20px;--ms-space-6: 24px;--ms-space-8: 32px;--ms-space-12: 48px;--ms-flow-paragraph-y: 1.5em;--ms-flow-list-y: 1em;--ms-flow-list-item-y: .25em;--ms-flow-list-indent: 1.625em ;--ms-flow-list-indent-mobile: calc(14 / 9 * 1em);--ms-flow-table-y: 2em;--ms-flow-table-cell: .5em .75em;--ms-flow-blockquote-y: 1.25em;--ms-flow-blockquote-indent: 1.25em;--ms-flow-admonition-y: 1.25em;--ms-flow-footnote-y: .5em;--ms-flow-hr-y: 2.5em;--ms-flow-diagram-y: 1.5em;--ms-flow-codeblock-y: 1.5em;--ms-flow-definition-term-mt: .75em;--ms-flow-definition-desc-ml: 1.25em;--ms-flow-definition-desc-mb: .5em;--ms-flow-heading-1-mt: 0;--ms-flow-heading-1-mb: 1em;--ms-flow-heading-2-mt: 2em;--ms-flow-heading-2-mb: .75em;--ms-flow-heading-3-mt: 1.5em;--ms-flow-heading-3-mb: .6em;--ms-flow-heading-4-mt: 1.25em;--ms-flow-heading-4-mb: .4em;--ms-flow-heading-5-mt: 1em;--ms-flow-heading-5-mb: .25em;--ms-flow-heading-6-mt: 1em;--ms-flow-heading-6-mb: .25em;--ms-text-body: 16px;--ms-leading-body: 1.75;--ms-text-h1: 36px;--ms-text-h2: 24px;--ms-text-h3: 20px;--ms-text-h4: 16px;--ms-text-h5: 16px;--ms-text-h6: 16px;--ms-leading-h1: 1.2;--ms-leading-h2: 1.35;--ms-leading-h3: 1.5;--ms-weight-h1: 700;--ms-weight-h2: 600;--ms-weight-h3: 600;--ms-weight-h4: 600;--ms-text-label: 12px;--ms-action-btn-padding: 6px;--ms-action-btn-icon: 14px;--ms-inset-panel-x: 10px;--ms-inset-panel-y: 6px;--ms-inset-panel-body-sm: 8px;--ms-inset-panel-body: 16px;--ms-inset-admonition-body-top: 8px;--ms-inset-admonition-body-bottom: 12px;--ms-gap-header: var(--ms-space-4);--ms-gap-header-main: var(--ms-space-2_5);--ms-gap-header-actions: var(--ms-space-2);--ms-shadow-subtle: 0 1px 3px 0 hsl(var(--ms-foreground) / .06);--ms-shadow-popover: 0 4px 6px -1px hsl(var(--ms-foreground) / .1), 0 2px 4px -2px hsl(var(--ms-foreground) / .1);--ms-shadow-modal: 0 10px 15px -3px hsl(var(--ms-foreground) / .1), 0 4px 6px -4px hsl(var(--ms-foreground) / .1);--ms-shadow-preview: 0 10px 40px hsl(var(--ms-foreground) / .25);--ms-duration-fast: .12s;--ms-duration-standard: .18s;--ms-duration-overlay: .2s;--ms-duration-emphasis: .22s;--ms-duration-slow: .3s;--ms-duration-stream: .28s;--ms-ease-linear: linear;--ms-ease-standard: ease;--ms-ease-out: ease-out;--ms-ease-in-out: ease-in-out;--ms-ease-spring: cubic-bezier(.16, 1, .3, 1);--ms-border-width: 1px;--ms-border-width-strong: 4px;--ms-focus-ring-width: 2px;--ms-focus-ring-offset: 2px;--ms-size-diagram-min-height: 360px;--ms-size-code-max-height: 500px;--ms-size-image-max-width: 384px;--ms-size-image-min-width: 128px;--ms-size-image-min-height: 1.5em;--ms-size-math-min-height: 40px;--ms-size-skeleton-min-height: 120px}body>div[id^=dmermaid-]{position:fixed;top:-10000px;left:0;width:100%;visibility:hidden;pointer-events:none}.markstream-vue .hover\:bg-\[var\(--code-action-hover-bg\)\]:hover{background-color:var(--code-action-hover-bg)}.markstream-vue .hover\:text-\[var\(--code-action-hover-fg\)\]:hover{color:var(--code-action-hover-fg)}.markstream-vue .hover\:underline:hover{text-decoration-line:underline}.markstream-vue .active\:scale-\[0\.96\]:active{--tw-scale-x: .96;--tw-scale-y: .96;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.markstream-vue .disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.markstream-vue .disabled\:opacity-40:disabled{opacity:.4}.checkbox-node[data-v-be21ab83]{display:inline-flex;align-items:center;margin-right:.5em;vertical-align:-.15em}.checkbox-icon[data-v-be21ab83]{flex-shrink:0}.checkbox-unchecked[data-v-be21ab83]{color:hsl(var(--ms-muted-foreground) / .5)}.checkbox-checked[data-v-be21ab83]{color:hsl(var(--ms-info))}.emoji-node[data-v-de55dc97]{display:inline-block}.footnote-reference[data-v-d1baf613]{font-size:.75em;line-height:0}.footnote-link[data-v-d1baf613]{color:var(--link-color);text-decoration:none}.footnote-link[data-v-d1baf613]:hover{text-decoration:underline}.html-inline-node[data-v-fbbbc497]{display:inline}.html-inline-node--loading[data-v-fbbbc497]{opacity:.85}.inline-code[data-v-557cf4dd]{display:inline;font-family:var(--ms-font-mono);font-size:.8125em;line-height:inherit;color:var(--inline-code-fg);background-color:var(--inline-code-bg);padding:.15em .35em;border-radius:.25em;white-space:normal;word-break:break-word;max-width:100%;-webkit-box-decoration-break:clone;box-decoration-break:clone}.inline-code-stream-delta[data-v-557cf4dd]{animation:inline-code-stream-update-fade-557cf4dd var(--stream-update-fade-duration, var(--fade-duration, .2s)) var(--stream-update-fade-ease, var(--fade-ease, cubic-bezier(.2, 0, .4, 1))) both}@keyframes inline-code-stream-update-fade-557cf4dd{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.inline-code-stream-delta[data-v-557cf4dd]{animation-duration:0s!important}}.image-node-container[data-v-e4e45fcb]{display:inline-block;position:relative;vertical-align:middle;max-width:var(--ms-size-image-max-width)}.image-node__img[data-v-e4e45fcb]{display:inline-block;max-width:100%;min-width:var(--ms-size-image-min-width);min-height:var(--ms-size-image-min-height);height:auto;vertical-align:middle;transition:opacity var(--ms-duration-emphasis) var(--ms-ease-standard)}.image-node__img.is-loading[data-v-e4e45fcb]{opacity:0}.image-node__img.is-loaded[data-v-e4e45fcb]{opacity:1}.image-node__img.has-natural-size[data-v-e4e45fcb]{min-width:0;min-height:0}.image-placeholder[data-v-e4e45fcb]{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:var(--ms-size-image-min-width);min-height:128px;max-width:var(--ms-size-image-max-width);background:hsl(var(--ms-muted));overflow:hidden;vertical-align:middle}.image-node__img.has-placeholder[data-v-e4e45fcb]{position:absolute;inset:0;opacity:0}.image-shimmer[data-v-e4e45fcb]{position:relative;display:block;width:100%;height:100%;min-height:128px;overflow:hidden;background:hsl(var(--ms-muted))}.image-shimmer[data-v-e4e45fcb]:before{content:"";position:absolute;inset-block:0;left:-200%;width:300%;background:linear-gradient(90deg,hsl(var(--ms-muted)),hsl(var(--ms-muted-foreground) / .06),hsl(var(--ms-muted)));background-position:100% 0;background-size:66.6667% 100%;animation:image-shimmer-e4e45fcb 1.5s ease-in-out infinite}.image-node-container[data-markstream-viewport-pending=true] .image-shimmer[data-v-e4e45fcb]:before{animation:none}@keyframes image-shimmer-e4e45fcb{0%{transform:translate(0)}to{transform:translate(66.6667%)}}.image-error[data-v-e4e45fcb]{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:16px 24px;min-height:64px;max-width:var(--ms-size-image-max-width);background:hsl(var(--ms-muted));color:hsl(var(--ms-muted-foreground));font-size:var(--ms-text-label);vertical-align:middle}.image-node__raw-text[data-v-e4e45fcb]{font-size:var(--ms-text-label);color:hsl(var(--ms-muted-foreground))}@media(prefers-reduced-motion:reduce){.image-shimmer[data-v-e4e45fcb]:before{animation:none!important}}.markstream-vue pre[class^=language-],.markstream-vue pre[class*=" language-"]{white-space:pre;overflow:auto;-moz-tab-size:var(--markstream-code-tab-size, 4);-o-tab-size:var(--markstream-code-tab-size, 4);tab-size:var(--markstream-code-tab-size, 4);font-variant-ligatures:none;contain:content;backface-visibility:hidden;transform:translateZ(0);-webkit-font-smoothing:antialiased}.markstream-vue pre[class^=language-]>code,.markstream-vue pre[class*=" language-"]>code{display:block}.markstream-vue pre[data-markstream-pre="1"]:not(.markstream-pre--diff-preview){background:var(--markstream-code-fallback-bg, var(--markstream-code-theme-bg, var(--code-bg)));color:var(--markstream-code-fallback-fg, var(--markstream-code-theme-fg, var(--code-fg)))}.markstream-vue pre.markstream-pre--line-numbers{position:relative}.markstream-vue pre.code-pre-fallback[data-markstream-code-loading="1"]{--markstream-pre-line-number-top: var(--markstream-code-padding-y, 8px);--markstream-pre-line-number-left: 0px;--markstream-pre-line-number-width: 2ch;--markstream-pre-line-number-padding-left: 2ch;--markstream-pre-line-number-padding-right: 1ch;--markstream-pre-line-number-separator-width: 2px;--markstream-code-padding-left: calc(6ch + 2px) ;box-sizing:border-box;width:100%;margin:0;padding:var(--markstream-code-padding-y, 8px) var(--markstream-code-padding-x, 1ch);padding-left:var(--markstream-code-padding-left);overflow:auto;border:0;border-radius:0;background:var(--markstream-code-fallback-bg, var(--markstream-code-theme-bg, var(--code-bg)));color:var(--markstream-code-fallback-fg, var(--markstream-code-theme-fg, var(--code-fg)));font-family:var(--markstream-code-font-family, \"SF Mono\", Monaco, Consolas, \"Ubuntu Mono\", \"Liberation Mono\", \"Courier New\", monospace);font-size:var(--vscode-editor-font-size, 12px);line-height:var(--vscode-editor-line-height, 18px)}.markstream-vue pre.markstream-pre--line-numbers>.markstream-pre__line-numbers{position:absolute;top:var(--markstream-pre-line-number-top, 0);left:var(--markstream-pre-line-number-left, 0);box-sizing:content-box;display:flex;flex-direction:column;align-items:flex-end;width:var(--markstream-pre-line-number-width, 2ch);min-width:var(--markstream-pre-line-number-width, 2ch);padding-left:var(--markstream-pre-line-number-padding-left, 2ch);padding-right:var(--markstream-pre-line-number-padding-right, 1ch);border-right:var(--markstream-pre-line-number-separator-width, 2px) solid transparent;color:var(--code-line-number);font:inherit;font-variant-numeric:tabular-nums;line-height:inherit;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.markstream-vue pre.markstream-pre--line-numbers:not(.markstream-pre--diff-preview):not(.code-pre-fallback)>.markstream-pre__code{box-sizing:border-box;min-width:100%;padding-left:var(--markstream-code-padding-left, 52px);padding-right:var(--markstream-code-padding-x, 12px)}.markstream-vue pre.markstream-pre--line-numbers>.markstream-pre__code--wrapped{white-space:pre-wrap}.markstream-vue pre.markstream-pre--line-numbers>.markstream-pre__code--wrapped>.markstream-pre__logical-line{position:relative;display:block;min-height:1lh}.markstream-vue pre.markstream-pre--line-numbers>.markstream-pre__code--wrapped>.markstream-pre__logical-line:before{position:absolute;left:calc(-1 * var(--markstream-code-padding-left, 52px));box-sizing:content-box;width:var(--markstream-pre-line-number-width, 2ch);padding-left:var(--markstream-pre-line-number-padding-left, 2ch);color:var(--code-line-number);font:inherit;font-variant-numeric:tabular-nums;line-height:inherit;text-align:right;white-space:pre;content:attr(data-line-number);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.markstream-vue pre.markstream-pre--line-numbers>.markstream-pre__line-numbers>.markstream-pre__line-number{display:block;min-height:1lh}.markstream-vue pre.markstream-pre--line-numbers>.markstream-pre__line-numbers>.markstream-pre__line-numbers-text{display:block;min-height:1lh;text-align:right;white-space:pre}.markstream-vue pre.markstream-pre--diff-preview{box-sizing:border-box;padding-left:0!important;padding-right:0!important;width:100%;--markstream-pre-diff-gutter-marker-width: 4px;--markstream-pre-diff-gutter-gap: 1ch;--markstream-pre-diff-code-gap: 1ch;--markstream-pre-diff-code-padding: 0px;--markstream-diff-added-fg: var(--diff-added-fg, #2f8f68);--markstream-diff-removed-fg: var(--diff-removed-fg, #c24141);--markstream-diff-added-line-fill: var(--diff-added-bg, rgb(47 143 104 / 12%));--markstream-diff-removed-line-fill: var(--diff-removed-bg, rgb(194 65 65 / 12%));--markstream-diff-added-gutter: linear-gradient( 90deg, var(--markstream-diff-added-fg) 0 var(--markstream-pre-diff-gutter-marker-width), transparent var(--markstream-pre-diff-gutter-marker-width) 100% );--markstream-diff-removed-gutter: linear-gradient( 90deg, var(--markstream-diff-removed-fg) 0 var(--markstream-pre-diff-gutter-marker-width), transparent var(--markstream-pre-diff-gutter-marker-width) 100% );--markstream-pre-diff-line-number-width: 2ch;--markstream-pre-diff-line-number-padding-left: 2ch;--markstream-pre-diff-line-number-padding-right: 1ch;--markstream-pre-diff-line-number-separator-width: 2px;--markstream-pre-diff-pane-min-width: 225px;--markstream-pre-diff-line-number-box-width: calc( var(--markstream-pre-diff-line-number-padding-left) + var(--markstream-pre-diff-line-number-width) + var(--markstream-pre-diff-line-number-padding-right) + var(--markstream-pre-diff-line-number-separator-width) );--markstream-pre-diff-line-number-bg: var(--markstream-diff-line-number-bg, transparent);--markstream-pre-diff-line-number-gap-to-code: var(--markstream-pre-diff-code-gap);--markstream-pre-diff-line-number-left: 0px;--markstream-pre-diff-line-number-align: var(--markstream-diff-line-number-align, right);--markstream-pre-diff-code-fill-left: calc( var(--markstream-pre-diff-line-number-left) + var(--markstream-pre-diff-line-number-box-width) );--markstream-pre-diff-code-left: calc( var(--markstream-pre-diff-code-fill-left) + var(--markstream-pre-diff-line-number-gap-to-code) + var(--markstream-pre-diff-code-padding) )}.markstream-vue pre.markstream-pre--diff-preview::-webkit-scrollbar{width:12px;height:12px}.markstream-vue pre.code-pre-fallback.markstream-pre--diff-preview.markstream-pre--diff-inline:not(.is-wrap){scrollbar-width:none}.markstream-vue pre.code-pre-fallback.markstream-pre--diff-preview.markstream-pre--diff-inline:not(.is-wrap)::-webkit-scrollbar{width:0;height:0}.markstream-vue pre.is-wrap{white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline{--markstream-pre-diff-line-number-gap-to-code: var(--markstream-pre-diff-code-gap);--markstream-pre-diff-line-number-left: 0px}.markstream-vue pre.markstream-pre--diff-preview>.markstream-pre__diff-code{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);font:inherit;line-height:inherit;min-width:100%;width:100%}.markstream-vue pre.markstream-pre--diff-preview.is-wrap>.markstream-pre__diff-code{grid-template-columns:minmax(var(--markstream-pre-diff-pane-min-width, 225px),1fr) minmax(var(--markstream-pre-diff-pane-min-width, 225px),1fr)}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline>.markstream-pre__diff-code{grid-template-columns:minmax(0,1fr)}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline:not(.is-wrap)>.markstream-pre__diff-code{grid-template-columns:minmax(100%,max-content);width:100%;min-width:-moz-max-content;min-width:max-content}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-pane{min-width:0;overflow:hidden}.markstream-vue pre.markstream-pre--diff-preview:not(.is-wrap):not(.markstream-pre--diff-inline) .markstream-pre__diff-pane{overflow-x:auto;overflow-y:hidden}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-pane-content{display:block;min-width:100%}.markstream-vue pre.markstream-pre--diff-preview:not(.is-wrap):not(.markstream-pre--diff-inline) .markstream-pre__diff-pane-content{width:-moz-max-content;width:max-content}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline:not(.is-wrap) .markstream-pre__diff-pane{min-width:-moz-max-content;min-width:max-content;width:100%;overflow:visible}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-pane--modified{--markstream-pre-diff-line-number-gap-to-code: var(--markstream-pre-diff-code-gap);--markstream-pre-diff-line-number-left: 0px;box-shadow:none}.markstream-vue pre.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane--original .markstream-pre__diff-line:not(.markstream-pre__diff-line--collapsed) .markstream-pre__diff-content{padding-right:1ch}.markstream-vue pre.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane--original .markstream-pre__diff-line--collapsed:before{right:0;border-top-right-radius:0;border-bottom-right-radius:0}.markstream-vue pre.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane--modified .markstream-pre__diff-line--collapsed:before{left:0;border-top-left-radius:0;border-bottom-left-radius:0}.markstream-vue pre.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane--modified .markstream-pre__diff-line--collapsed>.markstream-pre__diff-collapsed-icon{display:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line{position:relative;display:block;box-sizing:border-box;width:100%;min-width:100%;min-height:var( --markstream-pre-diff-synced-row-height, var(--markstream-pre-diff-line-height, 18px) );padding-left:var(--markstream-pre-diff-code-left);line-height:var(--markstream-pre-diff-line-height, 18px)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line:before{content:"";position:absolute;left:var(--markstream-pre-diff-code-fill-left);right:0;top:0;height:var( --markstream-pre-diff-synced-row-height, var(--markstream-pre-diff-line-height, 18px) );z-index:0;pointer-events:none;border-radius:0;background:transparent}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line:after{content:"";position:absolute;left:var(--markstream-pre-diff-line-number-left);top:0;width:var(--markstream-pre-diff-line-number-box-width);height:var( --markstream-pre-diff-synced-row-height, var(--markstream-pre-diff-line-height, 18px) );z-index:0;pointer-events:none;background:var(--markstream-pre-diff-line-number-bg);box-shadow:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-rail{position:absolute;z-index:2;top:0;left:0;height:var( --markstream-pre-diff-synced-row-height, var(--markstream-pre-diff-line-height, 18px) );width:var(--markstream-pre-diff-gutter-marker-width, 4px);min-width:var(--markstream-pre-diff-gutter-marker-width, 4px)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-number{position:absolute;z-index:1;top:0;left:var(--markstream-pre-diff-line-number-left);width:var(--markstream-pre-diff-line-number-width);min-width:var(--markstream-pre-diff-line-number-width);height:var( --markstream-pre-diff-synced-row-height, var(--markstream-pre-diff-line-height, 18px) );box-sizing:content-box;background:var(--markstream-pre-diff-line-number-bg);box-shadow:none;padding-left:var(--markstream-pre-diff-line-number-padding-left, 2ch);padding-right:var(--markstream-pre-diff-line-number-padding-right, 1ch);border-right:var(--markstream-pre-diff-line-number-separator-width, 2px) solid var(--markstream-diff-editor-bg, var(--code-bg));color:var(--code-line-number);font-variant-numeric:tabular-nums;line-height:var(--markstream-pre-diff-line-height, 18px);text-align:var(--markstream-pre-diff-line-number-align, right);-webkit-user-select:none;-moz-user-select:none;user-select:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--added>.markstream-pre__diff-number{background:var(--markstream-diff-added-number-fill, var(--markstream-diff-added-line-fill, transparent));color:var(--markstream-diff-added-fg, var(--code-line-number))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--removed>.markstream-pre__diff-number{background:var(--markstream-diff-removed-number-fill, var(--markstream-diff-removed-line-fill, transparent));color:var(--markstream-diff-removed-fg, var(--code-line-number))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-content{position:relative;z-index:1;display:block;width:-moz-max-content;width:max-content;min-width:100%;line-height:var(--markstream-pre-diff-line-height, 18px);white-space:inherit;overflow-wrap:normal;word-break:normal;line-break:auto}.markstream-vue pre.markstream-pre--diff-preview.is-wrap .markstream-pre__diff-content{box-sizing:border-box;width:auto;min-width:0;padding-right:1ch;overflow-wrap:anywhere;word-break:normal}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-content-inner{white-space:inherit;overflow-wrap:inherit;word-break:inherit;line-break:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--hunk{color:var(--markstream-diff-unchanged-fg, var(--code-line-number))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--hunk:before{background:var(--markstream-diff-unchanged-bg, transparent)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer:before{background-image:linear-gradient(-45deg,color-mix(in srgb,currentColor 20%,transparent) 12.5%,transparent 12.5%,transparent 50%,color-mix(in srgb,currentColor 20%,transparent) 50%,color-mix(in srgb,currentColor 20%,transparent) 62.5%,transparent 62.5%,transparent 100%);background-size:10px 10px;opacity:.38}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--metadata{color:var(--markstream-diff-metadata-fg, var(--code-line-number));background:var(--markstream-diff-metadata-bg, var(--code-bg))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--metadata:after,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--metadata>.markstream-pre__diff-rail,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--metadata>.markstream-pre__diff-number{display:none}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-inline .markstream-pre__diff-line--metadata+.markstream-pre__diff-line--metadata{margin-top:calc(-1 * var(--markstream-pre-diff-line-height, 18px))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer:after,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer>.markstream-pre__diff-rail,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer>.markstream-pre__diff-number,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--spacer>.markstream-pre__diff-content{display:none}.markstream-vue pre.markstream-pre--diff-preview.markstream-pre--diff-collapsed:not(.code-pre-fallback){height:auto!important;min-height:0!important}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed{min-height:calc(var(--markstream-pre-diff-collapsed-row-height, 32px) + var(--markstream-pre-diff-collapsed-row-gap-top, var(--markstream-pre-diff-collapsed-row-gap, 8px)) + var(--markstream-pre-diff-collapsed-row-gap-bottom, var(--markstream-pre-diff-collapsed-row-gap, 8px)));padding:var(--markstream-pre-diff-collapsed-row-gap-top, var(--markstream-pre-diff-collapsed-row-gap, 8px)) 0 var(--markstream-pre-diff-collapsed-row-gap-bottom, var(--markstream-pre-diff-collapsed-row-gap, 8px));color:color-mix(in lab,var(--markstream-code-theme-fg, var(--markstream-code-fallback-fg, var(--markstream-pre-resolved-theme-fg, var(--code-fg, #000)))) 65%,var(--markstream-code-theme-bg, var(--markstream-code-fallback-bg, var(--markstream-pre-resolved-theme-bg, var(--code-bg, #fff)))));font-family:var( --markstream-pre-diff-header-font, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif );line-height:var(--markstream-pre-diff-collapsed-row-height, 32px)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed:before{top:var(--markstream-pre-diff-collapsed-row-gap-top, var(--markstream-pre-diff-collapsed-row-gap, 8px));left:8px;right:8px;height:var(--markstream-pre-diff-collapsed-row-height, 32px);border-radius:6px;background:var(--markstream-diff-unchanged-bg, rgb(0 0 0 / 4%))}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed-first{--markstream-pre-diff-collapsed-row-gap-top: 0px}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed-last{--markstream-pre-diff-collapsed-row-gap-bottom: 0px}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed:after,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed>.markstream-pre__diff-rail,.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed>.markstream-pre__diff-number{display:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed>.markstream-pre__diff-content{width:100%;min-width:0;padding-left:calc(42px + 1ch);line-height:var(--markstream-pre-diff-collapsed-row-height, 32px)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed>.markstream-pre__diff-collapsed-icon{position:absolute;left:8px;top:var(--markstream-pre-diff-collapsed-row-gap-top, var(--markstream-pre-diff-collapsed-row-gap, 8px));width:34px;height:var(--markstream-pre-diff-collapsed-row-height, 32px);display:flex;align-items:center;justify-content:center;color:inherit;pointer-events:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--collapsed>.markstream-pre__diff-collapsed-icon svg{fill:currentColor;flex:none}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--added:before{background:var(--markstream-diff-added-line-fill, transparent)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--removed:before{background:var(--markstream-diff-removed-line-fill, transparent)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--added>.markstream-pre__diff-rail{background:var(--markstream-diff-added-gutter, currentColor)}.markstream-vue pre.markstream-pre--diff-preview .markstream-pre__diff-line--removed>.markstream-pre__diff-rail{background:var(--markstream-diff-removed-gutter, currentColor)}.markstream-vue pre[class^=language-]:focus,.markstream-vue pre[class*=" language-"]:focus{outline:var(--ms-focus-ring-width) solid var(--focus-ring);outline-offset:var(--ms-focus-ring-offset)}.text-node[data-v-3be01052]{display:inline;font-weight:inherit;vertical-align:baseline}.text-node-center[data-v-3be01052]{display:inline-flex;justify-content:center;width:100%}.text-node-stream-delta[data-v-3be01052]{animation:text-node-stream-update-fade-3be01052 var(--stream-update-fade-duration, var(--fade-duration, .2s)) var(--stream-update-fade-ease, var(--fade-ease, cubic-bezier(.2, 0, .4, 1))) both}@keyframes text-node-stream-update-fade-3be01052{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.text-node-stream-delta[data-v-3be01052]{animation-duration:0s!important}}.code-loading-action:before{width:var(--ms-action-btn-icon, 14px);height:var(--ms-action-btn-icon, 14px);content:"";background:currentcolor;-webkit-mask:center / contain no-repeat;mask:center / contain no-repeat}.code-loading-action--copy:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='14' height='14' x='8' y='8' rx='2'/%3E%3Cpath d='M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2'/%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='14' height='14' x='8' y='8' rx='2'/%3E%3Cpath d='M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2'/%3E%3C/g%3E%3C/svg%3E")}.code-loading-action--collapse:before{rotate:90deg;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m9 18 6-6-6-6'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m9 18 6-6-6-6'/%3E%3C/svg%3E")}.code-loading-action--more:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='black'%3E%3Ccircle cx='12' cy='5' r='1.5'/%3E%3Ccircle cx='12' cy='12' r='1.5'/%3E%3Ccircle cx='12' cy='19' r='1.5'/%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='black'%3E%3Ccircle cx='12' cy='5' r='1.5'/%3E%3Ccircle cx='12' cy='12' r='1.5'/%3E%3Ccircle cx='12' cy='19' r='1.5'/%3E%3C/g%3E%3C/svg%3E")}.reference-node[data-v-b96c91c3]{background-color:hsl(var(--ms-muted));color:hsl(var(--ms-muted-foreground))}.reference-node[data-v-b96c91c3]:hover{background-color:hsl(var(--ms-secondary))}.superscript-node[data-v-24160b22]{font-size:.8em;vertical-align:super}.subscript-node[data-v-197fa13b]{font-size:.8em;vertical-align:sub}.strong-node[data-v-a8647104]{font-weight:700}.strikethrough-node[data-v-b7a531fa]{text-decoration:line-through}.link-node[data-v-a414d325]{color:var(--link-color);text-decoration:none}.link-node[data-v-a414d325]:hover{text-decoration:underline;text-underline-offset:3.2px}.link-loading .link-text-wrapper[data-v-a414d325]{position:relative}.link-loading[data-v-a414d325]{color:var(--link-color)}.link-loading .link-text[data-v-a414d325]{position:relative;z-index:2}.link-loading-indicator[data-v-a414d325]{position:absolute;left:0;right:0;height:var(--underline-height, 2px);bottom:var(--underline-bottom, -3px);background:currentColor;border-radius:999px;opacity:var(--underline-rest-opacity, .18);animation:underlinePulse-a414d325 var(--underline-duration, 1.6s) var(--underline-timing, ease-in-out) var(--underline-iteration, infinite)}@keyframes underlinePulse-a414d325{0%,to{opacity:var(--underline-rest-opacity, .18)}50%{opacity:var(--underline-opacity, .35)}}@media(prefers-reduced-motion:reduce){.link-loading-indicator[data-v-a414d325]{animation:none;opacity:var(--underline-rest-opacity, .18)}}.insert-node[data-v-1e2c29d4]{text-decoration:underline}.highlight-node[data-v-7a62982a]{background-color:var(--highlight-bg);padding:0 3.2px;border-radius:.2em}.emphasis-node[data-v-2a5aafbf]{font-style:italic}.hard-break[data-v-50c58f70]{display:block}.blockquote[data-v-abfecebc]{font-weight:400;font-style:normal;color:var(--blockquote-fg, hsl(var(--ms-muted-foreground)));border-left:3px solid var(--blockquote-border);margin-top:var(--ms-flow-blockquote-y);margin-bottom:var(--ms-flow-blockquote-y);padding-left:var(--ms-flow-blockquote-indent)}.blockquote>.paragraph-node[data-v-abfecebc]{font-size:var(--ms-text-body);line-height:var(--ms-leading-body);margin:var(--ms-flow-paragraph-y) 0}.blockquote>.paragraph-node[data-v-abfecebc]:first-child{margin-top:0}.blockquote>.paragraph-node[data-v-abfecebc]:last-child{margin-bottom:0}.blockquote[data-v-abfecebc] .markdown-renderer{content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}.definition-list[data-v-4e103b30]{margin:0 0 16px}.definition-term[data-v-4e103b30]{font-weight:600;margin-top:var(--ms-flow-definition-term-mt)}.definition-desc[data-v-4e103b30]{margin-left:var(--ms-flow-definition-desc-ml);margin-bottom:var(--ms-flow-definition-desc-mb)}.definition-list[data-v-4e103b30] .markdown-renderer{content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}.footnote-anchor[data-v-0dbaa45e]{margin-left:8px;color:var(--link-color)}.footnote-node{margin-top:var(--ms-flow-footnote-y);margin-bottom:var(--ms-flow-footnote-y)}.markstream-vue [class*=footnote-] .markdown-renderer,.markstream-vue .flex-1 .markdown-renderer{content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}.heading-node[data-v-7122dbe1]{font-weight:500;line-height:1.25}hr+.heading-node[data-v-7122dbe1]{margin-top:0}.heading-1[data-v-7122dbe1]{font-size:var(--ms-text-h1);line-height:var(--ms-leading-h1);font-weight:var(--ms-weight-h1);margin-top:var(--ms-flow-heading-1-mt);margin-bottom:var(--ms-flow-heading-1-mb)}.heading-2[data-v-7122dbe1]{font-size:var(--ms-text-h2);line-height:var(--ms-leading-h2);font-weight:var(--ms-weight-h2);margin-top:var(--ms-flow-heading-2-mt);margin-bottom:var(--ms-flow-heading-2-mb)}.heading-3[data-v-7122dbe1]{font-size:var(--ms-text-h3);line-height:var(--ms-leading-h3);font-weight:var(--ms-weight-h3);margin-top:var(--ms-flow-heading-3-mt);margin-bottom:var(--ms-flow-heading-3-mb)}.heading-4[data-v-7122dbe1]{font-size:var(--ms-text-h4);font-weight:var(--ms-weight-h4);margin-top:var(--ms-flow-heading-4-mt);margin-bottom:var(--ms-flow-heading-4-mb)}.heading-5[data-v-7122dbe1]{font-size:var(--ms-text-h5);margin-top:var(--ms-flow-heading-5-mt);margin-bottom:var(--ms-flow-heading-5-mb)}.heading-6[data-v-7122dbe1]{font-size:var(--ms-text-h6);margin-top:var(--ms-flow-heading-6-mt);margin-bottom:var(--ms-flow-heading-6-mb)}.list-item[data-v-617214f9]{margin:var(--ms-flow-list-item-y) 0;padding-left:var(--ms-space-1_5)}ol>.list-item[data-v-617214f9]::marker{color:var(--list-counter-marker);line-height:1.6}ul>.list-item[data-v-617214f9]::marker{color:var(--list-marker)}.list-item>.paragraph-node[data-v-617214f9]{font-size:var(--ms-text-body);line-height:var(--ms-leading-body);margin:0}.list-item[data-v-617214f9] .markdown-renderer{content-visibility:visible;contain-intrinsic-size:0px 0px;contain:content}.list-node[data-v-99cb95e0]{margin-top:var(--ms-flow-list-y);margin-bottom:var(--ms-flow-list-y);padding-left:var(--ms-flow-list-indent)}.list-decimal[data-v-99cb95e0]{list-style-type:decimal}.list-disc[data-v-99cb95e0]{list-style-type:disc}@media(max-width:1023px){.list-disc[data-v-99cb95e0]{margin-top:calc(4/3*1em);margin-bottom:calc(4/3*1em);padding-left:var(--ms-flow-list-indent-mobile)}}.html-block-node__raw[data-v-08559f85]{white-space:pre-wrap;overflow-wrap:anywhere;opacity:.85}.html-block-node__placeholder[data-v-08559f85]{display:flex;flex-direction:column;gap:5.6px;padding:8px 0}.html-block-node__placeholder-bar[data-v-08559f85]{display:block;height:12.8px;border-radius:9999px;background-image:linear-gradient(90deg,var(--loading-shimmer),transparent,var(--loading-shimmer));background-size:200% 100%}.paragraph-node[data-v-0498f5d7]{font-size:var(--ms-text-body);line-height:var(--ms-leading-body);margin:var(--ms-flow-paragraph-y) 0}li .paragraph-node[data-v-0498f5d7]{margin:0}.table-node-wrapper[data-v-cd7fd3ec]{position:relative;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable}.table-node[data-v-cd7fd3ec]{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;margin:var(--ms-flow-table-y) 0;font-size:inherit;border:1px solid var(--table-border);border-radius:var(--ms-radius);overflow:hidden;box-shadow:var(--ms-shadow-subtle)}.table-node[data-v-cd7fd3ec] th,.table-node[data-v-cd7fd3ec] td{border-bottom:1px solid var(--table-border);border-right:1px solid var(--table-border);padding:var(--ms-flow-table-cell);white-space:normal;overflow-wrap:break-word;word-break:normal}.table-node[data-v-cd7fd3ec] th:last-child,.table-node[data-v-cd7fd3ec] td:last-child{border-right:none}.table-node[data-v-cd7fd3ec] tbody tr:last-child td{border-bottom:none}.table-node[data-v-cd7fd3ec] thead th{position:relative;font-weight:600;background-color:var(--table-header-bg);border-bottom-width:2px}.table-node__resize-handle[data-v-cd7fd3ec]{position:absolute;top:0;right:-4px;bottom:0;z-index:1;width:8px;padding:0;border:0;background:transparent;cursor:col-resize;touch-action:none}.table-node__resize-handle[data-v-cd7fd3ec]:after{content:"";position:absolute;top:.35em;bottom:.35em;left:50%;width:2px;border-radius:9999px;background:color-mix(in srgb,var(--table-border) 45%,hsl(var(--ms-foreground)));opacity:0;transform:translate(-50%);transition:opacity var(--ms-duration-fast) var(--ms-ease-standard)}.table-node__resize-handle[data-v-cd7fd3ec]:hover:after,.table-node__resize-handle[data-v-cd7fd3ec]:focus-visible:after{opacity:1}.table-node[data-v-cd7fd3ec] tbody tr:nth-child(2n){background-color:hsl(var(--ms-muted) / .35)}.table-node[data-v-cd7fd3ec] tbody tr:hover{background-color:var(--code-action-hover-bg)}.table-node--loading tbody td[data-v-cd7fd3ec]{position:relative;overflow:hidden}.table-node--loading tbody td[data-v-cd7fd3ec]>*{visibility:hidden}.table-node--loading tbody td[data-v-cd7fd3ec]:after{content:"";position:absolute;inset:0;border-radius:calc(var(--ms-radius) * .5);background:var(--loading-shimmer)}.table-node__loading[data-v-cd7fd3ec]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.table-node__spinner[data-v-cd7fd3ec]{width:40px;height:40px;border-radius:9999px;border:2px solid color-mix(in srgb,var(--loading-spinner) 25%,transparent);border-top-color:color-mix(in srgb,var(--loading-spinner) 80%,transparent);will-change:transform}.table-node-fade-enter-active[data-v-cd7fd3ec],.table-node-fade-leave-active[data-v-cd7fd3ec]{transition:opacity var(--ms-duration-standard) var(--ms-ease-standard)}.table-node-fade-enter-from[data-v-cd7fd3ec],.table-node-fade-leave-to[data-v-cd7fd3ec]{opacity:0}[data-v-cd7fd3ec] .table-node .markdown-renderer{display:contents;content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}[data-v-cd7fd3ec] .table-node .markdown-renderer .node-slot,[data-v-cd7fd3ec] .table-node .markdown-renderer .node-content,[data-v-cd7fd3ec] .table-node .markdown-renderer .node-space{display:contents}[data-v-cd7fd3ec] .table-node .text-node,[data-v-cd7fd3ec] .table-node code{white-space:inherit;overflow-wrap:inherit;word-break:inherit;max-width:none}.hr+.table-node-wrapper[data-v-cd7fd3ec]{margin-top:0}.hr+.table-node-wrapper .table-node[data-v-cd7fd3ec]{margin-top:0}.sr-only[data-v-cd7fd3ec]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hr-node[data-v-39b2349c]{border-top-width:1px;border-color:var(--hr-border);margin:var(--ms-flow-hr-y) 0}.vmr-container[data-v-672fe0a7]{margin-top:16px;margin-bottom:16px;border-radius:var(--ms-radius);border-width:1px;padding:16px;border-left-width:var(--ms-border-width-strong)}.height-estimation-probes[data-v-3e0766e2]{position:absolute;left:-100000px;top:0;visibility:hidden;pointer-events:none;overflow:hidden;z-index:-1}.node-content[data-v-3e0766e2]{width:100%}.node-content-flow-root[data-v-3e0766e2]{display:flow-root}.markdown-renderer[data-v-179398b5]{position:relative;contain:layout;content-visibility:auto;contain-intrinsic-size:800px 600px;contain-intrinsic-size:auto 800px auto 600px}.markdown-renderer.virtualized[data-v-179398b5],.markdown-renderer.virtual-scroll-coordinated[data-v-179398b5]{content-visibility:visible;contain-intrinsic-size:auto}.markdown-renderer.stable-layout[data-v-179398b5]{content-visibility:visible;contain-intrinsic-size:none}.node-slot[data-v-179398b5],.node-content[data-v-179398b5]{width:100%}.markdown-renderer.virtualized .node-slot[data-v-179398b5],.markdown-renderer.virtualized .node-content[data-v-179398b5],.markdown-renderer.virtual-scroll-coordinated .node-slot[data-v-179398b5],.markdown-renderer.virtual-scroll-coordinated .node-content[data-v-179398b5]{display:flow-root}.node-placeholder[data-v-179398b5]{width:100%;min-height:16px;margin:4px 0}.node-placeholder[data-v-179398b5]:first-child{margin-top:0}.node-spacer[data-v-179398b5]{width:100%}.unknown-node[data-v-179398b5]{color:hsl(var(--ms-muted-foreground));font-style:italic;margin:var(--ms-flow-paragraph-y) 0}.typewriter-cursor[data-v-179398b5]{position:absolute;left:0;top:0;display:inline-block;width:.55em;height:1em;margin-left:.08em;vertical-align:-.12em;border-right:2px solid currentColor;pointer-events:none;visibility:hidden;animation:typewriter-cursor-blink-179398b5 1s steps(1,end) infinite}@keyframes typewriter-cursor-blink-179398b5{0%,49%{opacity:1}50%,to{opacity:0}}.markstream-vue.typewriter-simple-cursor .typewriter-simple-cursor-target:after{content:"";display:inline-block;width:.55em;height:1em;margin-left:.08em;vertical-align:-.12em;border-right:2px solid currentColor;pointer-events:none;animation:typewriter-cursor-blink 1s steps(1,end) infinite}@media(prefers-reduced-motion:reduce){.markstream-vue.typewriter-simple-cursor .typewriter-simple-cursor-target:after{animation:none}}.markstream-vue .fade-enter-from{opacity:0}.markstream-vue .fade-enter-active{transition:opacity var(--fade-duration, .28s) var(--fade-ease, cubic-bezier(.33, 0, .67, 1));will-change:opacity}.markstream-vue .fade-enter-to{opacity:1}.admonition[data-v-a83480e1]{position:relative;margin:var(--ms-flow-admonition-y) 0;padding:.25em .75em .375em;border:1px solid var(--admonition-border);border-radius:var(--ms-radius);color:var(--admonition-fg)}.admonition-legend[data-v-a83480e1]{position:absolute;top:0;left:.75em;transform:translateY(-50%);display:inline-flex;align-items:center;gap:.35em;padding:0 .5em;background-color:hsl(var(--ms-background));font-size:13px;font-weight:600;line-height:1}.admonition-icon[data-v-a83480e1]{flex-shrink:0}.admonition-title[data-v-a83480e1]{white-space:nowrap}.admonition-content[data-v-a83480e1]{padding-top:.25em;color:var(--admonition-fg)}.admonition-note[data-v-a83480e1],.admonition-info[data-v-a83480e1]{border-color:hsl(var(--ms-info) / .3);background-color:hsl(var(--ms-info) / .04)}.admonition-note .admonition-legend[data-v-a83480e1],.admonition-info .admonition-legend[data-v-a83480e1]{color:var(--admonition-note)}.admonition-tip[data-v-a83480e1]{border-color:hsl(var(--ms-success) / .3);background-color:hsl(var(--ms-success) / .04)}.admonition-tip .admonition-legend[data-v-a83480e1]{color:var(--admonition-tip)}.admonition-warning[data-v-a83480e1],.admonition-caution[data-v-a83480e1]{border-color:hsl(var(--ms-warning) / .3);background-color:hsl(var(--ms-warning) / .04)}.admonition-warning .admonition-legend[data-v-a83480e1],.admonition-caution .admonition-legend[data-v-a83480e1]{color:var(--admonition-warning)}.admonition-danger[data-v-a83480e1],.admonition-error[data-v-a83480e1]{border-color:hsl(var(--ms-destructive) / .3);background-color:hsl(var(--ms-destructive) / .04)}.admonition-danger .admonition-legend[data-v-a83480e1],.admonition-error .admonition-legend[data-v-a83480e1]{color:var(--admonition-danger)}.admonition-toggle[data-v-a83480e1]{margin-left:.25em;background:transparent;border:none;color:inherit;cursor:pointer;padding:2px;border-radius:calc(var(--ms-radius) * .5);display:inline-flex;align-items:center;transition:background-color var(--ms-duration-fast) var(--ms-ease-standard)}.admonition-toggle[data-v-a83480e1]:hover{background-color:hsl(var(--ms-accent))}.admonition-toggle[data-v-a83480e1]:focus-visible{outline:var(--ms-focus-ring-width) solid var(--focus-ring);outline-offset:var(--ms-focus-ring-offset)}.admonition-content[data-v-a83480e1] .markdown-renderer{content-visibility:visible;contain:content;contain-intrinsic-size:0px 0px}.tooltip-element[data-v-c606ee4c]{z-index:9999;display:inline-block;max-width:320px;padding:4px 8px;border-radius:calc(var(--ms-radius) * .75);font-size:12px;line-height:1.4;white-space:normal;word-break:break-word;pointer-events:none;background-color:var(--tooltip-bg);color:var(--tooltip-fg);box-shadow:inset 0 1px #ffffff26,0 0 0 1px #0000001f,var(--ms-shadow-popover);transition:transform var(--ms-duration-emphasis) var(--ms-ease-spring),box-shadow var(--ms-duration-emphasis) var(--ms-ease-spring)}.tooltip-arrow[data-v-c606ee4c]{position:absolute;width:6px;height:6px;background:inherit;transform:rotate(45deg)}.tooltip-arrow[data-placement^=top][data-v-c606ee4c]{bottom:-3px}.tooltip-arrow[data-placement^=bottom][data-v-c606ee4c]{top:-3px}.tooltip-arrow[data-placement^=left][data-v-c606ee4c]{right:-3px}.tooltip-arrow[data-placement^=right][data-v-c606ee4c]{left:-3px}.tooltip-enter-active[data-v-c606ee4c]{transition:opacity .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1)}.tooltip-leave-active[data-v-c606ee4c]{transition:opacity .12s ease-in,transform .12s ease-in}.tooltip-enter-from[data-v-c606ee4c]{opacity:0;transform:scale(.96)}.tooltip-enter-to[data-v-c606ee4c],.tooltip-leave-from[data-v-c606ee4c]{opacity:1;transform:scale(1)}.tooltip-leave-to[data-v-c606ee4c]{opacity:0;transform:scale(.97)}.action-icon{width:var(--ms-action-btn-icon, 14px);height:var(--ms-action-btn-icon, 14px);max-width:20px;max-height:20px}.code-block-container{margin:var(--ms-flow-codeblock-y) 0;contain:layout style;container-type:inline-size;background:var(--code-bg);border-color:var(--code-border);color:var(--code-fg);box-shadow:var(--ms-shadow-subtle)}.code-block-container:has(.code-more-menu){position:relative;z-index:1}.code-block-header{position:relative;z-index:1;gap:var(--ms-gap-header);border-radius:var(--ms-radius) var(--ms-radius) 0 0;overflow:visible}.code-block-header .code-header-main{min-width:0;flex:1 1 auto;display:flex;align-items:center;gap:var(--ms-gap-header-main);overflow:hidden}.code-block-header .code-header-copy{min-width:0;display:grid;gap:2px}.code-block-header .code-header-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ms-text-label);font-weight:500;color:var(--code-action-fg)}.code-block-header .code-header-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--code-line-number)}.code-block-header .code-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--ms-gap-header-actions);flex-wrap:wrap}.code-block-header .icon-slot{display:inline-flex;align-items:center;justify-content:center}.code-block-header .icon-slot svg,.code-block-header .icon-slot img{display:block;width:100%;height:100%}.code-diff-stats{display:inline-flex;align-items:center;gap:var(--ms-space-1_5);margin-right:var(--ms-space-1);font-size:var(--ms-text-label);font-weight:600;line-height:1;font-variant-numeric:tabular-nums}.code-diff-stat{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--ms-radius);line-height:1}.code-diff-stat.removed{color:var(--diff-removed-fg);background:hsl(var(--ms-diff-removed) / .1)}.code-diff-stat.added{color:var(--diff-added-fg);background:hsl(var(--ms-diff-added) / .1)}.code-more-menu{position:absolute;top:100%;right:0;margin-top:4px;z-index:50;border-radius:var(--ms-radius)}.code-block-shell-content,.code-loading-placeholder{overflow:hidden;border-radius:0 0 var(--ms-radius) var(--ms-radius);contain:content}.code-block-shell-content--collapsed{height:0;min-height:0;visibility:hidden;pointer-events:none}.code-menu-enter-active,.code-menu-leave-active{transform-origin:top right}.code-menu-enter-active{transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1)}.code-menu-leave-active{transition:opacity .14s ease-in,transform .14s ease-in}.code-menu-enter-from{opacity:0;transform:scale(.9) translateY(-4px)}.code-menu-leave-to{opacity:0;transform:scale(.95) translateY(-2px)}.markstream-vue pre.code-pre-fallback{margin:0;box-sizing:border-box;width:100%;border:0;border-radius:0;background:var(--markstream-code-fallback-bg, var(--markstream-code-theme-bg, var(--markstream-pre-resolved-theme-bg, #fff)));color:var(--markstream-code-fallback-fg, var(--markstream-code-theme-fg, var(--markstream-pre-resolved-theme-fg, var(--code-fg))));backface-visibility:visible;transform:none;-webkit-font-smoothing:auto;font-family:var(--markstream-code-font-family);font-size:var(--vscode-editor-font-size, 12px);font-weight:400;line-height:var(--vscode-editor-line-height, 18px)}.markstream-vue pre.code-pre-fallback>code{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit}.markstream-vue pre.code-pre-fallback.is-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.markstream-vue pre.code-pre-fallback.markstream-pre--diff-preview{padding-left:0!important;padding-right:0!important}.markstream-vue pre.code-pre-fallback .markstream-pre__line-numbers,.markstream-vue pre.code-pre-fallback .markstream-pre__logical-line:before{color:var(--markstream-code-theme-line-number, var(--markstream-pre-resolved-theme-line-number, var(--code-line-number)))}.html-preview-frame__backdrop[data-v-24e66176]{position:fixed;inset:0;background-color:var(--modal-overlay);display:flex;align-items:center;justify-content:center;z-index:50}.html-preview-frame[data-v-24e66176]{width:80vw;max-width:960px;height:70vh;background-color:var(--modal-bg);color:var(--modal-fg);border-radius:calc(var(--ms-radius) * 2);overflow:hidden;box-shadow:var(--ms-shadow-preview);display:flex;flex-direction:column}.html-preview-frame__header[data-v-24e66176]{display:flex;justify-content:space-between;align-items:center;padding:6.4px 12px;border-bottom:1px solid var(--code-border)}.html-preview-frame__title[data-v-24e66176]{display:inline-flex;align-items:center;gap:6.4px;font-size:12px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;opacity:.85}.html-preview-frame__dot[data-v-24e66176]{width:8px;height:8px;border-radius:999px;background-color:hsl(var(--ms-success))}.html-preview-frame__label[data-v-24e66176]{white-space:nowrap}.html-preview-frame__close[data-v-24e66176]{border:none;background:transparent;font-size:20px;line-height:1;cursor:pointer;color:var(--modal-fg)}.html-preview-frame__iframe[data-v-24e66176]{width:100%;height:100%;border:none;display:block}@media(max-width:640px){.html-preview-frame[data-v-24e66176]{width:100vw;height:80vh;border-radius:0}}.code-block-container[data-v-2c9e024e]{--markstream-code-fallback-bg: var(--markstream-code-theme-bg, var(--markstream-pre-resolved-theme-bg));--markstream-code-fallback-fg: var(--markstream-code-theme-fg, var(--markstream-pre-resolved-theme-fg));--markstream-code-border-color: var(--code-border);--vscode-editor-selectionBackground: var(--markstream-code-fallback-selection-bg);--markstream-code-fallback-selection-bg: var(--code-selection-bg);--markstream-diff-frame-border: var(--code-border);--markstream-diff-frame-shadow: 0 16px 40px -32px hsl(var(--ms-foreground) / .18);--markstream-diff-shell-fg: hsl(var(--ms-foreground));--markstream-diff-shell-muted: hsl(var(--ms-muted-foreground));--markstream-diff-shell-border: var(--code-border);--markstream-diff-shell-shadow: var(--ms-shadow-subtle);--markstream-diff-shell-bg: var(--code-bg);--markstream-diff-header-border: hsl(var(--ms-border) / .92);--markstream-diff-editor-bg: hsl(var(--ms-background));--markstream-diff-editor-fg: hsl(var(--ms-foreground));--markstream-diff-unchanged-fg: hsl(var(--ms-foreground));--markstream-diff-unchanged-bg: hsl(var(--ms-muted));--markstream-diff-unchanged-divider: hsl(var(--ms-background) / .94);--markstream-diff-focus: var(--focus-ring);--markstream-diff-widget-shadow: hsl(var(--ms-foreground) / .26);--markstream-diff-action-hover: var(--code-action-hover-bg);--markstream-diff-panel-bg: linear-gradient(180deg, var(--code-bg) 0%, hsl(var(--ms-muted)) 100%);--markstream-diff-panel-bg-soft: var(--code-bg);--markstream-diff-panel-bg-strong: var(--code-bg);--markstream-diff-panel-border: hsl(var(--ms-border) / .3);--markstream-diff-gutter-bg: transparent;--markstream-diff-gutter-guide: hsl(var(--ms-border) / .72);--markstream-diff-gutter-gap: 8px;--markstream-diff-line-number-bg: var(--markstream-diff-editor-bg);--markstream-diff-line-number: var(--code-line-number);--markstream-diff-line-number-active: var(--code-line-number);--markstream-diff-added-fg: var(--diff-added-fg);--markstream-diff-removed-fg: var(--diff-removed-fg);--markstream-diff-added-line: var(--diff-added-bg);--markstream-diff-removed-line: var(--diff-removed-bg);--markstream-diff-added-inline: var(--diff-added-inline-bg);--markstream-diff-removed-inline: var(--diff-removed-inline-bg);--markstream-diff-added-inline-border: transparent;--markstream-diff-removed-inline-border: transparent;--markstream-diff-added-gutter: linear-gradient( 90deg, var(--markstream-diff-added-fg) 0 4px, transparent 4px 100% );--markstream-diff-removed-gutter: repeating-linear-gradient( 180deg, var(--markstream-diff-removed-fg) 0 2px, transparent 2px 4px ) left / 4px 100% no-repeat;--markstream-diff-added-line-fill: var(--diff-added-bg);--markstream-diff-removed-line-fill: var(--diff-removed-bg)}.code-block-container.is-dark[data-v-2c9e024e]{--markstream-code-fallback-bg: var(--markstream-code-theme-bg, var(--markstream-pre-resolved-theme-bg));--markstream-code-fallback-fg: var(--markstream-code-theme-fg, var(--markstream-pre-resolved-theme-fg));--markstream-code-border-color: var(--code-border);--markstream-code-fallback-selection-bg: var(--code-selection-bg);--markstream-diff-frame-border: var(--code-border);--markstream-diff-frame-shadow: 0 18px 40px -30px hsl(var(--ms-foreground) / .84);--markstream-diff-shell-fg: hsl(var(--ms-foreground));--markstream-diff-shell-muted: hsl(var(--ms-muted-foreground));--markstream-diff-shell-border: var(--code-border);--markstream-diff-shell-shadow: var(--ms-shadow-subtle);--markstream-diff-shell-bg: var(--code-bg);--markstream-diff-header-border: hsl(var(--ms-border) / .82);--markstream-diff-editor-bg: #121212;--markstream-diff-editor-fg: #e5e5e5;--markstream-diff-unchanged-fg: #d4d4d4;--markstream-diff-unchanged-bg: #262626;--markstream-diff-unchanged-divider: hsl(0 0% 100% / .08);--markstream-diff-focus: var(--focus-ring);--markstream-diff-widget-shadow: hsl(var(--ms-foreground) / .72);--markstream-diff-action-hover: var(--code-action-hover-bg);--markstream-diff-panel-bg: #121212;--markstream-diff-panel-bg-soft: #121212;--markstream-diff-panel-bg-strong: #121212;--markstream-diff-panel-border: hsl(var(--ms-border) / .3);--markstream-diff-gutter-bg: linear-gradient( 180deg, hsl(0 0% 7% / .94) 0%, hsl(0 0% 7% / .98) 100% );--markstream-diff-gutter-guide: hsl(var(--ms-muted-foreground) / .08);--markstream-diff-gutter-gap: 8px;--markstream-diff-line-number-bg: var(--markstream-diff-editor-bg);--markstream-diff-line-number: var(--code-line-number);--markstream-diff-line-number-active: var(--code-line-number);--markstream-diff-added-fg: hsl(152 42% 60%);--markstream-diff-removed-fg: hsl(0 58% 58%);--markstream-diff-added-line: hsl(152 42% 60% / .18);--markstream-diff-removed-line: hsl(0 58% 58% / .18);--markstream-diff-added-inline: hsl(152 42% 60% / .28);--markstream-diff-removed-inline: hsl(0 58% 58% / .28);--markstream-diff-added-inline-border: transparent;--markstream-diff-removed-inline-border: transparent;--markstream-diff-added-gutter: linear-gradient( 90deg, var(--markstream-diff-added-fg) 0 4px, transparent 4px 100% );--markstream-diff-removed-gutter: repeating-linear-gradient( 180deg, var(--markstream-diff-removed-fg) 0 2px, transparent 2px 4px ) left / 4px 100% no-repeat;--markstream-diff-added-line-fill: hsl(152 42% 60% / .18);--markstream-diff-removed-line-fill: hsl(0 58% 58% / .18)}.code-editor-container[data-v-2c9e024e]{transition:none;box-sizing:border-box;min-width:0;width:100%}.code-block-container.is-diff .code-editor-container[data-v-2c9e024e]{transition:none}.code-editor-layer[data-v-2c9e024e]{display:grid;min-width:0;position:relative}.code-editor-layer--collapsed[data-v-2c9e024e]{height:0;min-height:0;overflow:hidden;visibility:hidden;pointer-events:none}.code-editor-layer>.code-editor-container[data-v-2c9e024e]{grid-area:1 / 1;z-index:1}.code-editor-layer[data-v-2c9e024e]>pre.code-pre-fallback{grid-area:1 / 1;position:relative;z-index:2}.code-block-container.is-plain-text[data-v-2c9e024e]:not(.is-diff) .stream-diffs-shell{background:var(--vscode-editor-background, var(--markstream-code-fallback-bg))!important;color:var(--vscode-editor-foreground, var(--markstream-code-fallback-fg))!important}.code-block-container.is-diff[data-v-2c9e024e]{color:var(--markstream-diff-shell-fg);border-color:var(--markstream-diff-shell-border);background:var(--markstream-diff-shell-bg);box-shadow:var(--markstream-diff-shell-shadow);--vscode-editor-selectionBackground: var(--markstream-diff-action-hover);--code-fg: var(--markstream-diff-shell-fg);--code-border: var(--markstream-diff-header-border);--code-line-number: var(--markstream-diff-shell-muted);--code-action-fg: var(--markstream-diff-shell-muted)}.code-block-container.is-diff .code-editor-layer[data-v-2c9e024e]{background:transparent;--vscode-editor-background: var(--markstream-diff-editor-bg);--vscode-editor-foreground: var(--markstream-diff-editor-fg);--vscode-diffEditor-unchangedRegionForeground: var(--markstream-diff-unchanged-fg);--vscode-diffEditor-unchangedRegionBackground: var(--markstream-diff-unchanged-bg);--vscode-focusBorder: var(--markstream-diff-focus);--vscode-widget-shadow: var(--markstream-diff-widget-shadow);--vscode-editor-selectionBackground: color-mix( in srgb, var(--markstream-diff-editor-bg) 90%, var(--markstream-diff-editor-fg) 10% )}.code-block-container[data-v-2c9e024e]:not(.is-diff){--markstream-code-line-number-box-width: calc( var(--markstream-code-layout-character-width, 1ch) + var(--markstream-code-layout-character-width, 1ch) + var(--markstream-code-layout-character-width, 1ch) + var(--markstream-code-layout-character-width, 1ch) + var(--markstream-code-layout-character-width, 1ch) + 2px );--markstream-code-content-left: calc( var(--markstream-code-line-number-box-width) + var(--markstream-code-layout-character-width, 1ch) )}.code-editor-container[data-markstream-host-hidden=true][data-v-2c9e024e]{position:absolute;inset:0;width:100%;height:100%!important;min-height:0!important;max-height:none!important;overflow:hidden;visibility:hidden;pointer-events:none}.code-block-container.is-diff[data-v-2c9e024e] pre.code-pre-fallback.markstream-pre--diff-preview{background:var(--markstream-diff-editor-bg);transition:none}.code-block-container.is-diff[data-v-2c9e024e] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-pane{box-sizing:border-box;padding-bottom:var(--markstream-pre-diff-pane-bottom-padding, 0px)}.code-block-container.is-diff[data-v-2c9e024e] pre.code-pre-fallback.markstream-pre--diff-preview:not(.markstream-pre--diff-inline) .markstream-pre__diff-pane{padding-bottom:var(--markstream-pre-diff-pane-bottom-padding, 0px)}.code-block-container.is-diff[data-v-2c9e024e] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--added>.markstream-pre__diff-number{background:var(--markstream-diff-added-number-fill, var(--markstream-diff-added-line-fill, transparent))!important}.code-block-container.is-diff[data-v-2c9e024e] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--removed>.markstream-pre__diff-number{background:var(--markstream-diff-removed-number-fill, var(--markstream-diff-removed-line-fill, transparent))!important}.code-block-container.is-diff[data-v-2c9e024e] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--added>.markstream-pre__diff-rail{background:var(--markstream-diff-added-gutter, currentColor)!important}.code-block-container.is-diff[data-v-2c9e024e] pre.code-pre-fallback.markstream-pre--diff-preview .markstream-pre__diff-line--removed>.markstream-pre__diff-rail{background:var(--markstream-diff-removed-gutter, currentColor)!important}@media(prefers-reduced-motion:reduce){.code-block-container.is-diff[data-v-2c9e024e] pre.code-pre-fallback.markstream-pre--diff-preview{transition:none}}.code-block-container.is-rendering .code-height-placeholder[data-v-2c9e024e]{position:relative;overflow:hidden;min-height:var(--ms-size-skeleton-min-height);background:var(--loading-shimmer)}.code-block-container.is-rendering .code-height-placeholder[data-v-2c9e024e]:before{content:"";position:absolute;inset-block:0;left:-300%;width:400%;background:linear-gradient(90deg,var(--loading-shimmer) 25%,hsl(var(--ms-muted) / .7) 37%,var(--loading-shimmer) 63%);animation:code-skeleton-shimmer-2c9e024e 1.2s ease-in-out infinite}.code-loading-placeholder[data-v-2c9e024e]{padding:16px;min-height:var(--ms-size-skeleton-min-height)}.loading-skeleton[data-v-2c9e024e]{display:flex;flex-direction:column;gap:12px}.skeleton-line[data-v-2c9e024e]{position:relative;overflow:hidden;height:16px;border-radius:calc(var(--ms-radius) * .5);background:var(--loading-shimmer)}.skeleton-line[data-v-2c9e024e]:before{content:"";position:absolute;inset-block:0;left:-300%;width:400%;background:linear-gradient(90deg,var(--loading-shimmer) 25%,hsl(var(--ms-muted) / .7) 37%,var(--loading-shimmer) 63%)}.code-block-container.is-rendering .skeleton-line[data-v-2c9e024e]:before{animation:code-skeleton-shimmer-2c9e024e 1.2s ease-in-out infinite}.skeleton-line.short[data-v-2c9e024e]{width:60%}.code-block-container[data-markstream-viewport-pending=true] .code-height-placeholder[data-v-2c9e024e]:before,.code-block-container[data-markstream-viewport-pending=true] .skeleton-line[data-v-2c9e024e]:before{animation:none}@keyframes code-skeleton-shimmer-2c9e024e{0%{transform:translate(0)}to{transform:translate(75%)}}@media(prefers-reduced-motion:reduce){.code-block-container.is-rendering .code-height-placeholder[data-v-2c9e024e]:before,.skeleton-line[data-v-2c9e024e]:before{animation:none}}.math-inline-wrapper[data-v-73d5e320]{position:relative;display:inline-block}.math-inline[data-v-73d5e320]{display:inline-block;vertical-align:middle}.math-inline--fallback[data-v-73d5e320]{white-space:pre-wrap}.math-inline__loading[data-v-73d5e320]{display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.math-inline__spinner[data-v-73d5e320]{width:16px;height:16px;border-radius:9999px;border:2px solid color-mix(in srgb,var(--loading-spinner) 25%,transparent);border-top-color:color-mix(in srgb,var(--loading-spinner) 80%,transparent);will-change:transform}.table-node-fade-enter-active[data-v-73d5e320],.table-node-fade-leave-active[data-v-73d5e320]{transition:opacity var(--ms-duration-standard) var(--ms-ease-standard)}.table-node-fade-enter-from[data-v-73d5e320],.table-node-fade-leave-to[data-v-73d5e320]{opacity:0}.sr-only[data-v-73d5e320]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.math-block[data-v-af54c877]{min-height:var(--ms-size-math-min-height);transition:min-height var(--ms-duration-overlay) var(--ms-ease-standard)}.math-loading-overlay[data-v-af54c877]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(2px);min-height:var(--ms-size-math-min-height)}.math-loading-spinner[data-v-af54c877]{width:20px;height:20px;border:2px solid color-mix(in srgb,var(--loading-spinner) 15%,transparent);border-top-color:color-mix(in srgb,var(--loading-spinner) 80%,transparent);border-radius:50%;animation:math-spin-af54c877 .8s linear infinite}@keyframes math-spin-af54c877{to{transform:rotate(360deg)}}.math-rendering[data-v-af54c877]{opacity:.3;transition:opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.math-block__fallback[data-v-af54c877]{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.math-fade-enter-active[data-v-af54c877],.math-fade-leave-active[data-v-af54c877]{transition:all var(--ms-duration-slow) var(--ms-ease-standard)}.math-fade-enter-from[data-v-af54c877],.math-fade-leave-to[data-v-af54c877]{opacity:0}.action-icon{width:var(--ms-action-btn-icon);height:var(--ms-action-btn-icon)}.icon-slot{display:inline-flex;align-items:center;justify-content:center}.icon-slot svg{display:block;width:100%;height:100%}.mermaid-block-container[data-v-a0530481]{margin:var(--ms-flow-diagram-y) 0;border-color:var(--diagram-border)}.mermaid-block-header[data-v-a0530481]{padding:var(--ms-inset-panel-y) var(--ms-inset-panel-x);background:var(--diagram-header-bg);border-color:var(--diagram-border)}.mermaid-label-text[data-v-a0530481]{color:var(--code-action-fg)}.mermaid-mode-toggle-group[data-v-a0530481]{background:transparent}.mermaid-mode-btn[data-v-a0530481]{font-size:var(--ms-text-label);color:var(--code-action-fg);opacity:.6}.mermaid-mode-btn[data-v-a0530481]:hover{opacity:.9}.mermaid-mode-btn.is-active[data-v-a0530481]{background:hsl(var(--ms-foreground) / .08);color:var(--code-fg);opacity:1}.mermaid-header-actions[data-v-a0530481]{gap:var(--ms-gap-header-actions)}.mermaid-action-btn[data-v-a0530481]{font-family:inherit;font-size:var(--ms-text-label);color:var(--code-action-fg)}.mermaid-action-btn[data-v-a0530481]:hover{background:var(--code-action-hover-bg);color:var(--code-action-hover-fg)}.mermaid-action-btn[data-v-a0530481]:active{transform:scale(.98)}.mermaid-source-panel[data-v-a0530481]{padding:var(--ms-inset-panel-body);background:var(--diagram-bg)}.mermaid-source-code[data-v-a0530481]{color:hsl(var(--ms-foreground))}.mermaid-preview-area[data-v-a0530481]{background:var(--diagram-bg);min-height:var(--ms-size-diagram-min-height);transition-duration:var(--ms-duration-standard)}.mermaid-pan-touch[data-v-a0530481]{touch-action:none}.mermaid-modal-overlay[data-v-a0530481]{background:var(--modal-overlay)}.mermaid-modal-panel[data-v-a0530481]{background:var(--modal-bg);color:var(--modal-fg);box-shadow:var(--ms-shadow-modal)}._mermaid[data-v-a0530481]{position:relative;font-family:inherit;content-visibility:auto;contain:content;contain-intrinsic-size:var(--ms-size-diagram-min-height) 240px;contain-intrinsic-size:auto var(--ms-size-diagram-min-height) auto 240px}._mermaid[data-v-a0530481] [data-mermaid-svg-layer]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;width:100%;min-height:100%}._mermaid[data-v-a0530481] svg{width:100%;height:auto;max-height:100%;display:block}.fullscreen ._mermaid[data-v-a0530481] svg{max-height:none}.fullscreen[data-v-a0530481]{width:100%;max-height:100%!important;height:100%!important}.mermaid-dialog-enter-from[data-v-a0530481],.mermaid-dialog-leave-to[data-v-a0530481]{opacity:0}.mermaid-dialog-enter-active[data-v-a0530481],.mermaid-dialog-leave-active[data-v-a0530481]{transition:opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.mermaid-dialog-enter-from .dialog-panel[data-v-a0530481],.mermaid-dialog-leave-to .dialog-panel[data-v-a0530481]{transform:translateY(8px) scale(.98);opacity:.98}.mermaid-dialog-enter-to .dialog-panel[data-v-a0530481],.mermaid-dialog-leave-from .dialog-panel[data-v-a0530481]{transform:translateY(0) scale(1);opacity:1}.mermaid-dialog-enter-active .dialog-panel[data-v-a0530481],.mermaid-dialog-leave-active .dialog-panel[data-v-a0530481]{transition:transform var(--ms-duration-overlay) var(--ms-ease-standard),opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.infographic-block-container[data-v-3bff4a01]{margin:var(--ms-flow-diagram-y) 0;background:var(--diagram-bg);border-color:var(--diagram-border);color:hsl(var(--ms-foreground));box-shadow:var(--ms-shadow-subtle)}.infographic-block-header[data-v-3bff4a01]{padding:var(--ms-inset-panel-y) var(--ms-inset-panel-x);background:var(--diagram-header-bg);border-color:var(--diagram-border);color:hsl(var(--ms-foreground))}.infographic-label[data-v-3bff4a01]{font-size:var(--ms-text-label);color:hsl(var(--ms-muted-foreground))}.action-icon[data-v-3bff4a01]{width:var(--ms-action-btn-icon);height:var(--ms-action-btn-icon)}.icon-slot[data-v-3bff4a01]{display:inline-flex;align-items:center;justify-content:center}.icon-slot[data-v-3bff4a01] svg{display:block;width:100%;height:100%}.infographic-mode-toggle[data-v-3bff4a01]{background:transparent}.infographic-mode-btn[data-v-3bff4a01]{font-size:var(--ms-text-label);color:var(--code-action-fg);opacity:.6;transition:color .15s,background-color .15s,opacity .15s}.infographic-mode-btn[data-v-3bff4a01]:hover{opacity:.9}.infographic-mode-btn.is-active[data-v-3bff4a01]{background:hsl(var(--ms-foreground) / .08);color:var(--code-fg);opacity:1}.infographic-header-actions[data-v-3bff4a01]{gap:var(--ms-gap-header-actions)}.infographic-action-btn[data-v-3bff4a01]{font-family:inherit;color:var(--code-action-fg);transition:background-color .15s,color .15s}.infographic-action-btn[data-v-3bff4a01]:hover{background:var(--code-action-hover-bg);color:var(--code-action-hover-fg)}.infographic-action-btn[data-v-3bff4a01]:active{transform:scale(.98)}.infographic-source[data-v-3bff4a01]{padding:var(--ms-inset-panel-body);background:var(--diagram-bg)}.infographic-source-code[data-v-3bff4a01]{color:hsl(var(--ms-foreground))}.infographic-preview[data-v-3bff4a01]{background:var(--diagram-bg);min-height:var(--ms-size-diagram-min-height);transition-duration:var(--ms-duration-fast)}.infographic-pan-touch[data-v-3bff4a01]{touch-action:none}.infographic-preview[data-v-3bff4a01] svg{max-width:100%;max-height:100%;width:auto;height:auto}.infographic-pending-source[data-v-3bff4a01]{position:absolute;inset:0;z-index:1;margin:0;padding:var(--ms-inset-panel-body);overflow:auto;color:hsl(var(--ms-foreground));text-align:left;background:var(--diagram-bg)}.infographic-modal-overlay[data-v-3bff4a01]{background:var(--modal-overlay)}.infographic-modal-panel[data-v-3bff4a01]{background:var(--modal-bg);color:var(--modal-fg);box-shadow:var(--ms-shadow-modal)}.fullscreen[data-v-3bff4a01]{width:100%;max-height:100%!important;height:100%!important}.infographic-dialog-enter-from[data-v-3bff4a01],.infographic-dialog-leave-to[data-v-3bff4a01]{opacity:0}.infographic-dialog-enter-active[data-v-3bff4a01],.infographic-dialog-leave-active[data-v-3bff4a01]{transition:opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.infographic-dialog-enter-from .dialog-panel[data-v-3bff4a01],.infographic-dialog-leave-to .dialog-panel[data-v-3bff4a01]{transform:translateY(8px) scale(.98);opacity:.98}.infographic-dialog-enter-to .dialog-panel[data-v-3bff4a01],.infographic-dialog-leave-from .dialog-panel[data-v-3bff4a01]{transform:translateY(0) scale(1);opacity:1}.infographic-dialog-enter-active .dialog-panel[data-v-3bff4a01],.infographic-dialog-leave-active .dialog-panel[data-v-3bff4a01]{transition:transform var(--ms-duration-overlay) var(--ms-ease-standard),opacity var(--ms-duration-overlay) var(--ms-ease-standard)}.d2-block-container[data-v-196847dc]{margin:var(--ms-flow-diagram-y) 0;background:var(--diagram-bg);border-color:var(--diagram-border);color:hsl(var(--ms-foreground));box-shadow:var(--ms-shadow-subtle)}.d2-block-header[data-v-196847dc]{padding:var(--ms-inset-panel-y) var(--ms-inset-panel-x);background:var(--diagram-header-bg);border-color:var(--diagram-border);color:hsl(var(--ms-foreground))}.d2-mode-toggle[data-v-196847dc]{background:transparent}.mode-btn[data-v-196847dc]{font-size:var(--ms-text-label);color:var(--code-action-fg);opacity:.6;transition:opacity .2s,color .2s,background-color .2s}.mode-btn[data-v-196847dc]:hover{opacity:.9}.mode-btn.is-active[data-v-196847dc]{background:hsl(var(--ms-foreground) / .08);color:var(--code-fg);opacity:1}.d2-header-actions[data-v-196847dc]{gap:var(--ms-gap-header-actions)}.d2-action-btn[data-v-196847dc]{color:var(--code-action-fg);opacity:.7;transition:opacity .2s,background-color .15s,color .15s}.d2-action-btn[data-v-196847dc]:hover{opacity:1;background:var(--code-action-hover-bg);color:var(--code-action-hover-fg)}.d2-action-btn[data-v-196847dc]:disabled{opacity:.3;cursor:not-allowed}.d2-block-body[data-v-196847dc]{position:relative}.d2-source[data-v-196847dc]{padding:var(--ms-inset-panel-body) var(--ms-inset-panel-x);font-family:var(--vscode-editor-font-family, "Fira Code", "SFMono-Regular", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace)}.d2-code[data-v-196847dc]{white-space:pre;font-size:14px;line-height:1.5}.d2-render[data-v-196847dc]{max-height:var(--ms-size-code-max-height);overflow:auto;display:flex;flex-direction:column}.d2-svg[data-v-196847dc]{margin:auto;width:100%}.d2-render .d2-error[data-v-196847dc]{margin-left:auto;margin-right:auto}.d2-svg[data-v-196847dc] svg.markstream-d2-root-svg{width:100%;max-width:100%;height:auto;max-height:var(--ms-d2-render-max-height, var(--ms-size-code-max-height));display:block}.d2-label[data-v-196847dc]{font-size:var(--ms-text-label)}.action-icon[data-v-196847dc]{width:var(--ms-action-btn-icon);height:var(--ms-action-btn-icon)}.d2-error[data-v-196847dc]{color:hsl(var(--ms-destructive))}.markstream-virtual-timeline[data-v-d443e2b2]{position:relative;display:flex;flex-direction:column;height:100%;min-height:0;overflow:auto;overflow-anchor:none}.markstream-virtual-timeline.is-restoring-thread>.markstream-virtual-timeline__spacer[data-v-d443e2b2],.markstream-virtual-timeline.is-restoring-thread>.markstream-virtual-timeline__item[data-v-d443e2b2]{opacity:0;visibility:hidden;pointer-events:none}.markstream-virtual-timeline.is-restoring-thread>.markstream-virtual-timeline__item[data-v-d443e2b2],.markstream-virtual-timeline__item.is-restored-height-floor[data-v-d443e2b2]{height:var(--markstream-virtual-item-size);overflow:hidden}.markstream-virtual-timeline__restore-loading[data-v-d443e2b2]{position:absolute;top:0;left:0;right:0;z-index:10;display:grid;place-items:center;pointer-events:none;overflow:hidden;background:Canvas;contain:strict}.markstream-virtual-timeline__restore-loading-card[data-v-d443e2b2]{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid rgb(148 163 184 / 32%);border-radius:999px;background:#ffffffeb;color:#334155;font-size:13px;box-shadow:0 8px 24px #0f172a14}.markstream-virtual-timeline__restore-spinner[data-v-d443e2b2]{width:14px;height:14px;border:2px solid rgb(148 163 184 / 35%);border-top-color:#334155;border-radius:999px;animation:markstream-timeline-restore-spin-d443e2b2 .8s linear infinite}@keyframes markstream-timeline-restore-spin-d443e2b2{to{transform:rotate(360deg)}}.markstream-virtual-timeline__spacer[data-v-d443e2b2]{flex:0 0 auto;overflow-anchor:none}.markstream-virtual-timeline__item[data-v-d443e2b2]{display:flow-root;flex:0 0 auto;overflow-anchor:none}.markstream-virtual-timeline__default-item[data-v-d443e2b2]{margin:8px 0;padding:10px 12px;border:1px solid rgb(148 163 184 / 32%);border-radius:8px;background:#f8fafc;color:#0f172a;line-height:1.5;white-space:pre-wrap}.markstream-virtual-timeline__default-item--system-divider[data-v-d443e2b2]{border:0;background:transparent;color:#64748b;font-size:12px;text-align:center}.markstream-virtual-timeline__default-item--error[data-v-d443e2b2]{border-color:#f8717173;background:#fef2f2;color:#991b1b}.markstream-virtual-timeline__status[data-v-d443e2b2]{display:inline-flex;margin-right:8px;color:#475569;font-size:12px;text-transform:uppercase}.md-code-scroll-host{position:relative;min-width:0}.md-code-scroll-viewport{scrollbar-width:none}.md-code-scroll-viewport::-webkit-scrollbar{display:none}.md-code-edges{position:absolute;z-index:var(--markdown-z-edges);pointer-events:none;overflow:hidden;border-end-end-radius:var(--markdown-code-radius);transition:--markdown-edge-top var(--duration-slow) var(--ease-out),--markdown-edge-bottom var(--duration-slow) var(--ease-out),--markdown-edge-left var(--duration-slow) var(--ease-out),--markdown-edge-right var(--duration-slow) var(--ease-out);mask-image:linear-gradient(to bottom,rgb(0 0 0 / var(--markdown-edge-top)),transparent var(--markdown-code-edge-size)),linear-gradient(to top,rgb(0 0 0 / var(--markdown-edge-bottom)),transparent var(--markdown-code-edge-size)),linear-gradient(to right,rgb(0 0 0 / var(--markdown-edge-left)),transparent var(--markdown-code-edge-size)),linear-gradient(to left,rgb(0 0 0 / var(--markdown-edge-right)),transparent var(--markdown-code-edge-size))}.md-code-edges[hidden]{display:none}.md-code-edges:before{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 calc(var(--markdown-code-edge-size) * .35) var(--markdown-code-edge-strong-color),inset 0 0 calc(var(--markdown-code-edge-size) * .65) var(--markdown-code-edge-medium-color),inset 0 0 var(--markdown-code-edge-size) var(--markdown-code-edge-soft-color);mask-image:linear-gradient(to bottom,rgb(0 0 0 / var(--markdown-edge-top)),black var(--markdown-code-edge-size)),linear-gradient(to top,rgb(0 0 0 / var(--markdown-edge-bottom)),black var(--markdown-code-edge-size)),linear-gradient(to right,rgb(0 0 0 / var(--markdown-edge-left)),black var(--markdown-code-edge-size)),linear-gradient(to left,rgb(0 0 0 / var(--markdown-edge-right)),black var(--markdown-code-edge-size));mask-composite:intersect}.md-code-scrollbar{position:absolute;z-index:var(--markdown-z-scrollbar);touch-action:none;user-select:none;background:transparent}.md-code-scrollbar[hidden]{display:none}.md-code-scrollbar--horizontal{height:var(--markdown-code-scrollbar-size)}.md-code-scrollbar--vertical{right:var(--markdown-code-scrollbar-edge-gap);width:var(--markdown-code-scrollbar-size)}.md-code-scrollbar-thumb{display:block;position:absolute;border-radius:var(--markdown-code-scrollbar-size);background:var(--markdown-code-scrollbar-thumb)}.md-code-scrollbar--horizontal .md-code-scrollbar-thumb{bottom:0;height:var(--markdown-code-scrollbar-idle-size);transition:height var(--markdown-code-scrollbar-transition-duration) ease-out,background-color var(--markdown-code-scrollbar-transition-duration) ease-out}.md-code-scrollbar--horizontal:hover .md-code-scrollbar-thumb,.md-code-scrollbar--horizontal.is-dragging .md-code-scrollbar-thumb{height:100%}.md-code-scrollbar--vertical .md-code-scrollbar-thumb{right:0;width:var(--markdown-code-scrollbar-idle-size);transition:width var(--markdown-code-scrollbar-transition-duration) ease-out,background-color var(--markdown-code-scrollbar-transition-duration) ease-out}.md-code-scrollbar--vertical:hover .md-code-scrollbar-thumb,.md-code-scrollbar--vertical.is-dragging .md-code-scrollbar-thumb{width:100%}.md-code-scrollbar:hover .md-code-scrollbar-thumb,.md-code-scrollbar.is-dragging .md-code-scrollbar-thumb{background:var(--markdown-code-scrollbar-thumb-hover)}@media(prefers-reduced-motion:reduce){.md-code-scrollbar .md-code-scrollbar-thumb{transition:none}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.17.0"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.md[data-v-76671258],.md[data-v-76671258] .markdown-renderer{font:var(--markdown-font-weight-regular) var(--markdown-body-font-size)/var(--markdown-body-line-height) var(--markdown-font-family);color:var(--markdown-text-color);letter-spacing:var(--markdown-letter-spacing);word-break:break-word}.md[data-v-76671258] .markstream-vue{--ms-font-sans: var(--markdown-font-family);--ms-font-mono: var(--markdown-code-font-family);--ms-text-body: var(--markdown-body-font-size);--ms-leading-body: var(--markdown-body-line-height);--ms-text-label: var(--markdown-code-header-font-size);--ms-flow-paragraph-y: 0;--ms-flow-list-y: 0;--ms-flow-list-item-y: 0;--ms-flow-table-y: 0;--ms-flow-blockquote-y: 0;--ms-flow-codeblock-y: 0;--ms-flow-diagram-y: 0;--ms-flow-hr-y: 0;--ms-action-btn-icon: var(--markdown-code-action-icon-size);--ms-size-image-max-width: 100%;--code-bg: var(--markdown-code-background);--code-fg: var(--markdown-text-color);--code-border: var(--markdown-border-color);--code-header-bg: var(--markdown-code-header-background);--code-action-fg: var(--markdown-secondary-icon-color);--code-action-hover-fg: var(--markdown-text-color);--markstream-code-fallback-bg: var(--markdown-code-background);--markstream-code-fallback-fg: var(--markdown-text-color);--markstream-code-border-color: var(--markdown-border-color);--inline-code-bg: var(--markdown-inline-code-background);--inline-code-fg: var(--markdown-text-color);--inline-code-border: transparent;--diagram-bg: var(--markdown-code-background);--diagram-border: var(--markdown-border-color);--diagram-header-bg: var(--markdown-code-header-background)}.md[data-v-76671258] .md-file-link{appearance:none;display:inline;border:0;padding:0;background:transparent;color:var(--markdown-link-color);font:inherit;text-decoration:underline;cursor:pointer}.md[data-v-76671258] pre,.md[data-v-76671258] code,.md[data-v-76671258] diffs-container{text-autospace:no-autospace}.md[data-v-76671258] p,.md[data-v-76671258] li{font-size:inherit;line-height:inherit}.md[data-v-76671258] strong{color:var(--markdown-text-color);font-weight:var(--markdown-font-weight-emphasis)}.md[data-v-76671258] :is(h1,h2,h3,h4,h5,h6){color:var(--markdown-text-color);font-weight:var(--markdown-font-weight-emphasis);margin:0;padding:0;border:0}.md[data-v-76671258] h1{font-size:var(--markdown-h1-font-size);line-height:var(--markdown-h1-line-height)}.md[data-v-76671258] h2{font-size:var(--markdown-h2-font-size);line-height:var(--markdown-h2-line-height)}.md[data-v-76671258] :is(h3,h4,h5,h6){font-size:var(--markdown-h3-font-size);line-height:var(--markdown-h3-line-height)}.md[data-v-76671258] p{margin:0}.md[data-v-76671258] .text-node.md-punctuation-run{white-space:nowrap}.md[data-v-76671258] .markdown-renderer>.node-slot{padding-top:var(--markdown-block-space-before);margin:0}.md[data-v-76671258] .markdown-renderer>.node-slot:has(>.node-content>:is(h1,h2,h3,h4,h5,h6)){padding-top:var(--markdown-heading-space-before)}.md[data-v-76671258] .node-slot:has(>.node-content>p)+.node-slot:has(>.node-content>p){padding-top:var(--markdown-paragraph-gap)}.md[data-v-76671258] .node-slot:has(>.node-content>hr){padding-top:var(--markdown-divider-space-before)}.md[data-v-76671258] :is(li,blockquote,td,th) .markdown-renderer>.node-slot:first-child,.md[data-v-76671258] li .markdown-renderer>.node-slot:has(>.node-content>:is(ul,ol)){padding-top:0}.md[data-v-76671258] :is(ul,ol){list-style:revert;margin:0;padding:0 0 0 var(--markdown-list-indent)}.md[data-v-76671258] ul{list-style-type:disc}.md[data-v-76671258] ol{padding-left:max(var(--markdown-list-indent),var(--md-list-marker-width, 4ch))}.md[data-v-76671258] ol>li::marker{font-variant-numeric:tabular-nums}.md[data-v-76671258] :is(ul,ol) ul{list-style-type:circle}.md[data-v-76671258] li{list-style-type:inherit;margin:0;padding:0}.md[data-v-76671258] li::marker{color:var(--markdown-text-color)}.md[data-v-76671258] li+li{margin-top:var(--markdown-list-item-gap)}.md[data-v-76671258] li+li:has(>:is(ul,ol)){margin-top:var(--markdown-list-group-gap)}.md[data-v-76671258] li>:is(ul,ol){margin-top:var(--markdown-list-item-gap)}.md[data-v-76671258] li:has(>.paragraph-node>.checkbox-node,>.markdown-renderer>.node-slot>.node-content>.paragraph-node>.checkbox-node){list-style:none;margin-left:calc(-1 * var(--markdown-list-indent));padding-left:calc(var(--markdown-task-size) + var(--markdown-task-label-gap));position:relative;min-height:var(--markdown-task-size)}.md[data-v-76671258] li:has(>.paragraph-node>.checkbox-node,>.markdown-renderer>.node-slot>.node-content>.paragraph-node>.checkbox-node)+li{margin-top:var(--markdown-task-item-gap)}.md[data-v-76671258] .paragraph-node:has(>.checkbox-node){position:relative}.md[data-v-76671258] .checkbox-node{position:absolute;top:calc((1lh - var(--markdown-task-size)) / 2);inset-inline-start:calc(-1 * (var(--markdown-task-size) + var(--markdown-task-label-gap)));width:var(--markdown-task-size);height:var(--markdown-task-size);margin:0;align-items:center;justify-content:center;color:var(--markdown-task-checked-color)}.md[data-v-76671258] :not(pre)>code,.md[data-v-76671258] .inline-code{font:var(--markdown-font-weight-regular) var(--markdown-code-font-size)/var(--markdown-code-line-height) var(--markdown-code-font-family);background:var(--markdown-inline-code-background);color:var(--markdown-text-color);border:0;padding:var(--markdown-inline-code-padding-block) var(--markdown-inline-code-padding-inline);border-radius:var(--markdown-inline-code-radius);box-decoration-break:clone}.md[data-v-76671258] :is(strong,b) code{font-weight:var(--markdown-font-weight-emphasis)}.md[data-v-76671258] .code-block-container{margin:0;border:var(--markdown-code-border-width) solid var(--markdown-border-color);border-radius:var(--markdown-code-radius);background:var(--markdown-code-background);box-shadow:var(--markdown-code-shadow);overflow:hidden;--vscode-editor-font-size: var(--markdown-code-font-size);--vscode-editor-line-height: calc(var(--markdown-code-font-size) * var(--markdown-code-line-height))}.md[data-v-76671258] .code-block-header,.md[data-v-76671258] .mermaid-block-header,.diff-bar[data-v-76671258]{-webkit-user-select:none;user-select:none}.md[data-v-76671258] .code-block-header{background:var(--markdown-code-header-background);border-bottom:0;padding:var(--markdown-code-header-padding-block) var(--markdown-code-header-padding-end) var(--markdown-code-header-padding-block) var(--markdown-code-header-padding-start);min-height:var(--markdown-code-header-min-height);backdrop-filter:blur(var(--markdown-code-backdrop-blur));border-radius:0;color:var(--markdown-secondary-icon-color);font:var(--markdown-font-weight-regular) var(--markdown-code-header-font-size)/var(--markdown-code-header-line-height) var(--markdown-font-family);--ms-gap-header-main: var(--markdown-code-action-gap);--ms-gap-header-actions: var(--markdown-code-action-gap)}.md[data-v-76671258] .code-block-header *{color:var(--markdown-secondary-icon-color);font:var(--markdown-font-weight-regular) var(--markdown-code-header-font-size)/var(--markdown-code-header-line-height) var(--markdown-font-family)}.md[data-v-76671258] .code-block-header .code-header-main{font-family:var(--markdown-font-family)}.md[data-v-76671258] .code-block-header .code-header-title{font-size:var(--markdown-code-font-size);font-weight:var(--markdown-font-weight-regular)}.md[data-v-76671258] .code-block-header .code-action-btn{color:var(--markdown-secondary-icon-color);background:transparent;border:none;border-radius:var(--markdown-code-action-radius);cursor:pointer;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.md[data-v-76671258] .code-block-header .code-action-btn:hover{background:var(--markdown-code-action-hover-background);color:var(--markdown-text-color)}.md[data-v-76671258] .code-block-header .code-action-btn:hover *{color:var(--markdown-text-color)}.md[data-v-76671258] .code-block-header .code-action-btn:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.md[data-v-76671258] .code-block-header .code-action-btn *{pointer-events:none}.md[data-v-76671258] .code-block-header .md-code-wrap-toggle[aria-pressed=true],.md[data-v-76671258] .code-block-header .md-code-nums-toggle[aria-pressed=true]{background:var(--markdown-code-toggle-background);color:var(--markdown-text-color)}.md[data-v-76671258] .code-block-header .md-code-wrap-toggle[aria-pressed=true] *,.md[data-v-76671258] .code-block-header .md-code-nums-toggle[aria-pressed=true] *{background:transparent;color:var(--markdown-text-color)}.md[data-v-76671258] .code-block-header .md-code-wrap-toggle[aria-pressed=true]:hover,.md[data-v-76671258] .code-block-header .md-code-nums-toggle[aria-pressed=true]:hover{background:var(--markdown-code-toggle-background)}.md[data-v-76671258] .code-block-container.md-code-wrap pre{white-space:pre-wrap!important;overflow-wrap:anywhere}.md[data-v-76671258] .code-block-container ::selection,.md[data-v-76671258] .diff-wrap ::selection{background:var(--color-code-selection);color:var(--color-code-selection-text)}.md[data-v-76671258] .code-block-shell-content,.md[data-v-76671258] pre[data-markstream-pre]{max-height:var(--markdown-code-max-height);overflow:auto;background:var(--markdown-code-background)}.md[data-v-76671258] .code-editor-container{height:auto!important;max-height:var(--markdown-code-max-height)!important;overflow:hidden!important;line-height:var(--markdown-code-line-height);--diffs-gap-block: 0;--diffs-font-size: var(--markdown-code-font-size);--diffs-font-family: var(--markdown-code-font-family)}.md[data-v-76671258] .code-editor-container diffs-container{--diffs-line-height: var(--markdown-code-line-height)}.md[data-v-76671258] .code-pre-fallback>.markstream-pre__line-numbers{display:none}.md[data-v-76671258] .code-block-container .code-pre-fallback{padding:0 var(--markdown-code-padding-inline) var(--markdown-code-padding-bottom);line-height:var(--markdown-code-line-height)!important}.md[data-v-76671258] .code-block-container pre:not(.code-pre-fallback):not(.markstream-pre--line-numbers),.md[data-v-76671258] pre[data-markstream-pre]:not(.code-pre-fallback):not(.markstream-pre--line-numbers){margin:0;padding:0 var(--markdown-code-padding-inline) var(--markdown-code-padding-bottom);overflow-x:auto;font:var(--markdown-code-font-size)/var(--markdown-code-line-height) var(--markdown-code-font-family)}.md[data-v-76671258] .code-block-container pre code{font:inherit;color:var(--markdown-text-color);background:none;border:none;padding:0;border-radius:0}.md[data-v-76671258] pre[data-markstream-pre],.md[data-v-76671258] .code-pre-fallback,.md[data-v-76671258] .code-block-shell-content pre:not(.shiki),.md[data-v-76671258] .code-block-shell-content pre:not(.shiki) code{color:var(--markdown-text-color)}.md[data-v-76671258] a{color:var(--markdown-link-color);text-decoration:underline;text-underline-offset:auto}.md[data-v-76671258] a:hover{text-decoration:underline;text-underline-offset:auto}.md[data-v-76671258] a.mention-pill{color:var(--markdown-secondary-icon-color);text-decoration:none}.md[data-v-76671258] a.mention-folder:hover{text-decoration:none}.md[data-v-76671258] .katex-display{overflow-x:auto;overflow-y:hidden;padding:0;margin:0}.md[data-v-76671258] .math-inline{vertical-align:baseline}.md[data-v-76671258] blockquote{position:relative;margin:0;padding:0 0 0 var(--markdown-quote-gutter);font-size:var(--markdown-quote-font-size);line-height:var(--markdown-quote-line-height);border-left:none;color:var(--markdown-text-color)}.md[data-v-76671258] blockquote:before{content:"";position:absolute;left:calc((var(--markdown-quote-gutter) - var(--markdown-quote-rule-width)) / 2);top:var(--markdown-quote-rule-inset);bottom:var(--markdown-quote-rule-inset);width:var(--markdown-quote-rule-width);border-radius:var(--markdown-quote-rule-radius);background:var(--markdown-quote-rule-color)}.md[data-v-76671258] .blockquote>.paragraph-node{margin:0}.md[data-v-76671258] .blockquote>.paragraph-node+.paragraph-node{margin-top:var(--markdown-paragraph-gap)}.md[data-v-76671258] hr{border:none;border-top:var(--markdown-divider-width) solid var(--markdown-border-color);margin:0}.md[data-v-76671258] .table-node-wrapper{width:100%;max-width:100%!important;min-width:0;overflow-x:auto!important;scrollbar-gutter:auto!important;position:relative;left:50%;transform:translate(-50%);border:var(--markdown-table-border-width) solid var(--markdown-border-color);border-radius:var(--markdown-table-radius);--table-cell-cap: var(--p-table-cell-max)}@supports (interpolate-size: allow-keywords){.md[data-v-76671258] .table-node-wrapper{interpolate-size:allow-keywords;transition:width var(--duration-base) var(--ease-out),min-width var(--duration-base) var(--ease-out),max-width var(--duration-base) var(--ease-out),margin-left var(--duration-base) var(--ease-out)}@media(prefers-reduced-motion:reduce){.md[data-v-76671258] .table-node-wrapper{transition:none}}}.md[data-v-76671258] .md-table-scroll-host{position:relative;min-width:0}.md[data-v-76671258] .md-table-scroll-host>.md-code-scrollbar{opacity:0;pointer-events:none;transition:opacity var(--markdown-code-scrollbar-transition-duration) var(--ease-out)}.md[data-v-76671258] .md-table-scroll-host:is(:hover,:focus-within)>.md-code-scrollbar,.md[data-v-76671258] .md-table-scroll-host.md-table-scrolling>.md-code-scrollbar{opacity:1;pointer-events:auto}@media(prefers-reduced-motion:reduce){.md[data-v-76671258] .md-table-scroll-host>.md-code-scrollbar{transition:none}}.md[data-v-76671258] table{border-collapse:separate;border-spacing:0;border:0;border-radius:0;box-shadow:none;font-size:var(--markdown-table-font-size);line-height:var(--markdown-table-line-height);margin:0;width:max-content!important;min-width:100%;max-width:none!important;table-layout:auto!important}.md[data-v-76671258] table :is(th,td){border:0;border-bottom:var(--markdown-table-row-border-width) solid var(--markdown-border-color);padding:var(--markdown-table-cell-padding-block) var(--markdown-table-cell-padding-end) var(--markdown-table-cell-padding-block) var(--markdown-table-cell-padding-start);text-align:left;vertical-align:top;max-width:var(--table-cell-cap);background:transparent}.md[data-v-76671258] table :is(th,td):first-child{padding-left:var(--markdown-table-radius)}.md[data-v-76671258] table :is(th,td):not(:first-child){border-left:var(--markdown-table-column-border-width) solid var(--markdown-border-color)}.md[data-v-76671258] table :is(th,td):nth-child(2){border-left-width:var(--markdown-table-header-column-border-width)}.md[data-v-76671258] table:has(>colgroup) :is(th,td){overflow-wrap:anywhere}.md[data-v-76671258] table thead th{border-bottom-width:var(--markdown-table-header-border-width);font-weight:var(--markdown-font-weight-emphasis);background:transparent}.md[data-v-76671258] table tbody tr:last-child td{border-bottom:0}.md[data-v-76671258] table tbody tr:nth-child(n){background:transparent}.md[data-v-76671258] .table-node .text-node{display:inline}.md[data-v-76671258] table .markdown-renderer{font-size:inherit;line-height:inherit}.md[data-v-76671258] .table-node-wrapper.md-table-scroll-overflow>table{mask-image:linear-gradient(to right,transparent var(--md-table-visible-start),black calc(var(--md-table-visible-start) + var(--md-table-fade-start)),black calc(var(--md-table-visible-end) - var(--md-table-fade-end)),transparent var(--md-table-visible-end))}.md[data-v-76671258] .md-table-actions{position:absolute;z-index:var(--markdown-z-controls);display:flex;flex-direction:column;gap:var(--markdown-code-action-gap)}.md[data-v-76671258] .md-table-toggle,.md[data-v-76671258] .md-table-copy{display:none;align-items:center;justify-content:center;width:var(--markdown-code-action-size);height:var(--markdown-code-action-size);color:var(--markdown-secondary-icon-color);background:var(--markdown-code-header-background);border:1px solid var(--markdown-border-color);border-radius:var(--markdown-code-action-radius);box-shadow:none;cursor:pointer;opacity:0;transition:opacity var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}@container (min-width: 760px){.md[data-v-76671258] .table-node-wrapper:has(+.md-table-actions){min-height:var(--markdown-code-action-size)}.md[data-v-76671258] .table-node-wrapper:has(+.md-table-actions>.md-table-copy){min-height:calc(2 * var(--markdown-code-action-size) + var(--markdown-code-action-gap))}.md[data-v-76671258] .md-table-toggle,.md[data-v-76671258] .md-table-copy{display:inline-flex}}.md[data-v-76671258] .table-node-wrapper:is(:hover,:focus-within)+.md-table-actions :is(.md-table-toggle,.md-table-copy),.md[data-v-76671258] .md-table-actions:is(:hover,:focus-within) :is(.md-table-toggle,.md-table-copy),.md[data-v-76671258] .table-node-wrapper.md-table-wide+.md-table-actions .md-table-toggle{opacity:1}@media(hover:none){.md[data-v-76671258] .md-table-toggle,.md[data-v-76671258] .md-table-copy{opacity:1}}.md[data-v-76671258] .md-table-toggle:hover,.md[data-v-76671258] .md-table-copy:hover{background:var(--markdown-code-background);color:var(--markdown-text-color)}.md[data-v-76671258] .md-table-toggle:focus-visible,.md[data-v-76671258] .md-table-copy:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.md[data-v-76671258] .md-table-toggle svg,.md[data-v-76671258] .md-table-copy svg{display:block}.md[data-v-76671258] .table-node tbody tr:hover{background-color:transparent!important}.diff-wrap[data-v-76671258]{margin-top:var(--markdown-block-space-before);border:var(--markdown-code-border-width) solid var(--markdown-border-color);border-radius:var(--markdown-code-radius);background:var(--markdown-code-background);box-shadow:var(--markdown-code-shadow);overflow:hidden}.diff-bar[data-v-76671258]{display:flex;align-items:center;gap:var(--markdown-code-action-gap);min-height:var(--markdown-code-header-min-height);padding:var(--markdown-code-header-padding-block) var(--markdown-code-header-padding-end) var(--markdown-code-header-padding-block) var(--markdown-code-header-padding-start);background:var(--markdown-code-header-background);color:var(--markdown-text-color);font:var(--markdown-code-header-font-size)/var(--markdown-code-header-line-height) var(--markdown-font-family)}.diff-lang[data-v-76671258]{margin-right:auto}.diff-copy[data-v-76671258]{display:inline-flex;align-items:center;justify-content:center;color:var(--markdown-secondary-icon-color);background:transparent;border:none;border-radius:var(--markdown-code-action-radius);cursor:pointer;padding:2px 6px;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.diff-copy[data-v-76671258]:hover{background:var(--markdown-code-background);color:var(--markdown-text-color)}.diff-copy[data-v-76671258]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.diff-bar[data-v-76671258] .ui-icon-button[aria-pressed=true]{background:var(--markdown-code-toggle-background);color:var(--markdown-text-color)}.diff-bar[data-v-76671258] .ui-icon-button[aria-pressed=true]:hover{background:var(--markdown-code-toggle-background)}.diff-bar[data-v-76671258] .ui-icon-button svg{width:var(--markdown-code-action-icon-size);height:var(--markdown-code-action-icon-size)}.diff-wrap.md-code-wrap .diff-pre[data-v-76671258]{white-space:pre-wrap;overflow-wrap:anywhere}.diff-wrap.md-code-wrap .diff-pre code[data-v-76671258]{width:auto}.diff-wrap.md-code-wrap:not(.md-code-nums) .diff-line[data-v-76671258]{padding-left:calc(var(--markdown-code-padding-inline) + var(--diff-sign-col))}.diff-wrap.md-code-wrap:not(.md-code-nums) .diff-sign[data-v-76671258]{margin-left:calc(-1 * var(--diff-sign-col))}.diff-wrap.md-code-nums .diff-pre[data-v-76671258]{counter-reset:md-diff-line;position:relative;isolation:isolate}.diff-wrap.md-code-nums .diff-line[data-v-76671258]{padding-left:calc(var(--markdown-code-padding-inline) + var(--md-nums-gutter, 4ch) + var(--diff-sign-col))}.diff-wrap.md-code-nums .diff-line[data-v-76671258]:not(.diff-hunk){counter-increment:md-diff-line}.diff-wrap.md-code-nums .diff-line[data-v-76671258]:not(.diff-hunk):before{content:counter(md-diff-line);display:inline-block;position:sticky;left:0;box-sizing:content-box;padding-left:var(--markdown-code-padding-inline);padding-right:1ch;background:var(--markdown-code-gutter-background);z-index:var(--markdown-z-controls);width:calc(var(--md-nums-gutter, 4ch) - 1ch);overflow:visible;margin-left:calc(-1 * (var(--md-nums-gutter, 4ch) + var(--diff-sign-col) + var(--markdown-code-padding-inline)));margin-right:0;text-align:right;color:var(--markdown-secondary-icon-color);user-select:none}.diff-pre[data-v-76671258]{max-height:var(--markdown-code-max-height);overflow-y:auto;margin:0;padding:0 0 var(--markdown-code-padding-bottom);overflow-x:auto;background:var(--markdown-code-background)}.diff-pre code[data-v-76671258]{display:block;width:max-content;min-width:100%;font:var(--markdown-code-font-size)/var(--markdown-code-line-height) var(--markdown-code-font-family);color:var(--markdown-text-color)}.diff-line[data-v-76671258]{display:block;width:100%;padding:0 var(--markdown-code-padding-inline)}.diff-sign[data-v-76671258]{display:inline-block;width:var(--diff-sign-col);text-align:center;color:var(--markdown-secondary-icon-color);user-select:none}.diff-text[data-v-76671258]{color:var(--markdown-text-color)}.diff-add[data-v-76671258]{background:var(--color-success-soft);box-shadow:inset 2px 0 color-mix(in srgb,var(--color-success) 55%,transparent)}.diff-add .diff-sign[data-v-76671258]{color:var(--color-success)}.diff-del[data-v-76671258]{background:var(--color-danger-soft);box-shadow:inset 2px 0 color-mix(in srgb,var(--color-danger) 55%,transparent)}.diff-del .diff-sign[data-v-76671258]{color:var(--color-danger)}.diff-hunk[data-v-76671258]{background:var(--markdown-code-header-background)}.diff-hunk .diff-text[data-v-76671258]{color:var(--markdown-secondary-icon-color)}.md[data-v-76671258] .code-block-header .code-header-title{color:var(--markdown-text-color)}.md[data-v-76671258] .code-block-header .code-action-btn,.md[data-v-76671258] .mermaid-action-btn,.diff-bar[data-v-76671258] .ui-icon-button,.diff-copy[data-v-76671258]{width:var(--markdown-code-action-size);height:var(--markdown-code-action-size);padding:0;flex:none}.md[data-v-76671258] .code-block-header .code-action-btn svg,.md[data-v-76671258] .mermaid-action-btn svg{width:var(--markdown-code-action-icon-size);height:var(--markdown-code-action-icon-size)}.md[data-v-76671258] .checkbox-node svg{width:var(--markdown-task-size);height:var(--markdown-task-size)}.md[data-v-76671258] .checkbox-node rect{rx:50%}.md[data-v-76671258] .checkbox-checked rect{x:2px;y:2px;width:20px;height:20px}.md[data-v-76671258] .checkbox-unchecked rect{stroke-width:1.2px}.md[data-v-76671258] .checkbox-checked{color:var(--markdown-task-checked-color)}.md[data-v-76671258] .checkbox-unchecked{color:var(--markdown-task-unchecked-color)}.md[data-v-76671258] .checkbox-checked path{stroke:var(--markdown-task-check-color)}.md[data-v-76671258] .mermaid-block-container{margin:0;border:var(--markdown-code-border-width) solid var(--markdown-border-color);border-radius:var(--markdown-code-radius);background:var(--markdown-code-background);overflow:hidden}.md[data-v-76671258] .mermaid-block-header{gap:var(--markdown-code-action-gap);border:0;min-height:var(--markdown-code-header-min-height);padding:var(--markdown-code-header-padding-block) var(--markdown-code-header-padding-end) var(--markdown-code-header-padding-block) var(--markdown-code-header-padding-start);backdrop-filter:blur(var(--markdown-code-backdrop-blur));font:var(--markdown-font-weight-regular) var(--markdown-code-header-font-size)/var(--markdown-code-header-line-height) var(--markdown-font-family)}.md[data-v-76671258] .mermaid-action-btn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.md[data-v-76671258] .mermaid-action-btn:not(:has(svg)){width:auto;min-width:var(--markdown-code-action-size);padding-inline:.5rem}.md[data-v-76671258] .mermaid-action-btn svg{flex:none}.md[data-v-76671258] :is(.code-block-container,.mermaid-block-container){isolation:isolate}.md[data-v-76671258] :is(.code-block-header,.mermaid-block-header){border-start-start-radius:calc(var(--markdown-code-radius) - var(--markdown-code-border-width));border-start-end-radius:calc(var(--markdown-code-radius) - var(--markdown-code-border-width))}.md[data-v-76671258] .mermaid-label-text{color:var(--markdown-text-color)}.md[data-v-76671258] .mermaid-mode-toggle-group{background:var(--markdown-code-toggle-background);border-radius:var(--markdown-code-toggle-radius);padding:var(--markdown-code-toggle-padding)}.md[data-v-76671258] .mermaid-mode-btn{padding:var(--markdown-code-toggle-item-padding-block) var(--markdown-code-toggle-item-padding-inline);border-radius:var(--markdown-code-toggle-item-inactive-radius);font:inherit;color:var(--markdown-text-color);opacity:1}.md[data-v-76671258] .mermaid-header-actions>.mermaid-action-btn{opacity:0}.md[data-v-76671258] .mermaid-block-container:is(:hover,:focus-within) .mermaid-action-btn{opacity:1}.md[data-v-76671258] .mermaid-source-code{font:var(--markdown-code-font-size)/var(--markdown-code-line-height) var(--markdown-code-font-family);color:var(--markdown-text-color)}.md[data-v-76671258] .mermaid-preview-area{padding:0 var(--markdown-code-padding-inline) var(--markdown-code-padding-bottom)}.md[data-v-76671258] .image-error{user-select:none}.md[data-v-76671258] .image-node-container{overflow:hidden;border-radius:var(--markdown-image-radius);border:var(--markdown-image-border-width) solid var(--markdown-border-color);max-width:100%;background:var(--markdown-image-background)}.md[data-v-76671258] .image-node__img{display:block;max-width:100%;min-width:0;min-height:0;height:auto}.md[data-v-76671258] .image-node-container[data-caption]:after{content:attr(data-caption);position:absolute;inset:auto 0 0;padding:var(--markdown-image-caption-padding-block) var(--markdown-image-caption-padding-inline);color:var(--markdown-image-caption-color);background:var(--markdown-image-caption-background);font:var(--markdown-image-caption-font-size)/var(--markdown-image-caption-line-height) var(--markdown-font-family);text-shadow:var(--markdown-image-caption-shadow);pointer-events:none}@media(hover:none){.md[data-v-76671258] .mermaid-header-actions>.mermaid-action-btn{opacity:1}}.md[data-v-76671258] .markdown-preview-active>:not(.code-block-header,.markdown-code-preview){display:none}.md[data-v-76671258] .markdown-preview-active>.code-block-header :is(.md-code-nums-toggle,.md-code-wrap-toggle){display:none}.markdown-code-preview[data-v-76671258]{padding:0 var(--markdown-code-padding-inline) var(--markdown-code-padding-bottom)}.markdown-preview-toggle.ui-seg[data-v-76671258]{border:0;flex:none;padding:var(--markdown-code-toggle-padding);border-radius:var(--markdown-code-toggle-radius);background:var(--markdown-code-toggle-background)}.markdown-preview-toggle[data-v-76671258] .ui-seg__item{border-radius:var(--markdown-code-toggle-item-inactive-radius);padding:var(--markdown-code-toggle-item-padding-block) var(--markdown-code-toggle-item-padding-inline);min-width:var(--markdown-code-toggle-item-min-width);height:auto;color:var(--markdown-text-color);font:var(--markdown-font-weight-regular) var(--markdown-code-header-font-size)/var(--markdown-code-header-line-height) var(--markdown-font-family)}.markdown-preview-toggle[data-v-76671258] .ui-seg__indicator{display:none}.markdown-preview-toggle[data-v-76671258] .ui-seg__item.is-on,.md[data-v-76671258] .mermaid-mode-btn.is-active{background:var(--markdown-code-toggle-selected-background);border-radius:var(--markdown-code-toggle-preview-radius);box-shadow:none}.markdown-preview-toggle[data-v-76671258] .ui-seg__item:focus-visible{box-shadow:var(--p-focus-ring)}.md[data-v-76671258] .code-block-container:has(.markdown-preview-toggle) .code-action-btn{opacity:0}.md[data-v-76671258] .code-block-container:is(:hover,:focus-within) .code-action-btn{opacity:1}.md[data-v-76671258] .mermaid-block-header>:first-child{margin-right:auto}.md[data-v-76671258] .mermaid-mode-btn svg{display:none}.md[data-v-76671258] .mermaid-label-text{font:inherit}.md[data-v-76671258] .mermaid-mode-toggle-group{order:2}.md[data-v-76671258] .mermaid-mode-btn:first-child{order:1}@media(hover:none){.md[data-v-76671258] .code-block-container:has(.markdown-preview-toggle) .code-action-btn{opacity:1}}.md[data-v-76671258] .code-block-shell-content:has(.code-editor-container){padding:0}.md[data-v-76671258] :is(.code-block-container,.diff-wrap){position:relative}.md[data-v-76671258] .katex-display>.katex{text-align:left}.md[data-v-76671258] .node-content>pre[data-markstream-pre]{margin:0;max-height:var(--markdown-code-max-height);overflow:auto;border:var(--markdown-code-border-width) solid var(--markdown-border-color);border-radius:var(--markdown-code-radius);padding:var(--markdown-code-padding-inline)}.md[data-v-76671258] .mermaid-preview-area svg rect.actor{fill:var(--markdown-diagram-actor-background)!important;stroke:var(--markdown-diagram-actor-border-color)!important}.md[data-v-76671258] .mermaid-preview-area svg text.actor,.md[data-v-76671258] .mermaid-preview-area svg text.actor tspan{fill:var(--markdown-diagram-actor-text-color)!important}.md[data-v-76671258] li>.markdown-renderer:has(>.node-slot>.node-content>.paragraph-node>.checkbox-node){contain:layout style}.hl-code[data-v-08d26993]{border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);overflow:auto;max-height:calc(24 * 1.5 * var(--ui-font-size));overscroll-behavior:contain;font-family:var(--font-mono);font-size:var(--code-font-size);line-height:var(--leading-normal);font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none}.hl-code[data-v-08d26993]:not(.framed){border:none;border-radius:0;background:transparent;max-height:none;overflow:visible}.hl-body[data-v-08d26993]{width:max-content;min-width:100%;padding:var(--space-1) 0 var(--space-2)}.hl-code.plain-pad .hl-body[data-v-08d26993]{padding-left:var(--space-3)}.hl-row[data-v-08d26993]{display:flex;align-items:flex-start;min-height:calc(1em * var(--leading-normal));white-space:pre;width:100%}.hl-gutter[data-v-08d26993]{flex:none;box-sizing:content-box;min-width:var(--gutter-ch, 4ch);padding:0 var(--space-2);text-align:right;color:var(--color-text-faint);user-select:none;border-right:var(--p-hairline) solid var(--color-line);font-variant-numeric:tabular-nums}.hl-sign[data-v-08d26993]{flex:none;width:16px;text-align:center;color:var(--color-text-muted);user-select:none}.hl-text[data-v-08d26993]{flex:none;padding-right:14px;white-space:pre;color:var(--color-text)}.hl-gutter+.hl-text[data-v-08d26993]{padding-left:var(--space-2)}.hl-code.wrap .hl-body[data-v-08d26993]{width:100%}.hl-code.wrap .hl-text[data-v-08d26993]{flex:1 1 auto;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}.row-add[data-v-08d26993]{background:var(--color-diff-add-bg)}.row-add .hl-sign[data-v-08d26993]{color:var(--color-success)}.row-del[data-v-08d26993]{background:var(--color-diff-del-bg)}.row-del .hl-sign[data-v-08d26993]{color:var(--color-danger)}.row-hunk[data-v-08d26993]{background:var(--color-surface-sunken)}.row-hunk .hl-text[data-v-08d26993]{color:var(--color-text-muted)}.hl-code.gutter .row-add[data-v-08d26993]{box-shadow:inset 2px 0 color-mix(in srgb,var(--color-success) 55%,transparent)}.hl-code.gutter .row-del[data-v-08d26993]{box-shadow:inset 2px 0 color-mix(in srgb,var(--color-danger) 55%,transparent)}.open-in[data-v-8fd318e5]{display:inline-flex;align-items:stretch;flex:none;height:26px;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-xs);overflow:hidden}.open-in[data-v-8fd318e5],.open-in[data-v-8fd318e5] *{-webkit-app-region:no-drag}.open-in-main[data-v-8fd318e5],.open-in-caret[data-v-8fd318e5]{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;padding:0}.open-in-main[data-v-8fd318e5]{width:30px}.open-in-caret[data-v-8fd318e5]{width:22px}.open-in-main[data-v-8fd318e5]:hover:not(:disabled),.open-in-caret[data-v-8fd318e5]:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-strong)}.open-in-main[data-v-8fd318e5]:focus-visible,.open-in-caret[data-v-8fd318e5]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.open-in-main[data-v-8fd318e5]:disabled,.open-in-caret[data-v-8fd318e5]:disabled{cursor:default;opacity:.5}.open-in.open .open-in-caret[data-v-8fd318e5]{background:var(--color-selected);color:var(--color-text-strong)}.open-in-sep[data-v-8fd318e5]{flex:none;width:var(--p-hairline);margin:5px 0;background:var(--color-line)}.open-in-icon[data-v-8fd318e5]{width:16px;height:16px;border-radius:4px}.open-in-menu[data-v-8fd318e5]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.om-icon[data-v-8fd318e5]{width:16px;height:16px;flex:none;border-radius:4px}.om-label[data-v-8fd318e5]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ftpm-menu[data-v-51541854]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.ftpm-head[data-v-51541854]{padding:var(--space-1) var(--space-2) var(--space-05);color:var(--color-text-faint);font-size:var(--text-xs);user-select:none}.ftpm-check-slot[data-v-51541854]{width:16px;flex:none}.menu-pop-enter-active[data-v-51541854]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-51541854]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-51541854],.menu-pop-leave-to[data-v-51541854]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.panel-file-head .ui-panel-header__title{font:400 var(--ui-c1) var(--font-ui);direction:rtl;text-align:left}.panel-file-head-actions{margin-left:auto;min-width:0;flex:none;display:flex;align-items:center;gap:var(--space-2)}.tree-toggle-head{order:2}.tree-toggle-head.tree-toggle-left{order:-1}.file-preview[data-v-31f9f972]{display:flex;flex-direction:column;height:100%;background:var(--bg);font-family:var(--mono);min-width:0;container-type:inline-size}.fp-content[data-v-31f9f972]{display:flex;flex:1;min-height:0;overflow:hidden}.fp-content>.fp-body[data-v-31f9f972]{flex:1;min-width:0}.fp-sidebar[data-v-31f9f972]{flex:none;min-height:0;display:flex;flex-direction:column}.fp-sidebar-left[data-v-31f9f972]{order:-1}@container (max-width: 360px){.fp-sidebar[data-v-31f9f972],.fp-tree-toggle[data-v-31f9f972],.fp-tree-settings[data-v-31f9f972]{display:none}}.fp-empty[data-v-31f9f972],.fp-loading[data-v-31f9f972]{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:var(--ui-font-size)}.fp-assumed[data-v-31f9f972]{flex:none;padding:5px 12px;font-family:var(--sans);font-size:var(--ui-font-size);color:var(--muted);background:var(--panel);border-bottom:var(--p-hairline) solid var(--line2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;text-align:left}.fp-truncated[data-v-31f9f972]{flex:none;padding:5px 12px;font-family:var(--sans);font-size:var(--ui-font-size);color:var(--color-warning, var(--muted));background:var(--panel);border-bottom:var(--p-hairline) solid var(--line2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fp-menu[data-v-31f9f972]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.fp-check[data-v-31f9f972]{color:var(--color-success)}.fp-body[data-v-31f9f972]{flex:1;min-height:0;overflow:auto;padding-bottom:var(--pfc-host-h, 0px)}.file-preview.fp-refreshing .fp-body[data-v-31f9f972]{opacity:.6}.fp-markdown[data-v-31f9f972]{padding:16px 20px}.fp-code[data-v-31f9f972]{background:var(--bg)}.fp-code[data-v-31f9f972] .hl-row.target,.fp-table tr.target th[data-v-31f9f972],.fp-table tr.target td[data-v-31f9f972]{background:var(--color-accent-soft)}.fp-html-frame[data-v-31f9f972],.fp-pdf-frame[data-v-31f9f972]{width:100%;height:100%;border:0;background:var(--color-surface-raised)}.fp-pdf-wrap[data-v-31f9f972]{background:var(--panel2)}.fp-table-wrap[data-v-31f9f972]{background:var(--bg)}.fp-table[data-v-31f9f972]{border-collapse:collapse;min-width:100%;font:var(--code-font-size)/var(--leading-normal) var(--mono)}.fp-table th[data-v-31f9f972]{position:sticky;left:0;z-index:1;width:44px;min-width:44px;padding:2px 8px;text-align:right;color:var(--faint);background:var(--panel);border-right:var(--p-hairline) solid var(--line2);user-select:none}.fp-table td[data-v-31f9f972]{padding:2px 10px;border-right:var(--p-hairline) solid var(--line2);border-bottom:var(--p-hairline) solid var(--line2);white-space:pre}.fp-image-wrap[data-v-31f9f972]{display:flex;align-items:center;justify-content:center;padding:24px;background:var(--panel2)}.fp-image[data-v-31f9f972]{max-width:100%;max-height:100%;object-fit:contain;border:var(--p-hairline) solid var(--line);border-radius:4px;background:var(--media-alpha-canvas)}.fp-image.actual[data-v-31f9f972]{max-width:none;max-height:none}.fp-binary-wrap[data-v-31f9f972]{display:flex;align-items:center;justify-content:center}.fp-binary-card[data-v-31f9f972]{display:flex;align-items:center;gap:12px;padding:20px 24px;border:var(--p-hairline) solid var(--line);border-radius:6px;background:var(--panel);color:var(--muted);font-size:var(--ui-font-size);margin:32px auto;max-width:480px}.fp-binary-icon[data-v-31f9f972]{color:var(--faint);flex:none}.fp-error[data-v-31f9f972]{flex-direction:column;padding:24px;text-align:center}@keyframes spin-31f9f972{to{transform:rotate(360deg)}}.spinner[data-v-31f9f972]{display:inline-block;width:14px;height:14px;border:var(--p-hairline) solid var(--line);border-top-color:var(--color-accent);border-radius:50%;animation:spin-31f9f972 .7s linear infinite}@media(max-width:640px){.fp-markdown[data-v-31f9f972]{padding:14px 16px}.fp-body.fp-code[data-v-31f9f972]{-webkit-overflow-scrolling:touch}}.fp-empty[data-v-31f9f972],.fp-loading[data-v-31f9f972]{font-family:var(--sans)}.fp-binary-card[data-v-31f9f972]{border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md)}.fp-binary-label[data-v-31f9f972]{font-family:var(--sans)}.fp-image[data-v-31f9f972]{border-radius:var(--radius-md)}.seg-btn[data-v-31f9f972]{font-family:var(--sans)}.file-tree[data-v-29dade17]{--tree-base-indent: var(--file-tree-base-indent);--tree-indent-step: var(--file-tree-indent-step);font-family:var(--font-ui)}.tree-list[data-v-29dade17]{list-style:none;margin:0;padding:var(--space-1)}.tree-node[data-v-29dade17]{overflow:hidden;interpolate-size:allow-keywords}.tree-collapse-enter-active[data-v-29dade17],.tree-collapse-leave-active[data-v-29dade17]{transition:block-size var(--duration-base) var(--ease-out),opacity var(--duration-fast) var(--ease-out),transform var(--duration-base) var(--ease-out)}.tree-collapse-enter-from[data-v-29dade17],.tree-collapse-leave-to[data-v-29dade17]{block-size:0;opacity:0;transform:translateY(-3px)}.tree-collapse-enter-to[data-v-29dade17],.tree-collapse-leave-from[data-v-29dade17]{block-size:auto;opacity:1;transform:translateY(0)}.tree-row[data-v-29dade17]{position:relative;display:flex;align-items:center;gap:var(--space-1-5);width:100%;height:var(--file-tree-row-h);padding:var(--space-1) var(--space-1) var(--space-1) 0;border:none;border-radius:var(--file-tree-row-radius);background:none;text-align:left;font-family:inherit;font-size:var(--ui-font-size);color:var(--color-text);cursor:pointer}.tree-row[data-v-29dade17]:before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--tree-base-indent) + var(--space-1-5));width:calc(var(--tree-depth, 0) * var(--tree-indent-step));background:repeating-linear-gradient(to right,var(--color-line) 0 1px,transparent 1px var(--tree-indent-step));pointer-events:none}.tree-row[data-v-29dade17]:hover{background:var(--color-hover)}.tree-row.is-selected[data-v-29dade17],.tree-row.is-selected[data-v-29dade17]:hover{background:var(--color-selected)}.tree-row[data-v-29dade17]:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.tree-lead[data-v-29dade17]{flex:none;color:var(--muted)}.tree-spinner[data-v-29dade17]{width:var(--p-ic-sm);height:var(--p-ic-sm)}.tree-name[data-v-29dade17]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-more[data-v-29dade17]{margin-left:auto;opacity:0}.tree-row:hover .tree-more[data-v-29dade17],.tree-row:focus-within .tree-more[data-v-29dade17]{opacity:1}.tree-row.is-empty[data-v-29dade17]{color:var(--muted);cursor:default}.tree-row.is-error[data-v-29dade17]{gap:var(--space-2);color:var(--color-danger);font-size:var(--text-xs);cursor:default}.tree-row.is-error[data-v-29dade17]:hover{background:none}.tree-error-text[data-v-29dade17]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-menu[data-v-29dade17]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.file-tree-sidebar[data-v-66531740]{display:flex;flex-direction:column;flex:1;min-height:0}.fts-head[data-v-66531740]{display:flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2);flex:none}.fts-error[data-v-66531740]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-1) var(--space-2) var(--space-2);color:var(--color-danger);font-size:var(--text-xs);flex:none}.fts-body[data-v-66531740]{flex:1;min-height:0}.fts-results[data-v-66531740]{padding:var(--space-1)}.fts-result-name[data-v-66531740]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fts-result-dir[data-v-66531740]{min-width:0;max-width:45%;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.fts-hint[data-v-66531740]{display:flex;align-items:center;justify-content:center;padding:var(--space-4) var(--space-2);color:var(--muted);font-size:var(--text-xs)}@keyframes fts-spin-66531740{to{transform:rotate(360deg)}}.fts-spinning[data-v-66531740]{animation:fts-spin-66531740 .7s linear infinite}.rh[data-v-56c1557a]{width:4px;flex:none;position:relative;align-self:stretch;background:transparent;touch-action:none;margin:0 -2px;z-index:var(--z-dropdown)}.rh-bar[data-v-56c1557a]{position:absolute;inset:0 1px;background:transparent;transition:background .12s}.rh:hover .rh-bar[data-v-56c1557a]{background:var(--color-selected)}.rh.dragging .rh-bar[data-v-56c1557a]{background:var(--color-line-strong)}.rh[data-v-56c1557a]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.fts-frame[data-v-fdce48b4]{position:relative;flex:none;height:100%;min-height:0;display:flex;flex-direction:column}.fts-frame--right[data-v-fdce48b4]{border-left:var(--p-hairline) solid var(--color-line)}.fts-frame--left[data-v-fdce48b4]{border-right:var(--p-hairline) solid var(--color-line)}.fts-frame-resize[data-v-fdce48b4]{position:absolute;top:0;bottom:0}.fts-frame--right>.fts-frame-resize[data-v-fdce48b4]{left:calc(-1 * var(--space-1))}.fts-frame--left>.fts-frame-resize[data-v-fdce48b4]{right:calc(-1 * var(--space-1))}.fts-frame-body[data-v-fdce48b4]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.files-panel[data-v-bb2c16cd]{display:flex;flex-direction:column;height:100%;min-height:0;container-type:inline-size}.files-panel-body[data-v-bb2c16cd]{display:flex;flex:1;min-height:0;overflow:hidden}.files-panel-empty[data-v-bb2c16cd]{flex:1;min-height:0}.files-panel-aside-left[data-v-bb2c16cd]{order:-1}.files-panel>.file-preview[data-v-bb2c16cd]{flex:1;min-width:0;min-height:0}.gload[data-v-f0064e51]{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;min-width:100vw;min-height:100dvh;z-index:var(--z-toast);display:flex;align-items:center;justify-content:center;background:var(--bg)}.gload-box[data-v-f0064e51]{display:flex;flex-direction:column;align-items:center;gap:22px;transform:translateY(-6%)}.gload-logo[data-v-f0064e51]{width:128px;height:auto;color:var(--color-text);animation:gload-pop-f0064e51 .55s cubic-bezier(.22,1,.36,1) both}.gload-text[data-v-f0064e51]{font-family:var(--mono);font-size:var(--text-base);color:var(--muted);letter-spacing:.04em}.gload-textbox[data-v-f0064e51]{display:flex;flex-direction:column;align-items:center;gap:6px}.gload-stage[data-v-f0064e51]{font-size:var(--text-sm);color:var(--muted)}.gload-issue[data-v-f0064e51]{max-width:420px;text-align:center;font-size:var(--text-xs);color:var(--color-warning);overflow-wrap:anywhere}.gload-issue-detail[data-v-f0064e51]{max-width:420px;text-align:center;font-size:var(--text-xs);color:var(--muted);overflow-wrap:anywhere}@keyframes gload-pop-f0064e51{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.gload-logo[data-v-f0064e51]{animation:none}}.gload-text[data-v-f0064e51]{font-family:var(--sans)}.wordmark[data-v-77dd99b8]{display:block;width:100%;height:auto;color:var(--color-text)}.mascot-peek[data-v-18df3d96]{display:block;width:100%;height:auto;cursor:pointer;user-select:none;touch-action:manipulation}.eyes[data-v-18df3d96]{transform-box:fill-box;transform-origin:center;transition:transform var(--duration-fast) var(--ease-out)}.mascot-peek.blink-now .eyes[data-v-18df3d96]{transform:scaleY(.08)}.mascot-peek.peek-enter .eyes[data-v-18df3d96]{animation:peek-enter-blink-18df3d96 .24s var(--ease-in-out) .45s backwards}@keyframes peek-enter-blink-18df3d96{0%,to{transform:scaleY(1)}50%{transform:scaleY(.08)}}@media(prefers-reduced-motion:reduce){.eyes[data-v-18df3d96]{transition:none}.mascot-peek.peek-enter .eyes[data-v-18df3d96]{animation:none}}.emoji-picker[data-v-c65bec16]{--ep-cell: 26px}.ep-search[data-v-c65bec16]{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-faint)}.ep-search[data-v-c65bec16]:hover,.ep-search[data-v-c65bec16]:focus-within{background:var(--color-surface-sunken)}.ep-input[data-v-c65bec16]{flex:1;min-width:0;height:calc(var(--ep-cell) + 2px);font-size:var(--text-sm);color:var(--color-text);background:transparent;border:none;outline:none}.ep-input[data-v-c65bec16]::placeholder{color:var(--color-text-faint)}.ep-scroll[data-v-c65bec16]{max-height:calc(var(--ep-cell) * 10 + var(--space-1));overflow-y:auto;padding:0 var(--space-1)}.ep-label[data-v-c65bec16]{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--color-text-faint);user-select:none}.ep-grid[data-v-c65bec16]{display:grid;grid-template-columns:repeat(8,var(--ep-cell));gap:var(--space-1);padding-bottom:var(--space-1)}.ep-e[data-v-c65bec16]{height:var(--ep-cell);display:grid;place-items:center;padding:0;font-size:var(--text-lg);background:transparent;border:none;border-radius:var(--radius-xs);cursor:pointer}.ep-e[data-v-c65bec16]:hover{background:var(--color-hover)}.ep-e[data-v-c65bec16]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ep-e.sel[data-v-c65bec16]{background:var(--color-accent-soft)}.ep-empty[data-v-c65bec16]{padding:var(--space-3) var(--space-2);font-size:var(--text-xs);color:var(--color-text-faint);text-align:center;user-select:none}.se[data-v-74404753]{--se-pad-x: var(--space-2);display:block;margin:0;padding:8px var(--se-pad-x);border-radius:var(--radius-sm);font-family:var(--font-ui);color:var(--color-text);cursor:pointer;position:relative}.se[data-v-74404753]:hover{background:var(--sb-hover, var(--color-hover));color:var(--color-text)}.se.on[data-v-74404753]{background:var(--sb-selected, var(--color-selected));color:var(--color-text)}.row[data-v-74404753]{display:flex;align-items:center;gap:var(--sb-gap, 6px);min-width:0}.left[data-v-74404753]{display:flex;align-items:center;flex:1;min-width:0}.lead[data-v-74404753]{width:var(--sb-gutter, 16px);flex:none;display:inline-flex;align-items:center;justify-content:center}.unread-dot[data-v-74404753]{width:7px;height:7px;border-radius:var(--radius-full);background:var(--color-accent)}.ha .complete-btn[data-v-74404753]:hover{color:var(--color-success)}.t[data-v-74404753]{--sb-fade: 0px;--sb-fade-len: 16px;color:inherit;font-size:var(--ui-font-size-sm);font-weight:450;line-height:var(--leading-tight);user-select:none;flex:1;min-width:0;overflow:hidden;text-overflow:clip;white-space:nowrap;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - var(--sb-fade) - var(--sb-fade-len)),transparent calc(100% - var(--sb-fade)));mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - var(--sb-fade) - var(--sb-fade-len)),transparent calc(100% - var(--sb-fade)))}.se:hover .t[data-v-74404753]{--sb-fade: 34px;--sb-fade-len: 26px}.se.has-badge:hover .t[data-v-74404753]{--sb-fade: 0px;--sb-fade-len: 16px}.t .emoji[data-v-74404753]{padding:0;background:transparent;border:none;cursor:pointer}.t .emoji[data-v-74404753]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.sub[data-v-74404753]{display:flex;align-items:center;gap:var(--space-1);margin:var(--space-1) 0 0;color:var(--color-text-faint);font-size:var(--text-xs);line-height:var(--leading-tight);user-select:none}.sub-icon[data-v-74404753]{flex:none;color:var(--color-text-muted)}.pr[data-v-74404753]{display:inline-flex;align-items:center;gap:var(--space-05);flex:none;padding:1px var(--space-1);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-2xs);font-weight:var(--weight-medium);line-height:1;cursor:pointer}.pr[data-v-74404753]:hover{border-color:var(--color-line-strong)}.pr[data-v-74404753]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.pr--open[data-v-74404753],.pr--open[data-v-74404753]:hover{background:var(--color-success-soft);border-color:var(--color-success-bd);color:var(--color-success)}.pr--merged[data-v-74404753],.pr--merged[data-v-74404753]:hover{background:var(--color-done-soft);border-color:var(--color-done-bd);color:var(--color-done)}.sub-text[data-v-74404753]{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent);mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent)}.ts[data-v-74404753]{color:var(--color-text-faint);font-size:var(--text-xs);font-family:var(--font-ui);font-weight:475;line-height:var(--leading-tight);font-variant-numeric:tabular-nums;text-align:right}.act[data-v-74404753]{position:relative;flex:none;align-self:stretch;display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--sb-gap, 6px);min-width:var(--icon-button-sm)}.act .ha[data-v-74404753]{position:absolute;top:0;bottom:0;right:calc(var(--sb-action-inset, 3px) - var(--se-pad-x));display:inline-flex;align-items:center;gap:2px;opacity:0;visibility:hidden;border-radius:var(--radius-sm);transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.se:hover .ha[data-v-74404753]{opacity:1;visibility:visible;transition:opacity var(--duration-fast) var(--ease-out)}.act .ts[data-v-74404753]{transition:opacity var(--duration-fast) var(--ease-out)}.se:hover .act .ts[data-v-74404753]{opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.act .st[data-v-74404753]{display:inline-flex;align-items:center;transition:opacity var(--duration-fast) var(--ease-out)}.se:hover .act .st[data-v-74404753]{opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.act .ui-badge[data-v-74404753]{transition:opacity var(--duration-fast) var(--ease-out)}.se:hover .act .ui-badge[data-v-74404753]{opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.menu[data-v-74404753],.picker[data-v-74404753]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.menu-pop-enter-active[data-v-74404753]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-74404753]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-74404753],.menu-pop-leave-to[data-v-74404753]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.rename-wrap[data-v-74404753]{position:relative;display:flex;align-items:center;flex:1;min-width:0;background:var(--color-bg);border:var(--p-hairline) solid var(--color-accent);border-radius:var(--radius-xs)}.rename-input[data-v-74404753]{flex:1;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text);background:transparent;border:none;padding:1px 4px;outline:none;min-width:0}.rename-wrap.generating .rename-input[data-v-74404753]{visibility:hidden}.gen-dots[data-v-74404753]{position:absolute;left:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:3px;pointer-events:none}.gen-dots i[data-v-74404753]{width:3px;height:3px;border-radius:var(--radius-full, 50%);background:var(--color-accent);animation:gen-title-dot-74404753 .9s var(--ease-out) infinite}.gen-dots i[data-v-74404753]:nth-child(2){animation-delay:.15s}.gen-dots i[data-v-74404753]:nth-child(3){animation-delay:.3s}@keyframes gen-title-dot-74404753{0%,60%,to{opacity:.3;transform:translate(0)}30%{opacity:1;transform:translate(2px)}}.gen-title-btn[data-v-74404753]{flex:none;margin-right:1px;color:var(--color-accent)}.gen-title-btn[data-v-74404753]:hover:not(:disabled){color:var(--color-accent-hover);background:transparent}.sessions .se[data-v-74404753]{margin:0;border-radius:var(--radius-sm);--se-pad-x: calc(var(--sb-pad-x, 20px) - var(--sb-inset, 12px));padding:8px var(--se-pad-x)}.sessions .se.flat+.se.flat[data-v-74404753]{margin-top:var(--space-05)}.sessions .se .rename-input[data-v-74404753]{border-radius:var(--radius-sm);font-family:var(--sans)}.pinned-label[data-v-e855725c]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 var(--sb-action-inset) var(--space-1) var(--space-2);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--faint);user-select:none}.pinned-title[data-v-e855725c]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pinned-toggle[data-v-e855725c]{color:var(--faint);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.pinned-label:hover .pinned-toggle[data-v-e855725c],.pinned-label:focus-within .pinned-toggle[data-v-e855725c],.pinned-toggle--on[data-v-e855725c]{opacity:1}.pinned-toggle[data-v-e855725c]:hover{color:var(--dim)}.pinned-toggle svg[data-v-e855725c]{width:13px;height:13px}.se-locate-flash[data-v-e855725c]{isolation:isolate}.se-locate-flash[data-v-e855725c]:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:var(--radius-sm);background:var(--color-accent-soft);pointer-events:none;animation:se-locate-fade-e855725c var(--duration-flash) var(--ease-out) forwards}@keyframes se-locate-fade-e855725c{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.se-locate-flash[data-v-e855725c]:before{animation:none}}.pinned-rows[data-v-e855725c]{max-height:40vh;overflow-y:auto;padding:0 var(--sb-inset);--overlay-scrollbar-thumb-min: var(--space-6);scrollbar-width:none}.pinned-rows[data-v-e855725c]::-webkit-scrollbar{display:none}.pinned-thumb[data-v-e855725c]{position:absolute;right:0;width:var(--space-1);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-text) 12%,transparent);opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out);z-index:var(--z-raised);touch-action:none}.pinned-thumb.visible[data-v-e855725c]{opacity:1;pointer-events:auto}.pinned-thumb.visible[data-v-e855725c]:hover{background:color-mix(in srgb,var(--color-text) 25%,transparent)}.pinned-thumb[data-v-e855725c]:before{content:"";position:absolute;top:0;bottom:0;left:calc(-1 * var(--space-2));right:0}.pinned-rows-wrap[data-v-e855725c]{position:relative;margin:0 calc(var(--sb-inset) * -1);--pinned-seam-down: linear-gradient(to bottom, color-mix(in srgb, var(--color-text) 1.5%, transparent), transparent 35%), linear-gradient(to bottom, color-mix(in srgb, var(--color-text) 1%, transparent), transparent 65%), linear-gradient(to bottom, color-mix(in srgb, var(--color-text) .75%, transparent), transparent);--pinned-seam-up: linear-gradient(to top, color-mix(in srgb, var(--color-text) 1.5%, transparent), transparent 35%), linear-gradient(to top, color-mix(in srgb, var(--color-text) 1%, transparent), transparent 65%), linear-gradient(to top, color-mix(in srgb, var(--color-text) .75%, transparent), transparent)}.pinned-seam[data-v-e855725c]{position:absolute;left:0;right:0;height:var(--p-sidebar-seam-h);pointer-events:none;opacity:0;z-index:var(--z-raised);transition:opacity var(--duration-slow) var(--ease-out)}.pinned-seam--top[data-v-e855725c]{top:0;border-top:var(--p-hairline) solid var(--line);background:var(--pinned-seam-down)}.pinned-seam--bottom[data-v-e855725c]{bottom:0;border-bottom:var(--p-hairline) solid var(--line);background:var(--pinned-seam-up)}.pinned-rows-wrap.scrolled .pinned-seam--top[data-v-e855725c],.pinned-rows-wrap.more-below .pinned-seam--bottom[data-v-e855725c]{opacity:1}.pinned-resize[data-v-e855725c]{height:var(--space-1);position:relative;background:transparent;touch-action:none;margin:calc(var(--space-05) * -1) calc(var(--sb-inset) * -1);z-index:var(--z-dropdown)}.pinned-resize-bar[data-v-e855725c]{position:absolute;top:50%;left:0;right:0;height:var(--space-05);translate:0 -50%;background:transparent;transition:background var(--duration-fast) var(--ease-out)}.pinned-resize:hover .pinned-resize-bar[data-v-e855725c]{background:var(--color-selected)}.pinned-resize.dragging .pinned-resize-bar[data-v-e855725c]{background:var(--color-line-strong)}.pinned-resize[data-v-e855725c]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.pin-row.dragging[data-v-e855725c]{opacity:.45}.pinned.drop-active[data-v-e855725c]{border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px var(--color-accent)}/** + * Copyright (c) 2014 The xterm.js authors. All rights reserved. + * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License) + * https://github.com/chjj/term.js + * @license MIT + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * Originally forked from (with the author's permission): + * Fabrice Bellard's javascript vt100 for jslinux: + * http://bellard.org/jslinux/ + * Copyright (c) 2011 Fabrice Bellard + * The original design remains. The terminal itself + * has been extended to include xterm CSI codes, among + * other features. + */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.toasts[data-v-f8fa5637]{position:fixed;right:16px;bottom:84px;display:flex;flex-direction:column;gap:var(--space-2);z-index:var(--z-toast);width:min(440px,calc(100vw - 32px));max-height:56vh;overflow-y:auto}.toast-enter-active[data-v-f8fa5637],.toast-leave-active[data-v-f8fa5637]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.toast-enter-from[data-v-f8fa5637],.toast-leave-to[data-v-f8fa5637]{opacity:0;transform:translate(16px)}.toast-move[data-v-f8fa5637]{transition:transform var(--duration-base) var(--ease-out)}.actions[data-v-f8fa5637]{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.link[data-v-f8fa5637]{border:0;padding:0;background:none;color:var(--color-accent);cursor:pointer;font:inherit;font-size:var(--ui-font-size-xs)}.link[data-v-f8fa5637]:hover{text-decoration:underline}.details[data-v-f8fa5637]{display:grid;gap:5px;margin:8px 0 0;padding:8px;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface-sunken)}.detail-row[data-v-f8fa5637]{display:grid;grid-template-columns:minmax(88px,.34fr) minmax(0,1fr);gap:8px}.detail-row dt[data-v-f8fa5637]{color:var(--color-text-muted)}.detail-row dd[data-v-f8fa5637]{margin:0;color:var(--color-text);overflow-wrap:anywhere;white-space:pre-wrap}@media(max-width:640px){.toasts[data-v-f8fa5637]{left:12px;right:12px;bottom:calc(var(--dock-h, 76px) + 8px);width:auto;max-height:50vh}.detail-row[data-v-f8fa5637]{grid-template-columns:1fr;gap:2px}}.group.dragging[data-v-3edda09e]{opacity:.45}.group.pinned-drag-active[data-v-3edda09e],.group.pinned-drop-hover[data-v-3edda09e]{border-radius:var(--radius-sm)}.group.pinned-drag-active[data-v-3edda09e]{box-shadow:inset 0 0 0 1px var(--color-accent)}.group.pinned-drop-hover[data-v-3edda09e]{box-shadow:inset 0 0 0 2px var(--color-accent)}.group.pinned-drop-blocked[data-v-3edda09e],.group.pinned-drop-blocked[data-v-3edda09e] *{cursor:no-drop}.se-locate-flash[data-v-3edda09e]{isolation:isolate}.se-locate-flash[data-v-3edda09e]:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:var(--radius-sm);background:var(--color-accent-soft);pointer-events:none;animation:se-locate-fade-3edda09e var(--duration-flash) var(--ease-out) forwards}@keyframes se-locate-fade-3edda09e{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.se-locate-flash[data-v-3edda09e]:before{animation:none}}.group-sessions[data-v-3edda09e]{height:auto;overflow:hidden;transition:height var(--duration-base) var(--ease-out)}.group-sessions.collapsed[data-v-3edda09e]{height:0}.gh[data-v-3edda09e]{display:flex;flex-direction:column;margin:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text);user-select:none;position:relative;cursor:grab}.gh[data-v-3edda09e]:active{cursor:grabbing}.gh[data-v-3edda09e]:hover{background:var(--sb-hover, var(--color-hover))}.gh.on[data-v-3edda09e]{background:var(--sb-selected, var(--color-selected))}.gh-top[data-v-3edda09e]{position:relative;display:flex;align-items:center;gap:var(--sb-gap)}.gh-folder[data-v-3edda09e]{flex:none;color:var(--color-text-muted)}.gh-name[data-v-3edda09e]{font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);color:var(--color-text-muted);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.gh-actions[data-v-3edda09e]{position:absolute;right:calc(var(--sb-action-inset) - (var(--sb-pad-x) - var(--sb-inset)));top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:var(--space-1);padding-left:var(--space-1);border-radius:var(--radius-sm);isolation:isolate;opacity:0;pointer-events:none}.gh-name[data-v-3edda09e]{--sb-fade: 0px;--sb-fade-len: 16px;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - var(--sb-fade) - var(--sb-fade-len)),transparent calc(100% - var(--sb-fade)));mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - var(--sb-fade) - var(--sb-fade-len)),transparent calc(100% - var(--sb-fade)))}.gh:hover .gh-name[data-v-3edda09e],.gh:focus-within .gh-name[data-v-3edda09e],.gh.menu-open .gh-name[data-v-3edda09e]{--sb-fade: 64px;--sb-fade-len: 26px}.gh-actions[data-v-3edda09e]>*{position:relative;z-index:1}.gh:hover .gh-actions[data-v-3edda09e],.gh:focus-within .gh-actions[data-v-3edda09e],.gh-actions.open[data-v-3edda09e]{opacity:1;pointer-events:auto}.gh-more.open[data-v-3edda09e]{color:var(--color-text);background:var(--color-line)}.group-empty[data-v-3edda09e]{padding:var(--space-1) var(--space-2) var(--space-1) calc(var(--sb-pad-x) - var(--sb-inset) + var(--sb-gutter) + var(--sb-gap));font-size:var(--text-xs);color:var(--color-text-faint);font-family:var(--font-ui);user-select:none}.show-more-row[data-v-3edda09e]{display:flex;align-items:center;padding-left:calc(var(--sb-gutter) + var(--sb-gap))}.show-more[data-v-3edda09e]{display:flex;align-items:center;gap:var(--sb-gap);margin:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));min-width:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-tight);text-align:left;cursor:pointer}.show-more[data-v-3edda09e]:hover{background:var(--sb-hover, var(--color-hover))}.show-more[data-v-3edda09e]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.show-more-sep[data-v-3edda09e]{margin:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-xs);user-select:none}.show-more-label[data-v-3edda09e]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gh-rename[data-v-3edda09e]{flex:1;min-width:0;font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--color-text);background:var(--color-bg);border:var(--p-hairline) solid var(--color-accent);border-radius:var(--radius-xs);padding:2px 5px;outline:none}.gh-rename[data-v-3edda09e]{border-radius:var(--radius-sm);font-family:var(--sans)}.gh-add[data-v-3edda09e]{color:var(--faint)}.gh-add[data-v-3edda09e]:hover{color:var(--dim)}.sa-select[data-v-77fb8e22]{display:inline-flex;align-items:center;gap:var(--space-1-5);height:30px;padding:0 var(--space-3);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);background:transparent;color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-option-label);line-height:1;white-space:nowrap;transition:background var(--duration-fast) var(--ease-out)}.sa-select[data-v-77fb8e22]:hover,.sa-select.is-open[data-v-77fb8e22]{background:var(--color-hover)}.sa-select-chev[data-v-77fb8e22]{color:var(--color-text-faint)}.sa-menu[data-v-77fb8e22]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.sa-check[data-v-77fb8e22]{display:inline-flex;flex:none;width:14px}.sa-dot[data-v-77fb8e22]{flex:none;width:8px;height:8px;border-radius:var(--radius-full)}.sa-dot--open[data-v-77fb8e22]{background:var(--color-success)}.sa-dot--done[data-v-77fb8e22]{background:var(--color-done)}.menu-pop-enter-active[data-v-77fb8e22]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-77fb8e22]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-77fb8e22],.menu-pop-leave-to[data-v-77fb8e22]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.sa-select[data-v-e16cfdb0]{display:inline-flex;align-items:center;gap:var(--space-1-5);min-height:30px;padding:0 var(--space-2);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);background:transparent;color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-option-label);line-height:1;white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.sa-select[data-v-e16cfdb0]:hover,.sa-select.is-open[data-v-e16cfdb0]{background:var(--color-hover)}.sa-select[data-v-e16cfdb0]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.sa-select-chev[data-v-e16cfdb0]{color:var(--color-text-faint)}.sa-tag[data-v-e16cfdb0]{display:inline-flex;align-items:center;gap:1px;height:20px;padding:0 2px 0 var(--space-1-5);border-radius:var(--radius-xs);background:var(--color-selected);font-size:var(--text-xs)}.sa-tag-name[data-v-e16cfdb0]{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-tag-x[data-v-e16cfdb0]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:16px;height:16px;padding:0;border:none;border-radius:var(--radius-xs);background:transparent;color:var(--color-text-faint);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.sa-tag-x[data-v-e16cfdb0]:hover{background:var(--color-hover);color:var(--color-text)}.sa-tag-more[data-v-e16cfdb0]{color:var(--color-text-muted);font-size:var(--text-xs)}.sa-menu[data-v-e16cfdb0]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.sa-search[data-v-e16cfdb0]{display:flex;align-items:center;gap:7px;padding:5px 9px;color:var(--color-text-faint)}.sa-search-input[data-v-e16cfdb0]{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-tight)}.sa-search-input[data-v-e16cfdb0]::placeholder{color:var(--color-text-faint)}.sa-ws-name[data-v-e16cfdb0]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-opts[data-v-e16cfdb0]{max-height:320px;overflow-y:auto;overscroll-behavior:contain}.sa-menu-empty[data-v-e16cfdb0]{padding:5px 9px;color:var(--color-text-faint);font-size:var(--text-sm)}.menu-pop-enter-active[data-v-e16cfdb0]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-e16cfdb0]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-e16cfdb0],.menu-pop-leave-to[data-v-e16cfdb0]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.sa-menu[data-v-4a872ff4]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.sa-menu-head[data-v-4a872ff4]{padding:var(--space-1) var(--space-2) var(--space-05);color:var(--color-text-faint);font-size:var(--text-xs);user-select:none}.menu-pop-enter-active[data-v-4a872ff4]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-4a872ff4]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-4a872ff4],.menu-pop-leave-to[data-v-4a872ff4]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.sa-pager[data-v-c58f10de]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-3)}.sa-total[data-v-c58f10de]{color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums;user-select:none}.sa-pager-right[data-v-c58f10de]{display:flex;align-items:center;gap:var(--space-3)}.sa-pages[data-v-c58f10de]{display:flex;align-items:center;gap:var(--space-05)}.sa-pg[data-v-c58f10de]{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 var(--space-1-5);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.sa-pg[data-v-c58f10de]:hover{background:var(--color-hover);color:var(--color-text)}.sa-pg.cur[data-v-c58f10de]{background:var(--color-selected);color:var(--color-text);font-weight:var(--weight-medium)}.sa-pg.cur[data-v-c58f10de]:hover{background:var(--color-selected)}.sa-pg[data-v-c58f10de]:disabled{opacity:.38;cursor:default}.sa-pg[data-v-c58f10de]:disabled:hover{background:transparent;color:var(--color-text-muted)}.sa-ellipsis[data-v-c58f10de]{padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-sm);user-select:none}.sa-table-card[data-v-de6ea6bd]{border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-bg);overflow-x:auto;container-type:inline-size;transition:opacity var(--duration-fast) var(--ease-out)}.sa-table-card.is-loading[data-v-de6ea6bd]{opacity:.45;pointer-events:none}table[data-v-de6ea6bd]{width:100%;min-width:640px;border-collapse:collapse;table-layout:fixed}.sa-col-cb[data-v-de6ea6bd]{width:36px}.sa-col-title[data-v-de6ea6bd]{width:max(200px,20%)}.sa-col-ws[data-v-de6ea6bd]{width:116px}.sa-col-status[data-v-de6ea6bd]{width:88px}.sa-col-time[data-v-de6ea6bd]{width:140px}.sa-col-act[data-v-de6ea6bd]{width:84px}.sa-time--compact[data-v-de6ea6bd]{display:none}@container (max-width: 1020px){.sa-col-time[data-v-de6ea6bd]{width:108px}.sa-time--full[data-v-de6ea6bd]{display:none}.sa-time--compact[data-v-de6ea6bd]{display:inline}}@container (max-width: 760px){col.sa-col-time[data-v-de6ea6bd],.sa-c-time[data-v-de6ea6bd]{display:none}.sa-col-ws[data-v-de6ea6bd]{width:96px}}thead th[data-v-de6ea6bd]{height:32px;padding:0 var(--space-3);border-bottom:var(--p-hairline) solid var(--color-line);color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-medium);text-align:left;white-space:nowrap;user-select:none}th.sa-col-cb[data-v-de6ea6bd],td.sa-col-cb[data-v-de6ea6bd]{padding-right:0}tbody td[data-v-de6ea6bd]{height:40px;padding:0 var(--space-3);border-bottom:var(--p-hairline) solid var(--color-subtle);font-size:var(--text-sm);line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}tbody tr:last-child td[data-v-de6ea6bd]{border-bottom:none}tbody tr[data-v-de6ea6bd]{transition:background var(--duration-fast) var(--ease-out)}tbody tr[data-v-de6ea6bd]:hover{background:var(--color-hover)}.sa-cb[data-v-de6ea6bd]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-xs);color:var(--color-text-on-accent);vertical-align:middle;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.sa-cb[data-v-de6ea6bd]:hover{border-color:var(--color-text-faint)}.sa-cb.on[data-v-de6ea6bd],.sa-cb.ind[data-v-de6ea6bd]{background:var(--color-accent);border-color:var(--color-accent)}.sa-batch-inner[data-v-de6ea6bd]{display:flex;align-items:center;gap:var(--space-2)}.sa-batch-count[data-v-de6ea6bd]{margin-right:var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm);white-space:nowrap;user-select:none}.sa-batch-link[data-v-de6ea6bd]{display:inline-flex;align-items:center;height:24px;padding:0 var(--space-1);border:none;background:transparent;color:var(--color-accent);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap}.sa-batch-link[data-v-de6ea6bd]:hover{text-decoration:underline}.sa-batch-link[data-v-de6ea6bd]:disabled{color:var(--color-text-faint);cursor:default;text-decoration:none}.sa-btn-q[data-v-de6ea6bd]{display:inline-flex;align-items:center;gap:var(--space-1-5);height:24px;padding:0 var(--space-2);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.sa-btn-q[data-v-de6ea6bd]:hover{background:var(--color-hover)}.sa-btn-q[data-v-de6ea6bd]:disabled{opacity:.42;cursor:default}.sa-btn-q[data-v-de6ea6bd]:disabled:hover{background:transparent}.sa-btn-q[data-v-de6ea6bd] :first-child{color:var(--color-text-muted)}.sa-btn-q[data-v-de6ea6bd]:hover :first-child{color:var(--color-text)}.sa-btn-q--primary[data-v-de6ea6bd],.sa-btn-q--primary[data-v-de6ea6bd] :first-child{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent)}.sa-btn-q--primary[data-v-de6ea6bd]:hover,.sa-btn-q--primary[data-v-de6ea6bd]:hover :first-child{border-color:var(--color-accent-hover);background:var(--color-accent-hover);color:var(--color-text-on-accent)}.sa-btn-q--primary[data-v-de6ea6bd]:disabled,.sa-btn-q--primary[data-v-de6ea6bd]:disabled:hover,.sa-btn-q--primary[data-v-de6ea6bd]:disabled :first-child,.sa-btn-q--primary[data-v-de6ea6bd]:disabled:hover :first-child{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent)}.sa-st[data-v-de6ea6bd]{display:inline-flex;align-items:center;gap:var(--space-1-5)}.sa-st--open[data-v-de6ea6bd]{color:var(--color-success)}.sa-st--done[data-v-de6ea6bd]{color:var(--color-done)}.sa-title[data-v-de6ea6bd]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-weight:var(--weight-option-label)}.sa-rename[data-v-de6ea6bd]{width:100%;height:26px;padding:0 var(--space-1-5);border:1px solid var(--color-accent);border-radius:var(--radius-sm);outline:none;box-shadow:0 0 0 2px var(--color-accent-bd);background:var(--color-bg);color:var(--color-text);font-family:inherit;font-size:var(--text-sm)}.sa-ws[data-v-de6ea6bd]{display:inline-flex;align-items:center;max-width:100%;color:var(--color-text-muted)}.sa-ws span[data-v-de6ea6bd]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-prompt[data-v-de6ea6bd]{color:var(--color-text-muted)}.sa-time[data-v-de6ea6bd]{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.sa-none[data-v-de6ea6bd]{color:var(--color-text-faint)}.sa-act[data-v-de6ea6bd]{display:flex;align-items:center;gap:var(--space-05)}.sa-state[data-v-de6ea6bd]{display:flex;align-items:center;justify-content:center;padding:calc(var(--space-8) + var(--space-6)) var(--space-4)}.sa-empty[data-v-de6ea6bd]{color:var(--color-text-faint);font-size:var(--text-sm)}.activity-notice[data-v-7e199c34]{display:inline-flex;align-items:center;gap:9px;align-self:flex-start;margin:0;font:var(--text-sm)/var(--leading-normal) var(--font-ui);color:var(--color-text-muted)}.history-row[data-v-ccdade85]{display:flow-root;min-width:0;overflow-anchor:none}.history-window[data-v-9a42f133]{min-width:0;flex-shrink:0;overflow-anchor:none}.history-space[data-v-9a42f133]{pointer-events:none;overflow-anchor:none}.history-row[data-v-9a42f133]{position:relative}.history-row[data-v-9a42f133]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.history-navigation[data-v-9a42f133]{position:absolute;inset-inline-start:var(--space-1);z-index:var(--z-raised);user-select:none}.history-previous[data-v-9a42f133]{top:var(--space-1)}.history-next[data-v-9a42f133]{bottom:var(--space-1)}.history-navigation[data-v-9a42f133]:not(:focus){width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.think[data-v-98cb8cac]{--think-gutter: 20px;--think-gap: var(--space-2);margin:0;transition:margin-top var(--duration-base) var(--ease-out)}.think-head[data-v-98cb8cac]{display:flex;align-items:center;gap:var(--think-gap);width:100%;min-height:var(--think-gutter);padding:0;border:none;background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--think-gutter);text-align:left;cursor:pointer;user-select:none;transition:color var(--duration-base) var(--ease-out)}.think-head[data-v-98cb8cac]:hover{color:var(--color-text)}.think-head[data-v-98cb8cac]:focus-visible{outline:none;border-radius:var(--radius-sm);box-shadow:var(--p-focus-ring)}.think-ic[data-v-98cb8cac]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--think-gutter);height:var(--think-gutter);color:var(--color-text-faint)}.think-ic[data-v-98cb8cac] .kw-icon{width:18px;height:18px}.think-title[data-v-98cb8cac]{font-weight:var(--weight-regular);flex:none}.think-time[data-v-98cb8cac]{color:var(--color-text-faint);font-weight:var(--weight-regular);flex:none}.think.streaming .think-title[data-v-98cb8cac]{animation:think-breathe-98cb8cac 1.6s var(--ease-in-out) infinite}@keyframes think-breathe-98cb8cac{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.think[data-v-98cb8cac]{transition:none}.think.streaming .think-title[data-v-98cb8cac]{animation:none}}.think-car[data-v-98cb8cac]{color:var(--color-text-faint);flex:none;width:12px;height:12px;transition:transform var(--duration-base) var(--ease-out)}.think.open .think-car[data-v-98cb8cac]{transform:rotate(90deg)}.think-body[data-v-98cb8cac]{display:grid;grid-template-rows:minmax(0,0fr);overflow:hidden;transition:grid-template-rows var(--duration-base) var(--ease-out)}.think-body.instant[data-v-98cb8cac]{transition:none}.think-body.open[data-v-98cb8cac]{grid-template-rows:minmax(0,1fr)}.think-body-inner[data-v-98cb8cac]{position:relative;min-height:0;overflow:hidden;padding-left:calc(var(--think-gutter) + var(--think-gap))}.think-body-inner[data-v-98cb8cac]:before{content:"";position:absolute;top:0;bottom:0;left:calc((var(--think-gutter) - var(--p-hairline)) / 2);width:var(--p-hairline);background-image:repeating-linear-gradient(to bottom,var(--color-line) 0 2px,transparent 2px 4px)}.think-text[data-v-98cb8cac]{font:var(--text-base)/var(--leading-normal) var(--font-ui);font-weight:var(--weight-regular);color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word;margin:0;padding:6px 0 0}.mob .think-text[data-v-98cb8cac]{color:var(--color-text-faint)}.tool-line[data-v-4bc7d101]{--tl-gutter: 20px;--tl-gap: var(--space-2);--tl-indent: calc(var(--tl-gutter) + var(--tl-gap));transition:margin-top var(--duration-base) var(--ease-out)}@media(prefers-reduced-motion:reduce){.tool-line[data-v-4bc7d101]{transition:none}}.tl-head[data-v-4bc7d101]{display:flex;align-items:center;gap:var(--tl-gap);width:100%;min-height:var(--tl-gutter);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--tl-gutter);text-align:left}.tl-head.clickable[data-v-4bc7d101]{cursor:pointer;user-select:none}.tl-ic[data-v-4bc7d101]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--tl-gutter);height:var(--tl-gutter);color:var(--color-text-faint)}.tl-ic[data-v-4bc7d101] .kw-icon{width:18px;height:18px}.tl-main[data-v-4bc7d101]{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:var(--tl-gap)}.tl-lead[data-v-4bc7d101]{display:flex;align-items:center;gap:var(--tl-gap);min-width:0}.tl-tail[data-v-4bc7d101]{display:flex;align-items:center;gap:var(--space-2);flex:none}.tl-status[data-v-4bc7d101]{display:inline-flex;align-items:center;flex:none}.tl-status.error[data-v-4bc7d101]{color:var(--color-danger)}.tl-status.cancelled[data-v-4bc7d101]{color:var(--color-text-faint)}.tl-car[data-v-4bc7d101]{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:14px;height:14px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-faint);cursor:pointer;flex:none}.tl-car[data-v-4bc7d101]:hover{color:var(--color-text)}.tl-car[data-v-4bc7d101]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tl-car-ic[data-v-4bc7d101]{transition:transform var(--duration-base) var(--ease-out)}.tool-line.open .tl-car-ic[data-v-4bc7d101]{transform:rotate(90deg)}.tl-body[data-v-4bc7d101]{display:grid;grid-template-rows:minmax(0,0fr);overflow:hidden;transition:grid-template-rows var(--duration-base) var(--ease-out)}.tl-body.open[data-v-4bc7d101]{grid-template-rows:minmax(0,1fr)}.tl-body-inner[data-v-4bc7d101]{position:relative;min-height:0;overflow:hidden;padding-left:var(--tl-indent)}.tl-body-inner[data-v-4bc7d101]:before{content:"";position:absolute;top:0;bottom:0;left:calc((var(--tl-gutter) - var(--p-hairline)) / 2);width:var(--p-hairline);background-image:repeating-linear-gradient(to bottom,var(--color-line) 0 2px,transparent 2px 4px)}.tl-body-content[data-v-4bc7d101]{padding-top:6px;padding-bottom:var(--space-1)}.tl-lead .tl-name[data-v-4bc7d101-s]{font-weight:var(--weight-regular);color:var(--color-text-muted);flex:none}.tl-lead .tl-dim[data-v-4bc7d101-s]{color:var(--color-text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-lead .tl-faint[data-v-4bc7d101-s]{color:var(--color-text-faint);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-lead .tl-mono[data-v-4bc7d101-s]{color:var(--color-text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-lead .tl-file[data-v-4bc7d101-s]{font-weight:var(--weight-regular);color:var(--color-text-muted);flex:none;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:none;border-radius:var(--radius-xs);background:transparent;padding:0;font-family:inherit;font-size:inherit;line-height:inherit;cursor:pointer}.tl-lead .tl-file[data-v-4bc7d101-s]:hover{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px}.tl-lead .tl-file[data-v-4bc7d101-s]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tl-lead .tl-add[data-v-4bc7d101-s]{color:var(--color-diff-add-fg);flex:none}.tl-lead .tl-del[data-v-4bc7d101-s]{color:var(--color-diff-del-fg);flex:none}.tl-lead .tl-chip[data-v-4bc7d101-s]{color:var(--color-text-faint);flex:none;white-space:nowrap}.tl-tail .tl-pill[data-v-4bc7d101-s]{font-size:var(--text-xs);line-height:1.5;padding:0 var(--space-2);border-radius:var(--radius-full);flex:none;white-space:nowrap}.tl-tail .tl-chip[data-v-4bc7d101-s]{color:var(--color-text-faint);font-size:var(--text-xs);flex:none;white-space:nowrap}.tl-tail .tl-add[data-v-4bc7d101-s]{color:var(--color-diff-add-fg);font-size:var(--text-xs);flex:none}.tl-tail .tl-del[data-v-4bc7d101-s]{color:var(--color-diff-del-fg);font-size:var(--text-xs);flex:none}.tp[data-v-9fc1b2fe]{display:flex;flex-direction:column;gap:10px;width:100%;min-width:0;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-fill-1);overflow:clip}.tp.flush[data-v-9fc1b2fe]{gap:0;padding:0}.tp-head[data-v-9fc1b2fe]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0}.tp.flush .tp-head[data-v-9fc1b2fe]{padding:var(--space-2) var(--space-3)}.tp.flush.compact .tp-head[data-v-9fc1b2fe]{--tp-glyph-inset: calc((var(--icon-button-sm) - var(--p-ic-md)) / 2);gap:calc(var(--space-1-5) - var(--tp-glyph-inset));padding:var(--space-1-5) var(--space-1-5) var(--space-1-5) var(--space-3)}.tp-titles[data-v-9fc1b2fe]{display:flex;flex:1 1 auto;align-items:center;gap:var(--space-2);min-width:0;font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal)}.tp.compact .tp-titles[data-v-9fc1b2fe]{font-size:var(--text-sm)}.tp-title[data-v-9fc1b2fe]{color:var(--color-text);flex:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-meta[data-v-9fc1b2fe]{color:var(--color-text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-body[data-v-9fc1b2fe]{min-width:0;min-height:0}.tp-body.scroll[data-v-9fc1b2fe]{max-height:13lh;overflow:auto;overscroll-behavior:contain}.tp-body[data-v-9fc1b2fe] .hl-code{font-size:var(--content-font-size);line-height:1.571}.ag-card[data-v-27e4bce2]{display:flex;align-items:center;gap:var(--space-3);width:100%;min-width:0;padding:0;border:none;border-radius:var(--radius-md);background:transparent;text-align:left;font-family:inherit;font-size:inherit}.ag-card.clickable[data-v-27e4bce2]{cursor:pointer}.ag-card[data-v-27e4bce2]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ag-avatar[data-v-27e4bce2]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-fill-1);color:var(--color-text)}.ag-text[data-v-27e4bce2]{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal)}.ag-title[data-v-27e4bce2]{color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-card .ag-spin[data-v-27e4bce2]{color:var(--color-text)}.ag-model[data-v-27e4bce2]{color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detach.touch[data-v-27e4bce2]{margin-left:14px}.op[data-v-8fc01d23]{font-family:var(--font-mono);font-size:var(--content-font-size);line-height:1.571;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text);white-space:pre-wrap;word-break:break-word;text-autospace:no-autospace;max-height:12lh;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.op-empty[data-v-8fc01d23]{color:var(--color-text-faint);font-style:italic}.rc-flat[data-v-62b1d48a]{display:block;color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal)}.rc-list[data-v-62b1d48a]{display:flex;flex-direction:column;gap:6px}.rc-qtext[data-v-62b1d48a]{color:var(--color-text);font:var(--text-base)/20px var(--font-ui)}.rc-answer[data-v-62b1d48a]{margin-top:var(--space-2);color:var(--color-text-muted);font:var(--text-base)/20px var(--font-ui);white-space:pre-wrap;overflow-wrap:anywhere}.bash-boxes[data-v-16b3fda0]{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.bash-cmd[data-v-16b3fda0]{font-size:var(--code-font-size);line-height:1.571;max-height:calc(8 * 1lh + var(--space-2));overflow:auto;overscroll-behavior:auto}.bash-cmd[data-v-16b3fda0] .hl-body{padding-top:0}.bash-cmd[data-v-16b3fda0] .hl-text{padding-right:var(--space-3)}.bash-cmd[data-v-16b3fda0],.bash-boxes[data-v-16b3fda0] .op{border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.bash-boxes .bash-cmd[data-v-16b3fda0] .hl-code,.bash-boxes[data-v-16b3fda0] .op{font-size:var(--code-font-size)}.bash-boxes[data-v-16b3fda0] .op{padding:0 var(--space-3) var(--space-2);overscroll-behavior:auto}.bash-boxes.bash-out-nowrap[data-v-16b3fda0] .op{padding-right:0;white-space:pre;word-break:normal}.bash-boxes.bash-out-nowrap[data-v-16b3fda0] .op>div{box-sizing:border-box;width:max-content;min-width:100%;padding-right:var(--space-3)}.tl-detach[data-v-16b3fda0]{position:relative;display:inline-flex;align-items:center;justify-content:center;align-self:center;width:16px;height:16px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-faint);cursor:pointer;flex:none}.tl-detach[data-v-16b3fda0]:hover{color:var(--color-text)}.tl-detach[data-v-16b3fda0]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tl-detach.touch[data-v-16b3fda0]{margin-left:14px}.tl-detach.touch[data-v-16b3fda0]:after{content:"";position:absolute;inset:-14px}.ed-path[data-v-5bd297e2]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ed-dir[data-v-5bd297e2]{color:var(--color-text-faint)}.ed-file[data-v-5bd297e2]{color:var(--color-text)}.ed-open[data-v-5bd297e2]{padding:0;border:none;border-radius:var(--radius-xs);background:transparent;font:inherit;cursor:pointer}.ed-open[data-v-5bd297e2]:hover{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px}.ed-open[data-v-5bd297e2]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ed-stats[data-v-5bd297e2]{display:inline-flex;align-items:center;gap:var(--space-1);flex:none}.ed-add[data-v-5bd297e2]{color:var(--color-diff-add-fg)}.ed-del[data-v-5bd297e2]{color:var(--color-diff-del-fg)}.gt-args[data-v-8695bcdc]{margin-bottom:var(--space-2);color:var(--color-text-muted);font:var(--text-base)/var(--leading-normal) var(--font-ui);white-space:pre-wrap;overflow-wrap:anywhere}.gl[data-v-8695bcdc]{display:inline-flex;align-items:center}.burl[data-v-415a60fc],.burl-plain[data-v-415a60fc]{min-width:0;color:var(--color-text);text-autospace:no-autospace}.burl-plain[data-v-415a60fc]{word-break:break-all}.burl[data-v-415a60fc]{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px}.burl-origin[data-v-415a60fc]{min-width:0;word-break:break-all}.burl-scheme[data-v-415a60fc]{color:var(--color-text-faint)}.burl-host[data-v-415a60fc]{font-weight:var(--weight-medium)}.burl-path[data-v-415a60fc],.burl-hash[data-v-415a60fc]{color:var(--color-text-muted);word-break:break-all}.burl-param[data-v-415a60fc]{display:inline-flex;flex-wrap:wrap;align-items:baseline;max-width:100%;padding:0 var(--space-1);border-radius:var(--radius-xs);background:var(--color-fill-2);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal)}.burl-key[data-v-415a60fc]{color:var(--color-text)}.burl-value[data-v-415a60fc]{min-width:0;word-break:break-all}.burl-toggle[data-v-415a60fc]{margin-left:var(--space-1);padding:0;border:none;border-radius:var(--radius-xs);background:transparent;color:var(--color-text-faint);font-family:var(--font-ui);font-size:inherit;line-height:inherit;cursor:pointer}.burl-toggle[data-v-415a60fc]:hover{color:var(--color-text)}.burl-toggle[data-v-415a60fc]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.bv[data-v-dd43d7d9]{min-width:0;color:var(--color-text);overflow-wrap:anywhere}.bv-empty[data-v-dd43d7d9]{color:var(--color-text-faint)}.bv-text[data-v-dd43d7d9]{white-space:pre-wrap}.bv-code[data-v-dd43d7d9],.bv-ref[data-v-dd43d7d9]{font-family:var(--font-mono);font-size:var(--text-xs);text-autospace:no-autospace}.bv-num[data-v-dd43d7d9]{font-variant-numeric:tabular-nums;text-autospace:no-autospace}.bv-geo[data-v-dd43d7d9]{white-space:nowrap;text-autospace:no-autospace}.bv-element[data-v-dd43d7d9]{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:6px}.bv-ref[data-v-dd43d7d9]{color:var(--color-text-faint)}.bf-rows[data-v-3ed3c8d2]{display:grid;grid-template-columns:fit-content(40%) minmax(0,1fr);gap:var(--space-1) var(--space-4);margin:0;font-size:var(--text-base);line-height:var(--leading-normal)}.bf-rows dt[data-v-3ed3c8d2]{color:var(--color-text-muted);user-select:none}.bf-rows dd[data-v-3ed3c8d2]{min-width:0;margin:0}.bf-chips[data-v-3ed3c8d2]{display:flex;flex-wrap:wrap;gap:6px}.bf-chip[data-v-3ed3c8d2]{display:inline-flex;max-width:100%;border:var(--p-hairline) solid var(--color-subtle);border-radius:var(--radius-xs);font-size:var(--text-xs);line-height:var(--leading-normal);overflow:hidden}.bf-chip-label[data-v-3ed3c8d2],.bf-chip-value[data-v-3ed3c8d2]{padding-inline:var(--space-1)}.bf-chip-label[data-v-3ed3c8d2]{flex:none;color:var(--color-text-muted);background:var(--color-surface-sunken);border-right:var(--p-hairline) solid var(--color-subtle);user-select:none}.bf-chip-value[data-v-3ed3c8d2]{min-width:0}.bfold[data-v-c5bfcf9e]{display:flex;flex-direction:column;gap:6px;min-width:0}.bfold-head[data-v-c5bfcf9e]{display:inline-flex;align-items:center;align-self:flex-start;gap:var(--space-1);padding:0;border:none;border-radius:var(--radius-xs);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base);line-height:20px;cursor:pointer;user-select:none}.bfold-head[data-v-c5bfcf9e]:hover{color:var(--color-text)}.bfold-head[data-v-c5bfcf9e]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.bfold-car[data-v-c5bfcf9e]{color:var(--color-text-faint);transition:transform var(--duration-base) var(--ease-out)}.bfold-car.open[data-v-c5bfcf9e]{transform:rotate(90deg)}.bfold-meta[data-v-c5bfcf9e]{color:var(--color-text-faint);font-variant-numeric:tabular-nums}.bfold-body[data-v-c5bfcf9e]{min-width:0}@media(prefers-reduced-motion:reduce){.bfold-car[data-v-c5bfcf9e]{transition:none}}.is-resolving[data-v-ff75b8c0]{visibility:hidden}.bshot[data-v-fe6da588]{display:block;max-width:100%;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;cursor:zoom-in}.bshot[data-v-fe6da588]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.bshot-frame[data-v-fe6da588]{position:relative;display:block;width:min(100%,calc(var(--browser-shot-max-height) * var(--bshot-aspect)));aspect-ratio:var(--bshot-ratio);border-radius:var(--radius-sm);background:var(--color-fill-2);overflow:hidden}.bshot-img[data-v-fe6da588]{display:block;width:100%;height:100%;object-fit:contain}.bshot-marks[data-v-fe6da588],.bshot-lines[data-v-fe6da588]{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.bshot-line[data-v-fe6da588],.bshot-line-halo[data-v-fe6da588]{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.bshot-line[data-v-fe6da588]{stroke:var(--browser-shot-mark-color);stroke-width:var(--browser-shot-mark-width)}.bshot-line-halo[data-v-fe6da588]{stroke:var(--browser-shot-mark-halo-color);stroke-width:calc(var(--browser-shot-mark-width) + 2px)}.bshot-box[data-v-fe6da588]{position:absolute;box-sizing:border-box;border:var(--browser-shot-mark-width) solid var(--browser-shot-mark-color);border-radius:var(--radius-xs);background:var(--browser-shot-mark-fill);box-shadow:var(--browser-shot-mark-halo)}.bshot-box.secondary[data-v-fe6da588]{border-style:dashed;background:transparent}.bshot-label[data-v-fe6da588]{position:absolute;left:calc(var(--browser-shot-mark-width) * -1);bottom:100%;padding:0 var(--space-1);border-radius:var(--radius-xs) var(--radius-xs) 0 0;background:var(--browser-shot-mark-color);color:var(--color-text-on-accent);font-family:var(--font-mono);font-size:var(--text-2xs);line-height:var(--leading-normal);white-space:nowrap}.bshot-label.inside[data-v-fe6da588]{top:0;bottom:auto;border-radius:0 0 var(--radius-xs) 0}.bshot-point[data-v-fe6da588],.bshot-start[data-v-fe6da588]{position:absolute;box-sizing:border-box;border-radius:var(--radius-full);transform:translate(-50%,-50%);box-shadow:var(--browser-shot-mark-halo)}.bshot-point[data-v-fe6da588]{width:var(--browser-shot-point-size);height:var(--browser-shot-point-size);border:var(--browser-shot-mark-width) solid var(--browser-shot-mark-color);background:var(--browser-control-ring-fill)}.bshot-point[data-v-fe6da588]:after{content:"";position:absolute;inset:0;width:4px;height:4px;margin:auto;border-radius:var(--radius-full);background:var(--browser-shot-mark-color)}.bshot-start[data-v-fe6da588]{width:8px;height:8px;background:var(--browser-shot-mark-color)}.bshot-head[data-v-fe6da588]{position:absolute;width:0;height:0;border-block:6px solid transparent;border-left:10px solid var(--browser-shot-mark-color);filter:drop-shadow(0 0 1px var(--browser-shot-mark-halo-color));transform:translate(-100%,-50%) rotate(var(--bshot-angle));transform-origin:100% 50%}.brv[data-v-76e1fd0a]{min-width:0}.brv-pending[data-v-76e1fd0a]{display:block;width:min(100%,var(--browser-receipt-pending-width));aspect-ratio:8 / 5}.brv-note[data-v-76e1fd0a]{color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--leading-normal)}.bt[data-v-06c202ad]{width:100%;border-collapse:collapse;font-size:var(--text-base);line-height:var(--leading-normal)}.bt th[data-v-06c202ad]{padding:0 var(--space-3) var(--space-1) 0;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-regular);text-align:left;white-space:nowrap;user-select:none}.bt td[data-v-06c202ad]{padding:2px var(--space-3) 2px 0;vertical-align:top;border-top:var(--p-hairline) solid var(--color-subtle);user-select:text}.bt td.is-text[data-v-06c202ad],.bt td.is-url[data-v-06c202ad]{min-width:9em}.bt td[data-v-06c202ad] .bv-text,.bt td[data-v-06c202ad] .bv-code{overflow-wrap:break-word}.bt th[data-v-06c202ad]:last-child,.bt td[data-v-06c202ad]:last-child{padding-right:0}.bt-state[data-v-06c202ad]{display:inline-block;margin-right:var(--space-1);padding:0 var(--space-1);border-radius:var(--radius-xs);background:var(--color-fill-2);color:var(--color-text-muted);font-size:var(--text-xs);white-space:nowrap}.btd[data-v-c3283a98],.btd-raw[data-v-c3283a98]{display:flex;flex-direction:column;gap:6px;min-width:0}.btd-stack[data-v-c3283a98]{display:flex;flex-direction:column;gap:10px;min-width:0}.btd-error[data-v-c3283a98]{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text)}.btd-error-head[data-v-c3283a98]{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2)}.btd-error-code[data-v-c3283a98]{color:var(--color-danger);font-family:var(--font-mono);font-size:var(--text-xs);text-autospace:no-autospace}.btd-error-message[data-v-c3283a98]{color:var(--color-text-muted);overflow-wrap:anywhere}.btd-changes[data-v-c3283a98]{display:flex;flex-direction:column;gap:6px;font-size:var(--text-base);line-height:var(--leading-normal)}.btd-changes-title[data-v-c3283a98],.btd-changes-note[data-v-c3283a98]{color:var(--color-text-faint);font-size:var(--text-xs);user-select:none}.btd-change-rows[data-v-c3283a98]{display:grid;grid-template-columns:fit-content(40%) minmax(0,1fr);gap:var(--space-1) var(--space-4);margin:0}.btd-change-rows dt[data-v-c3283a98]{color:var(--color-text-muted);user-select:none}.btd-change-rows dd[data-v-c3283a98]{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--space-2);min-width:0;margin:0}.btd-before[data-v-c3283a98],.btd-after[data-v-c3283a98]{display:inline-flex;align-items:baseline;gap:var(--space-1);min-width:0}.btd-before[data-v-c3283a98] .bv,.btd-before[data-v-c3283a98] .burl,.btd-before[data-v-c3283a98] .burl-plain,.btd-before[data-v-c3283a98] .burl-host,.btd-before[data-v-c3283a98] .burl-path,.btd-before[data-v-c3283a98] .burl-hash,.btd-before[data-v-c3283a98] .burl-key{color:var(--color-text-faint)}.btd-arrow[data-v-c3283a98]{flex:none;align-self:center;color:var(--color-text-faint)}.btd-blocks[data-v-c3283a98]{display:grid;grid-template-columns:max-content max-content minmax(0,1fr);gap:2px var(--space-2);font-size:var(--text-base);line-height:var(--leading-normal)}.btd-block-id[data-v-c3283a98],.btd-block-kind[data-v-c3283a98]{color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-xs);line-height:inherit;text-autospace:no-autospace;user-select:none}.btd-block-text[data-v-c3283a98]{min-width:0;color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere}.btd-block-text.is-heading[data-v-c3283a98]{font-weight:var(--weight-medium)}.btd-block-note[data-v-c3283a98]{margin-left:var(--space-2);color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-regular);user-select:none}.btd-rest-title[data-v-c3283a98]{margin-bottom:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs);user-select:none}.btd-rest-rows[data-v-c3283a98]{display:grid;grid-template-columns:fit-content(50%) minmax(0,1fr);gap:2px var(--space-4);margin:0;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);text-autospace:no-autospace}.btd-rest-rows dt[data-v-c3283a98]{color:var(--color-text-muted);overflow-wrap:anywhere}.btd-rest-rows dd[data-v-c3283a98]{min-width:0;margin:0;color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere}.btd-note[data-v-c3283a98]{color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--leading-normal)}.brt[data-v-ca15c051]{position:relative;display:block;flex:none;padding:0;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-xs);background:var(--color-fill-2);overflow:hidden}button.brt[data-v-ca15c051]{cursor:zoom-in}button.brt[data-v-ca15c051]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.brt-row[data-v-ca15c051]{width:var(--browser-receipt-thumb-width);height:var(--browser-receipt-thumb-height)}.brt-frame[data-v-ca15c051]{width:var(--browser-receipt-frame-width);height:var(--browser-receipt-frame-height);border-radius:var(--radius-sm)}.brt-canvas[data-v-ca15c051]{position:absolute;display:block}.brt-img[data-v-ca15c051]{display:block;width:100%;height:100%}.brt-dot[data-v-ca15c051],.brt-ring[data-v-ca15c051]{position:absolute;box-sizing:border-box;border-radius:var(--radius-full);transform:translate(-50%,-50%);pointer-events:none}.brt-dot[data-v-ca15c051]{width:6px;height:6px;background:var(--browser-shot-mark-color);box-shadow:0 0 0 1px var(--browser-shot-mark-halo-color)}.brt-ring[data-v-ca15c051]{width:12px;height:12px;border:var(--browser-shot-mark-width) solid var(--browser-shot-mark-color);background:var(--browser-shot-mark-fill);box-shadow:var(--browser-shot-mark-halo)}.brt-box[data-v-ca15c051]{position:absolute;box-sizing:border-box;border:var(--browser-shot-mark-width) solid var(--browser-shot-mark-color);border-radius:var(--radius-xs);box-shadow:var(--browser-shot-mark-halo);pointer-events:none}.brt-missing[data-v-ca15c051]{background:var(--color-surface-sunken)}.brt-live[data-v-ca15c051]{position:absolute;top:var(--space-05);right:var(--space-05);display:flex;border-radius:var(--radius-full);box-shadow:0 0 0 var(--browser-live-dot-halo) var(--color-surface-raised)}.cron-fields[data-v-04a6af1e]{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-1) var(--space-3);margin:0;font-size:var(--text-base);line-height:20px}.cron-fields dt[data-v-04a6af1e]{color:var(--color-text-faint)}.cron-fields dd[data-v-04a6af1e]{margin:0;min-width:0;color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere}.cron-fields dd.mono[data-v-04a6af1e]{font-family:var(--font-mono)}.cron-list[data-v-04a6af1e]{display:flex;flex-direction:column;gap:var(--space-2)}.cron-job[data-v-04a6af1e]{display:flex;flex-direction:column;min-width:0;font-size:var(--text-base);line-height:20px}.cron-desc[data-v-04a6af1e]{min-width:0;color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere}.cron-meta[data-v-04a6af1e]{color:var(--color-text-faint);overflow-wrap:anywhere}.cron-meta .mono[data-v-04a6af1e]{font-family:var(--font-mono)}.cron-note[data-v-04a6af1e]{color:var(--color-text-faint);font-size:var(--text-base);line-height:20px}.cron-args[data-v-04a6af1e]{margin-bottom:var(--space-2);color:var(--color-text-muted);font:var(--text-base)/var(--leading-normal) var(--font-ui);white-space:pre-wrap;overflow-wrap:anywhere}.file-list[data-v-1ab71812]{display:flex;flex-direction:column}.file-row[data-v-1ab71812]{width:100%;border:none;border-radius:var(--radius-sm);background:transparent;padding:0;font-family:var(--font-mono);font-size:var(--content-font-size);line-height:1.571;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.file-row[data-v-1ab71812]:hover{color:var(--color-accent)}.file-row[data-v-1ab71812]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.goal-block[data-v-a5593c6a]{display:flex;flex-direction:column;gap:2px}.goal-text[data-v-a5593c6a]{color:var(--color-text);font-size:var(--content-font-size);line-height:var(--leading-normal);white-space:pre-wrap;word-break:break-word}.goal-criterion[data-v-a5593c6a]{color:var(--color-text-muted);font-size:var(--content-font-size);line-height:var(--leading-normal);white-space:pre-wrap;word-break:break-word}.match-list[data-v-ac42a81a]{display:flex;flex-direction:column}.match-row[data-v-ac42a81a]{display:flex;align-items:baseline;gap:var(--space-2);width:100%;border:none;border-radius:var(--radius-sm);background:transparent;padding:0;font-family:var(--font-mono);font-size:var(--content-font-size);line-height:1.571;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text);text-align:left;cursor:default}.match-row.link[data-v-ac42a81a]{cursor:pointer}.match-row.link:hover .mtext[data-v-ac42a81a]{color:var(--color-accent)}.match-row[data-v-ac42a81a]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.mref[data-v-ac42a81a]{flex:none;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-faint)}.match-row.link:hover .mref[data-v-ac42a81a]{color:var(--color-accent)}.mtext[data-v-ac42a81a]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-tool[data-v-e9412dcd]{display:inline-flex;flex-direction:column;gap:6px;max-width:320px}.media-title[data-v-e9412dcd]{font-size:var(--text-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-image-button[data-v-e9412dcd]{padding:0;border:none;background:transparent;cursor:pointer;border-radius:var(--radius-md);overflow:hidden}.media-image[data-v-e9412dcd]{display:block;max-width:100%;border-radius:var(--radius-md);background:var(--media-alpha-canvas)}.media-video[data-v-e9412dcd],.media-audio[data-v-e9412dcd]{max-width:100%;border-radius:var(--radius-md)}.media-video[data-v-e9412dcd]{display:block}.media-video-button[data-v-e9412dcd]{position:relative}.media-video-tile[data-v-e9412dcd]{display:block;width:320px;max-width:100%;aspect-ratio:16 / 9;background:var(--color-well)}.media-play-badge[data-v-e9412dcd]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-full);background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);color:var(--color-text);box-shadow:var(--shadow-sm);pointer-events:none}.pg-dot[data-v-e0e29c52]{width:7px;height:7px;flex:none;border-radius:var(--radius-full);background:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.pg-title[data-v-e0e29c52]{min-width:0;overflow:hidden;color:var(--color-text);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap}.pg-time[data-v-e0e29c52]{font-variant-numeric:tabular-nums}.pg-body[data-v-e0e29c52]{color:var(--color-text)}.pg-body[data-v-e0e29c52] .markdown-renderer>.node-slot:first-child{padding-top:0}.plan-glyph[data-v-fa2a8965]{display:inline-flex;align-items:center}.plan-path[data-v-fa2a8965]{display:block;max-width:100%;margin:0;padding:0;overflow:hidden;border:none;background:transparent;color:var(--color-text);font-family:inherit;font-size:inherit;line-height:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.plan-path[data-v-fa2a8965]:hover{text-decoration:underline}.plan-path[data-v-fa2a8965]:focus-visible{outline:none;border-radius:var(--radius-xs);box-shadow:var(--p-focus-ring)}.plan-content[data-v-fa2a8965]{color:var(--color-text)}.plan-review[data-v-fa2a8965]{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-2);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-normal)}.plan-review>div[data-v-fa2a8965]{display:flex;align-items:baseline;gap:var(--space-2)}.review-label[data-v-fa2a8965]{flex:none;color:var(--color-text-faint)}.review-feedback[data-v-fa2a8965]{white-space:pre-wrap}.st-args[data-v-acab1ed2]{color:var(--color-text-muted);font:var(--text-base)/var(--leading-normal) var(--font-ui);white-space:pre-wrap;overflow-wrap:anywhere}.sw-content[data-v-8243825d]{display:flex;flex-direction:column;gap:6px;min-width:0}.sw-head[data-v-8243825d]{display:flex;align-items:center;gap:var(--space-3);width:100%;min-width:0}.sw-avatar[data-v-8243825d]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-fill-1);color:var(--color-text)}.sw-text[data-v-8243825d]{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal)}.sw-title[data-v-8243825d]{color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sw-model[data-v-8243825d]{color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sw-count[data-v-8243825d]{flex:none;color:var(--color-accent);font-size:var(--text-base);line-height:var(--leading-normal)}.sw-wrap[data-v-8243825d]{position:relative;display:flex;flex-direction:column;min-width:0;max-height:300px}.sw-area[data-v-8243825d]{flex:1;min-height:0;border:1px solid var(--color-line);border-radius:var(--radius-lg);--ui-scroll-area-track-inset: var(--radius-lg)}.sw-members[data-v-8243825d]{display:flex;flex-direction:column;gap:0;padding:var(--space-1)}@property --sw-edge-top{syntax: ""; inherits: true; initial-value: 0;}@property --sw-edge-bottom{syntax: ""; inherits: true; initial-value: 0;}.sw-edges[data-v-8243825d]{position:absolute;inset:0;z-index:1;border-radius:var(--radius-lg);overflow:hidden;pointer-events:none;transition:--sw-edge-top var(--duration-slow) var(--ease-out),--sw-edge-bottom var(--duration-slow) var(--ease-out);mask-image:linear-gradient(to bottom,rgb(0 0 0 / var(--sw-edge-top)),transparent var(--chat-scroll-edge-size)),linear-gradient(to top,rgb(0 0 0 / var(--sw-edge-bottom)),transparent var(--chat-scroll-edge-size))}.sw-edges[data-v-8243825d]:before{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 calc(var(--chat-scroll-edge-size) * .35) var(--color-chat-scroll-edge-strong),inset 0 0 calc(var(--chat-scroll-edge-size) * .65) var(--color-chat-scroll-edge-medium),inset 0 0 var(--chat-scroll-edge-size) var(--color-chat-scroll-edge-soft);mask-image:linear-gradient(to bottom,rgb(0 0 0 / var(--sw-edge-top)),black var(--chat-scroll-edge-size)),linear-gradient(to top,rgb(0 0 0 / var(--sw-edge-bottom)),black var(--chat-scroll-edge-size));mask-composite:intersect}@media(prefers-reduced-motion:reduce){.sw-edges[data-v-8243825d],.sw-go[data-v-8243825d]{transition:none}}.sw-member[data-v-8243825d]{display:flex;flex-direction:column;min-width:0}.sw-row[data-v-8243825d]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-width:0;padding:var(--space-1) var(--space-2);border:none;border-radius:var(--radius-sm);background:transparent;text-align:left;font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal);cursor:pointer}button.sw-row[data-v-8243825d]:hover{background:var(--color-hover)}div.sw-row[data-v-8243825d]{cursor:default}.sw-row[data-v-8243825d]:focus-visible,.sw-err[data-v-8243825d]:focus-visible{outline:none;border-radius:var(--radius-xs);box-shadow:var(--p-focus-ring)}.sw-name[data-v-8243825d]{display:block;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--color-text);white-space:nowrap}.sw-tail[data-v-8243825d]{margin-left:auto;display:flex;align-items:center;gap:var(--space-2);flex:none}.sw-state[data-v-8243825d]{display:inline-flex;align-items:center;flex:none;gap:var(--space-1);color:var(--color-text-faint)}.sw-err[data-v-8243825d]{color:var(--color-danger)}.sw-tail .sw-spin[data-v-8243825d]{color:var(--color-text-faint)}.sw-go-off[data-v-8243825d]{visibility:hidden}.sw-go-open[data-v-8243825d]{transform:rotate(90deg)}.sw-idx[data-v-8243825d]{min-width:20px;text-align:right;color:var(--color-text);font-variant-numeric:tabular-nums}.sw-go[data-v-8243825d]{color:var(--color-text-faint);transition:transform var(--duration-base) var(--ease-out)}.sw-body[data-v-8243825d]{margin:0 var(--space-2) var(--space-1);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--content-font-size);line-height:1.571;white-space:pre-wrap;word-break:break-word}.sw-fallback[data-v-8243825d]{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--content-font-size);line-height:1.571;white-space:pre-wrap;word-break:break-word}.sw-waiting[data-v-8243825d]{color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-base)}.status-glyph[data-v-b7f4dc12]{flex:none;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;user-select:none}.status-glyph[data-v-b7f4dc12] .kw-icon{width:18px;height:18px}.status-glyph[data-v-b7f4dc12] .ui-spinner{color:inherit}.status-glyph[data-v-b7f4dc12] .ui-spinner__track,.status-glyph[data-v-b7f4dc12] .ui-spinner__arc{stroke-width:1.8}.status-glyph.s-run[data-v-b7f4dc12]{color:var(--color-text)}.status-glyph.s-done[data-v-b7f4dc12]{color:var(--color-fill-4)}.status-glyph.s-fail[data-v-b7f4dc12]{color:var(--color-danger)}.status-glyph.s-pending[data-v-b7f4dc12]{color:var(--color-fill-4)}.todo-head[data-v-f9866b68]{display:flex;align-items:center;gap:6px;min-width:0}.todo-current[data-v-f9866b68]{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.todo-count[data-v-f9866b68]{flex:none;color:var(--color-text-faint)}.todo-list[data-v-f9866b68]{display:flex;flex-direction:column;gap:var(--space-1)}.todo-row[data-v-f9866b68]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-base);line-height:20px;color:var(--color-text)}.todo-title[data-v-f9866b68]{flex:1;min-width:0;overflow-wrap:anywhere}.todo-row.s-in_progress .todo-title[data-v-f9866b68]{color:var(--color-text);font-weight:var(--weight-medium)}.todo-row.s-done .todo-title[data-v-f9866b68]{color:var(--color-text-quaternary)}.wf-fields[data-v-bbc790d1]{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-1) var(--space-3);margin:0;font-size:var(--text-base);line-height:20px}.wf-fields dt[data-v-bbc790d1]{color:var(--color-text-faint)}.wf-fields dd[data-v-bbc790d1]{margin:0;min-width:0;color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere}.wf-fields dd.mono[data-v-bbc790d1]{font-family:var(--font-mono)}.wf-output[data-v-bbc790d1]{margin-top:var(--space-2)}.bt-list[data-v-0fa74056]{display:flex;flex-direction:column;gap:var(--space-1)}.bt-task[data-v-0fa74056]{display:flex;align-items:baseline;gap:var(--space-2);min-width:0;font-size:var(--text-base);line-height:20px}.bt-desc[data-v-0fa74056]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.bt-meta[data-v-0fa74056]{flex:none;color:var(--color-text-faint)}.bt-fields[data-v-0fa74056]{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-1) var(--space-3);margin:0;font-size:var(--text-base);line-height:20px}.bt-fields dt[data-v-0fa74056]{color:var(--color-text-faint)}.bt-fields dd[data-v-0fa74056]{margin:0;min-width:0;color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere}.bt-fields dd.mono[data-v-0fa74056]{font-family:var(--font-mono)}.bt-note[data-v-0fa74056]{color:var(--color-text-faint);font-size:var(--text-base);line-height:20px}.brs[data-v-c8d260d6]{margin-bottom:var(--space-1)}.brs-list[data-v-c8d260d6]{display:flex;gap:var(--space-2);margin:0;padding:0 0 var(--space-1);list-style:none}.brs-item[data-v-c8d260d6]{display:flex;flex:none;flex-direction:column;gap:var(--space-1);min-width:var(--browser-receipt-frame-min-width)}.brs-caption[data-v-c8d260d6]{width:0;min-width:100%;overflow:hidden;color:var(--color-text-muted);font-size:var(--text-xs);line-height:var(--leading-normal);text-overflow:ellipsis;white-space:nowrap;user-select:none}.ble[data-v-23d2345b]{display:inline-flex;align-items:center;gap:var(--space-2);flex:none;margin-block:calc(var(--space-05) * -1);animation:kimi-card-in var(--duration-base) var(--ease-out)}@media(prefers-reduced-motion:reduce){.ble[data-v-23d2345b]{animation:none}}.brr-chip[data-v-3d16ae0c]{display:inline-flex;align-items:center;gap:var(--space-05);color:var(--color-text-faint);background:var(--color-fill-2)}.brr-body[data-v-3d16ae0c]{display:flex;flex-direction:column;gap:var(--space-05)}.brr-caption[data-v-3d16ae0c]{color:var(--color-text-faint);font-size:var(--text-xs);line-height:var(--leading-normal)}.brr-attempt[data-v-3d16ae0c]{min-width:0}.activity-run[data-v-29fe6908]{display:flex;flex-direction:column;animation:kimi-card-in var(--duration-base) var(--ease-out)}.ar-top[data-v-29fe6908]{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);min-width:0}.ar-head[data-v-29fe6908]{display:flex;flex:1;align-items:center;gap:var(--space-2);width:100%;min-width:0;min-height:20px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base);line-height:20px;text-align:left;cursor:pointer;user-select:none;transition:color var(--duration-base) var(--ease-out)}.ar-head[data-v-29fe6908]:hover{color:var(--color-text)}.ar-head.is-static[data-v-29fe6908],.ar-head.is-static[data-v-29fe6908]:hover{cursor:default;color:var(--color-text-faint)}.ar-head[data-v-29fe6908]:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent-soft)}.ar-sr-only[data-v-29fe6908]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ar-sum[data-v-29fe6908]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--weight-regular)}.ar-faint[data-v-29fe6908],.ar-sep[data-v-29fe6908]{color:var(--color-text-faint)}.ar-car[data-v-29fe6908]{color:var(--color-text-faint);flex:none;width:12px;height:12px;transition:transform var(--duration-base) var(--ease-out)}.activity-run.open .ar-car[data-v-29fe6908]{transform:rotate(90deg)}.ar-body[data-v-29fe6908]{display:grid;grid-template-rows:minmax(0,0fr);overflow:hidden;margin-right:calc(-1 * var(--space-1-5));transition:grid-template-rows var(--duration-base) var(--ease-out)}.ar-body.open[data-v-29fe6908]{grid-template-rows:minmax(0,1fr)}.ar-body>.ar-body-inner[data-v-29fe6908]{opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.ar-body.open>.ar-body-inner[data-v-29fe6908]{opacity:1}@media(prefers-reduced-motion:reduce){.ar-body[data-v-29fe6908],.ar-body>.ar-body-inner[data-v-29fe6908]{transition:none}}.ar-body-inner[data-v-29fe6908]{min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:var(--space-1);padding-top:6px;padding-right:var(--space-1-5)}.ar-body-inner[data-v-29fe6908]>.tool-line.open+*,.ar-body-inner[data-v-29fe6908]>.history-window>.history-row:has(>.tool-line.open)+.history-row>*:not(.history-navigation){margin-top:4px}.browser-reference-details[data-v-d7722f3e]{display:flex;flex-direction:column;gap:var(--space-3)}.browser-reference-details__source[data-v-d7722f3e],.browser-reference-details__comment[data-v-d7722f3e]{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--ui-b2)}.browser-reference-details__source[data-v-d7722f3e]{color:var(--color-text-muted);overflow-wrap:anywhere}.browser-reference-details__source a[data-v-d7722f3e]{color:inherit}.browser-reference-details__source time[data-v-d7722f3e]{font-variant-numeric:tabular-nums}.browser-reference-details__status[data-v-d7722f3e]{margin:0;color:var(--color-warning);font-size:var(--ui-b2)}.browser-reference-details__preview[data-v-d7722f3e]{max-width:100%;max-height:var(--browser-annotation-preview-max-height);width:auto;align-self:center;object-fit:contain;border-radius:var(--radius-xs)}.step-timing[data-v-9b153a05]{display:flex;flex-direction:column;margin-top:2px}.st-head[data-v-9b153a05]{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:transparent;color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-xs);line-height:18px;text-align:left;cursor:pointer;user-select:none;transition:color var(--duration-base) var(--ease-out)}.st-head[data-v-9b153a05]:hover{color:var(--color-text-muted)}.st-head[data-v-9b153a05]:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent-soft)}.st-car[data-v-9b153a05]{flex:none;width:10px;height:10px;transition:transform var(--duration-base) var(--ease-out)}.step-timing.open .st-car[data-v-9b153a05]{transform:rotate(90deg)}.st-sum[data-v-9b153a05]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-body[data-v-9b153a05]{display:flex;flex-direction:column;gap:1px;padding:2px 0 2px 12px;color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-xs);line-height:18px;user-select:text}.st-row[data-v-9b153a05]{display:flex;gap:var(--space-2);min-width:0}.st-label[data-v-9b153a05]{flex:none;width:44px;color:var(--color-text-faint);opacity:.7}.msg-time[data-v-dd7afa76]{display:inline-flex;align-items:center;min-height:22px;box-sizing:border-box;padding:2px 5px;border-radius:var(--radius-sm);color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1;opacity:.7;white-space:nowrap}.ntf-list[data-v-42494feb]{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-3);margin:var(--space-2) 0}.ntn[data-v-42494feb]{margin-left:auto;max-width:var(--p-bubble-max);display:flex;flex-direction:column;align-items:flex-end}.ntn-head[data-v-42494feb]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-base);line-height:var(--leading-normal);overflow-wrap:anywhere}.ntn-ico[data-v-42494feb]{flex:none}.ntn-sr-only[data-v-42494feb]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ntn.ok .ntn-ico[data-v-42494feb]{color:var(--color-success)}.ntn.err .ntn-ico[data-v-42494feb]{color:var(--color-danger)}.ntn.warn .ntn-ico[data-v-42494feb]{color:var(--color-warning)}.ntn-bubble[data-v-42494feb]{box-sizing:border-box;max-width:100%;padding:var(--space-2) var(--space-3);background:var(--color-user-bubble-bg);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--content-font-size);line-height:var(--leading-normal);white-space:pre-wrap;overflow-wrap:anywhere}.ntn-line+.ntn-line[data-v-42494feb]{margin-top:var(--space-1)}.ntn-reason[data-v-42494feb]{color:var(--color-text-muted)}.ntn-out[data-v-42494feb]{display:flex;align-items:center;gap:var(--space-2);background:var(--color-surface-raised);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);box-shadow:var(--shadow-xs);white-space:normal}.ntn-out-ic[data-v-42494feb]{color:var(--color-text-faint);flex:none}.ntn-out-path[data-v-42494feb]{flex:1;min-width:0;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl;text-align:left}.ntn-out-size[data-v-42494feb]{flex:none;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint)}.ntn-out-copy[data-v-42494feb]{display:inline-flex;align-items:center;height:var(--space-6);padding:0 var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--color-text-muted);border:var(--p-hairline) solid var(--color-line-strong);background:var(--color-surface-raised);flex:none;transition:color var(--duration-fast) var(--ease-out)}.ntn-out-copy[data-v-42494feb]:hover{color:var(--color-text)}.ntn-preview-cap[data-v-42494feb]{font-size:var(--text-xs);color:var(--color-text-faint);margin-bottom:var(--space-05)}.ntn-preview-text[data-v-42494feb]{margin:0;font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--color-text-muted);white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:8;overflow:hidden}.ntn-meta[data-v-42494feb]{margin-top:var(--space-1);padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-base);line-height:var(--leading-normal)}.ntn-raw[data-v-42494feb]{max-width:100%}.ntn-raw summary[data-v-42494feb]{list-style:none;display:flex;align-items:center;gap:var(--space-1);cursor:pointer;font-size:var(--text-xs);color:var(--color-text-faint);user-select:none}.ntn-raw summary[data-v-42494feb]::-webkit-details-marker{display:none}.ntn-raw summary[data-v-42494feb]:hover{color:var(--color-text)}.ntn-raw-car[data-v-42494feb]{transition:transform var(--duration-base) var(--ease-out)}.ntn-raw[open] .ntn-raw-car[data-v-42494feb]{transform:rotate(90deg)}.ntn-raw-in[data-v-42494feb]{margin-top:var(--space-1);display:flex;flex-direction:column;gap:var(--space-2)}.ntn-raw-fields[data-v-42494feb]{display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-3)}.ntn-raw-fields .k[data-v-42494feb]{color:var(--color-text-faint);font-size:var(--text-xs)}.ntn-raw-fields .v[data-v-42494feb]{color:var(--color-text-muted);font-size:var(--text-xs);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ntn-raw-pre[data-v-42494feb]{margin:0;padding:var(--space-2) var(--space-3);background:var(--color-surface-raised);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--color-text-muted);white-space:pre;overflow:auto;max-width:100%;max-height:13lh}.turn-fold[data-v-75ed0134]{display:flex;flex-direction:column}.tf-head[data-v-75ed0134]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:20px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base);line-height:20px;text-align:left;cursor:pointer;user-select:none;transition:color var(--duration-base) var(--ease-out)}.tf-head[data-v-75ed0134]:hover{color:var(--color-text)}.tf-head[data-v-75ed0134]:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent-soft)}.tf-sum[data-v-75ed0134]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--weight-regular)}.tf-car[data-v-75ed0134]{color:var(--color-text-faint);flex:none;width:12px;height:12px;transition:transform var(--duration-base) var(--ease-out)}.turn-fold.open .tf-car[data-v-75ed0134]{transform:rotate(90deg)}.tf-body[data-v-75ed0134]{display:grid;grid-template-rows:minmax(0,0fr);overflow:hidden;margin-right:calc(-1 * var(--space-1-5));transition:grid-template-rows var(--duration-base) var(--ease-out)}.tf-body.open[data-v-75ed0134]{grid-template-rows:minmax(0,1fr)}.tf-body-inner[data-v-75ed0134]{min-height:0;overflow:hidden;display:flex;flex-direction:column;padding-right:var(--space-1-5)}.tf-body-inner[data-v-75ed0134]>.think,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.think,.tf-body-inner[data-v-75ed0134]>.tool-group,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.tool-group,.tf-body-inner[data-v-75ed0134]>.activity-run,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.activity-run,.tf-body-inner[data-v-75ed0134]>.agent-group,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.agent-group,.tf-body-inner[data-v-75ed0134]>.tool-line,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.tool-line,.tf-body-inner[data-v-75ed0134]>.media-tool,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.media-tool,.tf-body-inner[data-v-75ed0134]>.ask-receipt,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.ask-receipt{margin-top:var(--chat-block-gap)}.tf-body-inner[data-v-75ed0134]>.think,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.think,.tf-body-inner[data-v-75ed0134]>.turn-fold,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.turn-fold,.tf-body-inner[data-v-75ed0134]>.activity-run,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.activity-run{margin-top:var(--chat-strip-gap)}.tf-body-inner[data-v-75ed0134]>.tool-line,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row>.tool-line{margin-top:var(--chat-group-gap)}.tf-body-inner>.msg[data-v-75ed0134]+.tool-line,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row:has(>.msg)+.history-row>.tool-line{margin-top:var(--chat-strip-gap)}.tf-body-inner[data-v-75ed0134]>.tool-line+.tool-line,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row:has(>.tool-line)+.history-row>.tool-line{margin-top:var(--chat-strip-tight)}.tf-body-inner[data-v-75ed0134]>.tool-line.open+.tool-line,.tf-body-inner[data-v-75ed0134]>.history-window>.history-row:has(>.tool-line.open)+.history-row>.tool-line{margin-top:var(--chat-group-gap)}.turn-fold.streaming .tf-body-inner>.msg[data-v-75ed0134]:first-child,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.think:first-child,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.tool-group:first-child,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.activity-run:first-child,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.agent-group:first-child,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.tool-line:first-child,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.media-tool:first-child,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.ask-receipt:first-child,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.history-window>.history-row:first-child>.msg,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.history-window>.history-row:first-child>.think,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.history-window>.history-row:first-child>.tool-group,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.history-window>.history-row:first-child>.activity-run,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.history-window>.history-row:first-child>.agent-group,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.history-window>.history-row:first-child>.tool-line,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.history-window>.history-row:first-child>.media-tool,.turn-fold.streaming .tf-body-inner[data-v-75ed0134]>.history-window>.history-row:first-child>.ask-receipt{margin-top:0}.tf-body-inner .msg[data-v-75ed0134]{font-size:var(--ui-font-size);line-height:var(--leading-prose);color:var(--color-text);font-weight:var(--weight-medium)}.tf-body-inner .msg[data-v-75ed0134] p{margin:0}.tf-body-inner .msg[data-v-75ed0134] p+p{margin-top:var(--space-2)}@container (min-width: 760px){.tf-body-inner .msg[data-v-75ed0134] .markstream-vue.markdown-renderer:has(.md-table-actions){content-visibility:visible}.tf-body-inner .msg[data-v-75ed0134] .md-table-scroll-host{margin-right:calc(var(--markdown-code-action-size) + var(--markdown-code-action-gap))}.tf-body-inner .msg[data-v-75ed0134] .table-node-wrapper.md-table-wide{--md-table-wide-full: calc( 100cqi - var(--space-5) - var(--space-5) - var(--markdown-code-action-size) - var(--markdown-code-action-gap) );--md-table-wide-width: min(var(--md-table-wide-full), var(--p-table-wide-max));width:var(--md-table-wide-width);min-width:100%;max-width:var(--md-table-wide-width)!important;margin-left:calc(.5*min((var(--markdown-code-action-size) + var(--markdown-code-action-gap)),var(--md-table-wide-full) - var(--md-table-wide-width)))}.tf-body-inner .msg[data-v-75ed0134] .table-node-wrapper:not(.md-table-wide){--table-cell-cap: min(var(--p-table-cell-max), 36cqi)}}.turn-files[data-v-9abc3962]{margin-top:var(--chat-block-gap)}.turn-files[data-v-9abc3962] .ui-card__head{font-family:var(--font-ui);font-weight:var(--weight-regular);padding:var(--space-2) var(--space-3)}.turn-files[data-v-9abc3962] .ui-card__body{padding:var(--space-1) var(--space-3)}.turn-files[data-v-9abc3962] .ui-card__foot{padding:0;justify-content:stretch}.tf-ic[data-v-9abc3962]{display:inline-flex;align-items:center;color:var(--color-text-faint);flex:none}.tf-title[data-v-9abc3962]{font-size:var(--text-sm);color:var(--color-text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-stats[data-v-9abc3962]{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-1);flex:none}.tf-add[data-v-9abc3962],.tf-del[data-v-9abc3962]{font-family:var(--font-mono);font-size:var(--text-xs);flex:none}.tf-add[data-v-9abc3962]{color:var(--color-success)}.tf-del[data-v-9abc3962]{color:var(--color-danger)}.tf-list[data-v-9abc3962]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.tf-row[data-v-9abc3962]{display:flex;align-items:center;gap:var(--space-1);min-width:0;padding:var(--space-1) 0;font-size:var(--text-sm);line-height:var(--leading-tight)}.tf-file[data-v-9abc3962]{display:flex;align-items:baseline;border:none;border-radius:var(--radius-xs);background:transparent;padding:0;font-family:inherit;font-size:inherit;color:var(--color-text);flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-align:left}button.tf-file[data-v-9abc3962]{cursor:pointer}button.tf-file[data-v-9abc3962]:hover{text-decoration:underline;text-decoration-color:var(--color-text-faint);text-underline-offset:3px}.tf-file[data-v-9abc3962]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tf-dir[data-v-9abc3962]{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-faint)}.tf-base[data-v-9abc3962]{flex:none;font-weight:var(--weight-medium);color:var(--color-text)}.tf-more[data-v-9abc3962]{width:100%;justify-content:flex-start;border-radius:0}.turn-files .tf-more[data-v-9abc3962]:not(:disabled):active{transform:none}.tf-more-car[data-v-9abc3962]{color:var(--color-text-faint);transition:transform var(--duration-base) var(--ease-out)}.tf-more-car.open[data-v-9abc3962]{transform:rotate(180deg)}.diffbar[data-v-9abc3962]{display:inline-flex;width:36px;height:3px;border-radius:var(--radius-full);overflow:hidden;flex:none}.seg-add[data-v-9abc3962]{background:var(--color-success)}.seg-del[data-v-9abc3962]{background:var(--color-danger)}.bsrc[data-v-bb7d755d]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-top:var(--chat-block-gap);min-width:0}.bsrc-sites[data-v-bb7d755d]{display:inline-flex;flex:none;gap:var(--space-1)}.bsrc-fav[data-v-bb7d755d]{display:inline-grid;flex:none;place-items:center;width:var(--browser-sources-favicon-size);height:var(--browser-sources-favicon-size)}.bsrc-fav img[data-v-bb7d755d]{width:var(--browser-sources-favicon-size);height:var(--browser-sources-favicon-size);object-fit:contain}.bsrc-fallback[data-v-bb7d755d]{display:inline-grid;place-items:center;width:100%;height:100%;border-radius:var(--radius-xs);background:var(--color-fill-2);color:var(--color-text-muted)}.bsrc-globe[data-v-bb7d755d]{width:var(--browser-sources-fallback-icon-size);height:var(--browser-sources-fallback-icon-size)}.bsrc-car[data-v-bb7d755d]{flex:none;width:12px;height:12px;color:var(--color-text-faint);transition:transform var(--duration-base) var(--ease-out)}.bsrc.open .bsrc-car[data-v-bb7d755d]{transform:rotate(90deg)}.bsrc-list[data-v-bb7d755d]{box-sizing:border-box;width:100%;max-height:var(--browser-sources-list-max-height);overflow:auto;overscroll-behavior:contain;padding:var(--space-1);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);animation:kimi-card-in var(--duration-base) var(--ease-out)}.bsrc-group+.bsrc-group[data-v-bb7d755d]{margin-top:var(--space-1)}.bsrc-group-title[data-v-bb7d755d]{margin:0;padding:var(--space-1-5) var(--space-2) var(--space-1);color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-regular);line-height:var(--leading-normal)}.bsrc-rows[data-v-bb7d755d]{margin:0;padding:0;list-style:none}.bsrc-row[data-v-bb7d755d]{position:relative;border-radius:var(--radius-md)}.bsrc-row[data-v-bb7d755d]:hover{background:var(--color-hover)}.bsrc-main[data-v-bb7d755d]{display:flex;width:100%;align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-1-5) var(--space-2);border:none;border-radius:var(--radius-md);background:transparent;color:inherit;font-family:var(--font-ui);text-align:left;cursor:pointer}.bsrc-main[data-v-bb7d755d]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.bsrc-text[data-v-bb7d755d]{display:flex;flex:1;flex-direction:column;min-width:0}.bsrc-title[data-v-bb7d755d],.bsrc-address[data-v-bb7d755d]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bsrc-title[data-v-bb7d755d]{color:var(--color-text);font-size:var(--text-sm);line-height:var(--leading-normal)}.bsrc-address[data-v-bb7d755d]{color:var(--color-text-faint);font-size:var(--text-xs);line-height:var(--leading-normal)}.bsrc-trail[data-v-bb7d755d]{display:inline-flex;flex:none;justify-content:flex-end;width:calc(var(--icon-button-sm) * var(--bsrc-action-count) + var(--space-05) * (var(--bsrc-action-count) - 1))}.bsrc-dialog[data-v-bb7d755d]{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-1-5) var(--space-2)}.bsrc-dialog[data-v-bb7d755d]:hover{background:transparent}.bsrc-wrap[data-v-bb7d755d]{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.bsrc-path[data-v-bb7d755d]{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);overflow-wrap:anywhere;word-break:break-all}.bsrc-tag[data-v-bb7d755d]{transition:opacity var(--duration-fast) var(--ease-out)}.bsrc-actions[data-v-bb7d755d]{position:absolute;top:0;right:var(--space-2);bottom:0;display:inline-flex;align-items:center;gap:var(--space-05);opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.bsrc-row:hover .bsrc-actions[data-v-bb7d755d],.bsrc-row:focus-within .bsrc-actions[data-v-bb7d755d]{opacity:1}.bsrc-row:hover .bsrc-tag[data-v-bb7d755d],.bsrc-row:focus-within .bsrc-tag[data-v-bb7d755d]{opacity:0}@media(hover:none){.bsrc-actions[data-v-bb7d755d]{opacity:1}.bsrc-tag[data-v-bb7d755d]{opacity:0}}@media(prefers-reduced-motion:reduce){.bsrc-list[data-v-bb7d755d]{animation:none}.bsrc-car[data-v-bb7d755d]{transition:none}}.session-rating[data-v-76d0d99f],.sr-lane[data-v-76d0d99f]{display:inline-flex;align-items:center;gap:var(--space-1-5)}.session-rating[data-v-76d0d99f]{position:relative;height:20px;box-sizing:border-box;padding-left:10px;border-left:var(--p-hairline) solid var(--color-line);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.session-rating.standalone[data-v-76d0d99f]{padding-left:0;border-left:0}.session-rating.enter[data-v-76d0d99f]{opacity:0;transform:translate(-6px)}.sr-question[data-v-76d0d99f],.sr-thanks[data-v-76d0d99f]{color:var(--color-text-muted);font-size:var(--text-sm);line-height:20px;white-space:nowrap}.sr-ghost[data-v-76d0d99f]{position:absolute;white-space:nowrap;pointer-events:none;color:var(--color-text-muted);font-size:var(--text-sm);transform-origin:left center}.sr-face[data-v-76d0d99f]{display:inline-flex;align-items:center;justify-content:center;height:20px;padding:0;border:none;border-radius:var(--radius-md);background:none;cursor:pointer;transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.session-rating:not(.armed) .sr-face[data-v-76d0d99f]{cursor:default}.session-rating.picking .sr-face[data-v-76d0d99f]:not(.picked){opacity:0;transform:scale(.82)}.session-rating.picking .sr-face.picked .kimi-face[data-v-76d0d99f]{color:var(--logo)}.sr-face[data-v-76d0d99f]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.sr-chosen[data-v-76d0d99f]{position:relative;display:inline-flex}.sr-lane.intro[data-v-76d0d99f]{opacity:0;transform:translate(8px)}.kimi-face[data-v-76d0d99f]{display:block;width:20px;height:20px;flex:none;color:var(--color-text-faint);overflow:visible;transition:color var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.kf-head[data-v-76d0d99f]{fill:transparent;stroke:currentColor;stroke-width:1;transition:fill .22s var(--ease-out)}.kf-eye[data-v-76d0d99f]{fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;transform-box:fill-box;transform-origin:center;transition:stroke .22s var(--ease-out)}.armed .sr-face:hover .kimi-face[data-v-76d0d99f]{color:var(--logo);transform:translateY(-1px)}.armed .sr-face:hover .kf-head[data-v-76d0d99f]{fill:var(--color-accent-soft)}.kimi-face.flying[data-v-76d0d99f]{color:var(--logo)}.kimi-face.flying .kf-head[data-v-76d0d99f]{fill:var(--color-bg)}.kimi-face.solid[data-v-76d0d99f]{color:var(--logo)}.kimi-face.solid .kf-head[data-v-76d0d99f]{fill:currentColor}.kimi-face.solid .kf-eye[data-v-76d0d99f]{stroke:var(--color-text-on-accent);stroke-width:1.5}.kimi-face.land[data-v-76d0d99f]{animation:sr-land-76d0d99f .48s cubic-bezier(.3,1.5,.5,1)}@keyframes sr-land-76d0d99f{0%{transform:scale(1)}28%{transform:scale(1.24,.84)}58%{transform:scale(.93,1.07)}to{transform:scale(1)}}.kimi-face.blink .kf-eye[data-v-76d0d99f]{animation:sr-blink-76d0d99f .26s ease-in-out}@keyframes sr-blink-76d0d99f{0%,to{transform:scaleY(1)}50%{transform:scaleY(.15)}}.sr-burst[data-v-76d0d99f]{position:absolute;left:50%;top:50%;width:0;height:0;pointer-events:none}.sr-ring[data-v-76d0d99f]{position:absolute;left:-15px;top:-15px;width:30px;height:30px;box-sizing:border-box;border-radius:50%;border:1.5px solid var(--logo);opacity:0;animation:sr-ring-76d0d99f .64s var(--ease-out) forwards}@keyframes sr-ring-76d0d99f{0%{transform:scale(.45);opacity:.7}to{transform:scale(1.45);opacity:0}}.sr-p[data-v-76d0d99f]{position:absolute;left:-1px;top:-3px;width:2px;height:6px;border-radius:1px;background:var(--logo);opacity:0;animation:sr-spark-76d0d99f .6s var(--ease-out) forwards}.sr-p.dot[data-v-76d0d99f]{left:-2px;top:-2px;width:4px;height:4px;border-radius:50%}@keyframes sr-spark-76d0d99f{0%{opacity:1;transform:rotate(var(--a)) translateY(-9px) scale(1)}to{opacity:0;transform:rotate(var(--a)) translateY(var(--d, -21px)) scale(.5)}}@media(prefers-reduced-motion:reduce){.kimi-face.land[data-v-76d0d99f],.kimi-face.blink .kf-eye[data-v-76d0d99f],.sr-burst[data-v-76d0d99f]{animation:none;display:none}}.sr-undo[data-v-76d0d99f]{height:20px;padding:0 var(--space-1-5);color:var(--color-text-muted);font-size:var(--text-sm);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.session-rating.settled .sr-undo[data-v-76d0d99f]{opacity:0;pointer-events:none}.cn[data-v-be72d49a]{margin:0;margin-inline-start:auto;align-self:flex-end;width:fit-content;max-width:78%;display:flex;flex-direction:column;align-items:flex-end}.cn-head[data-v-be72d49a]{align-self:flex-end;display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-base);line-height:var(--leading-normal);overflow-wrap:anywhere}.cn-head-ico[data-v-be72d49a]{flex:none}.cn-head.error .cn-head-ico[data-v-be72d49a]{color:var(--color-danger)}.cn-bubble[data-v-be72d49a]{box-sizing:border-box;max-width:100%;padding:10px 12px;background:var(--color-user-bubble-bg);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--content-font-size);line-height:var(--leading-normal);white-space:pre-wrap;overflow-wrap:anywhere}.cn-meta[data-v-be72d49a]{margin-top:var(--space-1);padding:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-base);line-height:var(--leading-normal)}.media-lightbox[data-v-d7c3ebdd]{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-6);padding-top:calc(var(--space-6) + var(--media-preview-top-inset, 0px));background:var(--color-scrim-strong);-webkit-app-region:no-drag}.media-lightbox-card[data-v-d7c3ebdd]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);max-width:min(960px,calc(100vw - var(--space-6) * 2));max-height:calc(var(--app-height, 100vh) - var(--space-6) * 2 - var(--media-preview-top-inset, 0px))}.media-lightbox-frame[data-v-d7c3ebdd]{max-width:100%;border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg);box-shadow:var(--shadow-xl)}.media-lightbox-media[data-v-d7c3ebdd]{display:block;max-width:100%;max-height:calc(var(--app-height, 100vh) - var(--space-6) * 4 - var(--media-preview-top-inset, 0px));object-fit:contain}.media-lightbox-name[data-v-d7c3ebdd]{max-width:100%;color:var(--color-text-on-scrim);font-size:var(--ui-font-size-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-lightbox-close[data-v-d7c3ebdd]{position:fixed;top:calc(var(--space-4) + var(--media-preview-top-inset, 0px));right:var(--space-6);display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-full);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-sm);cursor:pointer;z-index:var(--z-modal-dropdown);-webkit-app-region:no-drag}.media-lightbox-close[data-v-d7c3ebdd]:before{content:"";position:absolute;inset:-6px}.media-lightbox-close[data-v-d7c3ebdd]:hover{border-color:var(--color-line-strong);background:var(--color-surface-sunken)}.media-preview-menu[data-v-d7c3ebdd]{position:fixed;z-index:var(--z-modal-dropdown);-webkit-app-region:no-drag}.mpm-icon[data-v-d7c3ebdd]{flex:none;color:var(--color-text-muted)}.media-lightbox-close[data-v-d7c3ebdd]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}img[data-v-25eff862]{display:block;width:100%;height:100%;object-fit:cover}.media-thumb[data-v-7f9d78d6]{position:relative;flex:none;display:inline-flex}.media-thumb-btn[data-v-7f9d78d6]{display:block;padding:0;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);background:var(--color-well);overflow:hidden;cursor:pointer;transition:border-color var(--duration-fast) ease}.media-thumb-btn[data-v-7f9d78d6]:hover{border-color:var(--color-line-strong)}.media-thumb.is-reorderable .media-thumb-btn[data-v-7f9d78d6]{user-select:none}.media-thumb.is-dragging[data-v-7f9d78d6]{cursor:grabbing}.media-thumb.is-dragging .media-thumb-btn[data-v-7f9d78d6]{opacity:.55;cursor:grabbing}.media-thumb.is-dragging .media-thumb-tool[data-v-7f9d78d6]{cursor:grabbing}.media-thumb-btn[data-v-7f9d78d6]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.media-thumb-media[data-v-7f9d78d6]{display:block;width:64px;height:64px;object-fit:cover}.media-thumb.is-composer .media-thumb-media[data-v-7f9d78d6],.media-thumb.is-rail .media-thumb-media[data-v-7f9d78d6]{width:var(--p-composer-media-thumb);height:var(--p-composer-media-thumb)}.media-thumb.is-composer .media-thumb-btn[data-v-7f9d78d6]{border-radius:var(--radius-composer-media);corner-shape:var(--corner-shape-composer)}.media-thumb.is-rail .media-thumb-btn[data-v-7f9d78d6]{border-radius:var(--radius-lg)}.media-thumb-tile[data-v-7f9d78d6]{object-fit:none}.media-thumb-badge[data-v-7f9d78d6]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-full);background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);color:var(--color-text);box-shadow:var(--shadow-sm);pointer-events:none}.media-thumb-badge.is-error[data-v-7f9d78d6]{color:var(--color-danger);border-color:var(--color-danger-bd)}.media-thumb-dock[data-v-7f9d78d6]{position:absolute;right:var(--space-1);bottom:var(--space-1);z-index:1;color:var(--color-text-on-scrim);pointer-events:none}.media-thumb.is-composer .media-thumb-dock[data-v-7f9d78d6]{inset:0}.media-thumb.is-composer .media-thumb-dock.has-tools[data-v-7f9d78d6]:before{position:absolute;inset:var(--p-hairline);border-radius:calc(var(--radius-composer-media) - var(--p-hairline));corner-shape:var(--corner-shape-composer);background:var(--color-scrim);content:"";opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.media-thumb-ordinal[data-v-7f9d78d6]{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:var(--p-composer-media-control);height:var(--p-composer-media-control);padding:0 var(--space-1-5);border-radius:var(--radius-md);background:var(--color-scrim-strong);font-size:var(--text-2xs);font-weight:var(--weight-section-label);line-height:1;font-variant-numeric:tabular-nums}.media-thumb.is-composer .media-thumb-ordinal[data-v-7f9d78d6]{position:absolute;right:var(--space-1);bottom:var(--space-1);border-radius:var(--radius-composer-media-control);corner-shape:var(--corner-shape-composer);transition:opacity var(--duration-fast) var(--ease-out)}.media-thumb.is-error .media-thumb-btn[data-v-7f9d78d6]{border-color:var(--color-danger-bd)}.media-thumb-actions[data-v-7f9d78d6]{position:absolute;top:50%;left:50%;z-index:1;display:flex;gap:var(--space-1);opacity:0;pointer-events:none;transform:translate(-50%,-50%);transition:opacity var(--duration-fast) var(--ease-out)}.media-thumb-tool-slot[data-v-7f9d78d6]{display:flex;align-items:center;justify-content:center;width:var(--p-composer-media-action);height:var(--p-composer-media-action);pointer-events:none}.media-thumb-tool[data-v-7f9d78d6]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0;border:none;border-radius:var(--radius-composer-media-control);corner-shape:var(--corner-shape-composer);background:var(--color-scrim-strong);color:inherit;cursor:pointer;pointer-events:none;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-dock.has-tools[data-v-7f9d78d6]:before,.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-dock.has-tools[data-v-7f9d78d6]:before{opacity:1;transition-duration:var(--duration-base)}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-actions[data-v-7f9d78d6],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-actions[data-v-7f9d78d6]{opacity:1;pointer-events:auto}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-tool-slot[data-v-7f9d78d6],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-tool-slot[data-v-7f9d78d6],.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-tool[data-v-7f9d78d6],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-tool[data-v-7f9d78d6]{pointer-events:auto}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-ordinal[data-v-7f9d78d6],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-ordinal[data-v-7f9d78d6]{opacity:0}.media-thumb-tool[data-v-7f9d78d6]:hover{background:color-mix(in srgb,var(--color-scrim-strong) 80%,var(--color-text-on-scrim) 20%)}.media-thumb-tool[data-v-7f9d78d6]:active{transform:scale(.96)}.media-thumb-tool[data-v-7f9d78d6]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}@media(hover:none){.media-thumb.is-composer .media-thumb-dock.has-tools[data-v-7f9d78d6]:before{display:none}.media-thumb.is-composer:not(.is-dragging):hover .media-thumb-ordinal[data-v-7f9d78d6],.media-thumb.is-composer:not(.is-dragging):focus-within .media-thumb-ordinal[data-v-7f9d78d6]{opacity:1}.media-thumb-actions[data-v-7f9d78d6]{inset:0;display:block;opacity:1;transform:none}.media-thumb-tool-slot[data-v-7f9d78d6]{position:absolute;width:var(--touch-target-min);height:var(--touch-target-min);opacity:1;pointer-events:none}.media-thumb-mention-slot[data-v-7f9d78d6]{display:none}.media-thumb-tool[data-v-7f9d78d6]{position:absolute;width:var(--touch-target-min);height:var(--touch-target-min);border-radius:0;background:transparent;pointer-events:auto}.media-thumb-tool[data-v-7f9d78d6]:before{position:absolute;z-index:0;width:var(--icon-button-sm);height:var(--icon-button-sm);border-radius:var(--radius-full);background:var(--color-scrim-strong);content:""}.media-thumb-tool[data-v-7f9d78d6] svg{position:relative;z-index:1}.media-thumb-tool[data-v-7f9d78d6]:hover{background:transparent}.media-thumb-rm[data-v-7f9d78d6]{align-items:flex-start;justify-content:flex-end;width:var(--touch-target-min);height:var(--touch-target-min);padding:var(--space-1)}.media-thumb-rm-slot[data-v-7f9d78d6]{top:0;right:0;pointer-events:auto}}@media(prefers-reduced-motion:reduce){.media-thumb-dock[data-v-7f9d78d6]:before,.media-thumb-actions[data-v-7f9d78d6],.media-thumb-ordinal[data-v-7f9d78d6]{transition:none}}.media-rail[data-v-0b717628]{display:flex;align-items:center;gap:var(--space-2);min-width:0;overflow-x:auto;scrollbar-width:none}.media-rail[data-v-0b717628]::-webkit-scrollbar{display:none}.working-indicator[data-v-51d1613e]{display:inline-flex;align-items:center;gap:var(--space-3);align-self:flex-start;font-family:var(--markdown-font-family);font-size:var(--markdown-body-font-size);line-height:var(--markdown-body-line-height);color:var(--color-text-muted)}.wi-face[data-v-51d1613e]{position:relative;flex:none;width:24px;height:16.125px;overflow:hidden;border-radius:2.295px;background:var(--color-accent)}.wi-eyes[data-v-51d1613e]{position:absolute;inset:0;animation:wi-glance-51d1613e 2.4s var(--ease-in-out) infinite}.wi-eye[data-v-51d1613e]{position:absolute;top:calc(50% - 2.81px);width:3px;height:4.5px;background:var(--color-text-on-accent);transform:translate(-50%,-50%);animation:wi-blink-51d1613e 2.4s var(--ease-in-out) infinite}.wi-eye--left[data-v-51d1613e]{left:calc(50% - 1.8px)}.wi-eye--right[data-v-51d1613e]{left:calc(50% + 7.2px)}.wi-label[data-v-51d1613e]{animation:wi-breathe-51d1613e 1.6s var(--ease-in-out) infinite}.working-indicator.idle .wi-eyes[data-v-51d1613e],.working-indicator.idle .wi-eye[data-v-51d1613e]{animation:none}@keyframes wi-glance-51d1613e{0%,30%{transform:translate(0)}40%,55%{transform:translate(-2px)}65%,80%{transform:translate(2px)}90%,to{transform:translate(0)}}@keyframes wi-blink-51d1613e{0%,88%,to{transform:translate(-50%,-50%) scaleY(1)}92%{transform:translate(-50%,-50%) scaleY(.15)}}@keyframes wi-breathe-51d1613e{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.wi-eyes[data-v-51d1613e],.wi-eye[data-v-51d1613e],.wi-label[data-v-51d1613e]{animation:none}}.sab[data-v-23f19138]{position:fixed;z-index:var(--z-dropdown);min-width:0;max-width:calc(100vw - 2 * var(--p-mention-tip-vmargin));max-height:calc(100vh - 2 * var(--p-mention-tip-vmargin));overflow-y:auto;-webkit-app-region:no-drag}.sab[data-v-23f19138] .ui-menu-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sab-comment[data-v-23f19138]{display:flex;flex-direction:column;align-items:stretch;flex-shrink:0;gap:var(--space-2);width:var(--p-selection-bubble-w);max-width:100%;padding:var(--space-1)}.sab-input[data-v-23f19138]{min-width:0;border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface-overlay);box-shadow:var(--shadow-xs);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-normal);padding:var(--space-1-5) var(--space-2);resize:none;overflow-y:hidden;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.sab-input[data-v-23f19138]::placeholder{color:var(--color-text-faint)}.sab-input[data-v-23f19138]:focus{outline:none;border-color:var(--color-composer-focus-line);box-shadow:var(--shadow-xs)}.sab-actions[data-v-23f19138]{display:flex;justify-content:flex-end;gap:var(--space-2)}.sab-actions .ui-button.is-touch[data-v-23f19138]{height:var(--touch-target-min)}.sab-enter[data-v-23f19138]{margin-left:var(--space-1);opacity:var(--opacity-hint)}.chat-empty[data-v-a72c546d]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px 16px;color:var(--faint);text-align:center}.chat-empty-text[data-v-a72c546d]{font-size:var(--ui-font-size-sm)}.chat-loading[data-v-a72c546d]{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:24px 16px;color:var(--muted)}.chat-loading-text[data-v-a72c546d]{font-size:var(--ui-font-size-sm)}.chat[data-v-a72c546d]{text-autospace:normal;--chat-turn-gap: 16px;--chat-block-gap: 10px;--chat-strip-gap: 12px;--chat-group-gap: 6px;--chat-strip-tight: 4px;--chat-section-gap: 18px;display:flex;flex-direction:column;gap:0;padding:16px 14px 20px;flex:1;min-height:0;position:relative}.chat[data-v-a72c546d] pre,.chat[data-v-a72c546d] code{text-autospace:no-autospace}.chat .chat-empty[data-v-a72c546d]{align-self:stretch}.chat>.u-turn[data-v-a72c546d],.chat>.a-msg[data-v-a72c546d],.chat>.compact-divider[data-v-a72c546d],.chat>.cron-notice[data-v-a72c546d],.chat>.sending-placeholder[data-v-a72c546d],.chat[data-v-a72c546d]>.activity-notice{margin-top:var(--chat-turn-gap)}.chat>.a-msg[data-v-a72c546d]{margin-top:10px}.chat>.u-turn[data-v-a72c546d]:first-child,.chat>.a-msg[data-v-a72c546d]:first-child,.chat>.compact-divider[data-v-a72c546d]:first-child,.chat>.cron-notice[data-v-a72c546d]:first-child,.chat>.sending-placeholder[data-v-a72c546d]:first-child,.chat[data-v-a72c546d]>.activity-notice:first-child{margin-top:0}.u-turn[data-v-a72c546d]{display:flex;flex-direction:column;align-items:flex-end;align-self:flex-start;width:100%}.u-bub[data-v-a72c546d]{align-self:flex-end;max-width:min(640px,78%);background:var(--color-user-bubble-bg);color:var(--color-text);border-radius:var(--radius-lg);padding:10px 12px;font-size:var(--content-font-size);line-height:var(--leading-normal)}.u-meta[data-v-a72c546d]{align-self:flex-end;display:flex;justify-content:flex-end;align-items:center;gap:6px;max-width:78%;margin-top:6px}.u-meta .u-edit[data-v-a72c546d]{min-height:20px;box-sizing:border-box}.u-meta[data-v-a72c546d] .msg-time{min-height:20px;padding:0 0 0 3px;color:var(--color-text-muted);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:20px;opacity:1}.u-text[data-v-a72c546d]{white-space:pre-wrap;overflow-wrap:anywhere}.u-text-wrap[data-v-a72c546d]{position:relative;display:flex;flex-direction:column}.u-text-wrap-args[data-v-a72c546d]{margin-top:var(--space-1)}.u-text-wrap.is-clamped[data-v-a72c546d]{min-width:120px}.u-text-wrap.is-clamped>.u-text[data-v-a72c546d],.u-text-wrap.is-clamped>.skill-act-args[data-v-a72c546d]{max-height:10lh;overflow:hidden;mask-image:linear-gradient(to bottom,black calc(100% - 5lh),transparent calc(100% - 1lh));-webkit-mask-image:linear-gradient(to bottom,black calc(100% - 5lh),transparent calc(100% - 1lh))}.u-text-wrap.is-clamped>.q-body[data-v-a72c546d]{max-height:3lh;overflow:hidden;mask-image:linear-gradient(to bottom,black calc(100% - 1.2lh),transparent calc(100% - .2lh));-webkit-mask-image:linear-gradient(to bottom,black calc(100% - 1.2lh),transparent calc(100% - .2lh))}.u-text-toggle[data-v-a72c546d]{display:inline-flex;align-items:center;gap:var(--space-1);align-self:center;margin-top:var(--space-2);padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-full);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);line-height:1;cursor:pointer;user-select:none;transition:box-shadow var(--duration-base) var(--ease-out)}.u-text-toggle[data-v-a72c546d]:hover{box-shadow:var(--shadow-md)}.u-text-toggle[data-v-a72c546d]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.u-text-wrap.is-clamped .u-text-toggle[data-v-a72c546d]{position:absolute;bottom:0;left:50%;transform:translate(-50%);margin-top:0}.u-text-toggle-car[data-v-a72c546d]{transition:transform var(--duration-base) var(--ease-out)}.u-text-toggle[aria-expanded=true] .u-text-toggle-car[data-v-a72c546d]{transform:rotate(180deg)}.u-edit[data-v-a72c546d]{display:inline-flex;align-items:center;justify-content:center;padding:3px;background:none;border:none;border-radius:var(--radius-xs);color:var(--color-text-muted);font:inherit;font-size:var(--text-base);line-height:1;cursor:pointer;transition:opacity .12s,color .12s,background-color .12s}.u-edit svg[data-v-a72c546d]{display:block;flex:none}.u-edit[data-v-a72c546d]:hover{opacity:1;color:var(--color-accent);background:var(--hover)}.u-copy[data-v-a72c546d]{display:inline-flex;align-items:center;justify-content:center;padding:3px;background:none;border:none;border-radius:var(--radius-xs);color:var(--color-text-muted);font:inherit;font-size:var(--text-base);line-height:1;cursor:pointer;transition:opacity .12s,color .12s,background-color .12s;min-height:20px;box-sizing:border-box}.u-copy svg[data-v-a72c546d]{display:block;flex:none}.u-copy[data-v-a72c546d]:hover{opacity:1;color:var(--color-accent);background:var(--hover)}.u-edit-wrap[data-v-a72c546d]{display:flex;justify-content:flex-end}.chat>.u-edit-wrap[data-v-a72c546d]{margin-top:4px}.chat>.u-edit-wrap+.a-msg[data-v-a72c546d]{margin-top:8px}.compact-divider[data-v-a72c546d]{display:flex;align-items:center;gap:10px;align-self:stretch;width:100%;margin:var(--chat-section-gap) 0 0}.compact-divider-windowed[data-v-a72c546d]{margin-top:0}.compact-divider-interrupted[data-v-a72c546d]{margin-top:var(--chat-turn-gap)}.chat>.compact-divider[data-v-a72c546d]:first-child{margin-top:0}.cd-line[data-v-a72c546d]{flex:1;height:1px;background:var(--line)}.cd-label[data-v-a72c546d]{flex:none;display:inline-flex;align-items:center;gap:8px;max-width:80%;font-size:var(--text-base);color:var(--muted);white-space:nowrap}.cd-btn[data-v-a72c546d]{background:none;border:none;padding:0;cursor:pointer;font:inherit;font-size:var(--text-base);color:var(--muted)}.cd-view[data-v-a72c546d]{color:var(--color-accent)}.cd-btn:hover .cd-view[data-v-a72c546d]{text-decoration:underline}.chat>.turn-failed[data-v-a72c546d]{margin-top:var(--chat-turn-gap)}.chat>.turn-failed[data-v-a72c546d]:first-child{margin-top:0}.turn-failed[data-v-a72c546d]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--p-hairline) solid var(--color-danger-bd);border-radius:var(--radius-lg);background:var(--color-danger-soft);box-shadow:var(--shadow-xs);animation:kimi-card-in var(--duration-slow) var(--ease-out)}.tf-chip[data-v-a72c546d]{display:inline-flex;align-items:center;justify-content:center;width:var(--space-6);height:var(--space-6);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-xs);flex:none;color:var(--color-danger)}.tf-main[data-v-a72c546d]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.tf-title[data-v-a72c546d]{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);line-height:var(--leading-normal)}.tf-sub[data-v-a72c546d]{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--leading-normal);white-space:pre-wrap;overflow-wrap:anywhere}.tf-meta[data-v-a72c546d]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint);line-height:var(--leading-normal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-prov[data-v-a72c546d]{display:flex;align-items:center;gap:var(--space-2);min-height:20px;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base);line-height:20px;user-select:none}.goal-prov-ic[data-v-a72c546d]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:20px;height:20px;color:var(--color-text-faint)}.goal-prov-ic[data-v-a72c546d] .kw-icon{width:18px;height:18px}.a-msg[data-v-a72c546d]{align-self:flex-start;max-width:94%;width:94%}.a-msg-ft[data-v-a72c546d]{display:flex;justify-content:flex-start;align-items:center;gap:6px;height:auto;margin-top:6px;overflow:visible}.chat>.sr-tailrow[data-v-a72c546d]{margin-top:6px}.sr-tailrow[data-v-a72c546d]{display:flex;align-items:center;min-height:20px}.sr-fade-leave-active[data-v-a72c546d]{transition:opacity var(--duration-slow) var(--ease-out)}.sr-fade-leave-to[data-v-a72c546d]{opacity:0}.a-time[data-v-a72c546d]{display:inline-flex;align-items:center;font-size:var(--text-base);color:var(--color-text-muted);line-height:20px}.a-cpbtn[data-v-a72c546d]{display:inline-flex;align-items:center;justify-content:center;padding:3px;background:none;border:none;border-radius:var(--radius-xs);color:var(--color-text-muted);font:inherit;font-size:var(--text-base);line-height:1;cursor:pointer;transition:opacity .12s,color .12s,background-color .12s;min-height:20px;box-sizing:border-box}.a-cpbtn[data-v-a72c546d]:hover{opacity:1;color:var(--color-accent);background:var(--hover)}.a-cpbtn svg[data-v-a72c546d]{display:block;flex:none}@media(hover:none){.a-msg-ft[data-v-a72c546d]{height:auto;margin-top:6px;opacity:1;pointer-events:auto}.a-cpbtn[data-v-a72c546d]{font-size:var(--ui-font-size-sm);padding:8px 10px;margin:-4px -6px}}.a-msg .msg[data-v-a72c546d]{font-size:var(--ui-font-size);line-height:var(--leading-prose);color:var(--color-text);font-weight:500}.a-msg .msg[data-v-a72c546d] p{margin:0}.a-msg .msg[data-v-a72c546d] p+p{margin-top:8px}.a-msg[data-v-a72c546d]>.think,.a-msg[data-v-a72c546d]>.history-window>.history-row>.think,.a-msg[data-v-a72c546d]>.tool-group,.a-msg[data-v-a72c546d]>.history-window>.history-row>.tool-group,.a-msg[data-v-a72c546d]>.activity-run,.a-msg[data-v-a72c546d]>.history-window>.history-row>.activity-run,.a-msg[data-v-a72c546d]>.agent-group,.a-msg[data-v-a72c546d]>.history-window>.history-row>.agent-group,.a-msg[data-v-a72c546d]>.tool-line,.a-msg[data-v-a72c546d]>.history-window>.history-row>.tool-line,.a-msg[data-v-a72c546d]>.media-tool,.a-msg[data-v-a72c546d]>.history-window>.history-row>.media-tool,.a-msg[data-v-a72c546d]>.ask-receipt,.a-msg[data-v-a72c546d]>.history-window>.history-row>.ask-receipt{margin-top:var(--chat-block-gap)}.a-msg[data-v-a72c546d]>.think,.a-msg[data-v-a72c546d]>.history-window>.history-row>.think,.a-msg[data-v-a72c546d]>.turn-fold,.a-msg[data-v-a72c546d]>.history-window>.history-row>.turn-fold,.a-msg[data-v-a72c546d]>.activity-run,.a-msg[data-v-a72c546d]>.history-window>.history-row>.activity-run{margin-top:var(--chat-strip-gap)}.a-msg[data-v-a72c546d]>.tool-line,.a-msg[data-v-a72c546d]>.history-window>.history-row>.tool-line{margin-top:var(--chat-group-gap)}.a-msg>.msg[data-v-a72c546d]+.tool-line,.a-msg[data-v-a72c546d]>.history-window>.history-row:has(>.msg)+.history-row>.tool-line{margin-top:var(--chat-strip-gap)}.a-msg[data-v-a72c546d]>.tool-line+.tool-line,.a-msg[data-v-a72c546d]>.history-window>.history-row:has(>.tool-line)+.history-row>.tool-line{margin-top:var(--chat-strip-tight)}.a-msg[data-v-a72c546d]>.tool-line.open+.tool-line,.a-msg[data-v-a72c546d]>.history-window>.history-row:has(>.tool-line.open)+.history-row>.tool-line{margin-top:var(--chat-group-gap)}.a-msg>.msg[data-v-a72c546d]:first-child,.a-msg[data-v-a72c546d]>.think:first-child,.a-msg[data-v-a72c546d]>.tool-group:first-child,.a-msg[data-v-a72c546d]>.activity-run:first-child,.a-msg[data-v-a72c546d]>.agent-group:first-child,.a-msg[data-v-a72c546d]>.tool-line:first-child,.a-msg[data-v-a72c546d]>.media-tool:first-child,.a-msg[data-v-a72c546d]>.ask-receipt:first-child,.a-msg[data-v-a72c546d]>.history-window:first-child>.history-row:first-child>.msg,.a-msg[data-v-a72c546d]>.history-window:first-child>.history-row:first-child>.think,.a-msg[data-v-a72c546d]>.history-window:first-child>.history-row:first-child>.tool-group,.a-msg[data-v-a72c546d]>.history-window:first-child>.history-row:first-child>.activity-run,.a-msg[data-v-a72c546d]>.history-window:first-child>.history-row:first-child>.agent-group,.a-msg[data-v-a72c546d]>.history-window:first-child>.history-row:first-child>.tool-line,.a-msg[data-v-a72c546d]>.history-window:first-child>.history-row:first-child>.media-tool,.a-msg[data-v-a72c546d]>.history-window:first-child>.history-row:first-child>.ask-receipt{margin-top:0}.a-msg[data-v-a72c546d]>.history-window>.history-row>.ntf-list{margin-bottom:0}.a-msg[data-v-a72c546d]>.history-window:last-child>.history-row:last-child>.ntf-list{margin-bottom:var(--space-2)}.a-msg>.goal-prov[data-v-a72c546d]+.history-window>.history-row:first-child>.ntf-list{margin-top:var(--space-2)}.a-msg[data-v-a72c546d]>.history-window>.history-row>.agent-card{margin:0}.a-msg[data-v-a72c546d]>.history-window:last-child>.history-row:last-child>.agent-card{margin-bottom:var(--space-1)}.a-msg[data-v-a72c546d] :not(pre)>code:not(.md code){font:.9em var(--font-mono);background:var(--color-inline-code-bg);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-sm);padding:1px 6px;color:var(--color-accent-hover)}@container (min-width: 760px){.a-msg .msg[data-v-a72c546d] .markstream-vue.markdown-renderer:has(.md-table-actions){content-visibility:visible}.a-msg .msg[data-v-a72c546d] .table-node-wrapper.md-table-wide{--md-table-wide-full: calc( 100cqi - var(--space-5) - var(--space-5) - var(--markdown-code-action-size) - var(--markdown-code-action-gap) );--md-table-wide-width: min(var(--md-table-wide-full), var(--p-table-wide-max));width:var(--md-table-wide-width);min-width:100%;max-width:var(--md-table-wide-width)!important;margin-left:calc(-.5*max(0px,(var(--markdown-code-action-size) + var(--markdown-code-action-gap)) - (var(--md-table-wide-full) - var(--md-table-wide-width))))}.a-msg .msg[data-v-a72c546d] .table-node-wrapper:not(.md-table-wide){--table-cell-cap: min(var(--p-table-cell-max), 36cqi)}}.u-atts[data-v-a72c546d]{display:flex;flex-wrap:wrap;gap:var(--space-1-5);margin-bottom:var(--space-2)}.u-media-rail[data-v-a72c546d]{margin-bottom:var(--space-2)}.u-atts button.attachment-pill[data-v-a72c546d]{appearance:none;border:none;background:none;padding-block:0;font-family:inherit;font-size:inherit}.sending-placeholder[data-v-a72c546d]{align-self:flex-start;padding:var(--space-4) 0 10px}.skill-act[data-v-a72c546d]{display:flex;flex-direction:column;gap:2px}.skill-act-head[data-v-a72c546d]{font-size:var(--ui-font-size-sm);font-weight:500;color:var(--color-accent-hover);display:flex;align-items:center;gap:6px}.skill-act-arrow[data-v-a72c546d]{color:var(--color-accent);font-size:var(--text-base)}.skill-act-args[data-v-a72c546d]{font-size:var(--text-base);color:var(--muted);padding-left:17px;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:640px){.chat[data-v-a72c546d]{box-sizing:border-box;width:100%;padding:14px max(12px,var(--safe-right)) 18px max(12px,var(--safe-left))}.u-bub[data-v-a72c546d]{max-width:min(88%,calc(100vw - 52px))}.a-msg[data-v-a72c546d]{width:100%;max-width:100%}.a-msg[data-v-a72c546d] .md,.a-msg[data-v-a72c546d] .markdown-renderer,.a-msg[data-v-a72c546d] .code-block-container,.a-msg[data-v-a72c546d] .diff-wrap,.a-msg[data-v-a72c546d] pre{max-width:100%}.a-msg[data-v-a72c546d] .code-block-container pre,.a-msg[data-v-a72c546d] .diff-pre{overflow-x:auto;-webkit-overflow-scrolling:touch}.a-msg[data-v-a72c546d] .media-tool.mob{width:min(44vw,160px)}.cd-label[data-v-a72c546d]{min-width:0;max-width:calc(100% - 48px);overflow:hidden;text-overflow:ellipsis}.u-edit-confirm[data-v-a72c546d]{flex-wrap:wrap;justify-content:flex-end;max-width:calc(100vw - 28px)}.ts[data-v-a72c546d]{font-size:var(--ui-font-size-sm)}.chat-empty-text[data-v-a72c546d],.chat-loading-text[data-v-a72c546d]{font-size:var(--ui-font-size-lg)}.cd-label[data-v-a72c546d],.cd-btn[data-v-a72c546d]{font-size:var(--ui-font-size)}}.top-sentinel[data-v-a72c546d]{display:flex;align-items:center;justify-content:center;padding:12px 0;min-height:28px;user-select:none}.top-sentinel-loading[data-v-a72c546d]{opacity:.8}.top-sentinel-btn[data-v-a72c546d]{appearance:none;border:var(--p-hairline) solid var(--border);background:transparent;color:var(--muted);font-size:var(--ui-font-size-sm);padding:4px 12px;border-radius:999px;cursor:pointer;transition:color .15s ease,border-color .15s ease}.top-sentinel-btn[data-v-a72c546d]:hover{color:var(--fg);border-color:var(--fg)}.top-sentinel-text[data-v-a72c546d]{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:var(--ui-font-size-sm)}.chat[data-v-a72c546d]{background:transparent}.chat[data-v-a72c546d]{gap:0;padding:22px 20px 26px}.u-bub[data-v-a72c546d]{background:var(--color-user-bubble-bg);border-radius:var(--radius-lg);padding:10px 12px}.a-msg[data-v-a72c546d]{max-width:100%;width:100%}.chat>.q-stack[data-v-a72c546d]{margin-top:var(--chat-turn-gap)}.chat>.q-stack[data-v-a72c546d]:first-child{margin-top:0}.q-stack[data-v-a72c546d]{align-self:flex-end;width:100%;display:flex;flex-direction:column;gap:8px}.q-head[data-v-a72c546d]{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:0 6px;color:var(--color-text-faint);font-size:var(--ui-font-size-xs)}.q-title[data-v-a72c546d]{display:inline-flex;align-items:center;gap:6px}.q-title b[data-v-a72c546d]{color:var(--color-accent-hover);font-weight:var(--weight-medium)}.q-turn[data-v-a72c546d]{position:relative;flex-direction:row;align-items:center;justify-content:flex-end;gap:var(--space-2)}.q-send[data-v-a72c546d]{flex:none;width:var(--space-6);height:var(--space-6);display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-text-on-accent);box-shadow:var(--shadow-xs);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.q-send[data-v-a72c546d]:hover{background:var(--color-accent-hover)}.q-send[data-v-a72c546d]:active{transform:scale(.92)}.q-send[data-v-a72c546d]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.q-send svg[data-v-a72c546d]{display:block;flex:none}.q-bub[data-v-a72c546d]{display:flex;align-items:center;gap:8px;width:fit-content;background:var(--color-user-bubble-bg);padding:8px 8px 8px 6px;transition:background var(--duration-fast) var(--ease-out)}.q-bub[data-v-a72c546d]:hover{background:var(--hover)}.q-content[data-v-a72c546d]{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.q-media-rail[data-v-a72c546d]{width:min(100%,320px)}.q-grip[data-v-a72c546d]{flex:none;display:inline-flex;align-items:center;padding:2px;color:var(--color-text-faint);cursor:grab;opacity:.7}.q-grip[data-v-a72c546d]:hover{opacity:1}.q-grip[data-v-a72c546d]:active{cursor:grabbing}.q-clamp[data-v-a72c546d]{flex:1;min-width:0}.q-body[data-v-a72c546d]{flex:1;min-width:0;background:none;border:none;padding:0;margin:0;font:inherit;color:var(--color-text);text-align:left;cursor:pointer;opacity:.82}.q-bub:hover .q-body[data-v-a72c546d]{opacity:1}.q-body[data-v-a72c546d]:disabled{cursor:default}.q-text[data-v-a72c546d]{white-space:pre-wrap;overflow-wrap:anywhere}.q-text-placeholder[data-v-a72c546d]{display:inline-flex;align-items:center;gap:4px;color:var(--color-text-muted)}.q-imgs[data-v-a72c546d]{display:flex;gap:4px;flex:none}.q-file[data-v-a72c546d]{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 6px;border-radius:var(--radius-sm);border:var(--p-hairline) solid var(--color-line);color:var(--color-text-muted);font-size:calc(var(--ui-font-size) - 3px);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.q-rm[data-v-a72c546d]{flex:none;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-faint);cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.q-bub:hover .q-rm[data-v-a72c546d],.q-bub:focus-within .q-rm[data-v-a72c546d],.q-rm[data-v-a72c546d]:focus-visible{opacity:1}.q-rm[data-v-a72c546d]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.q-edit[data-v-a72c546d]{display:none;flex:none;width:22px;height:22px;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-faint);cursor:pointer}.q-edit[data-v-a72c546d]:hover{background:var(--color-hover);color:var(--color-text)}@media(hover:none){.q-grip[data-v-a72c546d]{display:none}.q-edit[data-v-a72c546d]{display:inline-flex}.q-rm[data-v-a72c546d],.q-edit[data-v-a72c546d]{opacity:1;position:relative}.q-rm[data-v-a72c546d]:before,.q-edit[data-v-a72c546d]:before{content:"";position:absolute;inset:-11px}}.q-turn.q-dragging .q-bub[data-v-a72c546d]{opacity:.45}.q-turn.drop-before[data-v-a72c546d]:before,.q-turn.drop-after[data-v-a72c546d]:after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--color-accent);border-radius:var(--radius-full);z-index:1}.q-turn.drop-before[data-v-a72c546d]:before{top:-5px}.q-turn.drop-after[data-v-a72c546d]:after{bottom:-5px}.jump-pill[data-v-9162afec]{position:absolute;left:50%;bottom:var(--space-3);transform:translate(-50%);z-index:var(--z-sticky);display:inline-flex;align-items:center;gap:6px;padding:6px var(--space-3);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-full);background:var(--color-surface);box-shadow:var(--shadow-sm);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-ui-strong);line-height:1.5;white-space:nowrap;cursor:pointer;user-select:none}.jump-pill-car[data-v-9162afec]{width:12px;height:12px}.jump-pill[data-v-9162afec]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.jump-pill-enter-active[data-v-9162afec],.jump-pill-leave-active[data-v-9162afec]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.jump-pill-enter-from[data-v-9162afec],.jump-pill-leave-to[data-v-9162afec]{opacity:0;transform:translate(-50%) translateY(8px)}.agent-panel[data-v-28243c1c]{height:100%;min-height:0;display:flex;flex-direction:column;position:relative;background:var(--color-bg)}.agent-meta[data-v-28243c1c]{flex:none;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-2);user-select:none}.agent-meta[data-v-28243c1c]:before,.agent-meta[data-v-28243c1c]:after{content:"";flex:1;height:var(--p-hairline);background:var(--color-line)}.agent-meta-text[data-v-28243c1c]{font-size:var(--text-xs);line-height:1;color:var(--color-text-muted);white-space:nowrap;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.agent-prompt[data-v-28243c1c]{flex:none;display:flex;flex-direction:column;padding:0 var(--space-3) var(--space-2)}.agent-prompt-bubble[data-v-28243c1c]{display:flex;flex-direction:column;align-self:flex-end;max-width:78%;padding:10px 12px;background:var(--color-user-bubble-bg);border-radius:var(--radius-lg)}.agent-prompt-wrap[data-v-28243c1c]{position:relative;display:flex;flex-direction:column}.agent-prompt-text[data-v-28243c1c]{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--content-font-size);line-height:var(--leading-normal);color:var(--color-text)}.agent-prompt-text.is-command[data-v-28243c1c]{font-family:var(--font-mono)}.agent-prompt-wrap.is-clamped>.agent-prompt-text[data-v-28243c1c]{max-height:6lh;overflow:hidden;mask-image:linear-gradient(to bottom,black calc(100% - 2.5lh),transparent calc(100% - .5lh));-webkit-mask-image:linear-gradient(to bottom,black calc(100% - 2.5lh),transparent calc(100% - .5lh))}.agent-prompt-toggle[data-v-28243c1c]{display:inline-flex;align-items:center;gap:var(--space-1);align-self:center;margin-top:var(--space-1);padding:var(--space-1) var(--space-3);border:none;border-radius:var(--radius-full);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);line-height:1;cursor:pointer;user-select:none;transition:box-shadow var(--duration-base) var(--ease-out)}.agent-prompt-toggle[data-v-28243c1c]:hover{box-shadow:var(--shadow-md)}.agent-prompt-toggle[data-v-28243c1c]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.agent-prompt-wrap.is-clamped .agent-prompt-toggle[data-v-28243c1c]{position:absolute;bottom:0;left:50%;transform:translate(-50%);margin-top:0}.agent-prompt-toggle-car[data-v-28243c1c]{transition:transform var(--duration-base) var(--ease-out)}.agent-prompt-toggle-car.open[data-v-28243c1c]{transform:rotate(180deg)}.agent-transcript[data-v-28243c1c]{flex:1;min-height:0;overflow-y:auto;padding-bottom:var(--pfc-host-h, 0px)}.agent-transcript-inner[data-v-28243c1c]{display:flex;flex-direction:column;min-height:100%;width:100%;max-width:var(--p-content-max);margin-inline:auto}.agent-transcript[data-v-28243c1c] .think-body,.agent-transcript[data-v-28243c1c] .ar-body,.agent-transcript[data-v-28243c1c] .tf-body,.agent-transcript[data-v-28243c1c] .bb,.agent-transcript[data-v-28243c1c] .tl-body{transition:none}.agent-error[data-v-28243c1c]{color:var(--color-danger);font:var(--text-sm)/var(--leading-normal) var(--font-ui)}.agent-output-state[data-v-28243c1c]{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-faint);font-style:italic}.agent-fallback[data-v-28243c1c]{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.agent-fallback.prose[data-v-28243c1c] .op{font-family:var(--font-ui)}.bp[data-v-0ea7361d]{height:100%;min-height:0;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);position:relative;background:var(--color-bg)}.bp-cmd[data-v-0ea7361d],.bp-output[data-v-0ea7361d]{background:var(--color-well);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-2) calc(var(--icon-button-sm) + var(--space-2)) var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:calc(var(--content-font-size) - 2px);line-height:1.6;font-feature-settings:"liga" 0,"calt" 0;font-variant-ligatures:none;color:var(--color-text);white-space:pre-wrap;word-break:break-word;overscroll-behavior:contain}.bp-cmd[data-v-0ea7361d]{flex:none;max-height:6lh;overflow-y:auto}.bp-cmd-wrap[data-v-0ea7361d]{flex:none;position:relative}.bp-output-wrap[data-v-0ea7361d]{flex:1;min-height:0;position:relative}.bp-output[data-v-0ea7361d]{height:100%;overflow-y:auto}.bp-actions[data-v-0ea7361d]{position:absolute;top:var(--space-1);right:var(--space-1);z-index:var(--z-sticky);display:flex;gap:var(--space-1);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.bp-cmd-wrap:hover .bp-actions[data-v-0ea7361d],.bp-output-wrap:hover .bp-actions[data-v-0ea7361d],.bp-actions[data-v-0ea7361d]:focus-within{opacity:1}@media(hover:none){.bp-actions[data-v-0ea7361d]{opacity:1}}.bp-copy[data-v-0ea7361d]{background:var(--color-well);border-color:var(--color-line)}.bp-dollar[data-v-0ea7361d]{color:var(--color-text-faint);user-select:none}.bp-empty[data-v-0ea7361d]{color:var(--color-text-faint);font-style:italic}.bp-loading[data-v-0ea7361d]{display:flex;align-items:center;gap:var(--space-2)}.bp-status[data-v-0ea7361d]{flex:none;display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-muted)}.bp-status-muted[data-v-0ea7361d]{color:var(--color-text-muted)}.bp-status-danger[data-v-0ea7361d]{color:var(--color-danger)}.conversation-toc[data-v-d6a49f13]{position:absolute;z-index:var(--z-sticky);top:50%;transform:translateY(-50%);--toc-content-max: min( var(--p-content-max), calc(100cqi - var(--space-5) - var(--space-5)) );left:calc(50% + (var(--toc-content-max) / 2) + 14px);max-height:calc(100% - 160px);display:flex;flex-direction:column;justify-content:center;opacity:.5;transition:opacity var(--duration-base) var(--ease-out)}.conversation-toc[data-v-d6a49f13]:before{content:"";position:absolute;inset:0 0 0 -14px;min-width:62px;z-index:0}.conversation-toc[data-v-d6a49f13]:hover,.conversation-toc[data-v-d6a49f13]:focus-within{opacity:1}.conversation-toc[data-v-d6a49f13]:hover:not(:focus-within){transition-delay:var(--duration-hover-intent)}.toc-scroll[data-v-d6a49f13]{position:relative;z-index:1;display:flex;flex-direction:column;gap:7px;padding:8px 0;min-height:0;overflow-y:auto;scrollbar-width:none}.toc-scroll[data-v-d6a49f13]::-webkit-scrollbar{display:none}.toc-row[data-v-d6a49f13]{display:flex;align-items:center;gap:10px;height:18px;padding:0;border:none;background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);text-align:left;cursor:pointer;white-space:nowrap}.toc-row[data-v-d6a49f13]:focus-visible{outline:none;box-shadow:0 0 0 var(--p-focus-ring-w) var(--color-line)}.toc-bar[data-v-d6a49f13]{flex:none;width:3px;height:14px;border-radius:var(--radius-full);background:var(--color-text);opacity:.25;transition:opacity var(--duration-fast) var(--ease-out),height var(--duration-fast) var(--ease-out)}.toc-label[data-v-d6a49f13]{display:block;min-width:0;max-width:0;overflow:hidden;opacity:0;text-overflow:ellipsis;transition:max-width .22s var(--ease-out),opacity var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.conversation-toc:hover .toc-bar[data-v-d6a49f13],.conversation-toc:focus-within .toc-bar[data-v-d6a49f13]{height:18px;opacity:.35}.conversation-toc:hover .toc-label[data-v-d6a49f13],.conversation-toc:focus-within .toc-label[data-v-d6a49f13]{max-width:min(220px,max(0px,calc(var(--toc-expanded-width) - 13px)));opacity:1}.conversation-toc:hover:not(:focus-within) .toc-bar[data-v-d6a49f13]{transition-delay:0ms,var(--duration-hover-intent)}.conversation-toc:hover:not(:focus-within) .toc-label[data-v-d6a49f13]{transition-delay:var(--duration-hover-intent),var(--duration-hover-intent),0ms}.toc-row.active .toc-bar[data-v-d6a49f13]{opacity:.65;height:18px}.toc-row.active .toc-label[data-v-d6a49f13]{color:color-mix(in srgb,var(--color-text-muted) 65%,var(--color-text))}.toc-row:hover .toc-bar[data-v-d6a49f13]{background:var(--color-accent);opacity:1}.toc-row:hover .toc-label[data-v-d6a49f13]{color:var(--color-accent)}.conversation-toc.toc-clipped[data-v-d6a49f13]{visibility:hidden;pointer-events:none}.changes-pane[data-v-6674c626]{display:flex;flex-direction:column;height:100%;background:var(--bg);font-family:var(--mono)}.dv-change-count[data-v-6674c626]{flex:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ui-font-size-xs);color:var(--muted);font-family:var(--font-ui)}.br-heading[data-v-6674c626]{display:inline-flex;align-items:center;gap:var(--space-1);flex:0 1 auto;min-width:0}.br-icon[data-v-6674c626]{flex:none;color:var(--muted)}.br-name[data-v-6674c626]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-weight:500;font-size:var(--text-xs)}.sync-info[data-v-6674c626]{display:flex;align-items:center;gap:4px;flex:none}.ahead[data-v-6674c626]{color:var(--color-accent);font-size:var(--text-xs)}.behind[data-v-6674c626]{color:var(--color-warning);font-size:var(--text-xs)}.dv-view-mode[data-v-6674c626]{margin-left:auto;flex:none}.ch-list[data-v-6674c626]{flex:1;min-height:0}.ch-list-content[data-v-6674c626]{min-height:100%;padding:4px 0;padding-bottom:max(4px,var(--pfc-host-h, 0px))}.ch-row[data-v-6674c626]{display:flex;align-items:center;gap:6px;padding:3px 8px;cursor:pointer;font-size:var(--text-xs);line-height:1.6;width:100%;background:none;border:none;text-align:left;font-family:var(--font-ui);color:inherit}.ch-row[data-v-6674c626]:hover{background:var(--panel2)}.ch-row[data-v-6674c626]:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.ch-tree[data-v-6674c626]{--tree-base-indent: 14px;--tree-indent-step: 12px;font-family:var(--font-ui)}.tree-list[data-v-6674c626]{list-style:none;margin:0}.tree-node[data-v-6674c626]{overflow:hidden;interpolate-size:allow-keywords}.tree-collapse-enter-active[data-v-6674c626],.tree-collapse-leave-active[data-v-6674c626]{transition:block-size var(--duration-base) var(--ease-out),opacity var(--duration-fast) var(--ease-out),transform var(--duration-base) var(--ease-out)}.tree-collapse-enter-from[data-v-6674c626],.tree-collapse-leave-to[data-v-6674c626]{block-size:0;opacity:0;transform:translateY(-3px)}.tree-collapse-enter-to[data-v-6674c626],.tree-collapse-leave-from[data-v-6674c626]{block-size:auto;opacity:1;transform:translateY(0)}.tree-row[data-v-6674c626]{position:relative;display:flex;align-items:center;gap:6px;width:100%;margin-top:1px;padding:3px 8px;background:none;border:none;text-align:left;font-family:inherit;font-size:var(--text-xs);color:inherit;cursor:pointer}.tree-row[data-v-6674c626]:before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--tree-base-indent) + 6px);width:calc(var(--tree-depth, 0) * var(--tree-indent-step));background:repeating-linear-gradient(to right,var(--color-line) 0 1px,transparent 1px var(--tree-indent-step));pointer-events:none}.tree-row[data-v-6674c626]:hover{background:var(--panel2)}.tree-row[data-v-6674c626]:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.tree-folder[data-v-6674c626]{color:var(--color-text);font-weight:500}.tree-file[data-v-6674c626]{color:var(--color-text);font-weight:450}.tree-icon[data-v-6674c626]{flex:none;color:var(--muted)}.tree-name[data-v-6674c626]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge[data-v-6674c626]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:var(--radius-xs);font-size:max(9px,calc(var(--ui-font-size) - 4px));font-weight:500;flex:none;user-select:none}.badge.modified[data-v-6674c626]{background:var(--color-warning-soft);color:var(--color-warning)}.badge.added[data-v-6674c626]{background:var(--color-success-soft);color:var(--color-success)}.badge.deleted[data-v-6674c626]{background:var(--color-danger-soft);color:var(--color-danger)}.badge.renamed[data-v-6674c626]{background:var(--color-done-soft);color:var(--color-done)}.badge.untracked[data-v-6674c626]{background:var(--color-success-soft);color:var(--color-success)}.badge.conflicted[data-v-6674c626]{background:color-mix(in srgb,var(--color-danger) 10%,var(--bg));color:var(--color-danger);font-size:max(9px,calc(var(--ui-font-size) - 5px))}.badge.ignored[data-v-6674c626]{background:var(--color-well);color:var(--faint)}.badge.clean[data-v-6674c626]{background:transparent;color:var(--faint)}.badge.unknown[data-v-6674c626]{background:var(--color-well);color:var(--muted)}.fpath[data-v-6674c626]{color:var(--color-text);font-size:var(--text-xs);font-weight:450;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;text-align:left;min-width:0}.fpath[data-v-6674c626]:before,.fpath[data-v-6674c626]:after{content:"‎"}.empty-state[data-v-6674c626]{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:32px 20px;color:var(--muted);font-size:var(--ui-font-size);text-align:center;user-select:none}.empty-state-icon[data-v-6674c626]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--color-well);color:var(--color-text-muted)}.dv-detail-body[data-v-6674c626]{flex:1;min-height:0;display:flex;flex-direction:column}.dv-detail-body.dim[data-v-6674c626]{opacity:.6}.dv-lines-wrap[data-v-6674c626]{flex:1;min-height:0;overflow:auto;padding-bottom:var(--pfc-host-h, 0px)}.diff-content-enter-active[data-v-6674c626],.diff-content-leave-active[data-v-6674c626]{transition:opacity var(--duration-base) var(--ease-out)}.diff-content-enter-from[data-v-6674c626],.diff-content-leave-to[data-v-6674c626]{opacity:0}@media(max-width:640px){.ch-list[data-v-6674c626]{padding:2px 0 12px}.ch-row[data-v-6674c626]{min-height:44px;padding:8px 14px;gap:12px;font-size:var(--text-xs)}.ch-row[data-v-6674c626]:active{background:var(--panel2)}.badge[data-v-6674c626]{width:18px;height:18px}.fpath[data-v-6674c626]{font-size:var(--text-xs)}.tree-row[data-v-6674c626]{min-height:40px;padding:8px 14px}}.changes-pane .empty-state[data-v-6674c626]{font-family:var(--sans)}.ch-row[data-v-6674c626],.ct-row[data-v-6674c626]{margin:1px 6px;width:calc(100% - 12px);border-radius:var(--radius-md)}.changes-pane .badge[data-v-6674c626],.changed-tree .badge[data-v-6674c626]{border-radius:var(--radius-sm)}.change-count[data-v-6674c626]{font-family:var(--sans);border-radius:999px}.file-context-menu[data-v-91a2e07b]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.cbtn[data-v-98f6794f]{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-lg);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:20px;white-space:nowrap;cursor:pointer;transition:background var(--duration-base) var(--ease-out),opacity var(--duration-base) var(--ease-out)}.cbtn[data-v-98f6794f]:disabled{opacity:.5;cursor:not-allowed}.cbtn.is-loading[data-v-98f6794f]{opacity:1;cursor:progress}.cbtn.is-loading .cbtn-label[data-v-98f6794f]{opacity:.7}.cbtn[data-v-98f6794f]:focus-visible{outline:none;box-shadow:var(--p-focus-ring-strong)}.cbtn--default[data-v-98f6794f]{background:var(--color-fill-1);color:var(--color-text)}.cbtn--default[data-v-98f6794f]:not(:disabled):hover{background:var(--color-fill-2)}.cbtn--primary[data-v-98f6794f]{background:var(--color-send-bg);color:var(--color-send-icon)}.cbtn--primary[data-v-98f6794f]:not(:disabled):hover{background:var(--color-send-bg-hover)}.cbtn-cap[data-v-98f6794f]{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:24px;height:18px;padding:0 3px;border-radius:var(--radius-xs);background:var(--color-fill-1);font-size:var(--text-xs);line-height:18px}.cbtn--primary .cbtn-cap[data-v-98f6794f]{background:var(--color-fill-on-inverted)}.cbtn-ic[data-v-98f6794f],.cbtn-spin[data-v-98f6794f]{flex:none}.cbtn-spin[data-v-98f6794f] .ui-spinner__track{opacity:.35}.cbtn-cap--combo[data-v-98f6794f]{padding:0 4px}.cbtn-cap-key[data-v-98f6794f]{display:inline-flex;justify-content:center;flex:none}.cbtn-cap--combo .cbtn-cap-key[data-v-98f6794f]{width:12px}.cbtn-cap--combo .cbtn-cap-text+.cbtn-cap-key[data-v-98f6794f]{margin-left:2px}.cbtn-cap[data-v-98f6794f] .kw-icon{flex:none;width:18px;height:18px}.qcard[data-v-85cfed42]{display:flex;flex-direction:column;max-height:calc(var(--app-height, 100dvh) - var(--dock-card-top-clearance));margin:var(--space-2) 0;background:var(--color-bg-translucent);backdrop-filter:var(--p-card-backdrop);-webkit-backdrop-filter:var(--p-card-backdrop);border:var(--p-hairline) solid var(--color-text-quaternary);border-radius:var(--radius-2xl);box-shadow:var(--shadow-input);overflow:hidden auto;animation:kimi-card-in var(--duration-base) var(--ease-out)}.qcard>.qh[data-v-85cfed42],.qpane-inner>.qfoot[data-v-85cfed42]{flex:none}.qpane[data-v-85cfed42]{display:flex;flex-direction:column;flex:0 1 auto;min-height:0;overflow:hidden}.qpane-inner[data-v-85cfed42]{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.qpane-inner>.qbody[data-v-85cfed42]{flex:0 1 auto}.qcard.animating[data-v-85cfed42]{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--color-bg)}.qcard.animating .qpane[data-v-85cfed42]{will-change:height}.qcard.minimized[data-v-85cfed42]{transition:background var(--duration-fast) var(--ease-out)}.qcard.minimized[data-v-85cfed42]:hover{background:var(--color-hover)}.qh[data-v-85cfed42]{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-3) 0}.qcard.minimized .qh[data-v-85cfed42]{padding-bottom:var(--space-3);align-items:center}.qcard.minimized .qh.clickable[data-v-85cfed42]{cursor:pointer}.qh-chip[data-v-85cfed42]{width:var(--p-chip-num);height:var(--p-chip-num);border-radius:var(--radius-sm);background:var(--color-inline-code-bg);color:var(--color-text);font:var(--weight-medium) var(--text-xs)/var(--p-chip-num) var(--font-ui);text-align:center;flex:none}.qh-ic[data-v-85cfed42]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:22px;height:22px;color:var(--color-text)}.qh-ic[data-v-85cfed42] .kw-icon{width:22px;height:22px}.qtitle[data-v-85cfed42]{flex:1;min-width:0;color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--leading-normal);overflow-wrap:anywhere}.qcard.minimized .qtitle[data-v-85cfed42]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qmin[data-v-85cfed42],.qclose[data-v-85cfed42]{flex:none;margin-top:calc((var(--text-lg) * var(--leading-tight) - var(--icon-button-sm)) / 2)}.qmin[data-v-85cfed42]{margin-left:auto}.qcard.minimized .qmin[data-v-85cfed42],.qcard.minimized .qclose[data-v-85cfed42]{margin-top:0}.qbody[data-v-85cfed42]{min-height:min(var(--question-card-body-min-h),calc(var(--app-height, 100dvh) * .25));overflow-y:auto;margin-top:10px;padding:0 var(--space-3);color:var(--color-text);font:var(--text-base)/var(--leading-normal) var(--font-ui)}.qmdbody[data-v-85cfed42]{margin-bottom:var(--space-2)}.qopts[data-v-85cfed42]{display:flex;flex-direction:column;gap:0}.qopt[data-v-85cfed42]{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border-radius:var(--radius-md);cursor:pointer;font:var(--text-base)/var(--leading-normal) var(--font-ui);color:var(--color-text);transition:background var(--duration-fast) var(--ease-out);user-select:none}.qopt-key[data-v-85cfed42]{margin-left:auto;align-self:center;width:22px;height:22px;border-radius:var(--radius-sm);background:var(--color-fill-2);color:var(--color-text-muted);font:var(--weight-regular) var(--text-base)/22px var(--font-ui);text-align:center;flex:none}.qopt-key[data-v-85cfed42]:empty{background:transparent}.qopt-glyph[data-v-85cfed42]{width:22px;height:22px;flex:none;position:relative}.qopt-glyph[data-v-85cfed42]:before{content:"";position:absolute;inset:16.67%;border:1.2px solid var(--color-fill-4);border-radius:3px}.qopt-check[data-v-85cfed42]{position:absolute;inset:0;width:22px;height:22px;color:var(--color-text);opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.qopt.selected .qopt-glyph[data-v-85cfed42]:before{opacity:0}.qopt.selected .qopt-check[data-v-85cfed42]{opacity:1}.qopts:not(.multi) .qopt.selected[data-v-85cfed42],.qopts.multi .qopt.highlighted[data-v-85cfed42],.qopt[data-v-85cfed42]:hover{background:var(--color-fill-1)}.qopt-text[data-v-85cfed42]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.qopt-label[data-v-85cfed42]{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-regular)}.qopt-desc[data-v-85cfed42]{color:var(--color-text-muted);font:var(--text-base)/var(--leading-normal) var(--font-ui)}.qopt-text-other[data-v-85cfed42]{flex:0 1 auto}.other-input[data-v-85cfed42]{flex:1;font:var(--text-xs)/var(--leading-normal) var(--font-ui);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);outline:none;padding:6px;color:var(--color-text);background:transparent;min-width:12ch}.other-input[data-v-85cfed42]::placeholder{color:var(--color-text-muted)}.other-input[data-v-85cfed42]:focus{border-color:var(--color-line-strong)}.qfoot[data-v-85cfed42]{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-top:10px;padding:0 var(--space-3) var(--space-3)}.qbtns[data-v-85cfed42]{display:flex;align-items:center;gap:var(--space-2)}@media(max-width:640px){.qopt[data-v-85cfed42]{min-height:44px;padding:var(--space-3)}.other-input[data-v-85cfed42]{flex-basis:100%;min-height:28px}.qfoot[data-v-85cfed42]{flex-direction:column;align-items:stretch}.qbtns[data-v-85cfed42]{flex-direction:column;gap:var(--space-2)}.qbtns[data-v-85cfed42]>.cbtn{justify-content:center;width:100%;min-height:46px}}.trust-text[data-v-fa4d085e]{padding:var(--space-5) var(--space-6) var(--space-4)}.trust-title[data-v-fa4d085e]{font-size:var(--text-lg);font-weight:var(--weight-ui-strong);color:var(--color-text)}.trust-desc[data-v-fa4d085e]{margin-top:var(--space-2);font-size:var(--text-base);line-height:1.6;color:var(--color-text-muted)}.trust-options[data-v-fa4d085e]{display:flex;flex-direction:column;gap:var(--space-05);padding:var(--space-1-5);border-top:var(--p-hairline) solid var(--color-subtle)}.trust-opt[data-v-fa4d085e]{display:flex;align-items:center;gap:var(--space-2);width:100%;border:none;background:transparent;border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);font-family:var(--font-ui);font-size:var(--ui-b2);color:var(--color-text);text-align:left;cursor:pointer}.trust-opt[data-v-fa4d085e]:hover:not(:disabled){background:var(--color-hover)}.trust-opt.primary[data-v-fa4d085e]{background:var(--color-fill-2)}.trust-opt.primary[data-v-fa4d085e]:hover:not(:disabled){background:var(--color-selected-hover)}.trust-opt[data-v-fa4d085e]:disabled{opacity:.5;cursor:default}.opt-key[data-v-fa4d085e]{flex:none;width:var(--space-4);font-size:var(--ui-b2);color:var(--color-text-faint)}.opt-label[data-v-fa4d085e]{flex:1;min-width:0}.opt-shortcut[data-v-fa4d085e]{flex:none;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint)}.sheet-root[data-v-52676d28]{position:fixed;inset:0;z-index:var(--z-overlay);display:flex;flex-direction:column;justify-content:flex-end}.sheet-scrim[data-v-52676d28]{position:absolute;inset:0;background:#0d111773}.sheet-panel[data-v-52676d28]{position:relative;background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-bottom:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-xl);max-height:calc(var(--app-height, 100dvh) * .86);display:flex;flex-direction:column;min-height:0;font-family:var(--font-ui);color:var(--color-text)}.sheet-grab[data-v-52676d28]{flex:none;align-self:center;width:56px;height:18px;padding:0;border:none;background:none;cursor:pointer;position:relative;margin-top:4px}.sheet-grab[data-v-52676d28]:after{content:"";position:absolute;left:50%;top:7px;transform:translate(-50%);width:38px;height:5px;border-radius:var(--radius-full);background:var(--color-line)}.sheet-head[data-v-52676d28]{flex:none;display:flex;align-items:center;justify-content:space-between;padding:6px 16px 10px}.sheet-title[data-v-52676d28]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.sheet-body[data-v-52676d28]{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:max(16px,var(--safe-bottom))}.sheet-enter-active[data-v-52676d28],.sheet-leave-active[data-v-52676d28]{transition:opacity var(--duration-slow) var(--ease-out)}.sheet-enter-active .sheet-panel[data-v-52676d28],.sheet-leave-active .sheet-panel[data-v-52676d28]{transition:transform var(--duration-slow) var(--ease-out)}.sheet-enter-from[data-v-52676d28],.sheet-leave-to[data-v-52676d28]{opacity:0}.sheet-enter-from .sheet-panel[data-v-52676d28],.sheet-leave-to .sheet-panel[data-v-52676d28]{transform:translateY(102%)}.composer-media-rail[data-v-9480907e]{position:relative;display:flex;align-items:center;gap:var(--space-2);min-width:0;padding:var(--p-composer-media-inset) var(--p-composer-media-inset) 0;overflow-x:auto;scrollbar-width:none;touch-action:pan-y}.composer-media-drop-indicator[data-v-9480907e]{position:absolute;top:var(--p-composer-media-inset);z-index:2;width:var(--space-05);height:var(--p-composer-media-thumb);border-radius:var(--radius-full);background:var(--color-text);transform:translate(-50%);pointer-events:none}.composer-media-rail[data-v-9480907e] .media-thumb{transition:transform var(--duration-fast) var(--ease-in-out)}.composer-media-rail[data-v-9480907e] .media-thumb.is-dragging{z-index:3;transition:none}@media(prefers-reduced-motion:reduce){.composer-media-rail[data-v-9480907e] .media-thumb{transition:none}}.composer-media-rail[data-v-9480907e]::-webkit-scrollbar{display:none}.shortcut[data-v-5e08698e]{display:inline-flex;align-items:center}.shortcut-unavailable[data-v-5e08698e]{color:var(--color-warning)}.mention-menu[data-menu-frame][data-v-0714828b]{position:absolute;bottom:calc(100% + var(--space-2));left:0;right:0;padding:var(--space-1-5) var(--space-3);background:var(--color-menu-bg-frost);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);z-index:var(--z-dropdown)}.mention-menu.is-sheet[data-menu-frame][data-v-0714828b]{position:static;padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;border-radius:0;box-shadow:none;z-index:auto}.mention-menu.is-sheet .mention-scroll[data-v-0714828b]{margin:0;padding:var(--space-1) var(--space-2)}.mention-menu.is-sheet .mention-item[data-v-0714828b]{margin:0;padding-left:var(--space-2);padding-right:var(--space-2)}.mention-menu.is-sheet .mention-section-label[data-v-0714828b]{margin-left:0;margin-right:0}.mention-menu.is-sheet .mention-state[data-v-0714828b]{padding-left:var(--space-4)}.mention-scroll[data-v-0714828b]{max-height:var(--p-mention-menu-h);margin:0 calc(-1 * var(--menu-row-hug));padding:0 var(--menu-row-hug);overflow-y:auto;scrollbar-width:none}.mention-scroll[data-v-0714828b]::-webkit-scrollbar{display:none}.scroll-thumb[data-v-0714828b]{position:absolute;right:var(--menu-scrollbar-edge);width:var(--menu-scrollbar-width);border-radius:var(--radius-full);background:var(--color-menu-scrollbar);transition:background var(--duration-base) var(--ease-out);cursor:default;touch-action:none;z-index:var(--z-raised)}.mention-menu:hover .scroll-thumb[data-v-0714828b]{background:var(--color-menu-scrollbar-hover)}.scroll-thumb[data-v-0714828b]:before{content:"";position:absolute;top:0;bottom:0;left:calc(-1 * var(--space-2));right:0}.mention-state[data-v-0714828b]{padding:var(--space-2) var(--space-1);font-family:var(--font-ui);font-size:var(--ui-b2)}.mention-section-label[data-v-0714828b]{margin:0 calc(-1 * var(--menu-row-hug));padding:var(--space-1) var(--space-2) var(--space-05);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.mention-section-label.after-section[data-v-0714828b]{margin-top:var(--space-2)}.mention-spin[data-v-0714828b]{position:absolute;top:var(--space-2);right:var(--space-3);color:var(--color-text-muted);z-index:var(--z-raised)}.dim[data-v-0714828b]{color:var(--color-text-muted)}.mention-item[data-v-0714828b]{display:flex;align-items:center;gap:var(--menu-row-gap-icon);margin:0 calc(-1 * var(--menu-row-hug));padding:var(--menu-row-padding-block) var(--space-2);cursor:pointer;font-family:var(--font-ui);font-size:var(--text-sm);border-radius:var(--radius-menu-row)}.mention-icon[data-v-0714828b]{display:inline-flex;align-items:center;justify-content:center;width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--muted);flex-shrink:0}.mention-icon[data-v-0714828b] svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block}.mention-attachment-thumb[data-v-0714828b]{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--icon-button-sm);height:var(--icon-button-sm);overflow:hidden;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-xs);background:var(--color-well);color:var(--muted);flex-shrink:0}.mention-attachment-thumb[data-v-0714828b] .mention-attachment-media{display:block;width:100%;height:100%;object-fit:cover}.mention-attachment-icon[data-v-0714828b]{width:var(--p-ic-md);height:var(--p-ic-md)}.mention-attachment-icon[data-v-0714828b] svg{width:var(--p-ic-md);height:var(--p-ic-md)}.mention-item:hover .mention-icon[data-v-0714828b],.mention-item.active .mention-icon[data-v-0714828b]{color:var(--color-text-strong)}.mention-item[data-v-0714828b]:hover{background:var(--color-hover)}.mention-name[data-v-0714828b]{color:var(--color-text-strong)}.mention-item.active[data-v-0714828b]{background:var(--color-selected)}.mention-item+.mention-item[data-v-0714828b]{margin-top:var(--menu-rows-seam)}.mention-item[data-v-0714828b]{transition:opacity var(--duration-slow) var(--ease-out)}.mention-item.stale[data-v-0714828b]{opacity:var(--opacity-stale)}@media(hover:none){.mention-item[data-v-0714828b]{min-height:var(--touch-target-min);padding-top:var(--menu-row-touch-padding-block);padding-bottom:var(--menu-row-touch-padding-block)}}.mention-browser-text[data-v-0714828b]{display:flex;flex-direction:column;min-width:0;gap:var(--space-05)}.mention-browser-text>.mention-name[data-v-0714828b]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-name[data-v-0714828b]{color:var(--color-text);font-weight:500;flex-shrink:0}.mention-name .mention-hit[data-v-0714828b]{color:var(--color-text-strong);font-weight:var(--weight-semibold)}.mention-meta .mention-hit[data-v-0714828b]{color:var(--color-text)}.mention-meta[data-v-0714828b]{color:var(--color-text-muted);font-size:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slash-menu[data-menu-frame][data-v-bb1f625b]{position:absolute;bottom:calc(100% + var(--space-2));left:0;right:0;padding:var(--space-1-5) var(--space-3);background:var(--color-menu-bg-frost);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);z-index:var(--z-dropdown)}.slash-menu.is-sheet[data-menu-frame][data-v-bb1f625b]{position:static;padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;border-radius:0;box-shadow:none;z-index:auto}.slash-menu.is-sheet .slash-scroll[data-v-bb1f625b]{margin:0;padding:var(--space-1) var(--space-2)}.slash-menu.is-sheet .slash-item[data-v-bb1f625b]{margin:0;padding-left:var(--space-2);padding-right:var(--space-2)}.slash-scroll[data-v-bb1f625b]{max-height:var(--p-slash-menu-h);margin:0 calc(-1 * var(--menu-row-hug));padding:0 var(--menu-row-hug);overflow-y:auto;scrollbar-width:none}.slash-scroll[data-v-bb1f625b]::-webkit-scrollbar{display:none}.scroll-thumb[data-v-bb1f625b]{position:absolute;right:var(--menu-scrollbar-edge);width:var(--menu-scrollbar-width);border-radius:var(--radius-full);background:var(--color-menu-scrollbar);transition:background var(--duration-base) var(--ease-out);cursor:default;touch-action:none;z-index:var(--z-raised)}.slash-menu:hover .scroll-thumb[data-v-bb1f625b]{background:var(--color-menu-scrollbar-hover)}.scroll-thumb[data-v-bb1f625b]:before{content:"";position:absolute;top:0;bottom:0;left:calc(-1 * var(--space-2));right:0}.slash-item[data-v-bb1f625b]{display:flex;align-items:baseline;gap:var(--space-2);margin:0 calc(-1 * var(--menu-row-hug));padding:var(--menu-row-padding-block) var(--menu-row-padding-inline);cursor:pointer;font-family:var(--font-ui);font-size:var(--ui-b2);border-radius:var(--radius-menu-row)}.slash-item[data-v-bb1f625b]:hover{background:var(--color-hover)}.slash-item.active[data-v-bb1f625b]{background:var(--color-selected)}.slash-item+.slash-item[data-v-bb1f625b]{margin-top:var(--menu-rows-seam)}.slash-name[data-v-bb1f625b]{flex:none;max-width:60%;color:var(--color-text);font-weight:500;min-width:0;line-height:var(--leading-normal);overflow-wrap:anywhere}.slash-match[data-v-bb1f625b]{font-weight:var(--weight-semibold)}.slash-empty[data-v-bb1f625b]{padding:var(--space-1-5) var(--space-1);color:var(--color-text-muted)}@media(hover:none){.slash-item[data-v-bb1f625b]{min-height:var(--touch-target-min);padding-top:var(--menu-row-touch-padding-block);padding-bottom:var(--menu-row-touch-padding-block)}}.slash-desc[data-v-bb1f625b]{flex:1;min-width:0;color:var(--color-text-muted);font-size:var(--ui-b2);font-weight:var(--weight-regular);line-height:var(--leading-normal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slash-desc-match[data-v-bb1f625b]{font-weight:var(--weight-semibold)}@media(max-width:520px){.slash-item[data-v-bb1f625b]{flex-direction:column;align-items:stretch;gap:var(--space-05)}.slash-name[data-v-bb1f625b]{max-width:none}}.composer[data-v-5d6e89dd]{padding:7px var(--dock-inline-right, 16px) 12px var(--dock-inline-left, 16px);background:transparent;transition:background .12s}.composer.drag-over[data-v-5d6e89dd]{background:var(--color-accent-soft)}.drop-overlay[data-v-5d6e89dd]{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-bg) 72%,transparent);pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--duration-base) ease,visibility var(--duration-base)}.drop-overlay.show[data-v-5d6e89dd]{opacity:1;visibility:visible}.drop-card[data-v-5d6e89dd]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-radius:var(--radius-lg);border:var(--p-hairline) dashed var(--color-accent);background:var(--color-bg);color:var(--color-accent);font-size:var(--ui-font-size-lg);font-weight:var(--weight-medium);box-shadow:var(--shadow-md)}.composer-card[data-v-5d6e89dd]{--composer-control-size: var(--space-8);--composer-send-size: var(--composer-control-size);--composer-control-inset: var(--space-2);--composer-valve-floor: 4em;--composer-valve-expand-margin: 3.4em;position:relative;border:var(--p-hairline) solid var(--color-composer-line);border-radius:var(--radius-composer);corner-shape:var(--corner-shape-composer);background:var(--color-composer-bg);box-shadow:var(--shadow-input);user-select:none;container-type:inline-size}.composer-card[data-v-5d6e89dd]:after{content:"";position:absolute;inset:0;border:inherit;border-color:var(--color-composer-focus-line);border-radius:var(--radius-composer);corner-shape:var(--corner-shape-composer);opacity:0;pointer-events:none;transition:opacity var(--duration-slow) var(--ease-in-out)}.composer-card[data-v-5d6e89dd]:focus-within:after{opacity:1}.file-input-hidden[data-v-5d6e89dd]{display:none}.cin-wrap[data-v-5d6e89dd]{position:relative;padding:14px 16px 8px}.composer-card.has-media .cin-wrap[data-v-5d6e89dd]{padding-top:var(--p-composer-media-inset)}.input-row[data-v-5d6e89dd]{position:relative;display:flex;align-items:flex-start;gap:var(--space-2)}.expand-btn[data-v-5d6e89dd]{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--dim);cursor:pointer;padding:0;transition:background .12s,color .12s}.expand-btn[data-v-5d6e89dd]:hover{background:var(--panel2);color:var(--color-text)}.expand-btn[data-v-5d6e89dd]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ph[data-v-5d6e89dd]{color:var(--faint);caret-color:var(--color-text);position:relative;flex:1;border:none;outline:none;font-family:var(--font-ui);font-size:var(--content-font-size);text-autospace:normal;background:transparent;min-height:36px;max-height:calc(var(--app-height, 100dvh) / 4);overflow-y:auto;scrollbar-width:none;line-height:1.5;margin-bottom:6px;user-select:text}.ph[data-v-5d6e89dd]::-webkit-scrollbar{display:none}.ph[data-v-5d6e89dd]:not([data-empty=true]){color:var(--color-text)}.ph[data-v-5d6e89dd] .ProseMirror{outline:none;white-space:pre-wrap;overflow-wrap:break-word;min-height:inherit}.ph[data-v-5d6e89dd] .ProseMirror p{margin:0}.ph[data-v-5d6e89dd] .ProseMirror p:first-child{text-indent:var(--wm-pill-inline-reserve, 0px);padding-top:var(--wm-pill-block-reserve, 0px)}.ph[data-v-5d6e89dd] img.ProseMirror-separator{display:inline!important;border:none!important;margin:0!important}.ph[data-v-5d6e89dd] .ProseMirror-trailingBreak:not(:only-child){display:none}.ph[data-v-5d6e89dd] .mention-pill.ProseMirror-selectednode{color:var(--color-text)}.composer-sr-only[data-v-5d6e89dd]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ph[data-v-5d6e89dd] .composer-command-token{color:var(--color-text-muted);font-weight:var(--weight-ui-strong)}.ph[data-v-5d6e89dd] .composer-placeholder-overlay[data-command-argument=true]{color:var(--color-text-faint)}.ph[data-v-5d6e89dd] .composer-placeholder-overlay[data-command-argument=true][data-needs-separator=true]{margin-left:var(--space-1)}.ph[data-v-5d6e89dd] .wm-pill{--wm-pill-lane: inline;position:absolute;z-index:var(--z-raised);top:0;left:0;display:inline-flex;align-items:center;gap:var(--space-1);vertical-align:top;height:calc(var(--content-font-size) * 1.5);margin-left:calc(-1 * var(--space-05));margin-right:var(--space-1-5);padding:0 calc((var(--content-font-size) * 1.5 - var(--wm-x-size)) / 2) 0 var(--space-2);border:none;border-radius:var(--radius-full);background:var(--color-selected);color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:calc(var(--content-font-size) * 1.5);white-space:nowrap;user-select:none}.ph[data-v-5d6e89dd] .wm-icon{display:inline-flex}.ph[data-v-5d6e89dd] .wm-x{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--wm-x-size);height:var(--wm-x-size);padding:0;border:var(--p-hairline) solid transparent;border-radius:var(--radius-full);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.ph[data-v-5d6e89dd] .wm-x:hover{background:var(--color-hover);color:var(--color-text)}.ph[data-v-5d6e89dd] .wm-x:focus-visible{outline:none;box-shadow:var(--p-focus-ring);background:var(--color-hover);color:var(--color-text)}.ph[data-v-5d6e89dd] .wm-x:before{content:"";position:absolute;inset:calc(-1 * var(--wm-x-ring))}.ph[data-wm=true][data-v-5d6e89dd] .ProseMirror{padding-left:var(--space-05)}.ph[data-v-5d6e89dd] .composer-placeholder-overlay{position:absolute;z-index:1;top:0;left:0;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--muted);pointer-events:none;user-select:none}.ph[data-v-5d6e89dd] .composer-placeholder-overlay[hidden]{display:none}.ph[data-v-5d6e89dd] .composer-placeholder-overlay kbd{display:inline-flex;align-items:center;justify-content:center;min-width:var(--kbd-min-width);height:var(--kbd-height);padding:0 var(--kbd-padding-x);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-xs);background:transparent;color:inherit;font-family:var(--font-kbd);font-size:var(--kbd-font-size);line-height:var(--leading-solid)}.composer.expanded .ph[data-v-5d6e89dd]{min-height:calc(var(--app-height, 100dvh) * .7);max-height:calc(var(--app-height, 100dvh) * .7)}.compact-chip[data-v-5d6e89dd]{height:var(--composer-control-size);padding:0 var(--space-2);border:var(--p-hairline) solid transparent;border-radius:var(--radius-full);background:transparent;color:var(--color-warning);font-family:var(--mono);font-size:var(--ui-font-size);cursor:pointer;line-height:1;flex:none;transition:background var(--duration-base) var(--ease-out)}.compact-chip[data-v-5d6e89dd]:hover{background:var(--color-hover)}.compact-chip.gone[data-v-5d6e89dd],.model-pill.model-gone[data-v-5d6e89dd]{display:none}.composer-attach[data-v-5d6e89dd]{width:var(--composer-control-size);height:var(--composer-control-size);border-radius:var(--radius-full);flex:none}.add-menu[data-v-5d6e89dd]{position:absolute;bottom:calc(100% + var(--space-2));left:0;right:0;z-index:var(--z-dropdown);background:var(--color-menu-bg-frost);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-menu);padding:var(--space-1-5) var(--space-3);display:flex;flex-direction:column;gap:var(--menu-rows-seam);font-family:var(--font-ui);transform-origin:bottom left}.am-scroll[data-v-5d6e89dd]{max-height:var(--p-add-menu-h);margin:0 calc(-1 * var(--menu-row-hug));padding:0 var(--menu-row-hug);overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column;gap:var(--menu-rows-seam)}.am-scroll[data-v-5d6e89dd]::-webkit-scrollbar{display:none}.scroll-thumb[data-v-5d6e89dd]{position:absolute;right:var(--menu-scrollbar-edge);width:var(--menu-scrollbar-width);border-radius:var(--radius-full);background:var(--color-menu-scrollbar);transition:background var(--duration-base) var(--ease-out);pointer-events:none;z-index:var(--z-raised)}.add-menu:hover .scroll-thumb[data-v-5d6e89dd]{background:var(--color-menu-scrollbar-hover)}.msheet-search[data-v-5d6e89dd]{padding:0 var(--space-4) var(--space-2)}.msheet-add[data-v-5d6e89dd]{display:flex;flex-direction:column;gap:var(--menu-rows-seam);padding:0 var(--menu-row-hug);font-family:var(--font-ui)}.am-entry[data-v-5d6e89dd]{display:flex;align-items:center;margin:0 calc(-1 * var(--menu-row-hug));border-radius:var(--radius-menu-row);transition:background var(--duration-base) var(--ease-out)}.am-entry[data-v-5d6e89dd]:hover:not(:has(.am-shortcut button:hover)){background:var(--color-hover)}.am-row[data-v-5d6e89dd]{display:flex;flex:1;min-width:0;align-items:center;gap:var(--menu-row-gap-icon);padding:var(--menu-row-padding-block) var(--menu-row-padding-inline);border:none;border-radius:var(--radius-menu-row);background:none;cursor:pointer;font-size:var(--ui-font-size);color:var(--color-text);text-align:left;transition:background var(--duration-base) var(--ease-out)}.am-row[data-v-5d6e89dd]:focus-visible{background:var(--color-selected);outline:none}@media(hover:none){.am-row[data-v-5d6e89dd]{padding-top:var(--menu-row-touch-padding-block);padding-bottom:var(--menu-row-touch-padding-block)}}.am-entry:hover:not(:has(.am-shortcut button:hover)) .am-icon[data-v-5d6e89dd],.am-row:focus-visible .am-icon[data-v-5d6e89dd]{color:var(--color-text)}.am-icon[data-v-5d6e89dd]{flex:none;width:var(--p-ic-sm);display:flex;justify-content:center;color:var(--color-text-muted);transition:color var(--duration-base) var(--ease-out)}.am-name[data-v-5d6e89dd]{flex:none;font-weight:var(--weight-medium)}.am-desc[data-v-5d6e89dd]{min-width:0;margin-left:var(--space-1);color:var(--color-text-muted);font-size:var(--ui-font-size-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.am-shortcut[data-v-5d6e89dd]{flex:none;margin-right:var(--menu-row-padding-inline);color:var(--color-text-muted)}.status-note[data-v-5d6e89dd]{flex:none;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);color:var(--color-text-faint)}.send[data-v-5d6e89dd]{width:var(--composer-send-size);height:var(--composer-send-size);border-radius:var(--radius-full);background:var(--color-send-bg);color:var(--color-send-icon);border:none;box-shadow:var(--shadow-send);padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--duration-slow) var(--ease-out),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-slow) var(--ease-out);position:relative}.send[data-v-5d6e89dd]:hover:not(:disabled){background:var(--color-send-bg-hover);box-shadow:var(--shadow-send-hover)}.send[data-v-5d6e89dd]:active{transform:scale(.92)}.send[data-v-5d6e89dd]:disabled{cursor:not-allowed;background:var(--color-send-bg-disabled);color:var(--color-send-icon-disabled);opacity:var(--opacity-send-disabled)}.send[data-v-5d6e89dd]:disabled:active{transform:none}.send.is-starting[data-v-5d6e89dd]:disabled{background:var(--color-send-bg);color:var(--color-send-icon)}.send.is-starting[data-v-5d6e89dd] .ui-spinner{color:var(--color-send-icon)}.send.is-starting[data-v-5d6e89dd] .ui-spinner__track{stroke:color-mix(in srgb,var(--color-send-icon) 32%,transparent)}.send svg[data-v-5d6e89dd]{flex:none;width:var(--composer-send-icon-size);height:var(--composer-send-icon-size)}.stop[data-v-5d6e89dd]{width:var(--composer-send-size);height:var(--composer-send-size);border-radius:var(--radius-full);background:var(--color-subtle);color:var(--color-stop-glyph);border:none;box-shadow:var(--shadow-xs);padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .16s ease,color .16s ease,transform .12s ease}.stop[data-v-5d6e89dd]:hover{background:var(--color-danger);color:var(--color-text-on-accent)}.stop[data-v-5d6e89dd]:active{transform:scale(.92)}.stop svg[data-v-5d6e89dd]{flex:none;width:var(--composer-send-icon-size);height:var(--composer-send-icon-size)}.toolbar[data-v-5d6e89dd]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-1) var(--composer-control-inset) var(--composer-control-inset);position:relative}.menu-measure[data-v-5d6e89dd]{position:absolute;width:max-content;height:0;overflow:hidden;visibility:hidden;pointer-events:none}.toolbar-left[data-v-5d6e89dd],.toolbar-right[data-v-5d6e89dd]{display:flex;align-items:center;gap:var(--space-1);min-width:0}.toolbar-left[data-v-5d6e89dd]{flex:none;overflow:hidden}.toolbar-right[data-v-5d6e89dd]{flex:1 1 auto;justify-content:flex-end}.perm-pill[data-v-5d6e89dd],.swarm-chip[data-v-5d6e89dd],.tower-chip[data-v-5d6e89dd],.model-pill[data-v-5d6e89dd]{position:relative;display:inline-flex;align-items:center;gap:var(--space-1);height:var(--composer-control-size);padding:0 var(--space-3);border:var(--p-hairline) solid transparent;border-radius:var(--radius-full);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size);font-weight:var(--weight-medium);line-height:1;white-space:nowrap;cursor:pointer;user-select:none;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.perm-pill[data-v-5d6e89dd]{font-size:var(--ui-font-size-sm)}.perm-pill[data-v-5d6e89dd]:after,.swarm-chip[data-v-5d6e89dd]:after,.tower-chip[data-v-5d6e89dd]:after,.model-pill[data-v-5d6e89dd]:after{content:"";position:absolute;inset:0;border-radius:var(--radius-full);background:var(--color-hover);opacity:0;transition:opacity var(--duration-base) var(--ease-out);pointer-events:none}.perm-pill[data-v-5d6e89dd]:hover:after,.swarm-chip[data-v-5d6e89dd]:hover:after,.tower-chip[data-v-5d6e89dd]:hover:after,.model-pill[data-v-5d6e89dd]:hover:after{opacity:1}.perm-pill.open[data-v-5d6e89dd],.model-pill.open[data-v-5d6e89dd]{background:var(--color-accent-soft)}.swarm-chip[data-v-5d6e89dd],.tower-chip[data-v-5d6e89dd]{cursor:default}.swarm-x[data-v-5d6e89dd],.tower-x[data-v-5d6e89dd]{margin-right:calc(var(--composer-control-size) / 2 - var(--space-3) - var(--icon-button-sm) / 2);color:inherit;opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.swarm-chip .swarm-x[data-v-5d6e89dd],.tower-chip .tower-x[data-v-5d6e89dd]{border-radius:var(--radius-full)}.swarm-chip:hover .swarm-x[data-v-5d6e89dd],.swarm-x[data-v-5d6e89dd]:focus-visible,.tower-chip:hover .tower-x[data-v-5d6e89dd],.tower-x[data-v-5d6e89dd]:focus-visible{opacity:1}@media(hover:none){.toolbar-left[data-v-5d6e89dd]{padding-right:var(--space-2)}.swarm-chip[data-v-5d6e89dd],.tower-chip[data-v-5d6e89dd]{margin-right:calc((var(--touch-target-min) - var(--icon-button-sm)) / 2 - var(--space-1))}.swarm-x[data-v-5d6e89dd],.tower-x[data-v-5d6e89dd]{opacity:1;position:relative}.swarm-x[data-v-5d6e89dd]:before,.tower-x[data-v-5d6e89dd]:before{content:"";position:absolute;inset:calc(-1 * (var(--touch-target-min) - var(--icon-button-sm)) / 2)}}.perm-pill.perm-manual[data-v-5d6e89dd]{color:var(--dim)}.perm-pill.perm-yolo[data-v-5d6e89dd]{color:var(--color-warning)}.perm-pill.perm-auto[data-v-5d6e89dd]{color:var(--color-danger)}.perm-pill-icon[data-v-5d6e89dd]{flex:none}.perm-pill[data-v-5d6e89dd],.swarm-chip[data-v-5d6e89dd],.tower-chip[data-v-5d6e89dd]{flex:none;padding-left:var(--space-2)}.swarm-ic[data-v-5d6e89dd],.swarm-x[data-v-5d6e89dd],.tower-ic[data-v-5d6e89dd],.tower-x[data-v-5d6e89dd]{flex:none}.labels-collapsed .perm-pill[data-v-5d6e89dd]{width:var(--composer-control-size);height:var(--composer-control-size);padding:0;justify-content:center;flex:none}.labels-collapsed .perm-pill-label[data-v-5d6e89dd]{display:none}.labels-collapsed .swarm-chip[data-v-5d6e89dd],.labels-collapsed .tower-chip[data-v-5d6e89dd]{position:relative;width:var(--composer-control-size);height:var(--composer-control-size);padding:0;justify-content:center;flex:none}.labels-collapsed .swarm-label[data-v-5d6e89dd],.labels-collapsed .tower-label[data-v-5d6e89dd]{display:none}.labels-collapsed .swarm-ic[data-v-5d6e89dd],.labels-collapsed .tower-ic[data-v-5d6e89dd]{transition:opacity var(--duration-base) var(--ease-out)}.labels-collapsed .swarm-chip:hover .swarm-ic[data-v-5d6e89dd],.labels-collapsed .tower-chip:hover .tower-ic[data-v-5d6e89dd]{opacity:0}.labels-collapsed .swarm-x[data-v-5d6e89dd],.labels-collapsed .tower-x[data-v-5d6e89dd]{position:absolute;inset:0;width:auto;height:auto;margin-right:0}@media(hover:none){.labels-collapsed .swarm-chip[data-v-5d6e89dd],.labels-collapsed .tower-chip[data-v-5d6e89dd]{width:var(--touch-target-min);height:var(--touch-target-min)}.labels-collapsed .swarm-chip:hover .swarm-ic[data-v-5d6e89dd],.labels-collapsed .tower-chip:hover .tower-ic[data-v-5d6e89dd]{opacity:1}.labels-collapsed .swarm-x[data-v-5d6e89dd],.labels-collapsed .tower-x[data-v-5d6e89dd]{inset:0;width:auto;height:auto;opacity:1;background:transparent}.labels-collapsed .swarm-x[data-v-5d6e89dd]:before,.labels-collapsed .tower-x[data-v-5d6e89dd]:before{inset:0 0 auto auto;width:var(--p-ic-md);height:var(--p-ic-md);border-radius:var(--radius-full);background:var(--color-selected)}.labels-collapsed .swarm-x[data-v-5d6e89dd] svg,.labels-collapsed .tower-x[data-v-5d6e89dd] svg{position:absolute;top:calc(var(--space-1-5) / 2);right:calc(var(--space-1-5) / 2);width:calc(var(--p-ic-md) - var(--space-1-5));height:calc(var(--p-ic-md) - var(--space-1-5))}}.ctx-group[data-v-5d6e89dd]{display:flex;align-items:center;gap:4px;flex-shrink:0;padding:2px 0;border-radius:var(--radius-xs)}.ctx-group[data-v-5d6e89dd]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.model-pill[data-v-5d6e89dd]{gap:var(--space-1);line-height:var(--leading-normal);overflow:hidden;flex:0 1 auto;min-width:0;max-width:320px;transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.model-pill[data-v-5d6e89dd]:active{transform:scale(.97)}.model-pill[data-v-5d6e89dd]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.model-pill .mp-name[data-v-5d6e89dd]{flex:0 8 auto;font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.model-pill .think-suffix[data-v-5d6e89dd]{color:var(--color-accent);font-weight:var(--weight-medium);flex:none}.model-pill .cv[data-v-5d6e89dd]{color:var(--faint);flex:none;transition:transform var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.model-pill:hover .cv[data-v-5d6e89dd],.model-pill.open .cv[data-v-5d6e89dd]{color:var(--dim)}.model-pill.open .cv[data-v-5d6e89dd]{transform:rotate(180deg)}.model-pill.icon-only[data-v-5d6e89dd]{width:var(--composer-control-size);height:var(--composer-control-size);padding:0;justify-content:center;flex:none}.model-pill.login-pill[data-v-5d6e89dd],.model-pill.login-pill .mp-name[data-v-5d6e89dd]{color:var(--color-accent)}.model-dropdown[data-v-5d6e89dd]{position:absolute;bottom:calc(100% + var(--space-1));right:calc(var(--composer-control-inset) + var(--composer-send-size) + var(--space-1));z-index:var(--z-dropdown);min-width:200px;padding:var(--space-1);gap:1px;transform-origin:bottom right;overflow-y:auto;overscroll-behavior:contain}.model-dropdown.flip-down[data-v-5d6e89dd]{top:calc(100% + var(--space-1));bottom:auto;transform-origin:top right}.composer-menu-pop-enter-active[data-v-5d6e89dd]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.composer-menu-pop-leave-active[data-v-5d6e89dd]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.composer-menu-pop-enter-from[data-v-5d6e89dd],.composer-menu-pop-leave-to[data-v-5d6e89dd]{opacity:0;transform:scale(.97) translateY(2px)}.model-dropdown.flip-down.composer-menu-pop-enter-from[data-v-5d6e89dd],.model-dropdown.flip-down.composer-menu-pop-leave-to[data-v-5d6e89dd]{transform:scale(.97) translateY(-2px)}.md-list[data-v-5d6e89dd]{display:flex;flex-direction:column;gap:1px;max-height:min(320px,40vh);overflow-y:auto;overscroll-behavior:contain}.md-section[data-v-5d6e89dd]{padding:4px 9px 2px;font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:var(--weight-semibold)}.md-row[data-v-5d6e89dd]{gap:7px;font-size:var(--ui-font-size);padding:5px 9px;border-radius:var(--radius-dropdown-row)}.md-row:hover .md-name[data-v-5d6e89dd]{color:var(--color-text-strong)}.md-row[data-v-5d6e89dd]:disabled{cursor:default;opacity:.58}.md-row.is-current[data-v-5d6e89dd]{background:var(--color-selected)}.md-note[data-v-5d6e89dd]{margin-left:auto;color:var(--muted);font-size:var(--ui-font-size-xs)}.md-row-more[data-v-5d6e89dd]{--md-more-arrow-color: var(--faint)}.md-row-more[data-v-5d6e89dd]:hover{--md-more-arrow-color: var(--dim)}.md-row-more .md-more-arrow[data-v-5d6e89dd]{width:var(--p-ic-sm);height:var(--p-ic-sm);flex:none;transition:color var(--duration-base) var(--ease-out)}.md-check[data-v-5d6e89dd]{width:14px;flex:none;color:var(--color-accent);font-weight:500;display:flex;justify-content:center}.md-row .md-check[data-v-5d6e89dd] svg{width:var(--p-ic-sm);height:var(--p-ic-sm);color:inherit}.md-name[data-v-5d6e89dd]{flex:1;transition:color var(--duration-base) var(--ease-out)}.md-provider[data-v-5d6e89dd]{color:var(--muted);font-size:var(--ui-font-size-xs);flex:none}.md-star[data-v-5d6e89dd]{color:var(--star);flex:none;margin-left:auto}.md-row .md-star[data-v-5d6e89dd]{width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--star)}.md-divider[data-v-5d6e89dd]{height:1px;background:var(--line);margin:3px 0}.md-thinking[data-v-5d6e89dd]{display:flex;align-items:center;gap:8px;padding:6px 9px;border-radius:var(--radius-dropdown-row)}.md-thinking .md-name[data-v-5d6e89dd]{font-family:var(--font-ui);font-size:var(--ui-font-size);color:var(--color-text);flex:none}.md-thinking .md-note[data-v-5d6e89dd],.md-thinking .ui-seg[data-v-5d6e89dd]{margin-left:auto}.md-effort-description[data-v-5d6e89dd]{width:0;min-width:100%;padding:2px 7px 4px;color:var(--muted);font-size:var(--text-2xs);line-height:1.4}.perm-dropdown[data-v-5d6e89dd]{position:absolute;bottom:calc(100% + 4px);left:var(--composer-control-inset);z-index:var(--z-dropdown);min-width:220px;width:max-content;max-width:calc(100vw - var(--space-8));padding:var(--space-1);gap:1px;transform-origin:bottom left}.pd-row[data-v-5d6e89dd]{display:grid;grid-template-columns:var(--p-ic-md) var(--composer-menu-desc-width, max-content) var(--p-ic-sm);column-gap:7px;row-gap:2px;align-items:start;padding:6px 7px;border-radius:var(--radius-dropdown-row)}.pd-row.is-current[data-v-5d6e89dd]{background:var(--color-hover)}.pd-icon[data-v-5d6e89dd]{grid-column:1;grid-row:1;width:var(--p-ic-md);min-height:1lh;display:flex;align-items:center;justify-content:center;line-height:var(--leading-tight)}.pd-row .pd-icon[data-v-5d6e89dd] svg{width:var(--p-ic-md);height:var(--p-ic-md);color:inherit}.pd-check[data-v-5d6e89dd]{grid-column:3;grid-row:1;width:var(--p-ic-sm);min-height:1lh;color:var(--color-accent);font-size:var(--ui-font-size);font-weight:var(--weight-medium);display:flex;align-items:center;justify-content:center;line-height:var(--leading-tight)}.pd-row .pd-check[data-v-5d6e89dd] svg{width:var(--p-ic-sm);height:var(--p-ic-sm);color:inherit}.pd-info[data-v-5d6e89dd]{display:contents}.pd-name[data-v-5d6e89dd]{grid-column:2;grid-row:1;font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.pd-desc[data-v-5d6e89dd]{grid-column:2;grid-row:2;width:var(--composer-menu-desc-width, auto);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-caption);color:var(--muted);line-height:var(--leading-tight)}@media(max-width:640px){.composer[data-v-5d6e89dd]{padding:9px var(--dock-inline-right, max(12px, var(--safe-right))) max(24px,var(--safe-bottom)) var(--dock-inline-left, max(12px, var(--safe-left)))}.composer-card[data-v-5d6e89dd]{--composer-control-size: 36px;--composer-mobile-input-size: 16px;max-width:100%}.input-row[data-v-5d6e89dd]{gap:6px;min-width:0}.send[data-v-5d6e89dd],.stop[data-v-5d6e89dd]{width:var(--composer-send-size);height:var(--composer-send-size);min-width:var(--composer-send-size);padding:0;border-radius:var(--radius-full);font-size:0;align-self:flex-end;position:relative}.ph[data-v-5d6e89dd] .wm-pill{height:calc(var(--composer-mobile-input-size) * 1.5);line-height:calc(var(--composer-mobile-input-size) * 1.5);padding-right:calc((var(--composer-mobile-input-size) * 1.5 - var(--wm-x-size)) / 2)}.model-dropdown[data-v-5d6e89dd]{right:calc(var(--composer-control-inset) + var(--composer-send-size) + var(--space-1));left:auto;min-width:180px;max-width:calc(100vw - 24px)}.ph[data-v-5d6e89dd]{font-size:var(--composer-mobile-input-size)}.model-pill[data-v-5d6e89dd],.attach-btn[data-v-5d6e89dd]{font-size:var(--ui-font-size)}.toolbar[data-v-5d6e89dd]{gap:6px;min-width:0}.toolbar-left[data-v-5d6e89dd],.toolbar-right[data-v-5d6e89dd]{min-width:0}.model-pill[data-v-5d6e89dd]{max-width:min(52vw,220px)}.model-pill .mp-name[data-v-5d6e89dd]{max-width:min(40vw,170px)}.md-row[data-v-5d6e89dd],.md-section[data-v-5d6e89dd]{font-size:var(--ui-font-size)}.md-thinking[data-v-5d6e89dd]{flex-wrap:wrap;row-gap:6px}.md-thinking .ui-seg[data-v-5d6e89dd]{margin-left:0}.pd-name[data-v-5d6e89dd]{font-size:var(--ui-font-size)}.pd-desc[data-v-5d6e89dd]{font-size:var(--text-xs)}}@media(hover:none){.ph[data-wm=true][data-v-5d6e89dd] .ProseMirror{padding-top:var(--space-3)}.ph[data-v-5d6e89dd] .wm-pill{--wm-pill-lane: block;display:flex;width:max-content;margin-right:0;margin-bottom:var(--space-3);padding-right:calc((var(--touch-target-min) - var(--wm-x-size)) / 2)}.ph[data-v-5d6e89dd] .wm-x:before{inset:calc((var(--wm-x-size) - var(--touch-target-min)) / 2)}.ph[data-wm=true][data-v-5d6e89dd]{min-height:calc(36px + var(--space-3))}}@media(max-width:640px)and (hover:none){.send[data-v-5d6e89dd],.stop[data-v-5d6e89dd],.attach-btn[data-v-5d6e89dd],.expand-btn[data-v-5d6e89dd],.model-pill[data-v-5d6e89dd]{position:relative}.send[data-v-5d6e89dd]:before,.stop[data-v-5d6e89dd]:before,.attach-btn[data-v-5d6e89dd]:before,.expand-btn[data-v-5d6e89dd]:before,.model-pill[data-v-5d6e89dd]:before{content:"";position:absolute;inset:-6px}.expand-btn[data-v-5d6e89dd]:before{inset:-11px}.perm-pill[data-v-5d6e89dd]{height:var(--touch-target-min)}.labels-collapsed .perm-pill[data-v-5d6e89dd]{width:var(--touch-target-min);height:var(--touch-target-min)}}.sc[data-v-d94596f4]{height:100%;display:flex;flex-direction:column;min-height:0;background:var(--bg);position:relative}.sc-body[data-v-d94596f4]{flex:1;min-height:0;overflow-y:auto;--sc-composer-h: 0px;mask-image:linear-gradient(to bottom,black calc(100% - var(--sc-composer-h) - 48px),transparent calc(100% - var(--sc-composer-h)));-webkit-mask-image:linear-gradient(to bottom,black calc(100% - var(--sc-composer-h) - 48px),transparent calc(100% - var(--sc-composer-h)))}.sc-empty[data-v-d94596f4]{min-height:100%}.sc-empty[data-v-d94596f4] .ui-empty__icon{color:var(--color-accent)}.sc-empty[data-v-d94596f4] .ui-empty__icon svg{width:28px;height:28px}.sc-empty[data-v-d94596f4] .ui-empty__title{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text)}.sc-empty[data-v-d94596f4] .ui-empty__hint{font-size:var(--text-xs);color:var(--color-text-muted);white-space:pre-line}.sc-composer[data-v-d94596f4]{position:absolute;left:0;right:0;bottom:0;z-index:var(--z-sticky)}.sc-jump[data-v-d94596f4]{position:absolute;left:0;right:0;height:0;z-index:var(--z-sticky);pointer-events:none}.sc-jump[data-v-d94596f4] .jump-pill{pointer-events:auto}.rows[data-v-30801af0]{margin:0;padding:0}.row[data-v-30801af0]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;font-size:var(--text-base)}.row dt[data-v-30801af0]{width:96px;flex:none;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:var(--text-xs)}.row dd[data-v-30801af0]{margin:0;color:var(--color-text);font-weight:var(--weight-medium);display:flex;align-items:center;gap:var(--space-2);min-width:0}.row dd.plan-on[data-v-30801af0],.row dd.swarm-on[data-v-30801af0],.row dd.tower-on[data-v-30801af0]{color:var(--color-accent)}.row dd.thinking-value[data-v-30801af0]{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.cache-note[data-v-30801af0]{color:var(--color-text-faint);font-weight:var(--weight-regular);font-size:var(--text-xs)}.ctx-text[data-v-30801af0]{flex:none}.bar[data-v-30801af0]{width:80px;height:5px;border-radius:var(--radius-full);background:var(--color-line);overflow:hidden;flex:none}.bar i[data-v-30801af0]{display:block;height:100%;background:var(--color-accent)}@media(max-width:640px){.rows[data-v-30801af0]{overflow-y:auto;-webkit-overflow-scrolling:touch}.row[data-v-30801af0]{align-items:flex-start;flex-direction:column;gap:var(--space-1);min-height:48px}.row dt[data-v-30801af0]{width:auto}.row dd[data-v-30801af0]{max-width:100%;flex-wrap:wrap}}.tp[data-v-1296d41f]{height:100%;display:flex;flex-direction:column;min-height:0;background:var(--color-bg)}.tp-body[data-v-1296d41f]{flex:1;min-height:0;overflow-y:auto;margin:0;padding:12px 14px;padding-bottom:max(12px,var(--pfc-host-h, 0px));font:var(--text-base)/var(--leading-relaxed) var(--font-ui);font-weight:400;color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word}.td[data-v-169e816e]{display:flex;flex-direction:column;height:100%;min-height:0}.td-body[data-v-169e816e]{flex:1;min-height:0;overflow:auto;padding-bottom:var(--pfc-host-h, 0px)}.td-empty[data-v-169e816e]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);height:100%;padding:var(--space-6);color:var(--color-text-muted);font-size:var(--text-sm);text-align:center}.filter-control[data-v-d704e40b]{display:inline-flex;min-width:0}.fc-chevron[data-v-d704e40b]{color:var(--color-text-faint);transition:transform var(--duration-base) var(--ease-out)}.fc-trigger[aria-expanded=true] .fc-chevron[data-v-d704e40b]{transform:rotate(180deg)}.fc-menu[data-v-d704e40b]{position:fixed;z-index:var(--z-dropdown)}.fc-menu[data-v-d704e40b] .ui-menu{min-width:0}.fc-label[data-v-d704e40b]{flex:1;white-space:nowrap}.filter-control[data-v-d704e40b] .ui-seg__item[data-icon=circle-check] .ui-seg__icon,.fc-menu .kw-icon[data-icon=circle-check][data-v-d704e40b]{transform:scale(.91)}.fc-check[data-v-d704e40b]{color:var(--color-accent)}.goal-panel[data-v-76aa677a]{display:flex;flex-direction:column;gap:var(--space-2);overflow-wrap:anywhere;--markdown-body-line-height: calc(20 / 14)}.goal-panel .md[data-v-76aa677a] .markdown-renderer>.node-slot:first-child{padding-top:0}.goal-criterion[data-v-76aa677a]{padding-top:var(--space-2);border-top:var(--p-hairline) solid var(--color-line)}.goal-criterion-label[data-v-76aa677a]{display:flex;align-items:center;gap:var(--space-1-5);color:var(--color-text);font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:round(calc(var(--text-base) * 1.42),1px);margin-bottom:var(--space-2)}.goal-criterion-label[data-v-76aa677a] svg{width:var(--p-ic-dock);height:var(--p-ic-dock)}.plan-panel[data-v-1ba28f98]{display:flex;flex-direction:column;gap:var(--space-2)}.plan-panel[data-v-1ba28f98]:has(>.md){padding-top:var(--space-2)}.plan-panel .md[data-v-1ba28f98] .markdown-renderer>.node-slot:first-child{padding-top:0}.plan-review-row[data-v-1ba28f98]{display:flex;gap:var(--space-2);font-size:var(--text-sm)}.plan-review-label[data-v-1ba28f98]{flex:none;color:var(--color-text-muted)}.plan-review-feedback[data-v-1ba28f98]{color:var(--color-text-muted)}.plan-path-only[data-v-1ba28f98]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.plan-path-hint[data-v-1ba28f98],.plan-panel .plan-path[data-v-1ba28f98]{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-regular);line-height:round(calc(var(--text-xs) * 1.5),1px)}.plan-panel .plan-path[data-v-1ba28f98]{max-width:100%;border-width:0;justify-content:flex-start;text-align:start;white-space:normal;overflow-wrap:anywhere}.plan-panel .plan-path[data-v-1ba28f98]:not(:disabled):hover{color:var(--color-text)}.plan-empty[data-v-1ba28f98]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);color:var(--color-text-faint);font-size:var(--text-sm)}.plan-empty-ico[data-v-1ba28f98]{width:var(--p-empty-ico);height:var(--p-empty-ico);color:var(--color-line-strong)}.sg-empty[data-v-47f80cb7]{height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-faint);font-size:var(--text-sm);user-select:none}.sg-grid[data-v-47f80cb7]{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--p-subagent-card-min),1fr));gap:var(--space-2)}.sg-card[data-v-47f80cb7]{position:relative;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--color-selected)}.sg-card.openable[data-v-47f80cb7]{cursor:pointer}.sg-card.openable[data-v-47f80cb7]:hover{background:var(--color-selected-hover)}.sg-card[data-v-47f80cb7]:not(.openable){cursor:not-allowed}.sg-open[data-v-47f80cb7]{position:absolute;inset:0;padding:0;border:none;border-radius:var(--radius-lg);background:transparent;cursor:pointer}.sg-open[data-v-47f80cb7]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.sg-top[data-v-47f80cb7]{display:flex;align-items:center;gap:var(--space-2)}.sg-name[data-v-47f80cb7]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-weight:var(--weight-medium)}.sg-num[data-v-47f80cb7]{flex:none;color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.sg-card:has(.sg-cancel) .sg-top[data-v-47f80cb7]{padding-right:calc(var(--icon-button-sm) + var(--space-1))}@media(hover:none){.sg-card:has(.sg-cancel) .sg-top[data-v-47f80cb7]{padding-right:calc(var(--touch-target-min) + var(--space-1))}}.sg-desc[data-v-47f80cb7]{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-caption);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sg-foot[data-v-47f80cb7]{display:flex;flex-direction:column;gap:var(--space-1)}.sg-model[data-v-47f80cb7]{display:flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs)}.sg-model span[data-v-47f80cb7]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sg-status[data-v-47f80cb7]{display:flex;align-items:center}.sg-state[data-v-47f80cb7]{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs);text-autospace:normal}.sg-ic-done[data-v-47f80cb7]{color:var(--color-success);transform:scale(.91)}.s-fail .sg-state[data-v-47f80cb7]{color:var(--color-danger)}.sg-time[data-v-47f80cb7]{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-autospace:normal}.sg-cancel[data-v-47f80cb7]{position:absolute;top:var(--space-2);right:var(--space-2);color:var(--color-text-muted);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.sg-card:hover .sg-cancel[data-v-47f80cb7],.sg-cancel[data-v-47f80cb7]:focus-visible{opacity:1}.sg-cancel[data-v-47f80cb7]:hover{color:var(--color-danger)}@media(hover:none){.sg-cancel[data-v-47f80cb7]{top:0;right:0;width:var(--touch-target-min);height:var(--touch-target-min);opacity:1}}.taskspane[data-v-15c59bc6]{flex:1;min-height:0;display:flex;flex-direction:column}.tp-list[data-v-15c59bc6]{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-05)}.tp-row[data-v-15c59bc6]{padding:var(--space-1) 0}.tp-row.fail .tp-name[data-v-15c59bc6]{color:var(--color-danger)}.tp-main[data-v-15c59bc6]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-base)}.tp-row.expandable>.tp-main[data-v-15c59bc6]{position:relative;border-radius:var(--radius-lg);padding:var(--space-1) var(--space-2);margin:calc(-1 * var(--space-1)) 0}.tp-row.expandable>.tp-main[data-v-15c59bc6]:hover{background:var(--color-hover)}.tp-row[data-v-15c59bc6]:not(.expandable){cursor:not-allowed}.tp-open[data-v-15c59bc6]{position:absolute;inset:0;padding:0;border:none;border-radius:var(--radius-lg);background:transparent;cursor:pointer}.tp-open[data-v-15c59bc6]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.tp-chevron[data-v-15c59bc6]{flex:none;color:var(--muted)}.tp-name[data-v-15c59bc6]{color:var(--color-text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-meta[data-v-15c59bc6]{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted)}.tp-glyph[data-v-15c59bc6]{flex:none;width:var(--p-ic-md);height:var(--p-ic-md);display:inline-flex;align-items:center;justify-content:center}.tp-done[data-v-15c59bc6]{color:var(--color-success);transform:scale(.91)}.tp-cancelled[data-v-15c59bc6]{color:var(--color-text-muted)}.tp-fail[data-v-15c59bc6]{color:var(--color-danger)}.tp-time[data-v-15c59bc6]{flex:none;font-size:var(--text-base);color:var(--muted);font-variant-numeric:tabular-nums;text-autospace:normal}.tp-model[data-v-15c59bc6]{flex:0 1 auto;min-width:0;font-size:var(--text-base);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-stop[data-v-15c59bc6]{position:relative;flex:none;color:var(--color-danger)}.tp-stop[data-v-15c59bc6]:hover{color:var(--color-danger)}@media(hover:none){.tp-stop[data-v-15c59bc6]{width:var(--touch-target-min);height:var(--touch-target-min)}.tp-row.expandable>.tp-main[data-v-15c59bc6]{min-height:var(--touch-target-min)}}.tp-empty[data-v-15c59bc6]{flex:1;display:flex;align-items:center;justify-content:center;color:var(--faint);font-size:var(--ui-font-size-sm);user-select:none}@media(max-width:640px){.tp-main[data-v-15c59bc6]{flex-wrap:wrap;row-gap:var(--space-1)}.tp-name[data-v-15c59bc6]{font-size:var(--ui-font-size-sm)}.tp-meta[data-v-15c59bc6]{order:10;flex:1 1 100%;padding-left:calc(var(--p-ic-md) + var(--space-2));font-size:var(--ui-font-size-xs)}}.todo-card[data-v-97ded963]{display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--text-base)}.tc-row[data-v-97ded963]{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text)}.tc-name[data-v-97ded963]{flex:1;min-width:0;overflow-wrap:anywhere;line-height:var(--leading-caption)}.tc-row.s-in_progress .tc-name[data-v-97ded963]{font-weight:var(--weight-medium)}.tc-row.s-pending .tc-name[data-v-97ded963]{color:var(--color-text-muted)}.tc-glyph[data-v-97ded963]{flex:none;width:var(--p-ic-md);height:var(--p-ic-md);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full)}.tc-glyph.g-done[data-v-97ded963]{color:var(--color-success)}.tc-glyph.g-pending[data-v-97ded963]{border:var(--p-ring-stroke) solid var(--color-line-strong)}.tc-glyph .tc-spin[data-v-97ded963]{color:var(--color-text)}.tc-empty[data-v-97ded963]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);color:var(--color-text-faint);font-size:var(--text-sm)}.tc-empty-ico[data-v-97ded963]{width:var(--p-empty-ico);height:var(--p-empty-ico);color:var(--color-line-strong)}@media(max-width:640px){.todo-card[data-v-97ded963]{font-size:var(--text-lg)}.tc-row[data-v-97ded963]{padding:var(--space-2) var(--space-3)}}.wp-head-tab[data-v-52081ff1]{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:round(calc(var(--text-base) * 1.42),1px);white-space:nowrap;flex:none}.wp-head-tab[data-v-52081ff1] svg{width:var(--p-ic-dock);height:var(--p-ic-dock)}.wp-head-meta[data-v-52081ff1]{color:var(--color-text-muted);font-weight:var(--weight-regular);text-autospace:normal}.wp-head-actions[data-v-52081ff1]{margin-left:auto;display:flex;align-items:center;gap:var(--space-1-5);flex:none}.wp-head-actions[data-v-52081ff1] .ui-icon-button{width:var(--icon-button-xs);height:var(--icon-button-xs);border-radius:var(--radius-md)}.wp-head-actions[data-v-52081ff1] .ui-icon-button svg{width:var(--p-ic-sm);height:var(--p-ic-sm)}@media(max-width:480px){.wp-head-actions[data-v-52081ff1]{flex-basis:100%;margin-left:0}}@media(hover:none){.wp-head-actions[data-v-52081ff1] .ui-seg__item{min-height:var(--touch-target-min)}}@media(max-width:640px),(hover:none){.wp-head-actions[data-v-52081ff1] .ui-seg__item{height:var(--touch-target-min)}.wp-head-actions[data-v-52081ff1] .ui-icon-button{width:var(--touch-target-min);height:var(--touch-target-min)}.wp-head-actions[data-v-52081ff1] .fc-trigger{min-height:var(--touch-target-min)}}.aw[data-v-2965bef2]{padding-top:4px}.crumbbar[data-v-2965bef2]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 22px;border-bottom:var(--p-hairline) solid var(--color-line)}.crumbs[data-v-2965bef2]{display:flex;align-items:center;flex-wrap:wrap;gap:1px;min-width:0;font-size:var(--text-sm)}.crumb-sep[data-v-2965bef2]{color:var(--color-text-muted)}.crumb[data-v-2965bef2]{background:none;border:none;cursor:pointer;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-muted);padding:1px var(--space-1);border-radius:var(--radius-xs)}.crumb[data-v-2965bef2]:hover{color:var(--color-text);background:var(--color-hover)}.crumb.last[data-v-2965bef2]{color:var(--color-text);font-weight:var(--weight-medium)}.filterbar[data-v-2965bef2]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 22px;border-bottom:var(--p-hairline) solid var(--color-line)}.filter-icon[data-v-2965bef2]{flex:none;width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--color-text-muted)}.filter-input[data-v-2965bef2]{flex:1;min-width:0;font-family:var(--font-ui);font-size:var(--text-base);padding:var(--space-1) 0;border:none;background:none;color:var(--color-text);outline:none}.filter-input[data-v-2965bef2]::placeholder{color:var(--color-text-muted)}.search-rel[data-v-2965bef2]{color:var(--color-text)}.folder-list[data-v-2965bef2]{height:300px;overflow-y:auto;padding:var(--space-1) var(--space-2)}.fl-loading[data-v-2965bef2],.fl-empty[data-v-2965bef2]{padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm)}.folder-row[data-v-2965bef2]{display:flex;align-items:center;gap:var(--space-2);width:100%;background:none;border:none;cursor:pointer;font-family:var(--font-ui);font-size:var(--text-base);color:var(--color-text);text-align:left;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-out)}.folder-row[data-v-2965bef2]:hover{background:var(--color-hover)}.dir-icon[data-v-2965bef2]{flex:none;width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--color-text-muted)}.folder-name[data-v-2965bef2]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.paste-section[data-v-2965bef2]{padding:var(--space-3) 22px;border-top:var(--p-hairline) solid var(--color-line)}.paste-section.paste-only[data-v-2965bef2]{border-top:none}.paste-row[data-v-2965bef2]{display:flex;align-items:center;gap:var(--space-2)}.paste-input-wrap[data-v-2965bef2]{flex:1;min-width:0}.add-error[data-v-2965bef2]{margin:0 22px var(--space-2);padding:var(--space-2) var(--space-3);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-danger);background:var(--color-danger-soft);border:var(--p-hairline) solid var(--color-danger-bd);border-radius:var(--radius-sm)}.actions[data-v-2965bef2]{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) 22px}.footer-hint[data-v-2965bef2]{padding:var(--space-2) var(--space-4);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-faint);border-top:var(--p-hairline) solid var(--color-line)}@media(max-width:640px){.folder-row[data-v-2965bef2]{min-height:44px}.crumbbar[data-v-2965bef2]{align-items:flex-start}.actions[data-v-2965bef2]{flex-wrap:wrap}}.confirm-dialog__message[data-v-f5577d4c]{margin:0;white-space:pre-line;overflow-wrap:anywhere;font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-muted)}.model-switch-confirm[data-v-117db8df]{display:flex;flex-direction:column}.model-switch-confirm__hint[data-v-117db8df],.model-switch-confirm__warning[data-v-117db8df]{margin:0 var(--dialog-pad-x) var(--space-2);font-size:var(--text-base);line-height:var(--leading-normal);white-space:pre-line;overflow-wrap:anywhere}.model-switch-confirm__hint[data-v-117db8df]{color:var(--color-text-muted)}.model-switch-confirm__warning[data-v-117db8df]{color:var(--color-warning);font-weight:var(--weight-medium)}.model-switch-confirm__options[data-v-117db8df]{padding:0 var(--space-3) var(--space-3)}.model-switch-confirm__option[data-v-117db8df]{display:flex;align-items:flex-start;gap:var(--space-2);width:100%;padding:calc(var(--space-2) + var(--space-05));border:none;border-radius:var(--radius-sm);background:transparent;text-align:left;cursor:pointer}.model-switch-confirm__option[data-v-117db8df]:hover{background:var(--color-hover)}.model-switch-confirm__option-copy[data-v-117db8df]{display:flex;flex:1;flex-direction:column;gap:var(--space-05);min-width:0}.model-switch-confirm__option-title[data-v-117db8df]{font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--leading-caption);color:var(--color-text)}.model-switch-confirm__option-desc[data-v-117db8df]{font-size:var(--text-sm);line-height:var(--leading-caption);color:var(--color-text-muted)}.model-switch-confirm__option-chevron[data-v-117db8df]{flex:none;margin-top:var(--space-05);color:var(--color-text-faint)}.model-switch-confirm__option:hover .model-switch-confirm__option-chevron[data-v-117db8df]{color:var(--color-text)}.model-switch-confirm__separator[data-v-117db8df]{height:var(--p-hairline);margin:0 calc(var(--space-2) + var(--space-05));background:var(--color-line)}.sd-search[data-v-c59f113e]{position:relative;margin:0 22px;padding-bottom:var(--space-1)}.sd-search[data-v-c59f113e] .ui-input{padding-right:30px}.search-clear[data-v-c59f113e]{position:absolute;top:0;bottom:var(--space-1);right:var(--space-2);margin-block:auto;display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:var(--radius-full);background:var(--color-hover);color:var(--color-text-faint);cursor:pointer;visibility:hidden;opacity:0;transition:opacity var(--duration-fast) var(--ease-out),visibility var(--duration-fast),background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.search-clear.is-on[data-v-c59f113e]{visibility:visible;opacity:1}.search-clear[data-v-c59f113e]:hover{background:var(--color-selected);color:var(--color-text-muted)}.search-clear[data-v-c59f113e]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}@media(prefers-reduced-motion:reduce){.search-clear[data-v-c59f113e]{transition:none}}.sd-body[data-v-c59f113e]{height:100%;min-height:0;display:flex;flex-direction:column;gap:var(--space-2);padding-top:4px}.sd-list[data-v-c59f113e]{flex:1;min-height:0;overflow-y:auto;padding:var(--space-1) var(--space-2);--sd-gutter: var(--p-ic-md);--sd-gap: var(--space-2)}.sd-section[data-v-c59f113e]{display:flex;align-items:baseline;gap:var(--space-1);padding:var(--space-2) var(--space-3) var(--space-1);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--color-text-faint);user-select:none}.sd-section-count[data-v-c59f113e]{font-weight:var(--weight-regular)}.sd-section[data-v-c59f113e]:first-child{padding-top:var(--space-1)}.sd-section[data-v-c59f113e]:not(:first-child){margin-top:var(--space-1);border-top:var(--p-hairline) solid var(--color-line)}.sd-row[data-v-c59f113e]{display:flex;flex-direction:column;gap:2px;width:100%;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);background:none;cursor:pointer;text-align:left;font-family:var(--font-ui);color:var(--color-text)}.sd-row[data-v-c59f113e]:hover{background:var(--color-hover)}.sd-row.on[data-v-c59f113e]{background:var(--color-selected)}.sd-row.active .sd-title[data-v-c59f113e]{color:var(--color-accent-hover)}.sd-row-ws[data-v-c59f113e]{flex-direction:row;align-items:center;gap:var(--sd-gap)}.sd-folder[data-v-c59f113e]{flex:none;width:var(--sd-gutter);color:var(--color-text-muted)}.sd-ws-name[data-v-c59f113e]{flex:none;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);color:var(--color-text)}.sd-ws-path[data-v-c59f113e]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;font-size:var(--text-xs);color:var(--color-text-faint)}.sd-line1[data-v-c59f113e],.sd-line2[data-v-c59f113e]{padding-left:calc(var(--sd-gutter) + var(--sd-gap))}.sd-line1[data-v-c59f113e]{display:flex;align-items:baseline;gap:var(--space-2);min-width:0}.sd-title[data-v-c59f113e]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);color:var(--color-text)}.sd-time[data-v-c59f113e]{flex:none;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint)}.sd-line2[data-v-c59f113e]{display:flex;align-items:center;gap:var(--space-1);min-width:0;font-size:var(--text-xs);color:var(--color-text-muted)}.sd-meta-ws[data-v-c59f113e]{flex:none;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-meta-sep[data-v-c59f113e]{color:var(--color-text-faint)}.sd-meta-snippet[data-v-c59f113e]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-title[data-v-c59f113e] mark,.sd-ws-name[data-v-c59f113e] mark{background:var(--color-accent-soft);color:inherit;font-weight:var(--weight-semibold);border-radius:var(--radius-xs);padding:0 1px}.sd-line2[data-v-c59f113e] mark,.sd-ws-path[data-v-c59f113e] mark{background:var(--color-accent-soft);color:var(--color-text);font-weight:var(--weight-medium);border-radius:var(--radius-xs);padding:0 1px}.sd-empty[data-v-c59f113e]{height:100%;display:flex;align-items:center;justify-content:center}.sd-foot[data-v-c59f113e]{flex:none;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-top:var(--p-hairline) solid var(--color-line);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-faint)}.sd-hint[data-v-c59f113e]{display:inline-flex;align-items:center;gap:var(--space-1)}.sd-dot[data-v-c59f113e]{margin:0 var(--space-1)}.topbar[data-v-6949e670]{display:flex;align-items:center;height:calc(50px + var(--safe-top));flex:none;padding:var(--safe-top) max(12px,var(--safe-right)) 0 max(12px,var(--safe-left));border-bottom:var(--p-hairline) solid var(--color-line);background:var(--color-topbar-bg-frost);-webkit-backdrop-filter:var(--p-topbar-backdrop);backdrop-filter:var(--p-topbar-backdrop);font-family:var(--font-ui);-webkit-user-select:none;user-select:none}.tb-main[data-v-6949e670]{flex:1;min-width:0;height:100%;display:flex;align-items:center;gap:8px;margin-right:4px;padding:0 6px 0 0;background:none;border:none;border-radius:var(--radius-md);font:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity var(--duration-fast) var(--ease-out)}.tb-main[data-v-6949e670]:active{opacity:.55}.st[data-v-6949e670]{flex:none;display:inline-flex;align-items:center}.tb-line[data-v-6949e670]{flex:1;min-width:0;display:flex;align-items:baseline;gap:4px;font-size:max(16px,var(--ui-font-size-xl));line-height:1.25;white-space:nowrap}.tb-line .dir[data-v-6949e670]{flex:none;max-width:42%;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-faint)}.tb-line .dir.solo[data-v-6949e670]{max-width:none;min-width:0;color:var(--color-text);font-weight:var(--weight-semibold)}.tb-line .sl[data-v-6949e670]{flex:none;color:var(--color-text-faint)}.tb-line .tt[data-v-6949e670]{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--color-text);font-weight:var(--weight-semibold)}.tb-line .cv[data-v-6949e670]{flex:none;align-self:center;color:var(--color-text-faint)}.unread-dot[data-v-6949e670]{width:7px;height:7px;border-radius:var(--radius-full);background:var(--color-accent)}.pbi[data-v-5a8c6730]{display:inline-flex;align-items:center;justify-content:center;flex:none}.pbi-glyph[data-v-5a8c6730]{display:inline-flex;color:#fff}.pbi-glyph[data-v-5a8c6730] svg{display:block}.pbi-xs[data-v-5a8c6730]{width:16px;height:16px;border-radius:5px;font-size:10px}.pbi-sm[data-v-5a8c6730]{width:28px;height:28px;border-radius:8px;font-size:16px}.pbi-md[data-v-5a8c6730]{width:36px;height:36px;border-radius:10px;font-size:20px}.pbi-lg[data-v-5a8c6730]{width:44px;height:44px;border-radius:12px;font-size:26px}.pbi-kimi[data-v-5a8c6730]{background:#0b0b0e}.pbi-zai[data-v-5a8c6730]{background:#111}.pbi-zhipu[data-v-5a8c6730]{background:#3859ff}.pbi-deepseek[data-v-5a8c6730]{background:#4d6bfe}.pbi-minimax[data-v-5a8c6730]{background:linear-gradient(135deg,#e2167e,#fe603c)}.pbi-fallback[data-v-5a8c6730]{background:var(--color-fill-2)}.pbi-letter[data-v-5a8c6730]{font-family:var(--font-ui);font-weight:var(--weight-medium);color:var(--color-text-muted)}.pbi-xs .pbi-letter[data-v-5a8c6730]{font-size:10px}.pbi-sm .pbi-letter[data-v-5a8c6730]{font-size:var(--text-xs)}.pbi-md .pbi-letter[data-v-5a8c6730]{font-size:var(--text-sm)}.pbi-lg .pbi-letter[data-v-5a8c6730]{font-size:var(--text-base)}.pmt[data-v-2f539b14]{display:flex;flex-direction:column;gap:var(--space-2)}.pmt-grid[data-v-2f539b14]{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.7fr) minmax(0,1fr) auto;gap:var(--space-2);align-items:center}.pmt-head[data-v-2f539b14]{font-size:var(--text-xs);color:var(--color-text-muted)}.req[data-v-2f539b14]{color:var(--color-danger)}@media(max-width:640px){.pmt-grid[data-v-2f539b14]{grid-template-columns:minmax(0,1fr) auto}}.pf[data-v-a941a70a]{display:flex;flex-direction:column;gap:var(--space-3)}.pf-brand[data-v-a941a70a]{display:flex;align-items:center;gap:var(--space-2)}.pf-back[data-v-a941a70a]{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-left:calc(-1 * var(--space-2));border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer}.pf-back[data-v-a941a70a]:hover{background:var(--color-hover);color:var(--color-text-strong)}.pf-head-sticky[data-v-a941a70a]{position:sticky;top:calc(-1 * var(--space-2));z-index:5;margin:calc(-1 * var(--space-2)) 0 0;padding:var(--space-2) 0;background:var(--color-bg);border-bottom:var(--p-hairline) solid var(--color-line)}.pf-brand-name[data-v-a941a70a]{font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.pf-brand-tag[data-v-a941a70a]{display:inline-flex;align-items:center;height:18px;padding:0 7px;border-radius:var(--radius-full);background:var(--color-accent-soft);color:var(--color-accent-hover);font-size:11px}.pf-field[data-v-a941a70a]{display:flex;flex-direction:column;gap:var(--space-1)}.pf-label[data-v-a941a70a]{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted);display:flex;align-items:center;gap:var(--space-2)}.req[data-v-a941a70a]{color:var(--color-danger)}.pf-hint-inline[data-v-a941a70a]{font-size:var(--text-xs);color:var(--color-text-faint);font-weight:var(--weight-regular)}.pf-key-wrap[data-v-a941a70a]{position:relative}.pf-key-wrap[data-v-a941a70a] .ui-input{padding-right:calc(var(--icon-button-sm) + var(--space-2))}.pf-key-eye[data-v-a941a70a]{position:absolute;right:var(--space-1);top:50%;transform:translateY(-50%)}.pf-pool-state[data-v-a941a70a]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) 0}.pf-label .spacer[data-v-a941a70a]{flex:1}.pf-foot[data-v-a941a70a]{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;gap:var(--space-2);padding-top:var(--space-4);padding-bottom:var(--space-2);border-top:var(--p-hairline) solid var(--color-line);background:var(--color-bg);box-shadow:0 var(--space-5) 0 var(--color-bg)}.pf-foot .spacer[data-v-a941a70a]{flex:1}.pf-confirm-msg[data-v-a941a70a]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-danger)}.ap[data-v-e472783f]{display:flex;flex-direction:column}.ap-head[data-v-e472783f]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.ap-top[data-v-e472783f]{position:sticky;top:calc(-1 * var(--space-2));z-index:5;margin:calc(-1 * var(--space-2)) 0 0;padding-top:var(--space-2);background:var(--color-bg);border-bottom:var(--p-hairline) solid var(--color-line)}.ap-back[data-v-e472783f]{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-left:calc(-1 * var(--space-2));border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer}.ap-back[data-v-e472783f]:hover{background:var(--color-hover);color:var(--color-text-strong)}.ap-title[data-v-e472783f]{font-family:var(--font-ui);font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.ap-chips[data-v-e472783f]{display:flex;flex-wrap:wrap;gap:var(--space-1-5);margin-bottom:var(--space-4)}.ap-chip[data-v-e472783f]{display:inline-flex;align-items:center;gap:var(--space-1-5);height:30px;padding:0 var(--space-3);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-full);background:transparent;font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-option-label);color:var(--color-text-muted);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.ap-chip[data-v-e472783f]:hover{background:var(--color-hover)}.ap-chip.on[data-v-e472783f]{background:var(--color-selected);color:var(--color-text);font-weight:var(--weight-ui-strong);border-color:transparent}.ap-catalog[data-v-e472783f]{display:flex;flex-direction:column;gap:var(--space-3)}.ap-center[data-v-e472783f]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) 0;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base)}.ap-error[data-v-e472783f]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.ap-list[data-v-e472783f]{display:flex;flex-direction:column;max-height:320px;overflow-y:auto;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md)}.ap-list[data-v-e472783f]>*+*{border-top:var(--p-hairline) solid var(--color-line)}.ap-entry[data-v-e472783f]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:34px;padding:var(--space-1) var(--space-3);border:none;background:transparent;text-align:left;font-family:var(--font-ui);color:var(--color-text);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.ap-entry[data-v-e472783f]:hover:not(:disabled){background:var(--color-hover)}.ap-entry.sel[data-v-e472783f]{background:var(--color-selected)}.ap-entry[data-v-e472783f]:disabled{cursor:not-allowed;opacity:.55}.ap-entry-name[data-v-e472783f]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);font-weight:var(--weight-medium)}.ap-entry .grow[data-v-e472783f]{flex:1;min-width:0}.ap-entry-count[data-v-e472783f],.ap-entry-reason[data-v-e472783f]{flex:none;font-size:var(--text-xs);color:var(--color-text-faint);white-space:nowrap}.ap-empty[data-v-e472783f]{padding:var(--space-4);text-align:center;color:var(--color-text-faint);font-family:var(--font-ui);font-size:var(--text-sm)}.ap-import[data-v-e472783f]{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg)}.ap-registry[data-v-e472783f]{display:flex;flex-direction:column;gap:var(--space-4)}.ap-hint[data-v-e472783f]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-faint)}.ap-field[data-v-e472783f]{display:flex;flex-direction:column;gap:var(--space-1)}.ap-label[data-v-e472783f]{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted)}.req[data-v-e472783f]{color:var(--color-danger)}.ap-key-wrap[data-v-e472783f]{position:relative}.ap-key-wrap[data-v-e472783f] .ui-input{padding-right:calc(var(--icon-button-sm) + var(--space-2))}.ap-key-eye[data-v-e472783f]{position:absolute;right:var(--space-1);top:50%;transform:translateY(-50%)}.ap-hint-inline[data-v-e472783f]{font-size:var(--text-xs);color:var(--color-text-faint);font-weight:var(--weight-regular)}.ap-foot[data-v-e472783f]{position:sticky;bottom:0;z-index:5;background:var(--color-bg);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3);padding-bottom:var(--space-2);box-shadow:0 var(--space-5) 0 var(--color-bg);border-top:var(--p-hairline) solid var(--color-subtle)}.ap-foot .spacer[data-v-e472783f]{flex:1}.mpv[data-v-96589942]{display:flex;flex-direction:column}.mpv-head[data-v-96589942]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.mpv-back[data-v-96589942]{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-left:calc(-1 * var(--space-2));border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer}.mpv-back[data-v-96589942]:hover{background:var(--color-hover);color:var(--color-text-strong)}.mpv-title[data-v-96589942]{font-family:var(--font-ui);font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.mpv-body[data-v-96589942]{display:flex;flex-direction:column}.mpv-group[data-v-96589942]{overflow:hidden;border-radius:var(--radius-xl);background:var(--color-surface)}.mpv-group[data-v-96589942]>*+*{border-top:var(--p-hairline) solid var(--color-line)}.mpv-row[data-v-96589942]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:52px;padding:var(--space-4)}.mpv-row-models[data-v-96589942]{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.mpv-row-login[data-v-96589942]{align-items:center}.mpv-label[data-v-96589942]{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-option-label);color:var(--color-text);display:flex;flex-direction:column;gap:2px}.mpv-hint[data-v-96589942]{font-size:var(--text-xs);color:var(--color-text-faint);font-weight:var(--weight-regular)}.mpv-value[data-v-96589942]{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-muted)}.mpv-value-faint[data-v-96589942]{color:var(--color-text-faint)}.mpv-chips[data-v-96589942]{display:flex;flex-wrap:wrap;gap:var(--space-1-5)}.mpv-chip[data-v-96589942]{display:inline-flex;align-items:center;gap:var(--space-1);height:24px;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--color-fill-1);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted)}.mpv-chip-ctx[data-v-96589942]{color:var(--color-text-quaternary)}.mpv-actions[data-v-96589942]{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.mpv-note[data-v-96589942]{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-4);color:var(--color-text-quaternary);font-family:var(--font-ui);font-size:var(--text-xs)}.mp[data-v-1b41f749]{display:flex;flex-direction:column;gap:var(--space-2);height:100%;min-height:0;padding-top:4px}.mp--sheet[data-v-1b41f749]{height:auto;padding-top:0}.mp--sheet .search-wrap[data-v-1b41f749],.mp--sheet .chip-strip[data-v-1b41f749]{margin:0 16px}.search-wrap[data-v-1b41f749]{position:relative;margin:0 22px;padding-bottom:var(--space-1)}.search-wrap[data-v-1b41f749] .ui-input{padding-right:30px}.search-clear[data-v-1b41f749]{position:absolute;top:0;bottom:var(--space-1);right:var(--space-2);margin-block:auto;display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:var(--radius-full);background:var(--color-hover);color:var(--color-text-faint);cursor:pointer;visibility:hidden;opacity:0;transition:opacity var(--duration-fast) var(--ease-out),visibility var(--duration-fast),background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.search-clear.is-on[data-v-1b41f749]{visibility:visible;opacity:1}.search-clear[data-v-1b41f749]:hover{background:var(--color-selected);color:var(--color-text-muted)}.search-clear[data-v-1b41f749]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.chip-strip[data-v-1b41f749]{display:flex;gap:var(--space-1);margin:0 22px;overflow-x:auto;scrollbar-width:none}.chip-strip[data-v-1b41f749]::-webkit-scrollbar{display:none}.chip[data-v-1b41f749]{flex:none;height:28px;padding:0 var(--space-3);border:none;border-radius:var(--radius-full);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base);white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.chip[data-v-1b41f749]:hover{background:var(--color-hover);color:var(--color-text)}.chip.is-active[data-v-1b41f749]{background:var(--color-selected);color:var(--color-text);font-weight:var(--weight-medium)}.chip[data-v-1b41f749]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.model-list[data-v-1b41f749]{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding:var(--space-1) var(--space-2)}.model-row[data-v-1b41f749]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text);min-width:0;transition:background var(--duration-fast) var(--ease-out)}.model-row[data-v-1b41f749]:hover,.model-row.is-selected[data-v-1b41f749]{background:var(--color-hover)}.model-row.is-current[data-v-1b41f749]{background:var(--color-selected)}.model-main[data-v-1b41f749]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.model-name[data-v-1b41f749]{font-family:var(--font-ui);font-size:var(--text-base);line-height:20px;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-row.is-current .model-name[data-v-1b41f749]{font-weight:var(--weight-medium)}.model-meta[data-v-1b41f749]{font-family:var(--font-ui);font-size:var(--text-xs);line-height:18px;color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-side[data-v-1b41f749]{display:flex;align-items:center;gap:var(--space-1);flex:none}.model-check[data-v-1b41f749]{color:var(--color-text)}.model-star[data-v-1b41f749]{color:var(--color-text-faint);visibility:hidden;opacity:0;transition:opacity var(--duration-fast) var(--ease-out),visibility var(--duration-fast)}.model-row:hover .model-star[data-v-1b41f749],.model-row.is-selected .model-star[data-v-1b41f749],.model-star.is-starred[data-v-1b41f749],.model-star[data-v-1b41f749]:focus-visible{visibility:visible;opacity:1}.model-star.is-starred[data-v-1b41f749]{color:var(--star)}@media(hover:none){.model-star[data-v-1b41f749]{visibility:visible;opacity:1}}.state-row[data-v-1b41f749]{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base)}.state-row.unavail[data-v-1b41f749]{color:var(--color-warning)}.empty[data-v-1b41f749]{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base)}.footer-hint[data-v-1b41f749]{flex:none;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-top:var(--p-hairline) solid var(--color-line);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-faint)}.hint-dot[data-v-1b41f749]{margin:0 var(--space-1)}@media(hover:none){.footer-hint[data-v-1b41f749]{display:none}}@media(prefers-reduced-motion:reduce){.chip[data-v-1b41f749],.model-row[data-v-1b41f749],.model-star[data-v-1b41f749],.search-clear[data-v-1b41f749]{transition:none}}.sec[data-v-1df32732]{margin-bottom:var(--space-5)}.sec-title[data-v-1df32732]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);margin:0 0 var(--space-3)}.pu-group[data-v-1df32732]{overflow:hidden;border-radius:var(--radius-xl);background:var(--color-surface)}.pu-row[data-v-1df32732]{display:flex;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-3) var(--space-4)}.pu-main[data-v-1df32732]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.pu-label[data-v-1df32732]{font-size:var(--text-sm);color:var(--color-text)}.pu-hint[data-v-1df32732]{font-size:var(--text-xs);color:var(--color-text-faint)}.pp[data-v-5200c18d]{display:flex;flex-direction:column}.pp-head[data-v-5200c18d]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.pp-title[data-v-5200c18d]{margin:0;font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.pp-group-title[data-v-5200c18d]{margin:var(--space-4) 2px var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text)}.pp-group-title[data-v-5200c18d]:first-of-type{margin-top:0}.pp-loading[data-v-5200c18d]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) 0;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-base)}.pp-group[data-v-5200c18d]{overflow:hidden;border-radius:var(--radius-xl);background:var(--color-surface)}.pp-group>.pp-row+.pp-row[data-v-5200c18d]{border-top:var(--p-hairline) solid var(--color-line)}.pp-row[data-v-5200c18d]{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:52px;padding:var(--space-4);border:none;background:transparent;text-align:left;font-family:var(--font-ui);color:var(--color-text);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.pp-row[data-v-5200c18d]:hover{background:var(--color-hover)}.pp-row .grow[data-v-5200c18d]{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-2)}.pp-id[data-v-5200c18d]{font-size:var(--text-sm);font-weight:var(--weight-option-label);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-count[data-v-5200c18d]{flex:none;font-size:var(--text-xs);color:var(--color-text-faint);white-space:nowrap}.pp-pending[data-v-5200c18d]{flex:none;font-size:var(--text-xs);color:var(--color-warning);white-space:nowrap}.pp-chev[data-v-5200c18d]{display:inline-flex;flex:none;color:var(--color-text-faint)}.pp-login-tag[data-v-5200c18d]{flex:none;display:inline-flex;align-items:center;height:30px;padding:0 var(--space-3);border-radius:var(--radius-sm);background:var(--color-accent);color:#fff;font-size:var(--text-sm);font-weight:var(--weight-ui-strong);box-shadow:var(--shadow-xs)}.pp-empty[data-v-5200c18d]{padding:var(--space-6) var(--space-4);text-align:center}.pp-empty-title[data-v-5200c18d]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-faint)}.pp-empty-hint[data-v-5200c18d]{margin-top:var(--space-1);font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-quaternary)}.pp-row.flash[data-v-5200c18d]{animation:pp-flash-5200c18d 1.2s var(--ease-out)}@keyframes pp-flash-5200c18d{0%{background:var(--color-accent-soft)}to{background:transparent}}.plugins-panel[data-v-c7c953ac]{display:flex;flex-direction:column;gap:var(--space-4)}.pp-panel-title[data-v-c7c953ac]{margin:0;font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.pp-custom[data-v-c7c953ac]{flex:none}.pp-custom-row[data-v-c7c953ac]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:40px;padding:var(--space-2) var(--space-4);border:none;background:transparent;font-family:var(--font-ui);font-size:var(--text-base);color:var(--color-text-muted);text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.pp-custom-row[data-v-c7c953ac]:hover{background:var(--color-hover);color:var(--color-text)}.pp-custom-label[data-v-c7c953ac]{flex:1}.pp-chev[data-v-c7c953ac]{display:inline-flex;color:var(--color-text-faint);transition:transform var(--duration-fast) var(--ease-out)}.pp-chev.open[data-v-c7c953ac]{transform:rotate(90deg)}.pp-custom-body[data-v-c7c953ac]{padding:0 var(--space-4) var(--space-3);border-top:var(--p-hairline) solid var(--color-line)}.pp-custom-form[data-v-c7c953ac]{display:flex;align-items:center;gap:var(--space-2);padding-top:var(--space-3)}.pp-custom-input[data-v-c7c953ac]{flex:1}.pp-custom-hint[data-v-c7c953ac]{margin:var(--space-2) 0 0;font-size:var(--text-xs);color:var(--color-text-faint)}.pp-loading[data-v-c7c953ac]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) 0;color:var(--color-text-muted);font-size:var(--text-base)}.pp-catalog-error[data-v-c7c953ac]{margin:0;font-size:var(--text-xs);color:var(--color-text-faint)}.pp-load-error[data-v-c7c953ac]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-xl);background:var(--color-surface-raised)}.pp-load-error-text[data-v-c7c953ac]{font-size:var(--text-sm);color:var(--color-danger)}.pp-section[data-v-c7c953ac]{display:flex;flex-direction:column;gap:var(--space-3)}.pp-sec-title[data-v-c7c953ac]{margin:0;font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.pp-group[data-v-c7c953ac]{overflow:hidden;border-radius:var(--radius-xl);background:var(--color-surface)}.pp-group[data-v-c7c953ac]>*+*{border-top:var(--p-hairline) solid var(--color-line)}.pp-row[data-v-c7c953ac]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:52px;padding:var(--space-4)}.pp-main[data-v-c7c953ac]{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.pp-title[data-v-c7c953ac]{display:flex;align-items:center;gap:var(--space-2)}.pp-name[data-v-c7c953ac]{font-size:var(--text-sm);font-weight:var(--weight-option-label);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-version[data-v-c7c953ac]{flex:none;font-size:var(--text-xs);color:var(--color-text-faint);font-variant-numeric:tabular-nums}.pp-version--muted[data-v-c7c953ac]{opacity:.7}.pp-homepage[data-v-c7c953ac]{display:inline-flex;color:var(--color-text-faint);transition:color var(--duration-fast) var(--ease-out)}.pp-homepage[data-v-c7c953ac]:hover{color:var(--color-text)}.pp-desc[data-v-c7c953ac]{margin:0;font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--leading-relaxed)}.pp-error[data-v-c7c953ac]{margin:0;font-size:var(--text-xs);color:var(--color-danger)}.pp-actions[data-v-c7c953ac]{display:flex;align-items:center;gap:var(--space-2);flex:none}.pp-ext-hint[data-v-c7c953ac]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-xs);color:var(--color-text-muted)}.pp-ext-icon[data-v-c7c953ac]{flex:none;color:var(--color-text-faint)}.pp-ext-title[data-v-c7c953ac]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-ext-actions[data-v-c7c953ac]{display:flex;align-items:center;gap:var(--space-2);flex:none}.pp-ext-guide[data-v-c7c953ac],.pp-ext-close[data-v-c7c953ac]{flex:none}.sm-picker[data-v-9c58a881]{position:relative;width:100%;font-family:var(--font-ui)}.sm-picker__trigger[data-v-9c58a881]{display:flex;align-items:center;gap:var(--space-2);width:100%;height:38px;padding:0 var(--space-3);border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-md);background:transparent;box-shadow:none;color:var(--color-text);font:inherit;font-size:var(--text-base);line-height:var(--leading-normal);text-align:left;cursor:pointer;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out)}.sm-picker__trigger[data-v-9c58a881]:focus-visible,.sm-picker.is-open .sm-picker__trigger[data-v-9c58a881]{outline:none;border-color:var(--color-accent);box-shadow:var(--p-focus-ring)}.sm-picker__value[data-v-9c58a881]{min-width:0;flex:1;display:flex;align-items:center;overflow:hidden;white-space:nowrap}.sm-picker__value-text[data-v-9c58a881]{min-width:0;overflow:hidden;text-overflow:ellipsis}.sm-picker__value.is-placeholder[data-v-9c58a881]{color:var(--color-text-faint)}.sm-picker__chevron[data-v-9c58a881]{flex:none;color:var(--color-text-muted);transition:transform var(--duration-base) var(--ease-out)}.sm-picker.is-open .sm-picker__chevron[data-v-9c58a881]{transform:rotate(180deg)}.sm-picker__menu[data-v-9c58a881]{position:fixed;z-index:var(--z-modal-dropdown);width:252px;max-width:calc(100vw - 64px);border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);box-shadow:var(--shadow-lg)}.sm-picker__models[data-v-9c58a881]{max-height:280px;overflow-y:auto;padding:var(--space-1);border-radius:var(--radius-md)}.sm-picker__flyout[data-v-9c58a881]{position:absolute;width:180px;max-height:280px;overflow-y:auto;padding:var(--space-1);border:var(--p-hairline) solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);box-shadow:var(--shadow-lg)}.sm-picker__flyout--right[data-v-9c58a881]{left:calc(100% + var(--space-1))}.sm-picker__flyout--left[data-v-9c58a881]{right:calc(100% + var(--space-1))}.sm-picker__group[data-v-9c58a881]{padding:var(--space-2) var(--space-2) var(--space-1);color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-medium)}.sm-picker__option[data-v-9c58a881]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:32px;padding:var(--space-1) var(--space-2);border:none;border-radius:var(--radius-select-option);background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer}.sm-picker__option.is-active[data-v-9c58a881]{background:var(--color-hover);color:var(--color-text-strong)}.sm-picker__option.is-muted[data-v-9c58a881]{color:var(--color-text-muted)}.sm-picker__option-label[data-v-9c58a881]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-picker__check[data-v-9c58a881]{flex:none;color:transparent}.sm-picker__option.is-selected .sm-picker__check[data-v-9c58a881]{color:var(--color-accent)}.sm-picker__flyout-caret[data-v-9c58a881]{flex:none;margin-left:auto;color:var(--color-text-faint)}.workspace-menu[data-v-7e543e91]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.menu-pop-enter-active[data-v-7e543e91]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-7e543e91]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-7e543e91],.menu-pop-leave-to[data-v-7e543e91]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}[data-v-7e543e91] .workspace-rename-item{font-size:var(--text-xs);font-weight:var(--weight-option-label)}.ws-dir[data-v-8888b817]{display:block;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border-radius:var(--radius-sm);cursor:pointer;position:relative;user-select:none}.ws-dir[data-v-8888b817]:hover{background:var(--sb-hover, var(--color-hover))}.ws-dir.on[data-v-8888b817]{background:var(--sb-selected, var(--color-selected))}.ws-dir+.ws-dir[data-v-8888b817]{margin-top:var(--space-05)}.ws-dir-row[data-v-8888b817]{display:flex;align-items:center;gap:var(--sb-gap);min-width:0}.ws-dir-icon[data-v-8888b817]{flex:none;color:var(--color-text-muted)}.ws-dir-name[data-v-8888b817]{flex:1;min-width:0;font-size:var(--ui-font-size-sm);font-weight:var(--weight-caption);line-height:var(--leading-tight);color:var(--color-text);overflow:hidden;white-space:nowrap;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent);mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent)}.ws-dir-act[data-v-8888b817]{position:absolute;top:0;bottom:0;right:var(--sb-action-inset);display:inline-flex;align-items:center;opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.ws-dir-rename[data-v-8888b817]{flex:1;min-width:0;font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-caption);color:var(--color-text);background:var(--color-bg);border:var(--p-hairline) solid var(--color-accent);border-radius:var(--radius-sm);padding:2px 5px;outline:none}.ws-dir:hover .ws-dir-act[data-v-8888b817],.ws-dir:focus-within .ws-dir-act[data-v-8888b817]{opacity:1;visibility:visible;transition:opacity var(--duration-fast) var(--ease-out)}.ws-dir-sub[data-v-8888b817]{margin:var(--space-1) 0 0;color:var(--color-text-faint);font-size:var(--text-xs);line-height:var(--leading-tight);overflow:hidden;white-space:nowrap;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent);mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent)}.ws-dir:hover .ws-dir-name[data-v-8888b817],.ws-dir:focus-within .ws-dir-name[data-v-8888b817],.ws-dir:hover .ws-dir-sub[data-v-8888b817],.ws-dir:focus-within .ws-dir-sub[data-v-8888b817]{margin-right:calc(var(--icon-button-sm) + var(--space-2))}.empty[data-v-8888b817]{padding:var(--space-6) var(--space-3);text-align:center;color:var(--faint);font-size:calc(var(--ui-font-size) - 3px);line-height:1.6}.session-list-panel[data-v-4f5916cf]{display:contents}.sessions-head[data-v-4f5916cf]{position:relative;z-index:1;padding:var(--space-3) var(--sb-inset) 0;border-bottom:var(--p-hairline) solid transparent;transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.sessions-head[data-v-4f5916cf]:after{content:"";position:absolute;left:0;right:0;height:var(--p-sidebar-seam-h);pointer-events:none;opacity:0;transition:opacity var(--duration-base) var(--ease-out);top:100%;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.5%,transparent),transparent 35%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1%,transparent),transparent 65%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) .75%,transparent),transparent);transition-duration:var(--duration-slow)}.sessions-head--scrolled[data-v-4f5916cf]{border-bottom-color:var(--line)}.sessions-head--scrolled[data-v-4f5916cf]:after{opacity:1}.side-section-label[data-v-4f5916cf]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 var(--sb-action-inset) var(--space-1) var(--space-2);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--faint);user-select:none}.side-section-title[data-v-4f5916cf]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sessions-head .pinned+.side-section-label[data-v-4f5916cf]{margin-top:var(--space-1)}.side-section-toggle[data-v-4f5916cf]{color:var(--faint)}.side-section-toggle[data-v-4f5916cf]:hover{color:var(--dim)}.side-section-toggle svg[data-v-4f5916cf]{width:13px;height:13px}.side-section-actions[data-v-4f5916cf]{display:flex;align-items:center;gap:2px}.sessions[data-v-4f5916cf]{flex:1;overflow-y:auto;padding:0 var(--sb-inset) var(--space-3);min-height:0;--overlay-scrollbar-thumb-min: var(--space-6);scrollbar-width:none}.sessions[data-v-4f5916cf]::-webkit-scrollbar{display:none}.sessions.pinned-drag-active[data-v-4f5916cf]{box-shadow:inset 0 0 0 1px var(--color-accent)}.sessions.flat-pinned-drop-hover[data-v-4f5916cf]{box-shadow:inset 0 0 0 2px var(--color-accent)}.sessions-thumb[data-v-4f5916cf]{position:absolute;right:0;width:var(--space-1);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-text) 12%,transparent);opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out);z-index:var(--z-raised);touch-action:none}.sessions-thumb.visible[data-v-4f5916cf]{opacity:1;pointer-events:auto}.sessions-thumb.visible[data-v-4f5916cf]:hover{background:color-mix(in srgb,var(--color-text) 25%,transparent)}.sessions-thumb[data-v-4f5916cf]:before{content:"";position:absolute;top:0;bottom:0;left:calc(-1 * var(--space-2));right:0}.ws-drop-target.drop-before[data-v-4f5916cf]{box-shadow:inset 0 2px 0 var(--color-accent)}.ws-drop-target.drop-after[data-v-4f5916cf]{box-shadow:inset 0 -2px 0 var(--color-accent)}.ws-drop-target.ws-locate-flash[data-v-4f5916cf] .gh{isolation:isolate}.ws-drop-target.ws-locate-flash[data-v-4f5916cf] .gh:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:var(--radius-sm);background:var(--color-accent-soft);pointer-events:none;animation:ws-locate-fade-4f5916cf var(--duration-flash) var(--ease-out) forwards}@keyframes ws-locate-fade-4f5916cf{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.ws-drop-target.ws-locate-flash[data-v-4f5916cf] .gh:before{animation:none}}.done-gh[data-v-4f5916cf]{display:flex;align-items:center;gap:var(--sb-gap);padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border-radius:var(--radius-sm);font-family:var(--font-ui);color:var(--color-text);user-select:none;position:relative;cursor:pointer}.done-gh[data-v-4f5916cf]:hover{background:var(--sb-hover, var(--color-hover))}.done-gh-folder[data-v-4f5916cf]{flex:none;color:var(--color-text-muted)}.done-gh-name[data-v-4f5916cf]{flex:1;min-width:0;font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);color:var(--color-text-muted);overflow:hidden;white-space:nowrap;text-overflow:clip;-webkit-mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent);mask-image:linear-gradient(to right,var(--color-text-strong) calc(100% - 16px),transparent)}.done-gh-count[data-v-4f5916cf]{flex:none;color:var(--color-text-faint);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.done-gh-act[data-v-4f5916cf]{position:absolute;top:0;bottom:0;right:var(--sb-action-inset);display:inline-flex;align-items:center;opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.done-gh:hover .done-gh-act[data-v-4f5916cf],.done-gh:focus-within .done-gh-act[data-v-4f5916cf]{opacity:1;visibility:visible;transition:opacity var(--duration-fast) var(--ease-out)}.done-gh:hover .done-gh-count[data-v-4f5916cf],.done-gh:focus-within .done-gh-count[data-v-4f5916cf]{opacity:0;visibility:hidden;transition:opacity var(--duration-fast) var(--ease-out),visibility 0s linear var(--duration-fast)}.show-more-row[data-v-4f5916cf]{display:flex;align-items:center;justify-content:center}.show-more[data-v-4f5916cf]{display:flex;align-items:center;justify-content:center;gap:var(--space-1);margin:0;padding:6px var(--space-3);min-width:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-tight);cursor:pointer}.show-more[data-v-4f5916cf]:hover{background:var(--sb-hover, var(--color-hover))}.show-more[data-v-4f5916cf]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.show-more-label[data-v-4f5916cf]{flex:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty[data-v-4f5916cf]{padding:var(--space-6) var(--space-3);text-align:center;color:var(--faint);font-size:calc(var(--ui-font-size) - 3px);line-height:1.6}.view-menu[data-v-4f5916cf]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.view-menu-label[data-v-4f5916cf]{padding:var(--space-1) var(--space-2) var(--space-05);font-size:var(--text-xs);color:var(--faint);user-select:none}.view-menu-check[data-v-4f5916cf]{margin-left:auto;display:inline-flex}.menu-pop-enter-active[data-v-4f5916cf]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-4f5916cf]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-4f5916cf],.menu-pop-leave-to[data-v-4f5916cf]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}.rc-dev[data-v-3705fc40]{--sb-inset: var(--space-2);--sb-pad-x: var(--space-4);--sb-gap: var(--space-2);--sb-hover: var(--color-hover);position:relative;padding:0 var(--sb-inset) var(--space-1)}.rc-dev--mobile[data-v-3705fc40]{padding:var(--space-1) var(--sb-inset) var(--space-2)}.rc-dev--mobile .rc-dev-trigger[data-v-3705fc40]{min-height:44px}.rc-dev-trigger[data-v-3705fc40]{display:flex;align-items:center;gap:var(--sb-gap);width:100%;min-width:0;padding:6px calc(var(--sb-pad-x) - var(--sb-inset));border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);cursor:pointer;text-align:left}.rc-dev-trigger[data-v-3705fc40]:hover,.rc-dev-trigger[aria-expanded=true][data-v-3705fc40]{background:var(--sb-hover)}.rc-dev-trigger[data-v-3705fc40]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.rc-dev-trigger svg[data-v-3705fc40]{flex:none}.rc-dev-name[data-v-3705fc40]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-dev-chevron[data-v-3705fc40]{margin-left:auto;color:var(--color-text-faint)}.rc-dev-menu[data-v-3705fc40]{position:fixed;top:0;left:0;z-index:var(--z-dropdown);max-height:calc(100vh - 16px);overflow-y:auto;overflow-x:hidden;user-select:none}.rc-dev-menu--mobile[data-v-3705fc40]{position:absolute;top:100%;left:var(--sb-inset);right:var(--sb-inset);bottom:auto;max-height:min(50vh,320px);transform-origin:top center}.rc-dev-menu--mobile .rc-dev-offline[data-v-3705fc40]{min-height:44px;padding:12px 14px}.menu-pop-enter-active[data-v-3705fc40]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-3705fc40]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-3705fc40],.menu-pop-leave-to[data-v-3705fc40]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, 2px))}.rc-dev-state[data-v-3705fc40]{display:flex;align-items:center;justify-content:center;padding:var(--space-3)}.rc-dev-failed[data-v-3705fc40]{color:var(--color-text-muted);font-size:var(--text-sm)}.rc-dev-caption[data-v-3705fc40]{padding:var(--space-2) var(--menu-item-padding-inline) 2px;color:var(--color-text-faint);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.rc-dev-item-name[data-v-3705fc40]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-dev-item-status[data-v-3705fc40]{display:flex;align-items:center;gap:6px;flex:none;color:var(--color-text-muted)}.rc-dev-item-check[data-v-3705fc40]{display:flex;align-items:center;justify-content:center;width:var(--p-ic-md);height:var(--p-ic-md);flex:none}.rc-dev-offline[data-v-3705fc40]{padding:var(--menu-item-padding-block) var(--menu-item-padding-inline);border-radius:var(--radius-menu-item);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-option-label);line-height:var(--leading-tight)}.rc-dev-offline.is-current[data-v-3705fc40]{background:var(--color-hover);color:var(--color-text)}.rc-dev-offline-row[data-v-3705fc40]{display:flex;align-items:center;gap:7px}.rc-dev-offline-row svg[data-v-3705fc40]{display:block;width:var(--p-ic-md);height:var(--p-ic-md);flex:none}.panel-menu-icon-space[data-v-5c342c8c]{width:var(--p-ic-md);height:var(--p-ic-md);flex:none}.panel-context-menu[data-v-5c342c8c]{user-select:none;position:fixed;z-index:var(--z-dropdown);max-height:calc(100vh - var(--space-4));overflow-y:auto}.panel-tab-favicon[data-v-cf76b371]{width:var(--p-ic-sm);height:var(--p-ic-sm);flex:none;object-fit:contain}.panel-tab-title[data-v-cf76b371]{position:relative;top:.08em;overflow:hidden;text-overflow:ellipsis}.panel-tab-status[data-v-cf76b371]{display:inline-flex;align-items:center;flex:none;color:var(--color-text-muted)}.user-menu-trigger[data-v-80c23744]{display:flex;align-items:center;gap:var(--sb-gap);width:100%;min-width:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);cursor:pointer;text-align:left}.user-menu-trigger[data-v-80c23744]:hover,.user-menu-trigger[aria-expanded=true][data-v-80c23744]{background:var(--sb-hover)}.user-menu-trigger[data-v-80c23744]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}html.macos-desktop .user-menu-trigger[data-v-80c23744]{border-bottom-left-radius:var(--radius-window-chip)}.user-menu-trigger svg[data-v-80c23744]{flex:none}.user-menu-avatar[data-v-80c23744]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none;border-radius:var(--radius-full);background:var(--color-surface-sunken);color:var(--color-text-muted);overflow:hidden}.user-menu-avatar img[data-v-80c23744]{width:100%;height:100%;object-fit:cover}.user-menu-name[data-v-80c23744]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu[data-v-80c23744]{position:fixed;top:0;left:0;z-index:var(--z-dropdown);max-height:calc(100vh - 16px);overflow-y:auto;overflow-x:hidden;user-select:none}.user-submenu[data-v-80c23744]{position:fixed;top:0;left:0;z-index:var(--z-dropdown);width:max-content;max-height:calc(100vh - 16px);overflow-y:auto;overflow-x:hidden;user-select:none}.menu-pop-enter-active[data-v-80c23744]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-80c23744]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-80c23744],.menu-pop-leave-to[data-v-80c23744]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, 2px))}.user-menu-usage[data-v-80c23744]{display:flex;flex-direction:column;gap:calc(var(--menu-item-padding-block) * 2);padding:var(--menu-item-padding-block) var(--menu-item-padding-inline)}.user-menu-usage-state[data-v-80c23744]{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-1) 0;color:var(--color-text-muted);font-size:var(--text-sm)}.user-menu-usage-error[data-v-80c23744]{flex:1;min-width:0}.user-menu-usage-empty[data-v-80c23744]{color:var(--color-text-faint)}.user-menu-usage-row[data-v-80c23744]{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-3);row-gap:var(--space-05)}.user-menu-usage-label[data-v-80c23744]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);line-height:var(--leading-tight);color:var(--color-text)}.user-menu-usage-hint[data-v-80c23744]{grid-column:1 / -1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-text-faint)}.user-menu-usage-value[data-v-80c23744]{justify-self:end;font-size:var(--text-sm);line-height:var(--leading-tight);font-weight:var(--weight-medium);color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap}.user-menu-item-label[data-v-80c23744]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-login-label[data-v-80c23744]{color:var(--color-accent)}.user-menu-row-value[data-v-80c23744]{flex:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);color:var(--color-text-faint)}.side[data-v-460a27a4]{background:var(--color-sidebar-bg);display:flex;flex-direction:row;justify-content:flex-end;overflow:hidden;min-width:0;height:100%;--side-width-anim: width .28s cubic-bezier(.4, 0, .2, 1);transition:var(--side-width-anim),visibility .28s;--sb-inset: var(--space-2);--sb-pad-x: var(--space-4);--sb-gutter: 16px;--sb-gap: var(--space-2);--sb-action-inset: calc((max(var(--ui-font-size-sm) * var(--leading-tight), var(--p-ic-md)) + 2 * var(--space-2) - var(--icon-button-sm)) / 2);--sb-hover: var(--color-hover);--sb-selected: color-mix(in srgb, var(--color-selected) 75%, transparent);user-select:none}.side[data-v-460a27a4] :is(input,textarea,[contenteditable=true]){user-select:text}.side.no-anim[data-v-460a27a4],.side.no-anim .col[data-v-460a27a4]{transition:none}.side.collapsed[data-v-460a27a4]{visibility:hidden}.col[data-v-460a27a4]{flex:none;min-width:0;display:flex;flex-direction:column;min-height:0;width:100%;box-sizing:border-box;border-right:var(--p-hairline) solid var(--line);container-type:inline-size;container-name:sidebar-col;position:relative;transition:var(--side-width-anim)}.ch[data-v-460a27a4]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:var(--space-3);min-height:calc(26px + 2 * var(--space-3));width:100%;box-sizing:border-box}.side.macos-desktop .ch[data-v-460a27a4]{padding-left:80px;-webkit-app-region:drag}.side.macos-desktop .ch-brand[data-v-460a27a4]{display:none}.ch-logo[data-v-460a27a4]{height:22px;width:32px;flex:none;display:block;cursor:pointer;user-select:none;touch-action:none;transition:transform .18s ease}.ch-logo[data-v-460a27a4]:hover{transform:scale(1.08)}.ch-brand[data-v-460a27a4]{display:flex;align-items:center;gap:8px;min-width:0;flex:1;user-select:none;touch-action:none}.ch-tail[data-v-460a27a4]{display:flex;align-items:center;gap:var(--space-2);flex:none;min-width:0;margin-left:auto}.ch-name[data-v-460a27a4]{font-size:var(--ui-font-size);font-weight:500;line-height:22px;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@container sidebar-col (max-width: 250px){.ch-name[data-v-460a27a4]{display:none}}.sidebar-actions[data-v-460a27a4]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 var(--space-2);padding:0 var(--sb-inset) var(--space-1);position:relative;z-index:1;background:var(--color-sidebar-bg)}.btn-new-chat[data-v-460a27a4]{grid-column:1 / -1;display:flex;align-items:center;gap:var(--sb-gap);width:100%;min-width:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);cursor:pointer;text-align:left}.sidebar-actions--has-workspace-action .btn-new-chat[data-v-460a27a4]{grid-column:1}.btn-new-chat[data-v-460a27a4]:hover{background:var(--sb-hover)}.btn-new-chat[data-v-460a27a4]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.btn-new-chat svg[data-v-460a27a4]{flex:none}.btn-new-chat span[data-v-460a27a4]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-new-chat[data-v-460a27a4] .ui-kbd{margin-left:auto}.btn-new-chat[data-v-460a27a4] .ui-kbd,.search[data-v-460a27a4] .ui-kbd{opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.btn-new-chat[data-v-460a27a4]:hover .ui-kbd,.btn-new-chat[data-v-460a27a4]:focus-visible .ui-kbd,.search[data-v-460a27a4]:hover .ui-kbd,.search[data-v-460a27a4]:focus-visible .ui-kbd{opacity:1}.search[data-v-460a27a4]{grid-column:1 / -1;display:flex;align-items:center;gap:var(--sb-gap);width:100%;margin:0;padding:8px calc(var(--sb-pad-x) - var(--sb-inset));border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.search[data-v-460a27a4]:hover{background:var(--sb-hover)}.search[data-v-460a27a4]:focus-visible{background:var(--sb-hover);color:var(--color-text);outline:2px solid var(--color-accent-bd);outline-offset:-2px}.search-icon[data-v-460a27a4]{flex:none;transform:translateY(-.5px)}.search-input[data-v-460a27a4]{flex:1;min-width:0;color:var(--color-text);font-family:var(--font-ui);font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-tabs[data-v-460a27a4]{padding:var(--space-2) var(--sb-inset) 0}.status-seg[data-v-460a27a4]{width:100%;display:flex}.status-seg[data-v-460a27a4] .ui-seg__item{flex:1;min-width:0;justify-content:center;padding:0 var(--space-1);overflow:hidden}.side-footer[data-v-460a27a4]{flex:none;position:relative;z-index:1;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) calc(var(--sb-inset) + var(--sb-action-inset)) var(--space-2) var(--sb-inset);border-top:var(--p-hairline) solid var(--line);background:var(--color-sidebar-bg)}.side-footer-account[data-v-460a27a4]{flex:1 1 auto;min-width:0}.side-footer-settings[data-v-460a27a4]{flex:none}.side-footer[data-v-460a27a4]:before{content:"";position:absolute;left:0;right:0;height:var(--p-sidebar-seam-h);pointer-events:none;opacity:0;transition:opacity var(--duration-base) var(--ease-out);bottom:100%;background:linear-gradient(to top,color-mix(in srgb,var(--color-text) 1.5%,transparent),transparent 35%),linear-gradient(to top,color-mix(in srgb,var(--color-text) 1%,transparent),transparent 65%),linear-gradient(to top,color-mix(in srgb,var(--color-text) .75%,transparent),transparent);transition-duration:var(--duration-slow)}.side-footer--shadowed[data-v-460a27a4]:before{opacity:1}.folder-drop-overlay[data-v-460a27a4]{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:var(--space-3);box-sizing:border-box;background:color-mix(in srgb,var(--color-sidebar-bg) 72%,transparent);pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--duration-base) ease,visibility var(--duration-base)}.folder-drop-overlay.show[data-v-460a27a4]{opacity:1;visibility:visible}.folder-drop-card[data-v-460a27a4]{display:flex;align-items:center;gap:var(--space-3);max-width:100%;box-sizing:border-box;padding:var(--space-4);border-radius:var(--radius-lg);border:var(--p-hairline) dashed var(--color-accent);background:var(--color-bg);color:var(--color-accent);font-size:var(--ui-font-size-lg);font-weight:var(--weight-medium);box-shadow:var(--shadow-md)}.folder-drop-card svg[data-v-460a27a4]{flex:none}.folder-drop-card span[data-v-460a27a4]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-toggles[data-v-abc4379e]{display:flex;align-items:center;gap:var(--space-1)}.ch-toggles .ch-panel[data-v-abc4379e]{width:var(--icon-button-sm);height:var(--icon-button-sm);border-radius:var(--radius-sm)}.ch-toggles .ch-panel[data-v-abc4379e] svg{width:var(--p-ic-md);height:var(--p-ic-md)}.chat-header[data-v-6594efb1]{flex:none;display:flex;align-items:center;gap:14px;height:var(--panel-head-h, 48px);padding:0 16px;border-bottom:var(--p-hairline) solid var(--color-line);background:var(--color-bg);font-family:var(--font-ui);min-width:0;user-select:none;container-type:inline-size}.chat-header.macos-desktop[data-v-6594efb1]{-webkit-app-region:drag}.chat-header.macos-desktop button[data-v-6594efb1],.chat-header.macos-desktop input[data-v-6594efb1]{-webkit-app-region:no-drag}.app:not(.mobile) .chat-header{transition:padding-left .28s cubic-bezier(.4,0,.2,1)}.app.sidebar-collapsed .chat-header{padding-left:78px}.app.sidebar-collapsed.macos-desktop .chat-header{padding-left:146px}.ch-id[data-v-6594efb1]{display:flex;align-items:center;gap:6px;min-width:0;flex:none;max-width:46%}.ch-ws[data-v-6594efb1]{color:var(--color-text-muted);font-size:var(--text-base);font-weight:var(--weight-medium);flex:none}.ch-sep[data-v-6594efb1]{color:var(--color-text-faint);flex:none}.ch-ses[data-v-6594efb1]{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-rename[data-v-6594efb1]{flex:1;min-width:0;font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);background:var(--color-bg);border:var(--p-hairline) solid var(--color-accent);border-radius:var(--radius-xs);padding:2px 5px;outline:none;user-select:text}.ch-git[data-v-6594efb1]{display:flex;align-items:center;gap:4px;border:none;background:transparent;padding:0;color:var(--muted);font-family:var(--font-ui);font-size:calc(var(--ui-font-size) - 2px);flex:0 1 auto;max-width:none;min-width:0;cursor:pointer}.ch-git:hover .ch-branch[data-v-6594efb1]{color:var(--color-text)}.ch-branch-icon[data-v-6594efb1]{flex:none;color:var(--color-text-muted)}.ch-branch[data-v-6594efb1]{color:var(--dim);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:4px}.ch-detached[data-v-6594efb1]{color:var(--muted);font-style:italic}.ch-pill[data-v-6594efb1]{display:inline-flex;align-items:center;gap:3px;padding:1px 5px;border-radius:999px;background:var(--panel);border:var(--p-hairline) solid var(--line);font-size:calc(var(--ui-font-size) - 3px)}.ch-sync-pill[data-v-6594efb1]{border-color:var(--line)}.ch-diff-pill[data-v-6594efb1]{border-color:color-mix(in srgb,var(--color-success) 20%,var(--line));font-variant-numeric:tabular-nums}.ch-ahead[data-v-6594efb1]{color:var(--color-warning);flex:none}.ch-behind[data-v-6594efb1]{color:var(--color-accent-hover);flex:none}.ch-add[data-v-6594efb1]{color:var(--color-success);flex:none}.ch-del[data-v-6594efb1]{color:var(--color-danger);flex:none}.ch-spacer[data-v-6594efb1]{flex:1;min-width:0}@container (max-width: 720px){.ch-ws[data-v-6594efb1],.ch-sep[data-v-6594efb1]{display:none}.ch-id[data-v-6594efb1]{flex:0 1 auto;max-width:none}}.chat-header .ch-act-more[data-v-6594efb1]{width:24px;height:24px;border-radius:var(--radius-sm)}.chat-header .ch-act-more[data-v-6594efb1] svg{width:14px;height:14px}.ch-act-more.open[data-v-6594efb1]{background:var(--color-well);color:var(--color-text)}.ch-dev[data-v-6594efb1]{display:inline-flex;align-items:center;height:22px;padding:0 9px;flex:none;border:var(--p-hairline) solid var(--color-warning-bd);border-radius:var(--radius-full);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--text-xs);font-weight:500}.ch-pr[data-v-6594efb1]{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;flex:none;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-full);background:var(--color-well);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:500;cursor:pointer}.ch-pr svg[data-v-6594efb1]{flex:none}.ch-pr.pr-open[data-v-6594efb1]{color:var(--color-success);border-color:var(--color-success-bd);background:var(--color-success-soft)}.ch-pr.pr-merged[data-v-6594efb1]{color:var(--color-done);border-color:var(--color-done-bd);background:var(--color-done-soft)}.ch-pr.pr-closed[data-v-6594efb1]{color:var(--color-danger);border-color:var(--color-danger-bd);background:var(--color-danger-soft)}.ch-pr.pr-draft[data-v-6594efb1],.ch-pr.pr-unknown[data-v-6594efb1]{color:var(--color-text-muted);border-color:var(--color-line-strong);background:var(--color-well)}.ch-pr[data-v-6594efb1]:hover{border-color:var(--color-line-strong)}@container (max-width: 980px){.ch-sync-pill[data-v-6594efb1],.ch-diff-pill[data-v-6594efb1]{display:none}}@container (max-width: 860px){.ch-git[data-v-6594efb1],.ch-pr[data-v-6594efb1]{display:none}}.ch-menu[data-v-6594efb1]{position:fixed;top:0;left:0;z-index:var(--z-dropdown)}.menu-pop-enter-active[data-v-6594efb1]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.menu-pop-leave-active[data-v-6594efb1]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);pointer-events:none}.menu-pop-enter-from[data-v-6594efb1],.menu-pop-leave-to[data-v-6594efb1]{opacity:0;transform:scale(.97) translateY(var(--menu-pop-shift, -2px))}@media(max-width:980px){.ch-act-label[data-v-6594efb1]{display:none}}@media(max-width:640px){.chat-header[data-v-6594efb1]{display:none}}.appr[data-v-bd4d5291]{display:flex;flex-direction:column;max-height:calc(var(--app-height, 100dvh) - var(--dock-card-top-clearance));margin:var(--space-2) 0;background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-2xl);box-shadow:var(--shadow-input);overflow:hidden auto;animation:kimi-card-in var(--duration-base) var(--ease-out)}.appr[data-v-bd4d5291]:before{content:"";position:sticky;top:0;flex:none;height:var(--p-scroll-seam-h);margin-bottom:calc(-1 * var(--p-scroll-seam-h));z-index:var(--z-raised);pointer-events:none;opacity:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 2.5%,transparent),transparent 35%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.75%,transparent),transparent 65%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.25%,transparent),transparent);transition:opacity var(--duration-slow) var(--ease-out)}.appr.scrolled[data-v-bd4d5291]:before{opacity:1}.appr>.ah[data-v-bd4d5291],.apane>.af[data-v-bd4d5291]{flex:none}.apane[data-v-bd4d5291]{display:flex;flex-direction:column;flex:0 1 auto;min-height:0;overflow:hidden}.appr.minimized[data-v-bd4d5291]{transition:background var(--duration-fast) var(--ease-out)}.appr.minimized[data-v-bd4d5291]:hover{background:var(--color-hover)}.ah[data-v-bd4d5291]{display:flex;align-items:center;gap:6px;padding:var(--space-4) var(--space-4) 0;flex-wrap:nowrap;transition:padding-bottom .22s cubic-bezier(.2,0,0,1)}.adot[data-v-bd4d5291]{display:inline-flex;align-items:center;justify-content:center;flex:none;width:14px;height:14px}.adot[data-v-bd4d5291]:before{content:"";width:6px;height:6px;border-radius:var(--radius-full);background:var(--color-attention)}.appr.minimized .ah[data-v-bd4d5291]{padding-bottom:var(--space-3)}.appr.minimized .ah.clickable[data-v-bd4d5291]{cursor:pointer}.akind[data-v-bd4d5291]{color:var(--color-text);font-size:var(--text-lg);line-height:var(--leading-normal);font-weight:var(--weight-medium);white-space:nowrap;flex:none}.apeek[data-v-bd4d5291]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);font:var(--content-font-size)/1.571 var(--font-mono)}.apeek-enter-active[data-v-bd4d5291],.apeek-leave-active[data-v-bd4d5291]{transition:opacity var(--duration-base) var(--ease-out)}.apeek-enter-from[data-v-bd4d5291],.apeek-leave-to[data-v-bd4d5291]{opacity:0}.amin[data-v-bd4d5291],.aexpand[data-v-bd4d5291]{margin-left:auto;flex:none}.aexpand+.amin[data-v-bd4d5291]{margin-left:0}.ab[data-v-bd4d5291]{display:flex;flex-direction:column;flex:1;min-height:0;padding:var(--space-2) var(--space-4) 0}.ab[data-v-bd4d5291]>*{flex:0 1 auto;min-height:0}.ab>.plan-path[data-v-bd4d5291]{flex:none}.ab>.body-plan-wrap[data-v-bd4d5291]{flex:1}.plan-path[data-v-bd4d5291]{display:block;width:100%;margin-bottom:var(--space-2);padding:0;border:none;background:transparent;color:var(--color-accent);font:var(--text-xs) var(--font-mono);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.plan-path[data-v-bd4d5291]:hover{text-decoration:underline}.plan-path[data-v-bd4d5291]:focus-visible{outline:none;text-decoration:underline;border-radius:var(--radius-xs);box-shadow:var(--p-focus-ring)}.body-code[data-v-bd4d5291]{display:flex;flex-direction:column;gap:var(--space-2)}.body-code.expanded[data-v-bd4d5291]{flex:1}.body-code.expanded[data-v-bd4d5291] .hl-code{max-height:none;flex:1}.code-path[data-v-bd4d5291]{flex:none;color:var(--color-text-muted);font:var(--text-xs) var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.body-shell[data-v-bd4d5291]{overflow-y:auto}.shell-cmd[data-v-bd4d5291]{font:var(--content-font-size)/1.571 var(--font-mono);color:var(--color-text-muted);background:var(--color-bg);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);padding:6px;white-space:pre-wrap;word-break:break-all;max-height:160px;overflow-y:auto}.shell-cwd[data-v-bd4d5291]{font:var(--text-base)/var(--leading-normal) var(--font-ui);color:var(--color-text-faint);margin-top:var(--space-2)}.shell-danger[data-v-bd4d5291]{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-danger);font:var(--text-sm)/var(--leading-normal) var(--font-ui);background:var(--color-danger-soft)}.shell-danger-ic[data-v-bd4d5291]{flex:none}.body-fields[data-v-bd4d5291]{display:flex;flex-direction:column;gap:var(--space-2);color:var(--color-text-faint);font:var(--text-base)/20px var(--font-ui);overflow-wrap:anywhere;overflow-y:auto}.body-chip[data-v-bd4d5291]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;font:var(--text-base)/var(--leading-normal) var(--font-ui);color:var(--color-text);overflow-y:auto}.chip-label[data-v-bd4d5291]{background:var(--color-inline-code-bg);border-radius:var(--radius-sm);padding:2px var(--space-2);font:var(--weight-semibold) var(--text-xs) var(--font-mono);color:var(--color-text-muted);white-space:nowrap}.chip-value[data-v-bd4d5291]{font:var(--text-sm) var(--font-mono);color:var(--color-text);word-break:break-all}.chip-detail[data-v-bd4d5291]{font:var(--text-xs) var(--font-ui);color:var(--color-text-muted)}.body-todo[data-v-bd4d5291]{overflow-y:auto}.todo-item[data-v-bd4d5291]{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-1) 0;font:var(--text-base)/var(--leading-normal) var(--font-ui);color:var(--color-text)}.todo-glyph[data-v-bd4d5291]{color:var(--color-accent);font-size:var(--text-sm);flex:none;width:14px}.todo-title[data-v-bd4d5291]{color:var(--color-text)}.todo-done[data-v-bd4d5291]{color:var(--color-text-muted);text-decoration:line-through}.browser-approval[data-v-bd4d5291]{display:flex;flex-direction:column;gap:var(--space-2)}.browser-approval-action[data-v-bd4d5291]{display:flex;align-items:center;gap:var(--space-2)}.browser-approval .chip-detail[data-v-bd4d5291]{overflow-wrap:anywhere;white-space:pre-wrap}.browser-approval>.ui-button[data-v-bd4d5291]{align-self:flex-start}.body-generic[data-v-bd4d5291]{font:var(--text-base)/var(--leading-normal) var(--font-ui);color:var(--color-text);word-break:break-word;overflow-y:auto}.body-plan-wrap[data-v-bd4d5291]{display:flex;flex-direction:column;overflow-y:auto}.body-plan-wrap[data-v-bd4d5291]:before{content:"";position:sticky;top:0;flex:none;height:var(--p-scroll-seam-h);margin-bottom:calc(-1 * var(--p-scroll-seam-h));z-index:var(--z-raised);pointer-events:none;opacity:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 2.5%,transparent),transparent 35%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.75%,transparent),transparent 65%),linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 1.25%,transparent),transparent);transition:opacity var(--duration-slow) var(--ease-out)}.body-plan-wrap.scrolled[data-v-bd4d5291]:before{opacity:1}.body-plan-wrap>.plan-opts[data-v-bd4d5291]{flex:none}.body-plan[data-v-bd4d5291]{max-height:50vh;overflow-y:auto;min-height:0}.body-plan.expanded[data-v-bd4d5291]{max-height:none;flex:1}.plan-opts[data-v-bd4d5291]{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-3);padding-top:var(--space-3);border-top:var(--p-hairline) solid var(--color-line)}.popt[data-v-bd4d5291]{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text);font:var(--text-sm)/var(--leading-normal) var(--font-ui);text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.popt[data-v-bd4d5291]:hover:not(:disabled){background:var(--color-hover)}.popt[data-v-bd4d5291]:focus-visible{outline:none;background:var(--color-hover);box-shadow:var(--p-focus-ring)}.popt[data-v-bd4d5291]:disabled{cursor:default;opacity:.6}.popt-key[data-v-bd4d5291]{width:var(--p-chip-num);height:var(--p-chip-num);border-radius:var(--radius-sm);background:var(--color-inline-code-bg);color:var(--color-text);font:var(--weight-medium) var(--text-xs)/var(--p-chip-num) var(--font-ui);text-align:center;flex:none}.popt-text[data-v-bd4d5291]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.popt-label[data-v-bd4d5291]{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium)}.popt-desc[data-v-bd4d5291]{color:var(--color-text-muted);font:var(--text-xs)/var(--leading-normal) var(--font-ui)}.popt-spin[data-v-bd4d5291]{flex:none;color:var(--color-text-muted)}.feedback-wrap[data-v-bd4d5291]{display:grid;grid-template-rows:minmax(0,1fr)}.feedback-inner[data-v-bd4d5291]{min-height:0;overflow:hidden;padding-top:var(--space-3)}.afb-enter-active[data-v-bd4d5291],.afb-leave-active[data-v-bd4d5291]{transition:grid-template-rows var(--duration-slow) var(--ease-out),opacity var(--duration-slow) var(--ease-out)}.afb-enter-from[data-v-bd4d5291],.afb-leave-to[data-v-bd4d5291]{grid-template-rows:minmax(0,0fr);opacity:0}.feedback-wrap[data-v-bd4d5291] .ui-textarea:focus{border-color:var(--color-line-strong);box-shadow:none}.af[data-v-bd4d5291]{display:flex;align-items:center;gap:10px;margin-top:10px;padding:0 var(--space-4) var(--space-4)}.abtns[data-v-bd4d5291]{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);width:100%}.abtns[data-v-bd4d5291]>.asession{margin-right:auto}.abtn-enter-active[data-v-bd4d5291],.abtn-leave-active[data-v-bd4d5291]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.abtn-enter-from[data-v-bd4d5291]{opacity:0;transform:translateY(4px)}.abtn-leave-to[data-v-bd4d5291]{opacity:0}@media(prefers-reduced-motion:reduce){.afb-enter-active[data-v-bd4d5291],.afb-leave-active[data-v-bd4d5291],.abtn-enter-active[data-v-bd4d5291],.abtn-leave-active[data-v-bd4d5291],.apeek-enter-active[data-v-bd4d5291],.apeek-leave-active[data-v-bd4d5291],.ah[data-v-bd4d5291]{transition:none}}@media(max-width:640px){.popt[data-v-bd4d5291]{min-height:44px;padding:var(--space-3)}.af[data-v-bd4d5291]{flex-direction:column;align-items:stretch}.abtns[data-v-bd4d5291]{flex-direction:column;margin-left:0;gap:var(--space-2)}.abtns[data-v-bd4d5291]>.cbtn{justify-content:center;width:100%;min-height:46px}.abtns[data-v-bd4d5291]>.asession{margin-right:0}.abtns .amain[data-v-bd4d5291]{order:-1}}.chat-dock[data-v-cd7c33c4]{--dock-inline-left: 16px;--dock-inline-right: 16px;box-sizing:border-box;width:100%;max-width:calc(var(--read-max) + var(--panes-scrollbar-width, 0px));padding-right:var(--panes-scrollbar-width, 0px);flex:none;position:absolute;inset:auto 0 0;background:transparent;z-index:var(--z-sticky)}.chat-dock.has-popup[data-v-cd7c33c4]{z-index:var(--z-dropdown)}.chat-dock.align-center[data-v-cd7c33c4]{margin-left:auto;margin-right:auto}.chat-dock.align-left[data-v-cd7c33c4]{margin-left:0;margin-right:auto}.chat-dock.align-mobile[data-v-cd7c33c4]{max-width:none}.chat-dock[data-v-cd7c33c4]:before{--fade: 48px;--veil: 72px;content:"";position:absolute;top:calc(-1 * var(--fade));right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-bg) 0%,transparent),color-mix(in srgb,var(--color-bg) 30%,transparent) 21px,color-mix(in srgb,var(--color-bg) 70%,transparent) 45px,var(--color-bg) var(--veil))}.chat-dock[data-v-cd7c33c4]>*{position:relative;z-index:1}.dock-work-panel[data-v-cd7c33c4]{position:absolute;left:calc(var(--dock-inline-left) + var(--space-1));right:calc(var(--dock-inline-right) + var(--space-1) + var(--panes-scrollbar-width, 0px));bottom:100%;background:var(--color-dock-panel-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-2xl);max-height:min(300px,50vh);display:flex;flex-direction:column;overflow:hidden;user-select:none}.dock-work-panel.panel-todos .dock-work-head[data-v-cd7c33c4],.dock-work-panel.panel-goal .dock-work-head[data-v-cd7c33c4],.dock-work-panel.panel-subagent .dock-work-head[data-v-cd7c33c4],.dock-work-panel.panel-bash .dock-work-head[data-v-cd7c33c4]{padding:var(--space-4) var(--space-4) 0;border-bottom:none}.dock-work-panel.panel-todos .dock-work-body[data-v-cd7c33c4],.dock-work-panel.panel-goal .dock-work-body[data-v-cd7c33c4],.dock-work-panel.panel-subagent .dock-work-body[data-v-cd7c33c4],.dock-work-panel.panel-bash .dock-work-body[data-v-cd7c33c4]{margin-top:var(--space-2);padding:0 var(--space-4) var(--space-4)}.dock-work-panel.panel-todos .dock-work-head[data-v-cd7c33c4],.dock-work-panel.panel-goal .dock-work-head[data-v-cd7c33c4],.dock-work-panel.panel-plan .dock-work-head[data-v-cd7c33c4],.dock-work-panel.panel-subagent .dock-work-head[data-v-cd7c33c4],.dock-work-panel.panel-bash .dock-work-head[data-v-cd7c33c4]{padding:var(--space-4) var(--space-4) 0;border-bottom:none}.dock-work-panel.panel-todos .dock-work-tab[data-v-cd7c33c4],.dock-work-panel.panel-goal .dock-work-tab[data-v-cd7c33c4],.dock-work-panel.panel-plan .dock-work-tab[data-v-cd7c33c4],.dock-work-panel.panel-subagent .dock-work-tab[data-v-cd7c33c4],.dock-work-panel.panel-bash .dock-work-tab[data-v-cd7c33c4]{padding:0;line-height:var(--leading-solid)}.dock-work-panel.panel-goal .gh-time[data-v-cd7c33c4]{color:var(--color-text-muted)}.dock-work-panel.panel-todos .dock-work-body[data-v-cd7c33c4],.dock-work-panel.panel-goal .dock-work-body[data-v-cd7c33c4],.dock-work-panel.panel-plan .dock-work-body[data-v-cd7c33c4],.dock-work-panel.panel-subagent .dock-work-body[data-v-cd7c33c4],.dock-work-panel.panel-bash .dock-work-body[data-v-cd7c33c4]{margin-top:var(--space-2);padding:0 var(--space-4) var(--space-4)}.dock-work-panel.panel-subagent[data-v-cd7c33c4],.dock-work-panel.panel-bash[data-v-cd7c33c4]{height:min(var(--p-dock-panel-h),50vh)}.dock-work-tab.tab-progress[data-v-cd7c33c4]{display:inline-flex;align-items:center;gap:var(--space-2)}@media(max-width:640px){.dock-work-panel.panel-subagent[data-v-cd7c33c4],.dock-work-panel.panel-bash[data-v-cd7c33c4]{height:auto}}.dock-work-head[data-v-cd7c33c4]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:var(--p-hairline) solid var(--color-line);position:relative;z-index:1}.dock-work-body[data-v-cd7c33c4]{padding:var(--space-2) var(--space-3);overflow-y:auto;min-height:0;display:flex;flex-direction:column}@media(max-width:480px){.dock-work-head[data-v-cd7c33c4]{flex-wrap:wrap}}.dock-work-panel.body-scrolled-up .dock-work-body[data-v-cd7c33c4]{mask-image:linear-gradient(to bottom,transparent,black var(--menu-scroll-fade))}.dock-work-body[data-v-cd7c33c4] .taskspane{border:none;background:transparent;padding:0}.dock-work-body[data-v-cd7c33c4] .taskspane .tp-head{display:none}.dock-workbar[data-v-cd7c33c4]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-1) calc(var(--dock-inline-right) + var(--space-4)) 0 calc(var(--dock-inline-left) + var(--space-4))}.dock-workbar[data-v-cd7c33c4]~.composer{padding-top:var(--space-1)}.dock-workbar[data-v-cd7c33c4] .ui-pill{position:relative;gap:var(--space-1-5);height:auto;padding:var(--space-1) var(--space-2);border:none;border-radius:var(--radius-dock-pill);background:var(--color-hover);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:round(calc(var(--text-base) * 1.42),1px)}.dock-workbar[data-v-cd7c33c4] .ui-pill svg{width:var(--p-ic-dock);height:var(--p-ic-dock);color:inherit}.dock-workbar[data-v-cd7c33c4] .ui-pill:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--color-hover);opacity:0;transition:opacity var(--duration-base) var(--ease-out);pointer-events:none}.dock-workbar[data-v-cd7c33c4] .ui-pill:hover:not(:disabled):after,.dock-workbar[data-v-cd7c33c4] .ui-pill.is-active:after{opacity:1}.chat-dock .dock-workbar[data-v-cd7c33c4] .ui-pill.pill-collapsed>span{display:none}.dock-workbar .dw-count[data-v-cd7c33c4]{color:var(--color-text-muted)}.dock-workbar .dw-running[data-v-cd7c33c4]{display:inline-flex;align-items:center;gap:var(--space-1-5);color:var(--color-text)}.dock-workbar .dw-goal-status--active[data-v-cd7c33c4]{color:var(--color-success)}.dock-workbar .dw-goal-status--paused[data-v-cd7c33c4]{color:var(--color-warning)}.dock-workbar .dw-goal-status--blocked[data-v-cd7c33c4]{color:var(--color-danger)}.dock-approval[data-v-cd7c33c4]{margin-top:8px}.chat-dock.has-approval[data-v-cd7c33c4],.chat-dock.has-question[data-v-cd7c33c4]{display:flex;flex-direction:column;max-height:calc(var(--app-height, 100dvh) - var(--dock-card-top-clearance))}.chat-dock.has-approval>.dock-workbar[data-v-cd7c33c4],.chat-dock.has-question>.dock-workbar[data-v-cd7c33c4]{flex:none}.chat-dock.has-approval>.dock-approval[data-v-cd7c33c4],.chat-dock.has-question>.dock-question[data-v-cd7c33c4]{min-height:0}@media(max-width:640px){.chat-dock[data-v-cd7c33c4]{--dock-inline-left: max(12px, var(--safe-left));--dock-inline-right: max(12px, var(--safe-right))}.dock-work-panel[data-v-cd7c33c4]{left:10px;right:calc(10px + var(--panes-scrollbar-width, 0px))}.dock-work-head-actions[data-v-cd7c33c4] .ui-seg__item{height:var(--touch-target-min)}.dock-work-head-actions[data-v-cd7c33c4] .ui-icon-button{width:var(--touch-target-min);height:var(--touch-target-min)}}.chat-dock[data-v-cd7c33c4]:not(.align-mobile) .composer{padding-bottom:14px}.dock-panel-enter-active[data-v-cd7c33c4]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.dock-panel-leave-active[data-v-cd7c33c4]{transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.dock-panel-enter-from[data-v-cd7c33c4],.dock-panel-leave-to[data-v-cd7c33c4]{opacity:0;transform:translateY(var(--motion-panel-shift)) scale(var(--motion-panel-scale))}.ws-home[data-v-854dbf11]{flex:none;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:0 var(--space-4) var(--space-4);user-select:none}.ws-home-title[data-v-854dbf11]{display:flex;align-items:center;gap:10px;color:var(--color-text);font-size:var(--ui-t1);font-weight:var(--weight-section-label)}.ws-home-folder[data-v-854dbf11]{color:var(--color-text-muted)}.ws-home-path[data-v-854dbf11]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wrs[data-v-f64d7218]{flex:none;display:flex;flex-direction:column;margin:var(--space-4) var(--dock-inline-right, 16px) 0 var(--dock-inline-left, 16px)}.wrs-caption[data-v-f64d7218]{padding:0 var(--space-2) var(--space-1);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-section-label);text-transform:uppercase;color:var(--faint);user-select:none}.wrs-row[data-v-f64d7218]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-width:0;padding:6px var(--space-2);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font-family:var(--font-ui);text-align:left;cursor:pointer}.wrs-row[data-v-f64d7218]:hover{background:var(--color-hover)}.wrs-row[data-v-f64d7218]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.wrs-ico[data-v-f64d7218]{display:inline-flex;flex:none}.wrs-ico--open[data-v-f64d7218]{color:var(--color-success)}.wrs-ico--done[data-v-f64d7218]{color:var(--color-done)}.wrs-title[data-v-f64d7218]{flex:1;min-width:0;font-size:var(--ui-font-size-sm);font-weight:var(--weight-caption);line-height:var(--leading-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wrs-time[data-v-f64d7218]{flex:none;color:var(--color-text-faint);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.wrs-foot[data-v-f64d7218]{display:flex;justify-content:center;margin-top:var(--space-2)}.wrs-more[data-v-f64d7218]{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.wrs-more[data-v-f64d7218]:hover{background:var(--color-hover);color:var(--color-text)}.wrs-more svg[data-v-f64d7218]{color:var(--color-text-faint)}.tsearch[data-v-bfda805f]{position:absolute;top:calc(var(--panel-head-h, 48px) + var(--space-3));right:var(--space-3);z-index:var(--z-sticky);width:min(var(--p-findbar-w),calc(100% - var(--space-3) * 2));background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-2xl);box-shadow:var(--shadow-menu);animation:kimi-card-in var(--duration-slow) var(--ease-out)}.tsearch.mobile[data-v-bfda805f]{top:var(--space-3)}.tsearch[data-v-bfda805f]:after{content:"";position:absolute;inset:0;border:inherit;border-color:var(--color-composer-focus-line);border-radius:var(--radius-2xl);opacity:0;pointer-events:none;transition:opacity var(--duration-slow) var(--ease-in-out)}.tsearch[data-v-bfda805f]:focus-within:after{opacity:1}.tsearch-main[data-v-bfda805f]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);min-height:calc(var(--space-8) + 2 * var(--space-1))}.tsearch-icon[data-v-bfda805f]{flex:none;margin-left:var(--space-1);color:var(--color-text-muted)}.tsearch-input[data-v-bfda805f]{flex:1;min-width:0;height:var(--space-8);padding:0;border:none;background:transparent;font-family:var(--font-ui);font-size:var(--ui-font-size);color:var(--color-text)}.tsearch-input[data-v-bfda805f]:focus-visible{outline:none}.tsearch-input[data-v-bfda805f]::placeholder{color:var(--color-text-muted)}.tsearch-spin[data-v-bfda805f]{display:inline-flex;flex:none}.tsearch-sep[data-v-bfda805f]{flex:none;width:var(--p-hairline);height:var(--space-4);background:var(--color-line)}.tsearch .tsearch-close[data-v-bfda805f]{border-radius:var(--radius-full)}.tsearch-foot-wrap[data-v-bfda805f]{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--duration-slow) var(--ease-out)}.tsearch-foot-wrap.open[data-v-bfda805f]{grid-template-rows:1fr}.tsearch-foot[data-v-bfda805f]{overflow:hidden;min-height:0;display:flex;align-items:center;gap:var(--space-1);padding:0 var(--space-2)}.tsearch-foot-wrap.open .tsearch-foot[data-v-bfda805f]{padding:var(--space-1) var(--space-2);border-top:var(--p-hairline) solid var(--color-line)}.tsearch-count[data-v-bfda805f]{margin-left:auto;padding-right:var(--space-1);font-size:var(--ui-font-size-sm);color:var(--color-text-muted);white-space:nowrap;user-select:none}.tsearch-rings[data-v-bfda805f]{position:absolute;inset:0;pointer-events:none}.tsearch-ring[data-v-bfda805f]{position:absolute;box-sizing:content-box;border:var(--p-findring-w) solid var(--color-warning);margin:calc(-1 * var(--p-findring-w));border-radius:var(--radius-xs);pointer-events:none}.con[data-v-7b455164]{--read-max: 760px;display:flex;flex-direction:column;min-width:0;height:100%;position:relative;container-type:inline-size}.empty-drag[data-v-7b455164]{position:absolute;top:0;left:0;right:0;height:var(--panel-head-h, 48px)}.empty-drag.macos-desktop[data-v-7b455164]{-webkit-app-region:drag}.empty-toggles[data-v-7b455164]{position:absolute;top:calc((var(--panel-head-h, 48px) - var(--icon-button-sm)) / 2);right:calc(var(--space-4) + var(--icon-button-sm) + var(--space-2));z-index:var(--z-sticky);-webkit-app-region:no-drag}.app.right-panel-open .empty-toggles[data-v-7b455164]{right:var(--space-4)}.panes[data-v-7b455164]{flex:1;min-height:0;overflow-y:auto;overflow-anchor:none;scrollbar-gutter:stable}.panes.history-fully-rendered[data-v-7b455164]:not(.is-following):not(.history-prepending):not(.is-pinned),.panes.history-fully-rendered[data-v-7b455164]:not(.is-following):not(.history-prepending):not(.is-pinned) .history-window,.panes.history-fully-rendered[data-v-7b455164]:not(.is-following):not(.history-prepending):not(.is-pinned) .history-row{overflow-anchor:auto}.panes[data-v-7b455164]::-webkit-scrollbar{width:var(--space-2)}.panes[data-v-7b455164]::-webkit-scrollbar-thumb{min-height:var(--space-6);border:var(--space-05) solid transparent;border-radius:var(--radius-full);background:transparent;background-clip:padding-box}.panes[data-v-7b455164]:hover::-webkit-scrollbar-thumb,.panes.scrolling[data-v-7b455164]::-webkit-scrollbar-thumb{background-color:var(--color-chat-scrollbar)}.panes[data-v-7b455164]::-webkit-scrollbar-thumb:hover,.panes[data-v-7b455164]::-webkit-scrollbar-thumb:active{background-color:var(--color-chat-scrollbar-hover)}.panes.session-settling[data-v-7b455164] .chat>*:not(.chat-loading){visibility:hidden}.chat-layout[data-v-7b455164]{display:flex;flex-direction:column;height:100%;min-height:0;position:relative}.chat-scroll[data-v-7b455164]{flex:1;min-height:0;position:relative}.content-wrap[data-v-7b455164]{width:100%;max-width:var(--read-max);min-height:100%;box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0}.content-wrap.align-center[data-v-7b455164]{margin-left:auto;margin-right:auto}.content-wrap.align-left[data-v-7b455164]{margin-left:0;margin-right:auto}.content-wrap.align-mobile[data-v-7b455164]{max-width:none}@media(max-width:640px){.con.mobile[data-v-7b455164]{min-width:0;overflow:hidden}.con.mobile .panes[data-v-7b455164]{scrollbar-gutter:auto;-webkit-overflow-scrolling:touch}.content-wrap.align-mobile[data-v-7b455164]{width:100%;min-width:0}}.empty-spacer[data-v-7b455164]{flex:1}.empty-tail[data-v-7b455164]{min-height:0;overflow-y:auto;padding-bottom:var(--space-4);box-sizing:border-box}.empty-hint[data-v-7b455164]{flex:none;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:0 16px 16px;color:var(--color-text);font-family:var(--font-ui);user-select:none}.empty-hint-title[data-v-7b455164]{font-size:calc(var(--ui-font-size) + 16px);font-optical-sizing:auto;font-weight:600}.empty-hint-title.is-starting[data-v-7b455164]{display:inline-flex;align-items:center;gap:9px;color:var(--dim);font-weight:400}.empty-logo[data-v-7b455164]{width:min(304px,62vw)}.empty-composer[data-v-7b455164]{padding-top:0}.empty-composer[data-v-7b455164] .composer-card{position:relative;z-index:var(--z-sticky)}.empty-composer[data-v-7b455164]:not(.expanded) .ph{min-height:3lh}.ws-pill-row[data-v-7b455164]{box-sizing:border-box;display:flex;align-items:flex-end;height:36px;padding:0 var(--dock-inline-right, 16px) 0 calc(var(--dock-inline-left, 16px) + var(--space-4));font-family:var(--font-ui)}.ws-mascot[data-v-7b455164]{flex:none;width:65px;height:36px;margin-left:auto;margin-right:var(--space-8)}.ws-anchor[data-v-7b455164]{position:relative;display:flex}.ws-chip[data-v-7b455164]{display:inline-flex;align-items:center;gap:6px;max-width:100%;height:28px;margin-bottom:4px;padding:0 var(--space-2);background:var(--color-selected);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:none;border-radius:10px;color:var(--color-text);font-family:inherit;font-size:var(--ui-font-size-sm);cursor:pointer;transition:color var(--duration-base) var(--ease-out)}.ws-chip[data-v-7b455164]:hover,.ws-chip.open[data-v-7b455164]{color:var(--color-text-strong)}.ws-chip[data-v-7b455164]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ws-chip>.kw-icon[data-v-7b455164]{flex:none}.ws-chip-name[data-v-7b455164]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--weight-option-label)}.ws-chip-chev[data-v-7b455164]{flex:none;transition:transform var(--duration-base) var(--ease-out)}.ws-chip.open .ws-chip-chev[data-v-7b455164]{transform:rotate(180deg)}.ws-backdrop[data-v-7b455164]{position:fixed;inset:0;z-index:var(--z-sticky)}.ws-panel[data-v-7b455164]{position:absolute;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);left:0;top:calc(100% + var(--space-1));z-index:var(--z-dropdown);width:max-content;min-width:max(calc(var(--space-8) * 8),100%);max-width:min(calc(var(--space-8) * 12),calc(100vw - var(--space-8)));max-height:calc(var(--space-8) * 10);overflow:hidden auto;background:var(--color-menu-bg);-webkit-backdrop-filter:var(--p-menu-backdrop);backdrop-filter:var(--p-menu-backdrop);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-1);animation:ws-pop-7b455164 var(--duration-base) var(--ease-out)}.ws-panel.up[data-v-7b455164]{top:auto;bottom:calc(100% + var(--space-1));animation-name:ws-pop-up-7b455164}@keyframes ws-pop-7b455164{0%{opacity:0;transform:translateY(calc(-1 * var(--space-1))) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ws-pop-up-7b455164{0%{opacity:0;transform:translateY(var(--space-1)) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.ws-caption[data-v-7b455164]{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-faint);user-select:none}.ws-row[data-v-7b455164]{display:flex;align-items:center;gap:var(--space-2);width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-dropdown-row);padding:var(--space-1) var(--space-2);cursor:pointer;font-family:var(--font-ui)}.ws-row>.kw-icon[data-v-7b455164]{flex:none;color:var(--muted)}.ws-row[data-v-7b455164]:hover{background:var(--color-hover)}.ws-row.on[data-v-7b455164]{background:var(--color-selected)}.ws-row[data-v-7b455164]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ws-info[data-v-7b455164]{flex:1;min-width:0;display:flex;flex-direction:column}.ws-name[data-v-7b455164]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);font-weight:var(--weight-option-label);color:var(--color-text);line-height:var(--leading-normal)}.ws-path[data-v-7b455164]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);font-weight:var(--weight-option-label);color:var(--muted);line-height:var(--leading-normal)}.ws-check[data-v-7b455164]{flex:none;margin-left:var(--space-3);color:var(--color-text)}.ws-divider[data-v-7b455164]{height:1px;margin:var(--space-1) var(--space-2);background:var(--line)}.ws-action[data-v-7b455164]{display:flex;align-items:center;gap:var(--space-2);width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-dropdown-row);padding:var(--space-2);cursor:pointer;font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--dim)}.ws-action>.kw-icon[data-v-7b455164]{flex:none;color:var(--muted)}.ws-action span[data-v-7b455164]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-action[data-v-7b455164]:hover{background:var(--color-hover);color:var(--color-text)}.ws-action:hover>.kw-icon[data-v-7b455164]{color:var(--dim)}.ws-action[data-v-7b455164]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.chat-scroll[data-v-7b455164]{display:flex;flex-direction:column}.mobile .panes[data-v-7b455164]:has(>.chat-layout){overflow:hidden;scrollbar-gutter:auto}.newmsg-pill[data-v-7b455164]{position:absolute;left:50%;bottom:12px;transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:var(--p-hairline) solid var(--line);background:var(--panel);color:var(--color-text);font-size:var(--text-xs);font-weight:var(--weight-ui-strong);cursor:pointer;box-shadow:var(--shadow-sm);z-index:var(--z-sticky)}.pill-chevron[data-v-7b455164]{width:12px;height:12px}.pill-enter-active[data-v-7b455164],.pill-leave-active[data-v-7b455164]{transition:opacity .2s ease,transform .2s ease}.pill-enter-from[data-v-7b455164],.pill-leave-to[data-v-7b455164]{opacity:0;transform:translate(-50%) translateY(8px)}.undo-toast[data-v-7b455164]{position:absolute;left:50%;top:60px;transform:translate(-50%);padding:8px 14px;border-radius:var(--radius-sm);background:var(--color-text);color:var(--bg);font-size:var(--ui-font-size-sm);z-index:var(--z-sticky);box-shadow:var(--shadow-sm)}.undo-toast-text[data-v-7b455164]{display:flex;align-items:center;gap:8px}.undo-toast-enter-active[data-v-7b455164],.undo-toast-leave-active[data-v-7b455164]{transition:opacity .15s ease,transform .15s ease}.undo-toast-enter-from[data-v-7b455164],.undo-toast-leave-to[data-v-7b455164]{opacity:0;transform:translate(-50%) translateY(-6px)}.con[data-v-7b455164]{background:var(--bg)}.newmsg-pill[data-v-7b455164]{font-family:var(--sans)}.panel-tab-bar[data-v-50039092]{position:relative;height:var(--panel-head-h);flex:none;display:flex;align-items:center;gap:var(--space-05);padding:0 var(--space-4) 0 var(--space-2);border-bottom:var(--p-hairline) solid var(--color-line)}.ptb-tabs[data-v-50039092]{position:relative;isolation:isolate;overflow-anchor:none;flex:1;min-width:0;height:100%;display:flex;align-items:center;gap:var(--space-05);overflow-x:auto;scrollbar-width:none}.ptb-tabs[data-v-50039092]::-webkit-scrollbar{display:none}.ptb-drag-fill[data-v-50039092]{flex:1;min-width:0;align-self:stretch}.ptb-tab[data-v-50039092]{position:relative;display:flex;align-items:center;gap:var(--space-1-5);height:var(--panel-tab-h);padding:0 var(--space-1-5) 0 var(--panel-tab-pad-x);max-width:var(--panel-tab-max-w);min-width:0;flex:none;border-radius:var(--radius-md);background:var(--color-hover);color:var(--color-text-muted);transition:background var(--duration-fast) var(--ease-out)}.ptb-tab[data-v-50039092]:hover{background:var(--color-selected);color:var(--color-text)}.ptb-tab.on[data-v-50039092]{background:var(--panel-tab-selected-bg);color:var(--color-text)}.ptb-tab.on .ptb-tab-main[data-v-50039092]{font-weight:var(--weight-medium)}.ptb-tab-main[data-v-50039092]{display:flex;align-items:center;gap:var(--space-1-5);flex:1;min-width:0;height:100%;padding:0;border:none;background:none;color:inherit;font-family:var(--font-ui);font-size:var(--text-sm);white-space:nowrap;user-select:none;cursor:pointer}.ptb-tabs.is-reordering .ptb-tab[data-v-50039092]{transition:transform var(--duration-fast) var(--ease-in-out),background var(--duration-fast) var(--ease-out)}.ptb-tabs.is-reordering .ptb-tab.is-dragging[data-v-50039092]{z-index:var(--z-dropdown);background:var(--color-selected-hover);transition:none}.ptb-drop-indicator[data-v-50039092]{position:absolute;top:50%;width:var(--space-05);height:var(--panel-tab-h);border-radius:var(--radius-full);background:var(--color-text-muted);transform:translate(-50%,-50%);transition:left var(--duration-fast) var(--ease-in-out);z-index:var(--z-sticky);pointer-events:none}.ptb-tab.is-dragging .ptb-tab-main[data-v-50039092]{cursor:grabbing}.ptb-tab-main[data-v-50039092]{touch-action:pan-x}.ptb-tab-main[data-v-50039092]:focus-visible{outline:none;border-radius:var(--radius-xs);box-shadow:var(--p-focus-ring)}.ptb-x[data-v-50039092]{width:var(--panel-tab-x-size);height:var(--panel-tab-x-size);flex:none;padding:0;border:none;border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;background:none;color:var(--color-text-faint);cursor:pointer}.ptb-x[data-v-50039092]:hover{background:var(--color-well);color:var(--color-text)}.ptb-x[data-v-50039092]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.ptb-tail[data-v-50039092]{flex:none;display:flex;align-items:center;gap:var(--space-05);padding-left:var(--space-1)}.panel-add-menu[data-v-50039092]{position:absolute;top:calc(var(--panel-head-h) - var(--space-1-5));right:var(--space-4);z-index:var(--z-dropdown)}.app:not(.mobile) .panel-add-menu[data-v-50039092]{right:var(--panel-head-inset)}@media(hover:none),(max-width:640px){.ptb-x[data-v-50039092],.ptb-tail[data-v-50039092] .ui-icon-button{position:relative}.ptb-x[data-v-50039092]:after{content:"";position:absolute;inset:calc(-1 * (var(--touch-target-min) - var(--panel-tab-x-size)) / 2)}.ptb-tail[data-v-50039092] .ui-icon-button:after{content:"";position:absolute;inset:calc(-1 * (var(--touch-target-min) - var(--icon-button-sm)) / 2)}}.pl[data-v-523a11d4]{display:flex;flex-direction:column;justify-content:center;gap:var(--space-3);height:100%;box-sizing:border-box;width:min(var(--panel-launcher-w),100%);margin-inline:auto;padding:var(--space-2) 0}.global-preview[data-v-a8ff4ad0]{--preview-w: var(--panel-default-w);grid-column:4;grid-row:1 / -1;min-width:0;min-height:0;width:0;background:var(--bg);overflow:hidden;position:relative}.global-preview.sliding[data-v-a8ff4ad0]{transition:width var(--duration-slow) var(--ease-in-out)}.global-preview.open[data-v-a8ff4ad0]{width:var(--preview-w)}.global-preview.expanded[data-v-a8ff4ad0]{width:auto}.global-preview.mobile[data-v-a8ff4ad0]{position:fixed;inset:0;z-index:var(--z-sticky);width:auto;transition:none;border-top:var(--p-hairline) solid var(--color-text)}.panel-resize[data-v-a8ff4ad0]{position:absolute;left:var(--space-05);top:0;bottom:0}.pt-shell[data-v-a8ff4ad0]{display:flex;flex-direction:column;height:100%;box-sizing:border-box;position:relative}.global-preview:not(.mobile) .pt-shell[data-v-a8ff4ad0]{width:var(--preview-w);border-left:var(--p-hairline) solid var(--line)}.global-preview:not(.mobile).expanded .pt-shell[data-v-a8ff4ad0]{width:auto;border-left:none}.pt-body[data-v-a8ff4ad0]{flex:1;min-height:0}.pfc-host[data-v-a8ff4ad0]{position:absolute;left:0;right:0;bottom:0;z-index:var(--z-sticky);width:100%;max-width:var(--p-content-max);margin:0 auto;box-sizing:border-box;padding:0 var(--space-4) var(--space-4)}.pfc-host[data-v-a8ff4ad0]:empty{padding:0}.pt-body[data-v-a8ff4ad0]>*{height:100%;box-sizing:border-box}.session-admin[data-v-cce10226]{display:flex;flex-direction:column;min-width:0;height:100%;background:var(--color-bg);font-family:var(--font-ui)}.sa-scroll[data-v-cce10226]{flex:1;min-height:0;overflow-y:auto}.sa-page[data-v-cce10226]{padding:var(--space-8) var(--space-6);display:flex;flex-direction:column;box-sizing:border-box}.sa-head[data-v-cce10226]{flex:none;display:flex;align-items:center;gap:var(--space-2);height:48px;padding:0 var(--space-6);border-bottom:var(--p-hairline) solid var(--color-line);box-sizing:border-box}.sa-title[data-v-cce10226]{margin:0;font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-text);user-select:none}.sa-subtitle[data-v-cce10226]{margin:0 0 var(--space-3);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-muted)}.session-admin.macos-desktop .sa-head[data-v-cce10226]{-webkit-app-region:drag}.session-admin.macos-desktop .sa-head button[data-v-cce10226],.session-admin.macos-desktop .sa-head input[data-v-cce10226]{-webkit-app-region:no-drag}.sa-filters[data-v-cce10226]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.sa-f-label[data-v-cce10226]{margin-left:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);user-select:none}.sa-f-label[data-v-cce10226]:first-child{margin-left:0}.sa-f-actions[data-v-cce10226]{display:inline-flex;align-items:center;gap:var(--space-2);margin-left:var(--space-2)}.brand-logo[data-v-30c3cc0b]{display:block;flex:none;cursor:pointer;user-select:none;touch-action:manipulation}.nb-cards[data-v-8619ed6e]{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2) 0 var(--space-4)}.nb-domain[data-v-8619ed6e]{font-weight:var(--weight-semibold)}.center-body[data-v-8619ed6e]{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) 0 var(--space-4);text-align:center}.center-text[data-v-8619ed6e]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.success-text[data-v-8619ed6e]{color:var(--color-success)}.err-text[data-v-8619ed6e]{color:var(--color-danger)}.warn-text[data-v-8619ed6e]{color:var(--color-warning);font-size:var(--text-base)}.center-hint[data-v-8619ed6e]{font-size:var(--text-sm);color:var(--color-text-muted)}.nb[data-v-8619ed6e]{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-2) 0 var(--space-4)}.nb-hero[data-v-8619ed6e]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.nb-hero-icon[data-v-8619ed6e]{display:inline-flex;margin-bottom:var(--space-1)}.nb-hero-title[data-v-8619ed6e]{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.nb-hero-hint[data-v-8619ed6e]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal);font-variant-numeric:tabular-nums}.nb-manual[data-v-8619ed6e]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.nb-manual-label[data-v-8619ed6e]{font-size:var(--text-xs);color:var(--color-text-faint)}.nb-copy-text[data-v-8619ed6e]{margin-left:var(--space-2)}.nb-copy-text.is-copied[data-v-8619ed6e]{color:var(--color-success);text-decoration:none}.nb-or[data-v-8619ed6e]{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.06em}.nb-or[data-v-8619ed6e]:before,.nb-or[data-v-8619ed6e]:after{content:"";flex:1;height:1px;background:var(--color-line)}.nb-fallback[data-v-8619ed6e]{display:flex;flex-direction:column;gap:var(--space-2)}.nb-fb-text[data-v-8619ed6e]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal)}.nb-fb-link[data-v-8619ed6e]{color:var(--color-accent);text-decoration:none;border-bottom:var(--p-hairline) solid var(--color-accent-bd)}.nb-fb-link[data-v-8619ed6e]:hover{border-bottom-color:var(--color-accent)}.nb-code-row[data-v-8619ed6e]{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface-sunken);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.nb-code[data-v-8619ed6e]{flex:1;font-family:var(--font-mono);font-size:var(--text-xl);font-weight:var(--weight-medium);color:var(--color-text);letter-spacing:.14em}.nb-copy.is-copied[data-v-8619ed6e]{color:var(--color-success);border-color:var(--color-success-bd)}.actions[data-v-8619ed6e]{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4)}@media(max-width:640px){.center-body[data-v-8619ed6e],.nb[data-v-8619ed6e]{overflow-y:auto;-webkit-overflow-scrolling:touch}.nb-code-row[data-v-8619ed6e],.actions[data-v-8619ed6e]{flex-wrap:wrap}.nb-code[data-v-8619ed6e]{min-width:0;overflow-wrap:anywhere;letter-spacing:.08em}.nb-copy[data-v-8619ed6e]{min-height:34px}}.sec[data-v-b8472602]{margin-bottom:var(--space-5)}.sec-title[data-v-b8472602]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);margin:0 0 var(--space-3)}.pu-group[data-v-b8472602]{overflow:hidden;border-radius:var(--radius-xl);background:var(--color-surface)}.pu-row[data-v-b8472602]{display:flex;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-3) var(--space-4);border-top:var(--p-hairline) solid var(--color-line)}.pu-row[data-v-b8472602]:first-child{border-top:none}.pu-state[data-v-b8472602]{color:var(--color-text-muted);font-size:var(--text-sm)}.pu-error-text[data-v-b8472602]{flex:1;min-width:0}.pu-empty[data-v-b8472602]{color:var(--color-text-faint)}.pu-main[data-v-b8472602]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.pu-label[data-v-b8472602]{font-size:var(--text-sm);color:var(--color-text)}.pu-hint[data-v-b8472602]{font-size:var(--text-xs);color:var(--color-text-faint)}.pu-legend[data-v-b8472602]{display:flex;align-items:center;gap:var(--space-3)}.pu-legend-item[data-v-b8472602]{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--color-text-faint)}.pu-swatch[data-v-b8472602]{width:8px;height:8px;border-radius:2px}.pu-swatch-blue[data-v-b8472602]{background:var(--blue)}.pu-swatch-text[data-v-b8472602]{background:var(--color-text)}.pu-meter-stacked[data-v-b8472602]{display:flex}.pu-meter.pu-meter-stacked i[data-v-b8472602]{border-radius:0}.pu-meter.pu-meter-stacked i.seg-kimi[data-v-b8472602]{background:var(--color-text)}.pu-meter.pu-meter-stacked i.seg-kimi.seg-tip[data-v-b8472602]{border-radius:0 var(--radius-full) var(--radius-full) 0}.pu-meter.pu-meter-stacked i.seg-code[data-v-b8472602]{background:var(--blue);border-radius:0 var(--radius-full) var(--radius-full) 0}.pu-value[data-v-b8472602]{flex:none;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap}.pu-value-sub[data-v-b8472602]{font-weight:var(--weight-regular);color:var(--color-text-faint)}.pu-meter[data-v-b8472602]{flex:none;width:120px;height:5px;border-radius:var(--radius-full);background:var(--color-line);overflow:hidden}.pu-meter i[data-v-b8472602]{display:block;height:100%;border-radius:var(--radius-full);background:var(--color-accent);transition:width var(--duration-base) var(--ease-out)}.sd[data-v-c42be927]{display:grid;grid-template-columns:184px 1fr;grid-template-areas:"tabs region";min-height:0;height:100%;user-select:none}.sd[data-v-c42be927] :is(input,textarea,[contenteditable=true]){user-select:text}.settings-region[data-v-c42be927]{display:flex;min-width:0;min-height:0;flex-direction:column;grid-area:region}.settings-region-header[data-v-c42be927],.settings-tabs-header[data-v-c42be927]{display:flex;align-items:center;height:calc(var(--space-4) + var(--icon-button-sm) + var(--space-2));box-sizing:border-box}.settings-region-header[data-v-c42be927]{justify-content:flex-end;padding-right:var(--space-5)}.settings-tabs-header[data-v-c42be927]{padding-inline:var(--space-3)}.settings-dialog-title[data-v-c42be927]{margin:0;font-family:var(--font-ui);font-size:var(--text-lg);font-weight:var(--weight-medium);line-height:var(--leading-tight);color:var(--color-text)}.settings-tabs[data-v-c42be927]{display:flex;flex-direction:column;width:184px;padding:0 var(--space-2) var(--space-2);gap:2px;overflow-y:auto;border-right:var(--p-hairline) solid var(--color-line);grid-area:tabs}.settings-tab-list[data-v-c42be927]{display:flex;flex-direction:column;gap:2px}.tab[data-v-c42be927]{display:flex;align-items:center;gap:var(--space-2);text-align:left;padding:8px 10px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-ui-strong);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.tab[data-v-c42be927]:hover{background:var(--color-hover);color:var(--color-text-strong)}.tab.on[data-v-c42be927]{background:var(--color-hover);color:var(--color-text)}.tab[data-v-c42be927]:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.body[data-v-c42be927]{display:flex;flex-direction:column;overflow-y:auto;padding:var(--space-2) 32px var(--space-5);flex:1;min-width:0}.body[data-v-c42be927]::-webkit-scrollbar{width:4px}.body[data-v-c42be927]::-webkit-scrollbar-track{background:transparent}.body[data-v-c42be927]::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--radius-full);transition:background var(--duration-base) var(--ease-out)}.body.scrolling[data-v-c42be927]::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-text) 12%,transparent)}.body.scrolling[data-v-c42be927]::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-text) 25%,transparent)}.panel[data-v-c42be927]{display:block}.sec[data-v-c42be927]{padding:var(--space-4) 0}.panel>.sec[data-v-c42be927]:first-child{padding-top:0}.sec-head[data-v-c42be927]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.sec-title[data-v-c42be927]{margin:0 0 var(--space-3);font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);letter-spacing:0;color:var(--color-text)}.notification-settings[data-v-c42be927]{user-select:none}.sec-head .sec-title[data-v-c42be927]{margin-bottom:0}.row[data-v-c42be927]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:38px;padding:var(--space-1) 0}.settings-group[data-v-c42be927]{overflow:hidden;border-radius:var(--radius-xl);background:var(--color-surface)}.settings-group>.row[data-v-c42be927]{min-height:52px;padding:var(--space-4);border-top:var(--p-hairline) solid var(--color-line)}.settings-group>.row[data-v-c42be927]:first-child{border-top:none}.settings-group>.empty-config[data-v-c42be927]{padding:var(--space-3)}.account-row[data-v-c42be927]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4)}.account-avatar[data-v-c42be927]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--color-surface-sunken);color:var(--color-text-muted)}.account-avatar img[data-v-c42be927]{width:100%;height:100%;border-radius:50%;object-fit:cover}.account-name-row[data-v-c42be927]{display:flex;align-items:center;gap:var(--space-2);min-width:0}.account-level[data-v-c42be927]{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.account-meta[data-v-c42be927]{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.account-name[data-v-c42be927]{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-sub[data-v-c42be927]{font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rlabel[data-v-c42be927]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text);font-weight:var(--weight-option-label);display:flex;flex-direction:column;gap:var(--space-05)}.rvalue[data-v-c42be927]{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-muted);max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rvalue.mono[data-v-c42be927]{font-family:var(--font-mono);font-size:var(--text-xs)}.rvalue-wrap[data-v-c42be927]{display:flex;align-items:center;gap:var(--space-1);max-width:60%;min-width:0}.rvalue-wrap .rvalue[data-v-c42be927]{max-width:none}.sd-check[data-v-c42be927]{color:var(--color-success)}.hint[data-v-c42be927]{font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--color-text-faint)}.body[data-v-c42be927] .ui-seg,.body[data-v-c42be927] .ui-select__trigger,.body[data-v-c42be927] .ui-button,.archive-search[data-v-c42be927]{border-width:var(--p-hairline)}.select-wrap[data-v-c42be927]{min-width:220px;max-width:min(320px,50vw);flex:none}.empty-config[data-v-c42be927]{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-muted);padding:var(--space-1) 0}@media(max-width:640px){.sd[data-v-c42be927]{grid-template-columns:1fr;grid-template-rows:auto 1fr;grid-template-areas:"tabs" "region"}.settings-tabs[data-v-c42be927]{width:auto;padding:0;overflow-x:visible;border-right:none;border-bottom:var(--p-hairline) solid var(--color-line)}.settings-tabs-header[data-v-c42be927]{padding:var(--space-3)}.settings-tab-list[data-v-c42be927]{flex-direction:row;gap:var(--space-1);overflow-x:auto;padding:0 var(--space-3) var(--space-2)}.settings-region-header[data-v-c42be927]{padding:var(--space-3)}.body[data-v-c42be927]{padding-inline:var(--space-3)}.tab[data-v-c42be927]{white-space:nowrap;flex:none}.row[data-v-c42be927]{align-items:flex-start;flex-direction:column}.settings-group[data-v-c42be927]{margin-inline:0}.select-wrap[data-v-c42be927]{width:100%;max-width:none}}.setting-card[data-v-c42be927]{border-radius:var(--radius-xl);overflow:hidden;background:var(--color-surface)}.panel-head[data-v-c42be927]{margin-bottom:var(--space-4)}.panel-title[data-v-c42be927]{margin:0 0 var(--space-2);font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);letter-spacing:0;color:var(--color-text)}.panel-desc[data-v-c42be927]{margin:0;font-family:var(--font-ui);font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--color-text-muted);max-width:560px}.archive-toolbar[data-v-c42be927]{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.archive-search[data-v-c42be927]{flex:1;min-width:200px;height:36px;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-md);border:var(--p-hairline) solid var(--color-line);color:var(--color-text-faint);font-size:var(--text-xs);background:var(--color-surface-overlay);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.archive-search[data-v-c42be927]:focus-within{border-color:var(--color-accent);box-shadow:var(--p-focus-ring);color:var(--color-text-muted)}.archive-search svg[data-v-c42be927]{width:15px;height:15px;flex:none}.archive-search input[data-v-c42be927]{width:100%;border:none;outline:none;background:transparent;font:inherit;color:var(--color-text)}.archive-list[data-v-c42be927]{display:flex;flex-direction:column;gap:var(--space-4)}.archive-card .setting-card[data-v-c42be927]{margin-bottom:0}.archive-workspace[data-v-c42be927]{display:flex;align-items:center;gap:var(--space-2);margin:0 2px var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium)}.archive-workspace svg[data-v-c42be927]{width:16px;height:16px;color:var(--color-text-faint);flex:none}.archive-workspace .path[data-v-c42be927]{font-family:var(--font-ui);font-size:var(--text-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-workspace .count[data-v-c42be927]{margin-left:auto;color:var(--color-text-faint);font-weight:var(--weight-medium);font-size:var(--text-xs);flex:none}.archive-row[data-v-c42be927]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);border-top:var(--p-hairline) solid var(--color-line)}.archive-row[data-v-c42be927]:first-child{border-top:none}.archive-row[data-v-c42be927]:hover{background:var(--color-hover)}.archive-meta[data-v-c42be927]{min-width:0}.archive-name[data-v-c42be927]{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-time[data-v-c42be927]{margin-top:2px;font-size:var(--text-xs);color:var(--color-text-faint);font-family:var(--font-ui)}.archive-draining[data-v-c42be927]{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-accent-soft);color:var(--color-accent-hover);font-size:var(--text-xs)}.archive-empty[data-v-c42be927]{padding:var(--space-6) var(--space-4);border-radius:var(--radius-xl);color:var(--color-text-faint);font-size:var(--text-xs);text-align:center;background:var(--color-surface)}@media(max-width:640px){.archive-toolbar[data-v-c42be927]{flex-direction:column;align-items:stretch}.archive-search[data-v-c42be927]{min-width:0}}[data-v-c42be927] .ui-dialog{width:min(980px,96vw)}[data-v-c42be927] .ui-dialog--fixed-height{height:min(780px,calc(var(--app-height, 100vh) - var(--space-8) * 2))}.actions[data-v-2f3f7fe4]{padding:0 var(--space-2) var(--space-2);border-bottom:var(--p-hairline) solid var(--color-line);margin-bottom:var(--space-1)}.newrow[data-v-2f3f7fe4]{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-2);background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--sans);font-weight:var(--weight-regular);font-size:var(--ui-font-size);cursor:pointer;text-align:left}.newrow[data-v-2f3f7fe4]:hover{background:var(--color-hover)}.newrow[data-v-2f3f7fe4]:active{background:var(--color-surface-sunken);color:var(--color-text)}.view-tabs[data-v-2f3f7fe4]{padding:var(--space-1) var(--space-2) var(--space-2)}.view-tabs[data-v-2f3f7fe4] .ui-seg{display:flex;width:100%}.view-tabs[data-v-2f3f7fe4] .ui-seg__item{flex:1;justify-content:center}.mlist[data-v-2f3f7fe4]{--m-pad: 16px;--m-gutter: 15px;--m-gap: 8px;--m-indent: calc(var(--m-pad) + var(--m-gutter) + var(--m-gap));padding-bottom:var(--space-1)}.mempty[data-v-2f3f7fe4]{padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-text-faint);font-size:var(--ui-font-size)}.mempty.small[data-v-2f3f7fe4]{padding:10px 16px 12px var(--m-indent);text-align:left;font-size:var(--ui-font-size-xs)}.mgroup[data-v-2f3f7fe4]{padding-top:var(--space-2)}.mgh[data-v-2f3f7fe4]{display:flex;align-items:center;gap:var(--m-gap);min-height:44px;margin:0 var(--space-2);padding:0 calc(var(--m-pad) - var(--space-2));border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.mgh[data-v-2f3f7fe4]:hover{background:var(--color-hover)}.mgh[data-v-2f3f7fe4]:active{background:var(--color-surface-sunken)}.mgh-folder[data-v-2f3f7fe4]{flex:none;color:var(--color-text-muted)}.mgh-name[data-v-2f3f7fe4]{flex:none;max-width:50%;font-size:var(--ui-font-size-sm);font-weight:var(--weight-medium);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mgh-path[data-v-2f3f7fe4]{flex:1;min-width:0;font-size:var(--text-xs);color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mgh-more[data-v-2f3f7fe4]{margin:0 calc(-1 * var(--space-2))}.mgh-add[data-v-2f3f7fe4]{margin:0 calc(-1 * var(--space-2)) 0 0}.mgh-add[data-v-2f3f7fe4]:active,.mgh-more[data-v-2f3f7fe4]:active{color:var(--color-text);background:var(--color-hover)}.srow[data-v-2f3f7fe4]{display:flex;align-items:center;gap:var(--space-2);min-height:44px;margin:1px var(--space-2);padding:0 calc(var(--m-pad) - var(--space-2)) 0 calc(var(--m-indent) - var(--space-2));border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.srow[data-v-2f3f7fe4]:hover{background:var(--color-hover)}.srow[data-v-2f3f7fe4]:active{background:var(--color-surface-sunken)}.srow.cur[data-v-2f3f7fe4]{background:var(--color-accent-soft);box-shadow:inset 0 0 0 1px var(--color-accent-bd)}.srow .t[data-v-2f3f7fe4]{flex:1;min-width:0;font-size:var(--ui-font-size-sm);font-weight:var(--weight-caption);line-height:var(--leading-tight);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.srow.cur .t[data-v-2f3f7fe4]{color:var(--color-accent-hover)}.srow .t.run[data-v-2f3f7fe4]{position:relative}.srow .t.run[data-v-2f3f7fe4]:before{content:"";position:absolute;left:-14px;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:var(--radius-full);background:var(--color-accent);animation:mRunPulse-2f3f7fe4 1.4s ease-in-out infinite}@keyframes mRunPulse-2f3f7fe4{0%,to{opacity:1}50%{opacity:.35}}.srow .t.aborted[data-v-2f3f7fe4]{position:relative}.srow .t.aborted[data-v-2f3f7fe4]:before{content:"";position:absolute;left:-14px;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:var(--radius-full);background:var(--color-danger)}.srow .time[data-v-2f3f7fe4]{flex:none;font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--color-text-faint)}.att[data-v-2f3f7fe4]{flex:none;font-family:var(--font-mono);font-size:max(9px,calc(var(--ui-font-size) - 4px));color:var(--color-text-on-accent);background:var(--color-warning);border-radius:var(--radius-full);padding:1px 7px}.srow .kb[data-v-2f3f7fe4]{flex:none;margin:0 calc(-1 * var(--space-2)) 0 0}.srow .kb[data-v-2f3f7fe4]:active{color:var(--color-text);background:var(--color-hover)}.srow-flat[data-v-2f3f7fe4]{min-height:52px}.srow-main[data-v-2f3f7fe4]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.srow-main .t[data-v-2f3f7fe4]{flex:none}.srow-sub[data-v-2f3f7fe4]{font-size:var(--text-xs);color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kmenu[data-v-2f3f7fe4]{position:absolute;right:12px;top:44px;z-index:var(--z-dropdown);min-width:96px;overflow:hidden}.wsmenu[data-v-2f3f7fe4]{top:calc(100% - 4px);right:var(--m-pad);min-width:132px}.mshow-more-row[data-v-2f3f7fe4]{display:flex;align-items:center;padding-left:calc(var(--m-indent) - var(--space-3))}.mshow-more[data-v-2f3f7fe4]{display:flex;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-1) var(--space-3);background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--ui-font-size);cursor:pointer;text-align:left}.mshow-more[data-v-2f3f7fe4]:active{color:var(--color-accent-hover);background:var(--color-hover)}.mshow-more-sep[data-v-2f3f7fe4]{margin:0 var(--space-1);color:var(--color-text-faint);user-select:none}.group-title[data-v-e2282b39]{padding:var(--space-4) max(var(--space-4),var(--safe-right)) var(--space-2) max(var(--space-4),var(--safe-left));font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.group-title[data-v-e2282b39]:first-child{padding-top:0}.card[data-v-e2282b39]{margin:0 max(var(--space-4),var(--safe-right)) 0 max(var(--space-4),var(--safe-left));background:var(--color-surface);border-radius:var(--radius-xl);overflow:hidden}.card>.srow[data-v-e2282b39]{border-radius:0}.card>.srow+.srow[data-v-e2282b39]{border-top:var(--p-hairline) solid var(--color-line)}.srow[data-v-e2282b39]:disabled{opacity:.5;cursor:not-allowed}.srow[data-v-e2282b39]{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:52px;padding:var(--space-3) var(--space-4);background:none;border:none;border-radius:var(--radius-md);cursor:pointer;text-align:left;color:var(--color-text)}.srow[data-v-e2282b39]:hover:not(.read-only){background:var(--color-hover)}.srow[data-v-e2282b39]:active:not(.read-only){background:var(--color-surface-sunken)}.srow.read-only[data-v-e2282b39]{cursor:default}.srow-main[data-v-e2282b39]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.srow-label[data-v-e2282b39]{font-size:var(--text-base);color:var(--color-text)}.srow-sub[data-v-e2282b39]{font-size:var(--text-base);color:var(--color-text-faint);overflow-wrap:anywhere}.back-row[data-v-e2282b39]{min-height:var(--touch-target-min);color:var(--color-text-muted)}.back-row[data-v-e2282b39]:hover{color:var(--color-text)}.providers-page[data-v-e2282b39]{margin:0 max(var(--space-4),var(--safe-right)) 0 max(var(--space-4),var(--safe-left))}.providers-page[data-v-e2282b39] .pp-title{display:none}.srow-val[data-v-e2282b39]{flex:none;font-family:var(--font-mono);font-size:var(--ui-font-size);font-weight:500;color:var(--color-accent-hover)}.srow-val.dim[data-v-e2282b39]{font-weight:400;color:var(--color-text-muted)}.cache-note[data-v-e2282b39]{padding:var(--space-1) max(var(--space-4),var(--safe-right)) 0 max(var(--space-4),var(--safe-left));font-size:var(--text-xs);color:var(--color-text-faint);line-height:1.4}.chev[data-v-e2282b39]{flex:none;color:var(--color-text-faint);font-size:17px;line-height:1}.toggle[data-v-e2282b39]{flex:none;width:44px;height:26px;border-radius:var(--radius-full);background:var(--color-line);position:relative;transition:background .18s}.toggle.on[data-v-e2282b39]{background:var(--color-accent)}.toggle[data-v-e2282b39]:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:var(--radius-full);box-sizing:border-box;background:var(--color-bg);border:var(--p-hairline) solid var(--color-line);box-shadow:var(--shadow-xs);transition:left .18s}.toggle.on[data-v-e2282b39]:after{left:21px}.srow.pref[data-v-e2282b39]{flex-wrap:wrap;cursor:default}.srow.pref .srow-main[data-v-e2282b39]{flex:1 0 100%}.srow.acct.in .srow-label[data-v-e2282b39]{color:var(--color-accent-hover);font-weight:500}.srow.acct.out .srow-label[data-v-e2282b39]{color:var(--color-danger)}.acct-avatar[data-v-e2282b39]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--color-surface-sunken);color:var(--color-text-muted)}.acct-avatar img[data-v-e2282b39]{width:100%;height:100%;border-radius:50%;object-fit:cover}.acct-name-row[data-v-e2282b39]{display:flex;align-items:center;gap:var(--space-2);min-width:0}.acct-name-row .srow-label[data-v-e2282b39]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct-level[data-v-e2282b39]{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.usage[data-v-e2282b39]{margin:var(--space-4) max(var(--space-4),var(--safe-right)) 0 max(var(--space-4),var(--safe-left))}.usage[data-v-e2282b39] .sec{margin-bottom:0}.ctx-meter[data-v-e2282b39]{flex:none;width:96px;height:5px;border-radius:var(--radius-full);background:var(--color-line);overflow:hidden}.ctx-meter i[data-v-e2282b39]{display:block;height:100%;border-radius:var(--radius-full);background:var(--color-accent)}.srow[data-v-e2282b39],.srow-sub[data-v-e2282b39],.srow-val[data-v-e2282b39],.cache-note[data-v-e2282b39]{font-family:var(--sans)}.ls-cards[data-v-d9952983]{display:flex;flex-direction:column;gap:var(--space-3)}.ls-card-icon[data-v-d9952983]{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--color-text-muted)}.ls-card-text[data-v-d9952983]{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.ls-card-title[data-v-d9952983]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.ls-card-hint[data-v-d9952983]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal)}.ls-done-card[data-v-d9952983]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-success-bd);border-radius:var(--radius-lg)}.ls-done-badge[data-v-d9952983]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-full);background:var(--color-success-soft);color:var(--color-success);flex:none}.ls-flow[data-v-d9952983]{display:flex;flex-direction:column;gap:var(--space-4)}.ls-center[data-v-d9952983]{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6) 0 var(--space-2);text-align:center}.ls-center-text[data-v-d9952983]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.ls-success-text[data-v-d9952983]{color:var(--color-success)}.ls-err-text[data-v-d9952983]{color:var(--color-danger)}.ls-warn-text[data-v-d9952983]{color:var(--color-warning)}.ls-center-hint[data-v-d9952983]{font-size:var(--text-sm);color:var(--color-text-muted)}.ls-device[data-v-d9952983]{display:flex;flex-direction:column;gap:var(--space-4)}.ls-hero[data-v-d9952983]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.ls-hero-icon[data-v-d9952983]{display:inline-flex;margin-bottom:var(--space-1)}.ls-hero-title[data-v-d9952983]{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.ls-hero-hint[data-v-d9952983]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal);font-variant-numeric:tabular-nums}.ls-manual[data-v-d9952983]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.ls-manual-label[data-v-d9952983]{font-size:var(--text-xs);color:var(--color-text-faint)}.ls-copy-text[data-v-d9952983]{margin-left:var(--space-2)}.ls-copy-text.is-copied[data-v-d9952983]{color:var(--color-success);text-decoration:none}.ls-or[data-v-d9952983]{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.06em}.ls-or[data-v-d9952983]:before,.ls-or[data-v-d9952983]:after{content:"";flex:1;height:1px;background:var(--color-line)}.ls-fb-text[data-v-d9952983]{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-normal)}.ls-fb-link[data-v-d9952983]{color:var(--color-accent);text-decoration:none;border-bottom:var(--p-hairline) solid var(--color-accent-bd)}.ls-fb-link[data-v-d9952983]:hover{border-bottom-color:var(--color-accent)}.ls-code-row[data-v-d9952983]{display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface-sunken);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.ls-code[data-v-d9952983]{flex:1;font-family:var(--font-mono);font-size:var(--text-xl);font-weight:var(--weight-medium);color:var(--color-text);letter-spacing:.14em}.ls-copy.is-copied[data-v-d9952983]{color:var(--color-success);border-color:var(--color-success-bd)}.ls-actions[data-v-d9952983]{display:flex;justify-content:flex-end;gap:var(--space-3)}@media(max-width:640px){.ls-code-row[data-v-d9952983],.ls-actions[data-v-d9952983]{flex-wrap:wrap}.ls-code[data-v-d9952983]{min-width:0;overflow-wrap:anywhere;letter-spacing:.08em}}.wizard[data-v-bca85321]{position:fixed;inset:0;z-index:var(--z-modal);display:flex;flex-direction:column;background:var(--color-bg);color:var(--color-text);overflow-y:auto;font-family:var(--font-ui)}.wiz-body[data-v-bca85321]{flex:1;display:flex;flex-direction:column;align-items:center;width:min(560px,100%);margin:0 auto;padding:max(var(--space-8),12vh) var(--space-5) var(--space-6)}.wiz-step[data-v-bca85321]{display:flex;flex-direction:column;align-items:center;width:100%;flex:1;min-height:0}.wiz-step-fill[data-v-bca85321]{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;width:100%}.wiz-title[data-v-bca85321]{margin:var(--space-4) 0 0;font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-text);text-align:center}.wiz-sub[data-v-bca85321]{margin:var(--space-2) 0 var(--space-6);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-muted);text-align:center;max-width:460px}.pref-group[data-v-bca85321]{width:100%;margin-bottom:var(--space-5)}.pref-label[data-v-bca85321]{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted);margin-bottom:var(--space-2)}.opt-card[data-v-bca85321]{display:flex;align-items:center;background:var(--color-surface-raised);border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-lg);font-family:var(--font-ui);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.opt-card[data-v-bca85321]:hover{border-color:var(--color-line-strong)}.opt-card[data-v-bca85321]:focus-visible{outline:none;box-shadow:var(--p-focus-ring-strong)}.opt-card.selected[data-v-bca85321]{border-color:var(--color-accent);background:var(--color-accent-soft)}.opt-label[data-v-bca85321]{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.lang-cards[data-v-bca85321]{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);width:100%}.lang-card[data-v-bca85321]{gap:var(--space-3);padding:var(--space-4)}.opt-radio[data-v-bca85321]{width:18px;height:18px;border-radius:var(--radius-full);border:var(--p-hairline) solid var(--color-line-strong);background:var(--color-surface-raised);flex:none;display:inline-flex;align-items:center;justify-content:center;transition:border-color var(--duration-fast) var(--ease-out)}.opt-radio[data-v-bca85321]:after{content:"";width:8px;height:8px;border-radius:var(--radius-full);background:transparent;transition:background var(--duration-fast) var(--ease-out)}.opt-radio.on[data-v-bca85321]{border-color:var(--color-accent)}.opt-radio.on[data-v-bca85321]:after{background:var(--color-accent)}.theme-cards[data-v-bca85321]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);width:100%}.theme-card[data-v-bca85321]{flex-direction:column;gap:var(--space-3);padding:var(--space-3)}.tp[data-v-bca85321]{display:flex;width:100%;aspect-ratio:16 / 10;border:var(--p-hairline) solid var(--color-line);border-radius:var(--radius-md);overflow:hidden}.tp-light[data-v-bca85321]{background:#fff}.tp-dark[data-v-bca85321]{background:#0d1117}.tp-half[data-v-bca85321]{flex:1;display:flex;min-width:0}.tp-half-light[data-v-bca85321]{background:#fff}.tp-half-dark[data-v-bca85321]{background:#0d1117}.tp-side[data-v-bca85321]{width:30%;flex:none}.tp-light .tp-side[data-v-bca85321],.tp-half-light .tp-side[data-v-bca85321]{background:#0000000d}.tp-dark .tp-side[data-v-bca85321],.tp-half-dark .tp-side[data-v-bca85321]{background:#ffffff12}.tp-lines[data-v-bca85321]{flex:1;display:flex;flex-direction:column;gap:6px;padding:14% 12%}.tp-lines span[data-v-bca85321]{height:6px;border-radius:var(--radius-full)}.tp-lines span[data-v-bca85321]:nth-child(1){width:62%}.tp-lines span[data-v-bca85321]:nth-child(2){width:88%}.tp-lines span[data-v-bca85321]:nth-child(3){width:44%}.tp-light .tp-lines span[data-v-bca85321],.tp-half-light .tp-lines span[data-v-bca85321]{background:#00000024}.tp-dark .tp-lines span[data-v-bca85321],.tp-half-dark .tp-lines span[data-v-bca85321]{background:#ffffff38}.wiz-foot[data-v-bca85321]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:100%;margin-top:auto;padding:var(--space-8) 0 max(var(--space-8),8vh)}.wiz-foot-ghost[data-v-bca85321]{display:flex;gap:var(--space-3);min-height:32px;align-items:center}.wiz-foot-ghost[data-v-bca85321] .ui-button--ghost:not(:disabled):hover{background:transparent;color:var(--color-text)}.wiz-primary[data-v-bca85321]{min-width:140px}@media(max-width:640px){.theme-cards[data-v-bca85321]{gap:var(--space-2)}}.kap-root[data-v-21dbb9af]{height:100vh;display:flex;flex-direction:column;background:var(--bg);font-family:var(--mono);font-size:calc(var(--ui-font-size) - 2.5px);color:var(--color-text)}.kap-head[data-v-21dbb9af]{flex:none;display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:var(--p-hairline) solid var(--line);background:var(--panel)}.kap-count[data-v-21dbb9af]{color:var(--muted)}.kap-head-actions[data-v-21dbb9af]{margin-left:auto;display:flex;gap:6px}.kap-head-actions button[data-v-21dbb9af],.kap-view-toggle button[data-v-21dbb9af]{padding:3px 8px;border:var(--p-hairline) solid var(--line);border-radius:6px;background:var(--bg);color:var(--muted);font:inherit;cursor:pointer}.kap-head-actions button[data-v-21dbb9af]:hover,.kap-view-toggle button[data-v-21dbb9af]:hover{color:var(--color-text)}.kap-head-actions button.on[data-v-21dbb9af],.kap-view-toggle button.on[data-v-21dbb9af]{color:var(--color-accent-hover);border-color:var(--color-accent-bd);background:var(--color-accent-soft)}.kap-filters[data-v-21dbb9af]{flex:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:7px 10px;border-bottom:var(--p-hairline) solid var(--line)}.kap-filters select[data-v-21dbb9af],.kap-filters input[type=text][data-v-21dbb9af]{padding:3px 6px;border:var(--p-hairline) solid var(--line);border-radius:6px;background:var(--bg);color:var(--color-text);font:inherit;min-width:0}.kap-filters input[type=text][data-v-21dbb9af]{flex:1;min-width:120px}.kap-check[data-v-21dbb9af]{display:inline-flex;align-items:center;gap:4px;color:var(--muted);white-space:nowrap}.kap-view-toggle[data-v-21dbb9af]{display:flex;gap:0}.kap-view-toggle button[data-v-21dbb9af]:first-child{border-radius:6px 0 0 6px;border-right:none}.kap-view-toggle button[data-v-21dbb9af]:last-child{border-radius:0 6px 6px 0}.kap-list[data-v-21dbb9af]{flex:1;min-height:0;overflow-y:auto}.kap-empty[data-v-21dbb9af]{padding:18px 12px;color:var(--muted);text-align:center}.kap-row[data-v-21dbb9af]{display:flex;align-items:baseline;gap:7px;width:100%;padding:3px 10px;border:none;border-bottom:var(--p-hairline) solid var(--line);background:transparent;color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.kap-row[data-v-21dbb9af]:hover{background:var(--panel2)}.kap-row.expanded[data-v-21dbb9af]{background:var(--color-accent-soft)}.kap-ts[data-v-21dbb9af]{flex:none;color:var(--muted)}.kap-badge[data-v-21dbb9af]{flex:none;padding:0 5px;border-radius:var(--radius-sm);font-size:max(9px,calc(var(--ui-font-size) - 4.5px));font-weight:500;line-height:1.7}.b-rest[data-v-21dbb9af]{background:var(--color-accent-soft);color:var(--color-accent-hover)}.b-in[data-v-21dbb9af]{background:var(--color-accent-soft);color:var(--color-success)}.b-out[data-v-21dbb9af]{background:var(--color-accent-soft);color:var(--color-warning)}.b-life[data-v-21dbb9af]{background:var(--panel2);color:var(--muted)}.b-err[data-v-21dbb9af]{background:var(--color-warning);color:var(--bg)}.kap-label[data-v-21dbb9af]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kap-detail[data-v-21dbb9af]{border-bottom:var(--p-hairline) solid var(--line);background:var(--bg);padding:6px 10px 10px}.kap-detail-actions[data-v-21dbb9af]{display:flex;justify-content:flex-end;margin-bottom:4px}.kap-detail-actions button[data-v-21dbb9af]{padding:2px 8px;border:var(--p-hairline) solid var(--line);border-radius:6px;background:var(--panel);color:var(--muted);font:inherit;cursor:pointer}.kap-detail-actions button[data-v-21dbb9af]:hover{color:var(--color-text)}.kap-detail pre[data-v-21dbb9af]{margin:0;max-height:320px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:calc(var(--ui-font-size) - 3px);line-height:1.45}.kap-agg[data-v-21dbb9af]{flex:1;min-height:0;overflow-y:auto;padding:8px 10px}.kap-agg h4[data-v-21dbb9af]{margin:8px 0 4px;font-size:calc(var(--ui-font-size) - 2.5px);color:var(--muted)}.kap-agg table[data-v-21dbb9af]{width:100%;border-collapse:collapse}.kap-agg th[data-v-21dbb9af],.kap-agg td[data-v-21dbb9af]{padding:3px 6px;border-bottom:var(--p-hairline) solid var(--line);text-align:left;vertical-align:top}.kap-agg th[data-v-21dbb9af]{color:var(--muted);font-weight:500}.kap-agg .num[data-v-21dbb9af]{text-align:right}.kap-agg .err[data-v-21dbb9af]{color:var(--color-warning);font-weight:500}.kap-agg .mono[data-v-21dbb9af]{word-break:break-all}.kap-fab[data-v-23526254]{position:fixed;right:10px;bottom:10px;z-index:var(--z-overlay);padding:5px 9px;border:var(--p-hairline) solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);font-family:var(--mono);font-size:calc(var(--ui-font-size) - 3px);font-weight:500;letter-spacing:.04em;cursor:pointer;opacity:.75}.kap-fab[data-v-23526254]:hover{opacity:1;color:var(--color-accent)}.server-auth-hint[data-v-67d888bb]{margin:0 0 var(--space-3);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-muted)}.server-auth-hint code[data-v-67d888bb]{padding:1px 5px;font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-surface-sunken);border-radius:var(--radius-xs)}.gload-fade-leave-active[data-v-6d4e3ab2]{transition:opacity .28s ease}.gload-fade-leave-to[data-v-6d4e3ab2]{opacity:0}.action-toast-enter-active[data-v-6d4e3ab2],.action-toast-leave-active[data-v-6d4e3ab2]{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.action-toast-leave-active[data-v-6d4e3ab2]{transition-duration:var(--duration-fast);pointer-events:none}.action-toast-enter-from[data-v-6d4e3ab2],.action-toast-leave-to[data-v-6d4e3ab2]{opacity:0;transform:translateY(-6px)}.app-shell[data-v-6d4e3ab2]{position:fixed;top:var(--app-top, 0px);left:0;right:0;height:100vh;height:100dvh;height:var(--app-height, 100dvh);display:flex;flex-direction:column;overflow:clip;box-sizing:border-box}.app[data-v-6d4e3ab2]{flex:1;min-height:0;position:relative;display:grid;grid-template-columns:auto 0 minmax(0,1fr) auto;background:var(--bg);color:var(--color-text);overflow:clip;box-sizing:border-box}.app[data-v-6d4e3ab2]>*{min-height:0;min-width:0}.app>.side[data-v-6d4e3ab2]{grid-column:1}.side-handle[data-v-6d4e3ab2]{grid-column:2}.app:not(.mobile)>.con[data-v-6d4e3ab2]{grid-column:3}.app.panel-expanded[data-v-6d4e3ab2]{grid-template-columns:auto 0 0 minmax(0,1fr)}.app.panel-expanded>.con[data-v-6d4e3ab2]{display:none}.right-panel-toggle[data-v-6d4e3ab2]{position:absolute;top:var(--panel-head-inset);right:var(--panel-head-inset);z-index:var(--z-sticky);-webkit-app-region:no-drag}.app[data-v-6d4e3ab2]:not(.mobile) .ch-panel,.app[data-v-6d4e3ab2]:not(.mobile) .ch-toggles:not(:has(.ch-terminal)),.app[data-v-6d4e3ab2]:not(.mobile) .ptb-hide{display:none}.app[data-v-6d4e3ab2]:not(.mobile) .chat-header{transition:padding-left .28s cubic-bezier(.4,0,.2,1),padding-right var(--duration-slow) var(--ease-in-out)}.app[data-v-6d4e3ab2]:not(.mobile) .session-admin .sa-head{transition:padding-right var(--duration-slow) var(--ease-in-out)}.app[data-v-6d4e3ab2]:not(.mobile):not(.right-panel-open) .chat-header,.app[data-v-6d4e3ab2]:not(.mobile):not(.right-panel-open) .session-admin .sa-head{padding-right:calc(var(--panel-head-inset) + var(--icon-button-sm) + var(--space-2))}.app[data-v-6d4e3ab2]:not(.mobile) .panel-tab-bar{padding-right:calc(var(--panel-head-inset) + var(--icon-button-sm) + var(--space-05))}.sidebar-toggle-btn[data-v-6d4e3ab2]{position:absolute;top:11px;left:16px;z-index:var(--z-sticky);animation:sidebar-toggle-btn-in-6d4e3ab2 .18s var(--ease-out) .12s backwards;-webkit-app-region:no-drag}.app.macos-desktop .sidebar-toggle-btn[data-v-6d4e3ab2]{left:84px;animation:none}.new-chat-btn[data-v-6d4e3ab2]{position:absolute;top:11px;left:42px;z-index:var(--z-sticky);animation:sidebar-toggle-btn-in-6d4e3ab2 .18s var(--ease-out) .12s backwards;-webkit-app-region:no-drag}.app.macos-desktop .new-chat-btn[data-v-6d4e3ab2]{left:110px}@keyframes sidebar-toggle-btn-in-6d4e3ab2{0%{opacity:0}}.app.mobile[data-v-6d4e3ab2]{grid-template-columns:1fr;grid-template-rows:auto 1fr}:root{--panel-head-h: 48px;--panel-head-inset: calc((var(--panel-head-h) - var(--icon-button-sm)) / 2)}.app.panel-expanded.sidebar-collapsed .panel-tab-bar{padding-left:var(--header-collapsed-clearance)}.app.panel-expanded.sidebar-collapsed.macos-desktop .panel-tab-bar{padding-left:var(--header-collapsed-clearance-macos)}.app.sidebar-collapsed .session-admin .sa-head{padding-left:var(--header-collapsed-clearance)}.app.sidebar-collapsed.windows-desktop .session-admin .sa-head{padding-left:var(--space-6)}.app.sidebar-collapsed.macos-desktop .session-admin .sa-head{padding-left:var(--header-collapsed-clearance-macos)}.app.fullscreen.sidebar-collapsed.macos-desktop .session-admin .sa-head{padding-left:var(--header-collapsed-clearance)}.app.macos-desktop .global-preview .ui-panel-header{-webkit-app-region:drag}.app.macos-desktop .global-preview .ui-panel-header button,.app.macos-desktop .global-preview .ui-panel-header input{-webkit-app-region:no-drag}.app.macos-desktop:has(.ch-menu,.open-in-menu,.dock-work-panel,.copy-menu-open) .chat-header,.app.macos-desktop:has(.ch-menu,.open-in-menu,.dock-work-panel,.copy-menu-open) .side .ch,.app.macos-desktop:has(.ch-menu,.open-in-menu,.dock-work-panel,.copy-menu-open) .global-preview .ui-panel-header{-webkit-app-region:no-drag}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@property --markdown-edge-top{syntax: ""; inherits: true; initial-value: 0;}@property --markdown-edge-bottom{syntax: ""; inherits: true; initial-value: 0;}@property --markdown-edge-left{syntax: ""; inherits: true; initial-value: 0;}@property --markdown-edge-right{syntax: ""; inherits: true; initial-value: 0;}:root{--markdown-font-scale: 1;--markdown-z-gutter: 2;--markdown-z-controls: 2;--markdown-z-edges: 3;--markdown-z-scrollbar: 4;--markdown-font-family: "Schibsted Grotesk Variable", "Helvetica Neue", Arial, "Noto Sans SC Variable", "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--markdown-code-font-family: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--markdown-font-weight-regular: 400;--markdown-font-weight-emphasis: 600;--markdown-letter-spacing: 0;--markdown-h1-font-size: calc(1.25rem * var(--markdown-font-scale));--markdown-h1-line-height: 1.6;--markdown-h2-font-size: calc(1.125rem * var(--markdown-font-scale));--markdown-h2-line-height: calc(28 / 18);--markdown-h3-font-size: calc(1rem * var(--markdown-font-scale));--markdown-h3-line-height: 1.625;--markdown-body-font-size: calc(.875rem * var(--markdown-font-scale));--markdown-body-line-height: calc(22 / 14);--markdown-quote-font-size: calc(.875rem * var(--markdown-font-scale));--markdown-quote-line-height: calc(22 / 14);--markdown-table-font-size: calc(.875rem * var(--markdown-font-scale));--markdown-table-line-height: calc(22 / 14);--markdown-code-font-size: calc(.875rem * var(--markdown-font-scale));--markdown-code-line-height: calc(22 / 14);--markdown-code-header-font-size: calc(.875rem * var(--markdown-font-scale));--markdown-code-header-line-height: calc(20 / 14);--markdown-image-caption-font-size: calc(.75rem * var(--markdown-font-scale));--markdown-image-caption-line-height: 1.5;--markdown-text-color: light-dark(rgb(0 0 0 / 90%), rgb(255 255 255 / 84%));--markdown-secondary-icon-color: light-dark(rgb(0 0 0 / 45%), rgb(255 255 255 / 42%));--markdown-link-color: light-dark(#0f6ef2, #3393ff);--markdown-border-color: light-dark(rgb(0 0 0 / 13%), rgb(255 255 255 / 12%));--markdown-quote-rule-color: light-dark(rgb(0 0 0 / 15%), rgb(255 255 255 / 18%));--markdown-inline-code-background: var(--color-selected);--markdown-code-background: light-dark(#ffffff, #292929);--markdown-code-header-background: light-dark(rgb(255 255 255 / 90%), rgb(41 41 41 / 90%));--markdown-code-action-background: light-dark(rgb(255 255 255 / 90%), rgb(41 41 41 / 90%));--markdown-code-action-hover-background: light-dark(rgb(0 0 0 / 3%), rgb(255 255 255 / 5%));--markdown-code-toggle-background: light-dark(rgb(0 0 0 / 5%), rgb(255 255 255 / 10%));--markdown-code-toggle-selected-background: light-dark(#ffffff, #4d4d4d);--markdown-task-checked-color: var(--color-fill-4);--markdown-task-unchecked-color: var(--color-fill-4);--markdown-task-check-color: #ffffff;--markdown-image-background: light-dark(#f5f5f5, #1f1f1f);--markdown-image-caption-background: rgb(0 0 0 / 60%);--markdown-image-caption-color: #ffffff;--markdown-syntax-heading-color: light-dark(#2f6fc4, #5397e6);--markdown-syntax-property-color: light-dark(#2f6fc4, #5397e6);--markdown-syntax-string-color: light-dark(#22863a, #98c379);--markdown-syntax-keyword-color: light-dark(#a500b5, #d876e3);--markdown-syntax-function-color: light-dark(#2f6fc4, #5397e6);--markdown-syntax-number-color: light-dark(#8b6b00, #d5a700);--markdown-syntax-comment-color: light-dark(#737373, #909090);--markdown-block-space-before: .75rem;--markdown-heading-space-before: 1.25rem;--markdown-paragraph-gap: 1rem;--markdown-divider-space-before: 1.75rem;--markdown-divider-width: var(--p-hairline);--markdown-list-indent: 1.5rem;--markdown-list-item-gap: .5rem;--markdown-list-group-gap: .75rem;--markdown-task-size: 1.5rem;--markdown-task-label-gap: .5rem;--markdown-task-item-gap: .75rem;--markdown-quote-gutter: 1.5rem;--markdown-quote-rule-width: .125rem;--markdown-quote-rule-inset: .125rem;--markdown-quote-rule-radius: 999rem;--markdown-inline-code-padding-inline: .25rem;--markdown-inline-code-padding-block: 0;--markdown-inline-code-radius: .25rem;--markdown-code-gutter-background: light-dark(#ffffff, #292929);--markdown-code-edge-size: .8125rem;--markdown-code-edge-strong-color: light-dark(rgb(0 0 0 / 1.5%), rgb(255 255 255 / 1.5%));--markdown-code-edge-medium-color: light-dark(rgb(0 0 0 / 1%), rgb(255 255 255 / 1%));--markdown-code-edge-soft-color: light-dark(rgb(0 0 0 / .75%), rgb(255 255 255 / .75%));--markdown-code-max-height: 31.25rem;--markdown-code-scrollbar-size: .625rem;--markdown-code-scrollbar-idle-size: .25rem;--markdown-code-scrollbar-edge-gap: .25rem;--markdown-code-scrollbar-transition-duration: .12s;--markdown-code-scrollbar-idle-delay: .5s;--markdown-code-scrollbar-thumb: light-dark(rgb(0 0 0 / 18%), rgb(255 255 255 / 16%));--markdown-code-scrollbar-thumb-hover: light-dark(rgb(0 0 0 / 55%), rgb(255 255 255 / 50%));--markdown-code-radius: 1rem;--markdown-code-border-width: var(--p-hairline);--markdown-code-padding-inline: 1rem;--markdown-code-padding-bottom: 1rem;--markdown-code-header-padding-start: 1rem;--markdown-code-header-padding-end: .5rem;--markdown-code-header-padding-block: .5rem;--markdown-code-header-min-height: calc(var(--markdown-code-action-size) + 2 * var(--markdown-code-header-padding-block));--markdown-code-action-gap: .375rem;--markdown-code-action-size: 1.625rem;--markdown-code-action-icon-size: .875rem;--markdown-code-action-radius: .5rem;--markdown-code-toggle-padding: .125rem;--markdown-code-toggle-radius: 1.25rem;--markdown-code-toggle-item-padding-inline: .75rem;--markdown-code-toggle-item-padding-block: .0625rem;--markdown-code-toggle-item-min-width: 2rem;--markdown-code-toggle-item-gap: .25rem;--markdown-code-toggle-item-radius: 1rem;--markdown-code-toggle-item-inactive-radius: .25rem;--markdown-code-toggle-preview-radius: 1.25rem;--markdown-code-backdrop-blur: .9375rem;--markdown-code-shadow: none;--markdown-diagram-actor-background: #fff8e6;--markdown-diagram-actor-border-color: #ffcc4b;--markdown-diagram-actor-text-color: #2e2f33;--markdown-table-fade-size: 2.25rem;--markdown-table-border-width: 1px;--markdown-table-column-border-width: var(--p-hairline);--markdown-table-radius: .75rem;--markdown-table-cell-padding-block: .375rem;--markdown-table-cell-padding-start: .5rem;--markdown-table-cell-padding-end: .5rem;--markdown-table-header-border-width: 1px;--markdown-table-header-column-border-width: 1px;--markdown-table-row-border-width: var(--p-hairline);--markdown-image-radius: .75rem;--markdown-image-border-width: var(--p-hairline);--markdown-image-caption-padding-inline: .75rem;--markdown-image-caption-padding-block: .5rem;--markdown-image-caption-shadow: .0625rem .0625rem .125rem rgb(0 0 0 / 20%)}html[data-font-scale=small]{--markdown-font-scale: calc(12 / 14)}html[data-font-scale=medium]{--markdown-font-scale: 1}html[data-font-scale=large]{--markdown-font-scale: calc(16 / 14)}html[data-font-scale=xlarge]{--markdown-font-scale: calc(18 / 14)}:root{--dim: var(--color-text-muted);--muted: var(--color-text-faint);--faint: var(--color-text-quaternary);--line: var(--color-line);--line2: var(--color-subtle);--canvas: #f9fbfc;--sh: 0 1px 3px rgba(28, 40, 66, .05), 0 6px 18px rgba(28, 40, 66, .06);--shc: 0 1px 2px rgba(28, 40, 66, .05);--panel: #f5f5f5;--panel2: rgba(0, 0, 0, .05);--bg: #ffffff;--blue: #1783ff;--blue2: #167ff7;--soft: #e8f3ff;--bd: rgba(23, 131, 255, .25);--logo: #1783ff;--bluebg: #e8f3ff;--blueln: rgba(23, 131, 255, .25);--ok: #0e7a38;--warn: #a9610a;--star: #eab308;--err: #c0392b;--hover: var(--color-hover);--r-xs: var(--radius-sm);--r-sm: var(--radius-md);--r-md: var(--radius-lg);--r-lg: var(--radius-xl);--ui-font-size: var(--ui-b2);--ui-font-size-sm: calc(var(--ui-font-size) - 1px);--ui-font-size-xs: calc(var(--ui-font-size) - 2px);--ui-font-size-lg: calc(var(--ui-font-size) + 1px);--ui-font-size-xl: calc(var(--ui-font-size) + 2px);--content-font-size: var(--md-b1);--code-font-size: calc(var(--content-font-size) - 2px);--mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--sans: var(--font-ui);color-scheme:light dark}html[data-color-scheme=light]{color-scheme:light}html[data-color-scheme=system]{color-scheme:light dark}html[data-color-scheme=dark]{color-scheme:dark;--panel: #1f1f1f;--panel2: #121212;--bg: #121212;--blue: #1a88ff;--blue2: #258eff;--soft: rgba(26, 136, 255, .1);--bd: rgba(26, 136, 255, .28);--logo: #1a88ff;--bluebg: #292929;--blueln: rgba(255, 255, 255, .05);--ok: #3fb950;--warn: #d29922;--star: #facc15;--err: #f85149;--hover: var(--color-hover);--canvas: #161717;--sh: 0 1px 3px rgba(0, 0, 0, .35), 0 6px 18px rgba(0, 0, 0, .4);--shc: 0 1px 2px rgba(0, 0, 0, .35)}@media(prefers-color-scheme:dark){html[data-color-scheme=system]{--panel: #1f1f1f;--panel2: #121212;--bg: #121212;--blue: #1a88ff;--blue2: #258eff;--soft: rgba(26, 136, 255, .1);--bd: rgba(26, 136, 255, .28);--logo: #1a88ff;--bluebg: #292929;--blueln: rgba(255, 255, 255, .05);--ok: #3fb950;--warn: #d29922;--star: #facc15;--err: #f85149;--hover: var(--color-hover);--canvas: #161717;--sh: 0 1px 3px rgba(0, 0, 0, .35), 0 6px 18px rgba(0, 0, 0, .4);--shc: 0 1px 2px rgba(0, 0, 0, .35)}}:root{--color-bg: #ffffff;--color-surface: #f5f5f5;--color-surface-raised: #ffffff;--color-surface-overlay: #ffffff;--color-surface-sunken: #f5f5f5;--color-inline-code-bg: rgba(0, 0, 0, .03);--color-well: #f5f5f5;--color-surface-deep: #f5f5f5;--color-media-alpha-bg-1: color-mix(in srgb, var(--color-bg) 52%, var(--color-text) 48%);--color-media-alpha-bg-2: color-mix(in srgb, var(--color-bg) 42%, var(--color-text) 58%);--media-alpha-canvas: conic-gradient( var(--color-media-alpha-bg-1) 25%, var(--color-media-alpha-bg-2) 0 50%, var(--color-media-alpha-bg-1) 0 75%, var(--color-media-alpha-bg-2) 0 ) 0 0 / 16px 16px;--color-text: rgba(0, 0, 0, .9);--color-text-strong: #000000;--color-text-muted: rgba(0, 0, 0, .6);--color-text-faint: rgba(0, 0, 0, .45);--color-text-on-accent: #ffffff;--color-line: rgba(0, 0, 0, .13);--color-subtle: rgba(0, 0, 0, .05);--color-line-strong: rgba(0, 0, 0, .15);--color-scrim: rgba(0, 0, 0, .4);--color-scrim-strong: rgba(0, 0, 0, .6);--color-text-on-scrim: #ffffff;--color-selected: rgba(0, 0, 0, .05);--color-selected-hover: rgba(0, 0, 0, .08);--panel-tab-selected-bg: rgba(0, 0, 0, .12);--color-hover: rgba(0, 0, 0, .03);--color-sidebar-bg: #f9fbfc;--color-user-bubble-bg: #f5f5f5;--color-accent: #1783ff;--color-accent-hover: #167ff7;--color-accent-soft: #e8f3ff;--color-accent-bd: rgba(23, 131, 255, .25);--color-success: #0e7a38;--color-success-soft: #e7f6ee;--color-success-bd: #bfe3cc;--color-warning: #a9610a;--color-warning-soft: #fbf1e0;--color-warning-bd: #f0d9b8;--color-orange: #bc4c00;--color-orange-soft: #fff1e5;--color-danger: #c0392b;--color-danger-soft: #fbeaea;--color-danger-bd: #f0cccc;--color-diff-add-bg: rgba(22, 196, 86, .1);--color-diff-del-bg: rgba(255, 77, 77, .1);--color-diff-add-fg: #16c456;--color-diff-del-fg: #ff4756;--color-fill-1: rgba(0, 0, 0, .03);--color-fill-2: rgba(0, 0, 0, .05);--color-fill-4: rgba(0, 0, 0, .25);--favicon-dark-ink-filter: none;--favicon-light-ink-filter: invert(.88);--color-text-quaternary: rgba(0, 0, 0, .3);--color-bg-translucent: rgba(255, 255, 255, .7);--color-fill-on-inverted: rgba(255, 255, 255, .05);--color-attention: #ff9f0a;--color-done: #8250df;--color-done-soft: #f3e8ff;--color-done-bd: #e0ccff;--color-info: #1783ff;--color-term-magenta: #8250df;--color-term-cyan: #1b7c83;--color-term-black: #24292f;--space-05: 2px;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--browser-annotation-label-max-width: 360px;--browser-annotation-popover-width: 26rem;--browser-annotation-popover-preview-height: 180px;--browser-annotation-preview-max-height: 30vh;--browser-permission-border-width: var(--p-hairline);--browser-permission-border-color: var(--color-warning-bd);--browser-permission-breathe-duration: 2.8s;--browser-permission-glow-gutter: var(--space-1);--browser-permission-glow-color: color-mix(in srgb, var(--color-warning) 12%, transparent);--browser-permission-glow-rest: 0 0 2px 0 var(--browser-permission-glow-color);--browser-permission-glow-peak: 0 0 4px 0 var(--browser-permission-glow-color);--browser-shot-max-height: 360px;--browser-shot-mark-color: var(--color-accent);--browser-shot-mark-width: 2px;--browser-shot-mark-fill: color-mix(in srgb, var(--color-accent) 14%, transparent);--browser-shot-mark-halo: 0 0 0 1px white, 0 1px 4px rgb(0 0 0 / .5);--browser-shot-mark-halo-color: white;--browser-shot-point-size: 18px;--browser-receipt-thumb-width: 32px;--browser-receipt-thumb-height: 20px;--browser-receipt-frame-width: 120px;--browser-receipt-frame-height: 75px;--browser-receipt-frame-min-width: 72px;--browser-receipt-pending-width: 480px;--browser-live-dot-halo: 1px;--browser-sources-favicon-size: 16px;--browser-sources-fallback-icon-size: 11px;--browser-sources-list-max-height: 320px;--browser-control-edge: 2px;--browser-control-target-fill: color-mix(in srgb, var(--color-accent) 8%, transparent);--browser-control-scan-height: 120px;--browser-control-scan-duration: 1.1s;--browser-control-scan-fill: color-mix(in srgb, var(--color-accent) 16%, transparent);--browser-control-scan-edge: color-mix(in srgb, var(--color-accent) 70%, transparent);--browser-control-button-height: 32px;--browser-control-pointer-shadow: drop-shadow(0 2px 4px rgb(0 0 0 / .22)) drop-shadow(0 5px 10px rgb(0 0 0 / .18));--browser-control-ring-size: 32px;--browser-control-ring-width: 3px;--browser-control-ring-fill: color-mix(in srgb, var(--color-accent) 20%, transparent);--browser-control-ring-shadow: 0 0 0 2px white, 0 2px 8px rgb(0 0 0 / .65);--browser-control-pointer-width: 20px;--browser-control-pointer-height: 28px;--browser-control-pointer-label-width: 128px;--browser-control-glow-line: 2px;--browser-control-glow-band: 12px;--browser-control-glow-blur: 20px;--browser-control-glow-bloom: .8;--browser-control-glow-core: .4;--browser-control-glow-duration: 8s;--browser-control-glow-cyan: color-mix(in oklch, var(--color-accent) 40%, #22d3ee);--browser-control-glow-violet: color-mix(in oklch, var(--color-accent) 40%, #8b5cf6);--browser-control-glow-magenta: color-mix(in oklch, var(--color-accent) 55%, #d946ef);--browser-control-glow-spectrum: conic-gradient(var(--color-accent), var(--browser-control-glow-cyan), var(--browser-control-glow-violet), var(--browser-control-glow-magenta), var(--color-accent));--browser-agent-dialog-breathe-duration: 2.4s;--browser-agent-dialog-halo-rest: 0 0 calc(var(--browser-control-glow-blur) * .4) color-mix(in oklch, var(--color-accent) 28%, transparent), 0 0 var(--browser-control-glow-blur) color-mix(in oklch, var(--browser-control-glow-violet) 12%, transparent);--browser-agent-dialog-halo-peak: 0 0 calc(var(--browser-control-glow-blur) * .6) color-mix(in oklch, var(--color-accent) 55%, transparent), 0 0 var(--browser-control-glow-blur) color-mix(in oklch, var(--browser-control-glow-violet) 32%, transparent);--browser-agent-dialog-tab-inset: 16px;--browser-control-popover-width: 360px;--browser-control-popover-max-height: 420px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-composer: 32px;--radius-dock-pill: 10px;--radius-composer-media: calc(var(--radius-composer) - var(--p-composer-media-inset) - var(--p-hairline));--radius-composer-media-control: calc(var(--radius-composer-media) - var(--space-1) - var(--p-hairline));--corner-shape-composer: superellipse(1.5);--radius-menu-row: var(--radius-sm);--corner-shape-menu: var(--corner-shape-composer);--dialog-pad-x: 22px;--menu-pad: 3.5px;--radius-menu-item: calc(var(--radius-lg) - var(--menu-pad) - var(--p-hairline));--radius-select-option: calc(var(--radius-md) - var(--space-1) - var(--p-hairline));--radius-dropdown-row: calc(var(--radius-lg) - var(--space-1) - var(--p-hairline));--color-menu-bg-frost: color-mix(in srgb, var(--color-bg) 70%, transparent);--color-dock-panel-bg: color-mix(in srgb, var(--color-bg) 90%, transparent);--color-topbar-bg-frost: color-mix(in srgb, var(--color-surface) 78%, transparent);--p-topbar-backdrop: saturate(150%) blur(12px);--color-menu-scrollbar: color-mix(in srgb, var(--color-text) 16%, transparent);--color-menu-scrollbar-hover: color-mix(in srgb, var(--color-text) 48%, transparent);--color-chat-scrollbar: color-mix(in srgb, var(--color-text) 12%, transparent);--color-chat-scrollbar-hover: color-mix(in srgb, var(--color-text) 25%, transparent);--chat-scroll-edge-size: 13px;--color-chat-scroll-edge-strong: color-mix(in srgb, var(--color-text) 1.5%, transparent);--color-chat-scroll-edge-medium: color-mix(in srgb, var(--color-text) 1%, transparent);--color-chat-scroll-edge-soft: color-mix(in srgb, var(--color-text) .75%, transparent);--radius-full: 999px;--radius-window: 14px;--radius-window-chip: calc(var(--radius-window) - var(--space-2));--menu-scroll-fade: var(--space-5);--panel-tab-pad-x: 10px;--panel-tab-max-w: 168px;--panel-tab-x-size: 18px;--panel-tab-h: 28px;--panel-launcher-w: 288px;--panel-default-w: 460px;--file-tree-row-h: 28px;--file-tree-row-radius: 10px;--file-tree-base-indent: var(--space-2);--file-tree-indent-step: var(--space-3);--file-tree-panel-w: 224px;--file-tree-panel-min-w: 160px;--file-tree-panel-max-w: 400px;--menu-item-padding-block: 5px;--menu-item-padding-inline: 9px;--menu-row-hug: var(--space-1-5);--menu-rows-seam: 1px;--menu-row-gap-icon: 7px;--menu-row-padding-block: var(--space-05);--menu-row-padding-inline: calc(var(--space-4) - var(--space-3) + var(--menu-row-hug));--menu-row-touch-padding-block: 11px;--menu-scrollbar-width: 3px;--menu-scrollbar-edge: calc(var(--menu-row-hug) + var(--p-hairline) - var(--menu-scrollbar-width));--menu-scrollbar-track-inset: calc(var(--radius-lg) - var(--space-1-5));--menu-scrollbar-thumb-min: 24px;--wm-x-size: calc(var(--p-ic-sm) + var(--space-1));--wm-x-ring: var(--space-1-5);--z-base: 0;--z-raised: 1;--z-sticky: 100;--z-dropdown: 200;--z-overlay: 300;--z-modal: 400;--z-modal-dropdown: 500;--z-toast: 600;--z-tooltip: 650;--z-max: 9999;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .04);--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05), 0 1px 3px rgba(16, 24, 40, .06);--shadow-menu: 0 6px 18px lch(0% 0 0 / .02), 0 3px 9px lch(0% 0 0 / .04), 0 1px 1px lch(0% 0 0 / .04);--color-menu-bg: rgba(255, 255, 255, .95);--p-menu-backdrop: blur(24px) saturate(1.8);--p-card-backdrop: blur(12px);--shadow-input: 0 5px 16px -4px rgba(0, 0, 0, .07);--shadow-md: 0 4px 12px rgba(16, 24, 40, .07), 0 2px 4px rgba(16, 24, 40, .05);--shadow-lg: 0 12px 32px rgba(16, 24, 40, .12), 0 4px 10px rgba(16, 24, 40, .08);--shadow-xl: 0 24px 64px rgba(16, 24, 40, .18), 0 8px 20px rgba(16, 24, 40, .1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--duration-fast: .12s;--duration-base: .16s;--duration-slow: .26s;--duration-hover-intent: .25s;--duration-tooltip: .3s;--duration-spin: .7s;--duration-flash: 1.2s;--motion-panel-shift: 2px;--motion-panel-scale: .97;--color-composer-bg: #ffffff;--color-composer-line: rgba(0, 0, 0, .13);--color-composer-focus-line: rgba(0, 0, 0, .25);--color-send-bg: rgba(0, 0, 0, .9);--color-send-bg-hover: #252525;--color-send-icon: #ffffff;--color-stop-glyph: var(--color-danger);--color-send-bg-disabled: rgba(0, 0, 0, .05);--color-send-icon-disabled: rgba(0, 0, 0, .27);--opacity-send-disabled: 1;--shadow-send: 0 7px 16px -13px rgba(0, 0, 0, .38), 0 1px 2px rgba(0, 0, 0, .07);--shadow-send-hover: 0 8px 18px -13px rgba(0, 0, 0, .42), 0 1px 3px rgba(0, 0, 0, .09);--composer-send-icon-size: 28px;--font-ui-latin: "Schibsted Grotesk Variable", "Helvetica Neue", Arial;--font-ui: var(--font-ui-latin), "Noto Sans SC Variable", "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-display: var(--font-ui);--font-kbd: "Schibsted Grotesk Variable", system-ui, sans-serif;--kbd-height: 18px;--kbd-min-width: 18px;--kbd-padding-x: 5px;--kbd-font-size: 11px;--font-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--text-2xs: calc(var(--ui-c1) - 1px);--text-xs: var(--ui-c1);--text-sm: calc(var(--ui-b2) - 1px);--text-base: var(--ui-b2);--text-lg: var(--ui-t2);--text-xl: var(--ui-t1);--text-2xl: var(--ui-t0);--leading-solid: 1;--leading-tight: 1.25;--leading-caption: 1.4;--leading-normal: 1.5;--leading-prose: 1.6;--leading-relaxed: 1.7;--weight-regular: 400;--weight-caption: 450;--weight-option-label: 475;--weight-medium: 500;--weight-ui-strong: 525;--weight-section-label: 600;--weight-semibold: 700;--ui-shift: calc(var(--base-font, 14px) - 14px);--md-shift: var(--ui-shift);--ui-t0: min(calc(20px + var(--ui-shift)), 24px);--ui-t1: min(calc(18px + var(--ui-shift)), 22px);--ui-t2: calc(16px + var(--ui-shift));--ui-b1: calc(15px + var(--ui-shift));--ui-b2: calc(14px + var(--ui-shift));--ui-c1: calc(12px + var(--ui-shift));--ui-c2: calc(10px + var(--ui-shift));--md-h1: calc(22px + var(--md-shift));--md-h2: calc(20px + var(--md-shift));--md-h3: calc(18px + var(--md-shift));--md-b1: calc(14px + var(--md-shift));--md-b2: calc(13px + var(--md-shift));--md-b3: calc(13px + var(--md-shift));--p-focus-ring-w: 3px;--p-focus-ring: 0 0 0 var(--p-focus-ring-w) var(--color-accent-soft);--p-focus-ring-strong: 0 0 0 var(--p-focus-ring-w) var(--color-accent-soft), 0 0 0 1px var(--color-accent);--p-selection: rgba(23, 131, 255, .2);--color-code-selection: rgba(23, 131, 255, .346);--color-code-selection-text: currentColor;--code-pad-block: calc(var(--text-sm) * (var(--leading-normal) - 1) / 2);--diff-sign-col: 14px;--p-ic-sm: 14px;--p-ic-md: 16px;--p-ring-stroke: 1.5px;--p-ic-lg: 20px;--p-ic-dock: 18px;--p-empty-ico: 28px;--p-hairline: .5px;--browser-settings-row-min-height: 52px;--browser-settings-control-width: 200px;--browser-settings-control-min-width: 160px;--p-findring-w: 2px;--p-pill-excerpt-max: 24em;--p-quote-pill-excerpt-max: 12em;--p-tip-quote-lines: 8.5lh;--p-tip-comment-lines: 4.5lh;--p-scroll-seam-h: 18px;--p-sidebar-seam-h: 13px;--icon-button-sm: 26px;--icon-button-xs: 20px;--touch-target-min: 44px;--resize-handle-step: 16px;--resize-handle-step-lg: 48px;--p-chip-num: 20px;--p-sidebar-w: 264px;--p-content-max: 760px;--p-content-wide: 920px;--p-table-cell-max: 700px;--p-table-wide-max: 1440px;--p-findbar-w: 340px;--p-bubble-max: 78%;--p-dock-panel-h: 320px;--p-subagent-card-min: 180px;--p-slash-menu-h: 228px;--p-mention-menu-h: 296px;--p-mention-tip-w: 320px;--p-mention-tip-media-w: 300px;--p-mention-tip-media-h: 220px;--p-mention-tip-media-min-w: 190px;--p-mention-tip-media-preview-min-h: 64px;--p-mention-tip-media-check: 12px;--p-mention-tip-media-ring: 12px;--p-mention-tip-media-spin: 10px;--p-composer-media-inset: var(--space-4);--p-composer-media-thumb: 72px;--p-composer-media-control: var(--space-5);--p-composer-media-action: 28px;--p-mention-tip-media-check-bg: linear-gradient(45deg, color-mix(in srgb, var(--color-bg) 7%, transparent) 25%, transparent 25%), linear-gradient(-45deg, color-mix(in srgb, var(--color-bg) 7%, transparent) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, color-mix(in srgb, var(--color-bg) 7%, transparent) 75%), linear-gradient(-45deg, transparent 75%, color-mix(in srgb, var(--color-bg) 7%, transparent) 75%);--p-selection-bubble-w: 280px;--p-selection-comment-max-h: 160px;--p-tip-max-w: 280px;--p-mention-tip-vmargin: var(--space-3);--p-mention-tip-spinner-lift: -.1em;--opacity-stale: .55;--opacity-hint: .55;--p-add-menu-h: var(--p-slash-menu-h);--p-bp-sm: 640px;--p-bp-md: 980px}@media(max-resolution:1.1dppx){:root{--p-hairline: 1px}}:root,html[data-font-scale=medium]{--base-font: 14px}html[data-font-scale=small]{--base-font: 12px}html[data-font-scale=large]{--base-font: 16px}html[data-font-scale=xlarge]{--base-font: 18px}.text-ui-t0{font-size:var(--ui-t0);line-height:round(calc(var(--ui-t0) * 1.4),1px)}.text-ui-t1{font-size:var(--ui-t1);line-height:round(calc(var(--ui-t1) * 1.44),1px)}.text-ui-t2{font-size:var(--ui-t2);line-height:round(calc(var(--ui-t2) * 1.5),1px)}.text-ui-b1{font-size:var(--ui-b1);line-height:round(calc(var(--ui-b1) * 1.47),1px)}.text-ui-b2{font-size:var(--ui-b2);line-height:round(calc(var(--ui-b2) * 1.42),1px)}.text-ui-c1{font-size:var(--ui-c1);line-height:round(calc(var(--ui-c1) * 1.5),1px)}.text-ui-c2{font-size:var(--ui-c2);line-height:round(calc(var(--ui-c2) * 1.4),1px)}.text-md-h1{font-size:var(--md-h1);line-height:round(calc(var(--md-h1) * 1.63),1px)}.text-md-h2{font-size:var(--md-h2);line-height:round(calc(var(--md-h2) * 1.6),1px)}.text-md-h3{font-size:var(--md-h3);line-height:round(calc(var(--md-h3) * 1.56),1px)}.text-md-b1{font-size:var(--md-b1);line-height:round(calc(var(--md-b1) * 1.625),1px)}.text-md-b2{font-size:var(--md-b2);line-height:round(calc(var(--md-b2) * 1.6),1px)}.text-md-b3{font-size:var(--md-b3);line-height:round(calc(var(--md-b3) * 1.57),1px)}html[data-color-scheme=dark]{--color-bg: #121212;--color-surface: #1f1f1f;--color-surface-raised: #292929;--color-surface-overlay: rgba(255, 255, 255, .1);--color-surface-sunken: #121212;--color-inline-code-bg: rgba(255, 255, 255, .1);--color-well: #1f1f1f;--color-surface-deep: #0d0d0d;--color-text: rgba(255, 255, 255, .84);--color-text-strong: #ffffff;--color-text-muted: rgba(255, 255, 255, .56);--color-text-faint: rgba(255, 255, 255, .42);--color-line: rgba(255, 255, 255, .12);--color-subtle: rgba(255, 255, 255, .05);--color-line-strong: rgba(255, 255, 255, .18);--color-scrim: rgba(0, 0, 0, .6);--color-scrim-strong: rgba(0, 0, 0, .75);--color-selected: rgba(255, 255, 255, .1);--color-selected-hover: rgba(255, 255, 255, .14);--panel-tab-selected-bg: rgba(255, 255, 255, .18);--color-hover: rgba(255, 255, 255, .05);--color-sidebar-bg: #0d0d0d;--color-user-bubble-bg: #292929;--color-accent: #1a88ff;--color-accent-hover: #258eff;--color-accent-soft: rgba(26, 136, 255, .1);--color-accent-bd: rgba(26, 136, 255, .28);--p-selection: rgba(26, 136, 255, .2);--color-code-selection: rgba(26, 136, 255, .27);--color-code-selection-text: currentColor;--color-success: #3fb950;--color-success-soft: rgba(63, 185, 80, .14);--color-success-bd: rgba(63, 185, 80, .28);--color-warning: #d29922;--color-warning-soft: rgba(210, 153, 34, .14);--color-warning-bd: rgba(210, 153, 34, .28);--color-orange: #f0883e;--color-orange-soft: rgba(240, 136, 62, .14);--color-danger: #f85149;--color-danger-soft: rgba(248, 81, 73, .14);--color-danger-bd: rgba(248, 81, 73, .28);--color-diff-add-bg: rgba(63, 185, 80, .14);--color-diff-del-bg: rgba(248, 81, 73, .14);--color-fill-1: rgba(255, 255, 255, .05);--color-fill-2: rgba(255, 255, 255, .1);--color-fill-4: rgba(255, 255, 255, .25);--favicon-dark-ink-filter: invert(.88);--favicon-light-ink-filter: none;--color-text-quaternary: rgba(255, 255, 255, .26);--color-bg-translucent: rgba(18, 18, 18, .7);--color-done: #a371f7;--color-done-soft: rgba(163, 113, 247, .14);--color-done-bd: rgba(163, 113, 247, .28);--color-info: #1a88ff;--color-term-magenta: #d2a8ff;--color-term-cyan: #76e3ea;--color-term-black: #484f58;--color-composer-bg: #1f1f1f;--color-composer-line: rgba(255, 255, 255, .12);--color-composer-focus-line: rgba(255, 255, 255, .25);--color-send-bg: rgba(255, 255, 255, .84);--color-send-bg-hover: rgba(255, 255, 255, .848);--color-send-icon: #1f1f1f;--color-stop-glyph: color-mix(in srgb, var(--color-danger) 72%, transparent);--color-send-bg-disabled: rgba(255, 255, 255, .1);--color-send-icon-disabled: rgba(255, 255, 255, .28);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .22), 0 1px 3px rgba(0, 0, 0, .18);--shadow-menu: 0 6px 18px rgba(0, 0, 0, .2), 0 3px 9px rgba(0, 0, 0, .24), 0 1px 1px rgba(0, 0, 0, .24);--color-menu-bg: rgba(41, 41, 41, .95);--shadow-input: 0 5px 16px -4px rgba(0, 0, 0, .07);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3), 0 2px 4px rgba(0, 0, 0, .24);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .34), 0 4px 10px rgba(0, 0, 0, .28);--shadow-xl: 0 24px 64px rgba(0, 0, 0, .42), 0 8px 20px rgba(0, 0, 0, .32)}@media(prefers-color-scheme:dark){html[data-color-scheme=system]{--color-bg: #121212;--color-surface: #1f1f1f;--color-surface-raised: #292929;--color-surface-overlay: rgba(255, 255, 255, .1);--color-surface-sunken: #121212;--color-inline-code-bg: rgba(255, 255, 255, .1);--color-well: #1f1f1f;--color-surface-deep: #0d0d0d;--color-text: rgba(255, 255, 255, .84);--color-text-strong: #ffffff;--color-text-muted: rgba(255, 255, 255, .56);--color-text-faint: rgba(255, 255, 255, .42);--color-line: rgba(255, 255, 255, .12);--color-subtle: rgba(255, 255, 255, .05);--color-line-strong: rgba(255, 255, 255, .18);--color-scrim: rgba(0, 0, 0, .6);--color-scrim-strong: rgba(0, 0, 0, .75);--color-selected: rgba(255, 255, 255, .1);--color-selected-hover: rgba(255, 255, 255, .14);--panel-tab-selected-bg: rgba(255, 255, 255, .18);--color-hover: rgba(255, 255, 255, .05);--color-sidebar-bg: #0d0d0d;--color-user-bubble-bg: #292929;--color-accent: #1a88ff;--color-accent-hover: #258eff;--color-accent-soft: rgba(26, 136, 255, .1);--color-accent-bd: rgba(26, 136, 255, .28);--p-selection: rgba(26, 136, 255, .2);--color-code-selection: rgba(26, 136, 255, .27);--color-code-selection-text: currentColor;--color-success: #3fb950;--color-success-soft: rgba(63, 185, 80, .14);--color-success-bd: rgba(63, 185, 80, .28);--color-warning: #d29922;--color-warning-soft: rgba(210, 153, 34, .14);--color-warning-bd: rgba(210, 153, 34, .28);--color-orange: #f0883e;--color-orange-soft: rgba(240, 136, 62, .14);--color-danger: #f85149;--color-danger-soft: rgba(248, 81, 73, .14);--color-danger-bd: rgba(248, 81, 73, .28);--color-diff-add-bg: rgba(63, 185, 80, .14);--color-diff-del-bg: rgba(248, 81, 73, .14);--color-fill-1: rgba(255, 255, 255, .05);--color-fill-2: rgba(255, 255, 255, .1);--color-fill-4: rgba(255, 255, 255, .25);--favicon-dark-ink-filter: invert(.88);--favicon-light-ink-filter: none;--color-text-quaternary: rgba(255, 255, 255, .26);--color-bg-translucent: rgba(18, 18, 18, .7);--color-done: #a371f7;--color-done-soft: rgba(163, 113, 247, .14);--color-done-bd: rgba(163, 113, 247, .28);--color-term-magenta: #d2a8ff;--color-term-cyan: #76e3ea;--color-term-black: #484f58;--color-info: #1a88ff;--color-composer-bg: #1f1f1f;--color-composer-line: rgba(255, 255, 255, .12);--color-composer-focus-line: rgba(255, 255, 255, .25);--color-send-bg: rgba(255, 255, 255, .84);--color-send-bg-hover: rgba(255, 255, 255, .848);--color-send-icon: #1f1f1f;--color-stop-glyph: color-mix(in srgb, var(--color-danger) 72%, transparent);--color-send-bg-disabled: rgba(255, 255, 255, .1);--color-send-icon-disabled: rgba(255, 255, 255, .28);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .22), 0 1px 3px rgba(0, 0, 0, .18);--shadow-menu: 0 6px 18px rgba(0, 0, 0, .2), 0 3px 9px rgba(0, 0, 0, .24), 0 1px 1px rgba(0, 0, 0, .24);--color-menu-bg: rgba(41, 41, 41, .95);--shadow-input: 0 5px 16px -4px rgba(0, 0, 0, .07);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3), 0 2px 4px rgba(0, 0, 0, .24);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .34), 0 4px 10px rgba(0, 0, 0, .28);--shadow-xl: 0 24px 64px rgba(0, 0, 0, .42), 0 8px 20px rgba(0, 0, 0, .32)}}:root{--color-sidebar-tint: rgba(255, 255, 255, .2)}html[data-color-scheme=dark]{--color-sidebar-tint: rgba(0, 0, 0, .12)}@media(prefers-color-scheme:dark){html[data-color-scheme=system]{--color-sidebar-tint: rgba(0, 0, 0, .12)}}@media(max-resolution:1.1dppx){:root{--color-text: rgba(0, 0, 0, .95);--color-text-muted: rgba(0, 0, 0, .68);--color-text-faint: rgba(0, 0, 0, .53)}html[data-color-scheme=dark]{--color-text: rgba(255, 255, 255, .9);--color-text-muted: rgba(255, 255, 255, .64);--color-text-faint: rgba(255, 255, 255, .5)}}@media(max-resolution:1.1dppx)and (prefers-color-scheme:dark){html[data-color-scheme=system]{--color-text: rgba(255, 255, 255, .9);--color-text-muted: rgba(255, 255, 255, .64);--color-text-faint: rgba(255, 255, 255, .5)}}:root{--color-search-match: #ffe066;--color-search-match-current: #ffc531}html[data-color-scheme=dark]{--color-search-match: rgba(255, 197, 49, .3);--color-search-match-current: rgba(255, 197, 49, .55)}@media(prefers-color-scheme:dark){html[data-color-scheme=system]{--color-search-match: rgba(255, 197, 49, .3);--color-search-match-current: rgba(255, 197, 49, .55)}}::highlight(kimi-transcript-search){background-color:var(--color-search-match)}::highlight(kimi-transcript-search-current){background-color:var(--color-search-match-current)}::highlight(kimi-selection-comment-keep){background-color:Highlight;color:HighlightText}.mention-pill,.attachment-pill,.quote-pill{display:inline-flex;align-items:baseline;gap:var(--space-05);color:var(--color-text-muted);font-weight:var(--weight-ui-strong);white-space:nowrap;text-decoration:none;vertical-align:baseline;padding-inline:var(--space-05);transition:color var(--duration-fast) var(--ease-out)}.mention-pill:hover,.attachment-pill:hover,.quote-pill:hover{color:var(--color-text)}.mention-pill:hover .mention-pill-icon,.attachment-pill:hover .attachment-pill-icon,.quote-pill:hover .quote-pill-icon{color:inherit}.mention-pill.mention-file,.mention-pill.mention-skill,.attachment-pill[data-attachment-url]{cursor:pointer}.mention-pill.mention-file:hover,.mention-pill.mention-skill:hover,.attachment-pill[data-attachment-url]:hover{text-decoration:underline}.mention-pill:focus-visible,.attachment-pill:focus-visible,.quote-pill:focus-visible{outline:none;box-shadow:var(--p-focus-ring);border-radius:var(--radius-sm)}.ProseMirror .mention-pill,.ProseMirror .mention-pill:hover,.ProseMirror .attachment-pill,.ProseMirror .attachment-pill:hover,.ProseMirror .quote-pill,.ProseMirror .quote-pill:hover{cursor:text;text-decoration:none}.ProseMirror .attachment-pill.attachment-image,.ProseMirror .attachment-pill.attachment-image:hover,.ProseMirror .attachment-pill.attachment-video,.ProseMirror .attachment-pill.attachment-video:hover,a.mention-folder{cursor:default}.mention-pill.mention-skill.mention-inert,.mention-pill.mention-skill.mention-inert:hover{cursor:default;text-decoration:none}.mention-pill-name,.attachment-pill-name{max-width:var(--p-pill-excerpt-max);min-width:0;overflow:hidden;text-overflow:ellipsis}.quote-pill-name{max-width:var(--p-quote-pill-excerpt-max);min-width:0;overflow:hidden;text-overflow:ellipsis}.mention-pill-icon,.attachment-pill-icon,.quote-pill-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--p-ic-sm);height:var(--p-ic-sm);color:var(--muted);align-self:center;flex-shrink:0}.mention-pill-icon svg,.attachment-pill-icon svg,.quote-pill-icon svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block;stroke:currentColor;stroke-width:var(--p-hairline)}.mention-pill.pill-in-selection,.attachment-pill.pill-in-selection,.quote-pill.pill-in-selection{background:var(--p-selection);border-radius:var(--radius-sm)}.quote-pill:focus-visible{box-shadow:0 0 0 1px var(--color-text-muted),0 0 0 var(--p-focus-ring-w) var(--color-accent-soft)}.quote-pill-comment{max-width:var(--p-quote-pill-excerpt-max);min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-muted);font-weight:var(--weight-regular)}.quote-pill-comment:before{content:"❘";color:var(--color-text-faint);margin-inline:var(--space-1-5) var(--space-1)}.composer-text .q-sep{font-size:0;white-space:normal}.mention-tip{position:fixed;z-index:var(--z-tooltip);max-width:min(var(--p-mention-tip-w),calc(100vw - 2 * var(--p-mention-tip-vmargin)));padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-text);color:var(--color-bg);--p-tip-line: color-mix(in srgb, currentColor 18%, transparent);--p-tip-ink: color-mix(in srgb, currentColor 80%, transparent);--p-tip-ink-weak: color-mix(in srgb, currentColor 55%, transparent);font-family:var(--font-ui);font-size:var(--text-xs);line-height:round(calc(var(--text-xs) * 1.5),1px);overflow-wrap:anywhere;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.mention-tip:not(.positioned){pointer-events:none}.mention-tip.positioned{opacity:1}.mention-tip:has(.mention-tip-path){padding-right:var(--space-1)}.mention-tip:before,.mention-tip:after{content:"";position:absolute;left:0;right:0;height:var(--space-1-5)}.mention-tip:before{bottom:100%}.mention-tip:after{top:100%}.mention-tip>*{max-height:calc(100vh - 2 * var(--p-mention-tip-vmargin) - 2 * var(--space-2));overflow-y:auto}.mention-tip-caret{position:absolute;left:var(--tip-caret-x, 50%);width:12px;height:6px;background:var(--color-text);transform:translate(-50%)}.mention-tip[data-side=top]>.mention-tip-caret{top:100%;clip-path:polygon(0 0,100% 0,50% 100%)}.mention-tip[data-side=bottom]>.mention-tip-caret{bottom:100%;clip-path:polygon(50% 0,0 100%,100% 100%)}.mention-tip-path{display:flex;align-items:flex-start;gap:var(--space-2)}.mention-tip-path-text{min-width:0}.mention-tip-sep{color:color-mix(in srgb,currentColor 45%,transparent)}.mention-tip-base{font-weight:var(--weight-semibold)}.mention-tip-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.mention-tip-name{font-weight:var(--weight-semibold);overflow-wrap:anywhere}.mention-tip-open,.mention-tip-copy{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:var(--space-05);border:none;border-radius:var(--radius-xs);background:transparent;color:color-mix(in srgb,currentColor 65%,transparent);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.mention-tip-open:hover,.mention-tip-copy:hover{color:var(--color-bg);background:color-mix(in srgb,var(--color-bg) 14%,transparent)}.mention-tip-open:focus-visible,.mention-tip-copy:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.mention-tip-open svg,.mention-tip-copy svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block}.mention-tip-att-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--p-ic-sm);height:1lh;color:color-mix(in srgb,currentColor 65%,transparent)}.mention-tip-att-icon svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block}.mention-tip-att-size{color:color-mix(in srgb,currentColor 65%,transparent)}.mention-tip:has(.mention-tip-quote-card){padding:var(--space-2)}.mention-tip:has(.mention-tip-browser){padding:var(--space-2)}.mention-tip-browser{display:flex;flex-direction:column;gap:var(--space-2);width:min(var(--p-mention-tip-media-w),calc(100vw - var(--space-8)))}.mention-tip-browser-source,.mention-tip-browser-target{color:var(--p-tip-ink-weak);overflow-wrap:anywhere}.mention-tip-browser-target{font-family:var(--font-mono)}.mention-tip-browser-preview{width:100%;height:var(--p-mention-tip-media-h);object-fit:contain;border-radius:var(--radius-xs)}.mention-tip-browser-comment{color:var(--p-tip-ink);white-space:pre-wrap;overflow-wrap:anywhere}.mention-tip-quote-card{min-width:0;display:flex;flex-direction:column;gap:var(--space-1-5)}.mention-tip-quote-block{min-width:0;padding:var(--space-1) var(--space-1-5);border-radius:var(--radius-xs);background:color-mix(in srgb,currentColor 6%,transparent)}.mention-tip-quote-block-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-05)}.mention-tip-quote-block-head .mention-tip-copy{margin-right:calc(-1 * var(--space-1));opacity:0;transition:opacity var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.mention-tip-quote-block:hover .mention-tip-copy,.mention-tip-quote-block:focus-within .mention-tip-copy{opacity:1}@media(hover:none){.mention-tip-quote-block-head .mention-tip-copy{opacity:1}}.mention-tip-quote-block-head .mention-tip-quote-block-label{margin-bottom:0}.mention-tip-quote-block-label{margin-bottom:var(--space-05);color:var(--p-tip-ink-weak);font-size:var(--text-2xs);line-height:round(calc(var(--text-2xs) * 1.5),1px)}.mention-tip-quote-text{min-width:0;max-height:var(--p-tip-quote-lines);overflow-y:scroll;white-space:pre-wrap}.mention-tip-quote-comment{color:var(--p-tip-ink);white-space:pre-wrap;word-break:break-word;max-height:var(--p-tip-comment-lines);overflow-y:scroll}.mention-tip-quote-text,.mention-tip-quote-comment{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,currentColor 40%,transparent) transparent}.mention-tip-quote-text::-webkit-scrollbar,.mention-tip-quote-comment::-webkit-scrollbar{width:var(--space-1-5)}.mention-tip-quote-text::-webkit-scrollbar-thumb,.mention-tip-quote-comment::-webkit-scrollbar-thumb{background:color-mix(in srgb,currentColor 40%,transparent);border-radius:var(--radius-xs)}.mention-tip-quote-text::-webkit-scrollbar-track,.mention-tip-quote-comment::-webkit-scrollbar-track{background:transparent}.mention-tip-quote-source{min-width:0;color:var(--p-tip-ink-weak);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-tip-att-error{margin-top:var(--space-05);color:color-mix(in srgb,var(--color-danger) 70%,currentColor)}.mention-tip--media{padding:var(--space-1-5);border-radius:var(--radius-lg)}.mention-tip-media{display:flex;flex-direction:column;gap:var(--space-1-5)}.mention-tip-media-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:center;min-height:var(--p-mention-tip-media-preview-min-h);border:1px solid color-mix(in srgb,var(--color-bg) 14%,transparent);border-radius:var(--radius-sm);background-color:color-mix(in srgb,var(--color-bg) 8%,transparent);background-image:var(--p-mention-tip-media-check-bg);background-size:var(--p-mention-tip-media-check) var(--p-mention-tip-media-check);background-position:0 0,0 calc(var(--p-mention-tip-media-check) / 2),calc(var(--p-mention-tip-media-check) / 2) calc(var(--p-mention-tip-media-check) / -2),calc(var(--p-mention-tip-media-check) / -2) 0;overflow:hidden}.mention-tip-media-el::-webkit-media-controls-fullscreen-button,.mention-tip-media-el::-webkit-media-controls-overflow-button{display:none!important}.mention-tip-media-el{display:block;max-width:var(--p-mention-tip-media-w);max-height:var(--p-mention-tip-media-h);object-fit:contain;border-radius:var(--radius-sm)}.mention-tip-media-placeholder{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-3) var(--space-1);color:color-mix(in srgb,currentColor 45%,transparent)}.mention-tip-media-placeholder svg{width:var(--p-ic-lg);height:var(--p-ic-lg);display:block}.mention-tip-media-hint{padding:0 var(--space-2) var(--space-2);color:color-mix(in srgb,currentColor 60%,transparent);text-align:center}.mention-tip-media-meta{display:flex;align-items:center;gap:var(--space-1);min-width:0}.mention-tip-media-name{flex:0 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:var(--weight-semibold)}.mention-tip-media-error{padding:var(--space-1) var(--space-1-5);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-bg) 8%,transparent);color:color-mix(in srgb,var(--color-danger) 70%,currentColor)}.mention-tip-media-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);min-width:0}.mention-tip-media-state{display:inline-flex;align-items:center;gap:var(--space-1-5);flex:1 0 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:color-mix(in srgb,currentColor 65%,transparent);font-weight:var(--weight-medium);padding-left:var(--space-05)}.mention-tip-media-state.is-danger{color:color-mix(in srgb,var(--color-danger) 70%,currentColor)}.mention-tip-media-ring,.mention-tip-media-ring svg{width:var(--p-mention-tip-media-ring);height:var(--p-mention-tip-media-ring);display:block;flex:none}.mention-tip-media-ring-track{stroke:color-mix(in srgb,currentColor 18%,transparent)}.mention-tip-media-ring-arc{stroke:color-mix(in srgb,currentColor 78%,transparent)}.mention-tip-media-spin{flex:none;width:var(--p-mention-tip-media-spin);height:var(--p-mention-tip-media-spin);border-radius:var(--radius-full);border:1.5px solid color-mix(in srgb,currentColor 18%,transparent);border-top-color:color-mix(in srgb,currentColor 78%,transparent);animation:mention-tip-media-rot var(--duration-slow) linear infinite}@keyframes mention-tip-media-rot{to{transform:rotate(360deg)}}.mention-tip-media-actions{display:flex;flex-wrap:wrap;max-width:100%;justify-content:flex-end;gap:var(--space-1-5);margin-left:auto;flex:none}.mention-tip-media-open{position:relative;display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-05) var(--space-1-5);border:none;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-bg) 10%,transparent);color:color-mix(in srgb,currentColor 65%,transparent);font:inherit;cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.mention-tip-media-open:hover{background:color-mix(in srgb,var(--color-bg) 18%,transparent);color:var(--color-bg)}.mention-tip-media-open:focus-visible{outline:none;box-shadow:var(--p-focus-ring)}.mention-tip-media-open svg{width:var(--p-ic-sm);height:var(--p-ic-sm);display:block;color:color-mix(in srgb,currentColor 45%,transparent);transition:color var(--duration-fast) var(--ease-out)}.mention-tip-media-open:hover svg{color:var(--color-bg)}.mention-tip-desc{margin-top:var(--space-05);color:color-mix(in srgb,currentColor 78%,transparent);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.mention-tip-spinner{display:inline-block;width:calc(var(--space-2) + var(--space-05));height:calc(var(--space-2) + var(--space-05));margin-left:var(--space-1);vertical-align:var(--p-mention-tip-spinner-lift);border-radius:50%;border:var(--p-ring-stroke) solid color-mix(in srgb,currentColor 30%,transparent);border-top-color:currentColor;animation:mention-tip-spin var(--duration-spin) linear infinite}@keyframes mention-tip-spin{to{transform:rotate(360deg)}}.mention-pill.mention-missing,.mention-pill.mention-missing:hover{color:color-mix(in srgb,var(--color-text-muted) 55%,transparent);text-decoration:line-through}.mention-pill.mention-missing .mention-pill-icon{color:inherit}.attachment-pill.attachment-missing,.attachment-pill.attachment-missing:hover,.attachment-pill.attachment-missing .attachment-pill-icon,.attachment-pill.attachment-missing:hover .attachment-pill-icon{color:color-mix(in srgb,var(--color-text-muted) 55%,transparent);text-decoration:line-through}.attachment-pill.attachment-error,.attachment-pill.attachment-error:hover,.attachment-pill.attachment-error .attachment-pill-icon,.attachment-pill.attachment-error:hover .attachment-pill-icon{color:var(--color-danger)}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/NotoSansSC_wght_-BkPpiACN.woff2) format("woff2-variations")}@font-face{font-family:Schibsted Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/SchibstedGrotesk_wght_-DIzGrWVg.woff2) format("woff2-variations")}@font-face{font-family:Schibsted Grotesk Variable;font-style:italic;font-display:swap;font-weight:400 900;src:url(/assets/SchibstedGrotesk-Italic_wght_-DjkBGo1z.woff2) format("woff2-variations")}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;tab-size:4}body{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}p,blockquote,dl,dd,figure,pre{margin:0}ol,ul,menu{list-style:none;margin:0;padding:0}a{color:inherit;text-decoration:inherit}b,strong{font-weight:var(--weight-medium)}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}button,input,optgroup,select,textarea{margin:0;padding:0;font-family:inherit;font-size:100%;line-height:inherit;color:inherit}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background:transparent;background-image:none}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block}img,video{max-width:100%;height:auto}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1}table{border-collapse:collapse;border-color:inherit;text-indent:0}hr{height:0;color:inherit;border-top-width:1px}fieldset{margin:0;padding:0}legend{padding:0}dialog{padding:0}summary{display:list-item}[hidden]{display:none}@supports (interpolate-size: allow-keywords){:root{interpolate-size:allow-keywords}}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--dock-card-top-clearance: 72px;--question-card-body-min-h: 120px;--header-collapsed-clearance: 78px;--header-collapsed-clearance-macos: 146px}.kw-icon{display:inline-block;flex:none;vertical-align:-.15em}code,pre,kbd,samp,tt{font-feature-settings:"liga" 0,"calt" 0,"ss01" 0;font-variant-ligatures:none}html,body,#app{height:100%;margin:0;background:var(--bg)}#app{position:fixed;inset:0}html,body{overflow:hidden}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--color-text) 12%,transparent) transparent}}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-text) 12%,transparent);border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-text) 25%,transparent)}*::-webkit-scrollbar-corner{background:transparent}body{font-family:var(--sans);color:var(--color-text);background:var(--bg);font-size:var(--ui-font-size);font-weight:400;line-height:1.6;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:auto;font-synthesis:none;text-size-adjust:100%;-webkit-hyphens:none;hyphens:none}@keyframes kimi-card-in{0%{opacity:0;transform:translateY(8px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes kimi-check-in{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.ch-eyes{animation:kimi-eye-look 16s ease-in-out infinite}.ch-eye{transform-box:fill-box;transform-origin:center;animation:kimi-eye-blink 11s ease-in-out infinite}@keyframes kimi-eye-look{0%,42%{transform:translate(0)}47%,53%{transform:translate(2px)}58%,80%{transform:translate(0)}84%,90%{transform:translate(-2px)}95%,to{transform:translate(0)}}@keyframes kimi-eye-blink{0%,94%,to{transform:scaleY(1)}96.5%,98%{transform:scaleY(.12)}}@media(prefers-reduced-motion:reduce){.ch-eyes,.ch-eye{animation:none}}.blink-now .ch-eye{animation:kimi-eye-blink-once .24s ease-in-out}@keyframes kimi-eye-blink-once{0%,to{transform:scaleY(1)}50%{transform:scaleY(.1)}}.md .markdown-renderer img{min-width:0;min-height:0}.app{font-size:var(--ui-font-size)}.u-bub,.u-bub .u-text,.a-msg .msg,.ph{font-size:var(--content-font-size)}.md,.u-bub .u-text,.a-msg .msg{text-autospace:normal}.a-msg code{font-size:var(--md-b3)}.queue-item,.queue-text,.ctx-num,.model-pill,.perm-pill,.mode-pill,.compact-chip,.qcard,.qtext,.qopt,.qbtn,.srow,.srow-val{font-size:var(--ui-font-size)}.qopt-desc,.srow-label{font-size:var(--ui-font-size-sm)}.queue-label,.qopt-key,.qstep,.srow-sub{font-size:var(--ui-font-size-xs)}@media(max-width:640px){:root{--content-font-size: calc(var(--md-b1) + 2px)}}:root{--anim-rive-spin: .4167s;--anim-leftbar: .5333s;--anim-leftbar-shrink: .2s}#bar-divider{transform-box:view-box;transform-origin:9.3px 12px;transition:transform var(--anim-leftbar-shrink) linear}svg:hover #bar-divider,button:hover #bar-divider{transform:translate(-1.5px) scaleY(.5)}#bar-arrow{transform-box:view-box;transform-origin:0 0;transform:translate(63.95833%,50.625%) scale(0)}svg:hover #bar-arrow,button:hover #bar-arrow{animation:leftbar-arrow var(--anim-leftbar) linear 1 forwards}@keyframes leftbar-arrow{0%{transform:translate(62.97083%,50.625%) scale(-.6);opacity:0}3.125%{transform:translate(62.97083%,50.625%) scale(-.6);opacity:1}15.625%{transform:translate(59.0125%,50.625%) scale(-1);opacity:1}37.5%{transform:translate(52.08333%,50.625%) scale(-1);opacity:1}to{transform:translate(52.08333%,50.625%) scale(-1);opacity:1}}#bar-arrow-expand{transform-box:view-box;transform-origin:0 0;transform:translate(52.08333%,50.625%) scale(0)}svg:hover #bar-arrow-expand,button:hover #bar-arrow-expand{animation:leftbar-arrow-expand var(--anim-leftbar) linear 1 forwards}@keyframes leftbar-arrow-expand{0%{transform:translate(37.02917%,50.625%) scale(.6);opacity:0}3.125%{transform:translate(37.02917%,50.625%) scale(.6);opacity:1}15.625%{transform:translate(40.9875%,50.625%) scale(1);opacity:1}37.5%{transform:translate(52.08333%,50.625%) scale(1);opacity:1}to{transform:translate(52.08333%,50.625%) scale(1);opacity:1}}#rbar-divider{transform-box:view-box;transform-origin:14.7px 12px;transition:transform var(--anim-leftbar-shrink) linear}svg:hover #rbar-divider,button:hover #rbar-divider{transform:translate(1.5px) scaleY(.5)}#rbar-arrow{transform-box:view-box;transform-origin:0 0;transform:translate(47.91667%,50.625%) scale(0)}svg:hover #rbar-arrow,button:hover #rbar-arrow{animation:rightbar-arrow var(--anim-leftbar) linear 1 forwards}@keyframes rightbar-arrow{0%{transform:translate(37.02917%,50.625%) scale(.6);opacity:0}3.125%{transform:translate(37.02917%,50.625%) scale(.6);opacity:1}15.625%{transform:translate(40.9875%,50.625%) scale(1);opacity:1}37.5%{transform:translate(47.91667%,50.625%) scale(1);opacity:1}to{transform:translate(47.91667%,50.625%) scale(1);opacity:1}}#rbar-arrow-expand{transform-box:view-box;transform-origin:0 0;transform:translate(47.91667%,50.625%) scale(0)}svg:hover #rbar-arrow-expand,button:hover #rbar-arrow-expand{animation:rightbar-arrow-expand var(--anim-leftbar) linear 1 forwards}@keyframes rightbar-arrow-expand{0%{transform:translate(62.97083%,50.625%) scale(-.6);opacity:0}3.125%{transform:translate(62.97083%,50.625%) scale(-.6);opacity:1}15.625%{transform:translate(59.0125%,50.625%) scale(-1);opacity:1}37.5%{transform:translate(47.91667%,50.625%) scale(-1);opacity:1}to{transform:translate(47.91667%,50.625%) scale(-1);opacity:1}}#p1{transform-box:view-box;transform-origin:0 0}svg:hover #p1,button:hover #p1{animation:nc-plus-spin var(--anim-rive-spin) linear 1 forwards}@keyframes nc-plus-spin{0%{transform:translate(11.5px,11.5px)}8%{transform:translate(11.501px,11.48px) rotate(1.1795deg) scale(1.02022)}12%{transform:translate(11.511px,11.46px) rotate(2.8374deg) scale(1.03026)}20%{transform:translate(11.562px,11.401px) rotate(8.8167deg) scale(1.05041)}24%{transform:translate(11.608px,11.361px) rotate(13.4726deg) scale(1.06017)}32%{transform:translate(11.751px,11.278px) rotate(25.9719deg) scale(1.08008)}48%{transform:translate(12.149px,11.222px) rotate(55.8418deg) scale(1.12025)}52%{transform:translate(12.235px,11.236px) rotate(62.0737deg) scale(1.12953)}60%{transform:translate(12.371px,11.276px) rotate(72.1167deg) scale(1.14954)}68%{transform:translate(12.446px,11.346px) rotate(79.3018deg) scale(1.12048)}76%{transform:translate(12.488px,11.403px) rotate(84.2633deg) scale(1.09046)}88%{transform:translate(12.509px,11.464px) rotate(88.52deg) scale(1.04535)}to{transform:translate(12.5px,11.5px) rotate(90deg)}}#af-p1{transform-box:view-box;transform-origin:18.4px 16.3px}svg:hover #af-p1,button:hover #af-p1{animation:folder-plus-spin var(--anim-rive-spin) linear 1 forwards}@keyframes folder-plus-spin{0%{transform:none}8%{transform:rotate(1.1795deg) scale(1.02022)}12%{transform:rotate(2.8374deg) scale(1.03026)}20%{transform:rotate(8.8167deg) scale(1.05041)}24%{transform:rotate(13.4726deg) scale(1.06017)}32%{transform:rotate(25.9719deg) scale(1.08008)}48%{transform:rotate(55.8418deg) scale(1.12025)}52%{transform:rotate(62.0737deg) scale(1.12953)}60%{transform:rotate(72.1167deg) scale(1.14954)}68%{transform:rotate(79.3018deg) scale(1.12048)}76%{transform:rotate(84.2633deg) scale(1.09046)}88%{transform:rotate(88.52deg) scale(1.04535)}to{transform:rotate(90deg)}} diff --git a/apps/kimi-code/dist-web/assets/index-DUuyqWli.js b/apps/kimi-code/dist-web/assets/index-DUuyqWli.js deleted file mode 100644 index 15827473f2..0000000000 --- a/apps/kimi-code/dist-web/assets/index-DUuyqWli.js +++ /dev/null @@ -1,7 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-BAuXCnoo.js","assets/index-CWYttcZZ.js","assets/index-HU0LCM-X.js","assets/index-C8RkgE6U.css"])))=>i.map(i=>d[i]); -import{bR as Q}from"./index-HU0LCM-X.js";var Y=class{chunks=[];cached="";dirty=!1;length=0;append(e){e&&(this.chunks.push(e),this.length+=e.length,this.dirty=!0,this.chunks.length>256&&this.compact())}clear(e=""){this.chunks=e?[e]:[],this.cached=e,this.dirty=!1,this.length=e.length}toString(){return this.dirty&&(this.cached=this.chunks.join(""),this.dirty=!1),this.cached}compact(){this.chunks=[this.chunks.join("")]}};function $(e,i){e.replaceChildren();const t=document.createElement("div");t.className="stream-diffs-shell",t.style.overflow="auto",t.style.maxHeight=typeof i=="number"?`${i}px`:i??"none";const n=document.createElement("div");return n.className="stream-diffs-surface",t.appendChild(n),e.appendChild(t),{shell:t,surface:n}}function E(e,i,t){return{name:e,contents:i,lang:t}}var Z=class{input;container;surface;instance;diff;selectedLines=null;disposed=!1;renderListeners=new Set;visualRevision=0;visualReadyPromise=Promise.resolve(!1);resolveVisualReady;constructor(e){this.input=e}async mount(e){this.disposed=!1,this.container=e,this.surface=$(e).surface,await this.render()}async update(e){this.input=e,this.surface&&await this.render(!0)}updateFile(e,i){return this.update({kind:"file",file:e,annotations:i,options:this.input.kind==="file"?this.input.options:void 0,workerManager:this.input.kind==="file"?this.input.workerManager:void 0})}updateDiff(e,i,t){return this.update({kind:"diff",oldFile:e,newFile:i,annotations:t,options:z(this.input)?this.input.options:void 0,workerManager:z(this.input)?this.input.workerManager:void 0})}updateParsedDiff(e,i){return this.update({kind:"diff",fileDiff:e,annotations:i,options:z(this.input)?this.input.options:void 0,workerManager:z(this.input)?this.input.workerManager:void 0})}updatePatch(e,i=0,t,n=0){return this.update({kind:"patch",patch:e,patchIndex:n,fileIndex:i,annotations:t,options:this.input.kind==="patch"?this.input.options:void 0,workerManager:this.input.kind==="patch"?this.input.workerManager:void 0})}updateMergeConflict(e,i){return this.update({kind:"merge-conflict",file:e,annotations:i,options:this.input.kind==="merge-conflict"?this.input.options:void 0,workerManager:this.input.kind==="merge-conflict"?this.input.workerManager:void 0})}setSelectedLines(e){this.selectedLines=e,this.instance?.setSelectedLines(e)}setAnnotations(e){this.instance&&(this.input.kind==="file"?(this.input.annotations=e,this.instance.setLineAnnotations(this.input.annotations)):(this.input.annotations=e,this.instance.setLineAnnotations(this.input.annotations)),this.emitRender())}setThemeType(e){this.input.options?this.input.options={...this.input.options,themeType:e}:this.input.options={themeType:e},this.instance?.setThemeType(e)}async setTheme(e){this.input.options?this.input.options={...this.input.options,theme:e}:this.input.options={theme:e},this.surface&&await this.render(!1)}async setOptions(e){this.input.options=e,this.surface&&await this.render(!1)}acceptReject(e,i){if(!z(this.input)||!this.diff)throw new Error("acceptReject() requires a diff view");const{diffAcceptRejectHunk:t}=this.module;return this.diff=t(this.diff,e,i),this.instance.render({fileDiff:this.diff,containerWrapper:this.surface,lineAnnotations:this.input.annotations}),this.diff}resolveConflict(e,i){if(this.input.kind!=="merge-conflict")throw new Error("resolveConflict() requires a merge-conflict view");const t=this.instance.resolveConflict(e,i);return t&&(this.input.file=t.file,this.diff=t.fileDiff),t?.file}getResolvedFile(){if(!z(this.input)||!this.diff||this.diff.isPartial)return;const e="newFile"in this.input?this.input.newFile:void 0;return{name:e?.name??this.diff.name,contents:this.diff.additionLines.join(""),lang:e?.lang??this.diff.lang}}getDiff(){return this.diff}getInput(){return this.input}getNativeInstance(){return this.instance}onDidRender(e){return this.renderListeners.add(e),{dispose:()=>this.renderListeners.delete(e)}}async whenVisualReady(){let e=this.visualReadyPromise;for(;;){const i=await e;if(e===this.visualReadyPromise)return i;e=this.visualReadyPromise}}dispose(){this.disposed=!0,this.invalidateVisualReady(),this.instance?.cleanUp(),this.instance=void 0,this.surface=void 0,this.container?.replaceChildren(),this.container=void 0,this.renderListeners.clear()}module;async render(e=!0){const i=this.surface;if(!i||this.disposed)return;const t=this.beginVisualRender(),n=this.module??=await Q(()=>import("./index-BAuXCnoo.js"),__vite__mapDeps([0,1,2,3]));if(this.disposed||i!==this.surface)return;if(this.instance?.cleanUp(),i.replaceChildren(),this.input.kind==="file"){const o=new n.File(b(this.input.options,()=>this.markVisualReady(t)),this.input.workerManager);o.render({file:this.input.file,containerWrapper:i,lineAnnotations:this.input.annotations}),this.instance=o,o.setSelectedLines(this.selectedLines),this.diff=void 0;return}if(z(this.input)){if(e||!this.diff)if(this.input.kind==="patch"){const a=n.parsePatchFiles(this.input.patch)[this.input.patchIndex??0];if(!a)throw new Error(`Patch does not contain patch index ${this.input.patchIndex??0}`);const d=a.files[this.input.fileIndex??0];if(!d)throw new Error(`Patch does not contain file index ${this.input.fileIndex??0}`);this.diff=d}else"fileDiff"in this.input?this.diff=this.input.fileDiff:this.diff=n.parseDiffFromFile(this.input.oldFile,this.input.newFile,this.input.options?.parseDiffOptions);const o=new n.FileDiff(b(this.input.options,()=>this.markVisualReady(t)),this.input.workerManager);o.render({fileDiff:this.diff,containerWrapper:i,lineAnnotations:this.input.annotations}),this.instance=o,o.setSelectedLines(this.selectedLines);return}const r=new n.UnresolvedFile(b(this.input.options,()=>this.markVisualReady(t)),this.input.workerManager);r.render({file:this.input.file,containerWrapper:i,lineAnnotations:this.input.annotations}),this.instance=r,r.setSelectedLines(this.selectedLines),this.diff=r.fileDiff}emitRender(){for(const e of this.renderListeners)e()}beginVisualRender(){this.resolveVisualReady?.(!1);const e=++this.visualRevision;return this.visualReadyPromise=new Promise(i=>{this.resolveVisualReady=i}),e}markVisualReady(e){this.disposed||e!==this.visualRevision||(this.resolveVisualReady?.(!0),this.resolveVisualReady=void 0,this.emitRender())}invalidateVisualReady(){this.visualRevision++,this.resolveVisualReady?.(!1),this.resolveVisualReady=void 0}};function x(e){return new Z(e)}function ee(e){return!e||e.useTokenTransformer===!0||!e.onTokenClick&&!e.onTokenEnter&&!e.onTokenLeave?e:{...e,useTokenTransformer:!0}}function b(e,i){const t=ee(e),n=t?.onPostRender;return{...t,onPostRender(...r){n?.(...r),i()}}}function z(e){return e.kind==="diff"||e.kind==="patch"}var K=class{options;state="idle";stats={characters:0,lines:0,writes:0,resets:0,renderMode:"plain-text",overflowed:!1};text=new Y;pending=[];scheduled;generation=0;container;shell;surface;finalizedSurface;plainText;finalizePromise;renderListeners=new Set;finalizedRenderSubscription;constructor(e={}){this.options=e}async mount(e){if(this.state==="disposed")throw new Error("Cannot mount a disposed code stream. Create a new controller instead.");++this.generation,this.cancelScheduledFlush(),this.finalizedSurface?.dispose(),this.finalizedRenderSubscription?.dispose(),this.container?.replaceChildren(),this.finalizedSurface=void 0,this.finalizedRenderSubscription=void 0,this.plainText=void 0,this.pending=[],this.setState("mounting"),this.container=e;const{shell:i,surface:t}=$(e,this.options.maxHeight);this.shell=i,this.surface=t,this.mountPlainText(t),this.stats.startedAt??=performance.now(),this.setState("streaming")}append(e){if(e){if(this.state==="finalized"||this.state==="finalizing"||this.state==="disposed")throw new Error(`Cannot append while stream is ${this.state}`);this.text.append(e),this.stats.characters=this.text.length,this.stats.lines+=ie(e)+(this.stats.lines===0?1:0),this.pending.push(e),this.scheduleFlush()}}updateSnapshot(e){const i=this.text.toString();if(e.startsWith(i)){this.append(e.slice(i.length));return}const t=this.options.nonAppendBehavior??"reset";if(t!=="ignore"){if(t==="throw")throw new Error("Snapshot violates the append-only stream contract");return this.reset(e)}}async consume(e){try{if(Symbol.asyncIterator in e)for await(const i of e)this.append(i);else{const i=e.getReader();try{for(;;){const{done:t,value:n}=await i.read();if(t)break;this.append(n)}}finally{i.releaseLock()}}}catch(i){throw this.fail(i),i}}async flush(){if(this.cancelScheduledFlush(),!this.pending.length)return;const e=this.shouldFollowViewport(),i=this.pending.join("");this.pending.length=0,this.plainText?.append(i),this.stats.writes++,this.followViewport(e),this.emitRender()}finalize(e={view:"stream"}){if(this.state==="finalized")return Promise.resolve();if(this.finalizePromise)return this.finalizePromise;const i=this.performFinalize(e).finally(()=>{this.finalizePromise===i&&(this.finalizePromise=void 0)});return this.finalizePromise=i,i}async performFinalize(e){if(this.state==="disposed")throw new Error("Cannot finalize a disposed code stream");const i=this.generation;if(this.setState("finalizing"),await this.flush(),i!==this.generation)return;if(this.stats.finalizedAt=performance.now(),!e.view||e.view==="stream"){this.setState("finalized");return}const t=this.surface;if(!t)throw new Error("Mount the stream before finalizing to a file or diff view");const n=this.options.fileName??`code.${this.options.language??"txt"}`,r=E(n,this.getText(),this.options.language);let o;if(e.view==="file"){const{annotations:c,workerManager:g,view:S,...T}=e;o=x({kind:"file",file:r,annotations:c,options:{theme:this.options.theme,themeType:this.options.themeType,...T},workerManager:g??this.options.workerManager})}else{const{annotations:c,original:g,workerManager:S,view:T,...L}=e;o=x({kind:"diff",oldFile:E(n,g,this.options.language),newFile:r,annotations:c,options:{theme:this.options.theme,themeType:this.options.themeType,...L},workerManager:S??this.options.workerManager})}const a=document.createElement("div");if(a.className="stream-diffs-finalized",await o.mount(a),i!==this.generation){o.dispose();return}const d=this.shell,p=d?.scrollTop??0,h=d?d.scrollHeight-d.scrollTop-d.clientHeight:0;t.replaceWith(a),this.surface=a,this.plainText=void 0,this.finalizedSurface=o,this.finalizedRenderSubscription=o.onDidRender(()=>this.emitRender()),d&&(this.options.autoScroll==="always"||this.options.autoScroll!=="never"&&h<=(this.options.autoScrollThresholdPx??32)?d.scrollTop=d.scrollHeight:d.scrollTop=p),this.setState("finalized"),this.emitRender()}async reset(e=""){const i=this.container;++this.generation,this.cancelScheduledFlush(),this.finalizedSurface?.dispose(),this.finalizedRenderSubscription?.dispose(),this.finalizedSurface=void 0,this.finalizedRenderSubscription=void 0,this.plainText=void 0,this.pending=[],this.finalizePromise=void 0,this.text.clear(),this.stats.resets++,this.stats.characters=0,this.stats.lines=0,this.stats.renderMode="plain-text",this.stats.overflowed=!1,this.setState("idle"),e&&this.append(e),i&&await this.mount(i)}setThemeType(e){this.options.themeType=e,this.finalizedSurface?.setThemeType(e)}async setTheme(e){this.options.theme=e,this.finalizedSurface&&await this.finalizedSurface.setTheme(e)}async setLanguage(e){if(e===this.options.language||(this.options.language=e,!this.finalizedSurface))return;const i=this.finalizedSurface.getInput();i.kind==="file"?await this.finalizedSurface.updateFile({...i.file,lang:e},i.annotations):i.kind==="diff"&&"oldFile"in i&&await this.finalizedSurface.updateDiff({...i.oldFile,lang:e},{...i.newFile,lang:e},i.annotations)}getText(){return this.text.toString()}getState(){return this.state}getStats(){return{...this.stats}}getElement(){return this.shell}getFinalizedSurface(){return this.finalizedSurface}onDidRender(e){return this.renderListeners.add(e),{dispose:()=>this.renderListeners.delete(e)}}dispose(){++this.generation,this.cancelScheduledFlush(),this.finalizedSurface?.dispose(),this.finalizedRenderSubscription?.dispose(),this.container?.replaceChildren(),this.plainText=void 0,this.container=void 0,this.surface=void 0,this.shell=void 0,this.finalizedSurface=void 0,this.finalizedRenderSubscription=void 0,this.finalizePromise=void 0,this.renderListeners.clear(),this.setState("disposed")}scheduleFlush(){if(this.scheduled!=null||!this.plainText)return;const e=this.options.flushStrategy??"raf";e==="raf"&&typeof requestAnimationFrame=="function"?this.scheduled=requestAnimationFrame(()=>void this.flush()):this.scheduled=globalThis.setTimeout(()=>void this.flush(),e==="raf"?0:e.intervalMs)}cancelScheduledFlush(){this.scheduled!=null&&(typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(this.scheduled),clearTimeout(this.scheduled),this.scheduled=void 0)}shouldFollowViewport(){const e=this.shell;return!e||this.options.autoScroll==="never"?!1:this.options.autoScroll==="always"?!0:e.scrollHeight-e.scrollTop-e.clientHeight<=(this.options.autoScrollThresholdPx??32)}followViewport(e=this.shouldFollowViewport()){this.shell&&e&&(this.shell.scrollTop=this.shell.scrollHeight)}mountPlainText(e){const i=document.createElement("pre");i.className="stream-diffs-plain-text",i.dataset.streamDiffsState="streaming",i.style.margin="0",i.style.whiteSpace=this.options.wrap?"pre-wrap":"pre",i.style.overflowWrap=this.options.wrap?"anywhere":"normal",i.textContent=this.getText(),e.replaceChildren(i),this.plainText=i}setState(e){this.state=e,this.options.onStateChange?.(e)}emitRender(){for(const e of this.renderListeners)e()}fail(e){this.state!=="disposed"&&(this.setState("error"),this.options.onError?.(e))}};function ie(e){let i=0;for(let t=0;t{this.finalizePromise===i&&(this.finalizePromise=void 0)});return this.finalizePromise=i,i}async performFinalize(e){if(this.state==="disposed")throw new Error("Cannot finalize a disposed diff stream");const i=this.surface;if(!i)throw new Error("Mount the diff stream before finalizing it");const t=this.generation;this.setState("finalizing");const n=x({kind:"diff",oldFile:this.asFile(this.original),newFile:this.asFile(this.modified),annotations:e,options:{...this.options,diffStyle:this.options.diffStyle??"unified"},workerManager:this.options.workerManager}),r=document.createElement("div");if(r.className="stream-diffs-finalized",await n.mount(r),t!==this.generation){n.dispose();return}const o=this.shell,a=o?.scrollTop??0;return i.replaceWith(r),this.surface=r,this.finalizedSurface=n,this.finalizedRenderSubscription=n.onDidRender(()=>this.emitRender()),o&&(o.scrollTop=a),this.setState("finalized"),this.emitRender(),n}setThemeType(e){this.options.themeType=e,this.finalizedSurface?.setThemeType(e)}async setTheme(e){this.options.theme=e,this.finalizedSurface&&await this.finalizedSurface.setTheme(e)}async setLanguage(e){if(e!==this.options.language){if(this.options.language=e,this.finalizedSurface){const i=this.finalizedSurface.getInput();i.kind==="diff"&&"oldFile"in i&&await this.finalizedSurface.updateDiff({...i.oldFile,lang:e},{...i.newFile,lang:e},i.annotations);return}this.renderPre()}}getOriginal(){return this.original}getModified(){return this.modified}getState(){return this.state}getElement(){return this.shell}getFinalizedSurface(){return this.finalizedSurface}onDidRender(e){return this.renderListeners.add(e),{dispose:()=>this.renderListeners.delete(e)}}dispose(){++this.generation,this.finalizedSurface?.dispose(),this.finalizedRenderSubscription?.dispose(),this.container?.replaceChildren(),this.container=void 0,this.shell=void 0,this.surface=void 0,this.finalizedSurface=void 0,this.finalizedRenderSubscription=void 0,this.finalizePromise=void 0,this.renderListeners.clear(),this.setState("disposed")}renderPre(){const e=this.surface;if(!e||this.finalizedSurface)return;const i=document.createElement("div");i.className=`stream-diffs-diff-pre stream-diffs-diff-pre--${this.options.diffStyle??"unified"}`,i.dataset.streamDiffsState="streaming",i.style.minWidth="max-content",(this.options.diffStyle??"unified")==="split"?(i.style.display="grid",i.style.gridTemplateColumns="minmax(0, 1fr) minmax(0, 1fr)",i.append(this.createPre(this.original,"deletions"),this.createPre(this.modified,"additions"))):i.append(this.createPre(te(this.original,this.modified),"unified")),e.replaceChildren(i)}createPre(e,i){const t=document.createElement("pre");return t.className=`stream-diffs-diff-pre__pane stream-diffs-diff-pre__pane--${i}`,t.dataset.side=i,t.style.margin="0",t.style.whiteSpace=this.options.wrap?"pre-wrap":"pre",t.style.overflowWrap=this.options.wrap?"anywhere":"normal",t.textContent=e,t}asFile(e){return E(this.options.fileName??`code.${this.options.language??"txt"}`,e,this.options.language)}setState(e){this.state=e,this.options.onStateChange?.(e)}emitRender(){for(const e of this.renderListeners)e()}};function te(e,i){const t=e.split(` -`),n=i.split(` -`);let r=0;for(;r` ${a}`),...t.slice(r,t.length-o).map(a=>`- ${a}`),...n.slice(r,n.length-o).map(a=>`+ ${a}`),...t.slice(t.length-o).map(a=>` ${a}`)].join(` -`)}function he(e){return new G(e)}function ue(e={}){let i,t,n,r,o,a="text",d="",p="",h,c=0,g="system",S=U(e),T=q(e);const L={disableLineNumbers:e.lineNumbers===!1,overflow:e.wordWrap==="on"?"wrap":"scroll",enableLineSelection:e.enableLineSelection},M=()=>({...L,theme:S,themeType:g});async function H(s,l,u){k();const w=c;if(N(s,e),h=s,a=R(u),_(l))return V(s,l,a);if(e.stream===!1)return O(s,l,a);const f=new K({...M(),...F(e),fileName:`code.${a}`,language:a,maxHeight:e.MAX_HEIGHT,autoScroll:e.autoScrollOnUpdate===!1?"never":"near-bottom",autoScrollThresholdPx:e.autoScrollThresholdPx,workerManager:e.workerManager});if(i=f,f.append(l),await f.mount(s),w!==c||i!==f||h!==s)throw f.dispose(),new Error("Editor creation was cancelled");return e.onController?.(f),r=C(()=>f.getText(),s,()=>f.getFinalizedSurface(),m=>f.onDidRender(m)),r}async function I(s,l,u,w){k();const f=c;N(s,e),h=s,a=R(w),d=l,p=u;let m,v;if(e.stream===!1){if(m=x({kind:"diff",oldFile:y(l),newFile:y(u),annotations:e.lineAnnotations,workerManager:e.workerManager,options:{...M(),diffStyle:e.diffStyle??(e.renderSideBySide===!1?"unified":"split"),...F(e)}}),n=m,await m.mount(s),f!==c||n!==m||h!==s)throw m.dispose(),new Error("Editor creation was cancelled");e.onController?.(m)}else{if(v=new G({...M(),...F(e),fileName:`code.${a}`,language:a,diffStyle:e.diffStyle??(e.renderSideBySide===!1?"unified":"split"),maxHeight:e.MAX_HEIGHT,wrap:e.wordWrap==="on",workerManager:e.workerManager}),t=v,await v.mount(s,l,u),f!==c||t!==v||h!==s)throw v.dispose(),new Error("Editor creation was cancelled");e.onController?.(v)}return o=oe(()=>d,()=>p,s,()=>m??v?.getFinalizedSurface()),o}async function X(s,l=a){const u=R(l);if(_(s)){n?.getInput().kind==="merge-conflict"?(a=u,await n.updateMergeConflict(y(s),e.lineAnnotations)):h&&await V(h,s,u);return}if(e.stream===!1){n?.getInput().kind==="file"?(a=u,await n.updateFile(y(s),e.lineAnnotations)):h&&await O(h,s,u);return}if(!i){h&&await H(h,s,u);return}if(i.getState()==="finalized"){s!==i.getText()&&await i.reset(s);return}if(u!==a){a=u,await i.setLanguage(u),s!==i.getText()&&await i.reset(s);return}const w=i.getText();s.startsWith(w)?i.append(s.slice(w.length)):await i.reset(s)}async function P(s,l,u=a){if(d=s,p=l,a=R(u),t){await t.update(s,l);return}if(!n){h&&await I(h,s,l,u);return}await n.updateDiff(y(s),y(l))}function k(){c++,i?.dispose(),t?.dispose(),t||n?.dispose(),i=void 0,t=void 0,n=void 0,r=void 0,o=void 0,h=void 0}async function O(s,l,u){k();const w=c;h=s,a=u;const f=x({kind:"file",file:y(l),annotations:e.lineAnnotations,workerManager:e.workerManager,options:{...M(),...F(e)}});if(n=f,await f.mount(s),w!==c||n!==f||h!==s)throw f.dispose(),new Error("Editor creation was cancelled");return e.onController?.(f),r=C(()=>B(f)??l,s,()=>f,m=>f.onDidRender(m)),r}async function V(s,l,u){k();const w=c;h=s,a=u;const f=x({kind:"merge-conflict",file:y(l),annotations:e.lineAnnotations,workerManager:e.workerManager,options:{...M(),...F(e)}});if(n=f,await f.mount(s),w!==c||n!==f||h!==s)throw f.dispose(),new Error("Editor creation was cancelled");return e.onController?.(f),r=C(()=>B(f)??l,s,()=>f,m=>f.onDidRender(m)),r}function _(s){return e.mergeConflict===!1?!1:/^<<<<<<< .+$/m.test(s)&&/^=======$/m.test(s)&&/^>>>>>>> .+$/m.test(s)}async function J(s){if(s){if(typeof s=="string"){const l=e.themes;if(l?.[0]===s){await W(),g="dark",i?.setThemeType("dark"),t?.setThemeType("dark"),n?.setThemeType("dark");return}if(l?.[1]===s){await W(),g="light",i?.setThemeType("light"),t?.setThemeType("light"),n?.setThemeType("light");return}}T=void 0,S=s,await j(s)}}async function W(){const s=q(e);!s||s===T||(T=s,S=U(e),await j(S))}async function j(s){await i?.setTheme(s),await t?.setTheme(s),await n?.setTheme(s)}function y(s){return E(`code.${a||"txt"}`,s,a)}return{runtimeKind:"stream-diffs",createEditor:H,createDiffEditor:I,updateCode:X,appendCode(s){i?.append(s)},async finalizeCode(){if(!i||i.getState()==="finalized")return i?.getFinalizedSurface();const s=F(e);return delete s.lineAnnotations,await i.finalize({view:"file",...s,theme:S,themeType:g,annotations:e.lineAnnotations,workerManager:e.workerManager}),i.getFinalizedSurface()},async finalizeDiff(){return t&&(n=await t.finalize(e.lineAnnotations)),n},updateDiff:P,updateOriginal(s,l=a){return P(s,p,l)},updateModified(s,l=a){return P(d,s,l)},appendOriginal(s,l=a){return P(d+s,p,l)},appendModified(s,l=a){return P(d,p+s,l)},cleanupEditor:k,safeClean:k,setTheme:J,async setLanguage(s){if(a=R(s),await i?.setLanguage(a),await t?.setLanguage(a),n&&!t){const l=n.getInput();l.kind==="file"||l.kind==="merge-conflict"?await n.update({...l,file:{...l.file,lang:a}}):l.kind==="diff"&&"oldFile"in l&&await n.update({...l,oldFile:{...l.oldFile,lang:a},newFile:{...l.newFile,lang:a}})}},getCurrentTheme:()=>S,getEditor:()=>le,getEditorView:()=>r??null,getDiffEditorView:()=>o??null,getDiffModels:()=>({original:D(()=>d),modified:D(()=>n?.getResolvedFile()?.contents??t?.getModified()??p)}),getCode:()=>{const s=n?.getInput();return s?.kind==="diff"||s?.kind==="patch"?{original:d,modified:n?.getResolvedFile()?.contents??p}:s?.kind==="file"||s?.kind==="merge-conflict"?s.file.contents:t?{original:t.getOriginal(),modified:t.getModified()}:i?.getText()??null},refreshDiffPresentation:()=>n?.update(n.getInput()),whenVisualReady:async()=>{const s=h,l=c,u=n??i?.getFinalizedSurface()??t?.getFinalizedSurface();return!u||!await u.whenVisualReady()?!1:ne(s,()=>l===c&&s===h&&u===(n??i?.getFinalizedSurface()??t?.getFinalizedSurface()),()=>se(n??i?.getFinalizedSurface()??t?.getFinalizedSurface()))}}}async function ne(e,i,t){if(!e||typeof window>"u")return!1;let n="",r,o=0;for(let a=0;a<120;a+=1){if(!i())return!1;const d=e.querySelector(".stream-diffs-shell"),p=d?.querySelector("diffs-container")?.shadowRoot?.querySelector("pre"),h=d?.getBoundingClientRect(),c=p?.textContent??"";if(h&&h.width>0&&h.height>0&&p&&t()){const g=`${Math.round(h.width)}:${Math.round(h.height)}:${p.scrollWidth}:${p.scrollHeight}:${c.length}`;if(o=p===r&&g===n?o+1:1,r=p,n=g,o>=2)return!0}else n="",r=void 0,o=0;await ae()}return!1}function se(e){if(!e)return!0;const i=e.getNativeInstance(),t=i?.fileRenderer??i?.hunksRenderer;if(!t)return!0;const n=t.renderCache;if(!n?.result)return!1;if(n.highlighted===!0)return!0;const r=e.getInput();if(R(r.kind==="file"||r.kind==="merge-conflict"?r.file.lang:"oldFile"in r?r.oldFile.lang??r.newFile.lang:e.getDiff()?.lang)==="text")return!0;const o=Number(t.getTokenizeMaxLength?.()??1e5);if(r.kind==="file"||r.kind==="merge-conflict")return re(r.file.contents)>o;const a=e.getDiff();return!!a&&Math.max(a.additionLines.length,a.deletionLines.length)>o}function R(e){return!e||/^(?:text|txt|plain|plaintext)$/i.test(e)?"text":e}function re(e){if(!e)return 0;let i=1;for(let t=0;t{let i=!1;const t=()=>{i||(i=!0,window.clearTimeout(r),window.cancelAnimationFrame(n),e())},n=window.requestAnimationFrame(t),r=window.setTimeout(t,50)})}function U(e){return e.themes?.length&&typeof e.themes[0]=="string"&&typeof e.themes[1]=="string"?{dark:e.themes[0],light:e.themes[1]}:e.theme??void 0}function q(e){if(!(typeof e.themes?.[0]!="string"||typeof e.themes?.[1]!="string"))return`${e.themes[0]} -${e.themes[1]}`}function F(e){const i=new Set(["MAX_HEIGHT","theme","themes","readOnly","lineNumbers","wordWrap","renderSideBySide","autoScrollOnUpdate","autoScrollThresholdPx","stream","mergeConflict","lineAnnotations","onController","workerManager","languages","onThemeChange"]),t=Object.fromEntries(Object.entries(e).filter(([a])=>!i.has(a))),n=e.diffHideUnchangedRegions;delete t.diffHideUnchangedRegions;const r=typeof n=="object"&&n?n:void 0,o=r?.enabled!==!1;if(n===!1||r&&!o)t.expandUnchanged??=!0;else if((n===!0||r)&&(t.expandUnchanged??=!1,r)){const a=Number(r.contextLineCount);Number.isFinite(a)&&a>=0&&(t.parseDiffOptions={context:a,...t.parseDiffOptions});const d=Number(r.minimumLineCount);Number.isFinite(d)&&d>=1&&(t.collapsedContextThreshold??=Math.max(0,Math.floor(d)-1))}return t}function D(e){return{getValue:e,getLineCount:()=>e().split(` -`).length}}function B(e){const i=e?.getInput();return i?.kind==="file"||i?.kind==="merge-conflict"?i.file.contents:void 0}function C(e,i,t=()=>{},n){const r=()=>Number.parseFloat(i.style.fontSize)||14;return{getModel:()=>D(e),getContentHeight:()=>i.querySelector(".stream-diffs-shell")?.scrollHeight??i.scrollHeight,layout:()=>{},getOption(o){if(o===A.fontInfo)return{fontSize:r()};if(o===A.lineHeight)return Number.parseFloat(i.style.lineHeight)||Math.round(r()*1.5)},updateOptions(o){N(i,o)},onDidContentSizeChange:o=>n?.(o)??{dispose(){}},onDidLayoutChange:o=>n?.(o)??{dispose(){}},setSelectedLines:o=>t()?.setSelectedLines(o),setAnnotations:o=>t()?.setAnnotations(o),acceptReject:(o,a)=>t()?.acceptReject(o,a),resolveConflict:(o,a)=>t()?.resolveConflict(o,a)}}function oe(e,i,t,n){return{...C(i,t,n,r=>n()?.onDidRender(r)??{dispose(){}}),getOriginalEditor:()=>C(e,t,n,r=>n()?.onDidRender(r)??{dispose(){}}),getModifiedEditor:()=>C(i,t,n,r=>n()?.onDidRender(r)??{dispose(){}}),getLineChanges:()=>n()?.getDiff()?.hunks.map(r=>({originalStartLineNumber:r.deletionStart,originalEndLineNumber:r.deletionStart+r.deletionCount-1,modifiedStartLineNumber:r.additionStart,modifiedEndLineNumber:r.additionStart+r.additionCount-1}))??[],onDidUpdateDiff:r=>n()?.onDidRender(r)??{dispose(){}}}}const A={fontInfo:0,lineHeight:1},le={EditorOption:A};function N(e,i){const{style:t}=e;typeof i.fontSize=="number"&&(t.fontSize=`${i.fontSize}px`,t.setProperty("--diffs-font-size",`${i.fontSize}px`)),typeof i.lineHeight=="number"&&(t.lineHeight=`${i.lineHeight}px`,t.setProperty("--diffs-line-height",`${i.lineHeight}px`)),typeof i.fontFamily=="string"&&(t.fontFamily=i.fontFamily,t.setProperty("--diffs-font-family",i.fontFamily))}async function ce(){}function pe(e){return/^\s*i.map(i=>d[i]); +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))i(o);new MutationObserver(o=>{for(const s of o)if(s.type==="childList")for(const r of s.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&i(r)}).observe(document,{childList:!0,subtree:!0});function n(o){const s={};return o.integrity&&(s.integrity=o.integrity),o.referrerPolicy&&(s.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?s.credentials="include":o.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function i(o){if(o.ep)return;o.ep=!0;const s=n(o);fetch(o.href,s)}})();/** +* @vue/shared v3.5.39 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function E7(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const to={},l2=[],bu=()=>{},GG=()=>!1,G3=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),L7=e=>e.startsWith("onUpdate:"),Bo=Object.assign,jL=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Che=Object.prototype.hasOwnProperty,wo=(e,t)=>Che.call(e,t),Qn=Array.isArray,c2=e=>pv(e)==="[object Map]",Cm=e=>pv(e)==="[object Set]",vD=e=>pv(e)==="[object Date]",Ahe=e=>pv(e)==="[object RegExp]",gi=e=>typeof e=="function",qo=e=>typeof e=="string",Dc=e=>typeof e=="symbol",So=e=>e!==null&&typeof e=="object",WL=e=>(So(e)||gi(e))&&gi(e.then)&&gi(e.catch),QG=Object.prototype.toString,pv=e=>QG.call(e),She=e=>pv(e).slice(8,-1),R7=e=>pv(e)==="[object Object]",P7=e=>qo(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,$0=E7(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),$7=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},xhe=/-\w/g,Ur=$7(e=>e.replace(xhe,t=>t.slice(1).toUpperCase())),_he=/\B([A-Z])/g,ql=$7(e=>e.replace(_he,"-$1").toLowerCase()),O7=$7(e=>e.charAt(0).toUpperCase()+e.slice(1)),B8=$7(e=>e?`on${O7(e)}`:""),ia=(e,t)=>!Object.is(e,t),u2=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:i,value:n})},F7=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Yk=e=>{const t=qo(e)?Number(e):NaN;return isNaN(t)?e:t};let yD;const D7=()=>yD||(yD=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),Ihe="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol",The=E7(Ihe);function nn(e){if(Qn(e)){const t={};for(let n=0;n{if(n){const i=n.split(Ehe);i.length>1&&(t[i[0].trim()]=i[1].trim())}}),t}function De(e){let t="";if(qo(e))t=e;else if(Qn(e))for(let n=0;nhh(n,t))}const XG=e=>!!(e&&e.__v_isRef===!0),O=e=>qo(e)?e:e==null?"":Qn(e)||So(e)&&(e.toString===QG||!gi(e.toString))?XG(e)?O(e.value):JSON.stringify(e,eQ,2):String(e),eQ=(e,t)=>XG(t)?eQ(e,t.value):c2(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[i,o],s)=>(n[tS(i,s)+" =>"]=o,n),{})}:Cm(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>tS(n))}:Dc(t)?tS(t):So(t)&&!Qn(t)&&!R7(t)?String(t):t,tS=(e,t="")=>{var n;return Dc(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};function Dhe(e){return e==null?"initial":typeof e=="string"?e===""?" ":e:String(e)}/** +* @vue/reactivity v3.5.39 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let jr;class tQ{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&jr&&(jr.active?(this.parent=jr,this.index=(jr.scopes||(jr.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0){if(jr===this)jr=this.prevScope;else{let t=jr;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let n,i;for(n=0,i=this.effects.length;n0)return;if(T4){let t=T4;for(T4=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;I4;){let t=I4;for(I4=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(i){e||(e=i)}t=n}}if(e)throw e}function oQ(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function sQ(e){let t,n=e.depsTail,i=n;for(;i;){const o=i.prevDep;i.version===-1?(i===n&&(n=o),UL(i),Nhe(i)):t=i,i.dep.activeLink=i.prevActiveLink,i.prevActiveLink=void 0,i=o}e.deps=t,e.depsTail=n}function vI(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(rQ(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function rQ(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===_9)||(e.globalVersion=_9,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!vI(e))))return;e.flags|=2;const t=e.dep,n=hs,i=Ju;hs=e,Ju=!0;try{oQ(e);const o=e.fn(e._value);(t.version===0||ia(o,e._value))&&(e.flags|=128,e._value=o,t.version++)}catch(o){throw t.version++,o}finally{hs=n,Ju=i,sQ(e),e.flags&=-3}}function UL(e,t=!1){const{dep:n,prevSub:i,nextSub:o}=e;if(i&&(i.nextSub=o,e.prevSub=void 0),o&&(o.prevSub=i,e.nextSub=void 0),n.subs===e&&(n.subs=i,!i&&n.computed)){n.computed.flags&=-5;for(let s=n.computed.deps;s;s=s.nextDep)UL(s,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Nhe(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}function bsn(e,t){e.effect instanceof Jk&&(e=e.effect.fn);const n=new Jk(e);t&&Bo(n,t);try{n.run()}catch(o){throw n.stop(),o}const i=n.run.bind(n);return i.effect=n,i}function ksn(e){e.effect.stop()}let Ju=!0;const aQ=[];function nf(){aQ.push(Ju),Ju=!1}function of(){const e=aQ.pop();Ju=e===void 0?!0:e}function bD(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=hs;hs=void 0;try{t()}finally{hs=n}}}let _9=0,Bhe=class{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}};class B7{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!hs||!Ju||hs===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==hs)n=this.activeLink=new Bhe(hs,this),hs.deps?(n.prevDep=hs.depsTail,hs.depsTail.nextDep=n,hs.depsTail=n):hs.deps=hs.depsTail=n,lQ(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const i=n.nextDep;i.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=i),n.prevDep=hs.depsTail,n.nextDep=void 0,hs.depsTail.nextDep=n,hs.depsTail=n,hs.deps===n&&(hs.deps=i)}return n}trigger(t){this.version++,_9++,this.notify(t)}notify(t){qL();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{VL()}}}function lQ(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let i=t.deps;i;i=i.nextDep)lQ(i)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Xk=new WeakMap,O0=Symbol(""),yI=Symbol(""),I9=Symbol("");function Fa(e,t,n){if(Ju&&hs){let i=Xk.get(e);i||Xk.set(e,i=new Map);let o=i.get(n);o||(i.set(n,o=new B7),o.map=i,o.key=n),o.track()}}function Wf(e,t,n,i,o,s){const r=Xk.get(e);if(!r){_9++;return}const a=l=>{l&&l.trigger()};if(qL(),t==="clear")r.forEach(a);else{const l=Qn(e),c=l&&P7(n);if(l&&n==="length"){const u=Number(i);r.forEach((d,f)=>{(f==="length"||f===I9||!Dc(f)&&f>=u)&&a(d)})}else switch((n!==void 0||r.has(void 0))&&a(r.get(n)),c&&a(r.get(I9)),t){case"add":l?c&&a(r.get("length")):(a(r.get(O0)),c2(e)&&a(r.get(yI)));break;case"delete":l||(a(r.get(O0)),c2(e)&&a(r.get(yI)));break;case"set":c2(e)&&a(r.get(O0));break}}VL()}function zhe(e,t){const n=Xk.get(e);return n&&n.get(t)}function ag(e){const t=zi(e);return t===e?t:(Fa(t,"iterate",I9),Tc(e)?t:t.map(rd))}function z7(e){return Fa(e=zi(e),"iterate",I9),e}function zd(e,t){return ph(e)?$2(Xu(e)?rd(t):t):rd(t)}const Hhe={__proto__:null,[Symbol.iterator](){return iS(this,Symbol.iterator,e=>zd(this,e))},concat(...e){return ag(this).concat(...e.map(t=>Qn(t)?ag(t):t))},entries(){return iS(this,"entries",e=>(e[1]=zd(this,e[1]),e))},every(e,t){return If(this,"every",e,t,void 0,arguments)},filter(e,t){return If(this,"filter",e,t,n=>n.map(i=>zd(this,i)),arguments)},find(e,t){return If(this,"find",e,t,n=>zd(this,n),arguments)},findIndex(e,t){return If(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return If(this,"findLast",e,t,n=>zd(this,n),arguments)},findLastIndex(e,t){return If(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return If(this,"forEach",e,t,void 0,arguments)},includes(...e){return oS(this,"includes",e)},indexOf(...e){return oS(this,"indexOf",e)},join(e){return ag(this).join(e)},lastIndexOf(...e){return oS(this,"lastIndexOf",e)},map(e,t){return If(this,"map",e,t,void 0,arguments)},pop(){return vy(this,"pop")},push(...e){return vy(this,"push",e)},reduce(e,...t){return kD(this,"reduce",e,t)},reduceRight(e,...t){return kD(this,"reduceRight",e,t)},shift(){return vy(this,"shift")},some(e,t){return If(this,"some",e,t,void 0,arguments)},splice(...e){return vy(this,"splice",e)},toReversed(){return ag(this).toReversed()},toSorted(e){return ag(this).toSorted(e)},toSpliced(...e){return ag(this).toSpliced(...e)},unshift(...e){return vy(this,"unshift",e)},values(){return iS(this,"values",e=>zd(this,e))}};function iS(e,t,n){const i=z7(e),o=i[t]();return i!==e&&!Tc(e)&&(o._next=o.next,o.next=()=>{const s=o._next();return s.done||(s.value=n(s.value)),s}),o}const jhe=Array.prototype;function If(e,t,n,i,o,s){const r=z7(e),a=r!==e&&!Tc(e),l=r[t];if(l!==jhe[t]){const d=l.apply(e,s);return a?rd(d):d}let c=n;r!==e&&(a?c=function(d,f){return n.call(this,zd(e,d),f,e)}:n.length>2&&(c=function(d,f){return n.call(this,d,f,e)}));const u=l.call(r,c,i);return a&&o?o(u):u}function kD(e,t,n,i){const o=z7(e),s=o!==e&&!Tc(e);let r=n,a=!1;o!==e&&(s?(a=i.length===0,r=function(c,u,d){return a&&(a=!1,c=zd(e,c)),n.call(this,c,zd(e,u),d,e)}):n.length>3&&(r=function(c,u,d){return n.call(this,c,u,d,e)}));const l=o[t](r,...i);return a?zd(e,l):l}function oS(e,t,n){const i=zi(e);Fa(i,"iterate",I9);const o=i[t](...n);return(o===-1||o===!1)&&W7(n[0])?(n[0]=zi(n[0]),i[t](...n)):o}function vy(e,t,n=[]){nf(),qL();const i=zi(e)[t].apply(e,n);return VL(),of(),i}const Whe=E7("__proto__,__v_isRef,__isVue"),cQ=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Dc));function qhe(e){Dc(e)||(e=String(e));const t=zi(this);return Fa(t,"has",e),t.hasOwnProperty(e)}class uQ{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,i){if(n==="__v_skip")return t.__v_skip;const o=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!o;if(n==="__v_isReadonly")return o;if(n==="__v_isShallow")return s;if(n==="__v_raw")return i===(o?s?gQ:mQ:s?pQ:hQ).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(i)?t:void 0;const r=Qn(t);if(!o){let l;if(r&&(l=Hhe[n]))return l;if(n==="hasOwnProperty")return qhe}const a=Reflect.get(t,n,Vo(t)?t:i);if((Dc(n)?cQ.has(n):Whe(n))||(o||Fa(t,"get",n),s))return a;if(Vo(a)){const l=r&&P7(n)?a:a.value;return o&&So(l)?T9(l):l}return So(a)?o?T9(a):Jo(a):a}}class dQ extends uQ{constructor(t=!1){super(!1,t)}set(t,n,i,o){let s=t[n];const r=Qn(t)&&P7(n);if(!this._isShallow){const c=ph(s);if(!Tc(i)&&!ph(i)&&(s=zi(s),i=zi(i)),!r&&Vo(s)&&!Vo(i))return c||(s.value=i),!0}const a=r?Number(n)e,d5=e=>Reflect.getPrototypeOf(e);function Ghe(e,t,n){return function(...i){const o=this.__v_raw,s=zi(o),r=c2(s),a=e==="entries"||e===Symbol.iterator&&r,l=e==="keys"&&r,c=o[e](...i),u=n?bI:t?$2:rd;return!t&&Fa(s,"iterate",l?yI:O0),Bo(Object.create(c),{next(){const{value:d,done:f}=c.next();return f?{value:d,done:f}:{value:a?[u(d[0]),u(d[1])]:u(d),done:f}}})}}function f5(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Qhe(e,t){const n={get(o){const s=this.__v_raw,r=zi(s),a=zi(o);e||(ia(o,a)&&Fa(r,"get",o),Fa(r,"get",a));const{has:l}=d5(r),c=t?bI:e?$2:rd;if(l.call(r,o))return c(s.get(o));if(l.call(r,a))return c(s.get(a));s!==r&&s.get(o)},get size(){const o=this.__v_raw;return!e&&Fa(zi(o),"iterate",O0),o.size},has(o){const s=this.__v_raw,r=zi(s),a=zi(o);return e||(ia(o,a)&&Fa(r,"has",o),Fa(r,"has",a)),o===a?s.has(o):s.has(o)||s.has(a)},forEach(o,s){const r=this,a=r.__v_raw,l=zi(a),c=t?bI:e?$2:rd;return!e&&Fa(l,"iterate",O0),a.forEach((u,d)=>o.call(s,c(u),c(d),r))}};return Bo(n,e?{add:f5("add"),set:f5("set"),delete:f5("delete"),clear:f5("clear")}:{add(o){const s=zi(this),r=d5(s),a=zi(o),l=!t&&!Tc(o)&&!ph(o)?a:o;return r.has.call(s,l)||ia(o,l)&&r.has.call(s,o)||ia(a,l)&&r.has.call(s,a)||(s.add(l),Wf(s,"add",l,l)),this},set(o,s){!t&&!Tc(s)&&!ph(s)&&(s=zi(s));const r=zi(this),{has:a,get:l}=d5(r);let c=a.call(r,o);c||(o=zi(o),c=a.call(r,o));const u=l.call(r,o);return r.set(o,s),c?ia(s,u)&&Wf(r,"set",o,s):Wf(r,"add",o,s),this},delete(o){const s=zi(this),{has:r,get:a}=d5(s);let l=r.call(s,o);l||(o=zi(o),l=r.call(s,o)),a&&a.call(s,o);const c=s.delete(o);return l&&Wf(s,"delete",o,void 0),c},clear(){const o=zi(this),s=o.size!==0,r=o.clear();return s&&Wf(o,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(o=>{n[o]=Ghe(o,e,t)}),n}function H7(e,t){const n=Qhe(e,t);return(i,o,s)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?i:Reflect.get(wo(n,o)&&o in i?n:i,o,s)}const Yhe={get:H7(!1,!1)},Jhe={get:H7(!1,!0)},Xhe={get:H7(!0,!1)},e1e={get:H7(!0,!0)},hQ=new WeakMap,pQ=new WeakMap,mQ=new WeakMap,gQ=new WeakMap;function t1e(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Jo(e){return ph(e)?e:j7(e,!1,Vhe,Yhe,hQ)}function U1(e){return j7(e,!1,Khe,Jhe,pQ)}function T9(e){return j7(e,!0,Uhe,Xhe,mQ)}function Csn(e){return j7(e,!0,Zhe,e1e,gQ)}function j7(e,t,n,i,o){if(!So(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const s=o.get(e);if(s)return s;const r=t1e(She(e));if(r===0)return e;const a=new Proxy(e,r===2?i:n);return o.set(e,a),a}function Xu(e){return ph(e)?Xu(e.__v_raw):!!(e&&e.__v_isReactive)}function ph(e){return!!(e&&e.__v_isReadonly)}function Tc(e){return!!(e&&e.__v_isShallow)}function W7(e){return e?!!e.__v_raw:!1}function zi(e){const t=e&&e.__v_raw;return t?zi(t):e}function ot(e){return!wo(e,"__v_skip")&&Object.isExtensible(e)&&YG(e,"__v_skip",!0),e}const rd=e=>So(e)?Jo(e):e,$2=e=>So(e)?T9(e):e;function Vo(e){return e?e.__v_isRef===!0:!1}function Z(e){return vQ(e,!1)}function Rs(e){return vQ(e,!0)}function vQ(e,t){return Vo(e)?e:new n1e(e,t)}class n1e{constructor(t,n){this.dep=new B7,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:zi(t),this._value=n?t:rd(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,i=this.__v_isShallow||Tc(t)||ph(t);t=i?t:zi(t),ia(t,n)&&(this._rawValue=t,this._value=i?t:rd(t),this.dep.trigger())}}function i1e(e){e.dep&&e.dep.trigger()}function p(e){return Vo(e)?e.value:e}function Hl(e){return gi(e)?e():p(e)}const o1e={get:(e,t,n)=>t==="__v_raw"?e:p(Reflect.get(e,t,n)),set:(e,t,n,i)=>{const o=e[t];return Vo(o)&&!Vo(n)?(o.value=n,!0):Reflect.set(e,t,n,i)}};function yQ(e){return Xu(e)?e:new Proxy(e,o1e)}class s1e{constructor(t){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new B7,{get:i,set:o}=t(n.track.bind(n),n.trigger.bind(n));this._get=i,this._set=o}get value(){return this._value=this._get()}set value(t){this._set(t)}}function r1e(e){return new s1e(e)}function a1e(e){const t=Qn(e)?new Array(e.length):{};for(const n in e)t[n]=bQ(e,n);return t}class l1e{constructor(t,n,i){this._object=t,this._defaultValue=i,this.__v_isRef=!0,this._value=void 0,this._key=Dc(n)?n:String(n),this._raw=zi(t);let o=!0,s=t;if(!Qn(t)||Dc(this._key)||!P7(this._key))do o=!W7(s)||Tc(s);while(o&&(s=s.__v_raw));this._shallow=o}get value(){let t=this._object[this._key];return this._shallow&&(t=p(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Vo(this._raw[this._key])){const n=this._object[this._key];if(Vo(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return zhe(this._raw,this._key)}}class c1e{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function u1e(e,t,n){return Vo(e)?e:gi(e)?new c1e(e):So(e)&&arguments.length>1?bQ(e,t,n):Z(e)}function bQ(e,t,n){return new l1e(e,t,n)}class d1e{constructor(t,n,i){this.fn=t,this.setter=n,this._value=void 0,this.dep=new B7(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=_9-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=i}notify(){if(this.flags|=16,!(this.flags&8)&&hs!==this)return iQ(this,!0),!0}get value(){const t=this.dep.track();return rQ(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function f1e(e,t,n=!1){let i,o;return gi(e)?i=e:(i=e.get,o=e.set),new d1e(i,o,n)}const Asn={GET:"get",HAS:"has",ITERATE:"iterate"},Ssn={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},h5={},e6=new WeakMap;let s1;function xsn(){return s1}function h1e(e,t=!1,n=s1){if(n){let i=e6.get(n);i||e6.set(n,i=[]),i.push(e)}}function p1e(e,t,n=to){const{immediate:i,deep:o,once:s,scheduler:r,augmentJob:a,call:l}=n,c=w=>o?w:Tc(w)||o===!1||o===0?qf(w,1):qf(w);let u,d,f,h,m=!1,g=!1;if(Vo(e)?(d=()=>e.value,m=Tc(e)):Xu(e)?(d=()=>c(e),m=!0):Qn(e)?(g=!0,m=e.some(w=>Xu(w)||Tc(w)),d=()=>e.map(w=>{if(Vo(w))return w.value;if(Xu(w))return c(w);if(gi(w))return l?l(w,2):w()})):gi(e)?t?d=l?()=>l(e,2):e:d=()=>{if(f){nf();try{f()}finally{of()}}const w=s1;s1=u;try{return l?l(e,3,[h]):e(h)}finally{s1=w}}:d=bu,t&&o){const w=d,S=o===!0?1/0:o;d=()=>qf(w(),S)}const y=sd(),v=()=>{u.stop(),y&&y.active&&jL(y.effects,u)};if(s&&t){const w=t;t=(...S)=>{const x=w(...S);return v(),x}}let k=g?new Array(e.length).fill(h5):h5;const C=w=>{if(!(!(u.flags&1)||!u.dirty&&!w))if(t){const S=u.run();if(w||o||m||(g?S.some((x,M)=>ia(x,k[M])):ia(S,k))){f&&f();const x=s1;s1=u;try{const M=[S,k===h5?void 0:g&&k[0]===h5?[]:k,h];k=S,l?l(t,3,M):t(...M)}finally{s1=x}}}else u.run()};return a&&a(C),u=new Jk(d),u.scheduler=r?()=>r(C,!1):C,h=w=>h1e(w,!1,u),f=u.onStop=()=>{const w=e6.get(u);if(w){if(l)l(w,4);else for(const S of w)S();e6.delete(u)}},t?i?C(!0):k=u.run():r?r(C.bind(null,!0),!0):u.run(),v.pause=u.pause.bind(u),v.resume=u.resume.bind(u),v.stop=v,v}function qf(e,t=1/0,n){if(t<=0||!So(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Vo(e))qf(e.value,t,n);else if(Qn(e))for(let i=0;i{qf(i,t,n)});else if(R7(e)){for(const i in e)qf(e[i],t,n);for(const i of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,i)&&qf(e[i],t,n)}return e}/** +* @vue/runtime-core v3.5.39 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const kQ=[];function m1e(e){kQ.push(e)}function g1e(){kQ.pop()}function _sn(e,t){}const Isn={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER",COMPONENT_UPDATE:15,15:"COMPONENT_UPDATE",APP_UNMOUNT_CLEANUP:16,16:"APP_UNMOUNT_CLEANUP"},v1e={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush",15:"component update",16:"app unmount cleanup function"};function Y3(e,t,n,i){try{return i?e(...i):e()}catch(o){mv(o,t,n)}}function Iu(e,t,n,i){if(gi(e)){const o=Y3(e,t,n,i);return o&&WL(o)&&o.catch(s=>{mv(s,t,n)}),o}if(Qn(e)){const o=[];for(let s=0;s>>1,o=fl[i],s=M9(o);s=M9(n)?fl.push(e):fl.splice(b1e(t),0,e),e.flags|=1,CQ()}}function CQ(){t6||(t6=wQ.then(AQ))}function n6(e){Qn(e)?d2.push(...e):r1&&e.id===-1?r1.splice(Tg+1,0,e):e.flags&1||(d2.push(e),e.flags|=1),CQ()}function wD(e,t,n=Dd+1){for(;nM9(n)-M9(i));if(d2.length=0,r1){r1.push(...t);return}for(r1=t,Tg=0;Tge.id==null?e.flags&2?-1:1/0:e.id;function AQ(e){try{for(Dd=0;DdMg.emit(o,...s)),p5=[]):typeof window<"u"&&window.HTMLElement&&!((i=(n=window.navigator)==null?void 0:n.userAgent)!=null&&i.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(s=>{SQ(s,t)}),setTimeout(()=>{Mg||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,p5=[])},3e3)):p5=[]}let xa=null,q7=null;function E9(e){const t=xa;return xa=e,q7=e&&e.type.__scopeId||null,t}function Tsn(e){q7=e}function Msn(){q7=null}const Esn=e=>ne;function ne(e,t=xa,n){if(!t||e._n)return e;const i=(...o)=>{i._d&&c6(-1);const s=E9(t);let r;try{r=e(...o)}finally{E9(s),i._d&&c6(1)}return r};return i._n=!0,i._c=!0,i._d=!0,i}function qi(e,t){if(xa===null)return e;const n=eb(xa),i=e.dirs||(e.dirs=[]);for(let o=0;o1)return n&&gi(t)?t.call(i&&i.proxy):t}}function k1e(){return!!(Dr()||F0)}const w1e=Symbol.for("v-scx"),C1e=()=>Qt(w1e);function Vf(e,t){return J3(e,null,t)}function Lsn(e,t){return J3(e,null,{flush:"post"})}function A1e(e,t){return J3(e,null,{flush:"sync"})}function Fe(e,t,n){return J3(e,t,n)}function J3(e,t,n=to){const{immediate:i,deep:o,flush:s,once:r}=n,a=Bo({},n),l=t&&i||!t&&s!=="post";let c;if(im){if(s==="sync"){const h=C1e();c=h.__watcherHandles||(h.__watcherHandles=[])}else if(!l){const h=()=>{};return h.stop=bu,h.resume=bu,h.pause=bu,h}}const u=Ca;a.call=(h,m,g)=>Iu(h,u,m,g);let d=!1;s==="post"?a.scheduler=h=>{_r(h,u&&u.suspense)}:s!=="sync"&&(d=!0,a.scheduler=(h,m)=>{m?h():KL(h)}),a.augmentJob=h=>{t&&(h.flags|=4),d&&(h.flags|=2,u&&(h.id=u.uid,h.i=u))};const f=p1e(e,t,a);return im&&(c?c.push(f):l&&f()),f}function S1e(e,t,n){const i=this.proxy,o=qo(e)?e.includes(".")?xQ(i,e):()=>i[e]:e.bind(i,i);let s;gi(t)?s=t:(s=t.handler,n=t);const r=vv(this),a=J3(o,s.bind(i),n);return r(),a}function xQ(e,t){const n=t.split(".");return()=>{let i=e;for(let o=0;oe.__isTeleport,h0=e=>e&&(e.disabled||e.disabled===""),x1e=e=>e&&(e.defer||e.defer===""),CD=e=>typeof SVGElement<"u"&&e instanceof SVGElement,AD=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,kI=(e,t)=>{const n=e&&e.to;return qo(n)?t?t(n):null:n},_1e={name:"Teleport",__isTeleport:!0,process(e,t,n,i,o,s,r,a,l,c){const{mc:u,pc:d,pbc:f,o:{insert:h,querySelector:m,createText:g,createComment:y,parentNode:v}}=c,k=h0(t.props);let{dynamicChildren:C}=t;const w=(M,I,T)=>{M.shapeFlag&16&&u(M.children,I,T,o,s,r,a,l)},S=(M=t)=>{const I=h0(M.props),T=M.target=kI(M.props,m),E=wI(T,M,g,h);T&&(r!=="svg"&&CD(T)?r="svg":r!=="mathml"&&AD(T)&&(r="mathml"),o&&o.isCE&&(o.ce._teleportTargets||(o.ce._teleportTargets=new Set)).add(T),I||(w(M,T,E),Xy(M,!1)))},x=M=>{const I=()=>{if(Jh.get(M)===I){if(Jh.delete(M),h0(M.props)){const T=v(M.el)||n;w(M,T,M.anchor),Xy(M,!0)}S(M)}};Jh.set(M,I),_r(I,s)};if(e==null){const M=t.el=g(""),I=t.anchor=g("");if(h(M,n,i),h(I,n,i),x1e(t.props)||s&&s.pendingBranch){x(t);return}k&&(w(t,n,I),Xy(t,!0)),S()}else{t.el=e.el;const M=t.anchor=e.anchor,I=Jh.get(e);if(I){I.flags|=8,Jh.delete(e),x(t);return}t.targetStart=e.targetStart;const T=t.target=e.target,E=t.targetAnchor=e.targetAnchor,L=h0(e.props),P=L?n:T,B=L?M:E;if(r==="svg"||CD(T)?r="svg":(r==="mathml"||AD(T))&&(r="mathml"),C?(f(e.dynamicChildren,C,P,o,s,r,a),sR(e,t,!0)):l||d(e,t,P,B,o,s,r,a,!1),k)L?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):m5(t,n,M,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const V=kI(t.props,m);V&&(t.target=V,m5(t,V,null,c,0))}else L&&m5(t,T,E,c,1);Xy(t,k)}},remove(e,t,n,{um:i,o:{remove:o}},s){const{shapeFlag:r,children:a,anchor:l,targetStart:c,targetAnchor:u,target:d,props:f}=e,h=h0(f),m=s||!h,g=Jh.get(e);if(g&&(g.flags|=8,Jh.delete(e)),d&&(o(c),o(u)),s&&o(l),!g&&(h||d)&&r&16)for(let y=0;y{e.isMounted=!0}),wi(()=>{e.isUnmounting=!0}),e}const Qc=[Function,Array],MQ={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Qc,onEnter:Qc,onAfterEnter:Qc,onEnterCancelled:Qc,onBeforeLeave:Qc,onLeave:Qc,onAfterLeave:Qc,onLeaveCancelled:Qc,onBeforeAppear:Qc,onAppear:Qc,onAfterAppear:Qc,onAppearCancelled:Qc},EQ=e=>{const t=e.subTree;return t.component?EQ(t.component):t},T1e={name:"BaseTransition",props:MQ,setup(e,{slots:t}){const n=Dr(),i=TQ();return()=>{const o=t.default&&ZL(t.default(),!0),s=o&&o.length?LQ(o):n.subTree?Y():void 0;if(!s)return;const r=zi(e),{mode:a}=r;if(i.isLeaving)return sS(s);const l=SD(s);if(!l)return sS(s);let c=L9(l,r,i,n,d=>c=d);l.type!==Pr&&K1(l,c);let u=n.subTree&&SD(n.subTree);if(u&&u.type!==Pr&&!Vu(u,l)&&EQ(n).type!==Pr){let d=L9(u,r,i,n);if(K1(u,d),a==="out-in"&&l.type!==Pr)return i.isLeaving=!0,d.afterLeave=()=>{i.isLeaving=!1,n.job.flags&8||n.update(),delete d.afterLeave,u=void 0},sS(s);a==="in-out"&&l.type!==Pr?d.delayLeave=(f,h,m)=>{const g=RQ(i,u);g[String(u.key)]=u,f[iu]=()=>{h(),f[iu]=void 0,delete c.delayedLeave,u=void 0},c.delayedLeave=()=>{m(),delete c.delayedLeave,u=void 0}}:u=void 0}else u&&(u=void 0);return s}}};function LQ(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Pr){t=n;break}}return t}const M1e=T1e;function RQ(e,t){const{leavingVNodes:n}=e;let i=n.get(t.type);return i||(i=Object.create(null),n.set(t.type,i)),i}function L9(e,t,n,i,o){const{appear:s,mode:r,persisted:a=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:h,onAfterLeave:m,onLeaveCancelled:g,onBeforeAppear:y,onAppear:v,onAfterAppear:k,onAppearCancelled:C}=t,w=String(e.key),S=RQ(n,e),x=(T,E)=>{T&&Iu(T,i,9,E)},M=(T,E)=>{const L=E[1];x(T,E),Qn(T)?T.every(P=>P.length<=1)&&L():T.length<=1&&L()},I={mode:r,persisted:a,beforeEnter(T){let E=l;if(!n.isMounted)if(s)E=y||l;else return;T[iu]&&T[iu](!0);const L=S[w];L&&Vu(e,L)&&L.el[iu]&&L.el[iu](),x(E,[T])},enter(T){if(S[w]===e)return;let E=c,L=u,P=d;if(!n.isMounted)if(s)E=v||c,L=k||u,P=C||d;else return;let B=!1;T[yy]=N=>{B||(B=!0,N?x(P,[T]):x(L,[T]),I.delayedLeave&&I.delayedLeave(),T[yy]=void 0)};const V=T[yy].bind(null,!1);E?M(E,[T,V]):V()},leave(T,E){const L=String(e.key);if(T[yy]&&T[yy](!0),n.isUnmounting)return E();x(f,[T]);let P=!1;T[iu]=V=>{P||(P=!0,E(),V?x(g,[T]):x(m,[T]),T[iu]=void 0,S[L]===e&&delete S[L])};const B=T[iu].bind(null,!1);S[L]=e,h?M(h,[T,B]):B()},clone(T){const E=L9(T,t,n,i,o);return o&&o(E),E}};return I}function sS(e){if(X3(e))return e=mh(e),e.children=null,e}function SD(e){if(!X3(e))return IQ(e.type)&&e.children?LQ(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&gi(n.default))return n.default()}}function K1(e,t){e.shapeFlag&6&&e.component?(e.transition=t,K1(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ZL(e,t=!1,n){let i=[],o=0;for(let s=0;s1)for(let s=0;sn.value,set:s=>n.value=s})}return n}function xD(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const o6=new WeakMap;function f2(e,t,n,i,o=!1){if(Qn(e)){e.forEach((g,y)=>f2(g,t&&(Qn(t)?t[y]:t),n,i,o));return}if(rh(i)&&!o){i.shapeFlag&512&&i.type.__asyncResolved&&i.component.subTree.component&&f2(e,t,n,i.component.subTree);return}const s=i.shapeFlag&4?eb(i.component):i.el,r=o?null:s,{i:a,r:l}=e,c=t&&t.r,u=a.refs===to?a.refs={}:a.refs,d=a.setupState,f=zi(d),h=d===to?GG:g=>xD(u,g)?!1:wo(f,g),m=(g,y)=>!(y&&xD(u,y));if(c!=null&&c!==l){if(_D(t),qo(c))u[c]=null,h(c)&&(d[c]=null);else if(Vo(c)){const g=t;m(c,g.k)&&(c.value=null),g.k&&(u[g.k]=null)}}if(gi(l)){nf();try{Y3(l,a,12,[r,u])}finally{of()}}else{const g=qo(l),y=Vo(l);if(g||y){const v=()=>{if(e.f){const k=g?h(l)?d[l]:u[l]:m()||!e.k?l.value:u[e.k];if(o)Qn(k)&&jL(k,s);else if(Qn(k))k.includes(s)||k.push(s);else if(g)u[l]=[s],h(l)&&(d[l]=u[l]);else{const C=[s];m(l,e.k)&&(l.value=C),e.k&&(u[e.k]=C)}}else g?(u[l]=r,h(l)&&(d[l]=r)):y&&(m(l,e.k)&&(l.value=r),e.k&&(u[e.k]=r))};if(r){const k=()=>{v(),o6.delete(e)};k.id=-1,o6.set(e,k),_r(k,n)}else _D(e),v()}}}function _D(e){const t=o6.get(e);t&&(t.flags|=8,o6.delete(e))}let ID=!1;const lg=()=>{ID||(console.error("Hydration completed but contains mismatches."),ID=!0)},E1e=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",L1e=e=>e.namespaceURI.includes("MathML"),g5=e=>{if(e.nodeType===1){if(E1e(e))return"svg";if(L1e(e))return"mathml"}},jg=e=>e.nodeType===8;function R1e(e){const{mt:t,p:n,o:{patchProp:i,createText:o,nextSibling:s,parentNode:r,remove:a,insert:l,createComment:c}}=e,u=(C,w)=>{if(!w.hasChildNodes()){n(null,C,w),i6(),w._vnode=C;return}d(w.firstChild,C,null,null,null),i6(),w._vnode=C},d=(C,w,S,x,M,I=!1)=>{I=I||!!w.dynamicChildren;const T=jg(C)&&C.data==="[",E=()=>g(C,w,S,x,M,T),{type:L,ref:P,shapeFlag:B,patchFlag:V}=w;let N=C.nodeType;w.el=C,V===-2&&(I=!1,w.dynamicChildren=null);let D=null;switch(L){case O1:N!==3?w.children===""?(l(w.el=o(""),r(C),C),D=C):D=E():(C.data!==w.children&&(lg(),C.data=w.children),D=s(C));break;case Pr:k(C)?(D=s(C),v(w.el=C.content.firstChild,C,S)):N!==8||T?D=E():D=s(C);break;case p2:if(T&&(C=s(C),N=C.nodeType),N===1||N===3){D=C;const j=!w.children.length;for(let F=0;F{I=I||!!w.dynamicChildren;const{type:T,dynamicProps:E,props:L,patchFlag:P,shapeFlag:B,dirs:V,transition:N}=w,D=T==="input"||T==="option",j=!!E;if(D||j||P!==-1){V&&Bd(w,null,S,"created");let F=!1;if(k(C)){F=JQ(null,N)&&S&&S.vnode.props&&S.vnode.props.appear;const $=C.content.firstChild;if(F){const W=$.getAttribute("class");W&&($.$cls=W),N.beforeEnter($)}v($,C,S),w.el=C=$}if(B&16&&!(L&&(L.innerHTML||L.textContent))){let $=h(C.firstChild,w,C,S,x,M,I);for($&&!z8(C,1)&&lg();$;){const W=$;$=$.nextSibling,a(W)}}else if(B&8){let $=w.children;$[0]===` +`&&(C.tagName==="PRE"||C.tagName==="TEXTAREA")&&($=$.slice(1));const{textContent:W}=C;W!==$&&W!==$.replace(/\r\n|\r/g,` +`)&&(z8(C,0)||lg(),C.textContent=w.children)}if(L){if(D||j||!I||P&48){const $=C.tagName.includes("-");for(const W in L)(D&&(W.endsWith("value")||W==="indeterminate")||G3(W)&&!$0(W)||W[0]==="."||$&&!$0(W)||E&&E.includes(W))&&i(C,W,null,L[W],void 0,S)}else if(L.onClick)i(C,"onClick",null,L.onClick,void 0,S);else if(P&4&&Xu(L.style))for(const $ in L.style)L.style[$]}let z;(z=L&&L.onVnodeBeforeMount)&&zl(z,S,w),V&&Bd(w,null,S,"beforeMount"),((z=L&&L.onVnodeMounted)||V||F)&&nY(()=>{z&&zl(z,S,w),F&&N.enter(C),V&&Bd(w,null,S,"mounted")},x)}return C.nextSibling},h=(C,w,S,x,M,I,T)=>{T=T||!!w.dynamicChildren;const E=w.children,L=E.length;let P=!1;for(let B=0;B{const{slotScopeIds:T}=w;T&&(M=M?M.concat(T):T);const E=r(C),L=h(s(C),w,E,S,x,M,I);return L&&jg(L)&&L.data==="]"?s(w.anchor=L):(lg(),l(w.anchor=c("]"),E,L),L)},g=(C,w,S,x,M,I)=>{if($1e(C,w)||lg(),w.el=null,I){const L=y(C);for(;;){const P=s(C);if(P&&P!==L)a(P);else break}}const T=s(C),E=r(C);return a(C),n(null,w,E,T,S,x,g5(E),M),S&&(S.vnode.el=w.el,K7(S,w.el)),T},y=(C,w="[",S="]")=>{let x=0;for(;C;)if(C=s(C),C&&jg(C)&&(C.data===w&&x++,C.data===S)){if(x===0)return s(C);x--}return C},v=(C,w,S)=>{const x=w.parentNode;x&&x.replaceChild(C,w);let M=S;for(;M;)M.vnode.el===w&&(M.vnode.el=M.subTree.el=C),M=M.parent},k=C=>C.nodeType===1&&C.tagName==="TEMPLATE";return[u,d]}const s6="data-allow-mismatch",P1e={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function z8(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(s6);)e=e.parentElement;return YL(e&&e.getAttribute(s6),t)}function YL(e,t){if(e==null)return!1;if(e==="")return!0;{const n=e.split(",");return t===0&&n.includes("children")?!0:n.includes(P1e[t])}}function $1e(e,t){return z8(e.parentElement,1)||O1e(e)||F1e(t)}function O1e(e){return e.nodeType===1&&YL(e.getAttribute(s6),1)}function F1e({props:e}){const t=e&&e[s6];return typeof t=="string"&&YL(t,1)}const D1e=D7().requestIdleCallback||(e=>setTimeout(e,1)),N1e=D7().cancelIdleCallback||(e=>clearTimeout(e)),Psn=(e=1e4)=>t=>{const n=D1e(t,{timeout:e});return()=>N1e(n)};function B1e(e){const{top:t,left:n,bottom:i,right:o}=e.getBoundingClientRect(),{innerHeight:s,innerWidth:r}=window;return(t>0&&t0&&i0&&n0&&o(t,n)=>{const i=new IntersectionObserver(o=>{for(const s of o)if(s.isIntersecting){i.disconnect(),t();break}},e);return n(o=>{if(o instanceof Element){if(B1e(o))return t(),i.disconnect(),!1;i.observe(o)}}),()=>i.disconnect()},Osn=e=>t=>{if(e){const n=matchMedia(e);if(n.matches)t();else return n.addEventListener("change",t,{once:!0}),()=>n.removeEventListener("change",t)}},Fsn=(e=[])=>(t,n)=>{qo(e)&&(e=[e]);let i=!1;const o=r=>{i||(i=!0,s(),t(),r.target.dispatchEvent(new r.constructor(r.type,r)))},s=()=>{n(r=>{for(const a of e)r.removeEventListener(a,o)})};return n(r=>{for(const a of e)r.addEventListener(a,o,{once:!0})}),s};function z1e(e,t){if(jg(e)&&e.data==="["){let n=1,i=e.nextSibling;for(;i;){if(i.nodeType===1){if(t(i)===!1)break}else if(jg(i))if(i.data==="]"){if(--n===0)break}else i.data==="["&&n++;i=i.nextSibling}}else t(e)}const rh=e=>!!e.type.__asyncLoader;function ah(e){gi(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:i,delay:o=200,hydrate:s,timeout:r,suspensible:a=!0,onError:l}=e;let c=null,u,d=0;const f=()=>(d++,c=null,h()),h=()=>{let m;return c||(m=c=t().catch(g=>{if(g=g instanceof Error?g:new Error(String(g)),l)return new Promise((y,v)=>{l(g,()=>y(f()),()=>v(g),d+1)});throw g}).then(g=>m!==c&&c?c:(g&&(g.__esModule||g[Symbol.toStringTag]==="Module")&&(g=g.default),u=g,g)))};return tt({name:"AsyncComponentWrapper",__asyncLoader:h,__asyncHydrate(m,g,y){let v=!1;(g.bu||(g.bu=[])).push(()=>v=!0);const k=()=>{v||y()},C=s?()=>{const w=s(k,S=>z1e(m,S));w&&(g.bum||(g.bum=[])).push(w)}:k;u?C():h().then(()=>!g.isUnmounted&&C())},get __asyncResolved(){return u},setup(){const m=Ca;if(QL(m),u)return()=>v5(u,m);const g=S=>{c=null,mv(S,m,13,!i)};if(a&&m.suspense||im)return h().then(S=>()=>v5(S,m)).catch(S=>(g(S),()=>i?q(i,{error:S}):null));const y=Z(!1),v=Z(),k=Z(!!o);let C,w;return Jn(()=>{C!=null&&clearTimeout(C),w!=null&&clearTimeout(w)}),o&&(w=setTimeout(()=>{m.isUnmounted||(k.value=!1)},o)),r!=null&&(C=setTimeout(()=>{if(!m.isUnmounted&&!y.value&&!v.value){const S=new Error(`Async component timed out after ${r}ms.`);g(S),v.value=S}},r)),h().then(()=>{m.isUnmounted||(y.value=!0,m.parent&&X3(m.parent.vnode)&&m.parent.update())}).catch(S=>{if(m.isUnmounted){c=null;return}g(S),v.value=S}),()=>{if(y.value&&u)return v5(u,m);if(v.value&&i)return q(i,{error:v.value});if(n&&!k.value)return v5(n,m)}}})}function v5(e,t){const{ref:n,props:i,children:o,ce:s}=t.vnode,r=q(e,i,o);return r.ref=n,r.ce=s,delete t.vnode.ce,r}const X3=e=>e.type.__isKeepAlive,H1e={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Dr(),i=n.ctx;if(!i.renderer)return()=>{const k=t.default&&t.default();return k&&k.length===1?k[0]:k};const o=new Map,s=new Set;let r=null;const a=n.suspense,{renderer:{p:l,m:c,um:u,o:{createElement:d}}}=i,f=d("div");i.activate=(k,C,w,S,x)=>{const M=k.component;c(k,C,w,0,a),l(M.vnode,k,C,w,M,a,S,k.slotScopeIds,x),_r(()=>{M.isDeactivated=!1,M.a&&u2(M.a);const I=k.props&&k.props.onVnodeMounted;I&&zl(I,M.parent,k)},a)},i.deactivate=k=>{const C=k.component;a6(C.m),a6(C.a),c(k,f,null,1,a),_r(()=>{C.da&&u2(C.da);const w=k.props&&k.props.onVnodeUnmounted;w&&zl(w,C.parent,k),C.isDeactivated=!0},a)};function h(k){rS(k),u(k,n,a,!0)}function m(k){o.forEach((C,w)=>{const S=EI(rh(C)?C.type.__asyncResolved||{}:C.type);S&&!k(S)&&g(w)})}function g(k){const C=o.get(k);C&&(!r||!Vu(C,r))?h(C):r&&rS(r),o.delete(k),s.delete(k)}Fe(()=>[e.include,e.exclude],([k,C])=>{k&&m(w=>e4(k,w)),C&&m(w=>!e4(C,w))},{flush:"post",deep:!0});let y=null;const v=()=>{y!=null&&(l6(n.subTree.type)?_r(()=>{o.set(y,y5(n.subTree))},n.subTree.suspense):o.set(y,y5(n.subTree)))};return Pn(v),gv(v),wi(()=>{o.forEach(k=>{const{subTree:C,suspense:w}=n,S=y5(C);if(k.type===S.type&&k.key===S.key){rS(S);const x=S.component.da;x&&_r(x,w);return}h(k)})}),()=>{if(y=null,!t.default)return r=null;const k=t.default(),C=k[0];if(k.length>1)return r=null,k;if(!G1(C)||!(C.shapeFlag&4)&&!(C.shapeFlag&128))return r=null,C;let w=y5(C);if(w.type===Pr)return r=null,w;const S=w.type,x=EI(rh(w)?w.type.__asyncResolved||{}:S),{include:M,exclude:I,max:T}=e;if(M&&(!x||!e4(M,x))||I&&x&&e4(I,x))return w.shapeFlag&=-257,r=w,C;const E=w.key==null?S:w.key,L=o.get(E);return w.el&&(w=mh(w),C.shapeFlag&128&&(C.ssContent=w)),y=E,L?(w.el=L.el,w.component=L.component,w.transition&&K1(w,w.transition),w.shapeFlag|=512,s.delete(E),s.add(E)):(s.add(E),T&&s.size>parseInt(T,10)&&g(s.values().next().value)),w.shapeFlag|=256,r=w,l6(C.type)?C:w}}},Dsn=H1e;function e4(e,t){return Qn(e)?e.some(n=>e4(n,t)):qo(e)?e.split(",").includes(t):Ahe(e)?(e.lastIndex=0,e.test(t)):!1}function j1e(e,t){PQ(e,"a",t)}function W1e(e,t){PQ(e,"da",t)}function PQ(e,t,n=Ca){const i=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(V7(t,i,n),n){let o=n.parent;for(;o&&o.parent;)X3(o.parent.vnode)&&q1e(i,t,n,o),o=o.parent}}function q1e(e,t,n,i){const o=V7(t,e,i,!0);Jn(()=>{jL(i[t],o)},n)}function rS(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function y5(e){return e.shapeFlag&128?e.ssContent:e}function V7(e,t,n=Ca,i=!1){if(n){const o=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...r)=>{nf();const a=vv(n),l=Iu(t,n,e,r);return a(),of(),l});return i?o.unshift(s):o.push(s),s}}const Ch=e=>(t,n=Ca)=>{(!im||e==="sp")&&V7(e,(...i)=>t(...i),n)},V1e=Ch("bm"),Pn=Ch("m"),$Q=Ch("bu"),gv=Ch("u"),wi=Ch("bum"),Jn=Ch("um"),U1e=Ch("sp"),K1e=Ch("rtg"),Z1e=Ch("rtc");function OQ(e,t=Ca){V7("ec",e,t)}const JL="components",G1e="directives";function XL(e,t){return eR(JL,e,!0,t)||e}const FQ=Symbol.for("v-ndc");function Ws(e){return qo(e)?eR(JL,e,!1)||e:e||FQ}function Nsn(e){return eR(G1e,e)}function eR(e,t,n=!0,i=!1){const o=xa||Ca;if(o){const s=o.type;if(e===JL){const a=EI(s,!1);if(a&&(a===t||a===Ur(t)||a===O7(Ur(t))))return s}const r=TD(o[e]||s[e],t)||TD(o.appContext[e],t);return!r&&i?s:r}}function TD(e,t){return e&&(e[t]||e[Ur(t)]||e[O7(Ur(t))])}function bt(e,t,n,i){let o;const s=n&&n[i],r=Qn(e);if(r||qo(e)){const a=r&&Xu(e);let l=!1,c=!1;a&&(l=!Tc(e),c=ph(e),e=z7(e)),o=new Array(e.length);for(let u=0,d=e.length;ut(a,l,void 0,s&&s[l]));else{const a=Object.keys(e);o=new Array(a.length);for(let l=0,c=a.length;l{const s=i.fn(...o);return s&&(s.key=i.key),s}:i.fn)}return e}function si(e,t,n={},i,o){if(xa.ce||xa.parent&&rh(xa.parent)&&xa.parent.ce){const c=Object.keys(n).length>0;return t!=="default"&&(n.name=t),b(),oe(xe,null,[q("slot",n,i&&i())],c?-2:64)}let s=e[t];s&&s._c&&(s._d=!1),b();const r=s&&tR(s(n)),a=n.key||r&&r.key,l=oe(xe,{key:(a&&!Dc(a)?a:`_${t}`)+(!r&&i?"_fb":"")},r||(i?i():[]),r&&e._===1?64:-2);return!o&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),s&&s._c&&(s._d=!0),l}function tR(e){return e.some(t=>G1(t)?!(t.type===Pr||t.type===xe&&!tR(t.children)):!0)?e:null}function Bsn(e,t){const n={};for(const i in e)n[t&&/[A-Z]/.test(i)?`on:${i}`:B8(i)]=e[i];return n}const CI=e=>e?lY(e)?eb(e):CI(e.parent):null,M4=Bo(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>CI(e.parent),$root:e=>CI(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>nR(e),$forceUpdate:e=>e.f||(e.f=()=>{KL(e.update)}),$nextTick:e=>e.n||(e.n=kt.bind(e.proxy)),$watch:e=>S1e.bind(e)}),aS=(e,t)=>e!==to&&!e.__isScriptSetup&&wo(e,t),AI={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:i,data:o,props:s,accessCache:r,type:a,appContext:l}=e;if(t[0]!=="$"){const f=r[t];if(f!==void 0)switch(f){case 1:return i[t];case 2:return o[t];case 4:return n[t];case 3:return s[t]}else{if(aS(i,t))return r[t]=1,i[t];if(o!==to&&wo(o,t))return r[t]=2,o[t];if(wo(s,t))return r[t]=3,s[t];if(n!==to&&wo(n,t))return r[t]=4,n[t];SI&&(r[t]=0)}}const c=M4[t];let u,d;if(c)return t==="$attrs"&&Fa(e.attrs,"get",""),c(e);if((u=a.__cssModules)&&(u=u[t]))return u;if(n!==to&&wo(n,t))return r[t]=4,n[t];if(d=l.config.globalProperties,wo(d,t))return d[t]},set({_:e},t,n){const{data:i,setupState:o,ctx:s}=e;return aS(o,t)?(o[t]=n,!0):i!==to&&wo(i,t)?(i[t]=n,!0):wo(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:i,appContext:o,props:s,type:r}},a){let l;return!!(n[a]||e!==to&&a[0]!=="$"&&wo(e,a)||aS(t,a)||wo(s,a)||wo(i,a)||wo(M4,a)||wo(o.config.globalProperties,a)||(l=r.__cssModules)&&l[a])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:wo(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},Q1e=Bo({},AI,{get(e,t){if(t!==Symbol.unscopables)return AI.get(e,t,e)},has(e,t){return t[0]!=="_"&&!The(t)}});function zsn(){return null}function Hsn(){return null}function jsn(e){}function Wsn(e){}function qsn(){return null}function Vsn(){}function Usn(e,t){return null}function Y1e(){return DQ().slots}function Am(){return DQ().attrs}function DQ(e){const t=Dr();return t.setupContext||(t.setupContext=dY(t))}function R9(e){return Qn(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function Ksn(e,t){const n=R9(e);for(const i in t){if(i.startsWith("__skip"))continue;let o=n[i];o?Qn(o)||gi(o)?o=n[i]={type:o,default:t[i]}:o.default=t[i]:o===null&&(o=n[i]={default:t[i]}),o&&t[`__skip_${i}`]&&(o.skipFactory=!0)}return n}function MD(e,t){return!e||!t?e||t:Qn(e)&&Qn(t)?e.concat(t):Bo({},R9(e),R9(t))}function Zsn(e,t){const n={};for(const i in e)t.includes(i)||Object.defineProperty(n,i,{enumerable:!0,get:()=>e[i]});return n}function Gsn(e){const t=Dr(),n=im;let i=e();$9(),n&&m2(!1);const o=()=>{vv(t),n&&m2(!0)},s=()=>{Dr()!==t&&t.scope.off(),$9(),n&&m2(!1)};return WL(i)&&(i=i.catch(r=>{throw o(),Promise.resolve().then(()=>Promise.resolve().then(s)),r})),[i,()=>{o(),Promise.resolve().then(s)}]}let SI=!0;function J1e(e){const t=nR(e),n=e.proxy,i=e.ctx;SI=!1,t.beforeCreate&&ED(t.beforeCreate,e,"bc");const{data:o,computed:s,methods:r,watch:a,provide:l,inject:c,created:u,beforeMount:d,mounted:f,beforeUpdate:h,updated:m,activated:g,deactivated:y,beforeDestroy:v,beforeUnmount:k,destroyed:C,unmounted:w,render:S,renderTracked:x,renderTriggered:M,errorCaptured:I,serverPrefetch:T,expose:E,inheritAttrs:L,components:P,directives:B,filters:V}=t;if(c&&X1e(c,i,null),r)for(const j in r){const F=r[j];gi(F)&&(i[j]=F.bind(n))}if(o){const j=o.call(n,n);So(j)&&(e.data=Jo(j))}if(SI=!0,s)for(const j in s){const F=s[j],z=gi(F)?F.bind(n,n):gi(F.get)?F.get.bind(n,n):bu,$=!gi(F)&&gi(F.set)?F.set.bind(n):bu,W=R({get:z,set:$});Object.defineProperty(i,j,{enumerable:!0,configurable:!0,get:()=>W.value,set:G=>W.value=G})}if(a)for(const j in a)NQ(a[j],i,n,j);if(l){const j=gi(l)?l.call(n):l;Reflect.ownKeys(j).forEach(F=>{ui(F,j[F])})}u&&ED(u,e,"c");function D(j,F){Qn(F)?F.forEach(z=>j(z.bind(n))):F&&j(F.bind(n))}if(D(V1e,d),D(Pn,f),D($Q,h),D(gv,m),D(j1e,g),D(W1e,y),D(OQ,I),D(Z1e,x),D(K1e,M),D(wi,k),D(Jn,w),D(U1e,T),Qn(E))if(E.length){const j=e.exposed||(e.exposed={});E.forEach(F=>{Object.defineProperty(j,F,{get:()=>n[F],set:z=>n[F]=z,enumerable:!0})})}else e.exposed||(e.exposed={});S&&e.render===bu&&(e.render=S),L!=null&&(e.inheritAttrs=L),P&&(e.components=P),B&&(e.directives=B),T&&QL(e)}function X1e(e,t,n=bu){Qn(e)&&(e=xI(e));for(const i in e){const o=e[i];let s;So(o)?"default"in o?s=Qt(o.from||i,o.default,!0):s=Qt(o.from||i):s=Qt(o),Vo(s)?Object.defineProperty(t,i,{enumerable:!0,configurable:!0,get:()=>s.value,set:r=>s.value=r}):t[i]=s}}function ED(e,t,n){Iu(Qn(e)?e.map(i=>i.bind(t.proxy)):e.bind(t.proxy),t,n)}function NQ(e,t,n,i){let o=i.includes(".")?xQ(n,i):()=>n[i];if(qo(e)){const s=t[e];gi(s)&&Fe(o,s)}else if(gi(e))Fe(o,e.bind(n));else if(So(e))if(Qn(e))e.forEach(s=>NQ(s,t,n,i));else{const s=gi(e.handler)?e.handler.bind(n):t[e.handler];gi(s)&&Fe(o,s,e)}}function nR(e){const t=e.type,{mixins:n,extends:i}=t,{mixins:o,optionsCache:s,config:{optionMergeStrategies:r}}=e.appContext,a=s.get(t);let l;return a?l=a:!o.length&&!n&&!i?l=t:(l={},o.length&&o.forEach(c=>r6(l,c,r,!0)),r6(l,t,r)),So(t)&&s.set(t,l),l}function r6(e,t,n,i=!1){const{mixins:o,extends:s}=t;s&&r6(e,s,n,!0),o&&o.forEach(r=>r6(e,r,n,!0));for(const r in t)if(!(i&&r==="expose")){const a=epe[r]||n&&n[r];e[r]=a?a(e[r],t[r]):t[r]}return e}const epe={data:LD,props:RD,emits:RD,methods:t4,computed:t4,beforeCreate:sl,created:sl,beforeMount:sl,mounted:sl,beforeUpdate:sl,updated:sl,beforeDestroy:sl,beforeUnmount:sl,destroyed:sl,unmounted:sl,activated:sl,deactivated:sl,errorCaptured:sl,serverPrefetch:sl,components:t4,directives:t4,watch:npe,provide:LD,inject:tpe};function LD(e,t){return t?e?function(){return Bo(gi(e)?e.call(this,this):e,gi(t)?t.call(this,this):t)}:t:e}function tpe(e,t){return t4(xI(e),xI(t))}function xI(e){if(Qn(e)){const t={};for(let n=0;n{let u,d=to,f;return A1e(()=>{const h=e[o];ia(u,h)&&(u=h,c())}),{get(){return l(),n.get?n.get(u):u},set(h){const m=n.set?n.set(h):h;if(!ia(m,u)&&!(d!==to&&ia(h,d)))return;const g=i.vnode.props,y=!!(g&&(t in g||o in g||s in g)&&(`onUpdate:${t}`in g||`onUpdate:${o}`in g||`onUpdate:${s}`in g));y||(u=h,c()),i.emit(`update:${t}`,m),ia(h,d)&&(ia(h,m)&&!ia(m,f)||y&&d!==to&&!ia(m,u))&&c(),d=h,f=m}}});return a[Symbol.iterator]=()=>{let l=0;return{next(){return l<2?{value:l++?r||to:a,done:!1}:{done:!0}}}},a}const zQ=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ur(t)}Modifiers`]||e[`${ql(t)}Modifiers`];function rpe(e,t,...n){if(e.isUnmounted)return;const i=e.vnode.props||to;let o=n;const s=t.startsWith("update:"),r=s&&zQ(i,t.slice(7));r&&(r.trim&&(o=n.map(u=>qo(u)?u.trim():u)),r.number&&(o=n.map(F7)));let a,l=i[a=B8(t)]||i[a=B8(Ur(t))];!l&&s&&(l=i[a=B8(ql(t))]),l&&Iu(l,e,6,o);const c=i[a+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,Iu(c,e,6,o)}}const ape=new WeakMap;function HQ(e,t,n=!1){const i=n?ape:t.emitsCache,o=i.get(e);if(o!==void 0)return o;const s=e.emits;let r={},a=!1;if(!gi(e)){const l=c=>{const u=HQ(c,t,!0);u&&(a=!0,Bo(r,u))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!s&&!a?(So(e)&&i.set(e,null),null):(Qn(s)?s.forEach(l=>r[l]=null):Bo(r,s),So(e)&&i.set(e,r),r)}function U7(e,t){return!e||!G3(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),wo(e,t[0].toLowerCase()+t.slice(1))||wo(e,ql(t))||wo(e,t))}function H8(e){const{type:t,vnode:n,proxy:i,withProxy:o,propsOptions:[s],slots:r,attrs:a,emit:l,render:c,renderCache:u,props:d,data:f,setupState:h,ctx:m,inheritAttrs:g}=e,y=E9(e);let v,k;try{if(n.shapeFlag&4){const w=o||i,S=w;v=jl(c.call(S,w,u,d,h,f,m)),k=a}else{const w=t;v=jl(w.length>1?w(d,{attrs:a,slots:r,emit:l}):w(d,null)),k=t.props?a:cpe(a)}}catch(w){E4.length=0,mv(w,e,1),v=q(Pr)}let C=v;if(k&&g!==!1){const w=Object.keys(k),{shapeFlag:S}=C;w.length&&S&7&&(s&&w.some(L7)&&(k=upe(k,s)),C=mh(C,k,!1,!0))}return n.dirs&&(C=mh(C,null,!1,!0),C.dirs=C.dirs?C.dirs.concat(n.dirs):n.dirs),n.transition&&K1(C,n.transition),v=C,E9(y),v}function lpe(e,t=!0){let n;for(let i=0;i{let t;for(const n in e)(n==="class"||n==="style"||G3(n))&&((t||(t={}))[n]=e[n]);return t},upe=(e,t)=>{const n={};for(const i in e)(!L7(i)||!(i.slice(9)in t))&&(n[i]=e[i]);return n};function dpe(e,t,n){const{props:i,children:o,component:s}=e,{props:r,children:a,patchFlag:l}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return i?PD(i,r,c):!!r;if(l&8){const u=t.dynamicProps;for(let d=0;dObject.create(WQ),VQ=e=>Object.getPrototypeOf(e)===WQ;function fpe(e,t,n,i=!1){const o={},s=qQ();e.propsDefaults=Object.create(null),UQ(e,t,o,s);for(const r in e.propsOptions[0])r in o||(o[r]=void 0);n?e.props=i?o:U1(o):e.type.props?e.props=o:e.props=s,e.attrs=s}function hpe(e,t,n,i){const{props:o,attrs:s,vnode:{patchFlag:r}}=e,a=zi(o),[l]=e.propsOptions;let c=!1;if((i||r>0)&&!(r&16)){if(r&8){const u=e.vnode.dynamicProps;for(let d=0;d{l=!0;const[f,h]=KQ(d,t,!0);Bo(r,f),h&&a.push(...h)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!s&&!l)return So(e)&&i.set(e,l2),l2;if(Qn(s))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",oR=e=>Qn(e)?e.map(jl):[jl(e)],mpe=(e,t,n)=>{if(t._n)return t;const i=ne((...o)=>oR(t(...o)),n);return i._c=!1,i},ZQ=(e,t,n)=>{const i=e._ctx;for(const o in e){if(iR(o))continue;const s=e[o];if(gi(s))t[o]=mpe(o,s,i);else if(s!=null){const r=oR(s);t[o]=()=>r}}},GQ=(e,t)=>{const n=oR(t);e.slots.default=()=>n},QQ=(e,t,n)=>{for(const i in t)(n||!iR(i))&&(e[i]=t[i])},gpe=(e,t,n)=>{const i=e.slots=qQ();if(e.vnode.shapeFlag&32){const o=t._;o?(QQ(i,t,n),n&&YG(i,"_",o,!0)):ZQ(t,i)}else t&&GQ(e,t)},vpe=(e,t,n)=>{const{vnode:i,slots:o}=e;let s=!0,r=to;if(i.shapeFlag&32){const a=t._;a?n&&a===1?s=!1:QQ(o,t,n):(s=!t.$stable,ZQ(t,o)),r=t}else t&&(GQ(e,t),r={default:1});if(s)for(const a in o)!iR(a)&&r[a]==null&&delete o[a]},_r=nY;function ype(e){return YQ(e)}function bpe(e){return YQ(e,R1e)}function YQ(e,t){const n=D7();n.__VUE__=!0;const{insert:i,remove:o,patchProp:s,createElement:r,createText:a,createComment:l,setText:c,setElementText:u,parentNode:d,nextSibling:f,setScopeId:h=bu,insertStaticContent:m}=e,g=(ie,ee,be,Pe=null,$e=null,fe=null,le=void 0,X=null,se=!!ee.dynamicChildren)=>{if(ie===ee)return;ie&&!Vu(ie,ee)&&(Pe=Q(ie),G(ie,$e,fe,!0),ie=null),ee.patchFlag===-2&&(se=!1,ee.dynamicChildren=null);const{type:ye,ref:we,shapeFlag:de}=ee;switch(ye){case O1:y(ie,ee,be,Pe);break;case Pr:v(ie,ee,be,Pe);break;case p2:ie==null&&k(ee,be,Pe,le);break;case xe:P(ie,ee,be,Pe,$e,fe,le,X,se);break;default:de&1?S(ie,ee,be,Pe,$e,fe,le,X,se):de&6?B(ie,ee,be,Pe,$e,fe,le,X,se):(de&64||de&128)&&ye.process(ie,ee,be,Pe,$e,fe,le,X,se,Ee)}we!=null&&$e?f2(we,ie&&ie.ref,fe,ee||ie,!ee):we==null&&ie&&ie.ref!=null&&f2(ie.ref,null,fe,ie,!0)},y=(ie,ee,be,Pe)=>{if(ie==null)i(ee.el=a(ee.children),be,Pe);else{const $e=ee.el=ie.el;ee.children!==ie.children&&c($e,ee.children)}},v=(ie,ee,be,Pe)=>{ie==null?i(ee.el=l(ee.children||""),be,Pe):ee.el=ie.el},k=(ie,ee,be,Pe)=>{[ie.el,ie.anchor]=m(ie.children,ee,be,Pe,ie.el,ie.anchor)},C=({el:ie,anchor:ee},be,Pe)=>{let $e;for(;ie&&ie!==ee;)$e=f(ie),i(ie,be,Pe),ie=$e;i(ee,be,Pe)},w=({el:ie,anchor:ee})=>{let be;for(;ie&&ie!==ee;)be=f(ie),o(ie),ie=be;o(ee)},S=(ie,ee,be,Pe,$e,fe,le,X,se)=>{if(ee.type==="svg"?le="svg":ee.type==="math"&&(le="mathml"),ie==null)x(ee,be,Pe,$e,fe,le,X,se);else{const ye=ie.el&&ie.el._isVueCE?ie.el:null;try{ye&&ye._beginPatch(),T(ie,ee,$e,fe,le,X,se)}finally{ye&&ye._endPatch()}}},x=(ie,ee,be,Pe,$e,fe,le,X)=>{let se,ye;const{props:we,shapeFlag:de,transition:Ie,dirs:Ye}=ie;if(se=ie.el=r(ie.type,fe,we&&we.is,we),de&8?u(se,ie.children):de&16&&I(ie.children,se,null,Pe,$e,lS(ie,fe),le,X),Ye&&Bd(ie,null,Pe,"created"),M(se,ie,ie.scopeId,le,Pe),we){for(const Rt in we)Rt!=="value"&&!$0(Rt)&&s(se,Rt,null,we[Rt],fe,Pe);"value"in we&&s(se,"value",null,we.value,fe),(ye=we.onVnodeBeforeMount)&&zl(ye,Pe,ie)}Ye&&Bd(ie,null,Pe,"beforeMount");const st=JQ($e,Ie);st&&Ie.beforeEnter(se),i(se,ee,be),((ye=we&&we.onVnodeMounted)||st||Ye)&&_r(()=>{try{ye&&zl(ye,Pe,ie),st&&Ie.enter(se),Ye&&Bd(ie,null,Pe,"mounted")}finally{}},$e)},M=(ie,ee,be,Pe,$e)=>{if(be&&h(ie,be),Pe)for(let fe=0;fe{for(let ye=se;ye{const X=ee.el=ie.el;let{patchFlag:se,dynamicChildren:ye,dirs:we}=ee;se|=ie.patchFlag&16;const de=ie.props||to,Ie=ee.props||to;let Ye;if(be&&Up(be,!1),(Ye=Ie.onVnodeBeforeUpdate)&&zl(Ye,be,ee,ie),we&&Bd(ee,ie,be,"beforeUpdate"),be&&Up(be,!0),ye&&(!ie.dynamicChildren||ie.dynamicChildren.length!==ye.length)&&(se=0,le=!1,ye=null),(de.innerHTML&&Ie.innerHTML==null||de.textContent&&Ie.textContent==null)&&u(X,""),ye?E(ie.dynamicChildren,ye,X,be,Pe,lS(ee,$e),fe):le||F(ie,ee,X,null,be,Pe,lS(ee,$e),fe,!1),se>0){if(se&16)L(X,de,Ie,be,$e);else if(se&2&&de.class!==Ie.class&&s(X,"class",null,Ie.class,$e),se&4&&s(X,"style",de.style,Ie.style,$e),se&8){const st=ee.dynamicProps;for(let Rt=0;Rt{Ye&&zl(Ye,be,ee,ie),we&&Bd(ee,ie,be,"updated")},Pe)},E=(ie,ee,be,Pe,$e,fe,le)=>{for(let X=0;X{if(ee!==be){if(ee!==to)for(const fe in ee)!$0(fe)&&!(fe in be)&&s(ie,fe,ee[fe],null,$e,Pe);for(const fe in be){if($0(fe))continue;const le=be[fe],X=ee[fe];le!==X&&fe!=="value"&&s(ie,fe,X,le,$e,Pe)}"value"in be&&s(ie,"value",ee.value,be.value,$e)}},P=(ie,ee,be,Pe,$e,fe,le,X,se)=>{const ye=ee.el=ie?ie.el:a(""),we=ee.anchor=ie?ie.anchor:a("");let{patchFlag:de,dynamicChildren:Ie,slotScopeIds:Ye}=ee;Ye&&(X=X?X.concat(Ye):Ye),ie==null?(i(ye,be,Pe),i(we,be,Pe),I(ee.children||[],be,we,$e,fe,le,X,se)):de>0&&de&64&&Ie&&ie.dynamicChildren&&ie.dynamicChildren.length===Ie.length?(E(ie.dynamicChildren,Ie,be,$e,fe,le,X),(ee.key!=null||$e&&ee===$e.subTree)&&sR(ie,ee,!0)):F(ie,ee,be,we,$e,fe,le,X,se)},B=(ie,ee,be,Pe,$e,fe,le,X,se)=>{ee.slotScopeIds=X,ie==null?ee.shapeFlag&512?$e.ctx.activate(ee,be,Pe,le,se):V(ee,be,Pe,$e,fe,le,se):N(ie,ee,se)},V=(ie,ee,be,Pe,$e,fe,le)=>{const X=ie.component=aY(ie,Pe,$e);if(X3(ie)&&(X.ctx.renderer=Ee),cY(X,!1,le),X.asyncDep){if($e&&$e.registerDep(X,D,le),!ie.el){const se=X.subTree=q(Pr);v(null,se,ee,be),ie.placeholder=se.el}}else D(X,ie,ee,be,$e,fe,le)},N=(ie,ee,be)=>{const Pe=ee.component=ie.component;if(dpe(ie,ee,be))if(Pe.asyncDep&&!Pe.asyncResolved){j(Pe,ee,be);return}else Pe.next=ee,Pe.update();else ee.el=ie.el,Pe.vnode=ee},D=(ie,ee,be,Pe,$e,fe,le)=>{const X=()=>{if(ie.isMounted){let{next:de,bu:Ie,u:Ye,parent:st,vnode:Rt}=ie;{const en=XQ(ie);if(en){de&&(de.el=Rt.el,j(ie,de,le)),en.asyncDep.then(()=>{_r(()=>{ie.isUnmounted||ye()},$e)});return}}let Pt=de,Ht;Up(ie,!1),de?(de.el=Rt.el,j(ie,de,le)):de=Rt,Ie&&u2(Ie),(Ht=de.props&&de.props.onVnodeBeforeUpdate)&&zl(Ht,st,de,Rt),Up(ie,!0);const Zt=H8(ie),sn=ie.subTree;ie.subTree=Zt,g(sn,Zt,d(sn.el),Q(sn),ie,$e,fe),de.el=Zt.el,Pt===null&&K7(ie,Zt.el),Ye&&_r(Ye,$e),(Ht=de.props&&de.props.onVnodeUpdated)&&_r(()=>zl(Ht,st,de,Rt),$e)}else{let de;const{el:Ie,props:Ye}=ee,{bm:st,m:Rt,parent:Pt,root:Ht,type:Zt}=ie,sn=rh(ee);if(Up(ie,!1),st&&u2(st),!sn&&(de=Ye&&Ye.onVnodeBeforeMount)&&zl(de,Pt,ee),Up(ie,!0),Ie&&ce){const en=()=>{ie.subTree=H8(ie),ce(Ie,ie.subTree,ie,$e,null)};sn&&Zt.__asyncHydrate?Zt.__asyncHydrate(Ie,ie,en):en()}else{Ht.ce&&Ht.ce._hasShadowRoot()&&Ht.ce._injectChildStyle(Zt,ie.parent?ie.parent.type:void 0);const en=ie.subTree=H8(ie);g(null,en,be,Pe,ie,$e,fe),ee.el=en.el}if(Rt&&_r(Rt,$e),!sn&&(de=Ye&&Ye.onVnodeMounted)){const en=ee;_r(()=>zl(de,Pt,en),$e)}(ee.shapeFlag&256||Pt&&rh(Pt.vnode)&&Pt.vnode.shapeFlag&256)&&ie.a&&_r(ie.a,$e),ie.isMounted=!0,ee=be=Pe=null}};ie.scope.on();const se=ie.effect=new Jk(X);ie.scope.off();const ye=ie.update=se.run.bind(se),we=ie.job=se.runIfDirty.bind(se);we.i=ie,we.id=ie.uid,se.scheduler=()=>KL(we),Up(ie,!0),ye()},j=(ie,ee,be)=>{ee.component=ie;const Pe=ie.vnode.props;ie.vnode=ee,ie.next=null,hpe(ie,ee.props,Pe,be),vpe(ie,ee.children,be),nf(),wD(ie),of()},F=(ie,ee,be,Pe,$e,fe,le,X,se=!1)=>{const ye=ie&&ie.children,we=ie?ie.shapeFlag:0,de=ee.children,{patchFlag:Ie,shapeFlag:Ye}=ee;if(Ie>0){if(Ie&128){$(ye,de,be,Pe,$e,fe,le,X,se);return}else if(Ie&256){z(ye,de,be,Pe,$e,fe,le,X,se);return}}Ye&8?(we&16&&U(ye,$e,fe),de!==ye&&u(be,de)):we&16?Ye&16?$(ye,de,be,Pe,$e,fe,le,X,se):U(ye,$e,fe,!0):(we&8&&u(be,""),Ye&16&&I(de,be,Pe,$e,fe,le,X,se))},z=(ie,ee,be,Pe,$e,fe,le,X,se)=>{ie=ie||l2,ee=ee||l2;const ye=ie.length,we=ee.length,de=Math.min(ye,we);let Ie;for(Ie=0;Iewe?U(ie,$e,fe,!0,!1,de):I(ee,be,Pe,$e,fe,le,X,se,de)},$=(ie,ee,be,Pe,$e,fe,le,X,se)=>{let ye=0;const we=ee.length;let de=ie.length-1,Ie=we-1;for(;ye<=de&&ye<=Ie;){const Ye=ie[ye],st=ee[ye]=se?Nf(ee[ye]):jl(ee[ye]);if(Vu(Ye,st))g(Ye,st,be,null,$e,fe,le,X,se);else break;ye++}for(;ye<=de&&ye<=Ie;){const Ye=ie[de],st=ee[Ie]=se?Nf(ee[Ie]):jl(ee[Ie]);if(Vu(Ye,st))g(Ye,st,be,null,$e,fe,le,X,se);else break;de--,Ie--}if(ye>de){if(ye<=Ie){const Ye=Ie+1,st=YeIe)for(;ye<=de;)G(ie[ye],$e,fe,!0),ye++;else{const Ye=ye,st=ye,Rt=new Map;for(ye=st;ye<=Ie;ye++){const Ge=ee[ye]=se?Nf(ee[ye]):jl(ee[ye]);Ge.key!=null&&Rt.set(Ge.key,ye)}let Pt,Ht=0;const Zt=Ie-st+1;let sn=!1,en=0;const Oe=new Array(Zt);for(ye=0;ye=Zt){G(Ge,$e,fe,!0);continue}let Le;if(Ge.key!=null)Le=Rt.get(Ge.key);else for(Pt=st;Pt<=Ie;Pt++)if(Oe[Pt-st]===0&&Vu(Ge,ee[Pt])){Le=Pt;break}Le===void 0?G(Ge,$e,fe,!0):(Oe[Le-st]=ye+1,Le>=en?en=Le:sn=!0,g(Ge,ee[Le],be,null,$e,fe,le,X,se),Ht++)}const Me=sn?kpe(Oe):l2;for(Pt=Me.length-1,ye=Zt-1;ye>=0;ye--){const Ge=st+ye,Le=ee[Ge],_e=ee[Ge+1],Ve=Ge+1{const{el:fe,type:le,transition:X,children:se,shapeFlag:ye}=ie;if(ye&6){W(ie.component.subTree,ee,be,Pe);return}if(ye&128){ie.suspense.move(ee,be,Pe);return}if(ye&64){le.move(ie,ee,be,Ee);return}if(le===xe){i(fe,ee,be);for(let de=0;deX.enter(fe),$e));else{const{leave:de,delayLeave:Ie,afterLeave:Ye}=X,st=()=>{ie.ctx.isUnmounted?o(fe):i(fe,ee,be)},Rt=()=>{const Pt=fe._isLeaving||!!fe[iu];fe._isLeaving&&fe[iu](!0),X.persisted&&!Pt?st():de(fe,()=>{st(),Ye&&Ye()})};Ie?Ie(fe,st,Rt):Rt()}else i(fe,ee,be)},G=(ie,ee,be,Pe=!1,$e=!1)=>{const{type:fe,props:le,ref:X,children:se,dynamicChildren:ye,shapeFlag:we,patchFlag:de,dirs:Ie,cacheIndex:Ye,memo:st}=ie;if(de===-2&&($e=!1),X!=null&&(nf(),f2(X,null,be,ie,!0),of()),Ye!=null&&(ee.renderCache[Ye]=void 0),we&256){ee.ctx.deactivate(ie);return}const Rt=we&1&&Ie,Pt=!rh(ie);let Ht;if(Pt&&(Ht=le&&le.onVnodeBeforeUnmount)&&zl(Ht,ee,ie),we&6)J(ie.component,be,Pe);else{if(we&128){ie.suspense.unmount(be,Pe);return}Rt&&Bd(ie,null,ee,"beforeUnmount"),we&64?ie.type.remove(ie,ee,be,Ee,Pe):ye&&!ye.hasOnce&&(fe!==xe||de>0&&de&64)?U(ye,ee,be,!1,!0):(fe===xe&&de&384||!$e&&we&16)&&U(se,ee,be),Pe&&K(ie)}const Zt=st!=null&&Ye==null;(Pt&&(Ht=le&&le.onVnodeUnmounted)||Rt||Zt)&&_r(()=>{Ht&&zl(Ht,ee,ie),Rt&&Bd(ie,null,ee,"unmounted"),Zt&&(ie.el=null)},be)},K=ie=>{const{type:ee,el:be,anchor:Pe,transition:$e}=ie;if(ee===xe){te(be,Pe);return}if(ee===p2){w(ie);return}const fe=()=>{o(be),$e&&!$e.persisted&&$e.afterLeave&&$e.afterLeave()};if(ie.shapeFlag&1&&$e&&!$e.persisted){const{leave:le,delayLeave:X}=$e,se=()=>le(be,fe);X?X(ie.el,fe,se):se()}else fe()},te=(ie,ee)=>{let be;for(;ie!==ee;)be=f(ie),o(ie),ie=be;o(ee)},J=(ie,ee,be)=>{const{bum:Pe,scope:$e,job:fe,subTree:le,um:X,m:se,a:ye}=ie;a6(se),a6(ye),Pe&&u2(Pe),$e.stop(),fe&&(fe.flags|=8,G(le,ie,ee,be)),X&&_r(X,ee),_r(()=>{ie.isUnmounted=!0},ee)},U=(ie,ee,be,Pe=!1,$e=!1,fe=0)=>{for(let le=fe;le{if(ie.shapeFlag&6)return Q(ie.component.subTree);if(ie.shapeFlag&128)return ie.suspense.next();const ee=f(ie.anchor||ie.el),be=ee&&ee[_Q];return be?f(be):ee};let re=!1;const me=(ie,ee,be)=>{let Pe;ie==null?ee._vnode&&(G(ee._vnode,null,null,!0),Pe=ee._vnode.component):g(ee._vnode||null,ie,ee,null,null,null,be),ee._vnode=ie,re||(re=!0,wD(Pe),i6(),re=!1)},Ee={p:g,um:G,m:W,r:K,mt:V,mc:I,pc:F,pbc:E,n:Q,o:e};let he,ce;return t&&([he,ce]=t(Ee)),{render:me,hydrate:he,createApp:ope(me,he)}}function lS({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Up({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function JQ(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function sR(e,t,n=!1){const i=e.children,o=t.children;if(Qn(i)&&Qn(o))for(let s=0;s>1,e[n[a]]0&&(t[i]=n[s-1]),n[s]=i)}}for(s=n.length,r=n[s-1];s-- >0;)n[s]=r,r=t[r];return n}function XQ(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:XQ(t)}function a6(e){if(e)for(let t=0;te.__isSuspense;let II=0;const wpe={name:"Suspense",__isSuspense:!0,process(e,t,n,i,o,s,r,a,l,c){if(e==null)Cpe(t,n,i,o,s,r,a,l,c);else{if(s&&s.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}Ape(e,t,n,i,o,r,a,l,c)}},hydrate:Spe,normalize:xpe},Qsn=wpe;function P9(e,t){const n=e.props&&e.props[t];gi(n)&&n()}function Cpe(e,t,n,i,o,s,r,a,l){const{p:c,o:{createElement:u}}=l,d=u("div"),f=e.suspense=tY(e,o,i,t,d,n,s,r,a,l);c(null,f.pendingBranch=e.ssContent,d,null,i,f,s,r),f.deps>0?(P9(e,"onPending"),P9(e,"onFallback"),c(null,e.ssFallback,t,n,i,null,s,r),h2(f,e.ssFallback)):f.resolve(!1,!0)}function Ape(e,t,n,i,o,s,r,a,{p:l,um:c,o:{createElement:u}}){const d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;const f=t.ssContent,h=t.ssFallback,{activeBranch:m,pendingBranch:g,isInFallback:y,isHydrating:v}=d;if(g)d.pendingBranch=f,Vu(g,f)?(l(g,f,d.hiddenContainer,null,o,d,s,r,a),d.deps<=0?d.resolve():y&&(v||(l(m,h,n,i,o,null,s,r,a),h2(d,h)))):(d.pendingId=II++,v?(d.isHydrating=!1,d.activeBranch=g):c(g,o,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u("div"),y?(l(null,f,d.hiddenContainer,null,o,d,s,r,a),d.deps<=0?d.resolve():(l(m,h,n,i,o,null,s,r,a),h2(d,h))):m&&Vu(m,f)?(l(m,f,n,i,o,d,s,r,a),d.resolve(!0)):(l(null,f,d.hiddenContainer,null,o,d,s,r,a),d.deps<=0&&d.resolve()));else if(m&&Vu(m,f))l(m,f,n,i,o,d,s,r,a),h2(d,f);else if(P9(t,"onPending"),d.pendingBranch=f,f.shapeFlag&512?d.pendingId=f.component.suspenseId:d.pendingId=II++,l(null,f,d.hiddenContainer,null,o,d,s,r,a),d.deps<=0)d.resolve();else{const{timeout:k,pendingId:C}=d;k>0?setTimeout(()=>{d.pendingId===C&&d.fallback(h)},k):k===0&&d.fallback(h)}}function tY(e,t,n,i,o,s,r,a,l,c,u=!1){const{p:d,m:f,um:h,n:m,o:{parentNode:g,remove:y}}=c;let v;const k=_pe(e);k&&t&&t.pendingBranch&&(v=t.pendingId,t.deps++);const C=e.props?Yk(e.props.timeout):void 0,w=s,S={vnode:e,parent:t,parentComponent:n,namespace:r,container:i,hiddenContainer:o,deps:0,pendingId:II++,timeout:typeof C=="number"?C:-1,activeBranch:null,isFallbackMountPending:!1,pendingBranch:null,isInFallback:!u,isHydrating:u,isUnmounted:!1,effects:[],resolve(x=!1,M=!1){const{vnode:I,activeBranch:T,pendingBranch:E,pendingId:L,effects:P,parentComponent:B,container:V,isInFallback:N}=S;let D=!1;if(S.isHydrating)S.isHydrating=!1;else if(!x){D=T&&E.transition&&E.transition.mode==="out-in";let z=!1;D&&(T.transition.afterLeave=()=>{L===S.pendingId&&(f(E,V,s===w&&!z?m(T):s,0),n6(P),N&&I.ssFallback&&(I.ssFallback.el=null))}),T&&!S.isFallbackMountPending&&(g(T.el)===V&&(s=m(T),z=!0),h(T,B,S,!0),!D&&N&&I.ssFallback&&_r(()=>I.ssFallback.el=null,S)),D||f(E,V,s,0)}S.isFallbackMountPending=!1,h2(S,E),S.pendingBranch=null,S.isInFallback=!1;let j=S.parent,F=!1;for(;j;){if(j.pendingBranch){j.effects.push(...P),F=!0;break}j=j.parent}!F&&!D&&n6(P),S.effects=[],k&&t&&t.pendingBranch&&v===t.pendingId&&(t.deps--,t.deps===0&&!M&&t.resolve()),P9(I,"onResolve")},fallback(x){if(!S.pendingBranch)return;const{vnode:M,activeBranch:I,parentComponent:T,container:E,namespace:L}=S;P9(M,"onFallback");const P=m(I),B=()=>{S.isFallbackMountPending=!1,S.isInFallback&&(d(null,x,E,P,T,null,L,a,l),h2(S,x))},V=x.transition&&x.transition.mode==="out-in";V&&(S.isFallbackMountPending=!0,I.transition.afterLeave=B),S.isInFallback=!0,h(I,T,null,!0),V||B()},move(x,M,I){S.activeBranch&&f(S.activeBranch,x,M,I),S.container=x},next(){return S.activeBranch&&m(S.activeBranch)},registerDep(x,M,I){const T=!!S.pendingBranch;T&&S.deps++;const E=x.vnode.el;x.asyncDep.catch(L=>{mv(L,x,0)}).then(L=>{if(x.isUnmounted||S.isUnmounted||S.pendingId!==x.suspenseId)return;$9(),x.asyncResolved=!0;const{vnode:P}=x;TI(x,L,!1),E&&(P.el=E);const B=!E&&x.subTree.el;M(x,P,g(E||x.subTree.el),E?null:m(x.subTree),S,r,I),B&&(P.placeholder=null,y(B)),K7(x,P.el),T&&--S.deps===0&&S.resolve()})},unmount(x,M){S.isUnmounted=!0,S.activeBranch&&h(S.activeBranch,n,x,M),S.pendingBranch&&h(S.pendingBranch,n,x,M)}};return S}function Spe(e,t,n,i,o,s,r,a,l){const c=t.suspense=tY(t,i,n,e.parentNode,document.createElement("div"),null,o,s,r,a,!0),u=l(e,c.pendingBranch=t.ssContent,n,c,s,r);return c.deps===0&&c.resolve(!1,!0),u}function xpe(e){const{shapeFlag:t,children:n}=e,i=t&32;e.ssContent=OD(i?n.default:n),e.ssFallback=i?OD(n.fallback):q(Pr)}function OD(e){let t;if(gi(e)){const n=nm&&e._c;n&&(e._d=!1,b()),e=e(),n&&(e._d=!0,t=Na,iY())}return Qn(e)&&(e=lpe(e)),e=jl(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function nY(e,t){t&&t.pendingBranch?Qn(e)?t.effects.push(...e):t.effects.push(e):n6(e)}function h2(e,t){e.activeBranch=t;const{vnode:n,parentComponent:i}=e;let o=t.el;for(;!o&&t.component;)t=t.component.subTree,o=t.el;n.el=o,i&&i.subTree===n&&(i.vnode.el=o,K7(i,o))}function _pe(e){const t=e.props&&e.props.suspensible;return t!=null&&t!==!1}const xe=Symbol.for("v-fgt"),O1=Symbol.for("v-txt"),Pr=Symbol.for("v-cmt"),p2=Symbol.for("v-stc"),E4=[];let Na=null;function b(e=!1){E4.push(Na=e?null:[])}function iY(){E4.pop(),Na=E4[E4.length-1]||null}let nm=1;function c6(e,t=!1){nm+=e,e<0&&Na&&t&&(Na.hasOnce=!0)}function oY(e){return e.dynamicChildren=nm>0?Na||l2:null,iY(),nm>0&&Na&&Na.push(e),e}function _(e,t,n,i,o,s){return oY(A(e,t,n,i,o,s,!0))}function oe(e,t,n,i,o){return oY(q(e,t,n,i,o,!0))}function G1(e){return e?e.__v_isVNode===!0:!1}function Vu(e,t){return e.type===t.type&&e.key===t.key}function Ysn(e){}const sY=({key:e})=>e??null,j8=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?qo(e)||Vo(e)||gi(e)?{i:xa,r:e,k:t,f:!!n}:e:null);function A(e,t=null,n=null,i=0,o=null,s=e===xe?0:1,r=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&sY(t),ref:t&&j8(t),scopeId:q7,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:i,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:xa};return a?(u6(l,n),s&128&&e.normalize(l)):n&&(l.shapeFlag|=qo(n)?8:16),nm>0&&!r&&Na&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&Na.push(l),l}const q=Ipe;function Ipe(e,t=null,n=null,i=0,o=null,s=!1){if((!e||e===FQ)&&(e=Pr),G1(e)){const a=mh(e,t,!0);return n&&u6(a,n),nm>0&&!s&&Na&&(a.shapeFlag&6?Na[Na.indexOf(e)]=a:Na.push(a)),a.patchFlag=-2,a}if(Rpe(e)&&(e=e.__vccOpts),t){t=rY(t);let{class:a,style:l}=t;a&&!qo(a)&&(t.class=De(a)),So(l)&&(W7(l)&&!Qn(l)&&(l=Bo({},l)),t.style=nn(l))}const r=qo(e)?1:l6(e)?128:IQ(e)?64:So(e)?4:gi(e)?2:0;return A(e,t,n,i,o,r,s,!0)}function rY(e){return e?W7(e)||VQ(e)?Bo({},e):e:null}function mh(e,t,n=!1,i=!1){const{props:o,ref:s,patchFlag:r,children:a,transition:l}=e,c=t?Fi(o||{},t):o,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&sY(c),ref:t&&t.ref?n&&s?Qn(s)?s.concat(j8(t)):[s,j8(t)]:j8(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==xe?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&mh(e.ssContent),ssFallback:e.ssFallback&&mh(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&i&&K1(u,l.clone(u)),u}function Ne(e=" ",t=0){return q(O1,null,e,t)}function Pu(e,t){const n=q(p2,null,e);return n.staticCount=t,n}function Y(e="",t=!1){return t?(b(),oe(Pr,null,e)):q(Pr,null,e)}function jl(e){return e==null||typeof e=="boolean"?q(Pr):Qn(e)?q(xe,null,e.slice()):G1(e)?Nf(e):q(O1,null,String(e))}function Nf(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:mh(e)}function u6(e,t){let n=0;const{shapeFlag:i}=e;if(t==null)t=null;else if(Qn(t))n=16;else if(typeof t=="object")if(i&65){const o=t.default;o&&(o._c&&(o._d=!1),u6(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!VQ(t)?t._ctx=xa:o===3&&xa&&(xa.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(gi(t)){if(i&65){u6(e,{default:t});return}t={default:t,_ctx:xa},n=32}else t=String(t),i&64?(n=16,t=[Ne(t)]):n=8;e.children=t,e.shapeFlag|=n}function Fi(...e){const t={};for(let n=0;nCa||xa;let d6,m2;{const e=D7(),t=(n,i)=>{let o;return(o=e[n])||(o=e[n]=[]),o.push(i),s=>{o.length>1?o.forEach(r=>r(s)):o[0](s)}};d6=t("__VUE_INSTANCE_SETTERS__",n=>Ca=n),m2=t("__VUE_SSR_SETTERS__",n=>im=n)}const vv=e=>{const t=Ca;return d6(e),e.scope.on(),()=>{e.scope.off(),d6(t)}},$9=()=>{Ca&&Ca.scope.off(),d6(null)};function lY(e){return e.vnode.shapeFlag&4}let im=!1;function cY(e,t=!1,n=!1){t&&m2(t);const{props:i,children:o}=e.vnode,s=lY(e);fpe(e,i,s,t),gpe(e,o,n||t);const r=s?Epe(e,t):void 0;return t&&m2(!1),r}function Epe(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,AI);const{setup:i}=n;if(i){nf();const o=e.setupContext=i.length>1?dY(e):null,s=vv(e),r=Y3(i,e,0,[e.props,o]),a=WL(r);if(of(),s(),(a||e.sp)&&!rh(e)&&QL(e),a){if(r.then($9,$9),t)return r.then(l=>{TI(e,l,t)}).catch(l=>{mv(l,e,0)});e.asyncDep=r}else TI(e,r,t)}else uY(e,t)}function TI(e,t,n){gi(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:So(t)&&(e.setupState=yQ(t)),uY(e,n)}let f6,MI;function Jsn(e){f6=e,MI=t=>{t.render._rc&&(t.withProxy=new Proxy(t.ctx,Q1e))}}const Xsn=()=>!f6;function uY(e,t,n){const i=e.type;if(!e.render){if(!t&&f6&&!i.render){const o=i.template||nR(e).template;if(o){const{isCustomElement:s,compilerOptions:r}=e.appContext.config,{delimiters:a,compilerOptions:l}=i,c=Bo(Bo({isCustomElement:s,delimiters:a},r),l);i.render=f6(o,c)}}e.render=i.render||bu,MI&&MI(e)}{const o=vv(e);nf();try{J1e(e)}finally{of(),o()}}}const Lpe={get(e,t){return Fa(e,"get",""),e[t]}};function dY(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Lpe),slots:e.slots,emit:e.emit,expose:t}}function eb(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(yQ(ot(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in M4)return M4[n](e)},has(t,n){return n in t||n in M4}})):e.proxy}function EI(e,t=!0){return gi(e)?e.displayName||e.name:e.name||t&&e.__name}function Rpe(e){return gi(e)&&"__vccOpts"in e}const R=(e,t)=>f1e(e,t,im);function Zn(e,t,n){try{c6(-1);const i=arguments.length;return i===2?So(t)&&!Qn(t)?G1(t)?q(e,null,[t]):q(e,t):q(e,null,t):(i>3?n=Array.prototype.slice.call(arguments,2):i===3&&G1(n)&&(n=[n]),q(e,t,n))}finally{c6(1)}}function ern(){}function trn(e,t,n,i){const o=n[i];if(o&&Ppe(o,e))return o;const s=t();return s.memo=e.slice(),s.cacheIndex=i,n[i]=s}function Ppe(e,t){const n=e.memo;if(n.length!=t.length)return!1;for(let i=0;i0&&Na&&Na.push(e),!0}const $pe="3.5.39",nrn=bu,irn=v1e,orn=Mg,srn=SQ,Ope={createComponentInstance:aY,setupComponent:cY,renderComponentRoot:H8,setCurrentRenderingInstance:E9,isVNode:G1,normalizeVNode:jl,getComponentPublicInstance:eb,ensureValidVNode:tR,pushWarningContext:m1e,popWarningContext:g1e},rrn=Ope,arn=null,lrn=null,crn=null;/** +* @vue/runtime-dom v3.5.39 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let LI;const FD=typeof window<"u"&&window.trustedTypes;if(FD)try{LI=FD.createPolicy("vue",{createHTML:e=>e})}catch{}const fY=LI?e=>LI.createHTML(e):e=>e,Fpe="http://www.w3.org/2000/svg",Dpe="http://www.w3.org/1998/Math/MathML",Of=typeof document<"u"?document:null,DD=Of&&Of.createElement("template"),Npe={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,i)=>{const o=t==="svg"?Of.createElementNS(Fpe,e):t==="mathml"?Of.createElementNS(Dpe,e):n?Of.createElement(e,{is:n}):Of.createElement(e);return e==="select"&&i&&i.multiple!=null&&o.setAttribute("multiple",i.multiple),o},createText:e=>Of.createTextNode(e),createComment:e=>Of.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Of.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,i,o,s){const r=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===s||!(o=o.nextSibling)););else{DD.innerHTML=fY(i==="svg"?`${e}`:i==="mathml"?`${e}`:e);const a=DD.content;if(i==="svg"||i==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}t.insertBefore(a,n)}return[r?r.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Wh="transition",by="animation",O2=Symbol("_vtc"),hY={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},pY=Bo({},MQ,hY),Bpe=e=>(e.displayName="Transition",e.props=pY,e),Ao=Bpe((e,{slots:t})=>Zn(M1e,mY(e),t)),Kp=(e,t=[])=>{Qn(e)?e.forEach(n=>n(...t)):e&&e(...t)},ND=e=>e?Qn(e)?e.some(t=>t.length>1):e.length>1:!1;function mY(e){const t={};for(const P in e)P in hY||(t[P]=e[P]);if(e.css===!1)return t;const{name:n="v",type:i,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:r=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:l=s,appearActiveClass:c=r,appearToClass:u=a,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,m=zpe(o),g=m&&m[0],y=m&&m[1],{onBeforeEnter:v,onEnter:k,onEnterCancelled:C,onLeave:w,onLeaveCancelled:S,onBeforeAppear:x=v,onAppear:M=k,onAppearCancelled:I=C}=t,T=(P,B,V,N)=>{P._enterCancelled=N,Xh(P,B?u:a),Xh(P,B?c:r),V&&V()},E=(P,B)=>{P._isLeaving=!1,Xh(P,d),Xh(P,h),Xh(P,f),B&&B()},L=P=>(B,V)=>{const N=P?M:k,D=()=>T(B,P,V);Kp(N,[B,D]),BD(()=>{Xh(B,P?l:s),Rd(B,P?u:a),ND(N)||zD(B,i,g,D)})};return Bo(t,{onBeforeEnter(P){Kp(v,[P]),Rd(P,s),Rd(P,r)},onBeforeAppear(P){Kp(x,[P]),Rd(P,l),Rd(P,c)},onEnter:L(!1),onAppear:L(!0),onLeave(P,B){P._isLeaving=!0;const V=()=>E(P,B);Rd(P,d),P._enterCancelled?(Rd(P,f),RI(P)):(RI(P),Rd(P,f)),BD(()=>{P._isLeaving&&(Xh(P,d),Rd(P,h),ND(w)||zD(P,i,y,V))}),Kp(w,[P,V])},onEnterCancelled(P){T(P,!1,void 0,!0),Kp(C,[P])},onAppearCancelled(P){T(P,!0,void 0,!0),Kp(I,[P])},onLeaveCancelled(P){E(P),Kp(S,[P])}})}function zpe(e){if(e==null)return null;if(So(e))return[cS(e.enter),cS(e.leave)];{const t=cS(e);return[t,t]}}function cS(e){return Yk(e)}function Rd(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[O2]||(e[O2]=new Set)).add(t)}function Xh(e,t){t.split(/\s+/).forEach(i=>i&&e.classList.remove(i));const n=e[O2];n&&(n.delete(t),n.size||(e[O2]=void 0))}function BD(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Hpe=0;function zD(e,t,n,i){const o=e._endId=++Hpe,s=()=>{o===e._endId&&i()};if(n!=null)return setTimeout(s,n);const{type:r,timeout:a,propCount:l}=gY(e,t);if(!r)return i();const c=r+"end";let u=0;const d=()=>{e.removeEventListener(c,f),s()},f=h=>{h.target===e&&++u>=l&&d()};setTimeout(()=>{u(n[m]||"").split(", "),o=i(`${Wh}Delay`),s=i(`${Wh}Duration`),r=HD(o,s),a=i(`${by}Delay`),l=i(`${by}Duration`),c=HD(a,l);let u=null,d=0,f=0;t===Wh?r>0&&(u=Wh,d=r,f=s.length):t===by?c>0&&(u=by,d=c,f=l.length):(d=Math.max(r,c),u=d>0?r>c?Wh:by:null,f=u?u===Wh?s.length:l.length:0);const h=u===Wh&&/\b(?:transform|all)(?:,|$)/.test(i(`${Wh}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:h}}function HD(e,t){for(;e.lengthjD(n)+jD(e[i])))}function jD(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function RI(e){return(e?e.ownerDocument:document).body.offsetHeight}function jpe(e,t,n){const i=e[O2];i&&(t=(t?[t,...i]:[...i]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const h6=Symbol("_vod"),rR=Symbol("_vsh"),er={name:"show",beforeMount(e,{value:t},{transition:n}){e[h6]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):ky(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:i}){!t!=!n&&(i?t?(i.beforeEnter(e),ky(e,!0),i.enter(e)):i.leave(e,()=>{ky(e,!1)}):ky(e,t))},beforeUnmount(e,{value:t}){ky(e,t)}};function ky(e,t){e.style.display=t?e[h6]:"none",e[rR]=!t}function Wpe(){er.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}}}const vY=Symbol("");function urn(e){const t=Dr();if(!t)return;const n=t.ut=(o=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(s=>p6(s,o))},i=()=>{const o=e(t.proxy);t.ce?p6(t.ce,o):PI(t.subTree,o),n(o)};$Q(()=>{n6(i)}),Pn(()=>{Fe(i,bu,{flush:"post"});const o=new MutationObserver(i);o.observe(t.subTree.el.parentNode,{childList:!0}),Jn(()=>o.disconnect())})}function PI(e,t){if(e.shapeFlag&128){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{PI(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)p6(e.el,t);else if(e.type===xe)e.children.forEach(n=>PI(n,t));else if(e.type===p2){let{el:n,anchor:i}=e;for(;n&&(p6(n,t),n!==i);)n=n.nextSibling}}function p6(e,t){if(e.nodeType===1){const n=e.style;let i="";for(const o in t){const s=Dhe(t[o]);n.setProperty(`--${o}`,s),i+=`--${o}: ${s};`}n[vY]=i}}const qpe=/(?:^|;)\s*display\s*:/;function Vpe(e,t,n){const i=e.style,o=qo(n);let s=!1;if(n&&!o){if(t)if(qo(t))for(const r of t.split(";")){const a=r.slice(0,r.indexOf(":")).trim();n[a]==null&&n4(i,a,"")}else for(const r in t)n[r]==null&&n4(i,r,"");for(const r in n){r==="display"&&(s=!0);const a=n[r];a!=null?Kpe(e,r,!qo(t)&&t?t[r]:void 0,a)||n4(i,r,a):n4(i,r,"")}}else if(o){if(t!==n){const r=i[vY];r&&(n+=";"+r),i.cssText=n,s=qpe.test(n)}}else t&&e.removeAttribute("style");h6 in e&&(e[h6]=s?i.display:"",e[rR]&&(i.display="none"))}const WD=/\s*!important$/;function n4(e,t,n){if(Qn(n))n.forEach(i=>n4(e,t,i));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const i=Upe(e,t);WD.test(n)?e.setProperty(ql(i),n.replace(WD,""),"important"):e[i]=n}}const qD=["Webkit","Moz","ms"],uS={};function Upe(e,t){const n=uS[t];if(n)return n;let i=Ur(t);if(i!=="filter"&&i in e)return uS[t]=i;i=O7(i);for(let o=0;odS||(Xpe.then(()=>dS=0),dS=Date.now());function t0e(e,t){const n=i=>{if(!i._vts)i._vts=Date.now();else if(i._vts<=n.attached)return;const o=n.value;if(Qn(o)){const s=i.stopImmediatePropagation;i.stopImmediatePropagation=()=>{s.call(i),i._stopped=!0};const r=o.slice(),a=[i];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,n0e=(e,t,n,i,o,s)=>{const r=o==="svg";t==="class"?jpe(e,i,r):t==="style"?Vpe(e,n,i):G3(t)?L7(t)||Gpe(e,t,n,i,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):i0e(e,t,i,r))?(KD(e,t,i),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&UD(e,t,i,r,s,t!=="value")):e._isVueCE&&(o0e(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!qo(i)))?KD(e,Ur(t),i,s,t):(t==="true-value"?e._trueValue=i:t==="false-value"&&(e._falseValue=i),UD(e,t,i,r))};function i0e(e,t,n,i){if(i)return!!(t==="innerHTML"||t==="textContent"||t in e&&GD(t)&&gi(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return GD(t)&&qo(n)?!1:t in e}function o0e(e,t){const n=e._def.props;if(!n)return!1;const i=Ur(t);return Array.isArray(n)?n.some(o=>Ur(o)===i):Object.keys(n).some(o=>Ur(o)===i)}const QD={};function s0e(e,t,n){let i=tt(e,t);R7(i)&&(i=Bo({},i,t));class o extends aR{constructor(r){super(i,r,n)}}return o.def=i,o}const drn=((e,t)=>s0e(e,t,w0e)),r0e=typeof HTMLElement<"u"?HTMLElement:class{};class aR extends r0e{constructor(t,n={},i=v6){super(),this._def=t,this._props=n,this._createApp=i,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&i!==v6?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Bo({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof aR){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{this._pendingResolve=void 0,this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,kt(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const n of t)this._setAttr(n.attributeName)}_resolveDef(){if(this._pendingResolve)return;for(let i=0;i{this._resolved=!0,this._pendingResolve=void 0;const{props:s,styles:r}=i;let a;if(s&&!Qn(s))for(const l in s){const c=s[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=Yk(this._props[l])),(a||(a=Object.create(null)))[Ur(l)]=!0)}this._numberProps=a,this._resolveProps(i),this.shadowRoot&&this._applyStyles(r),this._mount(i)},n=this._def.__asyncLoader;n?this._pendingResolve=n().then(i=>{i.configureApp=this._def.configureApp,t(this._def=i,!0)}):t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const n=this._instance&&this._instance.exposed;if(n)for(const i in n)wo(this,i)||Object.defineProperty(this,i,{get:()=>p(n[i])})}_resolveProps(t){const{props:n}=t,i=Qn(n)?n:Object.keys(n||{});for(const o of Object.keys(this))o[0]!=="_"&&i.includes(o)&&this._setProp(o,this[o]);for(const o of i.map(Ur))Object.defineProperty(this,o,{get(){return this._getProp(o)},set(s){this._setProp(o,s,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const n=this.hasAttribute(t);let i=n?this.getAttribute(t):QD;const o=Ur(t);n&&this._numberProps&&this._numberProps[o]&&(i=Yk(i)),this._setProp(o,i,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,i=!0,o=!1){if(n!==this._props[t]&&(this._dirty=!0,n===QD?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),o&&this._instance&&this._update(),i)){const s=this._ob;s&&(this._processMutations(s.takeRecords()),s.disconnect()),n===!0?this.setAttribute(ql(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(ql(t),n+""):n||this.removeAttribute(ql(t)),s&&s.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),k0e(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=q(this._def,Bo(t,this._props));return this._instance||(n.ce=i=>{this._instance=i,i.ce=this,i.isCE=!0;const o=(s,r)=>{this.dispatchEvent(new CustomEvent(s,R7(r[0])?Bo({detail:r},r[0]):{detail:r}))};i.emit=(s,...r)=>{o(s,r),ql(s)!==s&&o(ql(s),r)},this._setParent()}),n}_applyStyles(t,n,i){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const o=this._nonce,s=this.shadowRoot,r=i?this._getStyleAnchor(i)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(s);let a=null;for(let l=t.length-1;l>=0;l--){const c=document.createElement("style");o&&c.setAttribute("nonce",o),c.textContent=t[l],s.insertBefore(c,a||r),a=c,l===0&&(i||this._styleAnchors.set(this._def,c),n&&this._styleAnchors.set(n,c))}}_getStyleAnchor(t){if(!t)return null;const n=this._styleAnchors.get(t);return n&&n.parentNode===this.shadowRoot?n:(n&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let n=0;n(delete e.props.mode,e),c0e=l0e({name:"TransitionGroup",props:Bo({},pY,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=Dr(),i=TQ();let o,s;return gv(()=>{if(!o.length)return;const r=e.moveClass||`${e.name||"v"}-move`;if(!h0e(o[0].el,n.vnode.el,r)){o=[];return}o.forEach(u0e),o.forEach(d0e);const a=o.filter(f0e);RI(n.vnode.el),a.forEach(l=>{const c=l.el,u=c.style;Rd(c,r),u.transform=u.webkitTransform=u.transitionDuration="";const d=c[m6]=f=>{f&&f.target!==c||(!f||f.propertyName.endsWith("transform"))&&(c.removeEventListener("transitionend",d),c[m6]=null,Xh(c,r))};c.addEventListener("transitionend",d)}),o=[]}),()=>{const r=zi(e),a=mY(r);let l=r.tag||xe;if(o=[],s)for(let c=0;c{a.split(/\s+/).forEach(l=>l&&i.classList.remove(l))}),n.split(/\s+/).forEach(a=>a&&i.classList.add(a)),i.style.display="none";const s=t.nodeType===1?t:t.parentNode;s.appendChild(i);const{hasTransform:r}=gY(i);return s.removeChild(i),r}const Q1=e=>{const t=e.props["onUpdate:modelValue"]||!1;return Qn(t)?n=>u2(t,n):t};function p0e(e){e.target.composing=!0}function JD(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const ku=Symbol("_assign");function XD(e,t,n){return t&&(e=e.trim()),n&&(e=F7(e)),e}const Wa={created(e,{modifiers:{lazy:t,trim:n,number:i}},o){e[ku]=Q1(o);const s=i||o.props&&o.props.type==="number";Uf(e,t?"change":"input",r=>{r.target.composing||e[ku](XD(e.value,n,s))}),(n||s)&&Uf(e,"change",()=>{e.value=XD(e.value,n,s)}),t||(Uf(e,"compositionstart",p0e),Uf(e,"compositionend",JD),Uf(e,"change",JD))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:i,trim:o,number:s}},r){if(e[ku]=Q1(r),e.composing)return;const a=(s||e.type==="number")&&!/^0\d/.test(e.value)?F7(e.value):e.value,l=t??"";if(a===l)return;const c=e.getRootNode();(c instanceof Document||c instanceof ShadowRoot)&&c.activeElement===e&&e.type!=="range"&&(i&&t===n||o&&e.value.trim()===l)||(e.value=l)}},g6={deep:!0,created(e,t,n){e[ku]=Q1(n),Uf(e,"change",()=>{const i=e._modelValue,o=F2(e),s=e.checked,r=e[ku];if(Qn(i)){const a=N7(i,o),l=a!==-1;if(s&&!l)r(i.concat(o));else if(!s&&l){const c=[...i];c.splice(a,1),r(c)}}else if(Cm(i)){const a=new Set(i);s?a.add(o):a.delete(o),r(a)}else r(CY(e,s))})},mounted:eN,beforeUpdate(e,t,n){e[ku]=Q1(n),eN(e,t,n)}};function eN(e,{value:t,oldValue:n},i){e._modelValue=t;let o;if(Qn(t))o=N7(t,i.props.value)>-1;else if(Cm(t))o=t.has(i.props.value);else{if(t===n)return;o=hh(t,CY(e,!0))}e.checked!==o&&(e.checked=o)}const wY={created(e,{value:t},n){e.checked=hh(t,n.props.value),e[ku]=Q1(n),Uf(e,"change",()=>{e[ku](F2(e))})},beforeUpdate(e,{value:t,oldValue:n},i){e[ku]=Q1(i),t!==n&&(e.checked=hh(t,i.props.value))}},$I={deep:!0,created(e,{value:t,modifiers:{number:n}},i){const o=Cm(t);Uf(e,"change",()=>{const s=Array.prototype.filter.call(e.options,r=>r.selected).map(r=>n?F7(F2(r)):F2(r));e[ku](e.multiple?o?new Set(s):s:s[0]),e._assigning=!0,kt(()=>{e._assigning=!1})}),e[ku]=Q1(i)},mounted(e,{value:t}){tN(e,t)},beforeUpdate(e,t,n){e[ku]=Q1(n)},updated(e,{value:t}){e._assigning||tN(e,t)}};function tN(e,t){const n=e.multiple,i=Qn(t);if(!(n&&!i&&!Cm(t))){for(let o=0,s=e.options.length;oString(c)===String(a)):r.selected=N7(t,a)>-1}else r.selected=t.has(a);else if(hh(F2(r),t)){e.selectedIndex!==o&&(e.selectedIndex=o);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function F2(e){return"_value"in e?e._value:e.value}function CY(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const m0e={created(e,t,n){b5(e,t,n,null,"created")},mounted(e,t,n){b5(e,t,n,null,"mounted")},beforeUpdate(e,t,n,i){b5(e,t,n,i,"beforeUpdate")},updated(e,t,n,i){b5(e,t,n,i,"updated")}};function AY(e,t){switch(e){case"SELECT":return $I;case"TEXTAREA":return Wa;default:switch(t){case"checkbox":return g6;case"radio":return wY;default:return Wa}}}function b5(e,t,n,i,o){const r=AY(e.tagName,n.props&&n.props.type)[o];r&&r(e,t,n,i)}function g0e(){Wa.getSSRProps=({value:e})=>({value:e}),wY.getSSRProps=({value:e},t)=>{if(t.props&&hh(t.props.value,e))return{checked:!0}},g6.getSSRProps=({value:e},t)=>{if(Qn(e)){if(t.props&&N7(e,t.props.value)>-1)return{checked:!0}}else if(Cm(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},m0e.getSSRProps=(e,t)=>{if(typeof t.type!="string")return;const n=AY(t.type.toUpperCase(),t.props&&t.props.type);if(n.getSSRProps)return n.getSSRProps(e,t)}}const v0e=["ctrl","shift","alt","meta"],y0e={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>v0e.some(n=>e[`${n}Key`]&&!t.includes(n))},Ot=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),i=t.join(".");return n[i]||(n[i]=((o,...s)=>{for(let r=0;r{const n=e._withKeys||(e._withKeys={}),i=t.join(".");return n[i]||(n[i]=(o=>{if(!("key"in o))return;const s=ql(o.key);if(t.some(r=>r===s||b0e[r]===s))return e(o)}))},SY=Bo({patchProp:n0e},Npe);let L4,nN=!1;function xY(){return L4||(L4=ype(SY))}function _Y(){return L4=nN?L4:bpe(SY),nN=!0,L4}const k0e=((...e)=>{xY().render(...e)}),prn=((...e)=>{_Y().hydrate(...e)}),v6=((...e)=>{const t=xY().createApp(...e),{mount:n}=t;return t.mount=i=>{const o=TY(i);if(!o)return;const s=t._component;!gi(s)&&!s.render&&!s.template&&(s.template=o.innerHTML),o.nodeType===1&&(o.textContent="");const r=n(o,!1,IY(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),r},t}),w0e=((...e)=>{const t=_Y().createApp(...e),{mount:n}=t;return t.mount=i=>{const o=TY(i);if(o)return n(o,!0,IY(o))},t});function IY(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function TY(e){return qo(e)?document.querySelector(e):e}let iN=!1;const mrn=()=>{iN||(iN=!0,g0e(),Wpe())},MY=Symbol("IconResolver"),C0e={sm:14,md:16,lg:20},ve=tt({__name:"Icon",props:{name:{},size:{default:"md"},label:{}},setup(e){const t=e,n=Qt(MY,()=>{}),i=R(()=>n(t.name)),o=R(()=>C0e[t.size]);return(s,r)=>i.value?(b(),oe(Ws(i.value),{key:0,class:"kw-icon",width:o.value,height:o.value,"aria-label":e.label,"aria-hidden":e.label?void 0:!0},null,8,["width","height","aria-label","aria-hidden"])):Y("",!0)}}),A0e=["disabled"],S0e={key:0,class:"ui-action-card__leading"},x0e={class:"ui-action-card__text"},_0e={class:"ui-action-card__title"},I0e={key:0,class:"ui-action-card__hint"},T0e=tt({__name:"ActionCard",props:{disabled:{type:Boolean,default:!1}},emits:["select"],setup(e){return(t,n)=>(b(),_("button",{class:"ui-action-card",type:"button",disabled:e.disabled,onClick:n[0]||(n[0]=i=>t.$emit("select"))},[t.$slots.leading?(b(),_("span",S0e,[si(t.$slots,"leading",{},void 0,!0)])):Y("",!0),A("span",x0e,[A("span",_0e,[si(t.$slots,"default",{},void 0,!0),si(t.$slots,"badge",{},void 0,!0)]),t.$slots.hint?(b(),_("span",I0e,[si(t.$slots,"hint",{},void 0,!0)])):Y("",!0)]),q(ve,{name:"chevron-right",size:"lg",class:"ui-action-card__chevron"})],8,A0e))}}),wt=(e,t)=>{const n=e.__vccOpts||e;for(const[i,o]of t)n[i]=o;return n},OI=wt(T0e,[["__scopeId","data-v-e52e7748"]]);/*! + * shared v11.4.6 + * (c) 2026 kazuya kawaguchi + * Released under the MIT License. + */function M0e(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const y6=typeof window<"u",mp=(e,t=!1)=>t?Symbol.for(e):Symbol(e),E0e=(e,t,n)=>L0e({l:e,k:t,s:n}),L0e=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),$r=e=>typeof e=="number"&&isFinite(e),EY=e=>uR(e)==="[object Date]",D2=e=>uR(e)==="[object RegExp]",Z7=e=>so(e)&&Object.keys(e).length===0,Or=Object.assign,R0e=Object.create,Wo=(e=null)=>R0e(e);let oN;const w0=()=>oN||(oN=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:Wo());function sN(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function P0e(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}const $0e=/^\s*javascript\s*(?::|�*58;?|�*3a;?|:?)/i,O0e=/^(?:href|src|action|formaction)$/i;function cR(e){return $0e.test(e)}function F0e(e){const t=/url\s*\(/gi;let n="",i=0,o;for(;(o=t.exec(e))!==null;){const s=o.index,r=t.lastIndex-1;let a=r+1,l=1,c=null;for(;a`${i}="${rN(i,o)}"`),e=e.replace(/([\w:-]+)\s*=\s*'([^']*)'/g,(n,i,o)=>`${i}='${rN(i,o)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),e=e.replace(/(\s+(?:href|src|action|formaction)\s*=\s*)([^\s"'=<>`]+)/gi,(n,i,o)=>cR(o)?`${i}about:blank`:n),e}const N0e=Object.prototype.hasOwnProperty;function fu(e,t){return N0e.call(e,t)}const tr=Array.isArray,Es=e=>typeof e=="function",Dn=e=>typeof e=="string",go=e=>typeof e=="boolean",vo=e=>e!==null&&typeof e=="object",B0e=e=>vo(e)&&Es(e.then)&&Es(e.catch),LY=Object.prototype.toString,uR=e=>LY.call(e),so=e=>uR(e)==="[object Object]",z0e=e=>e==null?"":tr(e)||so(e)&&e.toString===LY?JSON.stringify(e,null,2):String(e);function dR(e,t=""){return e.reduce((n,i,o)=>o===0?n+i:n+t+i,"")}const k5=e=>!vo(e)||tr(e);function W8(e,t){if(k5(e)||k5(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:i,des:o}=n.pop();Object.keys(i).forEach(s=>{s!=="__proto__"&&(vo(i[s])&&!vo(o[s])&&(o[s]=Array.isArray(i[s])?[]:Wo()),k5(o[s])||k5(i[s])?o[s]=i[s]:n.push({src:i[s],des:o[s]}))})}}/*! + * message-compiler v11.4.6 + * (c) 2026 kazuya kawaguchi + * Released under the MIT License. + */function H0e(e,t,n){return{line:e,column:t,offset:n}}function FI(e,t,n){return{start:e,end:t}}const Io={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14},j0e=17;function G7(e,t,n={}){const{domain:i,messages:o,args:s}=n,r=e,a=new SyntaxError(String(r));return a.code=e,t&&(a.location=t),a.domain=i,a}function W0e(e){throw e}const Td=" ",q0e="\r",$a=` +`,V0e="\u2028",U0e="\u2029";function K0e(e){const t=e;let n=0,i=1,o=1,s=0;const r=M=>t[M]===q0e&&t[M+1]===$a,a=M=>t[M]===$a,l=M=>t[M]===U0e,c=M=>t[M]===V0e,u=M=>r(M)||a(M)||l(M)||c(M),d=()=>n,f=()=>i,h=()=>o,m=()=>s,g=M=>r(M)||l(M)||c(M)?$a:t[M],y=()=>g(n),v=()=>g(n+s);function k(){return s=0,u(n)&&(i++,o=0),r(n)&&n++,n++,o++,t[n]}function C(){return r(n+s)&&s++,s++,t[n+s]}function w(){n=0,i=1,o=1,s=0}function S(M=0){s=M}function x(){const M=n+s;for(;M!==n;)k();s=0}return{index:d,line:f,column:h,peekOffset:m,charAt:g,currentChar:y,currentPeek:v,next:k,peek:C,reset:w,resetPeek:S,skipToPeek:x}}const Tf=void 0,Z0e=".",aN="'",G0e="tokenizer";function Q0e(e,t={}){const n=t.location!==!1,i=K0e(e),o=()=>i.index(),s=()=>H0e(i.line(),i.column(),i.index()),r=s(),a=o(),l={currentType:13,offset:a,startLoc:r,endLoc:r,lastType:13,lastOffset:a,lastStartLoc:r,lastEndLoc:r,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function d(fe,le,X,...se){const ye=c();if(le.column+=X,le.offset+=X,u){const we=n?FI(ye.startLoc,le):null,de=G7(fe,we,{domain:G0e,args:se});u(de)}}function f(fe,le,X){fe.endLoc=s(),fe.currentType=le;const se={type:le};return n&&(se.loc=FI(fe.startLoc,fe.endLoc)),X!=null&&(se.value=X),se}const h=fe=>f(fe,13);function m(fe,le){return fe.currentChar()===le?(fe.next(),le):(d(Io.EXPECTED_TOKEN,s(),0,le),"")}function g(fe){let le="";for(;fe.currentPeek()===Td||fe.currentPeek()===$a;)le+=fe.currentPeek(),fe.peek();return le}function y(fe){const le=g(fe);return fe.skipToPeek(),le}function v(fe){if(fe===Tf)return!1;const le=fe.charCodeAt(0);return le>=97&&le<=122||le>=65&&le<=90||le===95}function k(fe){if(fe===Tf)return!1;const le=fe.charCodeAt(0);return le>=48&&le<=57}function C(fe,le){const{currentType:X}=le;if(X!==2)return!1;g(fe);const se=v(fe.currentPeek());return fe.resetPeek(),se}function w(fe,le){const{currentType:X}=le;if(X!==2)return!1;g(fe);const se=fe.currentPeek()==="-"?fe.peek():fe.currentPeek(),ye=k(se);return fe.resetPeek(),ye}function S(fe,le){const{currentType:X}=le;if(X!==2)return!1;g(fe);const se=fe.currentPeek()===aN;return fe.resetPeek(),se}function x(fe,le){const{currentType:X}=le;if(X!==7)return!1;g(fe);const se=fe.currentPeek()===".";return fe.resetPeek(),se}function M(fe,le){const{currentType:X}=le;if(X!==8)return!1;g(fe);const se=v(fe.currentPeek());return fe.resetPeek(),se}function I(fe,le){const{currentType:X}=le;if(!(X===7||X===11))return!1;g(fe);const se=fe.currentPeek()===":";return fe.resetPeek(),se}function T(fe,le){const{currentType:X}=le;if(X!==9)return!1;const se=()=>{const we=fe.currentPeek();return we==="{"?v(fe.peek()):we==="@"||we==="|"||we===":"||we==="."||we===Td||!we?!1:we===$a?(fe.peek(),se()):L(fe,!1)},ye=se();return fe.resetPeek(),ye}function E(fe){g(fe);const le=fe.currentPeek()==="|";return fe.resetPeek(),le}function L(fe,le=!0){const X=(ye=!1,we="")=>{const de=fe.currentPeek();return de==="{"||de==="@"||!de?ye:de==="|"?!(we===Td||we===$a):de===Td?(fe.peek(),X(!0,Td)):de===$a?(fe.peek(),X(!0,$a)):!0},se=X();return le&&fe.resetPeek(),se}function P(fe,le){const X=fe.currentChar();return X===Tf?Tf:le(X)?(fe.next(),X):null}function B(fe){const le=fe.charCodeAt(0);return le>=97&&le<=122||le>=65&&le<=90||le>=48&&le<=57||le===95||le===36}function V(fe){return P(fe,B)}function N(fe){const le=fe.charCodeAt(0);return le>=97&&le<=122||le>=65&&le<=90||le>=48&&le<=57||le===95||le===36||le===45}function D(fe){return P(fe,N)}function j(fe){const le=fe.charCodeAt(0);return le>=48&&le<=57}function F(fe){return P(fe,j)}function z(fe){const le=fe.charCodeAt(0);return le>=48&&le<=57||le>=65&&le<=70||le>=97&&le<=102}function $(fe){return P(fe,z)}function W(fe){let le="",X="";for(;le=F(fe);)X+=le;return X}function G(fe){let le="";for(;;){const X=fe.currentChar();if(X==="\\"){const se=fe.peek();se==="{"||se==="}"||se==="@"||se==="|"||se==="\\"?(le+=X+se,fe.next(),fe.next()):(fe.resetPeek(),le+=X,fe.next())}else{if(X==="{"||X==="}"||X==="@"||X==="|"||!X)break;if(X===Td||X===$a)if(L(fe))le+=X,fe.next();else{if(E(fe))break;le+=X,fe.next()}else le+=X,fe.next()}}return le}function K(fe){y(fe);let le="",X="";for(;le=D(fe);)X+=le;const se=fe.currentChar();if(se&&se!=="}"&&se!==Tf&&se!==Td&&se!==$a&&se!==" "){const ye=Ee(fe);return d(Io.INVALID_TOKEN_IN_PLACEHOLDER,s(),0,X+ye),X+ye}return fe.currentChar()===Tf&&d(Io.UNTERMINATED_CLOSING_BRACE,s(),0),X}function te(fe){y(fe);let le="";return fe.currentChar()==="-"?(fe.next(),le+=`-${W(fe)}`):le+=W(fe),fe.currentChar()===Tf&&d(Io.UNTERMINATED_CLOSING_BRACE,s(),0),le}function J(fe){return fe!==aN&&fe!==$a}function U(fe){y(fe),m(fe,"'");let le="",X="";for(;le=P(fe,J);)le==="\\"?X+=Q(fe):X+=le;const se=fe.currentChar();return se===$a||se===Tf?(d(Io.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,s(),0),se===$a&&(fe.next(),m(fe,"'")),X):(m(fe,"'"),X)}function Q(fe){const le=fe.currentChar();switch(le){case"\\":case"'":return fe.next(),`\\${le}`;case"u":return re(fe,le,4);case"U":return re(fe,le,6);default:return d(Io.UNKNOWN_ESCAPE_SEQUENCE,s(),0,le),""}}function re(fe,le,X){m(fe,le);let se="";for(let ye=0;ye{const se=fe.currentChar();return se==="{"||se==="@"||se==="|"||se==="("||se===")"||!se||se===Td?X:(X+=se,fe.next(),le(X))};return le("")}function ie(fe){y(fe);const le=m(fe,"|");return y(fe),le}function ee(fe,le){let X=null;switch(fe.currentChar()){case"{":return le.braceNest>=1&&d(Io.NOT_ALLOW_NEST_PLACEHOLDER,s(),0),fe.next(),X=f(le,2,"{"),y(fe),le.braceNest++,X;case"}":return le.braceNest>0&&le.currentType===2&&d(Io.EMPTY_PLACEHOLDER,s(),0),fe.next(),X=f(le,3,"}"),le.braceNest--,le.braceNest>0&&y(fe),le.inLinked&&le.braceNest===0&&(le.inLinked=!1),X;case"@":return le.braceNest>0&&d(Io.UNTERMINATED_CLOSING_BRACE,s(),0),X=be(fe,le)||h(le),le.braceNest=0,X;default:{let ye=!0,we=!0,de=!0;if(E(fe))return le.braceNest>0&&d(Io.UNTERMINATED_CLOSING_BRACE,s(),0),X=f(le,1,ie(fe)),le.braceNest=0,le.inLinked=!1,X;if(le.braceNest>0&&(le.currentType===4||le.currentType===5||le.currentType===6))return d(Io.UNTERMINATED_CLOSING_BRACE,s(),0),le.braceNest=0,Pe(fe,le);if(ye=C(fe,le))return X=f(le,4,K(fe)),y(fe),X;if(we=w(fe,le))return X=f(le,5,te(fe)),y(fe),X;if(de=S(fe,le))return X=f(le,6,U(fe)),y(fe),X;if(!ye&&!we&&!de)return X=f(le,12,Ee(fe)),d(Io.INVALID_TOKEN_IN_PLACEHOLDER,s(),0,X.value),y(fe),X;break}}return X}function be(fe,le){const{currentType:X}=le;let se=null;const ye=fe.currentChar();switch((X===7||X===8||X===11||X===9)&&(ye===$a||ye===Td)&&d(Io.INVALID_LINKED_FORMAT,s(),0),ye){case"@":return fe.next(),se=f(le,7,"@"),le.inLinked=!0,se;case".":return y(fe),fe.next(),f(le,8,".");case":":return y(fe),fe.next(),f(le,9,":");default:return E(fe)?(se=f(le,1,ie(fe)),le.braceNest=0,le.inLinked=!1,se):x(fe,le)||I(fe,le)?(y(fe),be(fe,le)):M(fe,le)?(y(fe),f(le,11,he(fe))):T(fe,le)?(y(fe),ye==="{"?ee(fe,le)||se:f(le,10,ce(fe))):(X===7&&d(Io.INVALID_LINKED_FORMAT,s(),0),le.braceNest=0,le.inLinked=!1,Pe(fe,le))}}function Pe(fe,le){let X={type:13};if(le.braceNest>0)return ee(fe,le)||h(le);if(le.inLinked)return be(fe,le)||h(le);switch(fe.currentChar()){case"{":return ee(fe,le)||h(le);case"}":return d(Io.UNBALANCED_CLOSING_BRACE,s(),0),fe.next(),f(le,3,"}");case"@":return be(fe,le)||h(le);default:{if(E(fe))return X=f(le,1,ie(fe)),le.braceNest=0,le.inLinked=!1,X;if(L(fe))return f(le,0,G(fe));break}}return X}function $e(){const{currentType:fe,offset:le,startLoc:X,endLoc:se}=l;return l.lastType=fe,l.lastOffset=le,l.lastStartLoc=X,l.lastEndLoc=se,l.offset=o(),l.startLoc=s(),i.currentChar()===Tf?f(l,13):Pe(i,l)}return{nextToken:$e,currentOffset:o,currentPosition:s,context:c}}const Y0e="parser",J0e=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g,X0e=/\\([\\@{}|])/g;function eme(e,t){return t}function tme(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const i=parseInt(t||n,16);return i<=55295||i>=57344?String.fromCodePoint(i):"�"}}}function nme(e={}){const t=e.location!==!1,{onError:n}=e;function i(v,k,C,w,...S){const x=v.currentPosition();if(x.offset+=w,x.column+=w,n){const M=t?FI(C,x):null,I=G7(k,M,{domain:Y0e,args:S});n(I)}}function o(v,k,C){const w={type:v};return t&&(w.start=k,w.end=k,w.loc={start:C,end:C}),w}function s(v,k,C,w){t&&(v.end=k,v.loc&&(v.loc.end=C))}function r(v,k){const C=v.context(),w=o(3,C.offset,C.startLoc);return w.value=k.replace(X0e,eme),s(w,v.currentOffset(),v.currentPosition()),w}function a(v,k){const C=v.context(),{lastOffset:w,lastStartLoc:S}=C,x=o(5,w,S);return x.index=parseInt(k,10),v.nextToken(),s(x,v.currentOffset(),v.currentPosition()),x}function l(v,k){const C=v.context(),{lastOffset:w,lastStartLoc:S}=C,x=o(4,w,S);return x.key=k,v.nextToken(),s(x,v.currentOffset(),v.currentPosition()),x}function c(v,k){const C=v.context(),{lastOffset:w,lastStartLoc:S}=C,x=o(9,w,S);return x.value=k.replace(J0e,tme),v.nextToken(),s(x,v.currentOffset(),v.currentPosition()),x}function u(v){const k=v.nextToken(),C=v.context(),{lastOffset:w,lastStartLoc:S}=C,x=o(8,w,S);return k.type!==11?(i(v,Io.UNEXPECTED_EMPTY_LINKED_MODIFIER,C.lastStartLoc,0),x.value="",s(x,w,S),{nextConsumeToken:k,node:x}):(k.value==null&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,C.lastStartLoc,0,Md(k)),x.value=k.value||"",s(x,v.currentOffset(),v.currentPosition()),{node:x})}function d(v,k){const C=v.context(),w=o(7,C.offset,C.startLoc);return w.value=k,s(w,v.currentOffset(),v.currentPosition()),w}function f(v){const k=v.context(),C=o(6,k.offset,k.startLoc);let w=v.nextToken();if(w.type===8){const S=u(v);C.modifier=S.node,w=S.nextConsumeToken||v.nextToken()}switch(w.type!==9&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Md(w)),w=v.nextToken(),w.type===2&&(w=v.nextToken()),w.type){case 10:w.value==null&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Md(w)),C.key=d(v,w.value||"");break;case 4:w.value==null&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Md(w)),C.key=l(v,w.value||"");break;case 5:w.value==null&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Md(w)),C.key=a(v,w.value||"");break;case 6:w.value==null&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Md(w)),C.key=c(v,w.value||"");break;default:{i(v,Io.UNEXPECTED_EMPTY_LINKED_KEY,k.lastStartLoc,0);const S=v.context(),x=o(7,S.offset,S.startLoc);return x.value="",s(x,S.offset,S.startLoc),C.key=x,s(C,S.offset,S.startLoc),{nextConsumeToken:w,node:C}}}return s(C,v.currentOffset(),v.currentPosition()),{node:C}}function h(v){const k=v.context(),C=k.currentType===1?v.currentOffset():k.offset,w=k.currentType===1?k.endLoc:k.startLoc,S=o(2,C,w);S.items=[];let x=null;do{const T=x||v.nextToken();switch(x=null,T.type){case 0:T.value==null&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Md(T)),S.items.push(r(v,T.value||""));break;case 5:T.value==null&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Md(T)),S.items.push(a(v,T.value||""));break;case 4:T.value==null&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Md(T)),S.items.push(l(v,T.value||""));break;case 6:T.value==null&&i(v,Io.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Md(T)),S.items.push(c(v,T.value||""));break;case 7:{const E=f(v);S.items.push(E.node),x=E.nextConsumeToken||null;break}}}while(k.currentType!==13&&k.currentType!==1);const M=k.currentType===1?k.lastOffset:v.currentOffset(),I=k.currentType===1?k.lastEndLoc:v.currentPosition();return s(S,M,I),S}function m(v,k,C,w){const S=v.context();let x=w.items.length===0;const M=o(1,k,C);M.cases=[],M.cases.push(w);do{const I=h(v);x||(x=I.items.length===0),M.cases.push(I)}while(S.currentType!==13);return x&&i(v,Io.MUST_HAVE_MESSAGES_IN_PLURAL,C,0),s(M,v.currentOffset(),v.currentPosition()),M}function g(v){const k=v.context(),{offset:C,startLoc:w}=k,S=h(v);return k.currentType===13?S:m(v,C,w,S)}function y(v){const k=Q0e(v,Or({},e)),C=k.context(),w=o(0,C.offset,C.startLoc);return t&&w.loc&&(w.loc.source=v),w.body=g(k),e.onCacheKey&&(w.cacheKey=e.onCacheKey(v)),C.currentType!==13&&i(k,Io.UNEXPECTED_LEXICAL_ANALYSIS,C.lastStartLoc,0,v[C.offset]||""),s(w,k.currentOffset(),k.currentPosition()),w}return{parse:y}}function Md(e){if(e.type===13)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function ime(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:s=>(n.helpers.add(s),s)}}function lN(e,t){for(let n=0;ncN(n)),e}function cN(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;nr;function l(g,y){r.code+=g}function c(g,y=!0){const v=y?i:"";l(o?v+" ".repeat(g):v)}function u(g=!0){const y=++r.indentLevel;g&&c(y)}function d(g=!0){const y=--r.indentLevel;g&&c(y)}function f(){c(r.indentLevel)}return{context:a,push:l,indent:u,deindent:d,newline:f,helper:g=>`_${g}`,needIndent:()=>r.needIndent}}function ame(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),N2(e,t.key),t.modifier?(e.push(", "),N2(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function lme(e,t){const{helper:n,needIndent:i}=e;e.push(`${n("normalize")}([`),e.indent(i());const o=t.items.length;for(let s=0;s1){e.push(`${n("plural")}([`),e.indent(i());const o=t.cases.length;for(let s=0;s{const n=Dn(t.mode)?t.mode:"normal",i=Dn(t.filename)?t.filename:"message.intl";t.sourceMap;const o=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` +`,s=t.needIndent?t.needIndent:n!=="arrow",r=e.helpers||[],a=rme(e,{filename:i,breakLineCode:o,needIndent:s});a.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),a.indent(s),r.length>0&&(a.push(`const { ${dR(r.map(u=>`${u}: _${u}`),", ")} } = ctx`),a.newline()),a.push("return "),N2(a,e),a.deindent(s),a.push("}"),delete e.helpers;const{code:l,map:c}=a.context();return{ast:e,code:l,map:c?c.toJSON():void 0}};function fme(e,t={}){const n=Or({},t),i=!!n.jit,o=!!n.minify,s=n.optimize==null?!0:n.optimize,a=nme(n).parse(e);return i?(s&&sme(a),o&&Eg(a),{ast:a,code:""}):(ome(a,n),dme(a,n))}/*! + * core-base v11.4.6 + * (c) 2026 kazuya kawaguchi + * Released under the MIT License. + */function hme(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(w0().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(w0().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function Yd(e){return vo(e)&&hR(e)===0&&(fu(e,"b")||fu(e,"body"))}const RY=["b","body"];function pme(e){return gp(e,RY)}const PY=["c","cases"];function mme(e){return gp(e,PY,[])}const $Y=["s","static"];function gme(e){return gp(e,$Y)}const OY=["i","items"];function vme(e){return gp(e,OY,[])}const FY=["t","type"];function hR(e){return gp(e,FY)}const DY=["v","value"];function w5(e,t){const n=gp(e,DY);if(n!=null)return n;throw O9(t)}const NY=["m","modifier"];function yme(e){return gp(e,NY)}const BY=["k","key"];function bme(e){const t=gp(e,BY);if(t)return t;throw O9(6)}function gp(e,t,n){for(let i=0;ikme(n,e)}function kme(e,t){const n=pme(t);if(n==null)throw O9(0);if(hR(n)===1){const s=mme(n);return e.plural(s.reduce((r,a)=>[...r,uN(e,a)],[]))}else return uN(e,n)}function uN(e,t){const n=gme(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const i=vme(t).reduce((o,s)=>[...o,DI(e,s)],[]);return e.normalize(i)}}function DI(e,t){const n=hR(t);switch(n){case 3:return w5(t,n);case 9:return w5(t,n);case 4:{const i=t;if(fu(i,"k")&&i.k)return e.interpolate(e.named(i.k));if(fu(i,"key")&&i.key)return e.interpolate(e.named(i.key));throw O9(n)}case 5:{const i=t;if(fu(i,"i")&&$r(i.i))return e.interpolate(e.list(i.i));if(fu(i,"index")&&$r(i.index))return e.interpolate(e.list(i.index));throw O9(n)}case 6:{const i=t,o=yme(i),s=bme(i);return e.linked(DI(e,s),o?DI(e,o):void 0,e.type)}case 7:return w5(t,n);case 8:return w5(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const wme=e=>e;let C5=Wo();function Cme(e,t={}){let n=!1;const i=t.onError||W0e;return t.onError=o=>{n=!0,i(o)},{...fme(e,t),detectError:n}}function Ame(e,t){if(!__INTLIFY_DROP_MESSAGE_COMPILER__&&Dn(e)){go(t.warnHtmlMessage)&&t.warnHtmlMessage;const i=(t.onCacheKey||wme)(e),o=C5[i];if(o)return o;const{ast:s,detectError:r}=Cme(e,{...t,location:!1,jit:!0}),a=fS(s);return r?a:C5[i]=a}else{const n=e.cacheKey;if(n){const i=C5[n];return i||(C5[n]=fS(e))}else return fS(e)}}let F9=null;function Sme(e){F9=e}function xme(e,t,n){F9&&F9.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const _me=Ime("function:translate");function Ime(e){return t=>F9&&F9.emit(e,t)}const Gf={INVALID_ARGUMENT:j0e,INVALID_DATE_ARGUMENT:18,INVALID_ISO_DATE_ARGUMENT:19,NOT_SUPPORT_LOCALE_PROMISE_VALUE:21,NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:22,NOT_SUPPORT_LOCALE_TYPE:23},Tme=24;function Qf(e){return G7(e,null,void 0)}function pR(e,t){return t.locale!=null?dN(t.locale):dN(e.locale)}let hS;function dN(e){if(Dn(e))return e;if(Es(e)){if(e.resolvedOnce&&hS!=null)return hS;if(e.constructor.name==="Function"){const t=e();if(B0e(t))throw Qf(Gf.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return hS=t}else throw Qf(Gf.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw Qf(Gf.NOT_SUPPORT_LOCALE_TYPE)}function Mme(e,t,n){return[...new Set([n,...tr(t)?t:vo(t)?Object.keys(t):Dn(t)?[t]:[n]])]}function NI(e,t,n){const i=Dn(n)?n:D9,o=e;o.__localeChainCache||(o.__localeChainCache=new Map);let s=o.__localeChainCache.get(i);if(!s){s=[];let r=[n];for(;tr(r);)r=fN(s,r,t);const a=tr(t)||!so(t)?t:t.default?t.default:null;r=Dn(a)?[a]:a,tr(r)&&fN(s,r,!1),o.__localeChainCache.set(i,s)}return s}function fN(e,t,n){let i=!0;for(let o=0;o{r===void 0?r=a:r+=a},f[1]=()=>{r!==void 0&&(t.push(r),r=void 0)},f[2]=()=>{f[0](),o++},f[3]=()=>{if(o>0)o--,i=4,f[0]();else{if(o=0,r===void 0||(r=Fme(r),r===!1))return!1;f[1]()}};function h(){const m=e[n+1];if(i===5&&m==="'"||i===6&&m==='"')return n++,a="\\"+m,f[0](),!0}for(;i!==null;)if(n++,s=e[n],!(s==="\\"&&h())){if(l=Ome(s),d=vp[i],c=d[l]||d.l||8,c===8||(i=c[0],c[1]!==void 0&&(u=f[c[1]],u&&(a=s,u()===!1))))return;if(i===7)return t}}const hN=new Map;function Nme(e,t){return vo(e)?e[t]:null}function Bme(e,t){if(!vo(e))return null;let n=hN.get(t);if(n||(n=Dme(t),n&&hN.set(t,n)),!n)return null;const i=n.length;let o=e,s=0;for(;s`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Hme(){return{upper:(e,t)=>t==="text"&&Dn(e)?e.toUpperCase():t==="vnode"&&vo(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&Dn(e)?e.toLowerCase():t==="vnode"&&vo(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&Dn(e)?pN(e):t==="vnode"&&vo(e)&&"__v_isVNode"in e?pN(e.children):e}}let HY;function jme(e){HY=e}let jY;function Wme(e){jY=e}let WY;function qme(e){WY=e}let qY=null;const Vme=e=>{qY=e},Ume=()=>qY;let VY=null;const mN=e=>{VY=e},Kme=()=>VY;let gN=0;function Zme(e={}){const t=Es(e.onWarn)?e.onWarn:M0e,n=Dn(e.version)?e.version:zme,i=Dn(e.locale)||Es(e.locale)?e.locale:D9,o=Es(i)?D9:i,s=tr(e.fallbackLocale)||so(e.fallbackLocale)||Dn(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:o,r=so(e.messages)?e.messages:pS(o),a=so(e.datetimeFormats)?e.datetimeFormats:pS(o),l=so(e.numberFormats)?e.numberFormats:pS(o),c=Or(Wo(),e.modifiers,Hme()),u=e.pluralRules||Wo(),d=Es(e.missing)?e.missing:null,f=go(e.missingWarn)||D2(e.missingWarn)?e.missingWarn:!0,h=go(e.fallbackWarn)||D2(e.fallbackWarn)?e.fallbackWarn:!0,m=!!e.fallbackFormat,g=!!e.unresolving,y=Es(e.postTranslation)?e.postTranslation:null,v=so(e.processor)?e.processor:null,k=go(e.warnHtmlMessage)?e.warnHtmlMessage:!0,C=!!e.escapeParameter,w=Es(e.messageCompiler)?e.messageCompiler:HY,S=Es(e.messageResolver)?e.messageResolver:jY||Nme,x=Es(e.localeFallbacker)?e.localeFallbacker:WY||Mme,M=vo(e.fallbackContext)?e.fallbackContext:void 0,I=e,T=vo(I.__datetimeFormatters)?I.__datetimeFormatters:new Map,E=vo(I.__numberFormatters)?I.__numberFormatters:new Map,L=vo(I.__meta)?I.__meta:{};gN++;const P={version:n,cid:gN,locale:i,fallbackLocale:s,messages:r,modifiers:c,pluralRules:u,missing:d,missingWarn:f,fallbackWarn:h,fallbackFormat:m,unresolving:g,postTranslation:y,processor:v,warnHtmlMessage:k,escapeParameter:C,messageCompiler:w,messageResolver:S,localeFallbacker:x,fallbackContext:M,onWarn:t,__meta:L};return P.datetimeFormats=a,P.numberFormats=l,P.__datetimeFormatters=T,P.__numberFormatters=E,__INTLIFY_PROD_DEVTOOLS__&&xme(P,n,L),P}const pS=e=>({[e]:Wo()});function mR(e,t,n,i,o){const{missing:s,onWarn:r}=e;if(s!==null){const a=s(e,n,t,o);return Dn(a)?a:t}else return t}function wy(e,t,n){const i=e;i.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function Gme(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Qme(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let i=n+1;i{UY.includes(l)?r[l]=n[l]:s[l]=n[l]}),Dn(i)?s.locale=i:so(i)&&(r=i),so(o)&&(r=o),[s.key||"",a,s,r]}function yN(e,t,n){const i=e;for(const o in n){const s=`${t}__${o}`;i.__datetimeFormatters.has(s)&&i.__datetimeFormatters.delete(s)}}function bN(e,...t){const{numberFormats:n,unresolving:i,fallbackLocale:o,onWarn:s,localeFallbacker:r}=e,{__numberFormatters:a}=e;if(!$r(t[0]))return b6;const[l,c,u,d]=zI(...t),f=go(u.missingWarn)?u.missingWarn:e.missingWarn;go(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const h=!!u.part,m=pR(e,u),g=r(e,o,m);if(!Dn(l)||l===""){const x=new Intl.NumberFormat(m.replace(/!/g,""),d);return h?x.formatToParts(c):x.format(c)}let y={},v,k=null;const C="number format";for(let x=0;x{KY.includes(l)?r[l]=n[l]:s[l]=n[l]}),Dn(i)?s.locale=i:so(i)&&(r=i),so(o)&&(r=o),[s.key||"",a,s,r]}function kN(e,t,n){const i=e;for(const o in n){const s=`${t}__${o}`;i.__numberFormatters.has(s)&&i.__numberFormatters.delete(s)}}const Yme=e=>e,Jme=e=>"",Xme="text",ege=e=>e.length===0?"":dR(e),tge=z0e;function mS(e,t){return e=Math.abs(e),t===2?e===1?0:1:Math.min(e,2)}function nge(e){const t=$r(e.pluralIndex)?e.pluralIndex:-1;return $r(e.named?.count)?e.named.count:$r(e.named?.n)?e.named.n:t}function ige(e={}){const t=e.locale,n=nge(e),i=Dn(t)&&Es(e.pluralRules?.[t])?e.pluralRules[t]:mS,o=i===mS?void 0:mS,s=v=>v[i(n,v.length,o)],r=e.list||[],a=v=>r[v],l=e.named||Wo();$r(e.pluralIndex)&&(l.count||=e.pluralIndex,l.n||=e.pluralIndex);const c=v=>l[v];function u(v,k){const C=Es(e.messages)?e.messages(v,!!k):vo(e.messages)?e.messages[v]:!1;return C||(e.parent?e.parent.message(v):Jme)}const d=v=>e.modifiers?e.modifiers[v]:Yme,f=Es(e.processor?.normalize)?e.processor.normalize:ege,h=Es(e.processor?.interpolate)?e.processor.interpolate:tge,m=Dn(e.processor?.type)?e.processor.type:Xme,y={list:a,named:c,plural:s,linked:(v,...k)=>{const[C,w]=k;let S="text",x="";k.length===1?vo(C)?(x=C.modifier||x,S=C.type||S):Dn(C)&&(x=C||x):k.length===2&&(Dn(C)&&(x=C||x),Dn(w)&&(S=w||S));const M=u(v,!0)(y),I=M===""||M===void 0?v:M,T=S==="vnode"&&tr(I)&&x?I[0]:I;return x?d(x)(T,S):T},message:u,type:m,interpolate:h,normalize:f,values:Or(Wo(),r,l)};return y}const wN=()=>"",au=e=>Es(e);function CN(e,...t){const{fallbackFormat:n,postTranslation:i,unresolving:o,messageCompiler:s,fallbackLocale:r,messages:a}=e,[l,c]=HI(...t),u=go(c.missingWarn)?c.missingWarn:e.missingWarn,d=go(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,f=go(c.escapeParameter)?c.escapeParameter:e.escapeParameter,h=!!c.resolvedMessage,m=Dn(c.default)||go(c.default)?go(c.default)?s?l:()=>l:c.default:n?s?l:()=>l:null,g=n||m!=null&&(Dn(m)||Es(m)),y=pR(e,c);f&&oge(c);let[v,k,C]=h?[l,y,a[y]||Wo()]:ZY(e,l,y,r,d,u),w=v,S=l;if(!h&&!(Dn(w)||Yd(w)||au(w))&&g&&(w=m,S=w),!h&&(!(Dn(w)||Yd(w)||au(w))||!Dn(k)))return o?Q7:l;let x=!1;const M=()=>{x=!0},I=au(w)?w:GY(e,l,k,w,S,M);if(x)return w;const T=age(e,k,C,c),E=ige(T),L=sge(e,I,E);let P=i?i(L,l):L;if(f&&Dn(P)&&(P=D0e(P)),__INTLIFY_PROD_DEVTOOLS__){const B={timestamp:Date.now(),key:Dn(l)?l:au(w)?w.key:"",locale:k||(au(w)?w.locale:""),format:Dn(w)?w:au(w)?w.source:"",message:P};B.meta=Or({},e.__meta,Ume()||{}),_me(B)}return P}function oge(e){tr(e.list)?e.list=e.list.map(t=>Dn(t)?sN(t):t):vo(e.named)&&Object.keys(e.named).forEach(t=>{Dn(e.named[t])&&(e.named[t]=sN(e.named[t]))})}function ZY(e,t,n,i,o,s){const{messages:r,onWarn:a,messageResolver:l,localeFallbacker:c}=e,u=c(e,i,n);let d=Wo(),f,h=null;const m="translate";for(let g=0;gi);return c.locale=n,c.key=t,c}const l=r(i,rge(e,n,o,i,a,s));return l.locale=n,l.key=t,l.source=i,l}function sge(e,t,n){return t(n)}function HI(...e){const[t,n,i]=e,o=Wo();if(!Dn(t)&&!$r(t)&&!au(t)&&!Yd(t))throw Qf(Gf.INVALID_ARGUMENT);const s=$r(t)?String(t):(au(t),t);return $r(n)?o.plural=n:Dn(n)?o.default=n:so(n)&&!Z7(n)?o.named=n:tr(n)&&(o.list=n),$r(i)?o.plural=i:Dn(i)?o.default=i:so(i)&&Or(o,i),[s,o]}function rge(e,t,n,i,o,s){return{locale:t,key:n,warnHtmlMessage:o,onError:r=>{throw s&&s(r),r},onCacheKey:r=>E0e(t,n,r)}}function age(e,t,n,i){const{modifiers:o,pluralRules:s,messageResolver:r,fallbackLocale:a,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,f={locale:t,modifiers:o,pluralRules:s,messages:(h,m)=>{let g=r(n,h);if(g==null&&(u||m)){const[y,,v]=ZY(u||e,h,t,a,l,c);g=y??r(v,h)}if(Dn(g)||Yd(g)){let y=!1;const k=GY(e,h,t,g,h,()=>{y=!0});return y?wN:k}else return au(g)?g:wN}};return e.processor&&(f.processor=e.processor),i.list&&(f.list=i.list),i.named&&(f.named=i.named),$r(i.plural)&&(f.pluralIndex=i.plural),f}hme();/*! + * vue-i18n v11.4.6 + * (c) 2026 kazuya kawaguchi + * Released under the MIT License. + */const lge="11.4.6";function cge(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(w0().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(w0().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(w0().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(w0().__INTLIFY_PROD_DEVTOOLS__=!1)}const vl={UNEXPECTED_RETURN_TYPE:Tme,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32,NOT_AVAILABLE_COMPOSITION_IN_LEGACY:34};function Vl(e,...t){return G7(e,null,void 0)}const jI=mp("__translateVNode"),WI=mp("__datetimeParts"),qI=mp("__numberParts"),QY=mp("__setPluralRules"),YY=mp("__injectWithOption"),Wg=mp("__dispose");function N9(e){if(!vo(e)||Yd(e))return e;for(const t in e)if(fu(e,t))if(!t.includes("."))vo(e[t])&&N9(e[t]);else{const n=t.split("."),i=n.length-1;let o=e,s=!1;for(let r=0;r{if("locale"in a&&"resource"in a){const{locale:l,resource:c}=a;l?(r[l]=r[l]||Wo(),W8(c,r[l])):W8(c,r)}else Dn(a)&&W8(JSON.parse(a),r)}),o==null&&s)for(const a in r)fu(r,a)&&N9(r[a]);return r}function JY(e){return e.type}function XY(e,t,n){let i=vo(t.messages)?t.messages:Wo();"__i18nGlobal"in n&&(i=gR(e.locale.value,{messages:i,__i18n:n.__i18nGlobal}));const o=Object.keys(i);o.length&&o.forEach(s=>{e.mergeLocaleMessage(s,i[s])});{if(vo(t.datetimeFormats)){const s=Object.keys(t.datetimeFormats);s.length&&s.forEach(r=>{e.mergeDateTimeFormat(r,t.datetimeFormats[r])})}if(vo(t.numberFormats)){const s=Object.keys(t.numberFormats);s.length&&s.forEach(r=>{e.mergeNumberFormat(r,t.numberFormats[r])})}}}function AN(e){return q(O1,null,e,0)}function B9(){return Dr()}const SN="__INTLIFY_META__",xN=()=>[],uge=()=>!1;let _N=0;function IN(e){return((t,n,i,o)=>e(n,i,B9()||void 0,o))}const dge=()=>{const e=B9();let t=null;return e&&(t=JY(e)[SN])?{[SN]:t}:null};function k6(e={}){const{__root:t,__injectWithOption:n}=e,i=t===void 0,o=e.flatJson,s=y6?Z:Rs;let r=go(e.inheritLocale)?e.inheritLocale:!0;const a=s(t&&r?t.locale.value:Dn(e.locale)?e.locale:D9),l=s(t&&r?t.fallbackLocale.value:Dn(e.fallbackLocale)||tr(e.fallbackLocale)||so(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a.value),c=s(gR(a.value,e)),u=s(so(e.datetimeFormats)?e.datetimeFormats:{[a.value]:{}}),d=s(so(e.numberFormats)?e.numberFormats:{[a.value]:{}});let f=t?t.missingWarn:go(e.missingWarn)||D2(e.missingWarn)?e.missingWarn:!0,h=t?t.fallbackWarn:go(e.fallbackWarn)||D2(e.fallbackWarn)?e.fallbackWarn:!0,m=t?t.fallbackRoot:go(e.fallbackRoot)?e.fallbackRoot:!0,g=!!e.fallbackFormat,y=Es(e.missing)?e.missing:null,v=Es(e.missing)?IN(e.missing):null,k=Es(e.postTranslation)?e.postTranslation:null,C=t?t.warnHtmlMessage:go(e.warnHtmlMessage)?e.warnHtmlMessage:!0,w=!!e.escapeParameter;const S=t?t.modifiers:so(e.modifiers)?e.modifiers:{};let x=e.pluralRules||t&&t.pluralRules,M;M=(()=>{i&&mN(null);const de={version:lge,locale:a.value,fallbackLocale:l.value,messages:c.value,modifiers:S,pluralRules:x,missing:v===null?void 0:v,missingWarn:f,fallbackWarn:h,fallbackFormat:g,unresolving:!0,postTranslation:k===null?void 0:k,warnHtmlMessage:C,escapeParameter:w,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};de.datetimeFormats=u.value,de.numberFormats=d.value,de.__datetimeFormatters=so(M)?M.__datetimeFormatters:void 0,de.__numberFormatters=so(M)?M.__numberFormatters:void 0;const Ie=Zme(de);return i&&mN(Ie),Ie})(),wy(M,a.value,l.value);function T(){return[a.value,l.value,c.value,u.value,d.value]}const E=R({get:()=>a.value,set:de=>{M.locale=de,a.value=de}}),L=R({get:()=>l.value,set:de=>{M.fallbackLocale=de,l.value=de,wy(M,a.value,de)}}),P=R(()=>c.value),B=R(()=>u.value),V=R(()=>d.value);function N(){return Es(k)?k:null}function D(de){k=de,M.postTranslation=de}function j(){return y}function F(de){de!==null&&(v=IN(de)),y=de,M.missing=v}const z=(de,Ie,Ye,st,Rt,Pt)=>{T();let Ht;try{__INTLIFY_PROD_DEVTOOLS__,i||(M.fallbackContext=t?Kme():void 0),Ht=de(M)}finally{__INTLIFY_PROD_DEVTOOLS__,i||(M.fallbackContext=void 0)}if(Ye!=="translate exists"&&$r(Ht)&&Ht===Q7||Ye==="translate exists"&&!Ht){const[Zt,sn]=Ie();return t&&m?st(t):Rt(Zt)}else{if(Pt(Ht))return Ht;throw Vl(vl.UNEXPECTED_RETURN_TYPE)}};function $(...de){return z(Ie=>Reflect.apply(CN,null,[Ie,...de]),()=>HI(...de),"translate",Ie=>Reflect.apply(Ie.t,Ie,[...de]),Ie=>Ie,Ie=>Dn(Ie))}function W(...de){const[Ie,Ye,st]=de;if(st&&!vo(st))throw Vl(vl.INVALID_ARGUMENT);return $(Ie,Ye,Or({resolvedMessage:!0},st||{}))}function G(...de){return z(Ie=>Reflect.apply(vN,null,[Ie,...de]),()=>BI(...de),"datetime format",Ie=>Reflect.apply(Ie.d,Ie,[...de]),()=>b6,Ie=>Dn(Ie)||tr(Ie))}function K(...de){return z(Ie=>Reflect.apply(bN,null,[Ie,...de]),()=>zI(...de),"number format",Ie=>Reflect.apply(Ie.n,Ie,[...de]),()=>b6,Ie=>Dn(Ie)||tr(Ie))}function te(de){return de.map(Ie=>Dn(Ie)||$r(Ie)||go(Ie)?AN(String(Ie)):Ie)}const U={normalize:te,interpolate:de=>de,type:"vnode"};function Q(...de){return z(Ie=>{let Ye;const st=Ie;try{st.processor=U,Ye=Reflect.apply(CN,null,[st,...de])}finally{st.processor=null}return Ye},()=>HI(...de),"translate",Ie=>Ie[jI](...de),Ie=>[AN(Ie)],Ie=>tr(Ie))}function re(...de){return z(Ie=>Reflect.apply(bN,null,[Ie,...de]),()=>zI(...de),"number format",Ie=>Ie[qI](...de),xN,Ie=>Dn(Ie)||tr(Ie))}function me(...de){return z(Ie=>Reflect.apply(vN,null,[Ie,...de]),()=>BI(...de),"datetime format",Ie=>Ie[WI](...de),xN,Ie=>Dn(Ie)||tr(Ie))}function Ee(de){x=de,M.pluralRules=x}function he(de,Ie){return z(()=>{if(!de)return!1;const Ye=Dn(Ie)?Ie:a.value,st=Dn(Ie)?[Ye]:NI(M,l.value,Ye);for(let Rt=0;Rt[de],"translate exists",Ye=>Reflect.apply(Ye.te,Ye,[de,Ie]),uge,Ye=>go(Ye))}function ce(de){let Ie=null;const Ye=NI(M,l.value,a.value);for(let st=0;st{r&&(a.value=de,M.locale=de,wy(M,a.value,l.value))}),Fe(t.fallbackLocale,de=>{r&&(l.value=de,M.fallbackLocale=de,wy(M,a.value,l.value))}));const we={id:_N,locale:E,fallbackLocale:L,get inheritLocale(){return r},set inheritLocale(de){r=de,de&&t&&(a.value=t.locale.value,l.value=t.fallbackLocale.value,wy(M,a.value,l.value))},get availableLocales(){return Object.keys(c.value).sort()},messages:P,get modifiers(){return S},get pluralRules(){return x||{}},get isGlobal(){return i},get missingWarn(){return f},set missingWarn(de){f=de,M.missingWarn=f},get fallbackWarn(){return h},set fallbackWarn(de){h=de,M.fallbackWarn=h},get fallbackRoot(){return m},set fallbackRoot(de){m=de},get fallbackFormat(){return g},set fallbackFormat(de){g=de,M.fallbackFormat=g},get warnHtmlMessage(){return C},set warnHtmlMessage(de){C=de,M.warnHtmlMessage=de},get escapeParameter(){return w},set escapeParameter(de){w=de,M.escapeParameter=de},t:$,getLocaleMessage:ee,setLocaleMessage:be,mergeLocaleMessage:Pe,getPostTranslationHandler:N,setPostTranslationHandler:D,getMissingHandler:j,setMissingHandler:F,[QY]:Ee};return we.datetimeFormats=B,we.numberFormats=V,we.rt=W,we.te=he,we.tm=ie,we.d=G,we.n=K,we.getDateTimeFormat=$e,we.setDateTimeFormat=fe,we.mergeDateTimeFormat=le,we.getNumberFormat=X,we.setNumberFormat=se,we.mergeNumberFormat=ye,we[YY]=n,we[jI]=Q,we[WI]=me,we[qI]=re,we}function fge(e){const t=Dn(e.locale)?e.locale:D9,n=Dn(e.fallbackLocale)||tr(e.fallbackLocale)||so(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,i=Es(e.missing)?e.missing:void 0,o=go(e.silentTranslationWarn)||D2(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,s=go(e.silentFallbackWarn)||D2(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,r=go(e.fallbackRoot)?e.fallbackRoot:!0,a=!!e.formatFallbackMessages,l=so(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=Es(e.postTranslation)?e.postTranslation:void 0,d=Dn(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,f=!!e.escapeParameterHtml,h=go(e.sync)?e.sync:!0;let m=e.messages;if(so(e.sharedMessages)){const S=e.sharedMessages;m=Object.keys(S).reduce((M,I)=>{const T=M[I]||(M[I]={});return Or(T,S[I]),M},m||{})}const{__i18n:g,__root:y,__injectWithOption:v}=e,k=e.datetimeFormats,C=e.numberFormats,w=e.flatJson;return{locale:t,fallbackLocale:n,messages:m,flatJson:w,datetimeFormats:k,numberFormats:C,missing:i,missingWarn:o,fallbackWarn:s,fallbackRoot:r,fallbackFormat:a,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:d,escapeParameter:f,messageResolver:e.messageResolver,inheritLocale:h,__i18n:g,__root:y,__injectWithOption:v}}function VI(e={}){const t=k6(fge(e)),{__extender:n}=e,i={id:t.id,get locale(){return t.locale.value},set locale(o){t.locale.value=o},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(o){t.fallbackLocale.value=o},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get missing(){return t.getMissingHandler()},set missing(o){t.setMissingHandler(o)},get silentTranslationWarn(){return go(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(o){t.missingWarn=go(o)?!o:o},get silentFallbackWarn(){return go(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(o){t.fallbackWarn=go(o)?!o:o},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(o){t.fallbackFormat=o},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(o){t.setPostTranslationHandler(o)},get sync(){return t.inheritLocale},set sync(o){t.inheritLocale=o},get warnHtmlInMessage(){return t.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(o){t.warnHtmlMessage=o!=="off"},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(o){t.escapeParameter=o},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t(...o){return Reflect.apply(t.t,t,[...o])},rt(...o){return Reflect.apply(t.rt,t,[...o])},te(o,s){return t.te(o,s)},tm(o){return t.tm(o)},getLocaleMessage(o){return t.getLocaleMessage(o)},setLocaleMessage(o,s){t.setLocaleMessage(o,s)},mergeLocaleMessage(o,s){t.mergeLocaleMessage(o,s)},d(...o){return Reflect.apply(t.d,t,[...o])},getDateTimeFormat(o){return t.getDateTimeFormat(o)},setDateTimeFormat(o,s){t.setDateTimeFormat(o,s)},mergeDateTimeFormat(o,s){t.mergeDateTimeFormat(o,s)},n(...o){return Reflect.apply(t.n,t,[...o])},getNumberFormat(o){return t.getNumberFormat(o)},setNumberFormat(o,s){t.setNumberFormat(o,s)},mergeNumberFormat(o,s){t.mergeNumberFormat(o,s)}};return i.__extender=n,i}function hge(e,t,n){return{beforeCreate(){const i=B9();if(!i)throw Vl(vl.UNEXPECTED_ERROR);const o=this.$options;if(o.i18n){const s=o.i18n;if(o.__i18n&&(s.__i18n=o.__i18n),s.__root=t,this===this.$root)this.$i18n=TN(e,s);else{s.__injectWithOption=!0,s.__extender=n.__vueI18nExtend,this.$i18n=VI(s);const r=this.$i18n;r.__extender&&(r.__disposer=r.__extender(this.$i18n))}}else if(o.__i18n)if(this===this.$root)this.$i18n=TN(e,o);else{this.$i18n=VI({__i18n:o.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}else this.$i18n=e;o.__i18nGlobal&&XY(t,o,o),this.$t=(...s)=>this.$i18n.t(...s),this.$rt=(...s)=>this.$i18n.rt(...s),this.$te=(s,r)=>this.$i18n.te(s,r),this.$d=(...s)=>this.$i18n.d(...s),this.$n=(...s)=>this.$i18n.n(...s),this.$tm=s=>this.$i18n.tm(s),n.__setInstance(i,this.$i18n)},mounted(){},unmounted(){const i=B9();if(!i)throw Vl(vl.UNEXPECTED_ERROR);const o=this.$i18n;o&&(delete this.$t,delete this.$rt,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,o?.__disposer&&(o.__disposer(),delete o.__disposer,delete o.__extender),n.__deleteInstance(i),delete this.$i18n)}}}function TN(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[QY](t.pluralizationRules||e.pluralizationRules);const n=gR(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(i=>e.mergeLocaleMessage(i,n[i])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(i=>e.mergeDateTimeFormat(i,t.datetimeFormats[i])),t.numberFormats&&Object.keys(t.numberFormats).forEach(i=>e.mergeNumberFormat(i,t.numberFormats[i])),e}const vR={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function pge({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((i,o)=>[...i,...o.type===xe?o.children:[o]],[]):t.reduce((n,i)=>{const o=e[i];return o&&(n[i]=o()),n},Wo())}function eJ(){return xe}const mge=tt({name:"i18n-t",props:Or({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>$r(e)||!isNaN(e)}},vR),setup(e,t){const{slots:n,attrs:i}=t,o=e.i18n||Wt({useScope:e.scope,__useComponent:!0});return()=>{const s=()=>{const l=Object.keys(n).filter(d=>d[0]!=="_"),c=Wo();e.locale&&(c.locale=e.locale),e.plural!==void 0&&(c.plural=Dn(e.plural)?+e.plural:e.plural);const u=pge(t,l);return o[jI](e.keypath,u,c)},r=Or(Wo(),i),a=Dn(e.tag)||vo(e.tag)?e.tag:eJ();return vo(a)?Zn(a,r,{default:s}):Zn(a,r,s())}}}),MN=mge;function gge(e){return tr(e)&&!Dn(e[0])}function tJ(e,t,n,i){const{slots:o,attrs:s}=t;return()=>{const r=()=>{const c={part:!0};let u=Wo();e.locale&&(c.locale=e.locale),Dn(e.format)?c.key=e.format:vo(e.format)&&(Dn(e.format.key)&&(c.key=e.format.key),u=Object.keys(e.format).reduce((h,m)=>n.includes(m)?Or(Wo(),h,{[m]:e.format[m]}):h,Wo()));const d=i(e.value,c,u);let f=[c.key];return tr(d)?f=d.map((h,m)=>{const g=o[h.type],y=g?g({[h.type]:h.value,index:m,parts:d}):[h.value];return gge(y)&&(y[0].key=`${h.type}-${m}`),y}):Dn(d)&&(f=[d]),f},a=Or(Wo(),s),l=Dn(e.tag)||vo(e.tag)?e.tag:eJ();return vo(l)?Zn(l,a,{default:r}):Zn(l,a,r())}}const vge=tt({name:"i18n-n",props:Or({value:{type:Number,required:!0},format:{type:[String,Object]}},vR),setup(e,t){const n=e.i18n||Wt({useScope:e.scope,__useComponent:!0});return tJ(e,t,KY,(...i)=>n[qI](...i))}}),EN=vge;function yge(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const i=n.__getInstance(t);return i!=null?i.__composer:e.global.__composer}}function bge(e){const t=r=>{const{instance:a,value:l}=r;if(!a||!a.$)throw Vl(vl.UNEXPECTED_ERROR);const c=yge(e,a.$),u=LN(l);return[Reflect.apply(c.t,c,[...RN(u)]),c]};return{created:(r,a)=>{const[l,c]=t(a);y6&&(r.__i18nWatcher=Fe(c.locale,()=>{a.instance&&a.instance.$forceUpdate()})),r.__composer=c,r.textContent=l},unmounted:r=>{y6&&r.__i18nWatcher&&(r.__i18nWatcher(),r.__i18nWatcher=void 0,delete r.__i18nWatcher),r.__composer&&(r.__composer=void 0,delete r.__composer)},beforeUpdate:(r,{value:a})=>{if(r.__composer){const l=r.__composer,c=LN(a);r.textContent=Reflect.apply(l.t,l,[...RN(c)])}},getSSRProps:r=>{const[a]=t(r);return{textContent:a}}}}function LN(e){if(Dn(e))return{path:e};if(so(e)){if(!("path"in e))throw Vl(vl.REQUIRED_VALUE,"path");return e}else throw Vl(vl.INVALID_VALUE)}function RN(e){const{path:t,locale:n,args:i,choice:o,plural:s}=e,r={},a=i||{};return Dn(n)&&(r.locale=n),$r(o)&&(r.plural=o),$r(s)&&(r.plural=s),[t,a,r]}function kge(e,t,...n){const i=so(n[0])?n[0]:{};(go(i.globalInstall)?i.globalInstall:!0)&&([MN.name,"I18nT"].forEach(s=>e.component(s,MN)),[EN.name,"I18nN"].forEach(s=>e.component(s,EN)),[ON.name,"I18nD"].forEach(s=>e.component(s,ON))),e.directive("t",bge(t))}const wge=mp("global-vue-i18n");function Cge(e={}){const t=__VUE_I18N_LEGACY_API__&&go(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=go(e.globalInjection)?e.globalInjection:!0,i=new Map,[o,s]=Age(e,t),r=mp("");function a(d){return i.get(d)||null}function l(d,f){i.set(d,f)}function c(d){i.delete(d)}const u={get mode(){return __VUE_I18N_LEGACY_API__&&t?"legacy":"composition"},async install(d,...f){if(d.__VUE_I18N_SYMBOL__=r,d.provide(d.__VUE_I18N_SYMBOL__,u),so(f[0])){const g=f[0];u.__composerExtend=g.__composerExtend,u.__vueI18nExtend=g.__vueI18nExtend}let h=null;!t&&n&&(h=Ege(d,u.global)),__VUE_I18N_FULL_INSTALL__&&kge(d,u,...f),__VUE_I18N_LEGACY_API__&&t&&d.mixin(hge(s,s.__composer,u));const m=d.unmount;d.unmount=()=>{h&&h(),u.dispose(),m()}},get global(){return s},dispose(){o.stop()},__instances:i,__getInstance:a,__setInstance:l,__deleteInstance:c};return u}function Wt(e={}){const t=B9();if(t==null)throw Vl(vl.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Vl(vl.NOT_INSTALLED);const n=Sge(t),i=_ge(n),o=JY(t),s=xge(e,o);if(s==="global")return XY(i,e,o),i;if(s==="parent"){let l=PN(n,t,e.__useComponent);return l==null&&(l=i),l}if(s==="isolated"){if(n.mode!=="composition")throw Vl(vl.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const l=n,c=Or({},e),u=PN(n,t);c.__root=u||i;const d=k6(c);return l.__composerExtend&&(d[Wg]=l.__composerExtend(d)),sd()&&Kr(()=>{const h=d[Wg];h&&(h(),delete d[Wg])}),d}const r=n;let a=r.__getInstance(t);if(a==null){const l=Or({},e);"__i18n"in o&&(l.__i18n=o.__i18n),i&&(l.__root=i),a=k6(l),r.__composerExtend&&(a[Wg]=r.__composerExtend(a)),Tge(r,t,a),r.__setInstance(t,a)}return a}function Age(e,t){const n=Q3(),i=__VUE_I18N_LEGACY_API__&&t?n.run(()=>VI(e)):n.run(()=>k6(e));if(i==null)throw Vl(vl.UNEXPECTED_ERROR);return[n,i]}function Sge(e){const t=Qt(e.isCE?wge:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Vl(e.isCE?vl.NOT_INSTALLED_WITH_PROVIDE:vl.UNEXPECTED_ERROR);return t}function xge(e,t){return Z7(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function _ge(e){return e.mode==="composition"?e.global:e.global.__composer}function PN(e,t,n=!1){let i=null;const o=t.root;let s=Ige(t,n);for(;s!=null;){const r=e;if(e.mode==="composition")i=r.__getInstance(s);else if(__VUE_I18N_LEGACY_API__){const a=r.__getInstance(s);a!=null&&(i=a.__composer,n&&i&&!i[YY]&&(i=null))}if(i!=null||o===s)break;s=s.parent}return i}function Ige(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function Tge(e,t,n){Pn(()=>{},t),Jn(()=>{const i=n;e.__deleteInstance(t);const o=i[Wg];o&&(o(),delete i[Wg])},t)}const Mge=["locale","fallbackLocale","availableLocales"],$N=["t","rt","d","n","tm","te"];function Ege(e,t){const n=Object.create(null);return Mge.forEach(o=>{const s=Object.getOwnPropertyDescriptor(t,o);if(!s)throw Vl(vl.UNEXPECTED_ERROR);const r=Vo(s.value)?{get(){return s.value.value},set(a){s.value.value=a}}:{get(){return s.get&&s.get()}};Object.defineProperty(n,o,r)}),e.config.globalProperties.$i18n=n,$N.forEach(o=>{const s=Object.getOwnPropertyDescriptor(t,o);if(!s||!s.value)throw Vl(vl.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${o}`,s)}),()=>{delete e.config.globalProperties.$i18n,$N.forEach(o=>{delete e.config.globalProperties[`$${o}`]})}}const Lge=tt({name:"i18n-d",props:Or({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},vR),setup(e,t){const n=e.i18n||Wt({useScope:e.scope,__useComponent:!0});return tJ(e,t,UY,(...i)=>n[WI](...i))}}),ON=Lge;cge();jme(Ame);Wme(Bme);qme(NI);if(__INTLIFY_PROD_DEVTOOLS__){const e=w0();e.__INTLIFY__=!0,Sme(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const Rge={preview:"Preview",source:"Code",confirm:"Confirm",cancel:"Cancel",close:"Close",dismiss:"Dismiss",loading:"Loading",copy:"Copy",errorBoundaryTitle:"Something went wrong",errorBoundaryRetry:"Try again",asyncLoadFailed:"Failed to load. Close this view and try again."},Pge={connecting:"Connecting…",connectingStageAuth:"Checking sign-in…",connectingStageServer:"Connecting to the Kimi Code service…",connectingStageConfig:"Loading configuration…",connectingStageSessions:"Loading sessions…",connectingStageSession:"Opening session…",connectingRetrySuffix:" (retry {n})",connectingIssueNetworkTitle:"Cannot connect",connectingIssueNetworkMessage:"Check your network connection and make sure the Kimi Code service is still running.",connectingIssueTimeoutTitle:"Response timed out",connectingIssueTimeoutMessage:"Still retrying automatically — please wait.",connectingIssueApiTitle:"Request failed",connectingIssueUnknownTitle:"Connection problem",menuFile:"File",menuEdit:"Edit",menuView:"View",menuHelp:"Help",applicationMenu:"Application menu",quitConfirmTitle:"Quit Kimi Code?",quitConfirmMessage:"Sessions are still in progress on this machine and will be interrupted if you quit.",quitConfirmMessageRemoteControl:"Remote Control is running. Quitting the app will stop it, and you will need to turn it on again after restarting.",quitConfirmMessageBusyAndRemoteControl:"Sessions are still in progress and will be interrupted. Remote Control is also running — quitting the app will stop it, and you will need to turn it on again after restarting.",quitConfirmQuit:"Quit",quitConfirmCancel:"Cancel"},$ge={workspaceMeta:"workspace · {branch}",sessionsHeader:"sessions",workspaces:"workspaces",viewSwitcher:"List options",viewGroup:"View",viewFlat:"Flat list",viewGrouped:"Group by workspace",sortGroup:"Sort order",sortManual:"Manual",sortRecent:"Recent activity",sessionAdmin:"Manage Sessions",collapseAll:"Collapse all workspaces",expandAll:"Expand all workspaces",newSession:"New Session",newChat:"New Session",newWorkspace:"New Workspace",dropToAddWorkspace:"Drop to add workspace",emptyState:"No sessions yet · click New Session to start",options:"Options",rename:"Rename",genTitle:"Gen Title",genTitleUnavailable:"Title generation unavailable — needs a managed Kimi Code login and at least one message",setEmoji:"Set Emoji…",sessionEmojiTitle:"Pick an emoji",removeEmoji:"Remove emoji",randomEmoji:"Random",searchEmoji:"Search emoji",recentEmojis:"Recently used",noEmojiResults:"No matching emoji",emojiGroupFaces:"Smileys & People",emojiGroupNature:"Animals & Nature",emojiGroupFood:"Food & Drink",emojiGroupActivity:"Activities & Travel",emojiGroupObjects:"Objects & Work",emojiGroupSymbols:"Symbols & Status",copyPath:"Copy path",copySessionId:"Copy session ID",copied:"Copied",copyFailed:"Copy failed",archive:"Archive",archiveToastUndo:"Undo",archiveToastMid:"or view archived chats in",archiveToastSettings:"Settings",archiveToastTail:"",tabOpen:"Open",tabDone:"Done",tabWorkspaces:"Workspaces",tagOpen:"Open",tagDone:"Done",complete:"Done",markDone:"Mark as done",reopen:"Mark as open",noDoneSessions:"No completed sessions yet",noOpenSessions:"No open sessions yet",completeToastLead:"Done",reopenToastLead:"Back to open",fork:"Fork session",reload:"Reload session",export:"Export session",pin:"Pin",unpin:"Unpin",pinned:"Pinned",collapsePinned:"Collapse pinned",expandPinned:"Expand pinned",resizePinnedAria:"Resize pinned section height",delete:"Delete",deleteConfirmTitle:"Delete session",deleteConfirmMessage:'Permanently delete all conversation history of "{title}". This cannot be undone. Files and code changes in the workspace are not affected.',deleteConfirmButton:"Permanently delete",deleteToast:"Session deleted",removeWorkspace:"Remove workspace",brand:"Kimi Code",signedIn:"Signed in",signOut:"Sign out",notSignedIn:"Not signed in",signIn:"Sign in",defaultUserName:"Kimi User",upgradeMembership:"Upgrade membership",logoutConfirmTitle:"Sign out",logoutConfirmMessage:"Are you sure you want to sign out?",language:"Language",backendTitle:"Backend {backend} · {endpoint} — click to switch",noSessions:"No conversations yet",allPinned:"{count} conversations pinned",showMore:"Show more",loadMore:"Load more",showLess:"Show less",loadingMore:"Loading…",collapseSidebar:"Collapse sidebar",expandSidebar:"Expand sidebar",searchPlaceholder:"Search sessions and workspaces",search:"Search",searchHint:"↑↓ navigate · ↵ open · Esc close",searchHintSelect:"navigate",searchHintOpen:"open",searchHintClose:"close",searchClear:"Clear search",searchNoResults:"No matching sessions or workspaces",searchEmpty:"No sessions yet",update:"Upgrade",updateAvailable:"v{version} available",updateDownloadingButton:"Downloading… ({percent}%)",updateReady:"v{version} ready",updateDone:"Restart",updateFailed:"Download failed",updateRetry:"Retry",updateDownloadNow:"Download & Update",updateSkip:"Skip This Version",updateRestartNow:"Restart Now",updateRestartLater:"Later",updateReleaseDate:"Released {date}",updateCurrentVersion:"Current v{version}",updateWhatsNew:"What’s new",updateBackground:"Download in Background",updateAutoDownload:"Automatically download and install updates",rcSelectDevice:"Select device",rcCurrentDevice:"Current device: {name}",rcConnectable:"Connectable",rcUnavailable:"Unavailable",rcOnline:"Online",rcOffline:"Offline",rcDevicesLoadFailed:"Failed to load devices"},Oge={title:"Session Management",subtitle:"Manage all sessions. Mark the finished ones as done. Filter by last updated to clean up old sessions in bulk.",back:"Back",filterWorkspace:"Workspace",filterStatus:"Status",filterTime:"Updated",allWorkspaces:"All workspaces",selectAll:"Select all",searchWorkspace:"Search workspaces",noWorkspaceMatch:"No matching workspaces",removeTag:"Remove {name}",statusAll:"All statuses",statusOpen:"Open",statusDone:"Done",timeAll:"Any time",timeDaysAgo:"{n} days ago",query:"Query",reset:"Reset",colStatus:"Status",colTitle:"Title",colWorkspace:"Workspace",colPrompt:"Last prompt",colUpdated:"Updated",colCompleted:"Completed",colActions:"Actions",empty:"No sessions match the current filters",loading:"Loading…",total:"{n} total",pageSize:"{n} / page",prevPage:"Previous page",nextPage:"Next page",selectPageAll:"Select all on this page",batchSelected:"{n} selected",selectAllMatching:"Select all {total} matching sessions",materializingAll:"Selecting…",allMatchingSelected:"All {n} selected",clearSelection:"Clear selection",markDone:"Mark as done",reopen:"Mark as open",markDoneCount:"Mark as done ({n})",reopenCount:"Mark as open ({n})",batchDoneToast:"{n} marked as done",batchReopenedToast:"{n} moved back to open",batchFailedSuffix:", {n} failed",batchDoneFailedNotice:"Could not mark {n} as done",batchReopenFailedNotice:"Could not move {n} back to open",undo:"Undo",open:"Open session",rename:"Rename…",fork:"Fork",export:"Export",moreActions:"More actions"},Fge={switcherTitle:"Switch workspace",switchTooltip:"Switch workspace",eyebrow:"Workspace",branchLabel:"branch: {branch}",noBranch:"no branch",sessionCount:"{count} session | {count} sessions",allWorkspaces:"All workspaces",currentWorkspace:"Current workspace only",addWorkspace:"Add workspace…",noWorkspace:"No workspace",deleteHasSessions:"This workspace still has sessions — archive them before deleting it",removeWorkspaceConfirm:`Remove "{name}" from the sidebar? +The folder and its files are not deleted, and its sessions are kept — add the folder back at any time to bring them back.`,removeAction:"Remove",swarmEnabledMessage:"High usage: Swarm is built for large parallel jobs and can use many times the tokens of a normal task. Start small, and turn swarm off when you're done.",swarmEnabledTitle:"Swarm mode is on",goalStartTitle:"Start goal?",goalStartConfirm:'"{objective}" — the agent will run autonomously toward it.',scopeCurrent:"this workspace",scopeAll:"all workspaces",newInGroup:"New session in this workspace",addTitle:"Add workspace",pathLabel:"Path",pathPlaceholder:"/absolute/path/to/project",recentLabel:"Recent folders",add:"Add",cancel:"Cancel",addHint:"Paste an absolute folder path, or pick a recent one.",addFailed:"Couldn't open this folder. Check the path and try again.",requiredTitle:"Choose a workspace first",requiredMessage:"Pick a folder to use as your workspace before sending a message.",openThisFolder:"Open this folder",up:"Up",browsing:"Browsing…",filterPlaceholder:"Filter subfolders…",searchPlaceholder:"Fuzzy-search under this folder…",searching:"Searching…",pasteToggle:"Enter an absolute path",noFilterMatch:"No subfolders match “{q}”",noSubfolders:"No subfolders here",browseHint:'Click a folder to enter it, then "Open this folder" to add it as a workspace.',attentionTitle:"{count} item needs your attention | {count} items need your attention",awaitingAnswer:"Answer",awaitingAnswerTitle:"A question is waiting for your answer",awaitingPermission:"Approve",awaitingPermissionTitle:"An action is waiting for your approval",aborted:"Failed",abortedTitle:"This session's latest turn ended on an error",trust:{title:"Trust this workspace",desc:"Until trusted, you can't send messages in this workspace, and project-level configurations such as agent instructions and MCP config stay disabled. These files can direct Kimi to run commands, so make sure you trust their authors. After trusting, tool calls still ask for your approval one by one, and trust is remembered for future config changes.",trustAction:"Trust workspace",rejectAction:"Reject",readFailedTitle:"Failed to verify workspace trust. Please try again",writeFailedTitle:"Failed to trust this workspace. Please try again"}},Dge={jumpToLatestAria:"Jump to latest message",backToBottom:"Back to bottom",toc:"Conversation outline",historyPrevious:"Previous item",historyNext:"Next item",newMessages:"Latest messages",loading:"Loading…",starting:"Starting conversation…",requesting:"Requesting…",working:"Working…",workingRetry:"Model request failed — retrying ({n}/{max})…",emptyWorkspaceHint:"Send in {name}",switchWorkspace:"Switch workspace",recentSessions:"Recent sessions",viewMoreSessions:"View more",sessionAdminTooltip:"View and manage more sessions in Session Management",addWorkspace:"New workspace",moreWorkspaces:"More workspaces ({count})",pickFolder:"Choose folder…",compacting:"Compacting context…",compactedPlain:"Context compacted",compactedAuto:"Context auto-compacted",compactedTokens:" ({before} → {after} tokens)",viewSummary:"View summary",undo:"Undo",undoTooltip:"Undo message",undoConfirm:"This removes this message and all later messages from the conversation context, and puts this message’s text back into the composer. File and code changes are not affected.",undone:"Undone — the message is back in the composer",turnInterrupted:"Manually stopped",turnFailed:"Model request failed — this turn was interrupted",turnFailedMaxSteps:"Step limit reached — this turn was interrupted",turnFailedResume:"Continue",turnFailedResumeText:"Continue",sessionRatingQuestion:"How’s Kimi doing in this session?",sessionRatingBad:"Bad",sessionRatingFine:"Fine",sessionRatingGood:"Good",sessionRatingThanks:"Thanks for your feedback",sessionRatingUndo:"Undo",yesterday:"Yesterday",loadOlder:"Load earlier messages",loadingOlder:"Loading earlier messages…",widenTable:"Widen table",restoreTableWidth:"Restore default width",copyTable:"Copy table",copyPath:"Copy path",revealInFolder:"Reveal in folder",openLinkExternally:"External",openLinkInSidebar:"Right panel",wrapCode:"Enable word wrap",unwrapCode:"Disable word wrap",showLineNumbers:"Show line numbers",hideLineNumbers:"Hide line numbers",cron:{fired:"Scheduled reminder fired",missed:"Missed scheduled reminders",job:"job {id}",oneShot:"one-shot",coalesced:"{n} fires coalesced",missedCount:"{n} missed",finalDelivery:"final delivery",expand:"Show more",collapse:"Show less"},fold:{worked:"Worked {duration}",workedUnknown:"Work details"},turnFiles:{titleOne:"{number} file changed",titleOther:"{number} files changed",more:"{number} more files",moreOne:"1 more file",showLess:"Show less",diffUnavailable:"This file’s changes can’t be shown line by line",rebuilding:"Loading this turn’s changes…",openFile:"Open file"},goal:{continuation:"Goal continuation"},notification:{sentBy:{task:"From background (Bash)",subagent:"From background (Agent)"},bodyLine:"{status}: {description}",reason:"Reason: {reason}",userStopped:"Stopped by user",statusTitle:{completed:"Completed",failed:"Failed",timed_out:"Timed out",killed:"Stopped",lost:"Lost",info:"Notification"},status:{completed:"completed",failed:"failed",timed_out:"timed out",killed:"killed",lost:"lost",info:"info"},groupTitle:"{n} notifications",copyPath:"Copy path",copied:"Copied",rawPayload:"Raw payload",outputTruncated:"Output truncated — showing the tail",fields:{type:"Type",source:"Source",severity:"Severity"}},userMessage:{expand:"Show more",collapse:"Show less"},search:{placeholder:"Search chat…",searching:"Searching…",results:"{current}/{total} results",resultsCapped:"{current}/{total}+ results",noResults:"No results",previous:"Previous match",next:"Next match",close:"Close search"}},Nge={connectionConnected:"Connected",connectionConnecting:"Connecting…",connectionDisconnected:"Disconnected",ctxTooltip:"Used {used} / {max} tokens ({pct}%)",modelLabel:"Model",permissionManual:"Always Ask",permissionAuto:"Never Ask",permissionYolo:"Ask When Needed",permissionManualDesc:"Auto-read only; everything else needs your approval first",permissionAutoDesc:"Never interrupts you; everything runs and is decided automatically",permissionYoloDesc:"Routine edits and commands run automatically; risky actions, questions, and plans still ask",planLabel:"Plan",planOn:"on",planOff:"off",planTooltip:"Toggle plan mode (research before editing)",workModeDismiss:"Exit mode",goalLabel:"Goal",timeUnitHour:"h",timeUnitMinute:"m",timeUnitSecond:"s",planEmptyArmed:"Plan mode is on — the plan the agent writes will show up here.",planEmptyIdle:"No plan yet — turn plan mode on and the agent’s plan will show up here.",swarmLabel:"Swarm",swarmDismiss:"Turn off Swarm",swarmTooltip:"High usage: runs many sub-agents in parallel",towerLabel:"Tower",towerDismiss:"Turn off Tower",modeOff:"Off",goalPlaceholder:"What should the agent achieve?",planPlaceholder:"What should the agent plan for?",goalStart:"Start",goalPause:"Pause",goalResume:"Resume",goalCancel:"Cancel",goalCancelConfirm:"Cancel this goal? It cannot be resumed afterwards.",goalCancelConfirmYes:"Yes",goalCancelConfirmNo:"No",goalDoneWhen:"Done when",goalStatusActive:"Active",goalStatusPaused:"Paused",goalStatusBlocked:"Blocked",goalStatusComplete:"Complete",modeNotSupported:"Not supported",thinkingLabel:"Thinking",thinkingTooltip:"Toggle thinking mode",cacheNote:"Note: Switching models or thinking effort invalidates the existing prompt cache. Start a new chat to avoid extra token costs.",starredModels:"Starred",moreModels:"More models…",statusPanelTitle:"Session status",statusPanelClose:"Close",statusModel:"Model",statusThinking:"Thinking",statusPermission:"Permission",statusPlanMode:"Plan mode",statusSwarmMode:"Swarm mode",statusTowerMode:"Tower mode",swarmOn:"on",swarmOff:"off",towerOn:"on",towerOff:"off",statusContext:"Context",statusCost:"Cost",statusContextValue:"{used} / {max} ({pct}%)",statusNone:"—",activityRunning:"Running…",activityAwaitingApproval:"Awaiting approval",activityAwaitingQuestion:"Awaiting answer",interrupt:"Interrupt",runningShort:"in progress"},Bge={inputLabel:"Message input",placeholder:"Type a message…",commandArgumentHint:"Type {argument} after {command}",send:"Send ↵",queueLabel:"Queue",placeholderRunning:"Press Enter to queue · Ctrl+S to inject into the running turn",placeholderRunningMobile:"Press Enter to queue",starting:"Sending…",queuePending:"{n} waiting to send",queueSteer:"Send into the running turn Ctrl+S",queueSteerMobile:"Send into the running turn",queueDragTitle:"Drag to reorder",editQueued:"Edit (load back into the input)",queuedAttachments:"attachment ×{n}",queuedHasImage:"Contains {n} image(s) — remove only, not editable",attachmentImage:"Image",attachmentVideo:"Video",attachments:"Attachments",imagesAndVideos:"Images and videos",mentionNamed:"Mention {name}",attachmentOpenUnsupported:"Can’t open {name} — this file type isn’t supported",dropToAttach:"Drop files to attach",remove:"Remove",removeNamed:"Remove {name}",mediaAttachments:"Media rail",uploading:"Preparing",uploadFailed:"Failed",attachFile:"Attach file",addMenu:"Add",addFiles:"Files",addFilesDesc:"Upload files",addScreenshot:"Screenshot",addScreenshotDesc:"Capture a screen region with a comment",screenshotFailed:"Screenshot failed, please try again",screenshotSessionGone:"The original conversation no longer exists, so the screenshot was not added",addGoalDesc:"Set a goal to keep pursuing",addPlanDesc:"Turn plan mode on",addSwarmDesc:"High usage: runs many sub-agents in parallel",addTowerDesc:"Turn tower mode on",noCommands:"No commands",slashSheetTitle:"Commands",slashSearchPlaceholder:"Search commands…",mentionSheetTitle:"Mention",mentionSearchPlaceholder:"Search attachments, files, or skills…",addSlash:"Commands",addSlashDesc:"Built-in commands or skills",addMention:"Mention",addMentionDesc:"Mention attachments, project files, or skills",interrupt:"Interrupt",interruptConfirm:"Press Esc again to interrupt",interruptTitle:"Interrupt current operation",expandTitle:"Expand input for multi-line editing",collapseTitle:"Collapse input",quickStartPlaceholder:"Type a message to start a new conversation…",thinkingSuffix:" · Thinking",thinkingSuffixEffort:" · {level}",noArgCommand:"{cmd} takes no arguments"},zge={title:"Sign in to Kimi Code",close:"Close (Esc)",regionCnHint:"Sign in with your {domain} account",regionOverseasHint:"Sign in with your {domain} account",oauthTitle:"Sign in with Kimi",oauthHint:"Finish authorizing in your browser to sign in",starting:"Starting sign-in flow…",openedHint:"Finish authorizing in your browser ({time}).",blockedTitle:"Could not open the login page",blockedHint:"The browser blocked the automatic opening — use the button below to continue authorizing.",notOpened:"Didn't open in your browser?",authorizeInBrowser:"Sign in via browser",orDivider:"or",fallbackPrefix:"On another device? Open ",fallbackSuffix:" and enter the device code:",copy:"Copy",copied:"Copied",copyLink:"Copy link",success:"Signed in",successHint:"Loading, will close automatically…",expiredTitle:"Device code expired",expiredHint:"Please restart the sign-in flow",deniedTitle:"Sign-in cancelled",retry:"Retry",closeBtn:"Close",failedTitle:"Login failed",errorHint:"Please upgrade kimi-code and try again",pollErrorTitle:"Lost connection",pollErrorHint:"Sign-in polling failed repeatedly. Check the kimi-code process and try again.",action:"Sign in",requiredTitle:"Sign in required",requiredMessage:"Sign in to your Kimi account and set up a model to start chatting.",goToLogin:"Sign in",upgradeRequiredTitle:"Upgrade to a membership",upgradeRequiredMessage:"Your current plan doesn't include Kimi models. Upgrade to a membership to unlock the full Kimi Code experience.",upgradeNow:"Upgrade now",pickModelTitle:"Choose a model",pickModelMessage:"Models are available. Pick a default model to start chatting.",pickModelAction:"Choose",configureModelsTitle:"Set up a model",configureModelsMessage:"You're signed in, but no model is available yet. Set up a model to start chatting.",configureModelsGenericMessage:"No model is available yet. Set up a model to start chatting.",configureModelsAction:"Set up",rcSubtitle:"Remote Control session",rcChecking:"Checking sign-in status…",rcLead:"This Remote Control session requires authorization. Sign in with your Kimi account to continue.",rcSuccessHint:"Redirecting…",rcExpiredTitle:"Authorization expired or declined",rcDeniedTitle:"Authorization cancelled",rcStartErrorTitle:"Could not start sign-in",rcSessionErrorTitle:"Could not create your session",rcConnectionErrorHint:"Check your connection and try again.",rcUnsupportedTitle:"Open in your browser",rcUnsupportedHintWechat:"Remote Control sign-in isn't supported in WeChat's built-in browser. Open this page in your system browser to continue.",rcUnsupportedHintLark:"Remote Control sign-in isn't supported in Lark's built-in browser. Open this page in your system browser to continue.",rcOpenInBrowser:"Open in browser",rcOpenGuideIos:'Tap "···" in the top-right corner, then choose "Open in Browser" or "Open in Safari".',rcOpenGuideAndroid:'Tap "···" in the top-right corner, then choose "Open in Browser".'},Hge={title:"Remote Control devices",subtitle:"Pick a device to continue",refresh:"Refresh",connectable:"Connectable",unavailable:"Unavailable",online:"Online",offline:"Offline",emptyTitle:"No devices yet",emptyHint:"Turn on Remote Control in Kimi Code on your computer — the device will show up here",docsLink:"Remote Control docs",allOfflineHint:"Device offline — turn on Remote Control in Kimi Code on that computer to bring it back",loadFailed:"Failed to load devices",deviceCount:"{count}/{max} devices",menuLabel:"Device actions",rename:"Rename",deactivate:"Take offline",delete:"Delete",renameTitle:"Rename device",renamePlaceholder:"Device name",deactivateTitle:"Take {name} offline",deactivateHint:"Once offline, the remote link to this device will stop working until you turn Remote Control back on in Kimi Code on the host machine",deleteTitle:"Delete {name}",deleteHint:"Once deleted, the device is removed from the list until you turn Remote Control back on in Kimi Code on the host machine",actionFailed:"Action failed. Check your connection and try again."},jge={title:"Provider management",loading:"Loading providers…",unavailable:"Provider management is not available yet",empty:"No providers yet",status:{connected:"Connected",error:"Error",unconfigured:"Not configured"},keySet:"key set",keyNotSet:"key not set",managedBadge:"OAuth",kimiSubscription:"Kimi Subscription",modelCount:"{count} models",confirmDelete:"Confirm delete?",refresh:"Refresh",delete:"Delete",refreshTitle:"Refresh {type}",deleteTitle:"Delete {type}",loginKimi:"Sign in to Kimi",loginAnthropic:"Sign in to Anthropic",addProvider:"Add provider",added:"Provider added",enterApiKey:"Enter API Key",optional:"Optional",apiKeyRequired:"API Key cannot be empty",fieldId:"Name",fieldType:"API Protocol",types:{kimi:"Kimi",openai:"OpenAI",openai_responses:"OpenAI Responses",anthropic:"Anthropic","google-genai":"Google GenAI",vertexai:"Vertex AI"},fieldApiKey:"API Key",apiKeyManaged:"Signed in with OAuth",apiKeySet:"Set — enter a new key to replace",showApiKey:"Show API key",hideApiKey:"Hide API key",fieldBaseUrl:"Base URL",baseUrlPlaceholder:"https://api.example.com/v1",fieldModels:"Models",colModelId:"Model ID",colContext:"Context",colDisplayName:"Display name",modelIdPlaceholder:"kimi-k3",modelContextPlaceholder:"1048576",modelNamePlaceholder:"Optional",noModels:"No models",addModel:"Add model",removeModel:"Remove model",fieldDefaultModel:"Default model",save:"Save",saved:"Provider saved",deleteProvider:"Delete provider",deleteConfirm:"Delete {id} and its {count} models?",deleteConfirmYes:"Delete",add:"Add",groupManaged:"Kimi Subscription",groupCustom:"Custom providers",managedBuiltin:"Built-in",loginAction:"Sign in",emptyCustom:"No custom providers yet",emptyCustomHint:'Click "Add provider" above to get started',pendingConfig:"Pending setup",managedAccount:"Account",managedAccessMode:"Access mode",managedOauth:"Subscription (OAuth)",availableModels:"Available models ({count})",availableModelsLabel:"Available models",managedLoginTitle:"Sign in to Kimi Subscription",managedLoginHint:"Sign in to use Kimi models with automatic quota sync. Authorization completes in your browser.",loginToSeeModels:"Available after sign-in",refreshModels:"Refresh models",refreshModelsDone:"Models refreshed",refreshModelsFailed:"Failed to refresh models",managedReadonly:"Built-in provider. Configuration is read-only.",chipManual:"Custom",presets:{kimiForCoding:{name:"Kimi For Coding",desc:"Moonshot Coding Plan subscription via API key"},kimiForCodingGlobal:{name:"Kimi For Coding (kimi.ai)",desc:"Moonshot Coding Plan subscription via API key · kimi.ai"},zaiIntl:{name:"Z.ai Coding Plan",desc:"GLM models · Coding Plan subscription · z.ai"},zaiCn:{name:"BigModel Coding Plan",desc:"GLM models · Coding Plan subscription · bigmodel.cn"},deepseek:{name:"DeepSeek",desc:"Official DeepSeek API"},minimaxIntl:{name:"MiniMax Global",desc:"MiniMax M models · Token Plan subscription · minimax.io"},minimaxCn:{name:"MiniMax",desc:"MiniMax M models · Token Plan subscription · minimaxi.com"}},tags:{codingPlan:"Coding Plan",tokenPlan:"Token Plan",paygo:"Pay-as-you-go"},catalog:{sourceCatalog:"From models.dev",sourceManual:"Manual",sourceRegistry:"Registry",registryHint:"Import providers and models from an api.json registry; re-importing the same URL refreshes it",registryUrlLabel:"Registry URL",registryImported:"{count} providers imported",searchPlaceholder:"Search providers",loading:"Loading directory…",loadError:"Failed to load the directory. Check your network and retry.",retry:"Retry",empty:"No matching providers",rejected:"Not importable",rejectReason:{"unknown-explicit-type":"Unsupported protocol","proprietary-sdk":"Proprietary SDK — cannot be imported","empty-base-url":"Blank base URL","placeholder-base-url":"Endpoint contains an env placeholder"},backToList:"Back to directory",overwriteWarning:"A provider with this name already exists; importing overwrites its config and models",importAction:"Import"},fetchModels:{button:"Fetch model list",done:"Model list updated ({count} new)",noNew:"All remote models are already listed",empty:"The endpoint returned no models",unsupportedType:"Vertex AI does not support fetching model lists",error:{auth:"Authentication failed. Check your API Key.",notFound:"No model list endpoint found. Check the Base URL.",network:"Request failed. The endpoint may be unreachable or blocked by CORS.",timeout:"Request timed out. Retry later.",parse:"Unrecognized response format.",http:"Request failed (HTTP {status})"}},error:{idRequired:"Name cannot be empty",idInvalid:'Name must start with a letter or digit and may only contain letters, digits, "-", "_" and spaces',apiKeyRequired:"API Key cannot be empty",baseUrlRequired:"Base URL cannot be empty",registryUrlRequired:"Registry URL cannot be empty",modelRequired:"Model ID cannot be empty",contextSizeRequired:"Max context size cannot be empty",contextSizeInvalid:"Max context size must be a positive integer"},hintClose:"Close"},Wge={dialogLabel:"Switch model",title:"Switch model",close:"Close (Esc)",allTab:"All",providerTabs:"Model providers",searchPlaceholder:"Search models or providers…",clearSearch:"Clear search",loading:"Loading models…",unavailable:"Model list is unavailable",contextSuffix:"{size} ctx",capabilityImageInput:"Image input",capabilityVideoInput:"Video input",capabilityToolUse:"Tool use",capabilityThinking:"Thinking",capabilityAlwaysThinking:"Always thinking",emptyNoModels:"No models available",emptyNoMatch:"No matching models",starTitle:"Add to favorites",unstarTitle:"Remove from favorites",hintNavigate:"Navigate",hintSelect:"Select",hintClose:"Close",switchConfirmTitle:"Confirm model switch?",switchEffortConfirmTitle:"Confirm effort switch from {from} to {to}?",switchConfirmConfirm:"Confirm switch",switchConfirmCompact:"Compact and continue",switchConfirmCompactDesc:"Lower cost and better output quality when continuing this session",switchConfirmContinue:"Continue as-is",switchConfirmContinueDesc:"Output quality may suffer · cache loss may increase token usage",switchConfirmCancel:"Cancel",switchConfirmCancelDesc:"Stay on the current model",switchCompactAborted:"Compaction did not finish — model unchanged."},qge={justNow:"just now"},Vge={browserDetails:"Action parameters",allowOp:"Allow Kimi Code to {verb} {name}",opVerb:{read:"read",grep:"search",glob:"find",edit:"edit",write:"write",delete:"delete"},field:{op:"Operation: {value}",tool:"Tool: {value}",base:"Base: {value}",cwd:"Working directory: {value}"},title:{browser:"Browser action",shell:"Run command?",diff:"Apply changes?",file:"Write file?",fileop:"File operation?",url:"Fetch URL?",search:"Search?",invocation:"Invoke?",todo:"Update todo?",plan_review:"Ready to build with this plan?",generic:"Approve action?"},subagentBadge:"sub agent · {name}",danger:"Danger: {detail}",searchQueryLabel:"query",searchScope:"scope: {scope}",feedbackPlaceholder:"Explain why you are rejecting…",approve:"Approve",approveSession:"Approve for session",reject:"Reject",feedback:"Feedback",feedbackSubmit:"Reject with feedback",feedbackCancel:"Cancel",approvePlan:"Approve plan",revise:"Revise",rejectAndExit:"Reject and Exit",expandPlan:"Expand",collapsePlan:"Collapse"},Uge={back:"Previous question",nextQuestion:"Next question",otherLabel:"Other",otherPlaceholder:"Share your thoughts…",submit:"Submit",dismiss:"Dismiss",minimize:"Minimize",expand:"Expand",hint:"↑↓ to choose · Enter to confirm"},Kge={tag:"tasks",summary:"{run} running · {done} done",copy:"Copy",calling:"Calling {label}",fieldTask:"Task",fieldOutput:"Output",fieldProgress:"Progress",fieldResult:"Result",moreLines:"… ({count} more)",copied:"Copied",stop:"stop",defaultDescription:"Background task",dockTasks:"Background tasks",dockBash:"Bash",dockSubagent:"Background Agent",dockTodos:"Todos",todoProgressTitle:"Progress",stateDone:"Done",stateFail:"Failed",stateCancelled:"Cancelled",filterRecent:"Recent",filterRunning:"Running",filterDone:"Done",filterAll:"All",running:"running",closePanel:"Close panel",openPanel:"Open in the side panel",timingRunning:"Running · {time}",timingDone:"Done · {time}",emptyTasks:"No background tasks running",emptyRecent:"No recent tasks",emptyRunning:"No running tasks",emptyDone:"No completed tasks",emptyBash:"No bash tasks running",emptySubagent:"No background agent tasks running",emptyTodo:"No todos yet",openTab:"Open the tasks tab",openDetail:"Open",toBackground:"To background",collapse:"Collapse",expand:"Expand",transcriptLoadError:"Failed to load this sub agent’s conversation.",copyCommand:"Copy command",copyOutput:"Copy output",copyAll:"Copy all"},Zge={panelTitle:"Thinking",streaming:"Thinking…"},Gge={aheadTitle:"ahead of remote",behindTitle:"behind remote",fileCountOne:"{number} file",fileCountOther:"{number} files",empty:"No git changes",clean:"Working tree clean, no changes",back:"Back",loading:"Loading diff…",noDiff:"No line changes for this file",emptyFile:"Empty file",list:"List",tree:"Tree"},Qge={searchPlaceholder:"Search files",refresh:"Refresh",emptyTitle:"Select a file to preview",emptyHint:"Pick a file from the tree to preview it here",emptyDir:"(Empty)",loadError:"Failed to load files",retry:"Retry",copyPath:"Copy path",copied:"Copied",reveal:"Reveal in folder",treeShow:"Show file tree",treeHide:"Hide file tree",settings:"File tree settings",positionTitle:"File tree position",positionLeft:"Left",positionRight:"Right",resize:"Resize file tree",noSession:"No active session",noResults:"No matching files"},Yge={empty:"Select a file on the left to preview",loading:"Loading…",lineCount:"{count} lines",copy:"Copy",copied:"Copied",copyPath:"Copy path",openInEditor:"Open",openInSystemBrowser:"Open in system browser",openInPanelBrowser:"Open in side panel browser",openFailed:"Could not open the file",reveal:"Reveal",download:"Download",close:"Close",moreActions:"More actions",refresh:"Refresh",assumedResolution:"Resolved against the current workspace: {path}",truncatedNotice:"Large file: showing only the first {shown} of {total}. Download it to view the full content",htmlMode:"HTML preview mode",metadata:"Metadata",markdownMode:"Markdown preview mode",markdownCode:"Code",preview:"Preview",source:"Source",imageFit:"Image sizing",fit:"Fit",actual:"Actual",pdfNoPreview:"This PDF cannot be embedded here. Download it to view.",imageNoPreview:"Image file · {mime} · {size} · preview unavailable",binaryNoPreview:"Can't preview this file ({mime} · {size}). Open with another app",unknownType:"unknown type",copyCode:"Copy code",enlargeImage:"Enlarge image",errors:{emptyPath:"File path is empty",unsupportedPath:"URLs and remote paths cannot be previewed",outsideWorkspace:"Only files inside the current workspace can be previewed",isDirectory:"Select a file instead of a directory",notFound:"File no longer exists or was moved",notFoundInWorkspace:"Can't find {path} in the current workspace. It may belong to another project or directory",tooLarge:"File is too large to preview",loadFailed:"Unable to read this file"}},Jge={copyImage:"Copy image",copyPath:"Copy path",saveAs:"Save as…",reveal:"Reveal in folder",openDefault:"Open with default app",prevImage:"Previous image",nextImage:"Next image",copyFailed:"Failed to copy",saveFailed:"Failed to save",revealFailed:"Could not open the containing folder",openFailed:"Could not open the file"},Xge={searching:"Searching…",noMatch:"No matches",files:"Files",skills:"Skills",openSkill:"Open skill file",copyPath:"Copy path",attachmentUploadFailed:"Couldn’t add attachment. Remove it or drop the file in again to retry",attachmentUploadInterrupted:"Adding attachment was interrupted. Remove it or drop the file in again to retry",viewFullscreen:"View fullscreen",mediaPreviewLoading:"Loading preview…",mediaPreviewUploading:"Adding attachment — preview when ready",mediaPreviewUnavailable:"Preview unavailable",stateUploading:"Preparing",stateUploaded:"Ready to send",stateUploadFailed:"Failed"},e2e={dismiss:"Close",errorLabel:"Error",noteLabel:"Note",agentWarningFallback:"agent warning",unhandledEvent:"Unhandled event: {type}",agentError:{title:"Model request failed",connection:"Cannot connect to the model service",auth:"Model authentication failed",rateLimit:"Model rate limit reached",overloaded:"Model overloaded",filtered:"Response filtered by the provider",api:"Model API error",contextOverflow:"Context size exceeded"},details:{cause:"Cause",code:"Error code",connection:"Connection",contentType:"Content type",details:"Server details",duration:"Duration",endpoint:"Endpoint",errorName:"Error type",message:"Message",operation:"Operation",phase:"Failure phase",request:"Request",requestId:"Request ID",responsePreview:"Response preview",sessionId:"Session ID",stack:"Stack",status:"HTTP status",timeout:"Timeout",timestamp:"Time"},daemonApiTitle:"Request failed",daemonNetworkMessage:"No response from the Kimi Code service. Check that it is still running, or refresh the page.",daemonNetworkTitle:"Cannot connect",daemonTimeoutMessage:"The Kimi Code service did not respond within the wait limit. The operation may still complete in the background — refresh later to check, or try again.",daemonTimeoutTitle:"Response timed out",diagnostics:"Diagnostics",hideDetails:"Hide details",operationFailedMessage:"The last operation did not finish. Try again later.",operationFailedTitle:"Operation failed",sendFailedTitle:"Send failed",sendFailedNoDefaultModelMessage:"No default model is configured. Choose a model again in Settings",sessionOccupied:{title:"Session in use",message:"This session is in use by another Kimi Code process. Stop the session in that process or exit it, then try again.",messageWithClient:"This session is in use by another {client} instance. Stop the session in that instance or exit it, then try again.",retry:"Retry",stillTitle:"Session still in use",takeoverMessage:"If another Kimi Code process is still running, taking over may mix up the history.",takeover:"Take over"},sessionStale:{title:"Session updated",message:"This session was updated by another Kimi Code process.",retryMessage:"This session was updated by another Kimi Code process. Review the updates, then try again."},sessionSnapshotMessage:"Could not load the current conversation. Check that the Kimi Code service is still running, or refresh the page.",sessionSnapshotTitle:"Cannot load current conversation",showDetails:"Show details",copyDetails:"Copy diagnostics",copied:"Copied",wsTitle:"Realtime connection error",goal:{alreadyExists:"This session already has an active goal. Cancel it before starting a new one.",notFound:"No goal to act on — it may have already finished or been cancelled.",statusInvalid:"The current goal state does not allow this action.",notResumable:"This goal cannot be resumed (it may be cancelled or completed).",objectiveTooLong:"The objective is too long. Please shorten it and try again."}},t2e={new:{desc:"Create a new session"},clear:{desc:"Clear and start a new session"},login:{desc:"Sign in to Kimi in the browser"},plan:{desc:"Toggle plan mode on/off"},swarm:{desc:"Toggle swarm mode; /swarm runs a task in swarm"},tower:{desc:"Toggle tower mode; /tower turns it on with a base branch"},goal:{desc:"Create/control a goal: /goal , /goal pause{'|'}resume{'|'}cancel"},btw:{desc:"Side chat: /btw asks a forked side session",argHint:"[question]"},compact:{desc:"Compact the conversation history",argHint:"[instructions]"},compactQueue:{queued:"Added to the queue — /compact will run in turn",alreadyQueued:"A /compact is already queued",compacting:"Compaction is already running — wait for it to finish",skippedAuto:"Skipped the queued /compact — context was already auto-compacted"},fork:{desc:"Fork this session into a new one"},reload:{desc:"Reload the session to pick up external changes",busy:"Session is busy — wait for the current turn to finish, then reload again.",archived:"Archived sessions cannot be reloaded — restore the session first."},export:{desc:"Download this session and troubleshooting logs as a ZIP",noSession:"Open a session before exporting it.",started:"Exporting session…",done:"Session exported.",tooLarge:"Session data exceeds the export size limit. Export it from a terminal instead: kimi export {sessionId} -o session.zip"},status:{desc:"View session status"},undo:{desc:"Undo the last message"}},n2e={browser:{noClickTarget:"No click: no interactive target",nearbyCount:"{count} nearby elements",element:"Page element",text:'"{text}"',textInElement:'"{text}" · {target}',keysOnElement:"{keys} · {target}",optionInElement:"{option} · {target}",option:"Option {index}",elementsCount:"{count} elements",elementsAtLeast:"At least {count} elements",tabsCount:"Tabs: {count}",up:"Up",down:"Down",left:"Left",right:"Right",activity:{pages:"Visited {count} page | Visited {count} pages",pagesRead:"Visited {count} page, read {read} | Visited {count} pages, read {read}",livePages:"Visited {count} page | Visited {count} pages",read:"Read {count} page | Read {count} pages",liveRead:"Read {count} page | Read {count} pages",doing:"{action} “{target}”",otherFailed:"{count} more failed",retried:"Retried {count} time | Retried {count} times",breakdown:"{count} browser action: {items} | {count} browser actions: {items}",breakdownItem:"{action} {count}",breakdownFailed:"{action} {count} ({failed} failed)",breakdownSeparator:", ",actions:{click:"{count} click | {count} clicks",fill:"{count} field filled | {count} fields filled",select:"{count} option chosen | {count} options chosen",check:"{count} checkbox toggled | {count} checkboxes toggled",screenshot:"{count} screenshot | {count} screenshots",scroll:"{count} scroll | {count} scrolls",press:"{count} key press | {count} key presses",drag:"{count} drag | {count} drags",hover:"{count} hover | {count} hovers"}},sources:{label:"Pages browsed in this reply",read:"Sources · read {count} page | Sources · read {count} pages",readAndPassed:"Sources · read {read} · passed through {passed}",visited:"Sources · visited {count} page | Sources · visited {count} pages",readGroup:"Pages read",passedGroup:"Pages passed through",readTag:"Read",passedTag:"Passed",visits:"Opened {count} times",openSidebar:"Open in the right panel",openExternal:"Open in your browser",copy:"Copy link",copied:"Link copied",dialogs:"{count} page dialog | {count} page dialogs",dialogsGroup:"Page dialogs",dialogAnswer:"Answered: {text}"},retry:{chip:"Retried {count} time | Retried {count} times",attempts:"Full sequence ({count} calls)"},live:{view:"View",viewLabel:"Open the right panel to watch the page the agent is using",thumb:"Latest before-action view"},detail:{rest:"Other fields",raw:"Raw data",rawRequest:"Request",rawResult:"Result",unreadable:"The result could not be parsed. The raw data is shown below.",yes:"Yes",no:"No",empty:"—",items:"{count} item | {count} items",blocks:"{count} block | {count} blocks",changes:"Changed by this step",unchanged:"The page state did not change",unchangedNote:"Unchanged fields are listed under Other fields.",urlExpand:"Show all",urlCollapse:"Show less",receiptOpen:"View the page before this step",receiptMissing:"This screenshot is no longer available. It may have expired or been deleted.",receiptDesktopOnly:"This screenshot is kept in the desktop app.",receiptStrip:"Pages before each step",blockPart:"Part {part}",blockContinued:"Continues",openShot:"View full size",titles:{elements:"Page elements",text:"Page text",candidates:"Click target and nearby elements",tabs:"Tabs",history:"History",downloads:"Downloads",deviceProfiles:"Device profiles",shot:"Screenshot",receipt:"Before this step",location:"Action location"},relation:{target:"Target",nearby:"Nearby"},facts:{target:"Target",url:"URL",text:"Text",replace:"Replace existing",keys:"Keys",optionValue:"Option value",optionLabel:"Option label",optionIndex:"Option index",checked:"Checked",point:"Position",from:"From",to:"To",deltaX:"Horizontal scroll",deltaY:"Vertical scroll",button:"Mouse button",clickCount:"Click count",radius:"Search radius",region:"Region",loadState:"Load state",conditionKind:"Condition",locatorRole:"Element role",locatorName:"Element name",locatorExact:"Exact match",conditionState:"Expected state",conditionText:"Text to wait for",conditionValue:"URL to wait for",conditionMatch:"Match mode",timeout:"Timeout",stableFor:"Stable for",scope:"Scope",scopeTarget:"Scope element",filterRole:"Role filter",filterText:"Text filter",cursor:"Cursor",deviceEnabled:"Device emulation",deviceProfile:"Device",deviceOrientation:"Orientation",evidenceKind:"Observed kind",evidenceValue:"Observed",evidenceCount:"Matches",evidenceScanTruncated:"Scan truncated",total:"Total",truncated:"Truncated",scanTruncated:"Scan truncated",nextCursor:"Next cursor",capturedAt:"Captured at",matched:"Matched",elapsed:"Elapsed",outcome:"Outcome",message:"Message",searchRadius:"Search radius used",candidatesTruncated:"Candidates truncated",needsVisualConfirmation:"Needs visual confirmation",available:"Browser available",panelVisible:"Panel visible",controlledTab:"Controlled tab",visibleTab:"Visible tab",imageSize:"Image size",viewport:"Viewport",deviceScaleFactor:"Device pixel ratio",cropAvailable:"Crop available",pageTitle:"Page",pageUrl:"Current URL",previousUrl:"Previous URL",loading:"Loading",canGoBack:"Can go back",canGoForward:"Can go forward",controlled:"Controlled",visible:"Visible"},columns:{ref:"Ref",role:"Role",name:"Name",text:"Text",value:"Value",state:"State",relation:"Relation",tagName:"Tag",id:"ID",classes:"Classes",clickable:"Clickable",disabled:"Disabled",evidence:"Evidence",bounds:"Bounds",tabId:"Tab",title:"Title",url:"URL",visitedAt:"Visited",filename:"File name",received:"Received",total:"Total size",startedAt:"Started",savePath:"Saved to",profileId:"Device",size:"Size",deviceScaleFactor:"Device pixel ratio",mobile:"Mobile",touch:"Touch",orientation:"Orientation",controlled:"Controlled",visible:"Visible",loading:"Loading"},states:{disabled:"Disabled",checked:"Checked",unchecked:"Unchecked",selected:"Selected",expanded:"Expanded",collapsed:"Collapsed",offscreen:"Offscreen"},errors:{SNAPSHOT_EXPIRED:"The snapshot expired. The page has to be read again.",OUTPUT_LIMIT:"The result exceeded the output limit.",BROWSER_USER_TAKEOVER:"You took over the browser, so automation stopped for this turn.",INVALID_REQUEST:"The request does not match the browser protocol.",BROWSER_UNAVAILABLE:"The built-in browser is not available right now.",TAB_NOT_FOUND:"This tab could not be found. It may have been closed.",TAB_NOT_ACTIVE:"This tab has not been selected for control yet.",NAVIGATION_FAILED:"The page navigation failed.",CANNOT_GO_BACK:"There is no history to go back to.",CANNOT_GO_FORWARD:"There is no history to go forward to.",WAIT_TIMEOUT:"Timed out before the condition was met.",OPERATION_ABORTED:"The operation was aborted.",STALE_SNAPSHOT:"The screenshot is stale. The page changed after it was captured.",COORDINATE_OUT_OF_BOUNDS:"The coordinate is outside the screenshot.",PAGE_NOT_READY:"The page is not ready yet. Try again shortly.",STALE_ELEMENT:"The element snapshot is stale. The page changed after it was read.",ELEMENT_NOT_FOUND:"This element could not be found on the page.",ELEMENT_NOT_INTERACTABLE:"The element cannot be interacted with. It may be covered, disabled or hidden.",UNSUPPORTED_ELEMENT:"This kind of element does not support the operation.",INTERNAL_ERROR:"The browser hit an internal error."}},actions:{waitCondition:{approval:"Wait for page condition",running:"Waiting for page condition",ok:"Page condition met",error:"Couldn’t wait for page condition"},crop:{approval:"View screenshot detail",running:"Viewing screenshot detail",ok:"Viewed screenshot detail",error:"Couldn’t view screenshot detail"},readText:{approval:"Read page text",running:"Reading page text",ok:"Read page text",error:"Couldn’t read page text"},guardedClick:{approval:"Inspect and click control",running:"Checking click target",ok:"Clicked control",error:"Could not inspect or click control"},listHistory:{approval:"Read browsing history",running:"Reading browsing history",ok:"Read browsing history",error:"Could not read browsing history"},listDownloads:{approval:"Read download records",running:"Reading downloads",ok:"Read downloads",error:"Could not read downloads"},listDevices:{approval:"List device presets",running:"Listing device presets",ok:"Listed device presets",error:"Could not list device presets"},setDevice:{approval:"Change device mode",running:"Configuring device mode",ok:"Configured device mode",error:"Could not configure device mode"},inspectBrowser:{approval:"Inspect browser state",running:"Inspecting browser",ok:"Inspected browser",error:"Browser inspection failed"},showBrowser:{approval:"Show browser panel",running:"Showing browser",ok:"Showed browser",error:"Couldn’t show browser"},createTab:{approval:"Open a new tab",running:"Opening new tab",ok:"Opened new tab",error:"Couldn’t open tab"},switchTab:{approval:"Show tab",running:"Switching tab",ok:"Switched tab",error:"Couldn’t switch tab"},activateTab:{approval:"Take control of tab",running:"Taking control of tab",ok:"Took control of tab",error:"Couldn’t take control of tab"},releaseTab:{approval:"Release tab control",running:"Releasing tab",ok:"Released tab",error:"Couldn’t release tab"},closeTab:{approval:"Close tab",running:"Closing tab",ok:"Closed tab",error:"Couldn’t close tab"},inspectPage:{approval:"Inspect page state",running:"Inspecting page",ok:"Inspected page",error:"Page inspection failed"},navigate:{approval:"Open page",running:"Opening page",ok:"Opened page",error:"Couldn’t open page"},search:{approval:"Search the web",running:"Searching",ok:"Searched",error:"Couldn’t search"},back:{approval:"Go back",running:"Going back",ok:"Went back",error:"Couldn’t go back"},forward:{approval:"Go forward",running:"Going forward",ok:"Went forward",error:"Couldn’t go forward"},reload:{approval:"Reload page",running:"Reloading page",ok:"Reloaded page",error:"Page reload failed"},stop:{approval:"Stop loading page",running:"Stopping page load",ok:"Stopped page load",error:"Couldn’t stop page load"},wait:{approval:"Wait for page to load",running:"Waiting for page",ok:"Page loaded",error:"Page wait failed"},screenshot:{approval:"Capture page screenshot",running:"Capturing page",ok:"Captured page",error:"Page capture failed"},click:{approval:"Click page element",running:"Clicking",ok:"Clicked",error:"Click failed"},doubleClick:{approval:"Double-click page element",running:"Double-clicking",ok:"Double-clicked",error:"Double-click failed"},rightClick:{approval:"Right-click page element",running:"Right-clicking",ok:"Right-clicked",error:"Right-click failed"},hover:{approval:"Hover over page element",running:"Hovering",ok:"Hovered",error:"Hover failed"},scroll:{approval:"Scroll page",running:"Scrolling page",ok:"Scrolled page",error:"Page scroll failed"},drag:{approval:"Drag page element",running:"Dragging",ok:"Dragged",error:"Drag failed"},fill:{approval:"Fill page field",running:"Filling",ok:"Filled",error:"Fill failed"},type:{approval:"Type text",running:"Typing",ok:"Typed",error:"Typing failed"},press:{approval:"Send keystrokes",running:"Pressing",ok:"Pressed",error:"Key press failed"},elements:{approval:"Inspect page elements",running:"Inspecting page elements",ok:"Inspected page elements",error:"Element inspection failed"},select:{approval:"Select option",running:"Selecting",ok:"Selected",error:"Selection failed"},check:{approval:"Check option",running:"Checking",ok:"Checked",error:"Couldn’t check"},uncheck:{approval:"Uncheck option",running:"Unchecking",ok:"Unchecked",error:"Couldn’t uncheck"},reveal:{approval:"Scroll to page element",running:"Scrolling to element",ok:"Scrolled to element",error:"Couldn’t scroll to element"},other:{approval:"Use browser",running:"Using browser",ok:"Browser action completed",error:"Browser action failed"}}},label:{read:"Read",bash:"Run",edit:"Edit",write:"Write",grep:"Search",glob:"Find",ls:"List",web_fetch:"Fetch",search:"Search",todo:"Todo",task:"Task",swarm:"Swarm",ask_user:"Question",plan:"Plan",goal_create:"Start Goal",goal_get:"Read Goal",goal_budget:"Set Goal Budget",goal_update:"Update Goal",waitfor:"Wait",task_list:"List Tasks",task_output:"Read Task Output",task_stop:"Stop Task",cron_create:"Schedule Job",cron_create_once:"Schedule One-Shot Job",cron_list:"Cron Jobs",cron_delete:"Delete Cron Job",notify_user:"Progress update",skill:"Skill"},cron:{none:"No cron jobs",field:{id:"ID",cron:"Cron expression",schedule:"Schedule",prompt:"Prompt",recurring:"Repeats",nextFireAt:"Next run"},recurring:{yes:"Recurring",no:"One-shot"},schedule:{everyMinute:"Every minute",everyNMinutes:"Every {n} minutes",hourlyAt:"Hourly at minute {minute}",dailyAt:"Daily at {time}",weekdaysAt:"Weekdays at {time}",weeklyAt:"{day} at {time}",monthlyAt:"Monthly on day {day} at {time}",yearlyAt:"Yearly on {date} at {time}",onceAt:"{date} at {time}",dateMD:"{month} {day}",day:{0:"Sundays",1:"Mondays",2:"Tuesdays",3:"Wednesdays",4:"Thursdays",5:"Fridays",6:"Saturdays"},monthShort:{1:"Jan",2:"Feb",3:"Mar",4:"Apr",5:"May",6:"Jun",7:"Jul",8:"Aug",9:"Sep",10:"Oct",11:"Nov",12:"Dec"}}},waitfor:{waitingAny:"Waiting for any background task",waitingTask:"Waiting for {id}",noTasks:"No background tasks running",timedOut:"Timed out",interrupted:"Wait interrupted by new input",stillRunning:"{count} still running",moreRunning:"+{count} more",result:{completed:"A task finished",interrupted:"Interrupted by new input"},field:{result:"Result",task:"Task",taskStatus:"Task status",description:"Description",waited:"Waited",timeout:"Timeout",finishedDuringWait:"Finished during wait",stillRunning:"Still running",runningTasks:"Running tasks",warning:"Warning"}},bgTask:{active:"Active tasks",all:"All tasks",count:"{count} task | {count} tasks",none:"No background tasks",truncated:"Output truncated",kind:{process:"Command",agent:"Agent",question:"Question"},status:{running:"Running",completed:"Completed",failed:"Failed",timed_out:"Timed out",killed:"Stopped",lost:"Lost"},field:{status:"Status",kind:"Type",command:"Command",pid:"PID",exit_code:"Exit code",subagent_type:"Agent type",model:"Model",reason:"Reason",stop_reason:"Reason",output_path:"Output file"}},swarm:{progress:"{done} / {total}",runningSub:"{count} in progress",doneSub:"{completed} completed · {failed} failed",doneSubWithCancelled:"{completed} completed · {failed} failed · {cancelled} cancelled",phaseWorking:"Running",phaseQueued:"Queued",phaseSuspended:"Paused",phaseCompleted:"Finished",phaseFailed:"Error",phaseCancelled:"Cancelled",waiting:"Waiting for subagents…"},chip:{lines:"{count} lines",results:"{count} results",files:"{count} files",edited:"edited",created:"created",todos:"{count} items"},disclosure:{expand:"Expand details",collapse:"Collapse details"},agent:{foreground:"Foreground",background:"Background",foregroundAgent:"Agent",backgroundAgent:"Background Agent",status:{running:"Running",ok:"Completed",error:"Failed",cancelled:"Cancelled"}},notifyUser:{posting:"Posting an update…"},output:{waiting:"Waiting for output…",empty:"No output"},plan:{review:{pending:"Pending review",approved:"Approved",rejected:"Rejected",cancelled:"Cancelled"},selectedOption:"Selected",pathOnlyHint:"No inline content — open it in the side panel:",feedback:"Feedback"},summary:{inScope:"{value} in {scope}"},goal:{objectiveWithCriterion:"{objective} · {criterion}",status:"Status: {status}",budget:"{value} {unit}",turns:"{value} turns",tokens:"{value} tokens",milliseconds:"{value} ms",seconds:"{value} sec",minutes:"{value} min",hours:"{value} hr"},group:{countOther:"{count} tool call | {count} tool calls",typed:{read:{done:"Read {count} file | Read {count} files"},bash:{done:"Ran {count} command | Ran {count} commands"},grep:{done:"Searched {count} pattern | Searched {count} patterns"},search:{done:"Ran {count} web search | Ran {count} web searches"},glob:{done:"Matched {count} file pattern | Matched {count} file patterns"},ls:{done:"Listed {count} directory | Listed {count} directories"},web_fetch:{done:"Fetched {count} page | Fetched {count} pages"},edit:{done:"Made {count} edit | Made {count} edits"},write:{done:"Wrote {count} file | Wrote {count} files"},browser:{done:"Ran {count} browser action | Ran {count} browser actions"}}},activity:{failedClause:" ({count} failed)",liveDonePrefix:"",busy:"Working…",doing:{read:"Reading {subject}",bash:"Running a command",grep:"Searching {subject}",search:"Searching {subject}",glob:"Matching {subject}",ls:"Listing {subject}",web_fetch:"Fetching {subject}",edit:"Editing {subject}",write:"Writing {subject}",browser:"Using the browser"}},ask:{dismissed:"Dismissed",answer:"{count} answer",answers:"{count} answers",answered:"Answered",more:"(+{count} more)",collected:"Collected your answers",unanswered:"No answer"}},i2e={resizeHandleAria:"Resize sidebar width",resizePreviewAria:"Resize preview panel width",detailPanelAria:"Detail panel"},o2e={openSwitcher:"Switch session / workspace",openSettings:"Session settings",settingsTitle:"Settings",groupSession:"Current session",groupApp:"App preferences",groupAccount:"Account",sheetLabel:"Sheet",closeSheet:"Close",tapToCycle:"tap to cycle",running:"running",idle:"idle",sessionCount:"{n} sessions",newSession:"New session",permManualSub:"Auto-read only; everything else needs your approval first",permAutoSub:"Never interrupts you; everything runs and is decided automatically",permYoloSub:"Routine edits and commands run automatically; risky actions, questions, and plans still ask",planModeSub:"Plan mode",goalModeSub:"Goal mode",swarmModeSub:"Swarm mode",towerModeSub:"Tower mode",archivedSessions:"Archived sessions",archivedSessionsSub:"Browse and restore archived sessions",archivedBack:"Back",viewFlat:"Flat",viewGrouped:"By workspace"},s2e={colorSchemeLabel:"Appearance",light:"Moon bright",dark:"Moon dark",system:"System"},r2e={continue:"Continue",back:"Back",skip:"Skip",welcome:{title:"Welcome to Kimi Code",subtitle:"The AI coding workbench for professional developers",languageLabel:"Language",themeLabel:"Appearance"},login:{title:"Configure Model",subtitle:"Choose the model service that powers Kimi Code. You can change it later in Settings",kimiTitle:"Sign in with Kimi",kimiHint:"Ready out of the box with Kimi membership benefits",kimiCnTitle:"Kimi Code",kimiCnHint:"Sign in with your kimi.com account",kimiOverseasTitle:"Kimi Code",kimiOverseasHint:"Sign in with your kimi.ai account",customProviderTitle:"Add a custom provider",customProviderHint:"Bring your own API key for OpenAI-compatible and other services",loggedInTitle:"Logged in with Kimi",loggedInHint:"Your model service is ready to use",finish:"Finish",skip:"Skip for now"}},a2e={title:"Settings",close:"Close (Esc)",tabs:{general:"General",browser:"Browser",agent:"Agent & Sessions",account:"Account",providers:"Model Providers",remoteControl:"Remote Control",advanced:"About",archived:"Archived Sessions",shortcuts:"Hotkeys",plugins:"Plugins",lab:"Lab"},lab:{sidebarTabs:"Tabbed session list",sidebarTabsHint:"The sidebar shows Open / Done / Workspaces tabs",notifyUser:"Progress updates",notifyUserHint:"Let the agent post progress updates in the conversation. Only applies to sessions created afterwards."},plugins:{retry:"Retry",official:"Official",thirdParty:"Third-party",installed:"Installed",install:"Install",update:"Update",remove:"Remove",enabled:"Enabled",homepage:"Homepage",empty:"No plugins found",hasErrors:"Error",customInstall:"Install custom plugin",customInstallPlaceholder:"https://… or /path/to/plugin",customInstallHint:"Accepts an https zip URL, a GitHub repo URL, or a local directory path.",extensionHintTitle:"One step left: install the browser extension",extensionGuide:"Manual install",dismissHint:"Dismiss",catalogUnavailable:"The marketplace catalog is currently unreachable; installed plugins remain manageable below.",source:{"local-path":"Local","zip-url":"ZIP",github:"GitHub"},counts:{skill:"1 skill | {n} skills",mcp:"1 MCP server | {n} MCP servers",mcpEnabled:"{n} on",hook:"1 hook | {n} hooks",command:"1 command | {n} commands"}},appearance:"Appearance",notifications:"Notifications",notifyEnabled:"System notifications",notifyEnabledHint:"Send a system notification when a turn completes, needs an answer, or needs approval",notifySound:"Notification sound",notifySoundHint:"Play the system sound with notifications",notifyDenied:"Blocked in browser settings",notifyTitle:"Kimi Code · Turn finished",notifyQuestionTitle:"Kimi Code · Needs answer",notifyApprovalTitle:"Kimi Code · Approval required",notifyFallback:"View result",notifyQuestionFallback:"A question is waiting for your answer",notifyApprovalFallback:"A tool needs your approval",account:"Account",signedIn:"Signed in",signedOutHint:"Sign in to view your account and model access",planUsage:{title:"Plan Usage",retry:"Retry",loadFailed:"Failed to load",empty:"No usage data yet",weekLimit:"Weekly limit",hourLimit:"{n}h limit",resetsIn:"resets in {duration}",resetDone:"reset",durationDay:"{n}d",durationHour:"{n}h",durationMinute:"{n}m",durationSecond:"{n}s",usedPct:"{pct}% used",segmentUsage:"{name} usage {pct}%",boosterTitle:"Booster",boosterBalance:"Balance",monthlyUsed:"Used this month",monthlyLimit:"Monthly limit",boosterLimit:"Monthly limit",unlimited:"Unlimited",freeTitle:"Free account",freeHint:"Your current plan doesn't include Kimi models. Upgrade to a membership to unlock the full Kimi Code experience."},colorSchemeHint:"Choose the app’s light or dark appearance",appIcon:"Dock icon",appIconHint:"Choose the icon shown in the Dock",appIconDefault:"Default",appIconBlack:"Black",uiFontSize:"Font size",uiFontSizeHint:"Adjust interface and message text size",vibrancy:"Frosted sidebar",vibrancyHint:"Use the native macOS frosted-glass material behind the sidebar — turn it off if the translucency is hard to read",nativeTitleBar:"Use system title bar",nativeTitleBarHint:"Show the desktop environment’s native title bar and menu bar instead of the built-in one",nativeTitleBarRestartTitle:"Restart to apply",nativeTitleBarRestartMessage:"Changing the title bar style requires restarting Kimi Code. Restart now?",nativeTitleBarRestartConfirm:"Restart now",languageHint:"Choose the interface language",defaultOpenInApp:"Default open-in app",defaultOpenInAppHint:"App used when opening files and folders from the header menu",openWith:"Open with",agentDefaults:"Agent defaults",saving:"Saving",defaultModel:"Default model",defaultModelHint:"New sessions prefer this model",noDefaultModel:"No default model",defaultPermission:"Default permission",defaultPermissionHint:"Only affects newly-created sessions",defaultThinking:"Thinking by default",defaultThinkingHint:"Whether new sessions start with thinking enabled",defaultPlanMode:"Plan mode by default",defaultPlanModeHint:"Whether new sessions start in plan mode",secondaryModelSection:"Subagents",secondaryModel:"Subagent model",secondaryModelHint:"Model and thinking effort that subagents use by default",secondaryModelEffort:"Thinking effort",noSecondaryModel:"Not set (inherit primary)",secondaryModelEffortAuto:"Model default",telemetry:"Help improve Kimi Code",telemetryHint:"When on, we collect usage data (such as feature clicks and usage statistics) to analyze and improve the product experience. This data never includes your code or conversation content. You can turn it off at any time. Changes take effect after a restart.",sessionRatingPrompts:"Session rating prompts",sessionRatingPromptsHint:"Occasionally asks you to rate this session after Kimi replies",credentialReady:"Credential configured",credentialMissing:"Missing credential",configUnavailable:"The server did not return config yet. These settings are unavailable.",versionAndUpdates:"Version & updates",appVersion:"App version",appVersionHint:"The running app’s version",checkUpdate:"Check for updates",checkUpdateHint:"Manually check whether a new version is available",checkUpdateBtn:"Check now",updateChecking:"Checking…",updateCheckLatest:"You’re on the latest version",updateCheckAvailable:"Version {version} is available — download it from the update entry in the sidebar",updateCheckUnsupported:"This build does not support update checks",updateCheckFailed:"Check failed. Please try again later.",updateCheckAvailableAuto:"Version {version} found — downloading in the background",updateCheckDownloaded:"Version {version} is ready — restart from the update entry in the sidebar",autoDownloadUpdate:"Auto-download updates",autoDownloadUpdateHint:"Download new versions in the background and install them on the next restart",canaryTargetVersion:"Preview of {version}",canaryUpdate:"Update Canary",canaryImportStable:"Import UI Settings from Stable…",canaryImportStableTitle:"Import UI Settings from Stable",canaryImportStableHint:"Copies the stable app’s UI settings (pinned sessions, appearance, and other localStorage preferences) into Canary, replacing the current ones (the existing copy is backed up as leveldb.bak). Canary restarts to finish the import; the stable app must stay quit.",canaryImportStableBtn:"Import & Restart",canaryImportStableRunning:"The stable app (Kimi Code) is running — quit it first, then import again.",canaryImportStableNoData:"No UI settings data from the stable app was found.",canaryImportStableFailed:"Import failed: {error}",privacy:"Data & privacy",diagnostics:"Diagnostics",agreements:"Agreements",userAgreement:"User Agreement",privacyPolicy:"Privacy Policy",messageFolding:"Message folding",turnFolding:"Auto-fold messages",turnFoldingHint:"When a turn ends, the work folds away automatically, leaving only the summary",activityRunFolding:"Tool call summary",activityRunFoldingHint:"During the answer, consecutive tool calls are summarized into one row",sessionTitleSection:"Session title",autoSessionTitle:"Auto-generate title",autoSessionTitleHint:"Use AI to title new sessions after the first turn. This uses your Kimi subscription quota",build:"Build",serverVersion:"Server version",serverAddress:"Server address",serverAddressHint:"The address of the connected server",serverVersionHint:"The version of the connected service",coreRef:"Built-in server version",coreRefHint:"Branch and commit of the core repo the built-in server runs from",copyServerVersion:"Copy server version",copyServerAddress:"Copy server address",copied:"Copied",exportLog:"Troubleshooting log",exportLogHint:"Export the troubleshooting log collected by the app",logHint:"Enable with ?debug=1 to capture",exportLogBtn:"Export log",archivedTitle:"Archived sessions",archivedDesc:"Browse archived sessions, see their workspace path, name, and archive time, and restore them to the session list.",archivedSearch:"Search archived sessions",archivedAllWorkspaces:"All workspaces",archivedSortLabel:"Sort by",archivedSortArchived:"Archive time",archivedSortCreated:"Created time",archivedSortName:"Name",archivedRestore:"Restore",archivedEmpty:"No archived sessions yet",archivedNoMatch:"No matching archived sessions",archivedSessionsCount:"{count} sessions",archivedAt:"Archived {time}",archivedLoadMore:"Load more",archivedLoading:"Loading…",archivedLoadingAll:"Loading all archived sessions…"},l2e={openInEditor:"Open in editor",openInEditorShort:"Open",openInApp:"Open in {app}",chooseOpenApp:"Choose application",copyAll:"Copy all as Markdown",copyFinalSummary:"Copy final summary",copied:"Copied",lastUsed:"Last used",copyPath:"Copy path",changed:"{n} changed",gitTooltip:"Open Files > Changed",detached:"detached",openPr:"Open pull request",prStatusOpen:"open",prStatusClosed:"closed",prStatusMerged:"merged",prStatusDraft:"draft",prStatusUnknown:"unknown",options:"Options",copySessionId:"Copy session ID",pinSession:"Pin",unpinSession:"Unpin",renameSession:"Rename",forkSession:"Fork session",archiveSession:"Archive",markSessionDone:"Mark as done",reopenSession:"Mark as open",exportSession:"Export session",reloadSession:"Reload session",sessionReloaded:"Session reloaded.",devBadge:"Running in development mode"},c2e={title:"Side Chat",empty:`Read-only Q&A based on the current session context. +The conversation cannot be recovered after closing.`,placeholder:"Ask a question about the current session…",send:"Send",requiresSession:"Open a session to use side chat"},u2e={comment:"Comment",addToChat:"Add to chat",commentPlaceholder:"Write a comment…",confirm:"Add",copyQuote:"Copy quote",copyComment:"Copy comment",quoteLabel:"Quote"},d2e={actions:{nextPanelTab:{label:"Next Panel Tab",desc:"Switch to the next panel tab"},previousPanelTab:{label:"Previous Panel Tab",desc:"Switch to the previous panel tab"},summonApp:{label:"Show App Window",desc:"Bring the app window to the foreground from anywhere"},captureScreenshot:{label:"Screenshot",desc:"Capture a screen region with a comment from anywhere"},newSession:{label:"New Session",desc:"Start a new session in the current workspace"},closeSessionView:{label:"Close Page",desc:"Close the current chat and go to the new-chat page; press again there to close the window"},searchSessions:{label:"Search Chats",desc:"Open the session search dialog"},archiveSession:{label:"Complete Chat",desc:"Mark the current chat as done right away (find it under Done)"},toggleSideChat:{label:"Toggle Side Chat",desc:"Open or close the /btw side chat"},toggleSidebar:{label:"Toggle Sidebar",desc:"Collapse or expand the session sidebar"},toggleRightPanel:{label:"Toggle Right Panel",desc:"Show or hide the right panel"},openFolder:{label:"Open Folder",desc:"Add a workspace folder with the native picker"},openInDefaultApp:{label:"Open in App",desc:"Open the workspace in your default editor/terminal"},openSettings:{label:"Open Settings",desc:"Show or hide the settings dialog"},toggleTerminal:{label:"Toggle Terminal",desc:"Show or hide the bottom terminal panel"},openDiffTab:{label:"Open Changes",desc:"Open or activate the workspace changes tab"},toggleFilesPanel:{label:"File Tree",desc:"Open or activate the file tree tab; hide the right panel if already active"},sidebarTabOpen:{label:"Open Tab",desc:"Switch to the Open list in the sidebar"},sidebarTabDone:{label:"Done Tab",desc:"Switch to the Done list in the sidebar"},sidebarTabWorkspaces:{label:"Workspaces Tab",desc:"Switch to the workspace directory in the sidebar"},selectPrevSibling:{label:"Previous Item",desc:"Select the previous chat / workspace in the current tab"},selectNextSibling:{label:"Next Item",desc:"Select the next chat / workspace in the current tab"},send:{label:"Send Message",desc:"Send the composer input"},newline:{label:"Newline",desc:"Insert a newline in the composer"}},searchPlaceholder:"Search shortcuts",unassigned:"Unassigned",unassign:"Unassign shortcut",edit:"Edit shortcut",reset:"Reset to default",resetAll:"Reset all to defaults",recording:"Press the new shortcut…",invalid:"This key combination can’t be used as a shortcut",notGlobal:"This key combination can’t be registered as a system-wide shortcut",globalTaken:"This shortcut is already taken by the system or another app",channelDisabled:"This build does not enable the system-wide screenshot shortcut",reserved:"Reserved by the system menu",reservedSteer:"Reserved for steer (Ctrl/Cmd+S)",reservedFind:"Reserved for transcript find (Ctrl/Cmd+F)",conflict:"Already used by “{action}”",customBadge:"Custom"},f2e={closeRunningTitle:"Close running terminals?",closeRunningMessage:"The following tabs still have running programs. Closing will terminate them:",closeRunningConfirm:"Terminate and close",closeUnknown:"Could not determine process status",panelAria:"Terminal",toolbarAria:"Terminal tabs",resizeAria:"Resize terminal panel height",toggle:"Toggle terminal",open:"Open terminal",close:"Close terminal",newTab:"New terminal",closeTab:"Close terminal",restartTab:"Restart terminal",collapse:"Collapse terminal panel",empty:"No terminal yet — click to start one",outputTruncated:"[Earlier background output was truncated; showing the latest output]",processExited:"[process exited]",processExitedWithCode:"[process exited with code {code}]"},h2e={compactionUnavailable:"Summary content is not loaded. Load the corresponding history in the conversation.",terminalRestoreFailed:"Could not create terminal",closeOthers:"Close Other Tabs",closeToRight:"Close Tabs to the Right",closeAll:"Close All Tabs",tabs:{diff:"Changes",file:"File",files:"Files",turnDiff:"Turn Diff",compaction:"Compaction summary",agent:"Subagent",term:"Terminal",browser:"Browser"},newTab:"New tab",closeTab:"Close tab",expand:"Expand panel",collapse:"Restore panel",hide:"Close right panel",openPanel:"Open right panel",launcherAria:"Quick open"},p2e={saveDialog:{download:"Save download",screenshot:"Save page screenshot"},permissionPending:"Waiting for website permission",beforeUnload:{title:"Leave page",message:"Changes you made may not be saved",stay:"Stay on page",leave:"Leave"},pageDialogs:{says:"{origin} says",pageSays:"This page says",ok:"OK",close:"Close",cancel:"Cancel",promptLabel:"Text for the page",leaveTarget:"Next page: {target}",leaveRepeatForm:"This page was submitting a form. After you choose Leave, submit it again.",leaveRepeatAction:"This page stays open. After you choose Leave, repeat the action that leaves it.",fileTitle:"{origin} wants a file",fileMessage:"Accepted types: {types}",fileAny:"The page asks for a file to upload.",chooseFiles:"Choose files…",uploadTitle:"Allow upload?",uploadMessage:"Upload the following files ({count}) to {origin}?",allowOnce:"Allow once",deny:"Deny",downloadTitle:"Download saved",downloadMessage:"{file} was saved to {path}.",move:"Move…",keep:"Keep",agentTab:"Agent in control",agentTabHint:"The agent can answer this. You can also answer it yourself.",agentChose:"Agent chose {choice}",agentRequestHint:"The agent asked to upload these files. Only you can allow it."},dialogRecords:{button:"Handled page dialogs",title:"Page dialogs this session",answeredBy:"{outcome} {answerer}",showInFolder:"Show in folder",move:"Move…",kinds:{alert:"Alert",confirm:"Confirmation",prompt:"Text prompt",beforeunload:"Leave site?",file:"File chooser",upload:"Upload approval",download:"Download","external-app":"External app link",print:"Print","screen-capture":"Screen sharing",bluetooth:"Bluetooth pairing","file-picker":"File system picker"},outcomes:{accepted:"Accepted",dismissed:"Dismissed",left:"Left the page",stayed:"Stayed on the page",uploaded:"Uploaded files",saved:"Saved",denied:"Denied","timed-out":"Timed out",cancelled:"Closed by the page",blocked:"Blocked","too-large":"Blocked: size limit"},answerers:{agent:"by the agent",user:"by you",auto:"automatically"}},records:{searchHistory:"Search history",searchDownloads:"Search downloads",noResults:"No matching records",today:"Today",yesterday:"Yesterday"},sites:{permissionTitle:"Website permission",backToList:"Back to site list",title:"Site settings",info:"Site information",search:"Search sites",all:"All sites",empty:"No sites yet",cookies:"Cookies: {count}",deleteData:"Delete site data",clearMessage:"Delete cookies and local data for {origin}? This may sign you out.",failed:"Could not update site settings. Try again.",permissionRequest:"Allow {origin} to use {permissions}?",allowOnce:"Allow once",allowAlways:"Always allow",block:"Block",states:{ask:"Ask",allow:"Allow",block:"Block"},systemPermissionDenied:"System permission not granted",openSystemSettings:"Open System Settings",permissions:{location:"Location",camera:"Camera",microphone:"Microphone",notifications:"Notifications",clipboard:"Read clipboard",clipboardWrite:"Write to clipboard",fullscreen:"Fullscreen",midi:"MIDI devices",midiSysex:"MIDI system exclusive messages"}},controlPaused:"Waiting for you to continue",controlUnknown:"Connection lost; control status unknown",controlOverlayRunning:"Agent is in control",controlOverlayPaused:"Agent paused — waiting for you",controlOverlayUnknown:"Checking browser control status",controlElapsed:"In control for {time}",controlTakeover:"Take over",controlTakeoverHint:"Stop browser actions and take control",controlPointer:"Agent",controlTyping:"Typing",controlKey:"Pressing keys",controlScroll:"Scrolling",controlActivityTarget:"{activity} “{target}”",controlActivities:{reading:"Reading page text",inspecting:"Looking at page elements",capturing:"Capturing the page",clicking:"Clicking",hovering:"Hovering",typing:"Typing",pressing:"Pressing keys",selecting:"Choosing an option",checking:"Toggling a checkbox",scrolling:"Scrolling",dragging:"Dragging",navigating:"Opening page",waiting:"Waiting for the page",answering:"Answering a page dialog"},controlledTab:"Agent is controlling this tab",controlOutOfView:"Agent is using the browser",forkTabsFailed:"Session forked, but browser tabs couldn’t be copied",ariaLabel:"Browser",navigationAria:"Browser navigation",back:"Back",forward:"Forward",reload:"Reload",menuButton:"Browser menu",openInDefaultBrowser:"Open in default browser",menu:{emulateFocus:"Keep the page focused",findInPage:"Find in page",print:"Print",zoom:"Zoom",zoomOut:"Zoom out",zoomReset:"Reset zoom",zoomIn:"Zoom in",showDeviceToolbar:"Show device toolbar",hideDeviceToolbar:"Hide device toolbar",screenshot:"Take a screenshot"},find:{placeholder:"Find in page",previous:"Previous match",next:"Next match",close:"Close find"},device:{size:"Size",phones:"Phones",foldables:"Foldables",tablets:"Tablets",desktops:"Desktop",iphoneDuoInner:"iPhone Duo inner display",iphoneDuoOuter:"iPhone Duo outer display",resizewidth:"Drag to resize page width",resizeheight:"Drag to resize page height",resizeboth:"Drag to resize page width and height","iphone-16":"iPhone 14 Pro / 16","iphone-16-pro":"iPhone 16 Pro / 17 / 17 Pro","iphone-16-pro-max":"iPhone 16 Pro Max / 17 Pro Max","pixel-8":"Pixel 8","pixel-9":"Pixel 9","desktop-1280":"Desktop 1280 × 800","desktop-1440":"Desktop 1440 × 900","desktop-1920":"Desktop 1920 × 1080",background:"Background",backgroundAuto:"Follow theme",backgroundLight:"Light background",backgroundDark:"Dark background",toolbarAria:"Device emulation toolbar",dimensions:"Dimensions:",responsive:"Responsive",iphoneSe:"iPhone SE",iphone12Pro:"iPhone 12 Pro",iphone14Pro:"iPhone 14 Pro / 16",iphone14ProMax:"iPhone 14 Pro Max",pixel7:"Pixel 7",galaxyS20Ultra:"Samsung Galaxy S20 Ultra",ipadMini:"iPad Mini",ipadPro13:"iPad Pro 13",width:"Viewport width",height:"Viewport height",rotate:"Rotate device",scale:"Display scale",fitToWindow:"Fit to window"},settings:{searchEngine:"Default search engine",searchEngineHint:"Used when searching from the address bar",title:"Browser settings",sectionAria:"Browser settings section",agentControl:"Let agents control the built-in browser",agentControlHint:"When off, new chats can’t use the browser. Chats that already used it keep it. You can still browse in the panel.",downloadsPrompt:"Ask where to save each file",downloadsPromptHint:"Show a save dialog before a download starts",agentDownloadLocation:"Agent download location",agentDownloadLocationHint:"Default location for files that agents download. Agent downloads are saved here automatically, without a dialog.",agentDownloadChoose:"Choose…",agentDownloadReset:"Use default",agentDownloadAccess:"Allow access",agentDownloadAccessHint:"Agent downloads go to your Downloads folder. Your system may ask to allow Kimi Code to access it.",agentDownloadAccessRetry:"Try again",agentDownloadFallback:"Kimi Code cannot access your Downloads folder, so agent downloads are saved here. Grant access in System Settings, then try again.",agentDownloadLimit:"Agent download size limit",agentDownloadLimitHint:"Agent downloads larger than this are cancelled and removed. Your own downloads are not limited.",agentDownloadUnlimited:"No limit",defaultZoom:"Default zoom",defaultZoomHint:"Applied to open and newly created Browser tabs",clearData:"Browsing data",clearDataHint:"Delete cookies, sign-in status, and cached browser data",userAgent:"User agent",userAgentHint:"Sent by open and new Browser tabs, popups, and workers",userAgentDefault:"Default",userAgentCustom:"Custom",userAgentDefaultValue:"Default user agent",userAgentCustomValue:"Custom user agent",userAgentPlaceholder:"Enter a user agent string",userAgentLoadPreset:"Load preset…",userAgentReset:"Reset to default",userAgentApply:"Apply",userAgentInvalid:"The user agent cannot be empty or contain control characters",userAgentNewline:"The user agent must be a single line",userAgentTooLong:"The user agent must be {max} characters or fewer",userAgentSaveFailed:"Could not save the user agent",userAgentCopy:"Copy",userAgentCopied:"Copied",userAgentPresetBuiltIn:"Built-in",userAgentPresetSaved:"Saved",userAgentSavePreset:"Save as preset…",userAgentSavePresetTitle:"Save user agent preset",userAgentPresetName:"Preset name",userAgentPresetNamePlaceholder:"e.g. Staging iPhone",userAgentPresetSave:"Save",userAgentPresetNameEmpty:"Enter a preset name",userAgentPresetNameTooLong:"The preset name must be {max} characters or fewer",userAgentPresetNameInvalid:"The preset name cannot contain control characters",userAgentPresetNameDuplicate:"A preset with this name already exists",userAgentPresetsFull:"You can save up to {max} presets. Delete one to save another",userAgentPresetSaveFailed:"Could not save the preset",userAgentDeletePreset:"Delete preset {name}",userAgentDeletePresetConfirm:"Delete",userAgentConfirmDeletePreset:"Confirm deleting preset {name}",userAgentPresetDeleteFailed:"Could not delete the preset"},downloads:{title:"Downloads",empty:"No downloads yet",clear:"Clear downloads",refresh:"Refresh downloads",completed:"Completed",progressing:"Downloading",paused:"Paused",cancelled:"Cancelled",interrupted:"Interrupted",fileMissing:"Deleted",copyLink:"Copy download link",linkCopied:"Link copied",remove:"Remove from list",showInFolder:"Show in folder",pause:"Pause",resume:"Resume",cancel:"Cancel",retry:"Retry",recent:"Recent downloads",seeAll:"See all downloads",status:{size:"{received} of {total}",speed:"{speed} - {status}",timeLeft:"{progress}, {time} left",paused:"Paused - {progress}"},timeLeft:{seconds:"{n} sec | {n} secs",minutes:"{n} min | {n} mins",hours:"{n} hour | {n} hours",days:"{n} day | {n} days"},openDialog:{title:"Open file",message:"Open “{name}”?",detail:"The file will open in its default app.",open:"Open",cancel:"Cancel"},blockedDialog:{title:"File not opened",message:"“{name}” is a program or script",detail:"Kimi Code does not open programs or scripts. You can find the file in its folder.",showInFolder:"Show in folder",ok:"OK"},openFailedDialog:{title:"Couldn’t open file",message:"“{name}” couldn’t be opened",detail:"There may be no app to open this kind of file, or the system denied access.",unavailable:"The file’s location isn’t responding. Check that the drive or network location is available, then try again.",changed:"The file changed while this dialog was open.",ok:"OK"}},history:{title:"History",empty:"No browsing history yet",clear:"Clear history",refresh:"Refresh history"},tabMenu:{newToRight:"New tab to the right",duplicate:"Duplicate tab",rename:"Rename tab",copyUrl:"Copy URL",openExternal:"Open in external browser",mute:"Mute tab",unmute:"Unmute tab",fork:"Fork session",tabName:"Tab name",saveName:"Save",automaticName:"Leave empty to use the page title",actionFailed:"Tab action failed",newTab:"New Browser tab",close:"Close tab",closeOthers:"Close other tabs",closeToRight:"Close tabs to the right"},addressAria:"Web address",addressPlaceholder:"Search or enter an address",clearData:"Clear browsing data",clearDataTitle:"Clear browsing data",clearDataMessage:"Cookies, sign-in status, and cached browser data will be deleted",clearDataConfirm:"Clear",unavailable:"The in-app browser is unavailable",invalidAddress:"Enter a valid web address",loadFailed:"Page couldn't load",retry:"Retry",empty:{title:"New tab",lead:"Type an address above, or ask the agent to:",items:{browse:{label:"Browse",detail:"Open pages, move between tabs, and show you what it finds"},read:{label:"Read",detail:"Pull out text, list page elements, and take screenshots"},interact:{label:"Interact",detail:"Click, type, fill in forms, pick options, and scroll"},layout:{label:"Test layouts",detail:"Preview pages on phone, tablet, or custom screen sizes"},recall:{label:"Recall",detail:"Search your browsing history and downloads"}},footnote:"You can watch the agent work and take over at any time"}},m2e={details:{item:"item",annotation:"Annotation",classes:"Classes",geometry:"Location & geometry",semantics:"Semantics & state",data:"Data attributes",source:"Page & capture details",pageTitle:"Page title",url:"URL",capturedAt:"Captured at",viewport:"Viewport",width:"Width",height:"Height",zoom:"Zoom",pixelRatio:"Device pixel ratio",size:"Size",position:"Position",copy:"Copy",insert:"Insert into comment",more:"Show more",less:"Show less",items:"items",base:"Base / custom",interaction:"Interaction",responsive:"Responsive",theme:"Theme",truncated:"Some attributes were omitted because they exceed capture limits.",copied:"Copied",copyFailed:"Copy failed. Select the text to copy it."},includeScreenshot:"Include screenshot with this reference",regionScreenshot:"A screenshot is required for a region",capturedAt:"Captured at {time}",screenshotUnavailable:"The screenshot is currently unavailable.",screenshotUploading:"Uploading the screenshot.",screenshotFailed:"The screenshot is unavailable. Try uploading it again.",retryScreenshot:"Retry screenshot upload",title:"Annotate page",cancelPick:"Cancel annotation",group:"Web pages",comment:"Comment",commentPlaceholder:"Describe a change, or add without a comment",add:"Add to composer",save:"Save",locate:"Locate on page",saveAndLocate:"Save and locate",noComposer:"Open a conversation composer first.",failed:"Annotation failed: {message}",missing:"The captured information for this reference is unavailable.",stale:"The original element could not be located. The page may have changed.",named:"{kind}: {name}",numbered:"{kind} · {number}",kind:{button:"Button",input:"Input",image:"Image",link:"Link",heading:"Heading",element:"Element",region:"Region"}},g2e={title:"Server token required",hint:"This server is protected. Enter the bearer token printed when the server started (or the password set via {env}).",tokenPlaceholder:"Token",connect:"Connect",connecting:"Connecting…"},v2e={title:"Remote Control",enable:"Turn on Remote Control",enableHint:"Once turned on, open the link on another device to control the agent on this computer",enableFailed:"Couldn't turn on Remote Control",disableFailed:"Couldn't turn off Remote Control",securityNote:"Keep this computer awake and online. For security, do not share the link with others",statusOn:"Remote Control is on",statusLoadFailed:"Couldn't load Remote Control status",conflictTitle:"Remote Control is already on via another process",conflictMeta:"Running: PID {pid}, since {time}",conflictHint:"You can use the existing link directly, or take that process offline and turn it on here",takeover:"Stop the existing process and turn on here",continueUsing:"Keep the existing process",turnOff:"Turn off Remote Control",qrAlt:"QR code for the remote access link",qrCaption:"Scan with your phone to open",copyLink:"Copy link",copied:"Copied",copyFailed:"Copy failed. Please try again",openLink:"Open link",devicesTitle:"Remote device management",refresh:"Refresh",refreshDevices:"Refresh device list",retry:"Retry",devicesLoadFailed:"Couldn't load devices. Please try again",emptyDevicesTitle:"No other devices yet",emptyDevicesHint:"Turn on Remote Control on another computer to see it here",currentDevice:"This computer",online:"Online",offline:"Offline",deviceMenu:"Device actions",rename:"Rename",deactivate:"Take offline",delete:"Delete",renamePlaceholder:"Device name",renameFailed:"Rename failed. Please try again",save:"Save",cancel:"Cancel",deactivateTitle:"Take {name} offline",deactivateHint:"{name} will disconnect from Remote Control. You can turn it back on from that computer",deleteTitle:"Delete {name}",deleteHint:"{name} will be removed from the device list. You can turn Remote Control back on from that computer",actionFailed:"Action failed. Please try again"},y2e={common:Rge,app:Pge,sidebar:$ge,admin:Oge,workspace:Fge,conversation:Dge,status:Nge,composer:Bge,login:zge,devices:Hge,providers:jge,model:Wge,sessions:qge,approval:Vge,question:Uge,tasks:Kge,thinking:Zge,diff:Gge,fileTree:Qge,filePreview:Yge,mediaPreview:Jge,mention:Xge,warnings:e2e,commands:t2e,tools:n2e,layout:i2e,mobile:o2e,theme:s2e,onboarding:r2e,settings:a2e,header:l2e,sideChat:c2e,selection:u2e,shortcuts:d2e,terminal:f2e,panel:h2e,browser:p2e,browserReference:m2e,serverAuth:g2e,remoteControl:v2e},b2e={preview:"预览",source:"代码",confirm:"确认",cancel:"取消",close:"关闭",dismiss:"关闭",loading:"加载中",copy:"复制",errorBoundaryTitle:"出错了",errorBoundaryRetry:"重试",asyncLoadFailed:"加载失败,请关闭后重试"},k2e={connecting:"连接中…",connectingStageAuth:"正在检查登录状态…",connectingStageServer:"正在连接 Kimi Code 服务…",connectingStageConfig:"正在加载配置…",connectingStageSessions:"正在加载会话列表…",connectingStageSession:"正在打开会话…",connectingRetrySuffix:"(第 {n} 次重试)",connectingIssueNetworkTitle:"无法连接",connectingIssueNetworkMessage:"请检查网络连接,确认 Kimi Code 服务仍在运行",connectingIssueTimeoutTitle:"响应超时",connectingIssueTimeoutMessage:"仍在自动重试,请稍候",connectingIssueApiTitle:"请求出错",connectingIssueUnknownTitle:"连接出现问题",menuFile:"文件",menuEdit:"编辑",menuView:"视图",menuHelp:"帮助",applicationMenu:"应用菜单",quitConfirmTitle:"退出 Kimi Code?",quitConfirmMessage:"还有会话在进行,退出会中断它们。",quitConfirmMessageRemoteControl:"远程控制正在运行,退出客户端会停止远程控制,重启后需手动开启。",quitConfirmMessageBusyAndRemoteControl:"还有会话在进行,退出会中断它们;远程控制正在运行,退出客户端会停止远程控制,重启后需手动开启。",quitConfirmQuit:"退出",quitConfirmCancel:"取消"},w2e={workspaceMeta:"工作空间 · {branch}",sessionsHeader:"会话",workspaces:"工作区",viewSwitcher:"列表管理",viewGroup:"视图",viewFlat:"平铺列表",viewGrouped:"按工作区分组",sortGroup:"排序",sortManual:"手动排序",sortRecent:"按最近活动",sessionAdmin:"会话管理",collapseAll:"折叠全部工作区",expandAll:"展开全部工作区",newSession:"新建会话",newChat:"新建会话",newWorkspace:"新建工作空间",dropToAddWorkspace:"松开鼠标添加工作区",emptyState:"还没有会话 · 点击 新建会话 开始",options:"选项",rename:"重命名",genTitle:"生成标题",genTitleUnavailable:"无法生成标题:需要登录 Kimi Code 托管账号,且会话中已有消息",setEmoji:"设置 Emoji…",sessionEmojiTitle:"选择 Emoji",removeEmoji:"移除 Emoji",randomEmoji:"随机",searchEmoji:"搜索 Emoji",recentEmojis:"最近使用",noEmojiResults:"没有匹配的 Emoji",emojiGroupFaces:"笑脸与人物",emojiGroupNature:"动物与自然",emojiGroupFood:"美食饮品",emojiGroupActivity:"活动与出行",emojiGroupObjects:"物品与工作",emojiGroupSymbols:"符号与状态",copyPath:"复制路径",copySessionId:"复制 Session ID",copied:"已复制",copyFailed:"复制失败",archive:"归档",archiveToastUndo:"撤销",archiveToastMid:"或到",archiveToastSettings:"设置",archiveToastTail:"查看已归档的会话",tabOpen:"进行中",tabDone:"已完成",tabWorkspaces:"工作空间",tagOpen:"进行中",tagDone:"已完成",complete:"完成",markDone:"标记为完成",reopen:"恢复进行中",noDoneSessions:"还没有已完成的会话",noOpenSessions:"还没有进行中的会话",completeToastLead:"已完成",reopenToastLead:"已恢复进行中",fork:"分叉会话",reload:"重新加载",export:"导出会话",pin:"置顶",unpin:"取消置顶",pinned:"置顶",collapsePinned:"折叠置顶区",expandPinned:"展开置顶区",resizePinnedAria:"调整置顶区高度",delete:"删除",deleteConfirmTitle:"删除会话",deleteConfirmMessage:"将永久删除「{title}」的全部对话记录,无法恢复。工作区里的文件和代码改动不受影响。",deleteConfirmButton:"永久删除",deleteToast:"会话已删除",removeWorkspace:"移除工作区",brand:"Kimi Code",signedIn:"已登录",signOut:"退出登录",notSignedIn:"未登录",signIn:"登录",defaultUserName:"Kimi 用户",upgradeMembership:"会员升级",logoutConfirmTitle:"退出登录",logoutConfirmMessage:"确定要退出当前账号吗?",language:"语言",backendTitle:"后端 {backend} · {endpoint} — 点击切换",noSessions:"暂无对话",allPinned:"有 {count} 条对话被置顶",showMore:"展开更多",loadMore:"加载更多",showLess:"收起",loadingMore:"加载中…",collapseSidebar:"收起侧边栏",expandSidebar:"展开侧边栏",searchPlaceholder:"搜索会话或工作区",search:"搜索",searchHint:"↑↓ 选择 · ↵ 打开 · Esc 关闭",searchHintSelect:"选择",searchHintOpen:"打开",searchHintClose:"关闭",searchClear:"清除搜索",searchNoResults:"没有匹配的会话或工作区",searchEmpty:"暂无会话",update:"更新",updateAvailable:"发现新版本 v{version}",updateDownloadingButton:"下载中({percent}%)",updateReady:"v{version} 已就绪",updateDone:"重启并更新",updateFailed:"下载失败",updateRetry:"重试",updateDownloadNow:"下载并更新",updateSkip:"本次跳过",updateRestartNow:"立即重启",updateRestartLater:"下次启动",updateReleaseDate:"发布于 {date}",updateCurrentVersion:"当前版本 v{version}",updateWhatsNew:"更新内容",updateBackground:"后台下载",updateAutoDownload:"以后自动下载并安装更新",rcSelectDevice:"选择设备",rcCurrentDevice:"当前设备:{name}",rcConnectable:"可连接",rcUnavailable:"不可用",rcOnline:"在线",rcOffline:"离线",rcDevicesLoadFailed:"设备列表加载失败"},C2e={title:"会话管理",subtitle:"管理所有会话,把任务完成的会话标记完成。旧会话按更新时间筛选,即可批量清理。",back:"返回",filterWorkspace:"工作空间",filterStatus:"状态",filterTime:"更新时间",allWorkspaces:"全部工作空间",selectAll:"全选",searchWorkspace:"搜索工作空间",noWorkspaceMatch:"没有匹配的工作空间",removeTag:"移除 {name}",statusAll:"全部状态",statusOpen:"进行中",statusDone:"已完成",timeAll:"全部时间",timeDaysAgo:"{n} 天以前",query:"查询",reset:"重置",colStatus:"状态",colTitle:"会话名",colWorkspace:"工作空间",colPrompt:"最后一条 prompt",colUpdated:"最后更新",colCompleted:"完成时间",colActions:"操作",empty:"没有符合当前筛选条件的会话",loading:"加载中…",total:"共 {n} 条",pageSize:"{n} 条/页",prevPage:"上一页",nextPage:"下一页",selectPageAll:"全选本页",batchSelected:"已选 {n} 项",selectAllMatching:"选中当前条件下的全部 {total} 项",materializingAll:"正在选中…",allMatchingSelected:"已选中全部 {n} 项",clearSelection:"清除选择",markDone:"标记完成",reopen:"恢复进行中",markDoneCount:"标记完成({n})",reopenCount:"恢复进行中({n})",batchDoneToast:"已标记完成 {n} 个会话",batchReopenedToast:"已将 {n} 个会话恢复为进行中",batchFailedSuffix:",{n} 个失败",batchDoneFailedNotice:"{n} 个会话未能标记完成",batchReopenFailedNotice:"{n} 个会话未能恢复为进行中",undo:"撤销",open:"打开会话",rename:"重命名…",fork:"分叉会话",export:"导出",moreActions:"更多操作"},A2e={switcherTitle:"切换工作区",switchTooltip:"切换工作区",eyebrow:"工作区",branchLabel:"分支: {branch}",noBranch:"无分支",sessionCount:"{count} 个会话",allWorkspaces:"全部工作区",currentWorkspace:"仅当前工作区",addWorkspace:"添加工作区…",noWorkspace:"暂无工作区",deleteHasSessions:"工作区内还有会话,请先归档这些会话再删除",removeWorkspaceConfirm:`将「{name}」从侧边栏移除? +文件夹和文件不会被删除,其中的会话记录也会保留,重新添加该文件夹即可找回。`,removeAction:"移除",swarmEnabledMessage:"高消耗:Swarm 适合大规模并行的任务,消耗可能是普通任务的很多倍。建议先从小任务开始,用完记得关闭 swarm。",swarmEnabledTitle:"Swarm 模式已开启",goalStartTitle:"启动 goal?",goalStartConfirm:"「{objective}」——Agent 将自主执行。",scopeCurrent:"当前工作区",scopeAll:"全部工作区",newInGroup:"在此工作区新建会话",addTitle:"添加工作区",pathLabel:"路径",pathPlaceholder:"/项目的绝对路径",recentLabel:"最近的文件夹",add:"添加",cancel:"取消",addHint:"粘贴一个绝对路径,或从最近用过的文件夹中选择。",addFailed:"无法打开此文件夹,请检查路径后重试。",requiredTitle:"请先选择工作空间",requiredMessage:"发送消息前,需要先选择一个文件夹作为工作区。",openThisFolder:"打开此文件夹",up:"上一级",browsing:"加载中…",filterPlaceholder:"过滤子文件夹…",searchPlaceholder:"在此目录下模糊搜索…",searching:"搜索中…",pasteToggle:"直接输入绝对路径",noFilterMatch:"没有匹配「{q}」的子文件夹",noSubfolders:"此处没有子文件夹",browseHint:'点击文件夹进入,再点"打开此文件夹"将其添加为工作区。',attentionTitle:"{count} 项待处理",awaitingAnswer:"待回答",awaitingAnswerTitle:"有提问等待你回答",awaitingPermission:"待授权",awaitingPermissionTitle:"有操作等待你授权",aborted:"失败",abortedTitle:"此会话的上一轮对话因错误中断",trust:{title:"信任此工作区",desc:"信任前,你无法向此工作区发送消息,其中的 Agent 说明与 MCP 配置等项目级配置也不会加载。这些文件可以指示 Kimi 执行命令,请仅信任来源可靠的工作区。信任后,工具调用仍会按你的权限设置逐个请求批准;信任会被记住,之后的配置变更同样生效。",trustAction:"信任此工作区",rejectAction:"拒绝",readFailedTitle:"无法确认工作区信任状态,请重试",writeFailedTitle:"无法信任此工作区,请重试"}},S2e={jumpToLatestAria:"跳到最新消息",backToBottom:"回到底部",toc:"对话目录",historyPrevious:"上一项",historyNext:"下一项",newMessages:"最新消息",loading:"加载中…",starting:"正在创建对话…",requesting:"请求中…",working:"工作中…",workingRetry:"模型请求失败,正在重试(第 {n}/{max} 次)…",emptyWorkspaceHint:"在 {name} 中发送",switchWorkspace:"切换工作区",recentSessions:"最近会话",viewMoreSessions:"查看更多",sessionAdminTooltip:"在会话管理页面查看并管理更多会话",addWorkspace:"添加工作区",moreWorkspaces:"更多工作区 ({count})",pickFolder:"选择文件夹…",compacting:"正在压缩上下文…",compactedPlain:"上下文已压缩",compactedAuto:"已自动压缩上下文",compactedTokens:"({before} → {after} tokens)",viewSummary:"查看摘要",undo:"撤销",undoTooltip:"撤回消息",undoConfirm:"撤销后,这条消息及之后的会话内容会从上下文中移除,这条消息的原文会放回输入框;已修改的文件和代码不受影响。",undone:"已撤销,原文已放回输入框",turnInterrupted:"已手动终止",turnFailed:"模型请求失败,本轮对话已中断",turnFailedMaxSteps:"达到本轮步数上限,对话已中断",turnFailedResume:"继续",turnFailedResumeText:"继续",sessionRatingQuestion:"这次会话中,Kimi 表现如何?",sessionRatingBad:"差",sessionRatingFine:"一般",sessionRatingGood:"好",sessionRatingThanks:"感谢你的反馈",sessionRatingUndo:"撤销",yesterday:"昨天",loadOlder:"加载更早的消息",loadingOlder:"正在加载更早的消息…",widenTable:"加宽表格",restoreTableWidth:"恢复默认宽度",copyTable:"复制表格",copyPath:"复制路径",revealInFolder:"在文件夹中显示",openLinkExternally:"外部打开",openLinkInSidebar:"右侧面板打开",wrapCode:"开启自动换行",unwrapCode:"关闭自动换行",showLineNumbers:"显示行号",hideLineNumbers:"隐藏行号",cron:{fired:"定时任务已触发",missed:"错过的定时提醒",job:"任务 {id}",oneShot:"单次",coalesced:"已合并 {n} 次触发",missedCount:"错过 {n} 次",finalDelivery:"最后一次投递",expand:"展开",collapse:"收起"},fold:{worked:"已工作 {duration}",workedUnknown:"工作过程"},turnFiles:{titleOne:"{number} 个文件已修改",titleOther:"{number} 个文件已修改",more:"还有 {number} 个文件",moreOne:"还有 1 个文件",showLess:"收起",diffUnavailable:"此文件的改动无法逐项展示",rebuilding:"正在加载本轮改动…",openFile:"打开文件"},goal:{continuation:"目标续跑"},notification:{sentBy:{task:"由后台发送(Bash)",subagent:"由后台发送(Agent)"},bodyLine:"{status}:{description}",reason:"原因:{reason}",userStopped:"已被用户终止",statusTitle:{completed:"已完成",failed:"失败",timed_out:"超时",killed:"已终止",lost:"丢失",info:"通知"},status:{completed:"完成",failed:"失败",timed_out:"超时",killed:"已终止",lost:"丢失",info:"信息"},groupTitle:"{n} 条通知",copyPath:"复制路径",copied:"已复制",rawPayload:"原始 payload",outputTruncated:"输出已截断,仅显示末尾",fields:{type:"类型",source:"来源",severity:"严重度"}},userMessage:{expand:"展开",collapse:"收起"},search:{placeholder:"搜索对话…",searching:"搜索中…",results:"{current}/{total} 条结果",resultsCapped:"{current}/{total}+ 条结果",noResults:"无结果",previous:"上一个匹配",next:"下一个匹配",close:"关闭搜索"}},x2e={connectionConnected:"已连接",connectionConnecting:"连接中…",connectionDisconnected:"未连接",ctxTooltip:"使用 {used} / {max} tokens ({pct}%)",modelLabel:"模型",permissionManual:"始终询问",permissionAuto:"完全自动",permissionYolo:"必要时询问",permissionManualDesc:"仅自动读取,其余操作逐一向你确认",permissionAutoDesc:"完全不打断,所有操作和判断自动完成",permissionYoloDesc:"自动完成常规修改和命令;高危操作、提问和计划仍会问你",planLabel:"计划",planOn:"开",planOff:"关",planTooltip:"切换计划模式(先调研再修改)",workModeDismiss:"退出模式",goalLabel:"目标",timeUnitHour:"小时",timeUnitMinute:"分",timeUnitSecond:"秒",planEmptyArmed:"计划模式已开启,智能体写出计划后会显示在这里",planEmptyIdle:"还没有计划——开启计划模式后,智能体写出的计划会显示在这里",swarmLabel:"Swarm",swarmDismiss:"关闭 Swarm",swarmTooltip:"高消耗:并行运行大量子 agent",towerLabel:"Tower",towerDismiss:"关闭 Tower",modeOff:"未启用",goalPlaceholder:"让智能体完成什么目标?",planPlaceholder:"让智能体先规划什么?",goalStart:"开始",goalPause:"暂停",goalResume:"继续",goalCancel:"取消",goalCancelConfirm:"是否需要取消当前目标?取消后将无法恢复。",goalCancelConfirmYes:"是",goalCancelConfirmNo:"否",goalDoneWhen:"完成条件",goalStatusActive:"进行中",goalStatusPaused:"已暂停",goalStatusBlocked:"已阻塞",goalStatusComplete:"已完成",modeNotSupported:"暂不支持",thinkingLabel:"思考",thinkingTooltip:"切换思考模式",cacheNote:"提示:切换模型或思考程度会使已有的提示词缓存失效。建议新建会话,避免额外的 token 消耗。",starredModels:"收藏",moreModels:"更多模型…",statusPanelTitle:"会话状态",statusPanelClose:"关闭",statusModel:"模型",statusThinking:"思考强度",statusPermission:"权限",statusPlanMode:"计划模式",statusSwarmMode:"Swarm 模式",statusTowerMode:"Tower 模式",swarmOn:"开",swarmOff:"关",towerOn:"开",towerOff:"关",statusContext:"上下文",statusCost:"花费",statusContextValue:"{used} / {max} ({pct}%)",statusNone:"—",activityRunning:"运行中…",activityAwaitingApproval:"等待批准",activityAwaitingQuestion:"等待回答",interrupt:"中断",runningShort:"进行中"},_2e={inputLabel:"消息输入框",placeholder:"输入消息…",commandArgumentHint:"在 {command} 后输入{argument}",send:"发送 ↵",queueLabel:"队列",placeholderRunning:"输入会加入队列 · Ctrl+S 立即插入运行中的回合",placeholderRunningMobile:"输入会加入队列",starting:"正在发送…",queuePending:"{n} 个任务等待发送",queueSteer:"立即发送到当前回合 Ctrl+S",queueSteerMobile:"立即发送到当前回合",queueDragTitle:"拖拽排序",editQueued:"编辑(载入到输入框)",queuedAttachments:"附件 ×{n}",queuedHasImage:"包含 {n} 张图片 — 只能移除,不能编辑",attachmentImage:"图片",attachmentVideo:"视频",attachments:"附件",imagesAndVideos:"图片和视频",mentionNamed:"提及{name}",attachmentOpenUnsupported:"无法打开 {name}:暂不支持此文件类型",dropToAttach:"松开鼠标添加附件",remove:"移除",removeNamed:"移除{name}",mediaAttachments:"媒体栏",uploading:"准备中",uploadFailed:"准备失败",attachFile:"添加附件",addMenu:"添加",addFiles:"文件",addFilesDesc:"上传文件",addScreenshot:"截屏",addScreenshotDesc:"框选屏幕并评论",screenshotFailed:"截图失败,请重试",screenshotSessionGone:"原对话已不存在,截图未添加",addGoalDesc:"设定目标并持续推进",addPlanDesc:"启用计划模式",addSwarmDesc:"高消耗:并行运行大量子 agent",addTowerDesc:"启用 tower 模式",noCommands:"无匹配命令",slashSheetTitle:"命令",slashSearchPlaceholder:"搜索命令…",mentionSheetTitle:"提及",mentionSearchPlaceholder:"搜索附件、文件或技能…",addSlash:"命令",addSlashDesc:"内置命令或技能",addMention:"提及",addMentionDesc:"提及附件、项目文件或技能",interrupt:"中断",interruptConfirm:"再按一次 Esc 中断",interruptTitle:"中断当前操作",expandTitle:"展开输入框进行多行编辑",collapseTitle:"收起输入框",quickStartPlaceholder:"输入消息开始新对话…",thinkingSuffix:" · 思考",thinkingSuffixEffort:" · {level}",noArgCommand:"{cmd} 不接受任何参数"},I2e={title:"登录 Kimi Code",close:"关闭 (Esc)",regionCnHint:"使用 {domain} 账号登录",regionOverseasHint:"使用 {domain} 账号登录",oauthTitle:"登录 Kimi 账号",oauthHint:"在浏览器中完成授权即可登录",starting:"正在启动登录流程…",openedHint:"请在浏览器中完成授权({time})",blockedTitle:"未能自动打开登录页",blockedHint:"浏览器拦截了自动打开,请点击下方按钮继续完成授权。",notOpened:"没有自动打开浏览器?",authorizeInBrowser:"在浏览器中登录",orDivider:"或者",fallbackPrefix:"换个设备?在浏览器打开 ",fallbackSuffix:" 输入设备码:",copy:"复制",copied:"已复制",copyLink:"复制链接",success:"已登录",successHint:"正在加载,稍后自动关闭…",expiredTitle:"设备码已过期",expiredHint:"请重新开始登录流程",deniedTitle:"登录已取消",retry:"重试",closeBtn:"关闭",failedTitle:"登录失败",errorHint:"请升级 kimi-code 后重试",pollErrorTitle:"连接已断开",pollErrorHint:"登录轮询连续失败,请检查 kimi-code 进程后重试",action:"登录",requiredTitle:"请先登录",requiredMessage:"登录 Kimi 账号并配置模型后,才能开始对话。",goToLogin:"去登录",upgradeRequiredTitle:"请升级会员",upgradeRequiredMessage:"当前套餐暂不支持 Kimi 模型;升级会员,解锁 Kimi Code 完整体验",upgradeNow:"立即升级",pickModelTitle:"请选择模型",pickModelMessage:"已有可用模型,选择一个默认模型后即可开始对话。",pickModelAction:"选择模型",configureModelsTitle:"请配置模型",configureModelsMessage:"账号已登录,但还没有可用模型。配置模型后即可开始对话。",configureModelsGenericMessage:"还没有可用模型。配置模型后即可开始对话。",configureModelsAction:"去配置",rcSubtitle:"远程控制会话",rcChecking:"正在检查登录状态…",rcLead:"远程控制功能需要登录后使用。使用 Kimi 账号登录即可继续。",rcSuccessHint:"正在跳转…",rcExpiredTitle:"授权已过期或被取消",rcDeniedTitle:"已取消授权",rcStartErrorTitle:"无法开始登录",rcSessionErrorTitle:"无法创建登录会话",rcConnectionErrorHint:"请检查网络连接后重试。",rcUnsupportedTitle:"请使用浏览器打开",rcUnsupportedHintWechat:"远程控制登录不支持微信内置浏览器,请在系统浏览器中打开本页完成登录。",rcUnsupportedHintLark:"远程控制登录不支持飞书内置浏览器,请在系统浏览器中打开本页完成登录。",rcOpenInBrowser:"在浏览器打开",rcOpenGuideIos:"点击右上角「···」,选择「在浏览器打开」或「Safari 打开」。",rcOpenGuideAndroid:"点击右上角「···」,选择「在浏览器打开」。"},T2e={title:"远程控制设备",subtitle:"选择一台设备继续",refresh:"刷新",connectable:"可连接",unavailable:"不可用",online:"在线",offline:"离线",emptyTitle:"还没有可连接的设备",emptyHint:"在电脑上开启 Kimi Code 远程控制,设备会出现在这里",docsLink:"查看远程控制文档",allOfflineHint:"设备已离线,在对应电脑上开启 Kimi Code 远程控制可重新上线",loadFailed:"设备列表加载失败",deviceCount:"{count}/{max} 台设备",menuLabel:"设备操作",rename:"重命名",deactivate:"下线",delete:"删除",renameTitle:"重命名设备",renamePlaceholder:"设备名称",deactivateTitle:"下线设备【{name}】",deactivateHint:"下线后,该设备的远程链接将不可用,需要在宿主机器上重新开启 Kimi Code 远程控制才能恢复",deleteTitle:"删除设备【{name}】",deleteHint:"删除后,该设备将从设备列表中移除,需要在宿主机器上重新开启 Kimi Code 远程控制才能恢复",actionFailed:"操作失败,请检查网络后重试。"},M2e={title:"供应商管理",loading:"加载提供商中…",unavailable:"暂不支持提供商管理",empty:"暂无提供商",status:{connected:"已连接",error:"错误",unconfigured:"未配置"},keySet:"key 已设置",keyNotSet:"未设置 key",managedBadge:"OAuth",kimiSubscription:"Kimi 订阅",modelCount:"{count} 个模型",confirmDelete:"确认删除?",refresh:"刷新",delete:"删除",refreshTitle:"刷新 {type}",deleteTitle:"删除 {type}",loginKimi:"登录 Kimi",loginAnthropic:"登录 Anthropic",addProvider:"添加供应商",added:"已添加",enterApiKey:"填写 API Key",optional:"可选",apiKeyRequired:"API Key 不能为空",fieldId:"名称",fieldType:"API 协议",types:{kimi:"Kimi",openai:"OpenAI",openai_responses:"OpenAI Responses",anthropic:"Anthropic","google-genai":"Google GenAI",vertexai:"Vertex AI"},fieldApiKey:"API Key",apiKeyManaged:"OAuth 托管登录",apiKeySet:"已设置,输入以更换",showApiKey:"显示 API Key",hideApiKey:"隐藏 API Key",fieldBaseUrl:"Base URL",baseUrlPlaceholder:"https://api.example.com/v1",fieldModels:"模型",colModelId:"模型 ID",colContext:"上下文",colDisplayName:"显示名",modelIdPlaceholder:"kimi-k3",modelContextPlaceholder:"1048576",modelNamePlaceholder:"可选",noModels:"暂无模型",addModel:"添加模型",removeModel:"移除模型",fieldDefaultModel:"默认模型",save:"保存",saved:"已保存",deleteProvider:"删除供应商",deleteConfirm:"确认删除 {id} 及其 {count} 个模型?",deleteConfirmYes:"确认删除",add:"添加",groupManaged:"Kimi 订阅",groupCustom:"自定义供应商",managedBuiltin:"内置",loginAction:"登录",emptyCustom:"暂无自定义供应商",emptyCustomHint:"点击右上角「添加供应商」开始使用",pendingConfig:"待配置",managedAccount:"账号",managedAccessMode:"接入方式",managedOauth:"订阅登录(OAuth)",availableModels:"可用模型({count})",availableModelsLabel:"可用模型",managedLoginTitle:"登录 Kimi 订阅",managedLoginHint:"登录后使用 Kimi 系列模型,订阅额度自动同步。将在浏览器中完成授权。",loginToSeeModels:"登录后可见",refreshModels:"刷新模型",refreshModelsDone:"模型已刷新",refreshModelsFailed:"模型刷新失败",managedReadonly:"内置供应商,配置为只读",chipManual:"自定义",presets:{kimiForCoding:{name:"Kimi For Coding",desc:"月之暗面 · Coding Plan 订阅,API Key 接入"},kimiForCodingGlobal:{name:"Kimi For Coding (kimi.ai)",desc:"月之暗面 · Coding Plan 订阅,API Key 接入 · kimi.ai"},zaiIntl:{name:"Z.ai Coding Plan",desc:"GLM 系列模型 · Coding Plan 订阅 · z.ai"},zaiCn:{name:"BigModel Coding Plan",desc:"GLM 系列模型 · Coding Plan 订阅 · bigmodel.cn"},deepseek:{name:"DeepSeek",desc:"深度求索官方 API"},minimaxIntl:{name:"MiniMax Global",desc:"M 系列模型 · Token Plan 订阅 · minimax.io"},minimaxCn:{name:"MiniMax",desc:"M 系列模型 · Token Plan 订阅 · minimaxi.com"}},tags:{codingPlan:"Coding Plan",tokenPlan:"Token Plan",paygo:"按量 API"},catalog:{sourceCatalog:"从 models.dev 添加",sourceManual:"手动添加",sourceRegistry:"注册表",registryHint:"从 api.json 注册表导入供应商与模型;同一 URL 重复导入即为刷新",registryUrlLabel:"注册表 URL",registryImported:"已导入 {count} 个供应商",searchPlaceholder:"搜索供应商",loading:"加载目录中…",loadError:"目录加载失败,请检查网络后重试",retry:"重试",empty:"没有匹配的供应商",rejected:"不可导入",rejectReason:{"unknown-explicit-type":"协议不受支持","proprietary-sdk":"私有协议,无法导入","empty-base-url":"Base URL 为空","placeholder-base-url":"端点包含环境变量占位符"},backToList:"返回目录列表",overwriteWarning:"已存在同名供应商,导入将覆盖其配置与模型",importAction:"导入"},fetchModels:{button:"获取模型列表",done:"已更新模型表(新增 {count} 个模型)",noNew:"远端模型均已存在,无需更新",empty:"该端点未返回任何模型",unsupportedType:"Vertex AI 不支持拉取模型列表",error:{auth:"认证失败,请检查 API Key",notFound:"未找到模型列表端点,请检查 Base URL",network:"请求失败,请检查网络或 Base URL 是否可达",timeout:"请求超时,请稍后重试",parse:"响应格式无法识别",http:"请求失败(HTTP {status})"}},error:{idRequired:"名称不能为空",idInvalid:'名称需以字母或数字开头,只能包含字母、数字、"-"、"_" 和空格',apiKeyRequired:"API Key 不能为空",baseUrlRequired:"Base URL 不能为空",registryUrlRequired:"注册表 URL 不能为空",modelRequired:"模型 ID 不能为空",contextSizeRequired:"上下文长度不能为空",contextSizeInvalid:"上下文长度需为正整数"},hintClose:"关闭"},E2e={dialogLabel:"切换模型",title:"切换模型",close:"关闭 (Esc)",allTab:"全部",providerTabs:"模型提供商",searchPlaceholder:"搜索模型或提供商…",clearSearch:"清除搜索",loading:"加载模型中…",unavailable:"暂无可用模型列表",contextSuffix:"{size} ctx",capabilityImageInput:"图片输入",capabilityVideoInput:"视频输入",capabilityToolUse:"工具调用",capabilityThinking:"思考",capabilityAlwaysThinking:"始终思考",emptyNoModels:"暂无可用模型",emptyNoMatch:"无匹配模型",starTitle:"添加到收藏",unstarTitle:"取消收藏",hintNavigate:"导航",hintSelect:"选择",hintClose:"关闭",switchConfirmTitle:"确认切换模型?",switchEffortConfirmTitle:"确认把思考强度由 {from} 切换到 {to}?",switchConfirmConfirm:"确认切换",switchConfirmCompact:"压缩后继续",switchConfirmCompactDesc:"继续当前会话,成本更低、效果更好",switchConfirmContinue:"直接继续",switchConfirmContinueDesc:"输出质量可能下降 · 缓存失效可能带来更高 Token 消耗",switchConfirmCancel:"取消",switchConfirmCancelDesc:"保持当前模型不变",switchCompactAborted:"压缩未完成,模型未变更。"},L2e={justNow:"刚刚"},R2e={browserDetails:"操作参数",allowOp:"允许 Kimi Code {verb} {name}",opVerb:{read:"读取",grep:"搜索",glob:"查找",edit:"编辑",write:"写入",delete:"删除"},field:{op:"操作:{value}",tool:"工具:{value}",base:"路径:{value}",cwd:"工作目录:{value}"},title:{browser:"浏览器操作",shell:"运行命令?",diff:"应用修改?",file:"写入文件?",fileop:"文件操作?",url:"抓取 URL?",search:"搜索?",invocation:"调用?",todo:"更新 todo?",plan_review:"按这份 plan 开始实现?",generic:"批准操作?"},subagentBadge:"子 agent · {name}",danger:"危险: {detail}",searchQueryLabel:"查询",searchScope:"范围:{scope}",feedbackPlaceholder:"说明拒绝原因…",approve:"批准",approveSession:"本会话内批准",reject:"拒绝",feedback:"反馈",feedbackSubmit:"提交并拒绝",feedbackCancel:"取消",approvePlan:"批准 plan",revise:"修改",rejectAndExit:"拒绝并退出",expandPlan:"放大",collapsePlan:"还原"},P2e={back:"上一题",nextQuestion:"下一题",otherLabel:"其他",otherPlaceholder:"说说你的想法…",submit:"提交",dismiss:"放弃",minimize:"最小化",expand:"展开",hint:"↑↓ 选择 · Enter 确认"},$2e={tag:"任务",summary:"{run} 运行中 · {done} 完成",copy:"复制",calling:"调用 {label}",fieldTask:"任务",fieldOutput:"输出",fieldProgress:"进度",fieldResult:"结果",moreLines:"…(还有 {count} 行)",copied:"已复制",stop:"停止",defaultDescription:"后台任务",dockTasks:"后台任务",dockBash:"后台 Bash",dockSubagent:"后台 Agent",dockTodos:"待办",todoProgressTitle:"当前进度",stateDone:"完成",stateFail:"失败",stateCancelled:"已取消",filterRecent:"最近",filterRunning:"进行中",filterDone:"已完成",filterAll:"全部",running:"运行中",closePanel:"关闭面板",openPanel:"在侧边栏打开",timingRunning:"运行中 · {time}",timingDone:"完成 · {time}",emptyTasks:"暂无后台任务",emptyRecent:"暂无最近任务",emptyRunning:"暂无运行中的任务",emptyDone:"暂无已完成的任务",emptyBash:"暂无后台 Bash 任务",emptySubagent:"暂无后台 Agent 任务",emptyTodo:"暂无待办事项",openTab:"查看全部后台任务",openDetail:"查看",toBackground:"转后台",collapse:"折叠",expand:"展开",transcriptLoadError:"无法加载这个子 Agent 的对话。",copyCommand:"复制命令",copyOutput:"复制输出",copyAll:"复制全部"},O2e={panelTitle:"思考过程",streaming:"思考中…"},F2e={aheadTitle:"领先远程",behindTitle:"落后远程",fileCountOne:"{number} 个文件",fileCountOther:"{number} 个文件",empty:"无 git 改动",clean:"工作区干净,无改动",back:"返回",loading:"正在加载 diff…",noDiff:"该文件没有行级改动",emptyFile:"空文件",list:"列表",tree:"树形"},D2e={searchPlaceholder:"搜索文件",refresh:"刷新",emptyTitle:"选择要预览的文件",emptyHint:"从文件树中选择一个文件,在此预览",emptyDir:"(空)",loadError:"文件加载失败",retry:"重试",copyPath:"复制路径",copied:"已复制",reveal:"在文件夹中显示",treeShow:"显示文件树",treeHide:"隐藏文件树",settings:"文件树设置",positionTitle:"文件树位置",positionLeft:"左侧",positionRight:"右侧",resize:"调整文件树宽度",noSession:"暂无活跃会话",noResults:"没有匹配的文件"},N2e={empty:"选择左侧文件预览",loading:"加载中…",lineCount:"{count} 行",copy:"复制",copied:"已复制",copyPath:"复制路径",openInEditor:"打开",openInSystemBrowser:"在系统浏览器打开",openInPanelBrowser:"在侧边面板浏览器打开",openFailed:"无法打开文件",reveal:"显示",download:"下载",close:"关闭",moreActions:"更多操作",refresh:"刷新",assumedResolution:"此链接按当前工作区解析:{path}",truncatedNotice:"文件过大,仅显示前 {shown}(完整大小 {total}),可下载后查看全文",htmlMode:"HTML 预览模式",metadata:"元数据",markdownMode:"Markdown 预览模式",markdownCode:"代码",preview:"预览",source:"源码",imageFit:"图片缩放",fit:"适应",actual:"原始",pdfNoPreview:"无法内嵌预览此 PDF,可以下载后查看",imageNoPreview:"图片文件 · {mime} · {size} · 暂不预览",binaryNoPreview:"无法预览此文件({mime} · {size}),可用其他应用打开",unknownType:"未知类型",copyCode:"复制代码",enlargeImage:"放大图片",errors:{emptyPath:"文件路径为空",unsupportedPath:"不支持预览 URL 或远程路径",outsideWorkspace:"只能预览当前 workspace 内的文件",isDirectory:"请选择具体文件,而不是目录",notFound:"文件不存在或已被移动",notFoundInWorkspace:"当前工作区中找不到 {path},它可能属于其他项目或目录",tooLarge:"文件过大,暂不支持预览",loadFailed:"无法读取这个文件"}},B2e={copyImage:"复制图片",copyPath:"复制路径",saveAs:"另存为…",reveal:"在文件夹中显示",openDefault:"用默认应用打开",prevImage:"上一张",nextImage:"下一张",copyFailed:"复制失败",saveFailed:"保存失败",revealFailed:"无法打开所在文件夹",openFailed:"无法打开文件"},z2e={searching:"搜索中…",noMatch:"无匹配",files:"文件",skills:"技能",openSkill:"打开技能文件",copyPath:"复制路径",attachmentUploadFailed:"添加附件失败,删除该附件或重新拖入文件重试",attachmentUploadInterrupted:"添加附件中断,删除该附件或重新拖入文件重试",viewFullscreen:"全屏查看",mediaPreviewLoading:"预览加载中…",mediaPreviewUploading:"正在添加附件,完成后可预览",mediaPreviewUnavailable:"预览不可用",stateUploading:"准备中",stateUploaded:"待发送",stateUploadFailed:"准备失败"},H2e={dismiss:"关闭",errorLabel:"错误",noteLabel:"提示",agentWarningFallback:"agent 警告",unhandledEvent:"未处理的事件:{type}",agentError:{title:"模型请求失败",connection:"无法连接模型服务",auth:"模型认证失败",rateLimit:"模型请求被限流",overloaded:"模型服务过载",filtered:"响应被提供方过滤",api:"模型接口返回错误",contextOverflow:"上下文超出模型限制"},details:{cause:"底层原因",code:"错误码",connection:"连接状态",contentType:"响应类型",details:"服务端详情",duration:"耗时",endpoint:"请求地址",errorName:"错误类型",message:"错误信息",operation:"操作",phase:"失败阶段",request:"请求",requestId:"Request ID",responsePreview:"响应预览",sessionId:"Session ID",stack:"堆栈",status:"HTTP 状态",timeout:"超时设置",timestamp:"时间"},daemonApiTitle:"请求出错",daemonNetworkMessage:"没有收到 Kimi Code 服务的响应。请确认它仍在运行,或刷新页面重试。",daemonNetworkTitle:"无法连接",daemonTimeoutMessage:"Kimi Code 服务在等待时限内没有响应。操作可能仍在后台执行,请稍后刷新确认结果,或重试。",daemonTimeoutTitle:"响应超时",diagnostics:"诊断信息",hideDetails:"收起详情",operationFailedMessage:"刚才的操作没有完成,请稍后重试。",operationFailedTitle:"操作失败",sendFailedTitle:"发送失败",sendFailedNoDefaultModelMessage:"默认模型未配置,请到设置中重新选择模型",sessionOccupied:{title:"会话被占用",message:"该会话正在被其他 Kimi Code 进程使用;请停止其他进程中的会话或退出该进程后重试",messageWithClient:"该会话正在被另一个 {client} 实例使用;请停止该实例中的会话或退出后重试",retry:"重试",stillTitle:"会话仍被占用",takeoverMessage:"如果另一个 Kimi Code 进程仍在运行,接管可能会导致会话记录错乱。",takeover:"接管"},sessionStale:{title:"会话已更新",message:"该会话已被其他 Kimi Code 进程更新",retryMessage:"该会话已被其他 Kimi Code 进程更新,请确认后重新执行"},sessionSnapshotMessage:"没能加载当前会话内容。请确认 Kimi Code 服务仍在运行,或刷新页面重试。",sessionSnapshotTitle:"无法加载当前会话内容",showDetails:"查看详情",copyDetails:"复制诊断信息",copied:"已复制",wsTitle:"实时连接出错",goal:{alreadyExists:"当前会话已有一个进行中的目标,请先取消它再创建新目标。",notFound:"没有找到可操作的目标,可能它已经结束或被取消。",statusInvalid:"当前目标状态不支持这个操作。",notResumable:"这个目标无法恢复(可能已取消或已完成)。",objectiveTooLong:"目标描述太长了,请精简后重试。"}},j2e={new:{desc:"创建新会话"},clear:{desc:"清空并新建会话"},login:{desc:"在浏览器中登录 Kimi"},plan:{desc:"切换计划模式 开/关"},swarm:{desc:"切换 swarm 模式;/swarm <任务> 直接在 swarm 下执行"},tower:{desc:"切换 tower 模式;/tower 以指定 base 分支开启"},goal:{desc:"创建/控制目标:/goal <目标>、/goal pause{'|'}resume{'|'}cancel"},btw:{desc:"侧边聊天:/btw <问题> 向 fork 的侧边会话提问",argHint:"[问题]"},compact:{desc:"压缩会话历史",argHint:"[说明]"},compactQueue:{queued:"已加入队列,轮到时会自动执行 /compact",alreadyQueued:"已有排队中的 /compact",compacting:"正在压缩上下文,请等待完成后再试",skippedAuto:"已跳过排队的 /compact:上下文刚被自动压缩"},fork:{desc:"把当前会话 fork 出一个新会话"},reload:{desc:"重新加载会话以应用外部变更(AGENTS.md / skills / 配置)",busy:"会话正在生成中,请等待当前回合完成后再重新加载。",archived:"已归档的会话不能重新加载,请先恢复会话。"},export:{desc:"将当前会话和排障日志下载为 ZIP 压缩包",noSession:"请先打开一个会话再导出。",started:"正在导出会话…",done:"会话导出完成。",tooLarge:"会话数据超过导出大小限制,可在终端用 CLI 导出:kimi export {sessionId} -o session.zip"},status:{desc:"查看会话状态"},undo:{desc:"撤销上一条消息"}},W2e={browser:{noClickTarget:"未点击:未命中可交互元素",nearbyCount:"附近 {count} 个元素",element:"页面元素",text:"“{text}”",textInElement:"“{text}” · {target}",keysOnElement:"{keys} · {target}",optionInElement:"{option} · {target}",option:"第 {index} 项",elementsCount:"{count} 个元素",elementsAtLeast:"至少 {count} 个元素",tabsCount:"{count} 个标签页",up:"向上",down:"向下",left:"向左",right:"向右",activity:{pages:"浏览了 {count} 个页面",pagesRead:"浏览了 {count} 个页面,读了 {read} 个",livePages:"已浏览 {count} 个页面",read:"读了 {count} 个页面",liveRead:"已读 {count} 个页面",doing:"{action}「{target}」",otherFailed:"另有 {count} 次失败",retried:"重试 {count} 次",breakdown:"共 {count} 次浏览器操作:{items}",breakdownItem:"{action} {count}",breakdownFailed:"{action} {count}({failed} 失败)",breakdownSeparator:"、",actions:{click:"点击 {count} 次",fill:"填写 {count} 处",select:"选择 {count} 项",check:"切换勾选 {count} 次",screenshot:"截图 {count} 次",scroll:"滚动 {count} 次",press:"按键 {count} 次",drag:"拖动 {count} 次",hover:"悬停 {count} 次"}},sources:{label:"本轮浏览的页面",read:"来源 · 读了 {count} 个页面",readAndPassed:"来源 · 读了 {read} 个页面 · 经过 {passed} 个页面",visited:"来源 · 浏览了 {count} 个页面",readGroup:"读过的页面",passedGroup:"经过的页面",readTag:"已读",passedTag:"经过",visits:"打开 {count} 次",openSidebar:"在右侧浏览器打开",openExternal:"用系统浏览器打开",copy:"复制链接",copied:"已复制链接",dialogs:"{count} 个网页对话框",dialogsGroup:"网页对话框",dialogAnswer:"回答:{text}"},retry:{chip:"重试 {count} 次",attempts:"完整经过({count} 次调用)"},live:{view:"查看",viewLabel:"打开右侧面板,查看 Agent 正在操作的网页",thumb:"最近一次操作前的画面"},detail:{rest:"其他字段",raw:"原始数据",rawRequest:"请求",rawResult:"结果",unreadable:"无法解析结果,以下为原始数据。",yes:"是",no:"否",empty:"—",items:"{count} 项",blocks:"{count} 段",changes:"这一步之后的变化",unchanged:"页面状态没有变化",unchangedNote:"未变化的字段列在「其他字段」中。",urlExpand:"展开",urlCollapse:"收起",receiptOpen:"查看操作前画面",receiptMissing:"这张截图已不可用,可能已过期或被删除。",receiptDesktopOnly:"这张截图保存在桌面应用中。",receiptStrip:"本组操作前画面",blockPart:"第 {part} 部分",blockContinued:"未完",openShot:"查看大图",titles:{elements:"页面元素",text:"页面文字",candidates:"点击目标与附近元素",tabs:"标签页",history:"浏览历史",downloads:"下载",deviceProfiles:"设备预设",shot:"截图",receipt:"操作前画面",location:"操作位置"},relation:{target:"目标",nearby:"附近"},facts:{target:"目标",url:"网址",text:"文字",replace:"替换原内容",keys:"按键",optionValue:"选项值",optionLabel:"选项文字",optionIndex:"选项序号",checked:"勾选",point:"坐标",from:"起点",to:"终点",deltaX:"横向滚动",deltaY:"纵向滚动",button:"鼠标键",clickCount:"点击次数",radius:"搜索半径",region:"区域",loadState:"加载阶段",conditionKind:"条件类型",locatorRole:"元素角色",locatorName:"元素名称",locatorExact:"精确匹配",conditionState:"期望状态",conditionText:"等待文字",conditionValue:"等待网址",conditionMatch:"匹配方式",timeout:"超时",stableFor:"稳定时长",scope:"范围",scopeTarget:"范围元素",filterRole:"角色筛选",filterText:"文字筛选",cursor:"续读游标",deviceEnabled:"设备模拟",deviceProfile:"设备",deviceOrientation:"方向",evidenceKind:"观察类型",evidenceValue:"观察到",evidenceCount:"匹配数量",evidenceScanTruncated:"扫描被截断",total:"总数",truncated:"已截断",scanTruncated:"扫描被截断",nextCursor:"下一页游标",capturedAt:"捕获时间",matched:"已满足",elapsed:"耗时",outcome:"结果",message:"说明",searchRadius:"使用的搜索半径",candidatesTruncated:"候选被截断",needsVisualConfirmation:"需要视觉确认",available:"浏览器可用",panelVisible:"面板可见",controlledTab:"受控标签页",visibleTab:"可见标签页",imageSize:"图片尺寸",viewport:"视口",deviceScaleFactor:"设备像素比",cropAvailable:"可裁剪",pageTitle:"页面",pageUrl:"当前网址",previousUrl:"之前的网址",loading:"加载中",canGoBack:"可后退",canGoForward:"可前进",controlled:"受控",visible:"可见"},columns:{ref:"引用",role:"角色",name:"名称",text:"文字",value:"值",state:"状态",relation:"关系",tagName:"标签",id:"ID",classes:"类名",clickable:"可点击",disabled:"已禁用",evidence:"依据",bounds:"位置",tabId:"标签页",title:"标题",url:"网址",visitedAt:"访问时间",filename:"文件名",received:"已接收",total:"总大小",startedAt:"开始时间",savePath:"保存位置",profileId:"设备",size:"尺寸",deviceScaleFactor:"设备像素比",mobile:"移动端",touch:"触控",orientation:"方向",controlled:"受控",visible:"可见",loading:"加载中"},states:{disabled:"已禁用",checked:"已勾选",unchecked:"未勾选",selected:"已选中",expanded:"已展开",collapsed:"已收起",offscreen:"屏幕外"},errors:{SNAPSHOT_EXPIRED:"快照已过期,需要重新读取页面。",OUTPUT_LIMIT:"结果超过了输出上限。",BROWSER_USER_TAKEOVER:"你已接管浏览器,本轮不再自动操作。",INVALID_REQUEST:"请求参数不符合浏览器协议。",BROWSER_UNAVAILABLE:"内置浏览器当前不可用。",TAB_NOT_FOUND:"找不到这个标签页,它可能已被关闭。",TAB_NOT_ACTIVE:"这个标签页还未被选为受控标签页。",NAVIGATION_FAILED:"页面导航失败。",CANNOT_GO_BACK:"没有可后退的历史记录。",CANNOT_GO_FORWARD:"没有可前进的历史记录。",WAIT_TIMEOUT:"等待超时,条件始终未满足。",OPERATION_ABORTED:"操作被中止。",STALE_SNAPSHOT:"截图已失效,页面在截图之后发生了变化。",COORDINATE_OUT_OF_BOUNDS:"坐标超出了截图范围。",PAGE_NOT_READY:"页面尚未准备好,稍后重试。",STALE_ELEMENT:"元素快照已失效,页面在读取之后发生了变化。",ELEMENT_NOT_FOUND:"在页面上找不到这个元素。",ELEMENT_NOT_INTERACTABLE:"元素当前无法交互,可能被遮挡、禁用或不可见。",UNSUPPORTED_ELEMENT:"这种元素不支持该操作。",INTERNAL_ERROR:"浏览器内部错误。"}},actions:{waitCondition:{approval:"等待页面满足条件",running:"正在等待页面满足条件",ok:"页面已满足条件",error:"等待页面条件失败"},crop:{approval:"查看截图细节",running:"正在查看截图细节",ok:"已查看截图细节",error:"查看截图细节失败"},readText:{approval:"读取页面文字",running:"正在读取页面文字",ok:"已读取页面文字",error:"读取页面文字失败"},guardedClick:{approval:"检查并点击页面控件",running:"正在检查点击目标",ok:"已点击控件",error:"检查或点击失败"},listHistory:{approval:"查看浏览历史",running:"正在查看浏览历史",ok:"已查看浏览历史",error:"查看浏览历史失败"},listDownloads:{approval:"查看下载记录",running:"正在查看下载记录",ok:"已查看下载记录",error:"查看下载记录失败"},listDevices:{approval:"查看设备预设",running:"正在查看设备预设",ok:"已查看设备预设",error:"查看设备预设失败"},setDevice:{approval:"更改设备模式",running:"正在设置设备模式",ok:"已设置设备模式",error:"设置设备模式失败"},inspectBrowser:{approval:"查看浏览器状态",running:"正在查看浏览器",ok:"已查看浏览器",error:"查看浏览器失败"},showBrowser:{approval:"打开浏览器面板",running:"正在显示浏览器",ok:"已显示浏览器",error:"显示浏览器失败"},createTab:{approval:"新建标签页",running:"正在新建标签页",ok:"已新建标签页",error:"新建标签页失败"},switchTab:{approval:"显示标签页",running:"正在切换标签页",ok:"已切换标签页",error:"切换标签页失败"},activateTab:{approval:"接管标签页",running:"正在接管标签页",ok:"已接管标签页",error:"接管标签页失败"},releaseTab:{approval:"释放标签页控制权",running:"正在释放标签页",ok:"已释放标签页",error:"释放标签页失败"},closeTab:{approval:"关闭标签页",running:"正在关闭标签页",ok:"已关闭标签页",error:"关闭标签页失败"},inspectPage:{approval:"查看页面状态",running:"正在查看页面",ok:"已查看页面",error:"查看页面失败"},navigate:{approval:"打开页面",running:"正在打开页面",ok:"已打开页面",error:"打开页面失败"},search:{approval:"搜索网页",running:"正在搜索",ok:"已搜索",error:"搜索失败"},back:{approval:"返回上一页",running:"正在后退",ok:"已后退",error:"后退失败"},forward:{approval:"前往下一页",running:"正在前进",ok:"已前进",error:"前进失败"},reload:{approval:"刷新页面",running:"正在刷新页面",ok:"已刷新页面",error:"刷新页面失败"},stop:{approval:"停止加载页面",running:"正在停止加载",ok:"已停止加载",error:"停止加载失败"},wait:{approval:"等待页面加载",running:"正在等待页面加载",ok:"页面已加载",error:"等待页面加载失败"},screenshot:{approval:"截取页面截图",running:"正在截取页面",ok:"已截取页面",error:"页面截图失败"},click:{approval:"点击页面元素",running:"正在点击",ok:"已点击",error:"点击失败"},doubleClick:{approval:"双击页面元素",running:"正在双击",ok:"已双击",error:"双击失败"},rightClick:{approval:"右键点击页面元素",running:"正在右键点击",ok:"已右键点击",error:"右键点击失败"},hover:{approval:"悬停在页面元素上",running:"正在悬停",ok:"已悬停",error:"悬停失败"},scroll:{approval:"滚动页面",running:"正在滚动页面",ok:"已滚动页面",error:"滚动页面失败"},drag:{approval:"拖拽页面元素",running:"正在拖动",ok:"已拖动",error:"拖动失败"},fill:{approval:"填写页面字段",running:"正在填写",ok:"已填写",error:"填写失败"},type:{approval:"输入文本",running:"正在输入",ok:"已输入",error:"输入失败"},press:{approval:"发送按键",running:"正在按键",ok:"已按下",error:"按键失败"},elements:{approval:"查看页面元素",running:"正在查看页面元素",ok:"已查看页面元素",error:"查看页面元素失败"},select:{approval:"选择选项",running:"正在选择",ok:"已选择",error:"选择失败"},check:{approval:"勾选选项",running:"正在勾选",ok:"已勾选",error:"勾选失败"},uncheck:{approval:"取消勾选选项",running:"正在取消勾选",ok:"已取消勾选",error:"取消勾选失败"},reveal:{approval:"滚动至页面元素",running:"正在滚动到元素",ok:"已滚动到元素",error:"滚动到元素失败"},other:{approval:"使用浏览器",running:"正在操作浏览器",ok:"浏览器操作已完成",error:"浏览器操作失败"}}},label:{read:"读取",bash:"运行",edit:"编辑",write:"写入",grep:"搜索",glob:"查找",ls:"列目录",web_fetch:"抓取",search:"搜索",todo:"待办",task:"任务",swarm:"Swarm",ask_user:"提问",plan:"计划",goal_create:"启动目标",goal_get:"读取目标",goal_budget:"设置目标预算",goal_update:"更新目标",waitfor:"等待",task_list:"列出任务",task_output:"读取任务输出",task_stop:"停止任务",cron_create:"创建定时任务",cron_create_once:"创建单次定时任务",cron_list:"定时任务列表",cron_delete:"删除定时任务",notify_user:"进展",skill:"Skill"},cron:{none:"没有定时任务",field:{id:"标识符",cron:"Cron 表达式",schedule:"周期",prompt:"提示词",recurring:"重复",nextFireAt:"下次触发"},recurring:{yes:"周期",no:"单次"},schedule:{everyMinute:"每分钟",everyNMinutes:"每 {n} 分钟",hourlyAt:"每小时第 {minute} 分钟",dailyAt:"每天 {time}",weekdaysAt:"工作日 {time}",weeklyAt:"每{day} {time}",monthlyAt:"每月 {day} 日 {time}",yearlyAt:"每年 {date} {time}",onceAt:"{date} {time}",dateMD:"{month}月{day}日",day:{0:"周日",1:"周一",2:"周二",3:"周三",4:"周四",5:"周五",6:"周六"},monthShort:{1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",10:"10",11:"11",12:"12"}}},waitfor:{waitingAny:"等待任一后台任务",waitingTask:"等待 {id}",noTasks:"没有后台任务在运行",timedOut:"等待超时",interrupted:"收到新输入,等待已中断",stillRunning:"{count} 个仍在运行",moreRunning:"还有 {count} 个",result:{completed:"有任务已完成",interrupted:"被新输入中断"},field:{result:"结果",task:"任务",taskStatus:"任务状态",description:"描述",waited:"已等待",timeout:"超时时间",finishedDuringWait:"等待期间完成",stillRunning:"仍在运行",runningTasks:"运行中的任务",warning:"提醒"}},bgTask:{active:"运行中的任务",all:"全部任务",count:"{count} 个任务",none:"没有后台任务",truncated:"输出已截断",kind:{process:"命令",agent:"Agent",question:"提问"},status:{running:"运行中",completed:"已完成",failed:"失败",timed_out:"超时",killed:"已停止",lost:"丢失"},field:{status:"状态",kind:"类型",command:"命令",pid:"PID",exit_code:"退出码",subagent_type:"Agent 类型",model:"模型",reason:"原因",stop_reason:"原因",output_path:"输出文件"}},swarm:{progress:"{done} / {total}",runningSub:"{count} 个进行中",doneSub:"完成 {completed} · 失败 {failed}",doneSubWithCancelled:"完成 {completed} · 失败 {failed} · 已取消 {cancelled}",phaseWorking:"进行中",phaseQueued:"排队中",phaseSuspended:"已暂停",phaseCompleted:"已结束",phaseFailed:"错误",phaseCancelled:"取消",waiting:"等待子任务加入…"},chip:{lines:"{count} 行",results:"{count} 结果",files:"{count} 个文件",edited:"已编辑",created:"已创建",todos:"{count} 项"},disclosure:{expand:"展开详情",collapse:"收起详情"},agent:{foreground:"前台",background:"后台",foregroundAgent:"Agent",backgroundAgent:"后台 Agent",status:{running:"运行中",ok:"已完成",error:"失败",cancelled:"已取消"}},notifyUser:{posting:"正在发布进展…"},output:{waiting:"等待输出…",empty:"(无输出)"},plan:{review:{pending:"待确认",approved:"已通过",rejected:"已拒绝",cancelled:"已取消"},selectedOption:"已选择",pathOnlyHint:"该计划未保存内联内容,可在侧边栏打开:",feedback:"反馈"},summary:{inScope:"{value} 在 {scope} 中"},goal:{objectiveWithCriterion:"{objective} · {criterion}",status:"状态:{status}",budget:"{value} {unit}",turns:"{value} 轮",tokens:"{value} token",milliseconds:"{value} 毫秒",seconds:"{value} 秒",minutes:"{value} 分钟",hours:"{value} 小时"},group:{countOther:"执行了 {count} 次工具调用",typed:{read:{done:"读取了 {count} 个文件"},bash:{done:"运行了 {count} 条命令"},grep:{done:"搜索了 {count} 个模式"},search:{done:"网络搜索了 {count} 次"},glob:{done:"找了 {count} 次文件"},ls:{done:"列出了 {count} 个目录"},web_fetch:{done:"抓取了 {count} 个页面"},edit:{done:"编辑了 {count} 处"},write:{done:"写入了 {count} 个文件"},browser:{done:"执行了 {count} 次浏览器操作"}}},activity:{failedClause:"({count} 失败)",liveDonePrefix:"已",busy:"正在执行…",doing:{read:"正在读取 {subject}",bash:"正在运行命令",grep:"正在搜索 {subject}",search:"正在搜索 {subject}",glob:"正在匹配 {subject}",ls:"正在列出 {subject}",web_fetch:"正在抓取 {subject}",edit:"正在编辑 {subject}",write:"正在写入 {subject}",browser:"正在操作浏览器"}},ask:{dismissed:"已忽略",answer:"{count} 个回答",answers:"{count} 个回答",answered:"已回答",more:"(还有 {count} 个)",collected:"用户回答收集",unanswered:"未作答"}},q2e={resizeHandleAria:"调整侧栏宽度",resizePreviewAria:"调整预览面板宽度",detailPanelAria:"详情面板"},V2e={openSwitcher:"切换会话 / 工作区",openSettings:"会话设置",settingsTitle:"设置",groupSession:"当前会话",groupApp:"应用偏好",groupAccount:"账号",sheetLabel:"面板",closeSheet:"关闭",tapToCycle:"点击切换",running:"运行中",idle:"空闲",sessionCount:"{n} 个会话",newSession:"新建会话",permManualSub:"仅自动读取,其余操作逐一向你确认",permAutoSub:"完全不打断,所有操作和判断自动完成",permYoloSub:"自动完成常规修改和命令;高危操作、提问和计划仍会问你",planModeSub:"计划模式",goalModeSub:"目标模式",swarmModeSub:"Swarm 模式",towerModeSub:"Tower 模式",archivedSessions:"已归档会话",archivedSessionsSub:"查看并恢复已归档会话",archivedBack:"返回",viewFlat:"平铺",viewGrouped:"按工作区"},U2e={colorSchemeLabel:"外观",light:"月之亮面",dark:"月之暗面",system:"跟随系统"},K2e={continue:"继续",back:"上一步",skip:"跳过",welcome:{title:"欢迎使用 Kimi Code",subtitle:"为专业开发者打造的 AI 编程工作台",languageLabel:"语言",themeLabel:"外观"},login:{title:"选择配置模型",subtitle:"选择驱动 Kimi Code 的模型服务,之后可在「设置」中更改。",kimiTitle:"登录 Kimi 账号",kimiHint:"使用 Kimi 会员权益,开箱即用",kimiCnTitle:"Kimi Code",kimiCnHint:"使用 kimi.com 账号登录",kimiOverseasTitle:"Kimi Code",kimiOverseasHint:"使用 kimi.ai 账号登录",customProviderTitle:"添加自定义供应商",customProviderHint:"使用自己的 API Key,接入 OpenAI 兼容等模型服务",loggedInTitle:"已登录 Kimi 账号",loggedInHint:"模型服务已就绪,可以开始使用",finish:"完成",skip:"跳过,稍后再说"}},Z2e={title:"设置",close:"关闭 (Esc)",tabs:{general:"通用",browser:"浏览器",agent:"智能体与会话",account:"账户",providers:"模型供应商",remoteControl:"远程控制",advanced:"关于",archived:"已归档的会话",shortcuts:"快捷键",plugins:"插件",lab:"实验室"},lab:{sidebarTabs:"多标签页的会话列表",sidebarTabsHint:"侧边栏显示「进行中 / 已完成 / 工作空间」三个标签页",notifyUser:"进展更新",notifyUserHint:"让 agent 在对话中发布进展更新,仅对之后新建的会话生效"},plugins:{retry:"重试",official:"官方",thirdParty:"第三方",installed:"已安装",install:"安装",update:"更新",remove:"移除",enabled:"启用",homepage:"主页",empty:"没有找到插件",hasErrors:"错误",customInstall:"安装自定义插件",customInstallPlaceholder:"https://… 或 /本地/目录",customInstallHint:"支持 https zip 链接、GitHub 仓库地址或本地目录路径。",extensionHintTitle:"还差一步:安装浏览器扩展",extensionGuide:"手动安装",dismissHint:"知道了",catalogUnavailable:"插件市场目录暂时不可达;已安装的插件仍可正常管理。",source:{"local-path":"本地","zip-url":"ZIP",github:"GitHub"},counts:{skill:"{n} 个技能",mcp:"{n} 个 MCP 服务",mcpEnabled:"启用 {n} 个",hook:"{n} 个钩子",command:"{n} 个命令"}},appearance:"外观",notifications:"通知",notifyEnabled:"系统通知",notifyEnabledHint:"回合完成、待回答或待审批时发送系统通知",notifySound:"通知提示音",notifySoundHint:"系统通知随附提示音",notifyDenied:"已在浏览器设置中被阻止",notifyTitle:"Kimi Code · 回合完成",notifyQuestionTitle:"Kimi Code · 待回答",notifyApprovalTitle:"Kimi Code · 等待审批",notifyFallback:"点击查看结果",notifyQuestionFallback:"有提问等待你回答",notifyApprovalFallback:"有工具等待你审批",account:"账户",signedIn:"已登录",signedOutHint:"登录后可查看账户和模型权益",planUsage:{title:"套餐用量",retry:"重试",loadFailed:"加载失败",empty:"暂无用量数据",weekLimit:"每周限额",hourLimit:"{n} 小时限额",resetsIn:"{duration}后重置",resetDone:"已重置",durationDay:"{n} 天",durationHour:"{n} 小时",durationMinute:"{n} 分钟",durationSecond:"{n} 秒",usedPct:"已使用 {pct}%",segmentUsage:"{name} 用量 {pct}%",boosterTitle:"加油包",boosterBalance:"余额",monthlyUsed:"本月已用",monthlyLimit:"每月限额",boosterLimit:"每月上限",unlimited:"不限",freeTitle:"免费账户",freeHint:"当前套餐暂不支持 Kimi 模型;升级会员,解锁 Kimi Code 完整体验"},colorSchemeHint:"选择应用的明暗外观",appIcon:"程序坞图标",appIconHint:"选择程序坞中显示的图标",appIconDefault:"默认",appIconBlack:"黑色",uiFontSize:"字体大小",uiFontSizeHint:"调整界面和消息文字大小",vibrancy:"毛玻璃侧栏",vibrancyHint:"在侧栏使用 macOS 原生毛玻璃材质——如果半透明影响阅读可以关闭",nativeTitleBar:"使用系统标题栏",nativeTitleBarHint:"显示桌面环境原生的标题栏和菜单栏,替代内置标题栏",nativeTitleBarRestartTitle:"重启以应用更改",nativeTitleBarRestartMessage:"切换标题栏样式需要重启 Kimi Code,现在重启吗?",nativeTitleBarRestartConfirm:"立即重启",languageHint:"选择界面显示语言",defaultOpenInApp:"默认打开应用",defaultOpenInAppHint:"从顶栏菜单打开文件和文件夹时默认使用的应用",openWith:"打开方式",agentDefaults:"Agent 默认值",saving:"保存中",defaultModel:"默认模型",defaultModelHint:"新会话会优先使用这个模型",noDefaultModel:"未设置默认模型",defaultPermission:"默认权限",defaultPermissionHint:"只影响之后新建的会话",defaultThinking:"默认开启思考",defaultThinkingHint:"新会话默认是否开启思考",defaultPlanMode:"默认计划模式",defaultPlanModeHint:"新会话默认进入计划模式",secondaryModelSection:"子智能体",secondaryModel:"子智能体模型",secondaryModelHint:"子智能体默认使用的模型与思考强度",secondaryModelEffort:"思考强度",noSecondaryModel:"未设置(跟随主模型)",secondaryModelEffortAuto:"模型默认",telemetry:"帮助改进 Kimi Code",telemetryHint:"开启后,我们会收集使用数据(如功能点击、使用情况统计),用于分析和改进产品体验。数据不包含你的代码和对话内容。你可以随时关闭。更改将在重启后生效。",sessionRatingPrompts:"会话评分提示",sessionRatingPromptsHint:"偶尔在 Kimi 回复后请你评价这次会话",credentialReady:"凭据已配置",credentialMissing:"缺少凭据",configUnavailable:"当前服务端没有返回 config,设置项暂不可用。",versionAndUpdates:"版本与更新",appVersion:"应用版本",appVersionHint:"当前应用的版本号",checkUpdate:"检查更新",checkUpdateHint:"手动检查是否有新版本",checkUpdateBtn:"立即检查",updateChecking:"检查中…",updateCheckLatest:"已是最新版本",updateCheckAvailable:"发现新版本 {version},可从侧边栏的更新入口下载",updateCheckUnsupported:"当前构建不支持检查更新",updateCheckFailed:"检查失败,请稍后重试",updateCheckAvailableAuto:"发现新版本 {version},正在后台下载",updateCheckDownloaded:"新版本 {version} 已就绪,可从侧边栏的更新入口重启安装",autoDownloadUpdate:"自动下载更新",autoDownloadUpdateHint:"发现新版本时在后台自动下载,重启后完成安装",canaryTargetVersion:"{version} 预发布",canaryUpdate:"更新 Canary",canaryImportStable:"从正式版导入界面设置…",canaryImportStableTitle:"从正式版导入界面设置",canaryImportStableHint:"把正式版的界面设置(置顶、外观等 localStorage 偏好)复制到 Canary 并覆盖当前设置(原设置自动备份为 leveldb.bak)。确认后 Canary 会重启完成导入;正式版需保持退出状态。",canaryImportStableBtn:"导入并重启",canaryImportStableRunning:"正式版(Kimi Code)正在运行——请先退出它,再重新导入。",canaryImportStableNoData:"没有找到正式版的界面设置数据。",canaryImportStableFailed:"导入失败:{error}",privacy:"数据与隐私",diagnostics:"诊断",agreements:"协议",userAgreement:"用户协议",privacyPolicy:"隐私协议",messageFolding:"消息折叠",turnFolding:"消息自动折叠",turnFoldingHint:"回合结束时自动折叠工作过程,仅展示总结",activityRunFolding:"工具调用汇总",activityRunFoldingHint:"回答过程中,连续的工具调用自动汇总为一行摘要",sessionTitleSection:"会话标题",autoSessionTitle:"自动生成标题",autoSessionTitleHint:"首个回合结束后,用 AI 为新会话生成标题,会消耗 Kimi 账号的订阅额度",build:"构建",serverVersion:"服务端版本",serverAddress:"服务器地址",serverAddressHint:"当前连接的服务器地址",serverVersionHint:"当前连接服务的版本",coreRef:"内置服务版本",coreRefHint:"内置服务对应的核心仓分支与提交",copyServerVersion:"复制服务端版本",copyServerAddress:"复制服务器地址",copied:"已复制",exportLog:"故障排查日志",exportLogHint:"导出已采集的故障排查日志",logHint:"加 ?debug=1 开启采集",exportLogBtn:"导出日志",archivedTitle:"已归档的会话",archivedDesc:"查看已归档会话,确认其所属工作区路径、会话名称和归档时间,并可恢复到会话列表。",archivedSearch:"搜索已归档会话",archivedAllWorkspaces:"所有工作区",archivedSortLabel:"排序方式",archivedSortArchived:"归档时间",archivedSortCreated:"创建时间",archivedSortName:"按字母顺序",archivedRestore:"恢复",archivedEmpty:"还没有归档的会话",archivedNoMatch:"没有匹配的已归档会话",archivedSessionsCount:"{count} 个会话",archivedAt:"归档于 {time}",archivedLoadMore:"加载更多",archivedLoading:"加载中…",archivedLoadingAll:"正在加载全部归档会话…"},G2e={openInEditor:"在编辑器中打开",openInEditorShort:"打开",openInApp:"用 {app} 打开",chooseOpenApp:"选择应用",copyAll:"复制全部对话为 Markdown",copyFinalSummary:"仅复制最终总结",copied:"已复制",lastUsed:"上次使用",copyPath:"复制路径",changed:"{n} 处改动",gitTooltip:"打开「文件 > 改动」",detached:"游离",openPr:"打开 Pull Request",prStatusOpen:"已打开",prStatusClosed:"已关闭",prStatusMerged:"已合并",prStatusDraft:"草稿",prStatusUnknown:"未知",options:"选项",copySessionId:"复制 Session ID",pinSession:"置顶",unpinSession:"取消置顶",renameSession:"重命名",forkSession:"分叉会话",archiveSession:"归档",markSessionDone:"标记为完成",reopenSession:"恢复进行中",exportSession:"导出会话",reloadSession:"重新加载会话",sessionReloaded:"会话已重新加载。",devBadge:"开发环境运行中"},Q2e={title:"侧边聊天",empty:"基于当前会话上下文的只读问答,关闭后对话无法恢复",placeholder:"询问当前会话相关的问题…",send:"发送",requiresSession:"请先打开一个会话,再使用侧边聊天"},Y2e={comment:"评论",addToChat:"添加到对话",commentPlaceholder:"写一句评论…",confirm:"确定",copyQuote:"复制引用",copyComment:"复制评论",quoteLabel:"引用"},J2e={actions:{nextPanelTab:{label:"下一个标签页",desc:"切换到下一个面板标签页"},previousPanelTab:{label:"上一个标签页",desc:"切换到上一个面板标签页"},summonApp:{label:"显示应用窗口",desc:"从任意位置将应用窗口唤起到前台"},captureScreenshot:{label:"截屏",desc:"从任意位置框选屏幕并评论"},newSession:{label:"新建会话",desc:"在当前工作区开始一个新会话"},closeSessionView:{label:"关闭页面",desc:"关闭当前会话并回到新建会话页;在新建会话页再按一次关闭窗口"},searchSessions:{label:"搜索会话",desc:"打开会话搜索弹窗"},archiveSession:{label:"完成任务",desc:"立即完成当前会话(可在已完成列表找回)"},toggleSideChat:{label:"侧边聊天",desc:"打开或关闭 /btw 侧边聊天"},toggleSidebar:{label:"展开/收起侧边栏",desc:"收起或展开会话侧边栏"},toggleRightPanel:{label:"展开/收起右侧面板",desc:"显示或隐藏右侧面板"},openFolder:{label:"打开文件夹",desc:"通过系统原生选择器添加工作目录"},openInDefaultApp:{label:"在默认应用中打开",desc:"在默认编辑器或终端中打开当前工作目录"},openSettings:{label:"打开设置",desc:"显示或隐藏设置窗口"},toggleTerminal:{label:"切换终端",desc:"显示或隐藏底部终端面板"},openDiffTab:{label:"打开改动",desc:"打开或激活工作区改动标签页"},toggleFilesPanel:{label:"文件树",desc:"打开或激活文件树标签页,已激活时收起右侧面板"},sidebarTabOpen:{label:"进行中标签页",desc:"切换到侧栏的进行中列表"},sidebarTabDone:{label:"已完成标签页",desc:"切换到侧栏的已完成列表"},sidebarTabWorkspaces:{label:"工作空间标签页",desc:"切换到侧栏的工作空间目录"},selectPrevSibling:{label:"上一条",desc:"在当前标签页中选中上一条会话 / 上一个工作空间"},selectNextSibling:{label:"下一条",desc:"在当前标签页中选中下一条会话 / 下一个工作空间"},send:{label:"发送消息",desc:"发送输入框中的内容"},newline:{label:"换行",desc:"在输入框中插入换行"}},searchPlaceholder:"搜索快捷键",unassigned:"未分配",unassign:"取消分配",edit:"编辑快捷键",reset:"恢复默认",resetAll:"全部恢复默认",recording:"按下新的快捷键…",invalid:"该按键组合不能用作快捷键",notGlobal:"该按键组合无法注册为系统级快捷键",globalTaken:"该快捷键已被系统或其他应用占用",channelDisabled:"当前版本不启用系统级截图快捷键",reserved:"系统菜单已占用该快捷键",reservedSteer:"steer 固定快捷键(Ctrl/Cmd+S),不可占用",reservedFind:"对话搜索固定快捷键(Ctrl/Cmd+F),不可占用",conflict:"已被「{action}」占用",customBadge:"自定义"},X2e={closeRunningTitle:"关闭正在运行的终端?",closeRunningMessage:"以下标签页中仍有程序运行,关闭会终止这些程序:",closeRunningConfirm:"终止程序并关闭",closeUnknown:"无法确认进程状态",panelAria:"终端",toolbarAria:"终端标签页",resizeAria:"调整终端面板高度",toggle:"切换终端",open:"打开终端",close:"关闭终端",newTab:"新建终端",closeTab:"关闭终端",restartTab:"重启终端",collapse:"收起终端面板",empty:"还没有终端,点击新建一个",outputTruncated:"[后台较早的输出已截断,以下为最新输出]",processExited:"[进程已退出]",processExitedWithCode:"[进程已退出,退出码 {code}]"},eve={compactionUnavailable:"摘要内容尚未加载,请在对话中加载相应的历史记录。",terminalRestoreFailed:"无法创建终端",closeOthers:"关闭其他标签页",closeToRight:"关闭右侧标签页",closeAll:"关闭所有标签页",tabs:{diff:"改动",file:"文件",files:"文件",turnDiff:"本轮改动",compaction:"压缩摘要",agent:"子 Agent",term:"终端",browser:"浏览器"},newTab:"新建标签页",closeTab:"关闭标签页",expand:"展开面板",collapse:"恢复面板",hide:"关闭右侧面板",openPanel:"打开右侧面板",launcherAria:"快速打开"},tve={saveDialog:{download:"保存下载文件",screenshot:"保存网页截图"},permissionPending:"等待网站权限",beforeUnload:{title:"离开此页面",message:"你所做的更改可能不会保存",stay:"留在此页",leave:"离开"},pageDialogs:{says:"{origin} 显示",pageSays:"此网页显示",ok:"确定",close:"关闭",cancel:"取消",promptLabel:"提供给网页的文本",leaveTarget:"下一个页面:{target}",leaveRepeatForm:"此页面正在提交表单。选择离开后,请重新提交。",leaveRepeatAction:"此页面会保持打开。选择离开后,请重新执行离开此页面的操作。",fileTitle:"{origin} 请求文件",fileMessage:"可接受的类型:{types}",fileAny:"网页请求上传文件。",chooseFiles:"选择文件…",uploadTitle:"允许上传?",uploadMessage:"要将以下文件(共 {count} 个)上传到 {origin} 吗?",allowOnce:"允许一次",deny:"拒绝",downloadTitle:"下载已保存",downloadMessage:"{file} 已保存到 {path}。",move:"移动…",keep:"保留",agentTab:"智能体操控中",agentTabHint:"智能体可以回答这个对话框,你也可以自己作答。",agentChose:"智能体选择了“{choice}”",agentRequestHint:"智能体请求上传这些文件,只有你可以允许。"},dialogRecords:{button:"已处理的网页对话框",title:"本次控制中的网页对话框",answeredBy:"{outcome}({answerer})",showInFolder:"在文件夹中显示",move:"移动…",kinds:{alert:"提示框",confirm:"确认框",prompt:"文本输入框",beforeunload:"离开此网站?",file:"文件选择",upload:"上传授权",download:"下载","external-app":"外部应用链接",print:"打印","screen-capture":"屏幕共享",bluetooth:"蓝牙配对","file-picker":"文件系统选择器"},outcomes:{accepted:"已确认",dismissed:"已取消",left:"已离开页面",stayed:"已留在页面",uploaded:"已上传文件",saved:"已保存",denied:"已拒绝","timed-out":"已超时",cancelled:"已被网页关闭",blocked:"已拦截","too-large":"已拦截:超出大小限制"},answerers:{agent:"Agent 处理",user:"你处理",auto:"自动处理"}},records:{searchHistory:"搜索历史记录",searchDownloads:"搜索下载记录",noResults:"没有匹配的记录",today:"今天",yesterday:"昨天"},sites:{permissionTitle:"网站权限请求",backToList:"返回网站列表",title:"网站设置",info:"网站信息",search:"搜索网站",all:"所有网站",empty:"还没有网站记录",cookies:"Cookie:{count}",deleteData:"删除网站数据",clearMessage:"删除 {origin} 的 Cookie 和本地数据?这可能会使你退出登录。",failed:"无法更新网站设置,请重试。",permissionRequest:"是否允许 {origin} 使用{permissions}?",allowOnce:"仅此次允许",allowAlways:"始终允许",block:"阻止",states:{ask:"询问",allow:"允许",block:"阻止"},systemPermissionDenied:"没有授予相应的系统权限",openSystemSettings:"打开系统设置",permissions:{location:"位置信息",camera:"摄像头",microphone:"麦克风",notifications:"通知",clipboard:"读取剪贴板",clipboardWrite:"写入剪贴板",fullscreen:"全屏",midi:"MIDI 设备",midiSysex:"MIDI 系统专有消息"}},controlPaused:"等待你继续",controlUnknown:"连接中断,控制状态未知",controlOverlayRunning:"Agent 正在操作",controlOverlayPaused:"Agent 已暂停,等待你继续",controlOverlayUnknown:"正在确认浏览器控制状态",controlElapsed:"已接管 {time}",controlTakeover:"我来接管",controlTakeoverHint:"停止 Agent 的浏览器操作,由你接管",controlPointer:"Agent",controlTyping:"正在输入",controlKey:"正在按键",controlScroll:"正在滚动",controlActivityTarget:"{activity}「{target}」",controlActivities:{reading:"正在读取页面文字",inspecting:"正在查看页面元素",capturing:"正在截取页面",clicking:"正在点击",hovering:"正在悬停",typing:"正在输入",pressing:"正在按键",selecting:"正在选择选项",checking:"正在切换勾选状态",scrolling:"正在滚动",dragging:"正在拖动",navigating:"正在打开页面",waiting:"正在等待页面",answering:"正在回应页面对话框"},controlledTab:"Agent 正在控制此标签页",controlOutOfView:"Agent 正在操作浏览器",forkTabsFailed:"会话已复制,但浏览器标签页复制失败",ariaLabel:"浏览器",navigationAria:"浏览器导航",back:"后退",forward:"前进",reload:"刷新",menuButton:"浏览器菜单",openInDefaultBrowser:"在默认浏览器中打开",menu:{emulateFocus:"总是保持焦点在页面上",findInPage:"在页面中查找",print:"打印",zoom:"缩放",zoomOut:"缩小",zoomReset:"重置缩放",zoomIn:"放大",showDeviceToolbar:"显示设备工具栏",hideDeviceToolbar:"隐藏设备工具栏",screenshot:"截取网页截图"},find:{placeholder:"在页面中查找",previous:"上一个匹配项",next:"下一个匹配项",close:"关闭查找"},device:{size:"尺寸",phones:"手机",foldables:"折叠屏手机",tablets:"平板电脑",desktops:"桌面",iphoneDuoInner:"iPhone Duo 内屏",iphoneDuoOuter:"iPhone Duo 外屏",resizewidth:"拖动调整页面宽度",resizeheight:"拖动调整页面高度",resizeboth:"拖动调整页面宽高","iphone-16":"iPhone 14 Pro / 16","iphone-16-pro":"iPhone 16 Pro / 17 / 17 Pro","iphone-16-pro-max":"iPhone 16 Pro Max / 17 Pro Max","pixel-8":"Pixel 8","pixel-9":"Pixel 9","desktop-1280":"桌面 1280 × 800","desktop-1440":"桌面 1440 × 900","desktop-1920":"桌面 1920 × 1080",background:"背景",backgroundAuto:"跟随主题",backgroundLight:"浅色背景",backgroundDark:"深色背景",toolbarAria:"设备仿真工具栏",dimensions:"尺寸:",responsive:"响应式",iphoneSe:"iPhone SE",iphone12Pro:"iPhone 12 Pro",iphone14Pro:"iPhone 14 Pro / 16",iphone14ProMax:"iPhone 14 Pro Max",pixel7:"Pixel 7",galaxyS20Ultra:"三星 Galaxy S20 Ultra",ipadMini:"iPad Mini",ipadPro13:"iPad Pro 13",width:"视口宽度",height:"视口高度",rotate:"旋转设备",scale:"显示比例",fitToWindow:"适应窗口"},settings:{searchEngine:"默认搜索引擎",searchEngineHint:"从地址框搜索时使用",title:"浏览器设置",sectionAria:"浏览器设置分区",agentControl:"允许 Agent 操控内置浏览器",agentControlHint:"关闭后新对话中的 Agent 无法使用浏览器,已用过浏览器的对话不受影响,你仍可在面板中正常浏览",downloadsPrompt:"每次下载前询问保存位置",downloadsPromptHint:"下载开始前显示保存对话框",agentDownloadLocation:"Agent 下载位置",agentDownloadLocationHint:"Agent 下载文件时使用的默认位置。Agent 的下载会直接保存到这里,不弹出对话框。",agentDownloadChoose:"选择…",agentDownloadReset:"恢复默认",agentDownloadAccess:"允许访问",agentDownloadAccessHint:"Agent 的下载会保存到“下载”文件夹,系统可能会请求允许 Kimi Code 访问该文件夹。",agentDownloadAccessRetry:"重试",agentDownloadFallback:"Kimi Code 无法访问“下载”文件夹,Agent 的下载将保存在这里。请在系统设置中授予访问权限后重试。",agentDownloadLimit:"Agent 下载大小上限",agentDownloadLimitHint:"超过此大小的 Agent 下载会被取消并删除。你自己的下载不受限制。",agentDownloadUnlimited:"不限制",defaultZoom:"默认缩放",defaultZoomHint:"应用到已打开和新建的浏览器标签页",clearData:"浏览数据",clearDataHint:"删除 Cookie、登录状态和网页缓存",userAgent:"用户代理",userAgentHint:"由已打开和新建的浏览器标签页、弹出窗口及 Worker 发送",userAgentDefault:"默认",userAgentCustom:"自定义",userAgentDefaultValue:"默认用户代理",userAgentCustomValue:"自定义用户代理",userAgentPlaceholder:"输入用户代理字符串",userAgentLoadPreset:"载入预设…",userAgentReset:"恢复默认",userAgentApply:"应用",userAgentInvalid:"用户代理不能为空,也不能包含控制字符",userAgentNewline:"用户代理只能是单行文本",userAgentTooLong:"用户代理不能超过 {max} 个字符",userAgentSaveFailed:"无法保存用户代理",userAgentCopy:"复制",userAgentCopied:"已复制",userAgentPresetBuiltIn:"内置",userAgentPresetSaved:"已保存",userAgentSavePreset:"存为预设…",userAgentSavePresetTitle:"保存用户代理预设",userAgentPresetName:"预设名称",userAgentPresetNamePlaceholder:"例如:测试环境 iPhone",userAgentPresetSave:"保存",userAgentPresetNameEmpty:"请输入预设名称",userAgentPresetNameTooLong:"预设名称不能超过 {max} 个字符",userAgentPresetNameInvalid:"预设名称不能包含控制字符",userAgentPresetNameDuplicate:"已存在同名预设",userAgentPresetsFull:"最多可保存 {max} 个预设,请先删除一个",userAgentPresetSaveFailed:"无法保存预设",userAgentDeletePreset:"删除预设 {name}",userAgentDeletePresetConfirm:"删除",userAgentConfirmDeletePreset:"确认删除预设 {name}",userAgentPresetDeleteFailed:"无法删除预设"},downloads:{title:"下载内容",empty:"暂无下载记录",clear:"清空下载记录",refresh:"刷新下载记录",completed:"已完成",progressing:"下载中",paused:"已暂停",cancelled:"已取消",interrupted:"已中断",fileMissing:"已删除",copyLink:"复制下载链接",linkCopied:"已复制链接",remove:"从列表中移除",showInFolder:"在文件夹中显示",pause:"暂停",resume:"继续",cancel:"取消",retry:"重试",recent:"最近下载",seeAll:"查看全部下载",status:{size:"{received}/{total}",speed:"{speed} - {status}",timeLeft:"{progress},还剩 {time}",paused:"已暂停 - {progress}"},timeLeft:{seconds:"{n} 秒",minutes:"{n} 分钟",hours:"{n} 小时",days:"{n} 天"},openDialog:{title:"打开文件",message:"要打开“{name}”吗?",detail:"文件将使用其默认应用打开。",open:"打开",cancel:"取消"},blockedDialog:{title:"未打开文件",message:"“{name}”是程序或脚本",detail:"Kimi Code 不会打开程序或脚本。你可以在文件所在的文件夹中找到它。",showInFolder:"在文件夹中显示",ok:"好"},openFailedDialog:{title:"无法打开文件",message:"无法打开“{name}”",detail:"可能没有能打开此类文件的应用,或系统拒绝了访问。",unavailable:"文件所在位置没有响应。请确认磁盘或网络位置可用后重试。",changed:"文件在此对话框打开期间发生了变化。",ok:"好"}},history:{title:"历史记录",empty:"暂无浏览记录",clear:"清空历史记录",refresh:"刷新历史记录"},tabMenu:{newToRight:"在右侧新建标签页",duplicate:"复制标签页",rename:"重命名标签页",copyUrl:"复制网址",openExternal:"在外部浏览器中打开",mute:"将标签页静音",unmute:"取消标签页静音",fork:"分叉会话",tabName:"标签页名称",saveName:"保存",automaticName:"留空则使用网页标题",actionFailed:"标签页操作失败",newTab:"新建浏览器标签页",close:"关闭标签页",closeOthers:"关闭其他标签页",closeToRight:"关闭右侧标签页"},addressAria:"网址",addressPlaceholder:"搜索或输入网址",clearData:"清空浏览数据",clearDataTitle:"清空浏览数据",clearDataMessage:"网站 Cookie、登录状态和缓存数据将被删除",clearDataConfirm:"清空",unavailable:"应用内浏览器暂不可用",invalidAddress:"输入有效网址",loadFailed:"网页加载失败",retry:"重试",empty:{title:"新标签页",lead:"在上方输入网址,或让 Agent:",items:{browse:{label:"浏览",detail:"打开网页、切换标签页,并把找到的内容展示给你"},read:{label:"读取",detail:"提取文本、列出页面元素并截图"},interact:{label:"交互",detail:"点击、输入、填写表单、选择选项和滚动"},layout:{label:"测试布局",detail:"在手机、平板或自定义尺寸下预览网页"},recall:{label:"回溯",detail:"搜索你的浏览历史和下载记录"}},footnote:"你可以随时查看 Agent 的操作并接管"}},nve={details:{item:"个",annotation:"标注",classes:"类名",geometry:"定位与几何",semantics:"语义与状态",data:"data-* 属性",source:"页面与捕获信息",pageTitle:"页面标题",url:"URL",capturedAt:"捕获时间",viewport:"视口",width:"宽",height:"高",zoom:"缩放",pixelRatio:"设备像素比",size:"尺寸",position:"位置",copy:"复制",insert:"插入评论",more:"展开其余",less:"收起",items:"个",base:"基础类 / 自定义",interaction:"交互状态",responsive:"响应式",theme:"主题",truncated:"部分属性过长或过多,未采集。",copied:"已复制",copyFailed:"复制失败,请选择文本复制。"},includeScreenshot:"随引用发送截图",regionScreenshot:"区域标注需要截图",capturedAt:"捕获于 {time}",screenshotUnavailable:"截图暂不可用。",screenshotUploading:"截图正在上传。",screenshotFailed:"截图暂不可用,请重试上传。",retryScreenshot:"重试上传截图",title:"标注网页",cancelPick:"取消标注",group:"网页",comment:"评论",commentPlaceholder:"描述希望如何修改,或直接加入输入框",add:"加入输入框",save:"保存",locate:"定位网页",saveAndLocate:"保存并定位",noComposer:"请先打开对话输入框。",failed:"标注失败:{message}",missing:"此标注的捕获资料不可用。",stale:"无法定位原元素,网页可能已发生变化。",named:"{kind}:{name}",numbered:"{kind} · {number}",kind:{button:"按钮",input:"输入框",image:"图片",link:"链接",heading:"标题",element:"元素",region:"区域"}},ive={title:"需要服务器 token",hint:"此服务器已开启访问保护。输入服务器启动时打印的 bearer token(或通过 {env} 设置的密码)。",tokenPlaceholder:"Token",connect:"连接",connecting:"连接中…"},ove={title:"远程控制",enable:"开启远程控制",enableHint:"开启后,可使用其他设备访问链接来控制本机智能体",enableFailed:"远程控制开启失败",disableFailed:"远程控制关闭失败",securityNote:"请保持本机唤醒并联网;出于安全考虑,请勿将链接分享给他人",statusOn:"远程控制已开启",statusLoadFailed:"远程控制状态加载失败",conflictTitle:"远程控制已由本机其他进程开启",conflictMeta:"运行中:PID {pid},{time} 起",conflictHint:"可以直接使用现有链接;也可以下线该进程,改由桌面端开启",takeover:"停止原进程,在桌面端启动",continueUsing:"保持原有进程",turnOff:"关闭远程控制",qrAlt:"远程访问链接二维码",qrCaption:"用手机扫码打开",copyLink:"复制链接",copied:"已复制",copyFailed:"复制失败,请重试",openLink:"打开链接",devicesTitle:"远程设备管理",refresh:"刷新",refreshDevices:"刷新设备列表",retry:"重试",devicesLoadFailed:"设备列表加载失败,请重试",emptyDevicesTitle:"还没有其他设备",emptyDevicesHint:"在另一台电脑上开启远程控制,设备会出现在这里",currentDevice:"本机",online:"在线",offline:"离线",deviceMenu:"设备操作",rename:"重命名",deactivate:"下线",delete:"删除",renamePlaceholder:"设备名称",renameFailed:"重命名失败,请重试",save:"保存",cancel:"取消",deactivateTitle:"下线 {name}",deactivateHint:"{name} 将断开远程控制,可在该设备上重新开启",deleteTitle:"删除 {name}",deleteHint:"{name} 将从设备列表中移除,可在该设备上重新开启远程控制",actionFailed:"操作失败,请重试"},sve={common:b2e,app:k2e,sidebar:w2e,admin:C2e,workspace:A2e,conversation:S2e,status:x2e,composer:_2e,login:I2e,devices:T2e,providers:M2e,model:E2e,sessions:L2e,approval:R2e,question:P2e,tasks:$2e,thinking:O2e,diff:F2e,fileTree:D2e,filePreview:N2e,mediaPreview:B2e,mention:z2e,warnings:H2e,commands:j2e,tools:W2e,layout:q2e,mobile:V2e,theme:U2e,onboarding:K2e,settings:Z2e,header:G2e,sideChat:Q2e,selection:Y2e,shortcuts:J2e,terminal:X2e,panel:eve,browser:tve,browserReference:nve,serverAuth:ive,remoteControl:ove},rve={en:y2e,zh:sve},ave="kimi-locale";function B2(){let e=null;try{e=globalThis.localStorage?.getItem(ave)??null}catch{e=null}return e==="en"||e==="zh"?e:globalThis.navigator?.language?.toLowerCase().startsWith("zh")?"zh":"en"}function lve(e){const t=e.locale??B2();return Cge({legacy:!1,locale:t,fallbackLocale:"en",messages:rve})}const nJ=Symbol("KimiI18n"),cve={t:e=>e};function Sm(){const e=Qt(nJ,null);if(e)return e;try{const t=Wt();return{t:(n,i)=>t.t(n,i),locale:t.locale.value}}catch{return cve}}const UI=Z(0),z2=R(()=>UI.value>0),KI=new Set;function iJ(e){KI.add(e),UI.value+=1;let t=!1;return()=>{t||(t=!0,KI.delete(e)&&(UI.value-=1))}}function FN(e){if(!e)return!1;for(const t of KI)if(t===e||t.contains(e))return!0;return!1}function uve(e){return typeof e=="object"&&e!==null&&typeof e.contains=="function"}function g2(e,t){let n;Fe([e,t],([i,o])=>{n?.(),n=void 0,i&&uve(o)&&(n=iJ(o))},{flush:"post",immediate:!0}),Kr(()=>{n?.(),n=void 0})}const tb="mcp__desktop_browser__run";function ad(e,t){const n=t??{h:"h",m:"m",s:"s"},i=Math.max(0,Math.floor(e/1e3));if(i<60)return i===0?"":`${i}${n.s}`;const o=Math.floor(i/60);if(o<60){const a=i%60;return a===0?`${o}${n.m}`:`${o}${n.m}${a}${n.s}`}const s=Math.floor(o/60),r=o%60;return r===0?`${s}${n.h}`:`${s}${n.h}${r}${n.m}`}const dve={multiedit:"multi_edit",multiedits:"multi_edit",shell:"bash",run:"bash",exec:"bash",ripgrep:"grep",rg:"grep",find:"glob",fetch:"web_fetch",webfetch:"web_fetch",url_fetch:"web_fetch",urlfetch:"web_fetch",list:"ls",listdir:"ls",list_dir:"ls",todowrite:"todo",todo_write:"todo",todoread:"todo",todolist:"todo",todo_list:"todo",agent:"task",subagent:"task",websearch:"search",web_search:"search",create_goal:"creategoal",get_goal:"getgoal",set_goal_budget:"setgoalbudget",update_goal:"updategoal",wait_for:"waitfor",task_list:"tasklist",task_output:"taskoutput",task_stop:"taskstop"};function lr(e){const t=(e??"").trim().toLowerCase().replace(/[\s-]+/g,"_");return dve[t]??t}const fve=/^\d+$/,hve=/^\*\/(\d+)$/;function cg(e,t,n){if(!fve.test(e))return;const i=Number.parseInt(e,10);return i>=t&&i<=n?i:void 0}function DN(e){return e<10?`0${e}`:String(e)}function pve(e,t,n=!0){return yR(e,t,n)??t}function yR(e,t,n=!0){const i=t.trim().split(/\s+/);if(i.length!==5)return;const[o,s,r,a,l]=i,c=s==="*",u=r==="*",d=a==="*",f=l==="*";if(!n&&(u||d||!f))return;if(c&&u&&d&&f){if(o==="*")return e("tools.cron.schedule.everyMinute");const y=hve.exec(o)?.[1];if(y!==void 0){const k=Number.parseInt(y,10);return k===1?e("tools.cron.schedule.everyMinute"):k>1&&k<=59&&60%k===0?e("tools.cron.schedule.everyNMinutes",{n:k}):void 0}const v=cg(o,0,59);return v===void 0?void 0:e("tools.cron.schedule.hourlyAt",{minute:v})}const h=cg(o,0,59),m=cg(s,0,23);if(h===void 0||m===void 0)return;const g=`${DN(m)}:${DN(h)}`;if(u&&d){if(f)return e("tools.cron.schedule.dailyAt",{time:g});if(l==="1-5")return e("tools.cron.schedule.weekdaysAt",{time:g});const y=cg(l,0,7);return y===void 0?void 0:e("tools.cron.schedule.weeklyAt",{day:e(`tools.cron.schedule.day.${y===7?0:y}`),time:g})}if(f){const y=cg(r,1,31);if(y===void 0)return;if(d)return e("tools.cron.schedule.monthlyAt",{day:y,time:g});const v=cg(a,1,12);if(v===void 0)return;const k=e("tools.cron.schedule.dateMD",{month:e(`tools.cron.schedule.monthShort.${v}`),day:y});return n?e("tools.cron.schedule.yearlyAt",{date:k,time:g}):e("tools.cron.schedule.onceAt",{date:k,time:g})}}const mve={read:"tools.label.read",bash:"tools.label.bash",edit:"tools.label.edit",multi_edit:"tools.label.edit",write:"tools.label.write",grep:"tools.label.grep",glob:"tools.label.glob",ls:"tools.label.ls",web_fetch:"tools.label.web_fetch",search:"tools.label.search",todo:"tools.label.todo",task:"tools.label.task",agentswarm:"tools.label.swarm",askuserquestion:"tools.label.ask_user",exitplanmode:"tools.label.plan",creategoal:"tools.label.goal_create",getgoal:"tools.label.goal_get",setgoalbudget:"tools.label.goal_budget",updategoal:"tools.label.goal_update",waitfor:"tools.label.waitfor",tasklist:"tools.label.task_list",taskoutput:"tools.label.task_output",taskstop:"tools.label.task_stop",croncreate:"tools.label.cron_create",cronlist:"tools.label.cron_list",crondelete:"tools.label.cron_delete",notifyuser:"tools.label.notify_user",skill:"tools.label.skill"};function oJ(e,t,n){const i=lr(t);if(i==="croncreate"&&n!==void 0&&rJ(n)?.recurring===!1)return e("tools.label.cron_create_once");const o=mve[i];return o?e(o):t}const sJ=80;function gve(e,t=sJ){const n=e.trim();return n.length>t?n.slice(0,t-1)+"…":n}function vve(e,t){const n=e.trim();return!!(n===""||n==="{}"||n==="[]"||n==="null"||t&&Object.keys(t).length===0)}function rJ(e){const t=e.trim();if(!t.startsWith("{"))return null;try{const n=JSON.parse(t);return n&&typeof n=="object"&&!Array.isArray(n)?n:null}catch{return null}}function Bi(e){return typeof e=="string"&&e.length>0?e:void 0}function e1(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function yve(e){try{const t=new URL(e),n=t.pathname.split("/").filter(Boolean)[0];return n?`${t.host}/${n}`:t.host}catch{return e.replace(/^https?:\/\//,"")}}function gS(e){return Bi(e.path)??Bi(e.file_path)??Bi(e.filePath)??Bi(e.filename)}const bve={active:"status.goalStatusActive",blocked:"status.goalStatusBlocked",complete:"status.goalStatusComplete"};function kve(e,t){const n=Bi(t);if(!n)return;const i=bve[n];return i?e(i):n}function wve(e,t){const n=e1(t.value),i=Bi(t.unit);if(!(n===void 0||!i))switch(i){case"turns":return e("tools.goal.turns",{value:n});case"tokens":return e("tools.goal.tokens",{value:n});case"milliseconds":return e("tools.goal.milliseconds",{value:n});case"seconds":return e("tools.goal.seconds",{value:n});case"minutes":return e("tools.goal.minutes",{value:n});case"hours":return e("tools.goal.hours",{value:n});default:return e("tools.goal.budget",{value:n,unit:i})}}function bR(e,t,n,i=!1){const o=(s,r=sJ)=>i?s.trim():gve(s,r);try{const s=rJ(n);if(!i&&vve(n,s))return"";const r=()=>o(n.replace(/^·\s*/,""));if(!s)return r();switch(lr(t)){case"read":{const a=gS(s);if(!a)return r();const l=e1(s.offset)??e1(s.line_start)??e1(s.start_line),c=e1(s.limit)??e1(s.length),u=e1(s.line_end)??e1(s.end_line)??(l!==void 0&&c!==void 0?l+c:void 0);return o(l!==void 0&&u!==void 0?`${a}:${l}-${u}`:l!==void 0?`${a}:${l}`:a)}case"write":{const a=gS(s);return a?o(`${a} ${e("tools.chip.created")}`):r()}case"edit":case"multi_edit":{const a=gS(s);return a?o(a):r()}case"bash":{const a=Bi(s.command)??Bi(s.cmd)??Bi(s.script);return a?a.trim():r()}case"grep":case"search":{const a=Bi(s.pattern)??Bi(s.query)??Bi(s.regex),l=Bi(s.path)??Bi(s.glob)??Bi(s.include);return a&&l?o(e("tools.summary.inScope",{value:a,scope:l})):a?o(a):r()}case"glob":{const a=Bi(s.pattern)??Bi(s.glob)??Bi(s.query),l=Bi(s.path)??Bi(s.cwd);return a&&l?o(e("tools.summary.inScope",{value:a,scope:l})):a?o(a):Bi(s.path)?o(Bi(s.path)):r()}case"ls":{const a=Bi(s.path)??Bi(s.dir)??Bi(s.directory)??Bi(s.cwd);return a?o(a):r()}case"web_fetch":{const a=Bi(s.url)??Bi(s.uri);return a?o(yve(a)):r()}case"todo":case"task":{const a=Bi(s.description)??Bi(s.title)??Bi(s.prompt)??Bi(s.name)??Bi(s.subagent_type);if(a)return o(a);const l=Array.isArray(s.todos)?s.todos:Array.isArray(s.items)?s.items:void 0;return l?o(e("tools.chip.todos",{count:l.length})):r()}case"creategoal":{if(i)return r();const a=Bi(s.objective),l=Bi(s.completionCriterion);return a&&l?o(e("tools.goal.objectiveWithCriterion",{objective:a,criterion:l})):a?o(a):r()}case"getgoal":return i?r():"";case"setgoalbudget":{if(i)return r();const a=wve(e,s);return a?o(a):r()}case"updategoal":{if(i)return r();const a=kve(e,s.status);return a?o(e("tools.goal.status",{status:a})):r()}case"croncreate":{if(i)return r();const a=Bi(s.cron);if(!a)return r();const l=yR(e,a,s.recurring!==!1);return l?o(l):""}case"crondelete":return i?r():"";case"skill":{const a=Bi(s.skill)??Bi(s.name);if(!a)return r();const l=Bi(s.args);return i?l?`${a} +${l}`:a:o(l?`${a} · ${l}`:a)}default:return r()}}catch{return n}}function Cve(e,t){try{switch(lr(t.name)){case"bash":return t.timing?t.timing:"";case"read":{if(t.output&&t.output.length>0){const n=t.output.length;return e("tools.chip.lines",{count:n})}return""}case"edit":case"multi_edit":case"write":{if(t.output){for(const i of t.output){const o=/\+(\d+)/.exec(i);if(o){let s=null;for(const r of i.slice(o.index+o[0].length).matchAll(/[-−](\d+)/g))s=r;if(s)return`+${o[1]} −${s[1]}`}}const n=t.output.find(i=>/\d+/.test(i));if(n){const i=n.match(/\+(\d+)/),o=n.match(/[-−](\d+)/);if(i||o)return`${i?`+${i[1]}`:""} ${o?`−${o[1]}`:""}`.trim()}if(t.status!=="error")return e("tools.chip.edited")}return""}case"grep":case"search":return t.output&&t.output.length>0?e("tools.chip.results",{count:t.output.length}):"";default:return""}}catch{return""}}const aJ=new Set(["read","bash","grep","search","glob","ls","web_fetch","edit","write","browser"]);function lJ(e){if(e===tb)return"browser";const t=lr(e);return t==="multi_edit"?"edit":t}function ZI(e){const t=[],n=new Map;for(const i of e){if(i.kind==="thinking")continue;const o=lJ(i.tool.name);let s=n.get(o);s||(s={count:0,errors:0,tools:[]},n.set(o,s),t.push(o)),s.count++,s.tools.push(i.tool),i.tool.status==="error"&&s.errors++}return{order:t,byKind:n}}function H2(e,t){return e.find(n=>n.kind===t)}function cJ(e,t,n){const i=t.flatMap(o=>{const s=H2(e,o)?.detail?.(n.get(o)?.tools??[]);return s?[s]:[]});return i.length>0?i.join(` +`):void 0}function uJ(e,t,n){return aJ.has(t)?e(`tools.group.typed.${t}.done`,{count:n}):e("tools.group.countOther",{count:n})}function dJ(e){return e.map(t=>t.fragments.map(n=>n.text).join("")).join(" · ")}function fJ(e,t,n){return{text:e("tools.activity.failedClause",{count:t}),tone:n}}function Ave(e,t,n={}){const i=n.providers??[],{order:o,byKind:s}=ZI(t),r=[];let a=!1;for(const l of o){const c=s.get(l);if(!c)continue;c.errors>0&&(a=!0);const u=H2(i,l)?.done(c.tools,!1);if(u){r.push(...u);continue}const d=[{text:uJ(e,l,c.count),tone:"normal"}];c.errors>0&&d.push(fJ(e,c.errors,"normal")),r.push({fragments:d})}for(const l of o){const c=H2(i,l)?.tail?.(s.get(l)?.tools??[],!1);c&&r.push(c)}if(n.durationMs!==void 0){const l=ad(n.durationMs);l&&r.push({fragments:[{text:l,tone:"faint"}]})}return{clauses:r,plain:dJ(r),hasError:a,detail:cJ(i,o,s)}}function Sve(e,t,n,i){if(t.kind==="thinking")return{fragments:[{text:e("thinking.streaming"),tone:"normal"}]};const o=lJ(t.tool.name),s=H2(n,o)?.doing?.(t.tool,i.get(o)?.tools??[]);if(s)return{fragments:[{text:s,tone:"normal"}]};if(o==="browser")return{fragments:[{text:e("tools.activity.doing.browser"),tone:"normal"}]};if(o==="bash")return{fragments:[{text:e("tools.activity.doing.bash"),tone:"normal"}]};let r=bR(e,t.tool.name,t.tool.arg);if(o==="write"&&r){const l=e("tools.chip.created");r.endsWith(l)&&(r=r.slice(0,r.length-l.length).trimEnd())}return{fragments:[{text:r&&aJ.has(o)?e(`tools.activity.doing.${o}`,{subject:r}):e("tools.activity.busy"),tone:"normal"}]}}function xve(e,t,n,i=[]){const o=t.filter(f=>f!==n&&!(f.kind==="tool"&&f.tool.status==="running")),{order:s,byKind:r}=ZI(o),a=e("tools.activity.liveDonePrefix"),l=[];for(const f of s){const h=r.get(f);if(!h)continue;const m=H2(i,f)?.done(h.tools,!0);if(m){l.push(...m);continue}const g=[{text:`${a}${uJ(e,f,h.count)}`,tone:"faint"}];h.errors>0&&g.push(fJ(e,h.errors,"faint")),l.push({fragments:g})}for(const f of s){const h=H2(i,f)?.tail?.(r.get(f)?.tools??[],!0);h&&l.push(h)}const c=n===null?null:Sve(e,n,i,r),u=c?[c,...l]:l,d=ZI(t);return{current:c,done:l,plain:dJ(u),detail:cJ(i,d.order,d.byKind)}}async function ys(e){const t=typeof navigator<"u"?navigator.clipboard:void 0;if(t&&typeof t.writeText=="function")try{return await t.writeText(e),!0}catch{}return _ve(e)}function _ve(e){if(typeof document>"u"||typeof document.execCommand!="function")return!1;const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="fixed",t.style.top="-9999px",t.style.left="-9999px",t.style.opacity="0",document.body.appendChild(t);let n=!1;try{t.focus(),t.select(),n=document.execCommand("copy")}catch{n=!1}finally{document.body.removeChild(t)}return n}const Ive={ts:"ts",tsx:"tsx",js:"js",jsx:"jsx",mjs:"js",cjs:"js",vue:"vue",svelte:"svelte",py:"py",rb:"rb",go:"go",rs:"rs",java:"java",kt:"kt",kts:"kts",scala:"scala",swift:"swift",c:"c",h:"c",cpp:"cpp",cc:"cpp",cxx:"cpp",hpp:"cpp",cs:"cs",php:"php",sh:"sh",bash:"bash",zsh:"zsh",fish:"fish",ps1:"ps1",bat:"bat",cmd:"bat",sql:"sql",graphql:"graphql",prisma:"prisma",html:"html",htm:"html",xml:"xml",svg:"xml",css:"css",scss:"scss",sass:"sass",less:"less",json:"json",jsonc:"jsonc",json5:"json5",yaml:"yaml",yml:"yml",toml:"toml",ini:"ini",md:"md",markdown:"markdown",mdx:"mdx",lua:"lua",r:"r",dart:"dart",zig:"zig",mk:"makefile",cmake:"cmake",diff:"diff",proto:"proto"},Tve={dockerfile:"dockerfile",makefile:"makefile","cmakelists.txt":"cmake"};function Mve(e){const t=e?.split(/[\\/]/).pop()?.toLowerCase()??"";if(!t)return;const n=Tve[t];if(n)return n;const i=t.lastIndexOf(".");if(!(i<=0))return Ive[t.slice(i+1)]}class Kf extends Error{code;requestId;details;timestamp;durationMs;constructor(t){super(t.msg),this.name="DaemonApiError",this.code=t.code,this.requestId=t.requestId,this.details=t.details,this.timestamp=t.timestamp,this.durationMs=t.durationMs}}class uc extends Error{cause;method;path;url;requestId;phase;timeoutMs;status;statusText;contentType;bodyPreview;timestamp;durationMs;constructor(t){super(t.message),this.name="DaemonNetworkError",this.cause=t.cause,this.method=t.method,this.path=t.path,this.url=t.url,this.requestId=t.requestId,this.phase=t.phase,this.timeoutMs=t.timeoutMs,this.status=t.status,this.statusText=t.statusText,this.contentType=t.contentType,this.bodyPreview=t.bodyPreview,this.timestamp=t.timestamp,this.durationMs=t.durationMs}}class w6 extends Error{size;limit;constructor(t){super(`file too large to preview: ${t.size} bytes (limit ${t.limit})`),this.name="FileTooLargeError",this.size=t.size,this.limit=t.limit}}function Ai(e){return e instanceof Kf||typeof e=="object"&&e!==null&&e.name==="DaemonApiError"&&typeof e.code=="number"}function yv(e){return e instanceof uc||typeof e=="object"&&e!==null&&e.name==="DaemonNetworkError"&&typeof e.method=="string"&&typeof e.path=="string"}function hJ(e){return yv(e)&&typeof e.cause=="object"&&e.cause!==null&&e.cause.name==="TimeoutError"}function pJ(e){return e instanceof w6||typeof e=="object"&&e!==null&&e.name==="FileTooLargeError"&&typeof e.limit=="number"}const Eve=41301,Lve=40901,Rve=40922;function NN(e){return Ai(e)&&e.code===Rve}const Pve=40932,kR=40931;function $ve(e){return Ai(e)&&e.code===Pve}function j2(e){return Ai(e)&&e.code===kR}function Ove(e){if(!Ai(e)||e.code!==kR)return;const t=e.details,n=typeof t=="object"?t?.holder?.clientIdentity:void 0;return typeof n=="string"&&n!==""?n:void 0}function Fve(e){if(!Ai(e)||e.code!==kR)return;const t=e.details,n=typeof t=="object"?t?.holder?.clientDisplayName:void 0;return typeof n=="string"&&n!==""?n:void 0}function Dve(e){const t=(e instanceof Error?e.message:String(e)).slice(0,140);return hJ(e)?{kind:"timeout",message:t}:yv(e)?{kind:"network",message:t}:Ai(e)?{kind:"api",message:t}:{kind:"unknown",message:t}}const Nve="kimi_desktop",Bve="platform",zve="kimi_native_titlebar",BN="kimi-desktop",zN="kimi-desktop-platform",HN="kimi-native-titlebar";function Hve(){let e=!1,t=null,n=!1;try{const i=new URLSearchParams(window.location.search);i.has(Nve)?(sessionStorage.setItem(BN,"1"),e=!0):e=e||sessionStorage.getItem(BN)==="1";const o=i.get(Bve);o?(sessionStorage.setItem(zN,o),t=o):t=sessionStorage.getItem(zN);const s=i.get(zve);s?(sessionStorage.setItem(HN,s),n=s==="1"):n=sessionStorage.getItem(HN)==="1"}catch{}return{isDesktop:e,platform:t,nativeTitleBar:n}}const GI=Hve(),bv=GI.isDesktop,F1=GI.isDesktop&&GI.platform==="darwin",jve=["faces","nature","food","activity","objects","symbols"],Wve=[["😀","faces","grinning smile happy 笑 开心"],["😄","faces","smile happy joy 笑 开心 高兴"],["😁","faces","grin beaming 咧嘴笑 开心"],["😂","faces","joy laugh tears 笑哭 爆笑"],["🤣","faces","rofl laugh rolling 笑翻 爆笑"],["😊","faces","blush shy happy 微笑 害羞"],["😉","faces","wink 眨眼"],["😍","faces","heart eyes love 爱心眼 喜欢 爱"],["🥰","faces","smiling hearts love 爱心 喜欢"],["😘","faces","kiss 飞吻 亲亲"],["😋","faces","yum tongue 好吃 馋"],["🤪","faces","zany crazy 鬼脸 疯"],["🤔","faces","thinking hmm consider 思考 想"],["🤨","faces","skeptical eyebrow 怀疑 挑眉"],["😐","faces","neutral meh 面无表情 无语"],["😑","faces","expressionless 面无表情 无语"],["🙄","faces","eye roll 翻白眼 无语"],["😶","faces","no mouth silent 无言 沉默"],["🫡","faces","salute 敬礼 收到"],["🤫","faces","shush quiet 嘘 安静"],["🤭","faces","oops giggle 捂嘴 偷笑"],["😴","faces","sleeping sleepy 睡觉 困"],["😪","faces","sleepy tired 困 疲惫"],["😷","faces","mask sick 口罩 生病"],["🤒","faces","sick fever 生病 发烧"],["🤕","faces","hurt bandage 受伤"],["🤢","faces","nauseated 恶心"],["🤯","faces","mind blown explode 震惊 爆炸"],["🥳","faces","party celebrate 庆祝 派对"],["🤩","faces","star struck 星星眼 激动"],["😎","faces","cool sunglasses 酷 墨镜"],["🥸","faces","disguise 伪装 假扮"],["🤓","faces","nerd geek 书呆子 学霸"],["😢","faces","cry sad 哭 难过"],["😭","faces","sob cry loudly 大哭 痛哭"],["😤","faces","triumph huff 哼 生气"],["😡","faces","angry rage mad 生气 愤怒"],["🤬","faces","swearing cursing 骂人 爆粗"],["😱","faces","scream fear 尖叫 害怕"],["😨","faces","fearful 害怕 恐惧"],["🥵","faces","hot heat 热 出汗"],["🥶","faces","cold freezing 冷 冻"],["🥴","faces","woozy drunk 晕 醉"],["😇","faces","angel innocent 天使 无辜"],["🙃","faces","upside down silly 倒脸 哭笑不得"],["💀","faces","skull dead 骷髅 笑死"],["👻","faces","ghost 鬼 幽灵"],["👍","faces","thumbs up like good 赞 好"],["👎","faces","thumbs down dislike 踩 差"],["👏","faces","clap applause 鼓掌 厉害"],["🙌","faces","raise hands celebrate 举手 庆祝"],["🙏","faces","pray thanks please 拜托 感谢 祈祷"],["💪","faces","muscle strong flex 加油 强壮 肌肉"],["👀","faces","eyes look watch 看 围观 眼睛"],["🤝","faces","handshake deal 握手 合作"],["✌️","faces","victory peace 胜利 耶"],["👋","faces","wave hello bye 挥手 你好 再见"],["🤞","faces","crossed fingers luck 祈祷 好运"],["👌","faces","ok okay 好的 可以"],["🫶","faces","heart hands love 比心 爱心"],["✍️","faces","writing hand 写字 记录"],["🧠","faces","brain smart 大脑 聪明"],["🦾","faces","mechanical arm 机械臂 力量"],["👤","faces","person user profile 个人 用户"],["👥","faces","people team group 团队 多人"],["🐶","nature","dog puppy 狗 小狗"],["🐱","nature","cat kitten 猫 小猫"],["🐭","nature","mouse rat 老鼠"],["🐹","nature","hamster 仓鼠"],["🐰","nature","rabbit bunny 兔子"],["🦊","nature","fox 狐狸"],["🐻","nature","bear 熊"],["🐼","nature","panda 熊猫"],["🐨","nature","koala 考拉"],["🐯","nature","tiger 老虎"],["🦁","nature","lion 狮子"],["🐮","nature","cow 牛"],["🐷","nature","pig 猪"],["🐸","nature","frog 青蛙"],["🐵","nature","monkey 猴子"],["🐔","nature","chicken 鸡"],["🐧","nature","penguin 企鹅"],["🐦","nature","bird 鸟"],["🐣","nature","chick hatching 小鸡 孵化"],["🦆","nature","duck 鸭子"],["🦉","nature","owl 猫头鹰"],["🐝","nature","bee 蜜蜂"],["🐛","nature","bug caterpillar 虫子 毛虫"],["🦋","nature","butterfly 蝴蝶"],["🐌","nature","snail slow 蜗牛 慢"],["🐢","nature","turtle slow 乌龟 慢"],["🐍","nature","snake 蛇"],["🐙","nature","octopus 章鱼"],["🦑","nature","squid 鱿鱼"],["🦐","nature","shrimp 虾"],["🦀","nature","crab 螃蟹"],["🐠","nature","tropical fish 鱼 热带鱼"],["🐳","nature","whale 鲸鱼"],["🦈","nature","shark 鲨鱼"],["🐊","nature","crocodile 鳄鱼"],["🦄","nature","unicorn 独角兽"],["🐴","nature","horse 马"],["🐑","nature","sheep 羊 绵羊"],["🐐","nature","goat 山羊"],["🦜","nature","parrot 鹦鹉"],["🌸","nature","blossom flower sakura 樱花 花"],["🌹","nature","rose flower 玫瑰 花"],["🌻","nature","sunflower 向日葵"],["🌷","nature","tulip 郁金香"],["🌱","nature","seedling sprout 发芽 幼苗"],["🌲","nature","tree evergreen 树 松树"],["🌳","nature","deciduous tree 树 大树"],["🌵","nature","cactus 仙人掌"],["🍀","nature","clover luck 四叶草 幸运"],["🍁","nature","maple leaf autumn 枫叶 秋天"],["🍄","nature","mushroom 蘑菇"],["🌈","nature","rainbow 彩虹"],["☀️","nature","sun sunny 太阳 晴"],["🌙","nature","moon crescent 月亮"],["⭐","nature","star 星星"],["🌟","nature","glowing star 星星 闪亮"],["☁️","nature","cloud 云"],["⛅","nature","partly cloudy 多云"],["🌧️","nature","rain rainy 下雨"],["❄️","nature","snowflake snow 雪 雪花"],["⛄","nature","snowman 雪人"],["⚡","nature","lightning bolt 闪电"],["🔥","nature","fire hot 火 燃"],["🌊","nature","wave ocean sea 海浪"],["🏔️","nature","mountain snow 雪山 山"],["☕","food","coffee 咖啡"],["🍵","food","tea 茶"],["🧋","food","bubble tea boba 奶茶"],["🥛","food","milk 牛奶"],["🍺","food","beer 啤酒"],["🍷","food","wine 红酒"],["🥂","food","champagne cheers 香槟 干杯"],["🥤","food","cup straw soda 饮料 可乐"],["🧃","food","juice box 果汁"],["🍎","food","apple 苹果"],["🍊","food","orange tangerine 橙子 橘子"],["🍋","food","lemon 柠檬"],["🍉","food","watermelon 西瓜"],["🍓","food","strawberry 草莓"],["🍑","food","peach 桃子"],["🥭","food","mango 芒果"],["🍍","food","pineapple 菠萝"],["🥝","food","kiwi 猕猴桃"],["🍇","food","grapes 葡萄"],["🍒","food","cherries 樱桃"],["🥑","food","avocado 牛油果"],["🥦","food","broccoli 西兰花"],["🌽","food","corn 玉米"],["🌶️","food","hot pepper spicy 辣椒 辣"],["🍔","food","burger hamburger 汉堡"],["🍟","food","fries 薯条"],["🍕","food","pizza 披萨"],["🌭","food","hot dog 热狗"],["🥪","food","sandwich 三明治"],["🌮","food","taco 墨西哥卷"],["🍜","food","ramen noodles 拉面 面条"],["🍝","food","spaghetti pasta 意面"],["🍣","food","sushi 寿司"],["🍱","food","bento 便当"],["🥟","food","dumpling 饺子"],["🍚","food","rice 米饭"],["🍞","food","bread 面包"],["🥐","food","croissant 可颂 牛角包"],["🧀","food","cheese 奶酪 芝士"],["🍳","food","cooking egg 煎蛋 做饭"],["🍦","food","ice cream 冰淇淋"],["🍰","food","cake 蛋糕"],["🎂","food","birthday cake 生日蛋糕"],["🍫","food","chocolate 巧克力"],["🍩","food","donut doughnut 甜甜圈"],["🍪","food","cookie 饼干"],["🍭","food","lollipop 棒棒糖"],["⚽","activity","soccer football 足球"],["🏀","activity","basketball 篮球"],["🏈","activity","american football 橄榄球"],["⚾","activity","baseball 棒球"],["🎾","activity","tennis 网球"],["🏐","activity","volleyball 排球"],["🏓","activity","ping pong 乒乓球"],["🏸","activity","badminton 羽毛球"],["🥊","activity","boxing 拳击"],["⛳","activity","golf 高尔夫"],["🎣","activity","fishing 钓鱼"],["🏊","activity","swim 游泳"],["🏄","activity","surf 冲浪"],["🚴","activity","cycling 骑行"],["🏋️","activity","weightlifting gym 举重 健身"],["🧘","activity","yoga meditation 瑜伽 冥想"],["🎮","activity","video game controller 游戏 游戏机"],["🎲","activity","dice 骰子"],["🎯","activity","target bullseye 目标 靶心"],["🎳","activity","bowling 保龄球"],["🎰","activity","slot machine 老虎机"],["♟️","activity","chess 国际象棋 棋"],["🎸","activity","guitar 吉他"],["🎹","activity","piano keyboard 钢琴"],["🥁","activity","drum 鼓"],["🎤","activity","microphone sing 麦克风 唱歌"],["🎧","activity","headphones 耳机"],["🎬","activity","clapper movie 电影 拍摄"],["🎨","activity","art palette paint 画画 艺术"],["🎭","activity","theater masks 戏剧 面具"],["🎪","activity","circus 马戏团"],["🎡","activity","ferris wheel 摩天轮"],["✈️","activity","airplane travel flight 飞机 旅行"],["🚗","activity","car drive 汽车 车"],["🚕","activity","taxi 出租车"],["🚌","activity","bus 公交车"],["🚑","activity","ambulance 救护车"],["🚒","activity","fire engine 消防车"],["🚀","activity","rocket launch ship 火箭 发射"],["🛸","activity","ufo flying saucer 飞碟"],["🚲","activity","bicycle bike 自行车"],["🛴","activity","scooter 滑板车"],["🚄","activity","bullet train 高铁 动车"],["🚢","activity","ship 船 轮船"],["⛵","activity","sailboat 帆船"],["🏠","activity","house home 房子 家"],["🏢","activity","office building 公司 办公楼"],["🏥","activity","hospital 医院"],["🏫","activity","school 学校"],["🏖️","activity","beach vacation 海滩 度假"],["⛺","activity","camping tent 露营 帐篷"],["🌋","activity","volcano 火山"],["🗺️","activity","map world 地图"],["🧭","activity","compass 指南针"],["💻","objects","laptop computer 电脑 笔记本"],["🖥️","objects","desktop computer 台式机 电脑"],["⌨️","objects","keyboard 键盘"],["🖱️","objects","computer mouse 鼠标"],["📱","objects","phone mobile 手机"],["🔋","objects","battery 电池"],["🔌","objects","plug electric 插头"],["💾","objects","floppy save 软盘 保存"],["📀","objects","cd disc 光盘"],["🎥","objects","movie camera 摄像机"],["📷","objects","camera 相机"],["🔭","objects","telescope 望远镜"],["📡","objects","satellite antenna 卫星 天线"],["🌐","objects","globe web internet 网络 全球 互联网"],["🕯️","objects","candle 蜡烛"],["💡","objects","bulb idea light 灯泡 点子"],["🔦","objects","flashlight 手电筒"],["📁","objects","folder 文件夹"],["📂","objects","open folder 文件夹 打开"],["🗂️","objects","card index archive 归档 索引"],["📅","objects","calendar date 日历 日期"],["📌","objects","pin pushpin 图钉 置顶"],["📍","objects","round pin location 定位 位置"],["📎","objects","paperclip attachment 回形针 附件"],["✂️","objects","scissors cut 剪刀 剪切"],["📏","objects","ruler 尺子"],["📝","objects","memo note write 备忘 记录"],["✏️","objects","pencil edit write 铅笔 编辑"],["📄","objects","document page 文档 文件"],["📃","objects","page curl 文档 文件"],["📑","objects","bookmark tabs 标签页 文档"],["📚","objects","books 书 书籍"],["📖","objects","open book 打开的书 阅读"],["🔖","objects","bookmark 书签"],["🏷️","objects","label tag 标签"],["📊","objects","bar chart stats 图表 统计"],["📈","objects","chart up growth 上涨 增长"],["📉","objects","chart down 下跌 下降"],["🔍","objects","search magnifier 搜索 查找"],["🔎","objects","search magnifier right 搜索 查找"],["🔒","objects","lock locked 锁 锁定"],["🔓","objects","unlock open 解锁"],["🔑","objects","key 钥匙 密钥"],["🔧","objects","wrench tool 扳手 工具"],["🔨","objects","hammer 锤子"],["🛠️","objects","tools hammer wrench 工具 修理"],["🧰","objects","toolbox 工具箱 工具"],["🪛","objects","screwdriver 螺丝刀 工具"],["🔩","objects","nut and bolt screw 螺母 螺栓"],["🏗️","objects","building construction crane 施工 建造"],["⚙️","objects","gear settings 齿轮 设置"],["🧲","objects","magnet 磁铁"],["⚗️","objects","alembic 蒸馏器 实验"],["🧪","objects","test tube experiment 实验 试管"],["🔬","objects","microscope science 显微镜 科学"],["🤖","objects","robot bot 机器人"],["👾","objects","alien monster game 外星人 游戏"],["💣","objects","bomb 炸弹"],["🧨","objects","firecracker 爆竹"],["🗑️","objects","trash delete 垃圾桶 删除"],["🧹","objects","broom clean 扫帚 清理"],["🧻","objects","toilet paper 纸巾"],["🧽","objects","sponge 海绵"],["📦","objects","package box 包裹 箱子"],["✉️","objects","envelope mail 邮件 信封"],["📮","objects","mailbox postbox 邮箱"],["📧","objects","email mail 邮件"],["📥","objects","inbox tray receive 收件箱 接收"],["📤","objects","outbox tray send 发件箱 发送"],["📞","objects","telephone receiver call phone 电话 通话"],["💬","objects","speech balloon chat message bubble 聊天 对话 气泡 消息"],["💭","objects","thought balloon thinking 思考 想法 气泡"],["📣","objects","megaphone announcement 喇叭 公告"],["📢","objects","loudspeaker broadcast 广播 喇叭 通知"],["🚨","objects","police light alert emergency 警报 告警 紧急"],["🗳️","objects","ballot box vote 投票箱 投票"],["🔗","objects","link chain 链接 连接"],["🧩","objects","puzzle piece plugin 拼图 插件"],["🪄","objects","magic wand 魔法 魔杖"],["🛡️","objects","shield security 盾牌 安全"],["⚔️","objects","crossed swords 交叉剑 战斗"],["💳","objects","credit card 信用卡"],["💰","objects","money bag 钱袋 钱"],["🧾","objects","receipt 收据 小票"],["📿","objects","prayer beads 念珠"],["💍","objects","ring 戒指"],["👑","objects","crown 皇冠"],["🎩","objects","top hat 礼帽"],["🎒","objects","backpack 背包 书包"],["👓","objects","glasses 眼镜"],["🌂","objects","umbrella 雨伞"],["🕰️","objects","mantel clock 座钟"],["⌚","objects","watch 手表"],["⏱️","objects","stopwatch 秒表"],["🧯","objects","fire extinguisher 灭火器"],["🩹","objects","bandage patch fix 创可贴 补丁 修复"],["🎓","objects","graduation cap study learn 毕业 学习"],["🎫","objects","ticket 票 门票 工单"],["✅","symbols","check done complete 完成 对勾"],["✔️","symbols","checkmark correct 对勾 正确"],["❌","symbols","cross x wrong 错误 叉"],["❓","symbols","question help 问题 问号"],["❔","symbols","white question 问题 问号"],["❗","symbols","exclamation important 感叹号 重要"],["❕","symbols","white exclamation 感叹号"],["⚠️","symbols","warning caution 警告 注意"],["🚧","symbols","construction wip 施工 进行中"],["🚫","symbols","prohibited no 禁止"],["💥","symbols","boom explosion 爆炸"],["✨","symbols","sparkles shiny 闪亮 星星"],["🎉","symbols","tada party celebrate 庆祝 撒花"],["🎊","symbols","confetti party 庆祝 彩带"],["🏆","symbols","trophy champion 奖杯 冠军"],["🥇","symbols","gold medal first 金牌 第一"],["🥈","symbols","silver medal second 银牌 第二"],["🥉","symbols","bronze medal third 铜牌 第三"],["🎖️","symbols","military medal 勋章"],["🚩","symbols","red flag mark 红旗 标记"],["🏁","symbols","checkered flag finish 终点 完成"],["⏳","symbols","hourglass time waiting 沙漏 时间"],["⌛","symbols","hourglass done 沙漏 时间"],["🕐","symbols","clock one time 时钟 一点"],["⏰","symbols","alarm clock 闹钟"],["🔔","symbols","bell notification 铃铛 通知"],["🔕","symbols","bell slash mute 静音 免打扰"],["🕹️","symbols","joystick game 摇杆 游戏"],["🔴","symbols","red circle record 红圆 录制"],["🟢","symbols","green circle online 绿圆 在线"],["🟡","symbols","yellow circle 黄圆"],["🟠","symbols","orange circle 橙圆"],["🔵","symbols","blue circle 蓝圆"],["🟣","symbols","purple circle 紫圆"],["⚫","symbols","black circle 黑圆"],["⚪","symbols","white circle 白圆"],["🟥","symbols","red square 红方"],["🟩","symbols","green square 绿方"],["🟦","symbols","blue square 蓝方"],["🔺","symbols","red triangle up 三角 上"],["🔻","symbols","triangle down 三角 下"],["🔸","symbols","diamond orange 菱形"],["🔹","symbols","diamond blue 菱形"],["💠","symbols","diamond dot 菱形 花"],["🔶","symbols","diamond orange big 菱形"],["🔷","symbols","diamond blue big 菱形"],["▶️","symbols","play 播放"],["⏸️","symbols","pause 暂停"],["⏹️","symbols","stop 停止"],["⏺️","symbols","record 录制"],["⏩","symbols","fast forward 快进"],["⏪","symbols","rewind 快退"],["🔀","symbols","shuffle 随机 打乱"],["🔁","symbols","repeat 重复 循环"],["🔂","symbols","repeat one 单曲循环"],["🔄","symbols","refresh sync 刷新 同步"],["🔃","symbols","reload 重载"],["➕","symbols","plus add 加 新增"],["➖","symbols","minus 减"],["➗","symbols","divide 除"],["✖️","symbols","multiply 乘"],["💲","symbols","dollar money 美元 钱"],["™️","symbols","trademark 商标"],["©️","symbols","copyright 版权"],["®️","symbols","registered 注册商标"],["↔️","symbols","left right arrow 左右箭头"],["⬆️","symbols","up arrow 上箭头"],["⬇️","symbols","down arrow 下箭头"],["➡️","symbols","right arrow 右箭头"],["⬅️","symbols","left arrow 左箭头"],["🔙","symbols","back 返回"],["🔜","symbols","soon 很快"],["🔝","symbols","top 置顶 顶部"],["💤","symbols","zzz sleep 睡觉"],["🆕","symbols","new 新 新品"],["🆒","symbols","cool 酷"],["🆓","symbols","free 免费"],["🆗","symbols","ok 可以"],["🆙","symbols","up 提升"],["🆚","symbols","vs versus 对比"],["♾️","symbols","infinity 无限"],["💯","symbols","hundred perfect 满分 一百"],["💢","symbols","anger 生气"],["♨️","symbols","hot springs 温泉"],["🚸","symbols","children crossing 注意儿童"],["🔞","symbols","no one under eighteen 十八禁"],["📵","symbols","no mobile phones 禁止手机"],["❤️","symbols","red heart love 红心 爱"],["🧡","symbols","orange heart 橙心"],["💛","symbols","yellow heart 黄心"],["💚","symbols","green heart 绿心"],["💙","symbols","blue heart 蓝心"],["💜","symbols","purple heart 紫心"],["🖤","symbols","black heart 黑心"],["🤍","symbols","white heart 白心"],["🤎","symbols","brown heart 棕心"],["💔","symbols","broken heart 心碎"],["💕","symbols","two hearts 双心 爱心"],["💖","symbols","sparkling heart 闪亮的心"],["💗","symbols","growing heart 心动"]],mJ=Wve.map(([e,t,n])=>({emoji:e,group:t,keywords:n}));function qve(e,t=24){const n=e.trim().toLowerCase();if(!n)return[];const i=[];for(const o of mJ)if((o.keywords.includes(n)||o.emoji===n)&&(i.push(o.emoji),i.length>=t))break;return i}const Vve=8;function Uve(e,t,n=Vve){return[t,...e.filter(i=>i!==t)].slice(0,n)}const Kve="model_switch_confirm";function jN(e){if(typeof e=="string")return e;if(!(!Array.isArray(e)||e.length===0)&&!e.some(t=>typeof t!="string"))return e}function WN(e){if(e===void 0)return;if(typeof e!="object"||e===null)return null;const t=e;return t.en!==void 0&&typeof t.en!="string"||t.zh!==void 0&&typeof t.zh!="string"?null:{en:typeof t.en=="string"?t.en:void 0,zh:typeof t.zh=="string"?t.zh:void 0}}function Zve(e){if(typeof e!="object"||e===null)return;const t=e,n=jN(t.from),i=jN(t.to),o=t.session_type;if(n===void 0||i===void 0||o!=="old"&&o!=="new"&&o!=="all")return;const s=WN(t.hint),r=WN(t.warning);if(!(s===null||r===null))return{from:n,to:i,session_type:o,hint:s??void 0,warning:r??void 0}}function gJ(e){if(typeof e!="object"||e===null)return{enable:!1,rules:[]};const t=e,n=typeof t.enable=="boolean"?t.enable:!1,i=[];if(Array.isArray(t.rules))for(const o of t.rules){const s=Zve(o);s!==void 0&&i.push(s)}return{enable:n,rules:i}}function vJ(e,t,n,i){if(e===void 0||!e.enable)return;const o=(s,r)=>s==="*"||(typeof s=="string"?s===r:s.includes(r));return e.rules.find(s=>(s.session_type==="all"||s.session_type===i)&&o(s.from,t)&&o(s.to,n))}function qN(e,t){const n=e?.[t];if(typeof n!="object"||n===null)return;const i=n.model;return typeof i=="string"?i:void 0}function yJ(e,t){if(e?.hint!==void 0)return(t==="zh"?e.hint.zh:void 0)??e.hint.en}function bJ(e,t){if(e?.warning!==void 0)return(t==="zh"?e.warning.zh:void 0)??e.warning.en}const Gve="effort_switch_confirm";function Qve(e){if(e===void 0)return;if(typeof e!="object"||e===null)return null;const t=e;return t.en!==void 0&&typeof t.en!="string"||t.zh!==void 0&&typeof t.zh!="string"?null:{en:typeof t.en=="string"?t.en:void 0,zh:typeof t.zh=="string"?t.zh:void 0}}function Yve(e){if(typeof e!="object"||e===null||Array.isArray(e))return{enable:!1,items:{}};const t=e,n={},i=t.items;if(typeof i=="object"&&i!==null&&!Array.isArray(i))for(const[o,s]of Object.entries(i)){const r=Qve(s);r!=null&&(n[o]=r)}return{enable:t.enable===!0,items:n}}function Jve(e){if(typeof e!="object"||e===null||Array.isArray(e))return{descriptions:{enable:!1,items:{}},confirm:{enable:!1,rules:[]}};const t=e;return{descriptions:Yve(t.descriptions),confirm:gJ(t.confirm)}}function Xve(e,t,n,i){return vJ(e?.confirm,t,n,i)}function eye(e,t,n){if(e?.descriptions?.enable!==!0)return;const i=e.descriptions.items?.[t];if(i!==void 0)return(n==="zh"?i.zh:void 0)??i.en}const ug=32,tye=26,nye=128,iye=.1,oye=.05,VN=.8,UN=.02,sye=.08,rye=.7,aye=26,lye=.35,cye=256,uye=/^data:image\//i,dye=/^data:image\/svg\+xml[;,]/i,fye=/;\s*base64$/i,Lg=new Map;function vS(e){const t=e/255;return t<=.04045?t/12.92:((t+.055)/1.055)**2.4}function hye(e,t,n){return .2126*vS(e)+.7152*vS(t)+.0722*vS(n)}function pye(e){const t=e.length/4;let n=0,i=0,o=0,s=0,r=0;for(let a=0;aaye&&h/f>lye&&o++;const m=hye(c,u,d);mrye&&r++}return i===0||n/toye?null:s/i>=VN&&r/i<=UN?"dark":r/i>=VN&&s/i<=UN?"light":null}function mye(e){if(!dye.test(e))return!1;const t=e.indexOf(","),n=e.slice(t+1);try{const i=fye.test(e.slice(0,t))?atob(n):decodeURIComponent(n);return/prefers-color-scheme/i.test(i)}catch{return!0}}function gye(e){const t=document.createElement("canvas");t.width=ug,t.height=ug;const n=t.getContext("2d",{willReadFrequently:!0});if(!n)return null;try{return n.drawImage(e,0,0,ug,ug),pye(n.getImageData(0,0,ug,ug).data)}catch{return null}}function KN(e){return Lg.get(e)}function vye(e,t){const n=Lg.get(e);if(n!==void 0)return n;const i=uye.test(e)&&!mye(e)?gye(t):null;return Lg.size>=cye&&Lg.delete(Lg.keys().next().value),Lg.set(e,i),i}const ZN={ts:"ft-typescript",tsx:"ft-typescript",mts:"ft-typescript",cts:"ft-typescript",js:"ft-javascript",jsx:"ft-javascript",mjs:"ft-javascript",cjs:"ft-javascript",vue:"ft-vue",svelte:"ft-svelte",astro:"ft-astro",py:"ft-python",rb:"ft-ruby",go:"ft-go",rs:"ft-rust",java:"ft-java",jar:"ft-jar",kt:"ft-kotlin",kts:"ft-kotlin",scala:"ft-scala",swift:"ft-swift",c:"ft-c",h:"ft-h",cpp:"ft-cpp",cc:"ft-cpp",cxx:"ft-cpp",hpp:"ft-cpp",hxx:"ft-cpp",cs:"ft-csharp",php:"ft-php",sh:"ft-console",bash:"ft-console",zsh:"ft-console",fish:"ft-console",ps1:"ft-powershell",psm1:"ft-powershell",bat:"ft-command",cmd:"ft-command",sql:"ft-database",graphql:"ft-graphql",gql:"ft-graphql",prisma:"ft-prisma",html:"ft-html",htm:"ft-html",xml:"ft-xml",svg:"ft-svg",css:"ft-css",scss:"ft-sass",sass:"ft-sass",less:"ft-less",json:"ft-json",jsonc:"ft-json",json5:"ft-json",hjson:"ft-json",yaml:"ft-yaml",yml:"ft-yaml",toml:"ft-toml",ini:"ft-editorconfig",cfg:"ft-editorconfig",conf:"ft-editorconfig",md:"ft-markdown",markdown:"ft-markdown",mdx:"ft-mdx",lua:"ft-lua",r:"ft-r",dart:"ft-dart",zig:"ft-zig",mk:"ft-makefile",cmake:"ft-cmake",diff:"ft-diff",patch:"ft-diff",proto:"ft-proto",log:"ft-log",pdf:"ft-pdf",png:"ft-image",jpg:"ft-image",jpeg:"ft-image",gif:"ft-image",webp:"ft-image",bmp:"ft-image",ico:"ft-image",avif:"ft-image",heic:"ft-image",tiff:"ft-image",mp3:"ft-audio",wav:"ft-audio",flac:"ft-audio",aac:"ft-audio",ogg:"ft-audio",m4a:"ft-audio",mp4:"ft-video",mov:"ft-video",mkv:"ft-video",avi:"ft-video",webm:"ft-video",m4v:"ft-video",zip:"ft-zip",tar:"ft-zip",gz:"ft-zip",tgz:"ft-zip",bz2:"ft-zip",xz:"ft-zip",rar:"ft-zip","7z":"ft-zip",woff:"ft-font",woff2:"ft-font",ttf:"ft-font",otf:"ft-font",eot:"ft-font",exe:"ft-exe",dll:"ft-dll"},GN={"package.json":"ft-npm","package-lock.json":"ft-npm","pnpm-lock.yaml":"ft-pnpm","pnpm-workspace.yaml":"ft-pnpm","yarn.lock":"ft-yarn",makefile:"ft-makefile",gnumakefile:"ft-makefile","cmakelists.txt":"ft-cmake",".gitignore":"ft-git",".gitattributes":"ft-git",".gitmodules":"ft-git",".editorconfig":"ft-editorconfig"},yye=[["readme","ft-readme"],["license","ft-license"],["copying","ft-license"],["dockerfile","ft-docker"],["containerfile","ft-docker"],["tsconfig","ft-tsconfig"],["jsconfig","ft-jsconfig"],[".eslintrc","ft-eslint"],["eslint.config.","ft-eslint"],[".prettierrc","ft-prettier"],["prettier.config.","ft-prettier"],["vite.config.","ft-vite"],["vitest.config.","ft-vitest"],["webpack.config.","ft-webpack"]];function kJ(e){const t=e.split(/[\\/]/).pop()?.toLowerCase()??"";if(!t)return"ft-file";if(Object.hasOwn(GN,t))return GN[t];for(const[o,s]of yye)if(t.startsWith(o))return s;const n=t.lastIndexOf(".");if(n<=0)return"ft-file";const i=t.slice(n+1);return Object.hasOwn(ZN,i)?ZN[i]:"ft-file"}function bye(e){try{const t=new URL(e);if(t.protocol!=="file:")return null;const n=decodeURIComponent(t.pathname);return t.host!==""?`\\\\${t.host}${n.replace(/\//g,"\\")}`:/^\/[a-zA-Z]:\//.test(n)?n.slice(1):n}catch{return null}}const kye=80;function QI(e,t,n){return t>n/2?!0:t<=kye?!1:e}function wye(e){switch(e.key){case"PageUp":case"ArrowUp":case"Home":return-1;case"PageDown":case"ArrowDown":case"End":return 1;case" ":return e.shiftKey?-1:1;default:return 0}}function Cye(e,t){if(typeof HTMLElement>"u")return!1;for(const n of e){if(n===t)return!1;if(!(n instanceof HTMLElement)||n.scrollHeight<=n.clientHeight+1)continue;if(n.scrollTop>1)return!0;const i=getComputedStyle(n);if((i.overflowY==="auto"||i.overflowY==="scroll")&&(i.overscrollBehaviorY==="contain"||i.overscrollBehaviorY==="none"))return!0}return!1}function wR(e,t){try{const n=new Date(e);if(Number.isNaN(n.getTime()))return e;const i=new Date,o=u=>String(u).padStart(2,"0"),s=`${o(n.getHours())}:${o(n.getMinutes())}`,r=n.getFullYear()===i.getFullYear(),a=n.getMonth()===i.getMonth(),l=n.getDate()===i.getDate();if(r&&a&&l)return s;const c=new Date(i);return c.setDate(i.getDate()-1),n.getFullYear()===c.getFullYear()&&n.getMonth()===c.getMonth()&&n.getDate()===c.getDate()?`${t} ${s}`:r?`${o(n.getMonth()+1)}-${o(n.getDate())} ${s}`:`${n.getFullYear()}-${o(n.getMonth()+1)}-${o(n.getDate())} ${s}`}catch{return e}}function wu(e){if(e>=1024*1024)return`${QN(e/(1024*1024))}M`;if(e>=1024){const t=e/1024;return`${t>=100?Math.round(t):QN(t)}k`}return String(e)}function QN(e){const t=e.toFixed(1);return t.endsWith(".0")?t.slice(0,-2):t}const Aye=/(?:Z|([+-])(\d{2}):?(\d{2}))$/i,YN={dateStyle:"medium",timeStyle:"short",hourCycle:"h23"};function Sye(e,t){const n=new Date(t);if(!Number.isFinite(n.getTime()))return t;const i=Aye.exec(t.trim());if(!i)return new Intl.DateTimeFormat(e,YN).format(n);const o=i[1]===void 0?0:(i[1]==="-"?-1:1)*(Number(i[2])*60+Number(i[3]));return new Intl.DateTimeFormat(e,{...YN,timeZone:"UTC"}).format(new Date(n.getTime()+o*6e4))}function D0(e){return e.startsWith("/")||/^[a-zA-Z]:[\\/]/.test(e)||e.startsWith("\\\\")}function xye(){return window.kimiDesktop}function CR(e,t,n){const i=n.length===0?void 0:n.length===1?n[0]:n;try{xye()?.log?.(e,t,i)}catch{}}function JN(e,...t){console.info(e,...t),CR("info",e,t)}function za(e,...t){console.warn(e,...t),CR("warn",e,t)}function jd(e,...t){console.error(e,...t),CR("error",e,t)}function ed(e){const t=e.replace(/[\\/]+$/,"");if(t==="")return e;const n=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return n<0?t:t.slice(n+1)}const _ye=/^(?:[A-Za-z]:[\\/]|\\\\|\/\/)/;function kc(e){const t=e.replaceAll("\\","/"),n=_ye.test(t),i=t.replace(/\/+$/,"");return n?i.toLowerCase():i}function Iye(e){const{workspaces:t,sessions:n,hiddenWorkspaceRoots:i,sessionsHasMoreByWorkspace:o}=e,s=new Set(i.map(kc)),r=new Map;for(const f of t){const h=kc(f.root);s.has(h)||r.has(h)||r.set(h,{...f})}for(const f of n){const h=f.cwd;if(!h)continue;const m=kc(h);s.has(m)||r.has(m)||r.set(m,{id:f.workspaceId??h,root:h,name:ed(h),sessionCount:0})}const a=new Map;for(const f of t){const h=kc(f.root);a.has(h)||a.set(h,f.id)}const l=new Map;for(const f of n){const h=a.get(kc(f.cwd))??f.workspaceId??f.cwd;l.set(h,(l.get(h)??0)+1)}const c=new Set;for(const f of t){const h=kc(f.root);s.has(h)||c.add(h)}const u=[...r.keys()].filter(f=>!c.has(f));u.sort((f,h)=>r.get(f).root.localeCompare(r.get(h).root));const d=[];for(const f of[...c,...u]){const h=r.get(f),m=l.get(h.id)??l.get(h.root)??0,g=o[h.id]===!1?m:Math.max(h.sessionCount,m);d.push({...h,sessionCount:g})}return d}const Tye=new Set(["image/png","image/jpeg","image/gif","image/webp"]);function AR(e){const t=e.split(";",1)[0].trim().toLowerCase();return Tye.has(t==="image/jpg"?"image/jpeg":t)}const wJ="kimiWeb.compaction",td="managed:kimi-code";function kv(e){if(e===void 0)return"toggle";const t=e.capabilities??[];return t.includes("always_thinking")?"always-on":t.includes("thinking")||e.adaptiveThinking===!0?"toggle":"unsupported"}function CJ(e){return e?.supportEfforts??[]}function Mye(e){return e[Math.floor(e.length/2)]}function N0(e){if(kv(e)==="unsupported")return"off";const t=CJ(e);return t.length>0?e?.defaultEffort??Mye(t):"on"}function wv(e){const t=CJ(e),n=kv(e);return t.length>0?n==="always-on"?[...t]:["off",...t]:n==="always-on"?["on"]:n==="unsupported"?["off"]:["on","off"]}function Sc(e){return e.length===0?e:e.charAt(0).toUpperCase()+e.slice(1)}function Eye(e){return e!=="off"}function C6(e,t){return wv(e).includes(t)}function Y7(e,t){return t==="off"?"off":t==="on"?N0(e):t}function z9(e,t){return t??N0(e)}function Lye(e){return e==="off"?{enabled:!1}:e==="on"?{enabled:!0}:{enabled:!0,effort:e}}function SR(e,t){if(!e||typeof e!="object")return;const{enabled:n,effort:i}=e;if(n===!1)return C6(t,"off")?"off":void 0;if(typeof i=="string"&&C6(t,i))return i}function YI(e,t,n,i){return!n||e===void 0?t:SR(i,e)??N0(e)}let Rye=0;function q8(e,t){const n=++Rye;return e.pendingThinkingBySession[t]=n,n}function hu(e,t,n){return n===void 0||e.pendingThinkingBySession[t]!==n?!1:(delete e.pendingThinkingBySession[t],!0)}function xR(e,t,n){e.pendingThinkingBySession[t]===void 0&&(e.thinkingBySession[t]=n)}function Pye(e,t){if(e===void 0||e.length===0)return;const n=t?.find(i=>i.id===e)??t?.find(i=>i.model===e);return n?.displayName||n?.model||(e.includes("/")?e.split("/").pop():e)}function $ye(e){if(!(e===void 0||e.length===0||e==="off"||e==="on"))return Sc(e)}function Ul(e,t){return e===td?t("providers.kimiSubscription"):e}function AJ(){if(!(typeof window>"u"))return window.kimiDesktop}function A5(){return typeof AJ()?.getPathForFile=="function"}function J7(e){const t=AJ()?.getPathForFile;if(typeof t!="function")return null;try{return t(e)}catch{return null}}function yS(e){return J7(e)}function bS(e){return Array.from(e.dataTransfer?.items??[]).some(t=>t.kind==="file"&&t.type==="")}function JI(e,t=J7){const n=Array.from(e.dataTransfer?.items??[]);if(n.length===0){const a=Array.from(e.dataTransfer?.files??[]);return{files:a,folderPaths:[],items:a.map(l=>({kind:"file",file:l}))}}const i=[],o=[],s=[],r=new Set;for(const a of n){if(a.kind!=="file")continue;const l=a.getAsFile();if(l)if(a.webkitGetAsEntry()?.isDirectory===!0){const c=t(l);if(!c||r.has(c))continue;r.add(c),o.push(c),s.push({kind:"folder",path:c})}else i.push(l),s.push({kind:"file",file:l})}return{files:i,folderPaths:o,items:s}}function Oye(e,t=J7){return JI(e,t).folderPaths}function Fye(e,t=J7){const n=u=>`${u.size}:${u.type}:${u.name}`,i=[],o=new Set,s=new Set,r=[],a=new Set,l=[];let c=!1;for(const u of Array.from(e.items??[])){if(u.kind!=="file")continue;const d=u.getAsFile();if(u.webkitGetAsEntry?.()?.isDirectory===!0){c=!0,d&&s.add(n(d));const h=d?t(d):null;if(!h||a.has(h))continue;a.add(h),r.push(h),l.push({kind:"folder",path:h});continue}if(!d)continue;const f=n(d);o.has(f)||(o.add(f),i.push(d),l.push({kind:"file",file:d}))}for(const u of Array.from(e.files??[])){const d=n(u);s.has(d)||o.has(d)||(o.add(d),i.push(u),l.push({kind:"file",file:u}))}return{files:i,folderPaths:r,hasFolders:c,items:l}}function SJ(e){return lr(e)==="notifyuser"}function XN(e){return e.replace(/^[\s#>*-]+/,"").replaceAll("**","").trim()}function Dye(e){let t;try{const a=JSON.parse(e);if(a===null||typeof a!="object"||Array.isArray(a))return{title:"",message:""};t=a}catch{return{title:"",message:""}}const n=typeof t.message=="string"?t.message.trim():"",i=typeof t.title=="string"?t.title.trim():"";if(i.length>0)return{title:i,message:n};const o=n.split(` +`),s=o.findIndex(a=>XN(a).length>0);if(s===-1)return{title:"",message:""};const r=o.slice(s+1).join(` +`).trim();return{title:XN(o[s]),message:r.length>0?r:n}}function xJ(e,t,n){return e==="unsupported"?[{titleKey:n.titleKey,hintKey:n.hintKey,disabled:!1}]:t.map(i=>({...i,disabled:e==="pending"}))}function Nye(e,t,n){return n?e.filter(i=>i.sessions.length>0||i.workspace.id===t):e}const Bye=["id","cron","prompt","recurring"],zye=/^([A-Za-z][A-Za-z0-9_]*): (.*)$/,Hye=/^cron_jobs: (\d+)$/,jye=/^Deleted cron job (\S+)\.$/;function _R(e){return(e??[]).flatMap(t=>t.split(` +`))}function _J(e){const t={};let n;for(const i of e){const o=zye.exec(i);o?(n=o[1],t[n]=o[2]):n!==void 0&&(t[n]+=` +${i}`)}return t}function IJ(e){const t=_J(_R(e));return t.id&&t.cron?t:null}function TJ(e){const t=jye.exec(_R(e).join(` +`).trim());return t?{id:t[1]}:null}function MJ(e){const t=_R(e),n=Hye.exec(t[0]??"");if(!n)return null;const i=Number(n[1]),o=[];let s=[];const r=()=>{const a=_J(s);s=[],Bye.every(l=>a[l]!==void 0)&&o.push(a)};for(const a of t.slice(1))a==="---"?r():s.push(a);return r(),o.length===i?{count:i,jobs:o}:null}function*XI(e,t){const n=`<${t}`,i=``;let o=0;for(;o",r);if(a===-1)return;const l=e.indexOf(i,a+1);if(l===-1)return;o=l+i.length,yield{start:s,end:o,attributes:e.slice(r,a),content:e.slice(a+1,l)}}}function EJ(e,t=/[\w-]/){const n={};let i=0;for(;i").replaceAll("&","&")}function Vye(e){const t={};for(const[n,i]of Object.entries(EJ(e,/[a-z_]/)))t[n]=qye(i);return t}function Uye(e){const t={completed:0,failed:0,aborted:0};nB.lastIndex=0;let n;for(;(n=nB.exec(e))!==null;){const i=n[1];t[i]=Number(n[2])}return t}function Kye(e,t){const n=Vye(e);return{outcome:n.outcome??"completed",item:n.item,agentId:n.agent_id,mode:n.mode,state:n.state,body:t.trim()}}function Zye(e){const t=[],n=[];let i=0;for(;i",o+9);if(s===-1)break;i=s+1,n.push(n.length===0?{attrs:e.slice(o+9,s),bodyStart:i}:null)}}return t}function Gye(e){const t=Array.isArray(e)?e.join(` +`):e??"";return LJ(t)===null&&!/\b(?:aborted|cancelled|interrupted)\b/i.test(t)}function LJ(e){if(e==null)return null;const t=Array.isArray(e)?e.join(` +`):e;if(!t.includes(""))return null;const n=eB(t,"

","")?.trim()??"",{completed:i,failed:o,aborted:s}=Uye(n),r=eB(t,"","")?.trim(),a=Zye(t),l=i+o+s;return{summary:n,completed:i,failed:o,aborted:s,total:l>0?l:a.length,subagents:a,resumeHint:r}}const Qye=/^([a-z][a-z0-9_]*): (.*)$/,Yye=/^(active_background_tasks|background_tasks): (\d+)$/,Jye="[output]",Xye="[no output available]";function IR(e){const t={};let n;for(const i of e){const o=Qye.exec(i);o?(n=o[1],t[n]=o[2]):n!==void 0&&(t[n]+=` +${i}`)}return t}function TR(e){return(e??[]).flatMap(t=>t.split(` +`))}function e4e(e){const t=TR(e),n=Yye.exec(t[0]??"");if(!n)return null;const i=Number(n[2]),o=[];let s=[];const r=()=>{const a=IR(s);a.task_id&&o.push(a),s=[]};for(const a of t.slice(1))a==="---"?r():s.push(a);return r(),{activeOnly:n[1]==="active_background_tasks",count:i,tasks:o}}function t4e(e){const t=TR(e),n=t.indexOf(Jye);if(n<0)return null;const i=t.indexOf(""),o=IR(t.slice(0,i>=0&&il.startsWith("[Truncated.")),r=t.slice(n+1);for(;r.length>0&&r[r.length-1]==="";)r.pop();const a=r.length===1&&r[0]===Xye?[]:r;return{fields:o,truncated:s,output:a}}function n4e(e){const t=IR(TR(e));return t.task_id&&t.status?t:null}const i4e=3,o4e=/\n\n\[wait_warning\]\n([^\n[][^\n]*)\n?$/,s4e="Use TaskOutput with one of the task_id values above to read the full output.";function a1(e,t){return new RegExp(`^${t}: (.+)$`,"m").exec(e)?.[1]}function r4e(e,t){const n=Number(a1(e,t)??0);return Number.isFinite(n)?n:0}function RJ(e,t){return e.match(t)?.length??0}function iB(e,t,n){const i=new RegExp(`^\\[${t}\\]$`,"gm"),o=[];let s;for(;(s=i.exec(e))!==null;)s.index>=n&&o.push(s.index);return o}function oB(e,t){return t>=2&&e[t-1]===` +`&&e[t-2]===` +`}function sB(e,t,n){const i=e.slice(t+n.length+2),o=/^\[/m.exec(i);return(o===null?i:i.slice(0,o.index)).trim()}function a4e(e){return e.endsWith(s4e)}function l4e(e){const t=a1(e,"active_background_tasks");if(t===void 0)return!1;const n=Number(t);return Number.isFinite(n)?RJ(e,/^task_id: /gm)===n:!1}function c4e(e,t){return[...e.matchAll(/^description: (.+)$/gm)].map(i=>i[1]??"").slice(0,Math.min(i4e,t))}function u4e(e){if(e==null)return null;const t=Array.isArray(e)?e.join(` +`):e,n=o4e.exec(t),i=n===null?t:t.slice(0,n.index),o=/^\[/m.exec(i),s=o===null?i:i.slice(0,o.index),r=a1(s,"wait_status");if(r!=="completed"&&r!=="timed_out"&&r!=="interrupted"&&r!=="no_tasks")return null;const a=Number(a1(s,"waited_ms")??0),l=Number(a1(s,"timeout_ms"));let c,u=o?.index??i.length;r==="completed"&&o!==null&&i.slice(o.index).startsWith("[finished]")&&(c=sB(i,o.index,"finished"),u=o.index+10);let d=0,f=-1;for(const k of iB(i,"completed_during_wait",u)){if(!oB(i,k))continue;const C=sB(i,k,"completed_during_wait");a4e(C)&&(d=RJ(C,/^task_id: /gm),f=k)}let h=0,m=[],g=-1;for(const k of iB(i,"still_running",u)){if(f>=0&&k=0){const k=[f,g].filter(w=>w>v);y=i.slice(v+11,k.length>0?Math.min(...k):i.length).trimEnd()||void 0}return{status:r,waitedMs:Number.isFinite(a)?a:0,timeoutMs:Number.isFinite(l)?l:void 0,taskId:a1(s,"task_id"),finishedStatus:c===void 0?void 0:a1(c,"status"),finishedDescription:c===void 0?void 0:a1(c,"description"),outputPreview:y,extraCount:d,runningCount:h,runningSamples:m,warning:n?.[1]}}function R4(e){const t=[];for(const n of e.split(/[\\/]+/))if(!(!n||n===".")){if(n===".."){t.length>0&&t[t.length-1]!==".."?t.pop():t.push("..");continue}t.push(n)}return t.join("/")}function PJ(e){const t=Math.max(e.lastIndexOf("/"),e.lastIndexOf("\\"));return t<0?"":t===0?e[0]:e.slice(0,t)}const d4e=/^[A-Za-z]:[\\/]/;function H9(e){return d4e.test(e)||e.startsWith("\\\\")||e.startsWith("//")}function Cv(e,t){if(!t)return null;const n=u=>u.replace(/\\/g,"/"),i=n(e);let o=n(t);o.length>1&&(o=o.replace(/\/+$/,""));const s=H9(o)||H9(i),r=s?o.toLowerCase():o,a=s?i.toLowerCase():i,l=r.endsWith("/")?r:`${r}/`;if(a!==r&&!a.startsWith(l))return null;const c=a===r?"":i.slice(l.length);return c.split("/").includes("..")?null:c||null}const Sn={permission:"kimi-web.permission",permissionBySession:"kimi-web.permission-by-session",permissionExplicit:"kimi-web.permission-explicit",permissionStickyAt:"kimi-web.permission-sticky-at",permissionDaemonDefault:"kimi-web.permission-daemon-default",nonComposerPromptIds:"kimi-web.non-composer-prompt-ids",activeWorkspace:"kimi-active-workspace",planArmed:"kimi-web.plan-armed",swarmMode:"kimi-web.swarm-mode",towerMode:"kimi-web.tower-mode",goalMode:"kimi-web.goal-mode",fontScale:"kimi-web.font-scale",starredModels:"kimi-web.starred-models",unread:"kimi-web.unread",onboarded:"kimi-web.onboarded",colorScheme:"kimi-web.color-scheme",hiddenWorkspaces:"kimi-web.hidden-workspaces",collapsedWorkspaces:"kimi-web.collapsed-workspaces",workspaceOrder:"kimi-web.workspace-order",workspaceSort:"kimi-web.workspace-sort",workspaceRecencyFloor:"kimi-web.workspace-recency-floor",pinnedSessions:"kimi-web.pinned-sessions",pinnedCollapsed:"kimi-web.pinned-collapsed",workspaceNameOverrides:"kimi-web.workspace-name-overrides",notifyEnabled:"kimi-web.notify-enabled",notifySound:"kimi-web.notify-sound",inputHistory:"kimi-web.input-history",locale:"kimi-locale",clientId:"kimi-web.client-id",debug:"kimi-web.debug",openInDefaultTarget:"kimi-web.open-in.default-target",openInLastTarget:"kimi-web.open-in.last-target",sidebarCollapsed:"kimi-web.sidebar-collapsed",sidebarWidth:"kimi-web.sidebar-width",sidebarViewMode:"kimi-web.sidebar-view-mode",mobileSwitcherViewMode:"kimi-web.mobile-switcher-view-mode",diffViewMode:"kimi-web.diff-view-mode",sidebarPinnedHeight:"kimi-web.sidebar-pinned-height",shortcutOverrides:"kimi-web.shortcut-overrides",dockIconChoice:"kimi-web.dock-icon-choice",updateSkippedVersion:"kimi-web.update-skipped-version",canarySkippedVersion:"kimi-web.canary-skipped-version",planMode:"kimi-web.plan-mode",codeFont:"kimi-web.code-font",contentAlign:"kimi-web.content-align",theme:"kimi-web.theme",thinking:"kimi-web.thinking",accent:"kimi-web.accent",notifyOnComplete:"kimi-web.notify-on-complete",notifyOnQuestion:"kimi-web.notify-on-question",notifyOnApproval:"kimi-web.notify-on-approval",soundOnComplete:"kimi-web.sound-on-complete"},f4e="__new__";function vc(e){return e&&e.length>0?e:f4e}function Zf(e){return`kimi-web.draft.${vc(e)}`}function rB(e){return`kimi-web.attachment-draft.${vc(e)}`}function W2(e){return`kimi-web.draft-atts.${vc(e)}`}function ju(e){return`kimi-web.draft-snapshot.${vc(e)}`}function yo(e){try{return globalThis.localStorage.getItem(e)}catch{return null}}function zo(e,t){try{globalThis.localStorage.setItem(e,t)}catch{}}function ms(e){try{globalThis.localStorage.removeItem(e)}catch{}}function ec(e){const t=yo(e);if(t===null)return null;try{return JSON.parse(t)}catch{return null}}function Ha(e,t){try{globalThis.localStorage.setItem(e,JSON.stringify(t))}catch{}}function eT(){const e=yo(Sn.unread);if(!e)return{};try{const t=JSON.parse(e);if(!t||typeof t!="object")return{};const n={};for(const[i,o]of Object.entries(t))o===!0&&(n[i]=!0);return n}catch{return{}}}function aB(e){const n={...eT()};for(const[i,o]of Object.entries(e))o?n[i]=!0:delete n[i];zo(Sn.unread,JSON.stringify(n))}function h4e(){const e=ec(Sn.collapsedWorkspaces);return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function kS(e){Ha(Sn.collapsedWorkspaces,Array.from(e))}function p4e(){return ec(Sn.pinnedCollapsed)===!0}function tT(e){Ha(Sn.pinnedCollapsed,e)}function m4e(){return yo(Sn.sidebarViewMode)==="flat"?"flat":"grouped"}function g4e(e){zo(Sn.sidebarViewMode,e)}function v4e(){return yo(Sn.mobileSwitcherViewMode)==="grouped"?"grouped":"flat"}function y4e(e){zo(Sn.mobileSwitcherViewMode,e)}function b4e(){return yo(Sn.diffViewMode)==="tree"?"tree":"list"}function k4e(e){zo(Sn.diffViewMode,e)}function w4e(){const e=ec(Sn.workspaceOrder);return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function lB(e){Ha(Sn.workspaceOrder,Array.from(e))}function C4e(){return yo(Sn.workspaceSort)==="recent"?"recent":"manual"}function A4e(e){zo(Sn.workspaceSort,e)}function S4e(){const e=ec(Sn.workspaceRecencyFloor);if(!e||typeof e!="object")return{};const t={};for(const[n,i]of Object.entries(e))typeof i=="number"&&Number.isFinite(i)&&(t[n]=i);return t}function cB(e){Ha(Sn.workspaceRecencyFloor,e)}function x4e(){try{return yo(Sn.activeWorkspace)}catch{return null}}function uB(e){try{zo(Sn.activeWorkspace,e)}catch{}}function _4e(){try{const e=yo(Sn.hiddenWorkspaces);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(n=>typeof n=="string"):[]}catch{return[]}}function dB(e){try{zo(Sn.hiddenWorkspaces,JSON.stringify(e))}catch{}}function $J(){const e=ec(Sn.pinnedSessions);return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function wS(e){Ha(Sn.pinnedSessions,Array.from(e))}function V8(){const e=ec(Sn.workspaceNameOverrides);if(!e||typeof e!="object")return{};const t={};for(const[n,i]of Object.entries(e))typeof i=="string"&&(t[n]=i);return t}function fB(e){Ha(Sn.workspaceNameOverrides,e)}function Y1(e){return e==="manual"||e==="auto"||e==="yolo"?e:void 0}function hB(){return Y1(yo(Sn.permission))??"manual"}function I4e(e){zo(Sn.permission,e)}function pB(){const e=yo(Sn.permissionStickyAt),t=Number(e);return Number.isFinite(t)&&t>0?t:e===null&&yo(Sn.permission)!==null?1:0}function dg(e){zo(Sn.permissionStickyAt,String(e))}function OJ(e){const t=yo(e);if(!t)return{};try{const n=JSON.parse(t);if(!n||typeof n!="object"||Array.isArray(n))return{};const i={};for(const[o,s]of Object.entries(n)){const r=Y1(s);r!==void 0&&(i[o]=r)}return i}catch{return{}}}function FJ(e,t){zo(e,JSON.stringify(t))}function mB(){return OJ(Sn.permissionBySession)}function CS(e){FJ(Sn.permissionBySession,e)}function gB(){return OJ(Sn.permissionExplicit)}function T4e(e){FJ(Sn.permissionExplicit,e)}const vB={manual:0,yolo:1,auto:2};function M4e(e){let t="auto",n=!1;for(const i of e)i!==void 0&&(n=!0,vB[i]typeof n=="number"&&Number.isFinite(n)&&n>0).slice(0,2);return t.length===0?DJ:Math.round(t.reduce((n,i)=>n+i,0))}function NJ(e){return e==null||!Number.isFinite(e)||e<=0?DJ:Math.round(e)}const nT=96;function P4e(e,t,n){const i=e.filter(r=>r.visible),o=i[0],s=i[2];return{firstRowHeight:o?o.height:null,spanToThirdRow:s?s.viewportBottom-t+n:null}}function $4e(e,t,n){const i=s=>s!=null&&Number.isFinite(s)&&s>0;return(s=>s!=null&&Number.isFinite(s)&&s>=0)(t)?i(e)?Math.round(e)+Math.round(t):i(n)?Math.round(n)*3+Math.round(t):nT:nT}function O4e(e){return e>L4e}function yB(e){return Math.round(e*.4)}function F4e(e){return e==null||!Number.isFinite(e)||e<=0?nT:Math.round(e)}function D4e(e,t,n,i){const o=NJ(n),s=F4e(i),r=Math.max(o,Math.round(e*.6));if(t===void 0||!Number.isFinite(t))return r;const a=Math.round(t)-s;return Math.max(o,Math.min(r,a))}function AS(e,t,n){return t==null||!Number.isFinite(t)?e:Math.max(NJ(n),Math.min(e,Math.round(t)))}function N4e(e,t,n,i){return Math.max(Math.round(i),Math.min(Math.round(e+t),Math.round(n)))}function B4e(e,t){return t===null||t===e}const MR="application/x-kimi-session-row";function z4e(e,t){return e.includes(t)?e:[...e,t]}function H4e(e,t){return e.includes(t)?e.filter(n=>n!==t):e}function j4e(e,t){const n=new Set(t),i=new Map,o=[];for(const r of e)n.has(r.id)?i.set(r.id,r):o.push(r);const s=[];for(const r of t){const a=i.get(r);a!==void 0&&s.push(a)}return{pinned:s,unpinned:o}}let A6=-1,S6=-1,qg=-1,P4=-1,ER=!1,bB=!1;function kB(){A6=-1,S6=-1,qg=-1,P4=-1,ER=!1}function W4e(e){const t=qg>=0;A6=qg,S6=P4,qg=e.clientX,P4=e.clientY,t&&(qg!==A6||P4!==S6)&&(ER=!0)}function nb(){bB||typeof document>"u"||(bB=!0,document.addEventListener("pointermove",W4e,{capture:!0,passive:!0}),window.addEventListener("blur",kB),document.documentElement.addEventListener("pointerleave",kB))}function q2(e){return ER?e.clientX===A6&&e.clientY===S6:!0}function iT(){return{x:qg,y:P4}}const q4e={"&":"&","<":"<",">":">",'"':""","'":"'"};function $4(e){return e.replace(/[&<>"']/g,t=>q4e[t]??t)}function V4e(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function U4e(e,t,n=40){const i=e.replace(/\s+/g," ").trim();if(i.length===0)return"";const o=t.trim();if(o.length===0)return wB(i,n*2);const s=i.toLowerCase().indexOf(o.toLowerCase());if(s<0)return wB(i,n*2);const r=Math.max(0,s-n),a=Math.min(i.length,s+o.length+n),l=r>0,c=a`${s}`)}const BJ=/([\s\S]*?)<\/kbd>/g;function zJ(e){let t="",n=0;for(const i of e.matchAll(BJ))t+=$4(e.slice(n,i.index)),t+=`${$4(i[1]??"")}`,n=i.index+i[0].length;return t+$4(e.slice(n))}function K4e(e){return e.replace(BJ,"$1")}let Z4e=0;function CB(e,t){const n=++Z4e;return e.pendingPlanBySession[t]=n,n}function LR(e,t,n){return n===void 0||e.pendingPlanBySession[t]!==n?!1:(delete e.pendingPlanBySession[t],!0)}function oT(e,t,n){e.pendingPlanBySession[t]===void 0&&(e.planModeBySession[t]=n)}function HJ(e){const t=[];return e.usages.limit5h!==void 0&&t.push({key:"limit5h",entry:e.usages.limit5h}),e.usages.limit7d!==void 0&&t.push({key:"limit7d",entry:e.usages.limit7d}),e.usages.monthTotal!==void 0&&t.push({key:"monthTotal",entry:e.usages.monthTotal}),t}function G4e(e){const t=e.usages.monthTotal;if(t===void 0)return null;const n=sT(e.usages.monthCode?.usedRatio??0),i=sT(Math.round((t.usedRatio-n)*1e6)/1e6);return{totalRatio:t.usedRatio,codeRatio:n,kimiRatio:i}}function jJ(e,t){switch(e){case"limit5h":return t("settings.planUsage.hourLimit",{n:5});case"limit7d":return t("settings.planUsage.weekLimit",{n:1});case"monthTotal":return t("settings.planUsage.monthlyLimit")}}function WJ(e,t){const n=Date.parse(e);if(Number.isNaN(n))return"";const i=Math.floor((n-Date.now())/1e3);if(i<=0)return t("settings.planUsage.resetDone");const o=Math.floor(i/86400),s=Math.floor(i%86400/3600),r=Math.floor(i%3600/60),a=[];return o>0?(a.push(t("settings.planUsage.durationDay",{n:o})),a.push(t("settings.planUsage.durationHour",{n:s})),a.push(t("settings.planUsage.durationMinute",{n:r}))):s>0?(a.push(t("settings.planUsage.durationHour",{n:s})),a.push(t("settings.planUsage.durationMinute",{n:r}))):r>0?a.push(t("settings.planUsage.durationMinute",{n:r})):a.push(t("settings.planUsage.durationSecond",{n:i})),t("settings.planUsage.resetsIn",{duration:a.join(" ")})}function sT(e){return Number.isFinite(e)?Math.max(0,Math.min(e,1)):0}function Pd(e){return Math.round(sT(e)*100)}const Q4e=30;function Y4e(e){return e!==void 0&&etypeof s=="string"):[],supportEfforts:Array.isArray(o.supportEfforts)?o.supportEfforts.filter(s=>typeof s=="string"):[],...typeof o.adaptiveThinking=="boolean"?{adaptiveThinking:o.adaptiveThinking}:{}})}return n}const RR=/^[\p{L}\p{N}][\p{L}\p{N}\-_ ]*$/u;function i9e(e,t){return t==="anthropic"?e.replace(/\/v1\/?$/,""):e}function rT(e){return{model:e.id,maxContextSize:e.maxContextSize>0?String(e.maxContextSize):"",displayName:e.name??"",capabilities:[...e.capabilities??["tool_use","thinking"]],supportEfforts:[],adaptiveThinking:!0}}function o9e(e,t={}){const n=e.id.trim();if(n==="")return"idRequired";if(!RR.test(n))return"idInvalid";if(t.requireApiKey===!0&&e.apiKey.trim()==="")return"apiKeyRequired";if(t.requireBaseUrl===!0&&e.baseUrl.trim()==="")return"baseUrlRequired";if(e.models.length===0)return"modelRequired";for(const i of e.models){if(i.model.trim()==="")return"modelRequired";const o=i.maxContextSize.trim();if(o==="")return"contextSizeRequired";if(!/^\d+$/.test(o)||Number(o)<1)return"contextSizeInvalid"}return null}function qJ(e){return e.map(t=>{const n=t.displayName.trim();return{model:t.model.trim(),maxContextSize:Number(t.maxContextSize.trim()),...t.capabilities.length>0?{capabilities:[...t.capabilities]}:{},...t.supportEfforts.length>0?{supportEfforts:[...t.supportEfforts]}:{},...t.adaptiveThinking!==void 0?{adaptiveThinking:t.adaptiveThinking}:{},...n===""?{}:{displayName:n}}})}function x6(e){const t=e.apiKey.trim(),n=e.baseUrl.trim();return{id:e.id.trim(),type:e.type,models:qJ(e.models),...t===""?{}:{apiKey:t},...n===""?{}:{baseUrl:n}}}function s9e(e,t,n){const i=qJ(e.models),o=e.id.trim(),s=e.apiKey.trim(),r=e.baseUrl.trim(),a=n?.existingDefaultModel?.trim()??"",l=a.indexOf("/")>=0?a.slice(a.indexOf("/")+1):a;return{...t!==void 0&&o!==""&&o!==t.id?{newId:o}:{},type:e.type,models:i,...s===""&&n?.includeBlankApiKey!==!0?{}:{apiKey:s},...r===""?{}:{baseUrl:r},...l!==""&&i.some(c=>c.model===l)?{defaultModel:l}:{}}}function r9e(e){return e.id===td&&e.type==="kimi"}const a9e=15e3,l9e=["/api/claudecode","/api/anthropic","/apps/anthropic","/api/coding","/claudecode","/anthropic","/step_plan","/coding","/claude"];function c9e(e){const t=e.slice(e.lastIndexOf("/")+1);return/^v\d+$/.test(t)}function u9e(e){for(const t of l9e)if(e.endsWith(t))return e.slice(0,e.length-t.length);return null}function d9e(e,t){const n=e.trim().replace(/\/+$/,"");if(n===""||t==="vertexai")return[];if(t==="google-genai")return[`${n}/v1beta/models`];const i=[];c9e(n)?(i.push(`${n}/models`),n.endsWith("/v1")||i.push(`${n}/v1/models`)):i.push(`${n}/v1/models`);const o=u9e(n);if(o!==null){const s=o.replace(/\/+$/,"");s!==""&&s.includes("://")&&(i.push(`${s}/v1/models`),i.push(`${s}/models`))}return[...new Set(i)]}function f9e(e,t){const n=t.trim();return e==="anthropic"?{...n===""?{}:{"x-api-key":n},"anthropic-version":"2023-06-01","anthropic-dangerous-direct-browser-access":"true"}:e==="google-genai"?n===""?{}:{"x-goog-api-key":n}:n===""?{}:{authorization:`Bearer ${n}`}}function h9e(e){if(e===null||typeof e!="object")return null;const t=e,n=t.slug??t.id??t.name;if(typeof n!="string")return null;const o=(n.startsWith("models/")?n.slice(7):n).trim();if(o==="")return null;const s=t.owned_by;return s===void 0?{id:o}:{id:o,...typeof s=="string"?{ownedBy:s}:{}}}function p9e(e){let t;try{t=JSON.parse(e)}catch{return null}if(t===null||typeof t!="object")return null;const n=t,i=Array.isArray(n.data)?n.data:Array.isArray(n.models)?n.models:null;if(i===null)return null;const o=[],s=new Set;for(const r of i){const a=h9e(r);a===null||s.has(a.id)||(s.add(a.id),o.push(a))}return o.sort((r,a)=>r.id.localeCompare(a.id))}function m9e(){if(typeof window>"u")return;const e=window.kimiDesktop;if(typeof e?.fetchProviderModels!="function")return;const t=e.fetchProviderModels.bind(e);return async n=>{const i=await t(n);if(i!==null&&i.ok)return{status:i.status,body:i.body};throw i!==null&&i.kind==="timeout"?new DOMException("desktop bridge fetch timed out","TimeoutError"):new Error("desktop bridge fetch failed")}}function g9e(){return async({url:e,headers:t,timeoutMs:n})=>{const i=await fetch(e,{method:"GET",headers:t,signal:AbortSignal.timeout(n)});return{status:i.status,body:await i.text()}}}function v9e(){return m9e()??g9e()}function y9e(e){if(e===null||typeof e!="object"||!("name"in e))return!1;const t=e.name;return t==="TimeoutError"||t==="AbortError"}async function b9e(e){const t=d9e(e.baseUrl,e.type);if(t.length===0)return{ok:!1,kind:"notFound"};const n=f9e(e.type,e.apiKey),i=e.impl??v9e(),o=e.timeoutMs??a9e;for(const s of t){let r;try{r=await i({url:s,headers:n,timeoutMs:o})}catch(l){return{ok:!1,kind:y9e(l)?"timeout":"network",detail:l instanceof Error?l.message:String(l)}}if(r.status===401||r.status===403)return{ok:!1,kind:"auth",status:r.status};if(r.status===404||r.status===405)continue;if(r.status<200||r.status>=300)return{ok:!1,kind:"http",status:r.status,detail:r.body.slice(0,512)};const a=p9e(r.body);return a===null?{ok:!1,kind:"parse"}:{ok:!0,models:a}}return{ok:!1,kind:"notFound"}}const B0=[{key:"kimi-for-coding",catalogId:"kimi-for-coding",catalogIds:["kimi-code-plan-cn","kimi-for-coding"],nameKey:"providers.presets.kimiForCoding.name",descKey:"providers.presets.kimiForCoding.desc",icon:"kimi",tagKey:"providers.tags.codingPlan"},{key:"kimi-global",catalogId:"kimi-code-plan-global",catalogIds:["kimi-code-plan-global","kimi-for-coding-global"],nameKey:"providers.presets.kimiForCodingGlobal.name",descKey:"providers.presets.kimiForCodingGlobal.desc",icon:"kimi",tagKey:"providers.tags.codingPlan"},{key:"zai-intl",catalogId:"zai-coding-plan",nameKey:"providers.presets.zaiIntl.name",descKey:"providers.presets.zaiIntl.desc",icon:"zai",tagKey:"providers.tags.codingPlan"},{key:"zai-cn",catalogId:"zhipuai-coding-plan",nameKey:"providers.presets.zaiCn.name",descKey:"providers.presets.zaiCn.desc",icon:"zhipu",tagKey:"providers.tags.codingPlan"},{key:"deepseek",catalogId:"deepseek",nameKey:"providers.presets.deepseek.name",descKey:"providers.presets.deepseek.desc",icon:"deepseek",tagKey:"providers.tags.paygo"},{key:"minimax-intl",catalogId:"minimax-coding-plan",nameKey:"providers.presets.minimaxIntl.name",descKey:"providers.presets.minimaxIntl.desc",icon:"minimax",tagKey:"providers.tags.tokenPlan"},{key:"minimax-cn",catalogId:"minimax-cn-coding-plan",nameKey:"providers.presets.minimaxCn.name",descKey:"providers.presets.minimaxCn.desc",icon:"minimax",tagKey:"providers.tags.tokenPlan"}],k9e={"kimi-code-plan-cn":"https://api.kimi.com/coding/v1","kimi-code-plan-global":"https://api.kimi.ai/coding/v1","kimi-for-coding":"https://api.kimi.com/coding/v1","kimi-for-coding-global":"https://api.kimi.ai/coding/v1"};function z0(e){const t=k9e[e];return t===void 0?null:{type:"kimi",baseUrl:t}}function _6(e,t){const n=e.replace(/\([^)]*\)/g," ").replace(/[^\p{L}\p{N}\-_ ]+/gu,"").replace(/\s+/g," ").trim();return RR.test(n)?n:t}function VJ(e){return[e.catalogId,...e.catalogIds??[]]}function I6(e,t){for(const n of e.catalogIds??[]){const i=t.find(o=>o.id===n);if(i!==void 0)return i}return t.find(n=>n.id===e.catalogId)}function w9e(e,t){return I6(e,t)?.id??e.catalogId}function UJ(e,t){const n=B0.find(i=>{for(const o of VJ(i)){if(o===e)return!0;const s=t?.find(r=>r.id===o);if(s!==void 0&&_6(s.name,s.id)===e)return!0}return!1});return n===void 0?null:{preset:n}}function SS(e){try{return new URL(e).host.toLowerCase()}catch{return null}}function C9e(e,t){if(e===void 0||e.trim()==="")return null;const n=SS(e.trim());if(n===null)return null;const i=B0.find(o=>{for(const s of VJ(o)){const r=z0(s);if(r!==null&&SS(r.baseUrl)===n)return!0;const a=t.find(l=>l.id===s);if(a!==void 0&&a.baseUrl!==null&&SS(a.baseUrl)===n)return!0}return!1});return i===void 0?null:{preset:i}}function A9e(e,t){return t.startsWith("image/")||t==="application/pdf"?!0:e.toLowerCase().endsWith(".pdf")}const T6="/devices/",KJ="kimi-rc-device-id";function X7(e){return new URLSearchParams(e.search).get("rc")==="1"}function ZJ(e){const{pathname:t}=e;if(!t.startsWith(T6))return;const n=t.slice(T6.length).split("/")[0];if(n)try{const i=decodeURIComponent(n);return i.length>0?i:void 0}catch{return}}function S9e(e){if(ZJ({pathname:e})===void 0)return e;const t=e.slice(T6.length),n=t.indexOf("/");return n<0?"/":t.slice(n)}function x9e(e){return`${T6}${encodeURIComponent(e)}/`}function GJ(e,t){const n=new URLSearchParams(t),i=n.get("rc"),o=n.get("from");if(i===null&&o===null)return e;const s=new URLSearchParams;return i!==null&&s.set("rc",i),o!==null&&s.set("from",o),`${e}?${s.toString()}`}function _9e(e){const t=ZJ(e);return t!==void 0?(T9e(t),t):I9e()}function I9e(){try{return window.sessionStorage.getItem(KJ)??void 0}catch{return}}function T9e(e){try{window.sessionStorage.setItem(KJ,e)}catch{}}class M9e extends Error{constructor(t){super(`rc devices fetch failed: ${t}`),this.status=t,this.name="RcDevicesFetchError"}}async function E9e(){const e=await fetch("/v1/remote/devices",{credentials:"same-origin"});if(!e.ok)throw new M9e(e.status);const t=await e.json();return{devices:Array.isArray(t.devices)?t.devices:[],max_devices:typeof t.max_devices=="number"?t.max_devices:void 0}}const L9e=/^(\d+)\t(.*)$/;function R9e(e){const t=e.at(-1)===""?e.slice(0,-1):e;if(t.length===0)return null;const n=[],i=[];for(const o of t){const s=L9e.exec(o);if(!s)return null;i.push(Number(s[1])),n.push(s[2]??"")}return{contents:n,lineNumbers:i}}function AB(e,t){let n="",i=t;const o=/^((?:\\\\|\/\/)[^\\/]+[\\/][^\\/]+)/.exec(t),s=/^([a-zA-Z]:)[\\/]?/.exec(t);o?(n=o[1],i=t.slice(o[1].length)):t.startsWith("/")?(n="/",i=t.slice(1)):s&&(n=s[1],i=t.slice(s[0].length));const r=n!=="",a=i.split(/[\\/]+/).filter(Boolean);for(const c of e.split("/"))c===""||c==="."||(c===".."?a.length>0&&a[a.length-1]!==".."?a.pop():r||a.push(".."):a.push(c));const l=a.join("/");return n==="/"?`/${l}`:n!==""?l?`${n}/${l}`:`${n}/`:l}function P9e(e,t){const n={defaultModel:t.model};return e?.models!==void 0&&!Object.hasOwn(e.models,t.model)&&(n.models={...e.models,[t.model]:""}),t.effort&&(n.defaultEffort=t.effort),n}const ba="kimi-web.server-credential",$9e="token",O9e=10080*60*1e3;let Kd;const aT=new Set;function F9e(){if(typeof window>"u")return;const e=window.location.hash??"";if(!e.startsWith("#"))return;const n=new URLSearchParams(e.slice(1)).get($9e);if(!n)return;const i=new URL(window.location.href);return i.hash="",window.history.replaceState(window.history.state,"",`${i.pathname}${i.search}`),n}function lT(e){return{version:1,credential:e,expiresAt:Date.now()+O9e}}function D9e(e){return JSON.stringify(e)}function PR(e){try{const t=JSON.parse(e);if(typeof t!="object"||t===null)return;const n=t;return n.version!==1||typeof n.credential!="string"||n.credential.length===0||typeof n.expiresAt!="number"||!Number.isFinite(n.expiresAt)?void 0:{version:1,credential:n.credential,expiresAt:n.expiresAt}}catch{return}}function cT(e){globalThis.localStorage?.setItem(ba,D9e(e))}function N9e(){try{const e=globalThis.localStorage?.getItem(ba);if(e){const n=PR(e);if(n===void 0){const i=lT(e);let o=!1;try{cT(i),o=!0}catch{}if(!o)try{globalThis.localStorage?.getItem(ba)===e&&globalThis.localStorage?.removeItem(ba),o=!0}catch{}try{globalThis.sessionStorage?.removeItem(ba)}catch{}return o?i:void 0}if(n.expiresAt>Date.now())return n;globalThis.sessionStorage?.removeItem(ba),globalThis.localStorage?.getItem(ba)===e&&globalThis.localStorage?.removeItem(ba);return}const t=globalThis.sessionStorage?.getItem(ba);if(t){const n=lT(t);let i=!1;try{cT(n),i=!0}catch{}try{globalThis.sessionStorage?.removeItem(ba),i=!0}catch{}return i?n:void 0}return}catch{return}}function B9e(){const e=F9e();return e?(QJ(e),!0):(Kd=N9e(),Kd!==void 0)}function z9e(){if(Kd!==void 0){if(Kd.expiresAt<=Date.now()){H9e(Kd);return}return Kd.credential}}function H9e(e){Kd=void 0;try{globalThis.sessionStorage?.removeItem(ba);const t=globalThis.localStorage?.getItem(ba),n=t==null?void 0:PR(t);(n===void 0?t===e.credential:n.credential===e.credential&&n.expiresAt===e.expiresAt)&&globalThis.localStorage?.removeItem(ba)}catch{}}function QJ(e){const t=lT(e);Kd=t;try{cT(t)}catch{}try{globalThis.sessionStorage?.removeItem(ba)}catch{}}function j9e(){const e=Kd;Kd=void 0;try{const t=globalThis.localStorage?.getItem(ba),i=(t==null?void 0:PR(t))?.credential??t;e!==void 0&&i===e.credential&&globalThis.localStorage?.removeItem(ba),globalThis.sessionStorage?.removeItem(ba)}catch{}}function W9e(e){return aT.add(e),()=>{aT.delete(e)}}function q9e(){j9e();for(const e of aT)try{e()}catch{}}function ib(e){return e.approvalCount>0?"awaiting-approval":e.questionCount>0?"awaiting-question":e.pendingInteraction==="approval"?"awaiting-approval":e.pendingInteraction==="question"?"awaiting-question":e.busy?"running":e.lastTurnReason==="failed"?"aborted":e.unread?"unread":"idle"}function SB(e){let t=null;for(const n of e){const i=ib(n);if(i==="awaiting-approval")return"approval";i==="awaiting-question"?t="question":i==="aborted"?t!=="question"&&(t="aborted"):i==="unread"&&t===null&&(t="unread")}return t}let xB;function V9e(e){if(typeof Intl.Segmenter=="function")return xB??=new Intl.Segmenter("und",{granularity:"grapheme"}),xB.segment(e)}const U9e=/\p{Emoji_Presentation}/u,K9e=/\p{Regional_Indicator}/u,Z9e=/\p{Extended_Pictographic}/u,G9e="️";function Q9e(e){return U9e.test(e)||K9e.test(e)?!0:Z9e.test(e)&&e.includes(G9e)}function YJ(e){const t=V9e(e)?.[Symbol.iterator]().next().value;if(t===void 0||!Q9e(t.segment))return{emoji:null,rest:e};const n=e.slice(t.index+t.segment.length).replace(/^\s+/,"");return{emoji:t.segment,rest:n}}function Y9e(e,t){const{rest:n}=YJ(e),i=t?.trim()??"";return i?n?`${i} ${n}`:i:n}function JJ(e,t){const n=e.findIndex(s=>s.id===t.id);if(n!==-1&&e[n].updatedAt===t.updatedAt)return e.map(s=>s.id===t.id?t:s);const i=e.filter(s=>s.id!==t.id),o=i.findIndex(s=>s.updatedAt0?i:void 0}catch{return}}function J9e(e){return e===void 0||e.length===0?"/":`${uT}${encodeURIComponent(e)}`}function eC(){if(typeof navigator>"u")return!1;if(/Mac|iPod|iPhone|iPad/.test(navigator.platform))return!0;const e=navigator.userAgentData;return e?.platform==="macOS"||e?.platform==="iOS"}function nX(e,t=eC()){return(t?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey)&&!e.altKey&&!e.shiftKey&&(e.code==="KeyA"||e.key.toLowerCase()==="a")&&!e.defaultPrevented}function _B(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement&&(e.isContentEditable||e.closest("input, textarea")!==null)}function X9e(e,t){return typeof Element>"u"||!(e instanceof Element)?null:e.closest(t)}function IB(e){e.ownerDocument.getSelection()?.selectAllChildren(e)}function e3e(e,t=eC()){return(t?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey)&&!e.altKey&&!e.shiftKey&&(e.code==="KeyK"||e.key.toLowerCase()==="k")&&!e.defaultPrevented}const t3e=[{pattern:/\brm\s+(?:-[a-zA-Z]*[rf][a-zA-Z]*|--recursive|--force)\b/,detail:"rm -rf"},{pattern:/\bsudo\b/,detail:"sudo"},{pattern:/\bmkfs(?:\.[a-z0-9]+)?\b/,detail:"mkfs"},{pattern:/\bdd\b[^|;&]*\bof=/,detail:"dd of=…"},{pattern:/>\s*\/dev\/(?:sd|nvme|disk|hd)/,detail:"> /dev/…"},{pattern:/:\(\)\s*\{/,detail:"fork bomb"},{pattern:/\bgit\s+push\b[^|;&]*(?:--force(?:-with-lease)?\b|\s-f\b)/,detail:"git push --force"},{pattern:/\bchmod\s+(?:-[a-zA-Z]+\s+)*777\b/,detail:"chmod 777"},{pattern:/\b(?:curl|wget)\b[^|;&]*\|\s*(?:sudo\s+)?(?:ba|z)?sh\b/,detail:"curl | sh"},{pattern:/\b(?:shutdown|reboot|poweroff|halt)\b/,detail:"shutdown / reboot"}];function n3e(e){const t=e.replace(/"[^"]*"|'[^']*'/g," ");for(const{pattern:n,detail:i}of t3e)if(n.test(t))return i}function yp(e){return Array.isArray?Array.isArray(e):oX(e)==="[object Array]"}function i3e(e){if(typeof e=="string")return e;if(typeof e=="bigint")return e.toString();const t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function dT(e){return e==null?"":i3e(e)}function Da(e){return typeof e=="string"}function U8(e){return typeof e=="number"}function o3e(e){return e===!0||e===!1||s3e(e)&&oX(e)=="[object Boolean]"}function iX(e){return typeof e=="object"}function s3e(e){return iX(e)&&e!==null}function wc(e){return e!=null}function S5(e){return!e.trim().length}function oX(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const r3e="Incorrect 'index' type",fT="Invalid doc index: must be a non-negative integer within the bounds of the docs array",a3e=e=>`Invalid value for key ${e}`,l3e=e=>`Pattern length exceeds max of ${e}.`,c3e=e=>`Missing ${e} property in key`,u3e=e=>`Property 'weight' in key '${e}' must be a positive integer`,d3e="Fuse.match does not support useTokenSearch: token search requires corpus-level statistics (df, fieldCount) that a one-off string comparison does not have. Use new Fuse(...).search(...) instead.",TB=Object.prototype.hasOwnProperty;var f3e=class{constructor(e){this._keys=[],this._keyMap={};let t=0;e.forEach(n=>{const i=sX(n);this._keys.push(i),this._keyMap[i.id]=i,t+=i.weight}),this._keys.forEach(n=>{n.weight/=t})}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}};function sX(e){let t=null,n=null,i=null,o=1,s=null;if(Da(e)||yp(e))i=e,t=MB(e),n=K8(e);else{if(!TB.call(e,"name"))throw new Error(c3e("name"));const r=e.name;if(i=r,TB.call(e,"weight")&&e.weight!==void 0&&(o=e.weight,o<=0))throw new Error(u3e(K8(r)));t=MB(r),n=K8(r),s=e.getFn??null}return{path:t,id:n,weight:o,src:i,getFn:s}}function MB(e){return yp(e)?e:e.split(".")}function K8(e){return yp(e)?e.join("."):e}function h3e(e,t){const n=[];let i=!1;const o=(s,r,a,l)=>{if(wc(s))if(!r[a])n.push(l!==void 0?{v:s,i:l}:s);else{const c=s[r[a]];if(!wc(c))return;if(a===r.length-1&&(Da(c)||U8(c)||o3e(c)||typeof c=="bigint"))n.push(l!==void 0?{v:dT(c),i:l}:dT(c));else if(yp(c)){i=!0;for(let u=0,d=c.length;ue.score===t.score?e.idx=9&&e<=13||e===32||e===160}function b3e(e=1,t=3){const n=new Map,i=Math.pow(10,t);return{get(o){let s=0,r=!1;for(let l=0;l{this._keysMap[t.id]=n})}create(){if(this.isCreated||!this.docs.length)return;this.isCreated=!0;const e=this.docs.length;this.records=new Array(e);let t=0;if(Da(this.docs[0]))for(let n=0;ne&&(this.records[t].i-=1)}removeAll(e){const t=new Set;for(const i of e)Number.isInteger(i)&&i>=0&&t.add(i);if(t.size===0)return;this.records=this.records.filter(i=>!t.has(i.i));const n=Array.from(t).sort((i,o)=>i-o);for(const i of this.records){let o=0,s=n.length;for(;o>>1;n[r]t),records:this.records}}};function rX(e,t,{getFn:n=ki.getFn,fieldNormWeight:i=ki.fieldNormWeight}={}){const o=new $R({getFn:n,fieldNormWeight:i});return o.setKeys(e.map(sX)),o.setSources(t),o.create(),o}function k3e(e,{getFn:t=ki.getFn,fieldNormWeight:n=ki.fieldNormWeight}={}){const{keys:i,records:o}=e,s=new $R({getFn:t,fieldNormWeight:n});return s.setKeys(i),s.setIndexRecords(o),s}function w3e(e=[],t=ki.minMatchCharLength){const n=[];let i=-1,o=-1,s=0;for(let r=e.length;s=t&&n.push([i,o]),i=-1)}return e[s-1]&&s-i>=t&&n.push([i,s-1]),n}function C3e(e,t,n,{location:i=ki.location,distance:o=ki.distance,threshold:s=ki.threshold,findAllMatches:r=ki.findAllMatches,minMatchCharLength:a=ki.minMatchCharLength,includeMatches:l=ki.includeMatches,ignoreLocation:c=ki.ignoreLocation}={}){if(t.length>32)throw new Error(l3e(32));const u=t.length,d=e.length,f=Math.max(0,Math.min(i,d));let h=s,m=f;const g=(T,E)=>{const L=T/u;if(c)return L;const P=Math.abs(f-E);return o?L+P/o:P?1:L},y=a>1||l,v=y?Array(d):[];let k;for(;(k=e.indexOf(t,m))>-1;){const T=g(0,k);if(h=Math.min(T,h),m=k+u,y){let E=0;for(;E=P;N-=1){const D=N-1,j=n[e[D]];if(V[N]=(V[N+1]<<1|1)&j,T&&(V[N]|=(C[N+1]|C[N])<<1|1|C[N+1]),V[N]&M&&(w=g(T,D),w<=h)){if(h=w,m=D,S=T,m<=f)break;P=Math.max(1,2*f-m)}}if(g(T+1,f)>h)break;C=V}if(y&&m>=0){const T=Math.min(d-1,m+u-1+S);for(let E=m;E<=T;E+=1)n[e[E]]&&(v[E]=1)}const I={isMatch:m>=0,score:Math.max(.001,w)};if(y){const T=w3e(v,a);T.length?l&&(I.indices=T):I.isMatch=!1}return I}function A3e(e){const t={};for(let n=0,i=e.length;nn[0]-i[0]||n[1]-i[1]);const t=[e[0]];for(let n=1,i=e.length;ne.normalize("NFD").replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,"").replace(S3e,t=>aX[t]):e=>e;var FR=class{constructor(e,{location:t=ki.location,threshold:n=ki.threshold,distance:i=ki.distance,includeMatches:o=ki.includeMatches,findAllMatches:s=ki.findAllMatches,minMatchCharLength:r=ki.minMatchCharLength,isCaseSensitive:a=ki.isCaseSensitive,ignoreDiacritics:l=ki.ignoreDiacritics,ignoreLocation:c=ki.ignoreLocation}={}){if(this.options={location:t,threshold:n,distance:i,includeMatches:o,findAllMatches:s,minMatchCharLength:r,isCaseSensitive:a,ignoreDiacritics:l,ignoreLocation:c},e=a?e:e.toLowerCase(),e=l?W9(e):e,this.pattern=e,this.chunks=[],!this.pattern.length)return;const u=(f,h)=>{this.chunks.push({pattern:f,alphabet:A3e(f),startIndex:h})},d=this.pattern.length;if(d>32){let f=0;const h=d%32,m=d-h;for(;f{const{isMatch:v,score:k,indices:C}=C3e(e,m,g,{location:o+y,distance:s,threshold:r,findAllMatches:a,minMatchCharLength:l,includeMatches:i,ignoreLocation:c});v&&(f=!0),d+=k,v&&C&&u.push(...C)});const h={isMatch:f,score:f?d/this.chunks.length:1};return f&&i&&(h.indices=OR(u)),h}};const x3e=new Set(["fuzzy","include"]);function _3e(e){return e.startsWith("inverse")}const hT=[{type:"exact",multiRegex:/^="(.*)"$/,singleRegex:/^=(.*)$/,create:e=>({type:"exact",search(t){const n=t===e;return{isMatch:n,score:n?0:1,indices:[0,e.length-1]}}})},{type:"include",multiRegex:/^'"(.*)"$/,singleRegex:/^'(.*)$/,create:e=>({type:"include",search(t){let n=0,i;const o=[],s=e.length;for(;(i=t.indexOf(e,n))>-1;)n=i+s,o.push([i,n-1]);const r=!!o.length;return{isMatch:r,score:r?0:1,indices:o}}})},{type:"prefix-exact",multiRegex:/^\^"(.*)"$/,singleRegex:/^\^(.*)$/,create:e=>({type:"prefix-exact",search(t){const n=t.startsWith(e);return{isMatch:n,score:n?0:1,indices:[0,e.length-1]}}})},{type:"inverse-prefix-exact",multiRegex:/^!\^"(.*)"$/,singleRegex:/^!\^(.*)$/,create:e=>({type:"inverse-prefix-exact",search(t){const n=!t.startsWith(e);return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}})},{type:"inverse-suffix-exact",multiRegex:/^!"(.*)"\$$/,singleRegex:/^!(.*)\$$/,create:e=>({type:"inverse-suffix-exact",search(t){const n=!t.endsWith(e);return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}})},{type:"suffix-exact",multiRegex:/^"(.*)"\$$/,singleRegex:/^(.*)\$$/,create:e=>({type:"suffix-exact",search(t){const n=t.endsWith(e);return{isMatch:n,score:n?0:1,indices:[t.length-e.length,t.length-1]}}})},{type:"inverse-exact",multiRegex:/^!"(.*)"$/,singleRegex:/^!(.*)$/,create:e=>({type:"inverse-exact",search(t){const n=t.indexOf(e)===-1;return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}})},{type:"fuzzy",multiRegex:/^"(.*)"$/,singleRegex:/^(.*)$/,create:(e,t={})=>{const n=new FR(e,{location:t.location??ki.location,threshold:t.threshold??ki.threshold,distance:t.distance??ki.distance,includeMatches:t.includeMatches??ki.includeMatches,findAllMatches:t.findAllMatches??ki.findAllMatches,minMatchCharLength:t.minMatchCharLength??ki.minMatchCharLength,isCaseSensitive:t.isCaseSensitive??ki.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics??ki.ignoreDiacritics,ignoreLocation:t.ignoreLocation??ki.ignoreLocation});return{type:"fuzzy",search(i){return n.searchIn(i)}}}}],EB=hT.length,I3e="\0",T3e="|";function M3e(e){const t=[],n=e.length;let i=0;for(;i=n)break;let o=i;for(;o=n||e[s]===" "){o++;break}if(e[s]==="$"&&(s+1>=n||e[s+1]===" ")){o+=2;break}}o++}t.push(e.substring(i,o)),i=o}else{for(;o{const i=M3e(n.replace(/\u0000/g,"|").trim()).filter(s=>s&&!!s.trim()),o=[];for(let s=0,r=i.length;s!!(e[E6.AND]||e[E6.OR]),R3e=e=>!!e[mT.PATH],P3e=e=>!yp(e)&&iX(e)&&!gT(e),RB=e=>({[E6.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function lX(e,t,{auto:n=!0}={}){const i=o=>{if(Da(o)){const l={keyId:null,pattern:o};return n&&(l.searcher=M6(o,t)),l}const s=Object.keys(o),r=R3e(o);if(!r&&s.length>1&&!gT(o))return i(RB(o));if(P3e(o)){const l=r?o[mT.PATH]:s[0],c=r?o[mT.PATTERN]:o[l];if(!Da(c))throw new Error(a3e(l));const u={keyId:K8(l),pattern:c};return n&&(u.searcher=M6(c,t)),u}const a={children:[],operator:s[0]};return s.forEach(l=>{const c=o[l];yp(c)&&c.forEach(u=>{a.children.push(i(u))})}),a};return gT(e)||(e=RB(e)),i(e)}function vT(e,{ignoreFieldNorm:t=ki.ignoreFieldNorm}){let n=1;return e.forEach(({key:i,norm:o,score:s})=>{const r=i?i.weight:null;n*=Math.pow(s===0&&r?Number.EPSILON:s,(r||1)*(t?1:o))}),n}function $3e(e,{ignoreFieldNorm:t=ki.ignoreFieldNorm}){e.forEach(n=>{n.score=vT(n.matches,{ignoreFieldNorm:t})})}var O3e=class{constructor(e,t){this.limit=e,this.heap=[],this.comparator=t}get size(){return this.heap.length}insert(e){this.size0;){const n=e-1>>1;if(this.comparator(t[e],t[n])<=0)break;const i=t[e];t[e]=t[n],t[n]=i,e=n}}_sinkDown(e){const t=this.heap,n=t.length;let i=e;do{e=i;const o=2*e+1,s=2*e+2;if(o0&&(i=o),s0&&(i=s),i!==e){const r=t[e];t[e]=t[i],t[i]=r}}while(i!==e)}};function F3e(e){const t=[];return e.matches.forEach(n=>{if(!wc(n.indices)||!n.indices.length)return;const i={indices:n.indices,value:n.value};n.key&&(i.key=n.key.id),n.idx>-1&&(i.refIndex=n.idx),t.push(i)}),t}function D3e(e,t,{includeMatches:n=ki.includeMatches,includeScore:i=ki.includeScore}={}){return e.map(o=>{const{idx:s}=o,r={item:t[s],refIndex:s};return n&&(r.matches=F3e(o)),i&&(r.score=o.score),r})}const N3e=/[\p{L}\p{M}\p{N}_]+/gu,PB=new WeakSet;function B3e(e){PB.has(e)||(PB.add(e),console.warn(`[Fuse] tokenize regex ${e} lacks the global flag; only the first match per text will be returned. Add the 'g' flag.`))}function z3e(e){if(typeof e=="function"){let t=!1;return n=>{const i=e(n);if(!t&&(t=!0,!Array.isArray(i)||i.some(o=>typeof o!="string")))throw new Error(`[Fuse] tokenize function must return string[]; received ${Array.isArray(i)?"array containing non-strings":typeof i}.`);return i}}return e instanceof RegExp?(e.global||B3e(e),t=>t.match(e)||[]):t=>t.match(N3e)||[]}function yT({isCaseSensitive:e=!1,ignoreDiacritics:t=!1,tokenize:n}={}){const i=z3e(n);return{tokenize(o){return e||(o=o.toLowerCase()),t&&(o=W9(o)),i(o)}}}var H3e=class{static condition(e,t){return t.useTokenSearch}constructor(e,t){this.options=t,this.analyzer=yT({isCaseSensitive:t.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics,tokenize:t.tokenize});const n=this.analyzer.tokenize(e),{df:i,fieldCount:o}=t._invertedIndex;this.termSearchers=[],this.idfWeights=[];for(const s of n){this.termSearchers.push(new FR(s,{location:t.location,threshold:t.threshold,distance:t.distance,includeMatches:t.includeMatches,findAllMatches:t.findAllMatches,minMatchCharLength:t.minMatchCharLength,isCaseSensitive:t.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics,ignoreLocation:!0}));const r=i.get(s)||0,a=Math.log(1+(o-r+.5)/(r+.5));this.idfWeights.push(a)}this.combineAll=t.tokenMatch==="all",this.numTerms=this.termSearchers.length,this.useMask=this.numTerms<=31}searchIn(e){if(!this.termSearchers.length)return{isMatch:!1,score:1};const t=[];let n=0,i=0,o=0,s=0;const r=this.combineAll&&!this.useMask?new Set:null;for(let c=0;c0?1-n/i:0,l={isMatch:!0,score:Math.max(.001,a)};return this.options.includeMatches&&t.length&&(l.indices=OR(t)),this.combineAll&&(this.useMask?l.matchedMask=s:l.matchedTerms=r,l.termCount=this.numTerms),l}};function xS(e,t,n,i){const o=i.tokenize(t);if(!o.length)return;e.fieldCount++,e.docFieldCount.set(n,(e.docFieldCount.get(n)||0)+1);const s=new Set(o);let r=e.docTermFieldHits.get(n);r||(r=new Map,e.docTermFieldHits.set(n,r));for(const a of s)r.set(a,(r.get(a)||0)+1),e.df.set(a,(e.df.get(a)||0)+1)}function cX(e,t,n,i){const{i:o,v:s,$:r}=t;if(s!==void 0){xS(e,s,o,i);return}if(r)for(let a=0;aa-l);for(const a of n)q3e(e,a);const i=a=>{let l=0,c=n.length;for(;l>>1;n[u]o?i(a):a,l);e.docFieldCount=s;const r=new Map;for(const[a,l]of e.docTermFieldHits)r.set(a>o?i(a):a,l);e.docTermFieldHits=r}var bp=class{constructor(e,t,n){this.options={...ki,...t},this.options.useExtendedSearch,this.options.useTokenSearch,this._keyStore=new f3e(this.options.keys),this._docs=e,this._myIndex=null,this._invertedIndex=null,this.setCollection(e,n),this._lastQuery=null,this._lastSearcher=null}_getSearcher(e){if(this._lastQuery===e)return this._lastSearcher;const t=M6(e,this._invertedIndex?{...this.options,_invertedIndex:this._invertedIndex}:this.options);return this._lastQuery=e,this._lastSearcher=t,t}setCollection(e,t){if(this._docs=e,t&&!(t instanceof $R))throw new Error(r3e);if(this._myIndex=t||rX(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){const n=yT({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});this._invertedIndex=j3e(this._myIndex.records,this._myIndex.keys.length,n)}this._invalidateSearcherCache()}add(e){if(!wc(e))return;this._docs.push(e);const t=this._myIndex.add(e,this._docs.length-1);if(this._invertedIndex&&t){const n=yT({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});W3e(this._invertedIndex,t,this._myIndex.keys.length,n)}this._invalidateSearcherCache()}remove(e=()=>!1){const t=[],n=[];for(let i=0,o=this._docs.length;i!i.has(s)),this._myIndex.removeAll(n),this._invalidateSearcherCache()}return t}removeAt(e){if(!Number.isInteger(e)||e<0||e>=this._docs.length)throw new Error(fT);this._invertedIndex&&$B(this._invertedIndex,[e]);const t=this._docs.splice(e,1)[0];return this._myIndex.removeAt(e),this._invalidateSearcherCache(),t}_invalidateSearcherCache(){this._lastQuery=null,this._lastSearcher=null}getIndex(){return this._myIndex}_normalizedKeys(){return this._myIndex.keys.map(e=>this._keyStore.get(e.id)||e)}search(e,t){const{limit:n=-1}=t||{},{includeMatches:i,includeScore:o,shouldSort:s,sortFn:r,ignoreFieldNorm:a}=this.options;if(Da(e)&&!e.trim()){let f=this._docs.map((h,m)=>({item:h,refIndex:m}));return U8(n)&&n>-1&&(f=f.slice(0,n)),f}const l=s&&U8(n)&&n>0&&Da(e),c=r,u=(f,h)=>c(f,h)||f.idx-h.idx;let d;if(l){const f=new O3e(n,u);Da(this._docs[0])?this._searchStringList(e,{heap:f,ignoreFieldNorm:a}):this._searchObjectList(e,{heap:f,ignoreFieldNorm:a}),d=f.extractSorted()}else d=Da(e)?Da(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e),$3e(d,{ignoreFieldNorm:a}),s&&d.sort(Da(e)?u:c),U8(n)&&n>-1&&(d=d.slice(0,n));return D3e(d,this._docs,{includeMatches:i,includeScore:o})}_searchStringList(e,{heap:t,ignoreFieldNorm:n}={}){const i=this._getSearcher(e),o=this.options.useTokenSearch&&this.options.tokenMatch==="all",{records:s}=this._myIndex,r=t?null:[];return s.forEach(({v:a,i:l,n:c})=>{if(!wc(a))return;const u=i.searchIn(a);if(u.isMatch){const d={score:u.score,value:a,norm:c,indices:u.indices};o&&(d.matchedMask=u.matchedMask,d.matchedTerms=u.matchedTerms,d.termCount=u.termCount);const f=[d];if(!o||this._coversAllTokens(f)){const h={item:a,idx:l,matches:f};t?(h.score=vT(h.matches,{ignoreFieldNorm:n}),t.insert(h)):r.push(h)}}}),r}_searchLogical(e){const t=lX(e,this.options),n=this._normalizedKeys(),i=(a,l,c)=>{if(!("children"in a)){const{keyId:h,searcher:m}=a;let g;return h===null?(g=[],n.forEach((y,v)=>{g.push(...this._findMatches({key:y,value:l[v],searcher:m}))})):g=this._findMatches({key:this._keyStore.get(h),value:this._myIndex.getValueForItemAtKeyId(l,h),searcher:m}),g&&g.length?[{idx:c,item:l,matches:g}]:[]}const{children:u,operator:d}=a,f=[];for(let h=0,m=u.length;h{if(wc(a)){const c=i(t,a,l);c.length&&(s.has(l)||(s.set(l,{idx:l,item:a,matches:[]}),r.push(s.get(l))),c.forEach(({matches:u})=>{s.get(l).matches.push(...u)}))}}),r}_searchObjectList(e,{heap:t,ignoreFieldNorm:n}={}){const i=this._getSearcher(e),o=this.options.useTokenSearch&&this.options.tokenMatch==="all",{records:s}=this._myIndex,r=this._normalizedKeys(),a=t?null:[];return s.forEach(({$:l,i:c})=>{if(!wc(l))return;const u=[];let d=!1,f=!1;if(r.forEach((h,m)=>{const g=this._findMatches({key:h,value:l[m],searcher:i});g.length?(u.push(...g),g[0].hasInverse&&(f=!0)):d=!0}),!(f&&d)&&u.length&&(!o||this._coversAllTokens(u))){const h={idx:c,item:l,matches:u};t?(h.score=vT(h.matches,{ignoreFieldNorm:n}),t.insert(h)):a.push(h)}}),a}_findMatches({key:e,value:t,searcher:n}){if(!wc(t))return[];const i=[];if(yp(t))t.forEach(({v:o,i:s,n:r})=>{if(!wc(o))return;const a=n.searchIn(o);if(a.isMatch){const l={score:a.score,key:e,value:o,idx:s,norm:r,indices:a.indices,hasInverse:a.hasInverse};a.termCount!==void 0&&(l.matchedMask=a.matchedMask,l.matchedTerms=a.matchedTerms,l.termCount=a.termCount),i.push(l)}});else{const{v:o,n:s}=t,r=n.searchIn(o);if(r.isMatch){const a={score:r.score,key:e,value:o,norm:s,indices:r.indices,hasInverse:r.hasInverse};r.termCount!==void 0&&(a.matchedMask=r.matchedMask,a.matchedTerms=r.matchedTerms,a.termCount=r.termCount),i.push(a)}}return i}_coversAllTokens(e){const t=e.length?e[0].termCount:void 0;if(t===void 0)return!0;if(t<=31){let i=0;for(let o=0;oDR(t))};var V3e=bp;const U3e=/^[\uD800-\uDBFF]$/,K3e=/^[\uDC00-\uDFFF]$/,Z3e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;var OB;(function(e){e[e.Unknown=1e-13]="Unknown",e[e.Rule=1e-12]="Rule",e[e.DICT=2e-8]="DICT",e[e.Surname=1]="Surname",e[e.Custom=1]="Custom"})(OB||(OB={}));const Nc={Normal:1,Surname:10,Custom:100};function Uu(e){var t;return e.length-(((t=e.match(Z3e))===null||t===void 0?void 0:t.length)||0)}function bT(e){const t=[];let n=0;for(;n1)return this.StringDICT.get(t);{const n=t.charCodeAt(0);return this.NumberDICT[n]}}set(t,n){if(t.length>1)this.StringDICT.set(t,n);else{const i=t.charCodeAt(0);this.NumberDICT[i]=n}}clear(){this.NumberDICT=[],this.StringDICT.clear()}}const G3e=["zh","ch","sh","z","c","s","b","p","m","f","d","t","n","l","g","k","h","j","q","x","r","y","w",""],Q3e=["j","q","x"],Y3e=["uān","uán","uǎn","uàn","uan","uē","ué","uě","uè","ue","ūn","ún","ǔn","ùn","un","ū","ú","ǔ","ù","u"],J3e={uān:"üān",uán:"üán",uǎn:"üǎn",uàn:"üàn",uan:"üan",uē:"üē",ué:"üé",uě:"üě",uè:"üè",ue:"üe",ūn:"ǖn",ún:"ǘn",ǔn:"ǚn",ùn:"ǜn",un:"ün",ū:"ǖ",ú:"ǘ",ǔ:"ǚ",ù:"ǜ",u:"ü"},X3e=["ia","ian","iang","iao","ie","iu","iong","ua","uai","uan","uang","ue","ui","uo","üan","üe","van","ve"],FB={一:"yì",二:"èr",三:"sān",四:"sì",五:"wǔ",六:"liù",七:"qī",八:"bā",九:"jiǔ",十:"shí",百:"bǎi",千:"qiān",万:"wàn",亿:"yì",单:"dān",两:"liǎng",双:"shuāng",多:"duō",几:"jǐ",十一:"shí yī",零一:"líng yī",第一:"dì yī",一十:"yī shí",一十一:"yī shí yī"},DB={重:"chóng",行:"háng",斗:"dǒu",更:"gēng"};function ebe(){const e={零一:"líng yī","〇一":"líng yī",十一:"shí yī",一十:"yī shí",第一:"dì yī",一十一:"yī shí yī"};for(let t in FB)for(let n in DB){const i=`${t}${n}`,o=`${FB[t]} ${DB[n]}`;e[i]=o}return e}const NB=ebe(),tbe=Object.keys(NB).map(e=>({zh:e,pinyin:NB[e],probability:1e-12,length:Uu(e),priority:Nc.Normal,dict:Symbol("rule")})),dX={不:{bú:[4]},一:{yí:[4],yì:[1,2,3]}},nbe={不:["的","而","之","后","也","还","地"],一:["的","而","之","后","也","还","是"]},ibe=Object.keys(dX),kT={南宫:"nán gōng",第五:"dì wǔ",万俟:"mò qí",司马:"sī mǎ",上官:"shàng guān",欧阳:"ōu yáng",夏侯:"xià hóu",诸葛:"zhū gě",闻人:"wén rén",东方:"dōng fāng",赫连:"hè lián",皇甫:"huáng fǔ",尉迟:"yù chí",公羊:"gōng yáng",澹台:"tán tái",公冶:"gōng yě",宗政:"zōng zhèng",濮阳:"pú yáng",淳于:"chún yú",太叔:"tài shū",申屠:"shēn tú",公孙:"gōng sūn",仲孙:"zhòng sūn",轩辕:"xuān yuán",令狐:"líng hú",钟离:"zhōng lí",宇文:"yǔ wén",长孙:"zhǎng sūn",慕容:"mù róng",鲜于:"xiān yú",闾丘:"lǘ qiū",司徒:"sī tú",司空:"sī kōng",亓官:"qí guān",司寇:"sī kòu",仉督:"zhǎng dū",子车:"zǐ jū",颛孙:"zhuān sūn",端木:"duān mù",巫马:"wū mǎ",公西:"gōng xī",漆雕:"qī diāo",乐正:"yuè zhèng",壤驷:"rǎng sì",公良:"gōng liáng",拓跋:"tuò bá",夹谷:"jiá gǔ",宰父:"zǎi fǔ",榖梁:"gǔ liáng",段干:"duàn gān",百里:"bǎi lǐ",东郭:"dōng guō",南门:"nán mén",呼延:"hū yán",羊舌:"yáng shé",梁丘:"liáng qiū",左丘:"zuǒ qiū",东门:"dōng mén",西门:"xī mén",句龙:"gōu lóng",毌丘:"guàn qiū",赵:"zhào",钱:"qián",孙:"sūn",李:"lǐ",周:"zhōu",吴:"wú",郑:"zhèng",王:"wáng",冯:"féng",陈:"chén",褚:"chǔ",卫:"wèi",蒋:"jiǎng",沈:"shěn",韩:"hán",杨:"yáng",朱:"zhū",秦:"qín",尤:"yóu",许:"xǔ",何:"hé",吕:"lǚ",施:"shī",张:"zhāng",孔:"kǒng",曹:"cáo",严:"yán",华:"huà",金:"jīn",魏:"wèi",陶:"táo",姜:"jiāng",戚:"qī",谢:"xiè",邹:"zōu",喻:"yù",柏:"bǎi",水:"shuǐ",窦:"dòu",章:"zhāng",云:"yún",苏:"sū",潘:"pān",葛:"gě",奚:"xī",范:"fàn",彭:"péng",郎:"láng",鲁:"lǔ",韦:"wéi",昌:"chāng",马:"mǎ",苗:"miáo",凤:"fèng",花:"huā",方:"fāng",俞:"yú",任:"rén",袁:"yuán",柳:"liǔ",酆:"fēng",鲍:"bào",史:"shǐ",唐:"táng",费:"fèi",廉:"lián",岑:"cén",薛:"xuē",雷:"léi",贺:"hè",倪:"ní",汤:"tāng",滕:"téng",殷:"yīn",罗:"luó",毕:"bì",郝:"hǎo",邬:"wū",安:"ān",常:"cháng",乐:"yuè",于:"yú",时:"shí",傅:"fù",皮:"pí",卞:"biàn",齐:"qí",康:"kāng",伍:"wǔ",余:"yú",元:"yuán",卜:"bǔ",顾:"gù",孟:"mèng",平:"píng",黄:"huáng",和:"hé",穆:"mù",萧:"xiāo",尹:"yǐn",姚:"yáo",邵:"shào",湛:"zhàn",汪:"wāng",祁:"qí",毛:"máo",禹:"yǔ",狄:"dí",米:"mǐ",贝:"bèi",明:"míng",臧:"zāng",计:"jì",伏:"fú",成:"chéng",戴:"dài",谈:"tán",宋:"sòng",茅:"máo",庞:"páng",熊:"xióng",纪:"jǐ",舒:"shū",屈:"qū",项:"xiàng",祝:"zhù",董:"dǒng",梁:"liáng",杜:"dù",阮:"ruǎn",蓝:"lán",闵:"mǐn",席:"xí",季:"jì",麻:"má",强:"qiáng",贾:"jiǎ",路:"lù",娄:"lóu",危:"wēi",江:"jiāng",童:"tóng",颜:"yán",郭:"guō",梅:"méi",盛:"shèng",林:"lín",刁:"diāo",钟:"zhōng",徐:"xú",邱:"qiū",骆:"luò",高:"gāo",夏:"xià",蔡:"cài",田:"tián",樊:"fán",胡:"hú",凌:"líng",霍:"huò",虞:"yú",万:"wàn",支:"zhī",柯:"kē",昝:"zǎn",管:"guǎn",卢:"lú",莫:"mò",经:"jīng",房:"fáng",裘:"qiú",缪:"miào",干:"gān",解:"xiè",应:"yīng",宗:"zōng",丁:"dīng",宣:"xuān",贲:"bēn",邓:"dèng",郁:"yù",单:"shàn",杭:"háng",洪:"hóng",包:"bāo",诸:"zhū",左:"zuǒ",石:"shí",崔:"cuī",吉:"jí",钮:"niǔ",龚:"gōng",程:"chéng",嵇:"jī",邢:"xíng",滑:"huá",裴:"péi",陆:"lù",荣:"róng",翁:"wēng",荀:"xún",羊:"yáng",於:"yū",惠:"huì",甄:"zhēn",曲:"qū",家:"jiā",封:"fēng",芮:"ruì",羿:"yì",储:"chǔ",靳:"jìn",汲:"jí",邴:"bǐng",糜:"mí",松:"sōng",井:"jǐng",段:"duàn",富:"fù",巫:"wū",乌:"wū",焦:"jiāo",巴:"bā",弓:"gōng",牧:"mù",隗:"wěi",山:"shān",谷:"gǔ",车:"chē",侯:"hóu",宓:"mì",蓬:"péng",全:"quán",郗:"xī",班:"bān",仰:"yǎng",秋:"qiū",仲:"zhòng",伊:"yī",宫:"gōng",宁:"nìng",仇:"qiú",栾:"luán",暴:"bào",甘:"gān",钭:"tǒu",厉:"lì",戎:"róng",祖:"zǔ",武:"wǔ",符:"fú",刘:"liú",景:"jǐng",詹:"zhān",束:"shù",龙:"lóng",叶:"yè",幸:"xìng",司:"sī",韶:"sháo",郜:"gào",黎:"lí",蓟:"jì",薄:"bó",印:"yìn",宿:"sù",白:"bái",怀:"huái",蒲:"pú",邰:"tái",从:"cóng",鄂:"è",索:"suǒ",咸:"xián",籍:"jí",赖:"lài",卓:"zhuó",蔺:"lìn",屠:"tú",蒙:"méng",池:"chí",乔:"qiáo",阴:"yīn",鬱:"yù",胥:"xū",能:"nài",苍:"cāng",双:"shuāng",闻:"wén",莘:"shēn",党:"dǎng",翟:"zhái",谭:"tán",贡:"gòng",劳:"láo",逄:"páng",姬:"jī",申:"shēn",扶:"fú",堵:"dǔ",冉:"rǎn",宰:"zǎi",郦:"lì",雍:"yōng",郤:"xì",璩:"qú",桑:"sāng",桂:"guì",濮:"pú",牛:"niú",寿:"shòu",通:"tōng",边:"biān",扈:"hù",燕:"yān",冀:"jì",郏:"jiá",浦:"pǔ",尚:"shàng",农:"nóng",温:"wēn",别:"bié",庄:"zhuāng",晏:"yàn",柴:"chái",瞿:"qú",阎:"yán",充:"chōng",慕:"mù",连:"lián",茹:"rú",习:"xí",宦:"huàn",艾:"ài",鱼:"yú",容:"róng",向:"xiàng",古:"gǔ",易:"yì",慎:"shèn",戈:"gē",廖:"liào",庾:"yǔ",终:"zhōng",暨:"jì",居:"jū",衡:"héng",步:"bù",都:"dū",耿:"gěng",满:"mǎn",弘:"hóng",匡:"kuāng",国:"guó",文:"wén",寇:"kòu",广:"guǎng",禄:"lù",阙:"quē",东:"dōng",欧:"ōu",殳:"shū",沃:"wò",利:"lì",蔚:"wèi",越:"yuè",夔:"kuí",隆:"lóng",师:"shī",巩:"gǒng",厍:"shè",聂:"niè",晁:"cháo",勾:"gōu",敖:"áo",融:"róng",冷:"lěng",訾:"zī",辛:"xīn",阚:"kàn",那:"nā",简:"jiǎn",饶:"ráo",空:"kōng",曾:"zēng",母:"mǔ",沙:"shā",乜:"niè",养:"yǎng",鞠:"jū",须:"xū",丰:"fēng",巢:"cháo",关:"guān",蒯:"kuǎi",相:"xiàng",查:"zhā",后:"hòu",荆:"jīng",红:"hóng",游:"yóu",竺:"zhú",权:"quán",逯:"lù",盖:"gě",益:"yì",桓:"huán",公:"gōng",牟:"móu",哈:"hǎ",言:"yán",福:"fú",肖:"xiāo",区:"ōu",覃:"qín",朴:"piáo",繁:"pó",员:"yùn",句:"gōu",要:"yāo",过:"guō",钻:"zuān",谌:"chén",折:"shé",召:"shào",郄:"qiè",撒:"sǎ",甯:"nìng",六:"lù",啜:"chuài",行:"xíng"},obe=Object.keys(kT).map(e=>({zh:e,pinyin:kT[e],probability:1+Uu(e),length:Uu(e),priority:Nc.Surname,dict:Symbol("surname")})),BB={"bǎng páng pāng":["膀"],líng:["〇","伶","凌","刢","囹","坽","夌","姈","婈","孁","岺","彾","掕","昤","朎","柃","棂","櫺","欞","泠","淩","澪","灵","燯","爧","狑","玲","琌","瓴","皊","砱","祾","秢","竛","笭","紷","綾","绫","羐","羚","翎","聆","舲","苓","菱","蓤","蔆","蕶","蛉","衑","裬","詅","跉","軨","輘","酃","醽","鈴","錂","铃","閝","陵","零","霊","霗","霛","霝","靈","駖","魿","鯪","鲮","鴒","鸰","鹷","麢","齡","齢","龄","龗","㥄"],yī:["一","乊","伊","依","医","吚","咿","噫","壱","壹","夁","嫛","嬄","弌","揖","撎","檹","毉","洢","渏","漪","瑿","畩","祎","禕","稦","繄","蛜","衤","譩","辷","郼","醫","銥","铱","鷖","鹥","黟","黳"],"dīng zhēng":["丁"],"kǎo qiǎo yú":["丂"],qī:["七","倛","僛","凄","嘁","墄","娸","悽","慼","慽","戚","捿","柒","桤","桼","棲","榿","欺","沏","淒","漆","紪","緀","萋","褄","諆","迉","郪","鏚","霋","魌","鶈"],shàng:["丄","尙","尚","恦","緔","绱"],xià:["丅","下","乤","圷","夏","夓","懗","梺","疜","睱","罅","鎼","鏬"],hǎn:["丆","喊","浫","罕","豃","㘎"],"wàn mò":["万"],zhàng:["丈","仗","墇","嶂","帐","帳","幛","扙","杖","涱","痮","瘬","瘴","瞕","粀","胀","脹","賬","账","障"],sān:["三","厁","叁","弎","毵","毶","毿","犙","鬖"],"shàng shǎng shang":["上"],"qí jī":["丌","其","奇"],"bù fǒu":["不"],"yǔ yù yú":["与"],miǎn:["丏","偭","免","冕","勉","勔","喕","娩","愐","汅","沔","湎","睌","緬","缅","腼","葂","靦","鮸","𩾃"],gài:["丐","乢","匃","匄","戤","概","槩","槪","溉","漑","瓂","葢","鈣","钙","𬮿"],chǒu:["丑","丒","侴","吜","杽","瞅","矁","醜","魗"],zhuān:["专","叀","嫥","専","專","瑼","甎","砖","磗","磚","蟤","諯","鄟","顓","颛","鱄","䏝"],"qiě jū":["且"],pī:["丕","伓","伾","噼","坯","岯","憵","批","披","炋","狉","狓","砒","磇","礔","礕","秛","秠","耚","豾","邳","鈚","鉟","銔","錃","錍","霹","駓","髬","魾","𬳵"],shì:["世","丗","亊","事","仕","侍","冟","势","勢","卋","呩","嗜","噬","士","奭","嬕","室","市","式","弑","弒","恀","恃","戺","拭","揓","是","昰","枾","柿","栻","澨","烒","煶","眂","眎","眡","睗","示","礻","筮","簭","舐","舓","襫","視","视","觢","試","誓","諡","謚","试","谥","貰","贳","軾","轼","逝","遾","釈","释","釋","鈰","鉃","鉽","铈","飾","餙","餝","饰","鰘","䏡","𬤊"],qiū:["丘","丠","坵","媝","恘","恷","楸","秋","秌","穐","篍","緧","萩","蘒","蚯","蝵","蟗","蠤","趥","邱","鞦","鞧","鰌","鰍","鳅","鶖","鹙","龝"],bǐng:["丙","屛","怲","抦","昞","昺","柄","棅","炳","禀","秉","稟","苪","蛃","邴","鈵","陃","鞆","餅","餠","饼"],yè:["业","亱","僷","墷","夜","嶪","嶫","抴","捙","擛","擪","擫","晔","曄","曅","曗","曳","曵","枼","枽","業","洂","液","澲","烨","燁","爗","璍","皣","瞱","瞸","礏","腋","葉","謁","谒","邺","鄴","鍱","鐷","靥","靨","頁","页","餣","饁","馌","驜","鵺","鸈"],cóng:["丛","从","叢","婃","孮","従","徔","徖","悰","樷","欉","淙","灇","爜","琮","藂","誴","賨","賩","錝"],dōng:["东","倲","冬","咚","埬","岽","崬","徚","昸","東","氡","氭","涷","笗","苳","菄","蝀","鮗","鯟","鶇","鶫","鸫","鼕","𬟽"],sī:["丝","俬","凘","厮","司","咝","嘶","噝","媤","廝","恖","撕","斯","楒","泀","澌","燍","禗","禠","私","糹","絲","緦","纟","缌","罳","蕬","虒","蛳","蜤","螄","蟖","蟴","鉰","銯","鍶","鐁","锶","颸","飔","騦","鷥","鸶","鼶","㟃"],chéng:["丞","呈","城","埕","堘","塍","塖","宬","峸","惩","懲","成","承","挰","掁","揨","枨","棖","橙","檙","洆","溗","澂","珵","珹","畻","程","窚","筬","絾","脭","荿","誠","诚","郕","酲","鋮","铖","騬","鯎"],diū:["丟","丢","銩","铥"],liǎng:["両","两","兩","唡","啢","掚","緉","脼","蜽","裲","魉","魎","𬜯"],yǒu:["丣","卣","友","梄","湵","牖","禉","羑","聈","苃","莠","蜏","酉","銪","铕","黝"],yán:["严","厳","啱","喦","嚴","塩","壛","壧","妍","姸","娫","娮","岩","嵒","嵓","巌","巖","巗","延","揅","昖","楌","檐","櫩","欕","沿","炎","炏","狿","琂","盐","碞","筵","簷","莚","蔅","虤","蜒","言","訁","訮","詽","讠","郔","閆","閻","闫","阎","顏","顔","颜","鹽","麣","𫄧"],bìng:["並","併","倂","傡","垪","摒","栤","病","窉","竝","誁","靐","鮩"],"sàng sāng":["丧"],gǔn:["丨","惃","滚","滾","磙","緄","绲","蓘","蔉","衮","袞","輥","辊","鮌","鯀","鲧"],jiū:["丩","勼","啾","揪","揫","朻","究","糾","纠","萛","赳","阄","鬏","鬮","鳩","鸠"],"gè gě":["个","個","各"],yā:["丫","圧","孲","庘","押","枒","桠","椏","錏","鐚","鴉","鴨","鵶","鸦","鸭"],pán:["丬","媻","幋","槃","洀","瀊","爿","盘","盤","磐","縏","蒰","蟠","蹒","蹣","鎜","鞶"],"zhōng zhòng":["中"],jǐ:["丮","妀","己","戟","挤","掎","撠","擠","橶","泲","犱","脊","虮","蟣","魢","鱾","麂"],jiè:["丯","介","借","唶","堺","屆","届","岕","庎","徣","戒","楐","犗","玠","琾","界","畍","疥","砎","蚧","蛶","衸","褯","誡","诫","鎅","骱","魪"],fēng:["丰","仹","偑","僼","凨","凬","凮","妦","寷","封","峯","峰","崶","枫","楓","檒","沣","沨","渢","灃","烽","犎","猦","琒","疯","瘋","盽","砜","碸","篈","蘴","蜂","蠭","豐","鄷","酆","鋒","鎽","鏠","锋","霻","靊","飌","麷"],"guàn kuàng":["丱"],chuàn:["串","汌","玔","賗","釧","钏"],chǎn:["丳","产","冁","剷","囅","嵼","旵","浐","滻","灛","產","産","簅","蒇","蕆","諂","譂","讇","谄","鏟","铲","閳","闡","阐","骣","𬊤"],lín:["临","冧","壣","崊","嶙","斴","晽","暽","林","潾","瀶","燐","琳","璘","瞵","碄","磷","粦","粼","繗","翷","臨","轔","辚","遴","邻","鄰","鏻","阾","隣","霖","驎","鱗","鳞","麐","麟","𬴊","𬭸"],zhuó:["丵","劅","卓","啄","圴","妰","娺","撯","擆","擢","斫","斮","斱","斲","斵","晫","椓","浊","浞","濁","灼","烵","琸","硺","禚","窡","籗","籱","罬","茁","蠗","蠿","諁","諑","謶","诼","酌","鐲","镯","鵫","鷟","䓬","𬸦"],zhǔ:["丶","主","劯","嘱","囑","宔","帾","拄","渚","濐","煑","煮","燝","瞩","矚","罜","詝","陼","鸀","麈","𬣞"],bā:["丷","仈","八","叭","哵","夿","岜","巴","捌","朳","玐","疤","笆","粑","羓","芭","蚆","豝","釟"],wán:["丸","刓","完","岏","抏","捖","汍","烷","玩","琓","笂","紈","纨","翫","芄","貦","頑","顽"],dān:["丹","勯","匰","単","妉","媅","殚","殫","甔","眈","砃","箪","簞","耼","耽","聃","聸","褝","襌","躭","郸","鄲","酖","頕"],"wèi wéi":["为"],"jǐng dǎn":["丼"],"lì lí":["丽"],jǔ:["举","弆","挙","擧","椇","榉","榘","櫸","欅","矩","筥","聥","舉","莒","蒟","襷","踽","齟","龃"],piě:["丿","苤","鐅","𬭯"],fú:["乀","伏","俘","凫","刜","匐","咈","哹","垘","孚","岪","巿","帗","幅","幞","弗","彿","怫","扶","柫","栿","桴","氟","泭","浮","涪","澓","炥","玸","甶","畉","癁","祓","福","稪","符","箙","紱","紼","絥","綍","绂","绋","罘","罦","翇","艀","芙","芣","苻","茀","茯","菔","葍","虙","蚨","蜉","蝠","袚","袱","襆","襥","諨","豧","踾","輻","辐","郛","鉘","鉜","韍","韨","颫","髴","鮄","鮲","鳧","鳬","鴔","鵩","黻"],"yí jí":["乁"],yì:["乂","义","亄","亦","亿","伇","伿","佾","俋","億","兿","刈","劓","劮","勚","勩","匇","呓","呭","呹","唈","囈","圛","坄","垼","埸","奕","嫕","嬑","寱","屹","峄","嶧","帟","帠","幆","廙","异","弈","弋","役","忆","怈","怿","悒","意","憶","懌","懿","抑","挹","敡","易","晹","曀","曎","杙","枍","棭","榏","槸","檍","歝","殔","殪","殹","毅","浂","浥","浳","湙","溢","潩","澺","瀷","炈","焲","熠","熤","熼","燚","燡","燱","獈","玴","異","疫","痬","瘗","瘞","瘱","癔","益","瞖","穓","竩","篒","縊","繶","繹","绎","缢","義","羿","翊","翌","翳","翼","耴","肄","肊","膉","臆","艗","艺","芅","苅","萟","蓺","薏","藙","藝","蘙","虉","蜴","螠","衪","袣","裔","裛","褹","襼","訲","訳","詍","詣","誼","譯","議","讛","议","译","诣","谊","豙","豛","豷","貖","贀","跇","轶","逸","邑","鄓","醷","釴","鈠","鎰","鐿","镒","镱","阣","隿","霬","饐","駅","驛","驿","骮","鮨","鶂","鶃","鶍","鷁","鷊","鷧","鷾","鸃","鹝","鹢","黓","齸","𬬩","㑊","𫄷","𬟁"],nǎi:["乃","倷","奶","嬭","廼","氖","疓","艿","迺","釢"],wǔ:["乄","五","仵","伍","侮","倵","儛","午","啎","妩","娬","嫵","庑","廡","忤","怃","憮","摀","武","潕","熓","牾","玝","珷","瑦","甒","碔","舞","躌","迕","逜","陚","鵡","鹉","𣲘"],jiǔ:["久","乆","九","乣","奺","杦","汣","灸","玖","紤","舏","酒","镹","韭","韮"],"tuō zhé":["乇","杔","馲"],"me mó ma yāo":["么"],zhī:["之","倁","卮","巵","搘","支","栀","梔","椥","榰","汁","泜","疷","祗","祬","秓","稙","綕","肢","胑","胝","脂","芝","蘵","蜘","衼","隻","鳷","鴲","鼅","𦭜"],"wū wù":["乌"],zhà:["乍","咤","宱","搾","榨","溠","痄","蚱","詐","诈","醡","霅","䃎"],hū:["乎","乯","匢","匫","呼","唿","嘑","垀","寣","幠","忽","惚","昒","歑","泘","淴","滹","烀","苸","虍","虖","謼","軤","轷","雐"],fá:["乏","伐","傠","坺","垡","墢","姂","栰","浌","瞂","笩","筏","罚","罰","罸","藅","閥","阀"],"lè yuè yào lào":["乐","樂"],yín:["乑","吟","噖","嚚","圁","垠","夤","婬","寅","峾","崟","崯","檭","殥","泿","淫","滛","烎","犾","狺","璌","硍","碒","荶","蔩","訔","訚","訡","誾","鄞","鈝","銀","银","霪","鷣","齦"],pīng:["乒","俜","娉","涄","甹","砯","聠","艵","頩"],pāng:["乓","滂","胮","膖","雱","霶"],qiáo:["乔","侨","僑","嫶","憔","桥","槗","樵","橋","櫵","犞","瞧","硚","礄","荍","荞","蕎","藮","譙","趫","鐈","鞒","鞽","顦"],hǔ:["乕","琥","萀","虎","虝","錿","鯱"],guāi:["乖"],"chéng shèng":["乗","乘","娍"],yǐ:["乙","乛","以","倚","偯","嬟","崺","已","庡","扆","攺","敼","旑","旖","檥","矣","礒","笖","舣","艤","苡","苢","蚁","螘","蟻","裿","踦","輢","轙","逘","酏","釔","鈘","鉯","钇","顗","鳦","齮","𫖮","𬺈"],"háo yǐ":["乚"],"niè miē":["乜"],qǐ:["乞","企","启","唘","啓","啔","啟","婍","屺","杞","棨","玘","盀","綺","绮","芑","諬","起","邔","闙"],yě:["也","冶","嘢","埜","壄","漜","野"],xí:["习","喺","媳","嶍","席","椺","檄","漝","習","蓆","袭","襲","覡","觋","謵","趘","郋","鎴","隰","霫","飁","騱","騽","驨","鰼","鳛","𠅤","𫘬"],xiāng:["乡","厢","廂","忀","楿","欀","湘","瓖","稥","箱","緗","缃","膷","芗","萫","葙","薌","襄","郷","鄉","鄊","鄕","鑲","镶","香","驤","骧","鱜","麘","𬙋"],shū:["书","倏","倐","儵","叔","姝","尗","抒","掓","摅","攄","書","枢","梳","樞","殊","殳","毹","毺","淑","瀭","焂","疎","疏","紓","綀","纾","舒","菽","蔬","踈","軗","輸","输","鄃","陎","鮛","鵨"],dǒu:["乧","抖","枓","蚪","鈄","阧","陡"],shǐ:["乨","使","兘","史","始","宩","屎","榁","矢","笶","豕","鉂","駛","驶"],jī:["乩","僟","击","刉","刏","剞","叽","唧","喞","嗘","嘰","圾","基","墼","姬","屐","嵆","嵇","撃","擊","朞","机","枅","樭","機","毄","激","犄","玑","璣","畸","畿","癪","矶","磯","积","積","笄","筓","箕","簊","緁","羁","羇","羈","耭","肌","芨","虀","覉","覊","譏","譤","讥","賫","賷","赍","跻","踑","躋","躸","銈","錤","鐖","鑇","鑙","隮","雞","鞿","韲","飢","饑","饥","魕","鳮","鶏","鶺","鷄","鸄","鸡","齎","齏","齑","𬯀","𫓯","𫓹","𫌀"],náng:["乪","嚢","欜","蠰","饢"],jiā:["乫","佳","傢","加","嘉","抸","枷","梜","毠","泇","浃","浹","犌","猳","珈","痂","笳","糘","耞","腵","葭","袈","豭","貑","跏","迦","鉫","鎵","镓","鴐","麚","𬂩"],jù:["乬","倨","倶","具","剧","劇","勮","埧","埾","壉","姖","屦","屨","岠","巨","巪","怇","惧","愳","懅","懼","拒","拠","昛","歫","洰","澽","炬","烥","犋","秬","窭","窶","簴","粔","耟","聚","虡","蚷","詎","讵","豦","距","踞","躆","遽","邭","醵","鉅","鐻","钜","颶","飓","駏","鮔"],shí:["乭","十","埘","塒","姼","实","実","寔","實","峕","嵵","时","旹","時","榯","湜","溡","炻","祏","竍","蚀","蝕","辻","遈","鉐","飠","饣","鮖","鰣","鲥","鼫","鼭"],mǎo:["乮","冇","卯","峁","戼","昴","泖","笷","蓩","鉚","铆"],mǎi:["买","嘪","荬","蕒","買","鷶"],luàn:["乱","亂","釠"],rǔ:["乳","擩","汝","肗","辱","鄏"],xué:["乴","学","學","峃","嶨","斈","泶","澩","燢","穴","茓","袕","踅","鷽","鸴"],yǎn:["䶮","乵","俨","偃","儼","兖","兗","厣","厴","噞","孍","嵃","巘","巚","弇","愝","戭","扊","抁","掩","揜","曮","椼","檿","沇","渷","演","琰","甗","眼","罨","萒","蝘","衍","褗","躽","遃","郾","隒","顩","魇","魘","鰋","鶠","黡","黤","黬","黭","黶","鼴","鼹","齴","龑","𬸘","𬙂","𪩘"],fǔ:["乶","俌","俛","俯","府","弣","抚","拊","撫","斧","椨","滏","焤","甫","盙","簠","腐","腑","蜅","輔","辅","郙","釜","釡","阝","頫","鬴","黼","㕮","𫖯"],shā:["乷","唦","杀","桬","殺","毮","猀","痧","砂","硰","紗","繺","纱","蔱","裟","鎩","铩","閷","髿","魦","鯊","鯋","鲨"],nǎ:["乸","雫"],qián:["乹","亁","仱","偂","前","墘","媊","岒","拑","掮","榩","橬","歬","潛","潜","濳","灊","箝","葥","虔","軡","鈐","鉗","銭","錢","鎆","钤","钱","钳","靬","騚","騝","鰬","黔","黚"],suǒ:["乺","唢","嗩","所","暛","溑","溹","琐","琑","瑣","索","褨","鎖","鎻","鏁","锁"],yú:["乻","于","亐","伃","余","堣","堬","妤","娛","娯","娱","嬩","崳","嵎","嵛","愚","扵","揄","旟","楡","楰","榆","欤","歈","歟","歶","渔","渝","湡","漁","澞","牏","狳","玗","玙","瑜","璵","盂","睮","窬","竽","籅","羭","腴","臾","舁","舆","艅","茰","萮","萸","蕍","蘛","虞","虶","蝓","螸","衧","褕","覦","觎","諛","謣","谀","踰","輿","轝","逾","邘","酑","鍝","隅","雓","雩","餘","馀","騟","骬","髃","魚","魣","鮽","鯲","鰅","鱼","鷠","鸆","齵"],zhù:["乼","伫","佇","住","坾","墸","壴","嵀","拀","杼","柱","樦","殶","注","炷","疰","眝","祝","祩","竚","筯","箸","篫","簗","紵","紸","纻","羜","翥","苎","莇","蛀","註","貯","贮","跓","軴","鉒","鋳","鑄","铸","馵","駐","驻"],zhě:["乽","者","褶","襵","赭","踷","鍺","锗"],"qián gān":["乾"],"zhì luàn":["乿"],guī:["亀","圭","妫","媯","嫢","嬀","帰","归","摫","椝","槻","槼","櫷","歸","珪","瑰","璝","瓌","皈","瞡","硅","茥","蘬","規","规","邽","郌","閨","闺","騩","鬶","鬹"],"lǐn lìn":["亃"],jué:["亅","决","刔","劂","匷","厥","噊","孒","孓","崛","崫","嶥","彏","憠","憰","戄","抉","挗","掘","攫","桷","橛","橜","欮","氒","決","灍","焳","熦","爑","爴","爵","獗","玃","玦","玨","珏","瑴","瘚","矍","矡","砄","絕","絶","绝","臄","芵","蕝","蕨","虳","蟨","蟩","觖","觮","觼","訣","譎","诀","谲","貜","赽","趉","蹷","躩","鈌","鐍","鐝","钁","镢","鴂","鴃","鷢","𫘝","㵐","𫔎"],"le liǎo":["了"],"gè mā":["亇"],"yǔ yú":["予","懙"],zhēng:["争","佂","凧","姃","媜","峥","崝","崢","征","徰","炡","烝","爭","狰","猙","癥","眐","睁","睜","筝","箏","篜","聇","脀","蒸","踭","鉦","錚","鏳","鬇"],èr:["二","刵","咡","弍","弐","樲","誀","貮","貳","贰","髶"],chù:["亍","傗","儊","怵","憷","搐","斶","歜","珿","琡","矗","竌","絀","绌","臅","触","觸","豖","鄐","閦","黜"],kuī:["亏","刲","岿","巋","盔","窥","窺","聧","虧","闚","顝"],yún:["云","伝","勻","匀","囩","妘","愪","抣","昀","橒","沄","涢","溳","澐","熉","畇","秐","筼","篔","紜","縜","纭","耘","芸","蒷","蕓","郧","鄖","鋆","雲"],hù:["互","冱","嗀","嚛","婟","嫭","嫮","岵","帍","弖","怙","戶","户","戸","戽","扈","护","昈","槴","沍","沪","滬","熩","瓠","祜","笏","簄","粐","綔","蔰","護","豰","鄠","鍙","頀","鱯","鳠","鳸","鸌","鹱"],qí:["亓","剘","埼","岐","岓","崎","嵜","愭","掑","斉","斊","旂","旗","棊","棋","檱","櫀","歧","淇","濝","猉","玂","琦","琪","璂","畦","疧","碁","碕","祁","祈","祺","禥","竒","簯","簱","籏","粸","綥","綦","肵","脐","臍","艩","芪","萁","萕","蕲","藄","蘄","蚑","蚚","蛴","蜝","蜞","螧","蠐","褀","軝","鄿","釮","錡","锜","陭","頎","颀","騎","騏","騹","骐","骑","鬐","鬿","鯕","鰭","鲯","鳍","鵸","鶀","麒","麡","𨙸","𬨂","䓫"],jǐng:["井","儆","刭","剄","坓","宑","幜","憬","暻","殌","汫","汬","澋","璄","璟","璥","穽","肼","蟼","警","阱","頚","頸"],sì:["亖","佀","価","儩","兕","嗣","四","姒","娰","孠","寺","巳","柶","榹","汜","泗","泤","洍","洠","涘","瀃","牭","祀","禩","竢","笥","耜","肂","肆","蕼","覗","貄","釲","鈶","鈻","飤","飼","饲","駟","騃","驷"],suì:["亗","嬘","岁","嵗","旞","檖","歲","歳","澻","煫","燧","璲","砕","碎","祟","禭","穂","穗","穟","繀","繐","繸","襚","誶","譢","谇","賥","邃","鐆","鐩","隧","韢","𫟦","𬭼"],gèn:["亘","亙","揯","搄","茛"],yà:["亚","亜","俹","冴","劜","圔","圠","埡","娅","婭","揠","氩","氬","犽","砑","稏","聐","襾","覀","訝","讶","迓","齾"],"xiē suò":["些"],"qí zhāi":["亝","齊"],"yā yà":["亞","压","垭","壓","铔"],"jí qì":["亟","焏"],tóu:["亠","投","頭","骰"],"wáng wú":["亡"],"kàng háng gāng":["亢"],dà:["亣","眔"],jiāo:["交","僬","娇","嬌","峧","嶕","嶣","憍","椒","浇","澆","焦","礁","穚","簥","胶","膠","膲","茭","茮","蕉","虠","蛟","蟭","跤","轇","郊","鐎","驕","骄","鮫","鲛","鵁","鷦","鷮","鹪","䴔"],hài:["亥","嗐","害","氦","餀","饚","駭","駴","骇"],"hēng pēng":["亨"],mǔ:["亩","姆","峔","拇","母","牡","牳","畂","畆","畒","畝","畞","畮","砪","胟","踇","鉧","𬭁","𧿹"],ye:["亪"],xiǎng:["享","亯","响","想","晑","蚃","蠁","響","飨","餉","饗","饷","鮝","鯗","鱶","鲞"],jīng:["京","亰","兢","坕","坙","婛","惊","旌","旍","晶","橸","泾","涇","猄","睛","秔","稉","粳","精","経","經","綡","聙","腈","茎","荆","荊","菁","葏","驚","鯨","鲸","鶁","鶄","麖","麠","鼱","䴖"],tíng:["亭","停","婷","嵉","庭","廷","楟","榳","筳","聤","莛","葶","蜓","蝏","諪","邒","霆","鼮","䗴"],liàng:["亮","喨","悢","晾","湸","諒","谅","輌","輛","辆","鍄"],"qīn qìng":["亲","親"],bó:["亳","仢","侼","僰","博","帛","愽","懪","挬","搏","欂","浡","淿","渤","煿","牔","狛","瓝","礴","秡","箔","簙","糪","胉","脖","膊","舶","艊","萡","葧","袯","襏","襮","謈","踣","郣","鈸","鉑","鋍","鎛","鑮","钹","铂","镈","餺","馎","馛","馞","駁","駮","驳","髆","鵓","鹁"],yòu:["亴","佑","佦","侑","又","右","哊","唀","囿","姷","宥","峟","幼","狖","祐","蚴","誘","诱","貁","迶","酭","釉","鼬"],xiè:["亵","伳","偞","偰","僁","卨","卸","噧","塮","夑","媟","屑","屧","廨","徢","懈","暬","械","榍","榭","泻","洩","渫","澥","瀉","瀣","灺","炧","炨","燮","爕","獬","祄","禼","糏","紲","絏","絬","繲","纈","绁","缷","薢","薤","蟹","蠏","褉","褻","謝","谢","躞","邂","靾","韰","齂","齘","齛","齥","𬹼","𤫉"],"dǎn dàn":["亶","馾"],lián:["亷","劆","匲","匳","嗹","噒","奁","奩","嫾","帘","廉","怜","憐","涟","漣","濂","濓","瀮","熑","燫","簾","籢","籨","縺","翴","联","聨","聫","聮","聯","臁","莲","蓮","薕","螊","蠊","裢","褳","覝","謰","蹥","连","連","鎌","鐮","镰","鬑","鰱","鲢"],duǒ:["亸","哚","嚲","埵","崜","朵","朶","綞","缍","趓","躱","躲","軃"],"wěi mén":["亹","斖"],rén:["人","亻","仁","壬","忈","忎","朲","秂","芢","魜","鵀"],jí:["亼","亽","伋","佶","偮","卙","即","卽","及","叝","吉","堲","塉","姞","嫉","岌","嵴","嶯","彶","忣","急","愱","戢","揤","极","棘","楫","極","槉","檝","殛","汲","湒","潗","疾","瘠","皍","笈","箿","籍","級","级","膌","艥","蒺","蕀","蕺","蝍","螏","襋","觙","谻","踖","蹐","躤","輯","轚","辑","郆","銡","鍓","鏶","集","雧","霵","鹡","㴔"],wáng:["亾","仼","兦","莣","蚟"],"shén shí":["什"],lè:["仂","叻","忇","氻","泐","玏","砳","簕","艻","阞","韷","餎","鰳","鱳","鳓"],dīng:["仃","叮","帄","玎","疔","盯","耵","虰","靪"],zè:["仄","崱","庂","捑","昃","昗","汄"],"jǐn jìn":["仅","僅","嫤"],"pú pū":["仆"],"chóu qiú":["仇"],zhǎng:["仉","幥","掌","礃"],jīn:["今","堻","巾","惍","斤","津","珒","琻","璡","砛","筋","荕","衿","襟","觔","金","釒","釿","钅","鹶","黅","𬬱"],bīng:["仌","仒","兵","冫","冰","掤","氷","鋲"],réng:["仍","礽","芿","辸","陾"],fó:["仏","坲","梻"],"jīn sǎn":["仐"],lún:["仑","伦","侖","倫","囵","圇","婨","崘","崙","棆","沦","淪","磮","腀","菕","蜦","踚","輪","轮","錀","陯","鯩","𬬭"],cāng:["仓","仺","倉","凔","嵢","沧","滄","濸","獊","舱","艙","苍","蒼","螥","鸧"],"zǎi zǐ zī":["仔"],tā:["他","塌","它","榙","溻","牠","祂","褟","趿","遢","闧"],fù:["付","偩","傅","冨","副","咐","坿","复","妇","婦","媍","嬔","富","復","椱","祔","禣","竎","緮","縛","缚","腹","萯","蕧","蚹","蛗","蝜","蝮","袝","複","覄","覆","訃","詂","讣","負","賦","賻","负","赋","赙","赴","輹","鍑","鍢","阜","附","馥","駙","驸","鮒","鰒","鲋","鳆","㳇"],xiān:["仙","仚","佡","僊","僲","先","嘕","奾","屳","廯","忺","憸","掀","暹","杴","氙","珗","祆","秈","籼","繊","纎","纖","苮","褼","襳","跹","蹮","躚","酰","鍁","锨","韯","韱","馦","鱻","鶱","𬸣"],"tuō chà duó":["仛"],hóng:["仜","吰","垬","妅","娂","宏","宖","弘","彋","汯","泓","洪","浤","渱","潂","玒","玜","竑","竤","篊","粠","紘","紭","綋","纮","翃","翝","耾","苰","荭","葒","葓","谹","谼","鈜","鉷","鋐","閎","闳","霐","霟","鞃","魟","鴻","鸿","黉","黌","𫟹","𬭎"],tóng:["仝","佟","哃","峂","峝","庝","彤","晍","曈","桐","氃","浵","潼","犝","獞","眮","瞳","砼","秱","童","粡","膧","茼","蚒","詷","赨","酮","鉖","鉵","銅","铜","餇","鮦","鲖","𫍣","𦒍"],rèn:["仞","仭","刃","刄","妊","姙","屻","岃","扨","牣","祍","紉","紝","絍","纫","纴","肕","腍","衽","袵","訒","認","认","讱","軔","轫","鈓","靭","靱","韌","韧","飪","餁","饪"],qiān:["仟","佥","僉","千","圲","奷","孯","岍","悭","愆","慳","扦","拪","搴","撁","攐","攑","攓","杄","櫏","汘","汧","牵","牽","竏","签","簽","籖","籤","粁","芊","茾","蚈","褰","諐","謙","谦","谸","迁","遷","釺","鈆","鉛","鏲","钎","阡","韆","顅","騫","骞","鬜","鬝","鵮","鹐"],"gǎn hàn":["仠"],"yì gē":["仡"],dài:["代","侢","叇","垈","埭","岱","帒","带","帯","帶","廗","怠","戴","曃","柋","殆","瀻","玳","瑇","甙","簤","紿","緿","绐","艜","蝳","袋","襶","貣","贷","蹛","軑","軚","軩","轪","迨","霴","靆","鴏","黛","黱"],"lìng líng lǐng":["令"],chào:["仦","耖","觘"],"cháng zhǎng":["仧","兏","長","长"],sā:["仨"],cháng:["仩","偿","償","嘗","嚐","嫦","尝","常","徜","瑺","瓺","甞","肠","腸","膓","苌","萇","镸","鱨","鲿"],yí:["仪","侇","儀","冝","匜","咦","圯","夷","姨","宐","宜","宧","寲","峓","嶬","嶷","巸","彛","彜","彝","彞","怡","恞","扅","暆","栘","椬","椸","沂","洟","熪","瓵","痍","移","簃","籎","羠","胰","萓","蛦","螔","觺","謻","貽","贻","跠","迻","遺","鏔","頉","頤","頥","顊","颐","饴","鮧","鴺"],mù:["仫","凩","募","墓","幕","幙","慔","慕","暮","暯","木","楘","毣","沐","炑","牧","狇","目","睦","穆","艒","苜","莯","蚞","鉬","钼","雮","霂"],"men mén":["们"],fǎn:["仮","反","橎","返"],"chào miǎo":["仯"],"yǎng áng":["仰"],zhòng:["仲","众","堹","妕","媑","狆","眾","祌","筗","茽","蚛","衆","衶","諥"],"pǐ pí":["仳"],wò:["仴","偓","卧","媉","幄","握","楃","沃","渥","濣","瓁","瞃","硪","肟","腛","臥","齷","龌"],jiàn:["件","俴","健","僭","剑","剣","剱","劍","劎","劒","劔","墹","寋","建","徤","擶","旔","楗","毽","洊","涧","澗","牮","珔","瞷","磵","礀","箭","糋","繝","腱","臶","舰","艦","荐","薦","覸","諓","諫","譛","谏","賎","賤","贱","趝","践","踐","踺","轞","鉴","鍳","鍵","鐱","鑑","鑒","鑬","鑳","键","間","餞","饯","𬣡"],"jià jiè jie":["价"],"yǎo fó":["仸"],"rèn rén":["任"],"fèn bīn":["份"],dī:["仾","低","啲","埞","堤","岻","彽","樀","滴","磾","秪","羝","袛","趆","隄","鞮","䃅"],fǎng:["仿","倣","旊","昉","昘","瓬","眆","紡","纺","舫","訪","访","髣","鶭"],zhōng:["伀","刣","妐","幒","彸","忠","柊","汷","泈","炂","盅","籦","終","终","舯","蔠","蜙","螤","螽","衳","衷","蹱","鈡","鍾","鐘","钟","锺","鴤","鼨"],pèi:["伂","佩","姵","帔","斾","旆","沛","浿","珮","蓜","轡","辔","配","霈","馷"],diào:["伄","吊","弔","掉","瘹","盄","窎","窵","竨","訋","釣","鈟","銱","鋽","鑃","钓","铞","雿","魡"],dùn:["伅","潡","炖","燉","盾","砘","碷","踲","逇","遁","遯","鈍","钝"],wěn:["伆","刎","吻","呅","抆","桽","稳","穏","穩","紊","肳","脗"],xǐn:["伈"],kàng:["伉","匟","囥","抗","炕","鈧","钪"],ài:["伌","僾","塧","壒","嫒","嬡","愛","懓","暧","曖","爱","瑷","璦","皧","瞹","砹","硋","碍","礙","薆","譺","賹","鑀","隘","靉","餲","馤","鱫","鴱"],"jì qí":["伎","薺"],"xiū xǔ":["休"],"jìn yín":["伒"],dǎn:["伔","刐","撢","玬","瓭","紞","胆","膽","衴","賧","赕","黕","𬘘"],fū:["伕","呋","娐","孵","尃","怤","懯","敷","旉","玞","砆","稃","筟","糐","綒","肤","膚","荂","荴","衭","趺","跗","邞","鄜","酜","鈇","麩","麬","麱","麸","𫓧"],tǎng:["伖","傥","儻","埫","戃","曭","爣","矘","躺","鎲","钂","镋"],yōu:["优","優","呦","嚘","峳","幽","忧","悠","憂","攸","櫌","滺","瀀","纋","羪","耰","逌","鄾","麀"],huǒ:["伙","夥","火","煷","邩","鈥","钬"],"huì kuài":["会","會","浍","璯"],yǔ:["伛","俁","俣","偊","傴","匬","噳","圄","圉","宇","寙","屿","嶼","庾","挧","敔","斞","楀","瑀","瘐","祤","禹","穥","窳","羽","與","萭","貐","鄅","頨","麌","齬","龉","㺄"],cuì:["伜","啛","忰","悴","毳","淬","焠","疩","瘁","竁","粋","粹","紣","綷","翆","翠","脃","脆","脺","膬","膵","臎","萃","襊","顇"],sǎn:["伞","傘","糤","繖","饊","馓"],wěi:["伟","伪","偉","偽","僞","儰","娓","寪","屗","崣","嶉","徫","愇","捤","暐","梶","洧","浘","渨","炜","煒","猥","玮","瑋","痿","緯","纬","腲","艉","芛","苇","荱","萎","葦","蒍","蔿","蜼","諉","诿","踓","鍡","韑","韙","韡","韪","頠","颹","骩","骪","骫","鮪","鲔","𫇭","𬀩","𬱟"],"chuán zhuàn":["传","傳"],"chē jū":["伡","俥","车"],"jū chē":["車"],yá:["伢","厑","厓","堐","岈","崕","崖","涯","漄","牙","玡","琊","睚","笌","芽","蚜","衙","齖"],qiàn:["伣","俔","倩","儙","刋","壍","嬱","悓","棈","椠","槧","欠","歉","皘","篏","篟","縴","芡","蒨","蔳","輤","𬘬"],shāng:["伤","傷","商","墒","慯","殇","殤","滳","漡","熵","蔏","螪","觞","觴","謪","鬺"],chāng:["伥","倀","娼","昌","椙","淐","猖","琩","菖","裮","錩","锠","閶","阊","鯧","鲳","鼚"],"chen cāng":["伧"],xùn:["伨","侚","卂","噀","巺","巽","徇","愻","殉","殾","汛","潠","狥","蕈","訊","訓","訙","训","讯","迅","迿","逊","遜","鑂","顨","馴","驯"],xìn:["伩","囟","孞","脪","舋","衅","訫","釁","阠","顖"],chǐ:["伬","侈","卶","叺","呎","垑","恥","歯","耻","肔","胣","蚇","裭","褫","豉","鉹","齒","齿"],"xián xuán":["伭"],"nú nǔ":["伮"],"bó bǎi":["伯"],"gū gù":["估"],nǐ:["伱","你","儞","孴","拟","擬","旎","晲","狔","苨","薿","隬"],"nì ní":["伲"],bàn:["伴","办","半","姅","怑","扮","瓣","秚","絆","绊","辦","鉡","靽"],xù:["伵","侐","勖","勗","卹","叙","垿","壻","婿","序","恤","敍","敘","旭","昫","朂","槒","欰","殈","汿","沀","洫","溆","漵","潊","烅","烼","煦","獝","珬","盢","瞁","稸","絮","続","緒","緖","續","绪","续","聓","聟","蓄","藚","訹","賉","酗","頊","鱮","㳚"],zhòu:["伷","僽","冑","呪","咒","咮","宙","昼","晝","甃","皱","皺","籀","籒","籕","粙","紂","縐","纣","绉","胄","荮","葤","詋","酎","駎","驟","骤","㤘","㑇"],shēn:["伸","侁","兟","呻","堔","妽","娠","屾","峷","扟","敒","曑","柛","氠","深","燊","珅","甡","甧","申","眒","砷","穼","籶","籸","糂","紳","绅","罙","罧","葠","蓡","蔘","薓","裑","訷","詵","诜","身","駪","鯓","鯵","鰺","鲹","鵢","𬳽"],qū:["伹","佉","匤","呿","坥","屈","岖","岴","嶇","憈","抾","敺","浀","煀","祛","筁","粬","胠","蛆","蛐","袪","覻","詘","诎","趍","躯","軀","阹","駆","駈","驅","驱","髷","魼","鰸","鱋","鶌","麯","麴","麹","黢","㭕","𪨰","䓛"],"sì cì":["伺"],bēng:["伻","嘣","奟","崩","嵭","閍"],"sì shì":["似"],"jiā qié gā":["伽"],"yǐ chì":["佁"],"diàn tián":["佃","钿"],"hān gàn":["佄"],mài:["佅","劢","勱","卖","唛","売","脈","衇","賣","迈","邁","霡","霢","麥","麦","鿏"],dàn:["但","僤","啖","啗","啿","噉","嚪","帎","憺","旦","柦","氮","沊","泹","淡","狚","疍","癚","禫","窞","腅","萏","蓞","蛋","蜑","觛","訑","誕","诞","贉","霮","餤","饏","駳","髧","鴠","𫢸"],bù:["佈","勏","吥","咘","埗","埠","布","廍","怖","悑","步","歨","歩","瓿","篰","荹","蔀","踄","部","郶","鈈","钚","餢"],bǐ:["佊","俾","匕","夶","妣","彼","朼","柀","比","毞","沘","疕","秕","笔","筆","粃","聛","舭","貏","鄙"],"zhāo shào":["佋"],cǐ:["佌","此","泚","皉","𫚖"],wèi:["位","卫","味","喂","墛","媦","慰","懀","未","渭","煟","熭","犚","猬","畏","緭","罻","胃","苿","菋","藯","蘶","蝟","螱","衛","衞","褽","謂","讆","讏","谓","躗","躛","軎","轊","鏏","霨","餧","餵","饖","魏","鮇","鳚"],zuǒ:["佐","左","繓"],yǎng:["佒","傟","养","坱","岟","慃","懩","攁","氧","氱","炴","痒","癢","礢","紻","蝆","軮","養","駚"],"tǐ tī":["体","體"],zhàn:["佔","偡","嶘","战","戦","戰","栈","桟","棧","湛","站","綻","绽","菚","蘸","虥","虦","譧","轏","驏"],"hé hē hè":["何"],bì:["佖","咇","哔","嗶","坒","堛","壁","奰","妼","婢","嬖","币","幣","幤","庇","庳","廦","弊","弻","弼","彃","必","怭","愊","愎","敝","斃","梐","毕","毖","毙","湢","滗","滭","潷","煏","熚","狴","獘","獙","珌","璧","畀","畢","疪","痹","痺","皕","睤","碧","筚","箅","箆","篦","篳","粊","綼","縪","繴","罼","腷","苾","荜","萆","萞","蓖","蓽","蔽","薜","蜌","袐","襅","襞","襣","觱","詖","诐","貱","贔","赑","跸","蹕","躃","躄","避","邲","鄨","鄪","鉍","鏎","鐴","铋","閇","閉","閟","闭","陛","韠","飶","饆","馝","駜","驆","髀","魓","鮅","鷝","鷩","鼊"],tuó:["佗","坨","堶","岮","槖","橐","沱","砣","砤","碢","紽","詑","跎","酡","阤","陀","陁","駝","駞","騨","驒","驝","驼","鮀","鴕","鸵","鼉","鼍","鼧","𬶍"],shé:["佘","舌","虵","蛥"],"yì dié":["佚","昳","泆","軼"],"fó fú bì bó":["佛"],"zuò zuō":["作"],gōu:["佝","沟","溝","痀","篝","簼","緱","缑","袧","褠","鈎","鉤","钩","鞲","韝"],nìng:["佞","侫","倿","寕","泞","澝","濘"],qú:["佢","劬","戵","斪","欋","欔","氍","淭","灈","爠","璖","璩","癯","磲","籧","絇","胊","臞","菃","葋","蕖","蘧","蟝","蠷","蠼","衐","衢","躣","軥","鑺","鴝","鸜","鸲","鼩"],"yōng yòng":["佣"],wǎ:["佤","咓","砙","邷"],kǎ:["佧","垰","胩","裃","鉲"],bāo:["佨","勹","包","孢","煲","笣","胞","苞","蕔","裦","褒","襃","闁","齙","龅"],"huái huí":["佪"],"gé hè":["佫"],lǎo:["佬","咾","恅","栳","狫","珯","硓","老","耂","荖","蛯","轑","銠","铑","鮱"],xiáng:["佭","庠","栙","祥","絴","翔","詳","跭"],gé:["佮","匌","呄","嗝","塥","愅","挌","搿","槅","櫊","滆","膈","臵","茖","觡","諽","輵","轕","閣","阁","隔","鞷","韐","韚","騔","骼","鮯"],yáng:["佯","劷","垟","崸","徉","扬","揚","敭","旸","昜","暘","杨","楊","洋","炀","珜","疡","瘍","眻","蛘","諹","輰","鍚","钖","阦","阳","陽","霷","颺","飏","鰑","鴹","鸉"],bǎi:["佰","捭","摆","擺","栢","百","竡","粨","襬"],fǎ:["佱","峜","法","灋","砝","鍅"],mǐng:["佲","凕","姳","慏","酩"],"èr nài":["佴"],hěn:["佷","很","狠","詪","𬣳"],huó:["佸","活"],guǐ:["佹","匦","匭","厬","垝","姽","宄","庋","庪","恑","晷","湀","癸","祪","簋","蛫","蟡","觤","詭","诡","軌","轨","陒","鬼"],quán:["佺","全","啳","埢","姾","峑","巏","拳","搼","权","楾","権","權","泉","洤","湶","牷","犈","瑔","痊","硂","筌","縓","荃","葲","蜷","蠸","觠","詮","诠","跧","踡","輇","辁","醛","銓","铨","闎","顴","颧","駩","騡","鬈","鰁","鳈","齤"],tiāo:["佻","庣","旫","祧","聎"],jiǎo:["佼","儌","孂","挢","搅","撟","撹","攪","敫","敽","敿","晈","暞","曒","灚","燞","狡","璬","皎","皦","絞","纐","绞","腳","臫","蟜","譑","賋","踋","鉸","铰","餃","饺","鱎","龣"],cì:["佽","刾","庛","朿","栨","次","絘","茦","莿","蛓","螆","賜","赐"],xíng:["侀","刑","哘","型","娙","形","洐","硎","蛵","邢","郉","鈃","鉶","銒","钘","铏","陉","陘","餳","𫰛"],tuō:["侂","咃","咜","圫","托","拕","拖","汑","脫","脱","莌","袥","託","讬","飥","饦","魠","鮵"],kǎn:["侃","偘","冚","坎","惂","砍","莰","輡","轗","顑"],zhí:["侄","値","值","埴","執","姪","嬂","戠","执","摭","植","樴","淔","漐","直","禃","絷","縶","聀","职","職","膱","蟙","跖","踯","蹠","躑","軄","釞","馽"],gāi:["侅","垓","姟","峐","晐","畡","祴","荄","該","该","豥","賅","賌","赅","陔"],lái:["來","俫","倈","崃","崍","庲","来","梾","棶","涞","淶","猍","琜","筙","箂","莱","萊","逨","郲","錸","铼","騋","鯠","鶆","麳"],kuǎ:["侉","咵","垮","銙"],gōng:["侊","公","功","匑","匔","塨","宫","宮","工","幊","弓","恭","攻","杛","碽","糼","糿","肱","觥","觵","躬","躳","髸","龔","龚","䢼"],lì:["例","俐","俪","傈","儮","儷","凓","利","力","励","勵","历","厉","厤","厯","厲","叓","吏","呖","唎","唳","嚦","囇","坜","塛","壢","娳","婯","屴","岦","悧","悷","慄","戾","搮","暦","曆","曞","朸","枥","栃","栗","栛","檪","櫔","櫪","欐","歴","歷","沥","沴","涖","溧","濿","瀝","爏","犡","猁","珕","瑮","瓅","瓑","瓥","疬","痢","癧","盭","睙","砅","砺","砾","磿","礪","礫","礰","禲","秝","立","笠","篥","粒","粝","糲","脷","苈","茘","荔","莅","莉","蒚","蒞","藶","蚸","蛎","蛠","蜧","蝷","蠇","蠣","詈","讈","赲","轢","轣","轹","酈","鉝","隶","隷","雳","靂","靋","鬁","鳨","鴗","鷅","麜","𫵷","𬍛"],yīn:["侌","凐","喑","噾","囙","因","垔","堙","姻","婣","愔","慇","栶","氤","洇","溵","濦","瘖","禋","秵","筃","絪","緸","茵","蒑","蔭","裀","諲","銦","铟","闉","阥","阴","陰","陻","隂","霒","霠","鞇","音","韾","駰","骃","齗","𬘡","𬤇","𬮱"],mǐ:["侎","孊","弭","敉","洣","渳","灖","米","粎","羋","脒","芈","葞","蔝","銤"],zhū:["侏","株","槠","橥","櫧","櫫","洙","潴","瀦","猪","珠","硃","秼","絑","茱","蕏","蛛","蝫","蠩","袾","誅","諸","诛","诸","豬","跦","邾","銖","铢","駯","鮢","鯺","鴸","鼄"],ān:["侒","偣","媕","安","峖","庵","桉","氨","盦","盫","腤","菴","萻","葊","蓭","誝","諳","谙","鞌","鞍","韽","馣","鮟","鵪","鶕","鹌","𩽾"],lù:["侓","僇","勎","勠","圥","坴","塶","娽","峍","廘","彔","录","戮","摝","椂","樚","淕","淥","渌","漉","潞","琭","璐","甪","盝","睩","硉","祿","禄","稑","穋","箓","簏","簬","簵","簶","籙","粶","蔍","蕗","虂","螰","賂","赂","趢","路","踛","蹗","輅","轆","辂","辘","逯","醁","錄","録","錴","鏴","陸","騄","騼","鯥","鴼","鵦","鵱","鷺","鹭","鹿","麓","𫘧"],móu:["侔","劺","恈","眸","蛑","謀","谋","踎","鍪","鴾","麰"],ér:["侕","儿","児","兒","峏","栭","洏","粫","而","胹","荋","袻","輀","轜","陑","隭","髵","鮞","鲕","鴯","鸸"],"dòng tǒng tóng":["侗"],chà:["侘","奼","姹","岔","汊","詫","诧"],chì:["侙","傺","勅","勑","叱","啻","彳","恜","慗","憏","懘","抶","敕","斥","杘","湁","灻","炽","烾","熾","痓","痸","瘛","翄","翅","翤","翨","腟","赤","趩","遫","鉓","雴","飭","饬","鶒","鷘"],"gòng gōng":["供","共"],zhōu:["侜","周","喌","州","徟","洲","淍","炿","烐","珘","矪","舟","謅","譸","诌","賙","赒","輈","輖","辀","週","郮","銂","霌","駲","騆","鵃","鸼"],rú:["侞","儒","嚅","如","嬬","孺","帤","曘","桇","渪","濡","筎","茹","蕠","薷","蝡","蠕","袽","襦","邚","醹","銣","铷","顬","颥","鱬","鴑","鴽"],"jiàn cún":["侟"],xiá:["侠","俠","匣","峡","峽","敮","暇","柙","炠","烚","狎","狭","狹","珨","瑕","硖","硤","碬","祫","筪","縖","翈","舝","舺","蕸","赮","轄","辖","遐","鍜","鎋","陜","陿","霞","騢","魻","鶷","黠"],lǚ:["侣","侶","儢","吕","呂","屡","屢","履","挔","捛","旅","梠","焒","祣","稆","穭","絽","縷","缕","膂","膐","褛","褸","郘","鋁","铝"],ta:["侤"],"jiǎo yáo":["侥","僥","徺"],zhēn:["侦","偵","寊","帧","帪","幀","搸","斟","桢","楨","榛","樼","殝","浈","湞","潧","澵","獉","珍","珎","瑧","甄","眞","真","砧","碪","祯","禎","禛","箴","胗","臻","葴","蒖","蓁","薽","貞","贞","轃","遉","酙","針","鉁","錱","鍼","针","鱵"],"cè zè zhāi":["侧","側"],kuài:["侩","儈","凷","哙","噲","圦","块","塊","巜","廥","快","旝","欳","狯","獪","筷","糩","脍","膾","郐","鄶","鱠","鲙"],chái:["侪","儕","喍","柴","犲","祡","豺"],nóng:["侬","儂","农","哝","噥","檂","欁","浓","濃","燶","禯","秾","穠","脓","膿","蕽","襛","譨","農","辳","醲","鬞","𬪩"],jǐn:["侭","儘","卺","厪","巹","槿","漌","瑾","紧","緊","菫","蓳","謹","谨","錦","锦","饉","馑"],"hóu hòu":["侯","矦"],jiǒng:["侰","僒","冏","囧","泂","澃","炯","烱","煚","煛","熲","燛","窘","綗","褧","迥","逈","顈","颎","䌹"],"chěng tǐng":["侱"],"zhèn zhēn":["侲","揕"],zuò:["侳","做","唑","坐","岝","岞","座","祚","糳","胙","葃","葄","蓙","袏","阼"],qīn:["侵","兓","媇","嵚","嶔","欽","衾","誛","钦","顉","駸","骎","鮼"],jú:["侷","啹","婅","局","巈","椈","橘","泦","淗","湨","焗","犑","狊","粷","菊","蘜","趜","跼","蹫","輂","郹","閰","駶","驧","鵙","鵴","鶪","鼰","鼳","䴗"],"shù dōu":["侸"],tǐng:["侹","圢","娗","挺","涏","烶","珽","脡","艇","誔","頲","颋"],shèn:["侺","愼","慎","昚","涁","渗","滲","瘆","瘮","眘","祳","肾","胂","脤","腎","蜃","蜄","鋠"],"tuì tuó":["侻"],nán:["侽","喃","娚","抩","暔","枏","柟","楠","男","畘","莮","萳","遖"],xiāo:["侾","哓","嘵","嚻","囂","婋","宯","宵","庨","彇","揱","枭","枵","梟","櫹","歊","毊","消","潇","瀟","灱","灲","烋","焇","猇","獢","痚","痟","硝","硣","窙","箫","簘","簫","綃","绡","翛","膮","萧","蕭","虈","虓","蟂","蟏","蟰","蠨","踃","逍","銷","销","霄","颵","驍","骁","髇","髐","魈","鴞","鴵","鷍","鸮"],"biàn pián":["便","緶","缏"],tuǐ:["俀","腿","蹆","骽"],xì:["係","匸","卌","呬","墍","屃","屓","屭","忥","怬","恄","椞","潝","潟","澙","熂","犔","磶","禊","細","綌","縘","细","绤","舃","舄","蕮","虩","衋","覤","赩","趇","郤","釳","阋","隙","隟","霼","餼","饩","鬩","黖"],cù:["促","媨","憱","猝","瘄","瘯","簇","縬","脨","蔟","誎","趗","踧","踿","蹙","蹴","蹵","醋","顣","鼀"],é:["俄","囮","娥","峉","峨","峩","涐","珴","皒","睋","磀","莪","訛","誐","譌","讹","迗","鈋","鋨","锇","頟","額","额","魤","鵝","鵞","鹅"],qiú:["俅","叴","唒","囚","崷","巯","巰","扏","梂","殏","毬","求","汓","泅","浗","湭","煪","犰","玌","球","璆","皳","盚","紌","絿","肍","芁","莍","虬","虯","蛷","裘","觓","觩","訄","訅","賕","赇","逎","逑","遒","酋","釚","釻","銶","頄","鮂","鯄","鰽","鼽","𨱇"],xú:["俆","徐","禑"],"guàng kuāng":["俇"],kù:["俈","喾","嚳","库","庫","廤","瘔","絝","绔","袴","裤","褲","酷"],wù:["俉","务","務","勿","卼","坞","塢","奦","婺","寤","屼","岉","嵨","忢","悞","悟","悮","戊","扤","晤","杌","溩","焐","熃","物","痦","矹","窹","粅","蘁","誤","误","鋈","阢","隖","雾","霚","霧","靰","騖","骛","鶩","鹜","鼿","齀"],jùn:["俊","儁","呁","埈","寯","峻","懏","捃","攟","晙","棞","燇","珺","畯","竣","箟","蜠","賐","郡","陖","餕","馂","駿","骏","鵔","鵕","鵘","䐃"],liáng:["俍","墚","梁","椋","樑","粮","粱","糧","良","輬","辌","𫟅"],zǔ:["俎","唨","爼","祖","組","组","詛","诅","鎺","阻","靻"],"qiào xiào":["俏"],yǒng:["俑","勇","勈","咏","埇","塎","嵱","彮","怺","恿","悀","惥","愑","愹","慂","柡","栐","永","泳","湧","甬","蛹","詠","踊","踴","鯒","鲬"],hùn:["俒","倱","圂","尡","慁","掍","溷","焝","睴","觨","諢","诨"],jìng:["俓","傹","境","妌","婙","婧","弪","弳","径","徑","敬","曔","桱","梷","浄","瀞","獍","痉","痙","竞","竟","竫","競","竸","胫","脛","莖","誩","踁","迳","逕","鏡","镜","靖","静","靜","鵛"],sàn:["俕","閐"],pěi:["俖"],sú:["俗"],xī:["俙","僖","兮","凞","卥","厀","吸","唏","唽","嘻","噏","嚱","夕","奚","嬆","嬉","屖","嵠","巇","希","徆","徯","息","悉","悕","惁","惜","昔","晞","晰","晳","曦","析","桸","榽","樨","橀","欷","氥","汐","浠","淅","渓","溪","烯","焁","焈","焟","熄","熈","熙","熹","熺","熻","燨","爔","牺","犀","犠","犧","琋","瘜","皙","睎","瞦","矽","硒","磎","礂","稀","穸","窸","粞","糦","緆","繥","羲","翕","翖","肸","肹","膝","舾","莃","菥","蒠","蜥","螅","蟋","蠵","西","觹","觽","觿","譆","谿","豀","豨","豯","貕","赥","邜","鄎","酅","醯","釸","錫","鏭","鐊","鑴","锡","隵","餏","饎","饻","鯑","鵗","鸂","鼷"],lǐ:["俚","娌","峢","峲","李","欚","浬","澧","理","礼","禮","粴","裏","裡","豊","逦","邐","醴","鋰","锂","鯉","鱧","鱱","鲤","鳢"],bǎo:["保","堢","媬","宝","寚","寳","寶","珤","緥","葆","藵","褓","賲","靌","飹","飽","饱","駂","鳵","鴇","鸨"],"yú shù yù":["俞"],"sì qí":["俟"],"xìn shēn":["信"],xiū:["俢","修","咻","庥","樇","烌","羞","脙","脩","臹","貅","銝","鎀","飍","饈","馐","髤","髹","鮴","鱃","鵂","鸺","䗛"],dì:["俤","偙","僀","埊","墑","墬","娣","帝","怟","旳","梊","焍","玓","甋","眱","睇","碲","祶","禘","第","締","缔","腣","菂","蒂","蔕","蝃","蝭","螮","諦","谛","踶","递","逓","遞","遰","鉪","𤧛","䗖"],chóu:["俦","儔","嬦","惆","愁","懤","栦","燽","畴","疇","皗","稠","筹","籌","絒","綢","绸","菗","詶","讎","讐","踌","躊","酧","酬","醻","雔","雠","雦"],zhì:["俧","偫","儨","制","劕","垁","娡","寘","帙","帜","幟","庢","庤","廌","彘","徏","徝","志","忮","懥","懫","挃","挚","掷","摯","擲","旘","晊","智","栉","桎","梽","櫍","櫛","治","洷","滍","滞","滯","潌","瀄","炙","熫","狾","猘","璏","瓆","痔","痣","礩","祑","秩","秷","稚","稺","穉","窒","紩","緻","置","翐","膣","至","致","芖","蛭","袟","袠","製","覟","觗","觯","觶","誌","豑","豒","貭","質","贄","质","贽","跱","踬","躓","輊","轾","郅","銍","鋕","鑕","铚","锧","陟","隲","雉","駤","騭","騺","驇","骘","鯯","鴙","鷙","鸷","𬃊"],"liǎ liǎng":["俩"],jiǎn:["俭","倹","儉","减","剪","堿","弿","彅","戩","戬","拣","挸","捡","揀","撿","枧","柬","梘","检","検","檢","減","湕","瀽","瑐","睑","瞼","硷","碱","礆","笕","筧","简","簡","絸","繭","翦","茧","藆","蠒","裥","襇","襉","襺","詃","謇","謭","譾","谫","趼","蹇","鐗","鬋","鰎","鹸","鹻","鹼"],huò:["俰","咟","嚯","嚿","奯","彠","惑","或","擭","旤","曤","檴","沎","湱","瀖","獲","癨","眓","矐","祸","禍","穫","窢","耯","臛","艧","获","蒦","藿","蠖","謋","貨","货","鍃","鑊","镬","雘","霍","靃","韄","㸌"],"jù jū":["俱","据","鋸","锯"],xiào:["俲","傚","効","咲","哮","啸","嘋","嘨","嘯","孝","效","斅","斆","歗","涍","熽","笑","詨","誟"],pái:["俳","徘","牌","犤","猅","簰","簲","輫"],biào:["俵","鰾","鳔"],"chù tì":["俶"],fèi:["俷","剕","厞","吠","屝","废","廃","廢","昲","曊","櫠","沸","濷","狒","癈","肺","萉","費","费","鐨","镄","陫","靅","鼣"],fèng:["俸","凤","奉","湗","焨","煈","賵","赗","鳯","鳳","鴌"],ǎn:["俺","唵","埯","揞","罯","銨","铵"],bèi:["俻","倍","偝","偹","備","僃","备","悖","惫","愂","憊","昁","梖","焙","牬","犕","狈","狽","珼","琲","碚","禙","糒","苝","蓓","蛽","褙","貝","贝","軰","輩","辈","邶","郥","鄁","鋇","鐾","钡","鞁","鞴","𬇙"],yù:["俼","儥","喅","喩","喻","域","堉","妪","嫗","寓","峪","嶎","庽","彧","御","愈","慾","戫","昱","棛","棜","棫","櫲","欎","欝","欲","毓","浴","淯","滪","潏","澦","灪","焴","煜","燏","燠","爩","狱","獄","玉","琙","瘉","癒","砡","硢","硲","礇","礖","礜","禦","秗","稢","稶","篽","籞","籲","粖","緎","罭","聿","肀","艈","芋","芌","茟","蒮","蓣","蓹","蕷","蘌","蜟","蜮","袬","裕","誉","諭","譽","谕","豫","軉","輍","逳","遇","遹","郁","醧","鈺","鋊","錥","鐭","钰","閾","阈","雤","霱","預","预","飫","饇","饫","馭","驈","驭","鬰","鬱","鬻","魊","鱊","鳿","鴥","鴧","鴪","鵒","鷸","鸒","鹆","鹬"],xīn:["俽","噺","妡","嬜","廞","心","忄","忻","惞","新","昕","杺","欣","歆","炘","盺","薪","訢","辛","邤","鈊","鋅","鑫","锌","馨","馫","䜣","𫷷"],"hǔ chí":["俿"],jiù:["倃","僦","匓","匛","匶","厩","咎","就","廄","廏","廐","慦","捄","救","旧","柩","柾","桕","欍","殧","疚","臼","舅","舊","鯦","鷲","鹫","麔","齨","㠇"],yáo:["倄","傜","嗂","垚","堯","姚","媱","尧","尭","峣","嶢","嶤","徭","揺","搖","摇","摿","暚","榣","烑","爻","猺","珧","瑤","瑶","磘","窑","窯","窰","肴","蘨","謠","謡","谣","軺","轺","遙","遥","邎","顤","颻","飖","餆","餚","鰩","鱙","鳐"],"cuì zú":["倅"],"liǎng liǎ":["倆"],wǎn:["倇","唍","婉","惋","挽","晚","晥","晩","晼","梚","椀","琬","畹","皖","盌","碗","綩","綰","绾","脘","萖","踠","輓","鋔"],zǒng:["倊","偬","傯","嵸","总","惣","捴","搃","摠","燪","総","緫","縂","總","蓗"],guān:["倌","关","官","棺","瘝","癏","窤","蒄","関","闗","關","鰥","鱞","鳏"],tiǎn:["倎","唺","忝","悿","晪","殄","淟","睓","腆","舔","覥","觍","賟","錪","餂"],mén:["們","扪","捫","璊","菛","虋","鍆","钔","門","閅","门","𫞩"],"dǎo dào":["倒"],"tán tàn":["倓","埮"],"juè jué":["倔"],chuí:["倕","垂","埀","捶","搥","桘","棰","槌","箠","腄","菙","錘","鎚","锤","陲","顀"],xìng:["倖","姓","婞","嬹","幸","性","悻","杏","涬","緈","臖","荇","莕","葕"],péng:["倗","傰","塜","塳","弸","憉","捀","朋","棚","椖","樥","硼","稝","竼","篷","纄","膨","芃","蓬","蘕","蟚","蟛","袶","輣","錋","鑝","韸","韼","騯","髼","鬅","鬔","鵬","鹏"],"tǎng cháng":["倘"],hòu:["候","厚","后","垕","堠","後","洉","茩","豞","逅","郈","鮜","鱟","鲎","鲘"],tì:["倜","剃","嚏","嚔","屉","屜","悌","悐","惕","惖","戻","掦","替","朑","歒","殢","涕","瓋","笹","籊","薙","褅","逖","逷","髰","鬀","鬄"],gàn:["倝","凎","幹","榦","檊","淦","灨","盰","紺","绀","詌","贑","赣","骭","㽏"],"liàng jìng":["倞","靓"],suī:["倠","哸","夊","滖","濉","眭","睢","芕","荽","荾","虽","雖","鞖"],"chàng chāng":["倡"],jié:["倢","偼","傑","刦","刧","刼","劫","劼","卩","卪","婕","媫","孑","岊","崨","嵥","嶻","巀","幯","截","捷","掶","擮","昅","杢","杰","桀","桝","楬","楶","榤","洁","滐","潔","狤","睫","礍","竭","節","羯","莭","蓵","蛣","蜐","蠘","蠞","蠽","衱","袺","訐","詰","誱","讦","踕","迼","鉣","鍻","镼","頡","鮚","鲒","㛃"],"kǒng kōng":["倥"],juàn:["倦","劵","奆","慻","桊","淃","狷","獧","眷","睊","睠","絭","絹","绢","罥","羂","腃","蔨","鄄","餋"],zōng:["倧","堫","宗","嵏","嵕","惾","朡","棕","椶","熧","猣","磫","緃","翪","腙","葼","蝬","豵","踨","踪","蹤","鍐","鑁","騌","騣","骔","鬃","鬉","鬷","鯮","鯼"],ní:["倪","坭","埿","尼","屔","怩","淣","猊","籾","聣","蚭","蜺","觬","貎","跜","輗","郳","鈮","铌","霓","馜","鯢","鲵","麑","齯","𫐐","𫠜"],zhuō:["倬","拙","捉","桌","梲","棁","棳","槕","涿","窧","鐯","䦃"],"wō wēi":["倭"],luǒ:["倮","剆","曪","瘰","癳","臝","蓏","蠃","裸","躶"],sōng:["倯","凇","娀","崧","嵩","庺","憽","松","枀","枩","柗","梥","檧","淞","濍","硹","菘","鬆"],lèng:["倰","堎","愣","睖","踜"],zì:["倳","剚","字","恣","渍","漬","牸","眥","眦","胔","胾","自","茡","荢"],bèn:["倴","坌","捹","撪","渀","笨","逩"],cǎi:["倸","啋","婇","彩","採","棌","毝","睬","綵","跴","踩"],zhài:["债","債","寨","瘵","砦"],yē:["倻","吔","噎","擨","暍","椰","歋","潱","蠮"],shà:["倽","唼","喢","歃","箑","翜","翣","萐","閯","霎"],qīng:["倾","傾","卿","圊","寈","氢","氫","淸","清","蜻","軽","輕","轻","郬","錆","鑋","靑","青","鯖"],yīng:["偀","嘤","噟","嚶","婴","媖","嫈","嬰","孆","孾","愥","撄","攖","朠","桜","樱","櫻","渶","煐","珱","瑛","璎","瓔","甇","甖","碤","礯","緓","纓","绬","缨","罂","罃","罌","膺","英","莺","蘡","蝧","蠳","褮","譻","賏","軈","鑍","锳","霙","韺","鴬","鶑","鶧","鶯","鷪","鷹","鸎","鸚","鹦","鹰","䓨"],"chēng chèn":["偁","爯"],ruǎn:["偄","朊","瑌","瓀","碝","礝","腝","軟","輭","软","阮"],"zhòng tóng":["偅"],chǔn:["偆","惷","睶","萶","蠢","賰"],"jiǎ jià":["假"],"jì jié":["偈"],"bǐng bìng":["偋"],ruò:["偌","叒","嵶","弱","楉","焫","爇","箬","篛","蒻","鄀","鰙","鰯","鶸"],tí:["偍","厗","啼","嗁","崹","漽","瑅","睼","禵","稊","緹","缇","罤","蕛","褆","謕","趧","蹄","蹏","醍","鍗","題","题","騠","鮷","鯷","鳀","鵜","鷤","鹈","𫘨"],wēi:["偎","危","喴","威","媙","嶶","巍","微","愄","揋","揻","椳","楲","溦","烓","煨","燰","癓","縅","葨","葳","薇","蜲","蝛","覣","詴","逶","隇","隈","霺","鰃","鰄","鳂"],piān:["偏","囨","媥","楄","犏","篇","翩","鍂"],yàn:["偐","厌","厭","唁","喭","嚈","嚥","堰","妟","姲","嬊","嬿","宴","彥","彦","敥","晏","暥","曕","曣","滟","灎","灔","灧","灩","焔","焰","焱","熖","燄","牪","猒","砚","硯","艳","艶","艷","覎","觃","觾","諺","讌","讞","谚","谳","豓","豔","贋","贗","赝","軅","酀","酽","醼","釅","雁","餍","饜","騐","験","騴","驗","驠","验","鬳","鳫","鴈","鴳","鷃","鷰","齞"],"tǎng dàng":["偒"],è:["偔","匎","卾","厄","呝","咢","噩","垩","堊","堮","岋","崿","廅","悪","愕","戹","扼","搤","搹","擜","櫮","歞","歺","湂","琧","砈","砐","硆","腭","苊","萼","蕚","蚅","蝁","覨","諤","讍","谔","豟","軛","軶","轭","遌","遏","遻","鄂","鈪","鍔","鑩","锷","阨","阸","頞","顎","颚","餓","餩","饿","鰐","鰪","鱷","鳄","鶚","鹗","齃","齶","𫫇","𥔲"],xié:["偕","勰","协","協","嗋","垥","奊","恊","愶","拹","携","撷","擕","擷","攜","斜","旪","熁","燲","綊","緳","縀","缬","翓","胁","脅","脇","脋","膎","蝢","衺","襭","諧","讗","谐","鞋","鞵","龤","㙦"],chě:["偖","扯","撦"],shěng:["偗","渻","眚"],chā:["偛","嗏","扠","挿","插","揷","疀","臿","艖","銟","鍤","锸","餷"],huáng:["偟","凰","喤","堭","墴","媓","崲","徨","惶","楻","湟","煌","獚","瑝","璜","癀","皇","磺","穔","篁","簧","艎","葟","蝗","蟥","諻","趪","遑","鍠","鐄","锽","隍","韹","餭","騜","鰉","鱑","鳇","鷬","黃","黄","𨱑"],yǎo:["偠","咬","婹","宎","岆","杳","柼","榚","溔","狕","窅","窈","舀","苭","闄","騕","鷕","齩"],"chǒu qiào":["偢"],yóu:["偤","尤","庮","怣","沋","油","浟","游","犹","猶","猷","由","疣","秞","肬","莜","莸","蕕","蚰","蝣","訧","輏","輶","逰","遊","邮","郵","鈾","铀","駀","魷","鮋","鱿","鲉","𬨎"],xū:["偦","墟","媭","嬃","楈","欨","歔","燸","疞","盱","綇","縃","繻","胥","蕦","虗","虚","虛","蝑","裇","訏","許","諝","譃","谞","鑐","需","須","须","顼","驉","鬚","魆","魖","𬣙","𦈡"],zhā:["偧","哳","抯","挓","揸","摣","樝","渣","皶","觰","譇","齄","齇"],cī:["偨","疵","蠀","趀","骴","髊","齹"],bī:["偪","屄","楅","毴","豍","逼","鰏","鲾","鵖"],xún:["偱","噚","寻","尋","峋","巡","廵","循","恂","揗","攳","旬","杊","栒","桪","樳","洵","浔","潯","燅","燖","珣","璕","畃","紃","荀","蟳","詢","询","鄩","鱏","鱘","鲟","𬘓","𬩽","𬍤","𬊈"],"cāi sī":["偲"],duān:["偳","媏","端","褍","鍴"],ǒu:["偶","吘","嘔","耦","腢","蕅","藕","𬉼","𠙶"],tōu:["偷","偸","鍮"],"zán zá zǎ":["偺"],"lǚ lóu":["偻","僂"],fèn:["偾","僨","奋","奮","弅","忿","愤","憤","瀵","瞓","秎","粪","糞","膹","鱝","鲼"],"kuǐ guī":["傀"],sǒu:["傁","叜","叟","嗾","櫢","瞍","薮","藪"],"zhì sī tí":["傂"],sù:["傃","僳","嗉","塐","塑","夙","嫊","愫","憟","榡","樎","樕","殐","泝","涑","溯","溸","潚","潥","玊","珟","璛","簌","粛","粟","素","縤","肃","肅","膆","蔌","藗","觫","訴","謖","诉","谡","趚","蹜","速","遡","遬","鋉","餗","驌","骕","鱐","鷫","鹔","𫗧"],xiā:["傄","煆","瞎","虲","谺","颬","鰕"],"yuàn yuán":["傆","媛"],rǒng:["傇","冗","宂","氄","軵"],nù:["傉","怒"],yùn:["傊","孕","恽","惲","愠","慍","枟","腪","蕴","薀","藴","蘊","褞","貟","运","運","郓","鄆","酝","醖","醞","韗","韞","韵","韻","餫"],"gòu jiǎng":["傋"],mà:["傌","嘜","榪","睰","祃","禡","罵","閁","駡","骂","鬕"],bàng:["傍","塝","棒","玤","稖","艕","蒡","蜯","謗","谤","鎊","镑"],diān:["傎","厧","嵮","巅","巓","巔","掂","攧","敁","槇","滇","癫","癲","蹎","顚","顛","颠","齻"],táng:["傏","唐","啺","坣","堂","塘","搪","棠","榶","溏","漟","煻","瑭","磄","禟","篖","糃","糖","糛","膅","膛","蓎","螗","螳","赯","踼","鄌","醣","鎕","隚","餹","饄","鶶","䣘"],hào:["傐","哠","恏","昊","昦","晧","暠","暤","暭","曍","浩","淏","澔","灏","灝","皓","皜","皞","皡","皥","耗","聕","薃","號","鄗","顥","颢","鰝"],"xī xì":["傒"],shān:["傓","删","刪","剼","圸","山","挻","搧","柵","檆","潸","澘","煽","狦","珊","笘","縿","羴","羶","脠","舢","芟","衫","跚","軕","邖","閊","鯅"],"qiàn jiān":["傔"],"què jué":["傕","埆"],"cāng chen":["傖"],róng:["傛","媶","嫆","嬫","容","峵","嵘","嶸","戎","搈","曧","栄","榕","榮","榵","毧","溶","瀜","烿","熔","狨","瑢","穁","絨","绒","羢","肜","茙","茸","荣","蓉","蝾","融","螎","蠑","褣","鎔","镕","駥"],"tà tàn":["傝"],suō:["傞","唆","嗍","嗦","娑","摍","桫","梭","睃","簑","簔","羧","莏","蓑","趖","鮻"],dǎi:["傣","歹"],zài:["傤","儎","再","在","扗","洅","載","酨"],gǔ:["傦","古","啒","尳","愲","榖","榾","汩","淈","濲","瀔","牯","皷","皼","盬","瞽","穀","罟","羖","股","脵","臌","薣","蛊","蠱","詁","诂","轂","逧","鈷","钴","餶","馉","鼓","鼔","𦙶"],bīn:["傧","宾","彬","斌","椕","滨","濒","濱","濵","瀕","繽","缤","虨","豩","豳","賓","賔","邠","鑌","镔","霦","顮"],chǔ:["储","儲","杵","椘","楚","楮","檚","濋","璴","础","礎","禇","處","齭","齼","𬺓"],nuó:["傩","儺","挪","梛","橠"],"cān càn":["傪"],lěi:["傫","儡","厽","垒","塁","壘","壨","櫐","灅","癗","矋","磊","礨","耒","蕌","蕾","藟","蘽","蠝","誄","讄","诔","鑸","鸓"],cuī:["催","凗","墔","崔","嵟","慛","摧","榱","獕","磪","鏙"],yōng:["傭","嗈","墉","壅","嫞","庸","廱","慵","拥","擁","滽","灉","牅","痈","癕","癰","臃","邕","郺","鄘","鏞","镛","雍","雝","饔","鱅","鳙","鷛"],"zāo cáo":["傮"],sǒng:["傱","嵷","怂","悚","愯","慫","竦","耸","聳","駷","㧐"],ào:["傲","坳","垇","墺","奡","嫯","岙","岰","嶴","懊","擙","澳","鏊","驁","骜"],"qī còu":["傶"],chuǎng:["傸","磢","闖","闯"],shǎ:["傻","儍"],hàn:["傼","垾","悍","憾","扞","捍","撖","撼","旱","晘","暵","汉","涆","漢","瀚","焊","猂","皔","睅","翰","莟","菡","蛿","蜭","螒","譀","輚","釬","銲","鋎","雗","頷","顄","颔","駻","鶾"],zhāng:["傽","嫜","张","張","彰","慞","暲","樟","漳","獐","璋","章","粻","蔁","蟑","遧","鄣","鏱","餦","騿","鱆","麞"],"yān yàn":["傿","墕","嬮"],"piào biāo":["僄","骠"],liàn:["僆","堜","媡","恋","戀","楝","殓","殮","湅","潋","澰","瀲","炼","煉","瑓","練","纞","练","萰","錬","鍊","鏈","链","鰊","𬶠"],màn:["㵘","僈","墁","幔","慢","曼","漫","澷","熳","獌","縵","缦","蔄","蘰","鄤","鏝","镘","𬜬"],"tàn tǎn":["僋"],yíng:["僌","営","塋","嬴","攍","楹","櫿","溁","溋","滢","潆","濙","濚","濴","瀅","瀛","瀠","瀯","灐","灜","熒","營","瑩","盁","盈","禜","籝","籯","縈","茔","荧","莹","萤","营","萦","萾","蓥","藀","蛍","蝇","蝿","螢","蠅","謍","贏","赢","迎","鎣"],dòng:["働","冻","凍","动","動","姛","戙","挏","栋","棟","湩","硐","胨","胴","腖","迵","霘","駧"],zhuàn:["僎","啭","囀","堟","撰","灷","瑑","篆","腞","蒃","襈","譔","饌","馔"],xiàng:["像","勨","向","嚮","姠","嶑","曏","橡","珦","缿","蟓","衖","襐","象","鐌","項","项","鱌"],shàn:["僐","善","墠","墡","嬗","擅","敾","椫","樿","歚","汕","灗","疝","磰","繕","缮","膳","蟮","蟺","訕","謆","譱","讪","贍","赡","赸","鄯","鐥","饍","騸","骟","鱓","鱔","鳝","𫮃"],"tuí tuǐ":["僓"],zǔn:["僔","噂","撙","譐"],pú:["僕","匍","圤","墣","濮","獛","璞","瞨","穙","莆","菐","菩","葡","蒱","蒲","贌","酺","鏷","镤"],láo:["僗","劳","労","勞","哰","崂","嶗","憥","朥","浶","牢","痨","癆","窂","簩","醪","鐒","铹","顟","髝","𫭼"],chǎng:["僘","厰","廠","敞","昶","氅","鋹","𬬮"],guāng:["僙","光","咣","垙","姯","洸","灮","炗","炚","炛","烡","珖","胱","茪","輄","銧","黆","𨐈"],liáo:["僚","嘹","嫽","寥","寮","尞","屪","嵺","嶚","嶛","廫","憀","敹","暸","橑","獠","璙","疗","療","竂","簝","繚","缭","聊","膋","膫","藔","蟟","豂","賿","蹘","辽","遼","飉","髎","鷯","鹩"],dèng:["僜","凳","墱","嶝","櫈","瞪","磴","覴","邓","鄧","隥"],"chán zhàn zhuàn":["僝"],bō:["僠","嶓","拨","撥","播","波","溊","玻","癶","盋","砵","碆","礡","缽","菠","袰","蹳","鉢","钵","餑","饽","驋","鱍","𬭛"],huì:["僡","匯","卉","喙","嘒","嚖","圚","嬒","寭","屶","屷","彗","彙","彚","徻","恚","恵","惠","慧","憓","懳","晦","暳","槥","橞","檅","櫘","汇","泋","滙","潓","烩","燴","獩","璤","瞺","硊","秽","穢","篲","絵","繪","绘","翙","翽","荟","蔧","蕙","薈","薉","蟪","詯","誨","諱","譓","譿","讳","诲","賄","贿","鐬","闠","阓","靧","頮","顪","颒","餯","𬤝","𬭬"],chuǎn:["僢","喘","舛","荈","踳"],"tiě jiàn":["僣"],sēng:["僧","鬙"],xiàn:["僩","僴","哯","垷","塪","姭","娊","宪","岘","峴","憲","撊","晛","橌","橺","涀","瀗","献","獻","现","現","県","睍","粯","糮","絤","綫","線","线","缐","羡","羨","腺","臔","臽","苋","莧","誢","豏","鋧","錎","限","陥","陷","霰","餡","馅","麲","鼸","𬀪","𪾢"],"yù jú":["僪"],"è wū":["僫"],"tóng zhuàng":["僮"],lǐn:["僯","凛","凜","廩","廪","懍","懔","撛","檁","檩","澟","癛","癝"],gù:["僱","凅","固","堌","崓","崮","故","梏","棝","牿","痼","祻","錮","锢","雇","顧","顾","鯝","鲴"],jiāng:["僵","壃","姜","橿","殭","江","畕","疅","礓","繮","缰","翞","茳","葁","薑","螀","螿","豇","韁","鱂","鳉"],mǐn:["僶","冺","刡","勄","悯","惽","愍","慜","憫","抿","敃","敏","敯","泯","潣","皿","笢","笽","簢","蠠","閔","閩","闵","闽","鰵","鳘","黽"],jìn:["僸","凚","噤","嚍","墐","壗","妗","嬧","搢","晉","晋","枃","殣","浕","浸","溍","濅","濜","烬","煡","燼","琎","瑨","璶","盡","祲","縉","缙","荩","藎","覲","觐","賮","贐","赆","近","进","進","靳","齽"],"jià jie":["價"],qiào:["僺","峭","帩","撬","殻","窍","竅","誚","诮","躈","陗","鞩","韒","髚"],pì:["僻","媲","嫓","屁","澼","甓","疈","譬","闢","鷿","鸊","䴙"],sài:["僿","簺","賽","赛"],"chán tǎn shàn":["儃"],"dāng dàng":["儅","当","闣"],xuān:["儇","喧","塇","媗","宣","愃","愋","揎","昍","暄","煊","煖","瑄","睻","矎","禤","箮","翧","翾","萱","萲","蓒","蕿","藼","蘐","蝖","蠉","諠","諼","譞","谖","軒","轩","鍹","駽","鰚","𫓶","𫍽"],"dān dàn":["儋","擔","瘅"],càn:["儏","澯","灿","燦","璨","粲","薒","謲"],"bīn bìn":["儐"],"án àn":["儑"],tái:["儓","坮","嬯","抬","擡","檯","炱","炲","籉","臺","薹","跆","邰","颱","鮐","鲐"],lán:["儖","兰","囒","婪","岚","嵐","幱","拦","攔","斓","斕","栏","欄","欗","澜","瀾","灆","灡","燣","燷","璼","篮","籃","籣","繿","葻","蓝","藍","蘫","蘭","褴","襕","襤","襴","襽","譋","讕","谰","躝","鑭","镧","闌","阑","韊","𬒗"],"nǐ yì ài yí":["儗"],méng:["儚","幪","曚","朦","橗","檬","氋","溕","濛","甍","甿","盟","礞","艨","莔","萌","蕄","虻","蝱","鄳","鄸","霿","靀","顭","饛","鯍","鸏","鹲","𫑡","㠓"],níng:["儜","凝","咛","嚀","嬣","柠","橣","檸","狞","獰","聍","聹","薴","鑏","鬡","鸋"],qióng:["儝","卭","宆","惸","憌","桏","橩","焪","焭","煢","熍","琼","瓊","睘","穷","穹","窮","竆","笻","筇","舼","茕","藑","藭","蛩","蛬","赹","跫","邛","銎","䓖"],liè:["儠","冽","列","劣","劽","埒","埓","姴","峛","巤","挒","捩","栵","洌","浖","烈","烮","煭","犣","猎","猟","獵","聗","脟","茢","蛚","趔","躐","迾","颲","鬛","鬣","鮤","鱲","鴷","䴕","𫚭"],kuǎng:["儣","夼","懭"],bào:["儤","勽","報","忁","报","抱","曓","爆","犦","菢","虣","蚫","豹","鉋","鑤","铇","骲","髱","鮑","鲍"],biāo:["儦","墂","幖","彪","标","標","滮","瀌","熛","爂","猋","瘭","磦","膘","臕","謤","贆","鏢","鑣","镖","镳","颮","颷","飆","飇","飈","飊","飑","飙","飚","驫","骉","髟"],zǎn:["儧","儹","噆","攅","昝","趱","趲"],háo:["儫","嗥","嘷","噑","嚎","壕","椃","毜","毫","濠","獆","獔","竓","籇","蚝","蠔","譹","豪"],qìng:["儬","凊","庆","慶","櫦","濪","碃","磬","罄","靘"],chèn:["儭","嚫","榇","櫬","疢","衬","襯","讖","谶","趁","趂","齓","齔","龀"],téng:["儯","幐","滕","漛","疼","籐","籘","縢","腾","藤","虅","螣","誊","謄","邆","駦","騰","驣","鰧","䲢"],"lǒng lóng lòng":["儱"],"chán chàn":["儳"],"ráng xiāng":["儴","勷"],"huì xié":["儶"],luó:["儸","攞","椤","欏","猡","玀","箩","籮","罗","羅","脶","腡","萝","蘿","螺","覼","逻","邏","鏍","鑼","锣","镙","饠","騾","驘","骡","鸁"],léi:["儽","嫘","檑","欙","瓃","畾","縲","纍","纝","缧","罍","羸","蔂","蘲","虆","轠","鐳","鑘","镭","雷","靁","鱩","鼺"],"nàng nāng":["儾"],"wù wū":["兀"],yǔn:["允","喗","夽","抎","殒","殞","狁","磒","荺","賱","鈗","阭","陨","隕","霣","馻","齫","齳"],zān:["兂","橵","簪","簮","糌","鐕","鐟","鵤"],yuán:["元","円","原","厡","厵","园","圆","圎","園","圓","垣","塬","媴","嫄","援","榞","榬","橼","櫞","沅","湲","源","溒","爰","猨","猿","笎","緣","縁","缘","羱","茒","薗","蝝","蝯","螈","袁","褤","謜","轅","辕","邍","邧","酛","鈨","鎱","騵","魭","鶢","鶰","黿","鼋","𫘪"],xiōng:["兄","兇","凶","匂","匈","哅","忷","恟","汹","洶","胷","胸","芎","訩","詾","讻"],chōng:["充","嘃","忡","憃","憧","摏","沖","浺","珫","罿","翀","舂","艟","茺","衝","蹖","㳘"],zhào:["兆","垗","旐","曌","枛","櫂","照","燳","狣","瞾","笊","罀","罩","羄","肁","肇","肈","詔","诏","赵","趙","鮡","𬶐"],"duì ruì yuè":["兊","兌","兑"],kè:["克","刻","勀","勊","堁","娔","客","恪","愙","氪","溘","碦","緙","缂","艐","衉","課","课","錁","锞","騍","骒"],tù:["兎","兔","堍","迌","鵵"],dǎng:["党","攩","欓","譡","讜","谠","黨","𣗋"],dōu:["兜","兠","唗","橷","篼","蔸"],huǎng:["兤","奛","幌","怳","恍","晄","炾","熀","縨","詤","謊","谎"],rù:["入","嗕","媷","扖","杁","洳","溽","縟","缛","蓐","褥","鳰"],nèi:["內","氝","氞","錗"],"yú shù":["兪"],"liù lù":["六"],han:["兯","爳"],tiān:["兲","天","婖","添","酟","靔","靝","黇"],"xīng xìng":["兴"],diǎn:["典","嚸","奌","婰","敟","椣","点","碘","蒧","蕇","踮","點"],"zī cí":["兹"],jiān:["兼","冿","囏","坚","堅","奸","姦","姧","尖","幵","惤","戋","戔","搛","椾","樫","櫼","歼","殱","殲","湔","瀐","瀸","煎","熞","熸","牋","瑊","睷","礛","礷","笺","箋","緘","縑","缄","缣","肩","艰","艱","菅","菺","葌","蒹","蔪","蕑","蕳","虃","譼","豜","鑯","雃","鞯","韀","韉","餰","馢","鰔","鰜","鰹","鲣","鳒","鵑","鵳","鶼","鹣","麉"],shòu:["兽","受","售","壽","夀","寿","授","狩","獣","獸","痩","瘦","綬","绶","膄"],jì:["兾","冀","剂","剤","劑","勣","坖","垍","塈","妓","季","寂","寄","廭","彑","徛","忌","悸","惎","懻","技","旡","既","旣","暨","暩","曁","梞","檕","檵","洎","漃","漈","瀱","痵","癠","禝","稩","稷","穄","穊","穧","紀","継","績","繋","繼","继","绩","罽","臮","芰","茍","茤","葪","蓟","蔇","薊","蘎","蘮","蘻","裚","襀","覬","觊","計","記","誋","计","记","跡","跽","蹟","迹","际","際","霁","霽","驥","骥","髻","鬾","魝","魥","鯚","鯽","鰶","鰿","鱀","鱭","鲚","鲫","鵋","鷑","齌","𪟝","𬶨","𬶭"],jiōng:["冂","冋","坰","埛","扃","蘏","蘔","駉","駫","𬳶"],mào:["冃","冐","媢","帽","愗","懋","暓","柕","楙","毷","瑁","皃","眊","瞀","耄","茂","萺","蝐","袤","覒","貌","貿","贸","鄚","鄮"],rǎn:["冄","冉","姌","媣","染","珃","苒","蒅","䎃"],"nèi nà":["内"],gāng:["冈","冮","刚","剛","堈","堽","岡","掆","摃","棡","牨","犅","疘","綱","纲","缸","罁","罡","肛","釭","鎠","㭎"],cè:["冊","册","厕","厠","夨","廁","恻","惻","憡","敇","测","測","笧","策","筞","筴","箣","荝","萗","萴","蓛"],guǎ:["冎","剐","剮","叧","寡"],"mào mò":["冒"],gòu:["冓","啂","坸","垢","够","夠","媾","彀","搆","撀","构","構","煹","覯","觏","訽","詬","诟","購","购","遘","雊"],xǔ:["冔","喣","暊","栩","珝","盨","糈","詡","諿","诩","鄦","醑"],mì:["冖","冪","嘧","塓","宻","密","峚","幂","幎","幦","怽","榓","樒","櫁","汨","淧","滵","漞","濗","熐","羃","蔤","蜜","覓","覔","覛","觅","謐","谧","鼏"],"yóu yín":["冘"],xiě:["写","冩","藛"],jūn:["军","君","均","桾","汮","皲","皸","皹","碅","莙","蚐","袀","覠","軍","鈞","銁","銞","鍕","钧","頵","鮶","鲪","麏"],mí:["冞","擟","瀰","爢","猕","獼","祢","禰","縻","蒾","藌","蘪","蘼","袮","詸","謎","迷","醚","醾","醿","釄","镾","鸍","麊","麋","麛"],"guān guàn":["冠","覌","観","觀","观"],měng:["冡","勐","懵","掹","猛","獴","艋","蜢","蠓","錳","锰","鯭","鼆"],zhǒng:["冢","塚","尰","歱","煄","瘇","肿","腫","踵"],zuì:["冣","嶵","晬","最","栬","槜","檇","檌","祽","絊","罪","蕞","辠","酔","酻","醉","錊"],yuān:["冤","剈","囦","嬽","寃","棩","淵","渁","渆","渊","渕","灁","眢","肙","葾","蒬","蜎","蜵","駌","鳶","鴛","鵷","鸢","鸳","鹓","鼘","鼝"],míng:["冥","名","明","暝","朙","榠","洺","溟","猽","眀","眳","瞑","茗","螟","覭","詺","鄍","銘","铭","鳴","鸣"],kòu:["冦","叩","宼","寇","扣","敂","滱","窛","筘","簆","蔲","蔻","釦","鷇"],tài:["冭","太","夳","忲","态","態","汰","汱","泰","溙","肽","舦","酞","鈦","钛"],"féng píng":["冯","馮"],"chōng chòng":["冲"],kuàng:["况","圹","壙","岲","懬","旷","昿","曠","框","況","爌","眖","眶","矿","砿","礦","穬","絋","絖","纊","纩","貺","贶","軦","邝","鄺","鉱","鋛","鑛","黋"],lěng:["冷"],pàn:["冸","判","叛","沜","泮","溿","炍","牉","畔","盼","聁","袢","襻","詊","鋬","鑻","頖","鵥"],fā:["冹","彂","沷","発","發"],xiǎn:["冼","尟","尠","崄","嶮","幰","攇","显","櫶","毨","灦","烍","燹","狝","猃","獫","獮","玁","禒","筅","箲","藓","蘚","蚬","蜆","譣","赻","跣","鍌","险","険","險","韅","顕","顯","㬎"],qià:["冾","圶","帢","恰","殎","洽","硈","胢","髂"],"jìng chēng":["净","凈","淨"],sōu:["凁","嗖","廀","廋","捜","搜","摉","溲","獀","艘","蒐","螋","鄋","醙","鎪","锼","颼","飕","餿","馊","騪"],měi:["凂","媄","媺","嬍","嵄","挴","毎","每","浼","渼","燘","美","躾","鎂","镁","黣"],tú:["凃","図","图","圖","圗","塗","屠","峹","嵞","庩","廜","徒","悇","揬","涂","瘏","筡","腯","荼","蒤","跿","途","酴","鈯","鍎","馟","駼","鵌","鶟","鷋","鷵","𬳿"],zhǔn:["准","凖","埻","準","𬘯"],"liáng liàng":["凉","涼","量"],diāo:["凋","刁","刟","叼","奝","弴","彫","汈","琱","碉","簓","虭","蛁","貂","錭","雕","鮉","鯛","鲷","鵰","鼦"],còu:["凑","湊","腠","輳","辏"],ái:["凒","啀","嘊","捱","溰","癌","皑","皚"],duó:["凙","剫","夺","奪","痥","踱","鈬","鐸","铎"],dú:["凟","匵","嬻","椟","櫝","殰","涜","牍","牘","犊","犢","独","獨","瓄","皾","裻","読","讀","讟","豄","贕","錖","鑟","韇","韣","韥","騳","髑","黩","黷"],"jǐ jī":["几"],fán:["凡","凢","凣","匥","墦","杋","柉","棥","樊","瀿","烦","煩","燔","璠","矾","礬","笲","籵","緐","羳","舤","舧","薠","蘩","蠜","襎","蹯","釩","鐇","鐢","钒","鷭","𫔍","𬸪"],jū:["凥","匊","娵","婮","居","崌","抅","挶","掬","梮","椐","檋","毩","毱","泃","涺","狙","琚","疽","砠","罝","腒","艍","蜛","裾","諊","跔","踘","躹","陱","雎","鞠","鞫","駒","驹","鮈","鴡","鶋","𬶋"],"chù chǔ":["処","处"],zhǐ:["凪","劧","咫","址","坧","帋","恉","扺","指","旨","枳","止","汦","沚","洔","淽","疻","砋","祉","秖","紙","纸","芷","藢","衹","襧","訨","趾","軹","轵","酯","阯","黹"],píng:["凭","凴","呯","坪","塀","岼","帡","帲","幈","平","慿","憑","枰","洴","焩","玶","瓶","甁","竮","箳","簈","缾","荓","萍","蓱","蚲","蛢","評","评","軿","輧","郱","鮃","鲆"],kǎi:["凯","凱","剀","剴","垲","塏","恺","愷","慨","暟","蒈","輆","鍇","鎧","铠","锴","闓","闿","颽"],gān:["凲","坩","尲","尴","尶","尷","柑","泔","漧","玕","甘","疳","矸","竿","筸","粓","肝","苷","迀","酐","魐"],"kǎn qiǎn":["凵"],tū:["凸","堗","嶀","捸","涋","湥","痜","禿","秃","突","葖","鋵","鵚","鼵","㻬"],"āo wā":["凹"],chū:["出","初","岀","摴","榋","樗","貙","齣","䢺","䝙"],dàng:["凼","圵","垱","壋","档","檔","氹","璗","瓽","盪","瞊","砀","碭","礑","簜","荡","菪","蕩","蘯","趤","逿","雼","𬍡"],hán:["函","凾","含","圅","娢","寒","崡","晗","梒","浛","涵","澏","焓","琀","甝","筨","蜬","邗","邯","鋡","韓","韩"],záo:["凿","鑿"],dāo:["刀","刂","忉","氘","舠","螩","釖","魛","鱽"],chuāng:["刅","摐","牎","牕","疮","瘡","窓","窗","窻"],"fēn fèn":["分"],"qiè qiē":["切"],kān:["刊","勘","堪","戡","栞","龕","龛"],cǔn:["刌","忖"],chú:["刍","厨","幮","廚","橱","櫉","櫥","滁","犓","篨","耡","芻","蒢","蒭","蜍","蟵","豠","趎","蹰","躇","躕","鉏","鋤","锄","除","雏","雛","鶵"],"huà huá":["划"],lí:["刕","剓","剺","劙","厘","喱","嚟","囄","嫠","孷","廲","悡","梨","梸","棃","漓","灕","犁","犂","狸","琍","璃","瓈","盠","睝","离","穲","竰","筣","篱","籬","糎","縭","缡","罹","艃","荲","菞","蓠","蔾","藜","蘺","蜊","蟍","蟸","蠫","褵","謧","貍","醨","鋫","錅","鏫","鑗","離","驪","骊","鯏","鯬","鱺","鲡","鵹","鸝","鹂","黎","黧","㰀"],yuè:["刖","嬳","岄","岳","嶽","恱","悅","悦","戉","抈","捳","月","樾","瀹","爚","玥","礿","禴","篗","籆","籥","籰","粤","粵","蘥","蚎","蚏","説","越","跀","跃","躍","軏","鈅","鉞","鑰","钺","閱","閲","阅","鸑","鸙","黦","龠","𫐄","𬸚"],liú:["刘","劉","嚠","媹","嵧","旈","旒","榴","橊","流","浏","瀏","琉","瑠","瑬","璢","畄","留","畱","疁","瘤","癅","硫","蒥","蓅","蟉","裗","鎏","鏐","鐂","镠","飀","飅","飗","駠","駵","騮","驑","骝","鰡","鶹","鹠","麍"],zé:["则","則","啧","嘖","嫧","帻","幘","択","樍","歵","沢","泎","溭","皟","瞔","矠","礋","箦","簀","舴","蔶","蠌","襗","謮","賾","赜","迮","鸅","齚","齰"],"chuàng chuāng":["创","創"],qù:["刞","厺","去","閴","闃","阒","麮","鼁"],"bié biè":["別","别"],"páo bào":["刨"],"chǎn chàn":["刬","剗","幝"],guā:["刮","劀","桰","歄","煱","瓜","胍","踻","颪","颳","騧","鴰","鸹"],gēng:["刯","庚","椩","浭","焿","畊","絚","羮","羹","耕","菮","賡","赓","鶊","鹒"],dào:["到","噵","悼","椡","檤","燾","瓙","盗","盜","稲","稻","纛","翿","艔","菿","衜","衟","軇","道"],chuàng:["刱","剏","剙","怆","愴"],kū:["刳","哭","圐","堀","枯","桍","矻","窟","跍","郀","骷","鮬"],duò:["刴","剁","墯","尮","惰","憜","挅","桗","舵","跥","跺","陊","陏","飿","饳","鵽"],"shuā shuà":["刷"],"quàn xuàn":["券"],"chà shā":["刹","剎"],"cì cī":["刺"],guì:["刽","刿","劊","劌","撌","攰","昋","桂","椢","槶","樻","櫃","猤","禬","筀","蓕","襘","貴","贵","跪","鐀","鑎","鞼","鱖","鱥"],lóu:["剅","娄","婁","廔","楼","樓","溇","漊","熡","耧","耬","艛","蒌","蔞","蝼","螻","謱","軁","遱","鞻","髅","髏","𪣻"],cuò:["剉","剒","厝","夎","挫","措","棤","莝","莡","蓌","逪","銼","錯","锉","错"],"xiāo xuē":["削"],"kēi kè":["剋","尅"],"là lá":["剌"],tī:["剔","梯","踢","銻","锑","鷈","鷉","䏲","䴘"],pōu:["剖"],wān:["剜","塆","壪","帵","弯","彎","湾","潫","灣","睕","蜿","豌"],"bāo bō":["剝","剥"],duō:["剟","咄","哆","嚉","多","夛","掇","毲","畓","裰","㙍"],qíng:["剠","勍","夝","情","擎","晴","暒","棾","樈","檠","氰","甠","硘","葝","黥"],"yǎn shàn":["剡"],"dū zhuó":["剢"],yān:["剦","嫣","崦","嶖","恹","懕","懨","樮","淊","淹","漹","烟","焉","焑","煙","珚","篶","胭","臙","菸","鄢","醃","閹","阉","黫"],huō:["剨","劐","吙","攉","秴","耠","锪","騞","𬴃"],shèng:["剩","剰","勝","圣","墭","嵊","晠","榺","橳","琞","聖","蕂","貹","賸"],"duān zhì":["剬"],wū:["剭","呜","嗚","圬","屋","巫","弙","杇","歍","汙","汚","污","洿","烏","窏","箼","螐","誈","誣","诬","邬","鄔","鎢","钨","鰞","鴮"],gē:["割","哥","圪","彁","戈","戓","戨","歌","滒","犵","肐","袼","謌","鎶","鴚","鴿","鸽"],"dá zhá":["剳"],chuán:["剶","暷","椽","篅","舡","舩","船","輲","遄"],"tuán zhuān":["剸","漙","篿"],"lù jiū":["剹"],pēng:["剻","匉","嘭","怦","恲","抨","梈","烹","砰","軯","駍"],piāo:["剽","勡","慓","旚","犥","翲","螵","飃","飄","飘","魒"],kōu:["剾","彄","抠","摳","眍","瞘","芤","𫸩"],"jiǎo chāo":["剿","劋","勦","摷"],qiāo:["劁","勪","墝","幧","敲","橇","毃","燆","硗","磽","繑","趬","跷","踍","蹺","蹻","郻","鄡","鄥","鍫","鍬","鐰","锹","頝"],"huá huà":["劃"],"zhā zhá":["劄"],"pī pǐ":["劈","悂"],tāng:["劏","嘡","羰","薚","蝪","蹚","鞺","鼞"],chán:["劖","嚵","壥","婵","嬋","巉","廛","棎","毚","湹","潹","潺","澶","瀍","瀺","煘","獑","磛","緾","纏","纒","缠","艬","蝉","蟐","蟬","蟾","誗","讒","谗","躔","鄽","酁","鋋","鑱","镵","饞","馋"],zuān:["劗","躜","躦","鉆","鑚"],mó:["劘","嫫","嬤","嬷","尛","摹","擵","橅","糢","膜","藦","蘑","謨","謩","谟","饃","饝","馍","髍","魔","魹"],zhú:["劚","斸","曯","欘","灟","炢","烛","燭","爥","瘃","竹","笁","笜","舳","茿","蓫","蠋","蠾","躅","逐","逫","钃","鱁"],quàn:["劝","勧","勸","牶","韏"],"jìn jìng":["劤","劲","勁"],kēng:["劥","坑","牼","硁","硜","誙","銵","鍞","鏗","铿","阬"],"xié liè":["劦"],"zhù chú":["助"],nǔ:["努","弩","砮","胬"],shào:["劭","卲","哨","潲","紹","綤","绍","袑","邵"],miǎo:["劰","杪","淼","渺","眇","秒","篎","緲","缈","藐","邈"],kǒu:["劶","口"],wā:["劸","娲","媧","屲","挖","攨","洼","溛","漥","瓾","畖","穵","窊","窪","蛙","韈","鼃"],kuāng:["劻","匡","匩","哐","恇","洭","筐","筺","誆","诓","軭","邼"],hé:["劾","咊","啝","姀","峆","敆","曷","柇","楁","毼","河","涸","渮","澕","熆","皬","盇","盉","盍","盒","禾","篕","籺","粭","翮","菏","萂","覈","訸","詥","郃","釛","鉌","鑉","閡","闔","阂","阖","鞨","頜","餄","饸","魺","鹖","麧","齕","龁","龢","𬌗"],gào:["勂","吿","告","峼","祮","祰","禞","筶","誥","诰","郜","鋯","锆"],"bó bèi":["勃"],láng:["勆","嫏","廊","斏","桹","榔","樃","欴","狼","琅","瑯","硠","稂","艆","蓈","蜋","螂","躴","郒","郞","鋃","鎯","锒"],xūn:["勋","勛","勲","勳","嚑","坃","埙","塤","壎","壦","曛","燻","獯","矄","纁","臐","薫","薰","蘍","醺","𫄸"],"juàn juān":["勌","瓹"],"lè lēi":["勒"],kài:["勓","炌","烗","鎎"],"wěng yǎng":["勜"],qín:["勤","嗪","噙","嶜","庈","懃","懄","捦","擒","斳","檎","澿","珡","琴","琹","瘽","禽","秦","耹","芩","芹","菦","螓","蠄","鈙","鈫","雂","靲","鳹","鵭"],jiàng:["勥","匞","匠","嵹","弜","弶","摾","櫤","洚","滰","犟","糡","糨","絳","绛","謽","酱","醤","醬"],fān:["勫","嬏","帆","幡","忛","憣","旙","旛","繙","翻","藩","轓","颿","飜","鱕"],juān:["勬","姢","娟","捐","涓","蠲","裐","鎸","鐫","镌","鹃"],"tóng dòng":["勭","烔","燑","狪"],lǜ:["勴","垏","嵂","律","慮","氯","滤","濾","爈","箻","綠","繂","膟","葎","虑","鑢"],chè:["勶","坼","彻","徹","掣","撤","澈","烢","爡","瞮","硩","聅","迠","頙","㬚"],sháo:["勺","玿","韶"],"gōu gòu":["勾"],cōng:["匆","囪","囱","忩","怱","悤","暰","樬","漗","瑽","璁","瞛","篵","繱","聡","聦","聪","聰","苁","茐","葱","蓯","蔥","蟌","鍯","鏓","鏦","騘","驄","骢"],"táo yáo":["匋","陶"],páo:["匏","咆","垉","庖","爮","狍","袍","褜","軳","鞄","麅"],dá:["匒","妲","怛","炟","燵","畣","笪","羍","荙","薘","蟽","詚","达","迏","迖","迚","逹","達","鐽","靼","鞑","韃","龖","龘","𫟼"],"huà huā":["化"],"běi bèi":["北"],nǎo:["匘","垴","堖","嫐","恼","悩","惱","瑙","碯","脑","脳","腦"],"chí shi":["匙"],fāng:["匚","堏","方","淓","牥","芳","邡","鈁","錺","钫","鴋"],zā:["匝","咂","帀","沞","臜","臢","迊","鉔","魳"],qiè:["匧","厒","妾","怯","悏","惬","愜","挈","穕","窃","竊","笡","箧","篋","籡","踥","鍥","锲","鯜"],"zāng cáng":["匨"],fěi:["匪","奜","悱","棐","榧","篚","翡","蕜","誹","诽"],"kuì guì":["匮","匱"],suǎn:["匴"],pǐ:["匹","噽","嚭","圮","庀","痞","癖","脴","苉","銢","鴄"],"qū ōu":["区","區"],"kē qià":["匼"],"yǎn yàn":["匽","棪"],biǎn:["匾","惼","揙","碥","稨","窆","藊","褊","貶","贬","鴘"],nì:["匿","堄","嫟","嬺","惄","愵","昵","暱","氼","眤","睨","縌","胒","腻","膩","逆","𨺙"],niàn:["卄","唸","埝","廿","念","惗","艌"],sà:["卅","櫒","脎","萨","蕯","薩","鈒","隡","颯","飒","馺"],zú:["卆","哫","崪","族","箤","足","踤","镞"],shēng:["升","呏","声","斘","昇","曻","枡","殅","泩","湦","焺","牲","珄","生","甥","竔","笙","聲","鉎","鍟","阩","陞","陹","鵿","鼪"],wàn:["卍","卐","忨","杤","瞣","脕","腕","萬","蟃","贎","輐","錽","𬇕"],"huá huà huā":["华","華"],bēi:["卑","悲","揹","杯","桮","盃","碑","藣","鵯","鹎"],"zú cù":["卒"],"dān shàn chán":["单","單"],"nán nā":["南"],"shuài lǜ":["卛"],"bǔ bo pú":["卜"],"kuàng guàn":["卝"],biàn:["卞","变","変","峅","弁","徧","忭","抃","昪","汳","汴","玣","艑","苄","覍","諚","變","辡","辧","辨","辩","辫","辮","辯","遍","釆","𨚕"],bǔ:["卟","哺","捕","补","補","鸔","𬷕"],"zhàn zhān":["占","覱"],"kǎ qiǎ":["卡"],lú:["卢","嚧","垆","壚","庐","廬","曥","枦","栌","櫨","泸","瀘","炉","爐","獹","玈","瓐","盧","矑","籚","纑","罏","胪","臚","舮","舻","艫","芦","蘆","蠦","轤","轳","鈩","鑪","顱","颅","馿","髗","魲","鱸","鲈","鸕","鸬","黸","𬬻"],lǔ:["卤","塷","掳","擄","樐","橹","櫓","氌","滷","澛","瀂","硵","磠","穞","艣","艪","蓾","虏","虜","鏀","鐪","鑥","镥","魯","鲁","鹵"],guà:["卦","啩","挂","掛","罣","褂","詿","诖"],"áng yǎng":["卬"],yìn:["印","垽","堷","廕","慭","憖","憗","懚","洕","湚","猌","癊","胤","茚","酳","鮣","䲟"],què:["却","卻","塙","崅","悫","愨","慤","搉","榷","燩","琷","皵","确","確","礭","闋","阕","鵲","鹊","𬒈"],luǎn:["卵"],"juàn juǎn":["卷","巻"],"chǎng ān hàn":["厂"],"wěi yán":["厃"],tīng:["厅","厛","听","庁","廰","廳","汀","烃","烴","綎","耓","聴","聼","聽","鞓","𬘩"],"zhé zhái":["厇"],"hàn àn":["厈","屽"],yǎ:["厊","唖","庌","痖","瘂","蕥"],shè:["厍","厙","弽","慑","慴","懾","摂","欇","涉","涻","渉","滠","灄","社","舎","蔎","蠂","設","设","赦","騇","麝"],dǐ:["厎","呧","坘","弤","抵","拞","掋","牴","砥","菧","觝","詆","诋","軧","邸","阺","骶","鯳"],"zhǎ zhǎi":["厏"],páng:["厐","嫎","庞","徬","舽","螃","逄","鰟","鳑","龎","龐"],"zhì shī":["厔"],máng:["厖","吂","哤","娏","忙","恾","杗","杧","汒","浝","牻","痝","盲","硭","笀","芒","茫","蘉","邙","釯","鋩","铓","駹"],zuī:["厜","樶","纗","蟕"],"shà xià":["厦","廈"],áo:["厫","嗷","嗸","廒","敖","滶","獒","獓","璈","翱","翶","翺","聱","蔜","螯","謷","謸","遨","鏖","隞","鰲","鳌","鷔","鼇"],"lán qiān":["厱"],"sī mǒu":["厶"],"gōng hóng":["厷"],"lín miǎo":["厸"],"qiú róu":["厹"],dū:["厾","嘟","督","醏"],"xiàn xuán":["县","縣"],"cān shēn cēn sān":["参","參","叄","叅"],"ài yǐ":["叆"],"chā chà chǎ chá":["叉"],shuāng:["双","孀","孇","欆","礵","艭","雙","霜","騻","驦","骦","鷞","鸘","鹴"],shōu:["収","收"],guái:["叏"],bá:["叐","妭","抜","拔","炦","癹","胈","茇","菝","詙","跋","軷","魃","鼥"],"fā fà":["发"],"zhuó yǐ lì jué":["叕"],qǔ:["取","娶","竬","蝺","詓","齲","龋"],"jiǎ xiá":["叚","徦"],"wèi yù":["叞","尉","蔚"],dié:["叠","垤","堞","峌","幉","恎","惵","戜","曡","殜","氎","牃","牒","瓞","畳","疂","疉","疊","碟","絰","绖","耊","耋","胅","艓","苵","蜨","蝶","褋","詄","諜","谍","跮","蹀","迭","镻","鰈","鲽","鴩","𫶇"],ruì:["叡","枘","汭","瑞","睿","芮","蚋","蜹","銳","鋭","锐"],"jù gōu":["句"],lìng:["另","呤","炩","蘦"],"dāo dáo tāo":["叨"],"zhī zhǐ":["只"],jiào:["叫","呌","嘂","嘦","噍","嬓","斍","斠","滘","漖","獥","珓","皭","窖","藠","訆","譥","趭","較","轎","轿","较","酵","醮","釂"],"zhào shào":["召"],"kě kè":["可"],"tái tāi":["台","苔"],pǒ:["叵","尀","笸","箥","鉕","钷","駊"],"yè xié":["叶"],"hào háo":["号"],tàn:["叹","嘆","探","歎","湠","炭","碳","舕"],"hōng hóng":["叿"],miē:["吀","咩","哶","孭"],"xū yū yù":["吁"],chī:["吃","哧","喫","嗤","噄","妛","媸","彨","彲","摛","攡","殦","瓻","痴","癡","眵","瞝","笞","粚","胵","蚩","螭","訵","魑","鴟","鵄","鸱","黐","齝","𫄨"],"xuān sòng":["吅"],yāo:["吆","喓","夭","妖","幺","楆","殀","祅","腰","葽","訞","邀","鴁","鴢","㙘"],zǐ:["吇","姉","姊","子","杍","梓","榟","橴","滓","矷","秭","笫","籽","紫","耔","虸","訿","釨"],"hé gě":["合","鲄"],"cùn dòu":["吋"],"tóng tòng":["同"],"tǔ tù":["吐","唋"],"zhà zhā":["吒","奓"],"xià hè":["吓"],"ā yā":["吖"],"ma má mǎ":["吗"],lìn:["吝","恡","悋","橉","焛","甐","膦","蔺","藺","賃","赁","蹸","躏","躙","躪","轥","閵"],tūn:["吞","暾","朜","焞"],"bǐ pǐ":["吡"],qìn:["吢","吣","唚","抋","揿","搇","撳","沁","瀙","菣","藽"],"jiè gè":["吤"],"fǒu pǐ":["否"],"ba bā":["吧"],dūn:["吨","噸","墩","墪","惇","撉","撴","犜","獤","礅","蜳","蹾","驐"],fēn:["吩","帉","昐","朆","梤","棻","氛","竕","紛","纷","翂","芬","衯","訜","躮","酚","鈖","雰","餴","饙","馚"],"é huā":["吪"],"kēng háng":["吭","妔"],shǔn:["吮"],"zhī zī":["吱"],"yǐn shěn":["吲"],wú:["吳","吴","呉","墲","峿","梧","橆","毋","洖","浯","無","珸","璑","祦","芜","茣","莁","蕪","蜈","蟱","譕","郚","鋙","铻","鯃","鵐","鷡","鹀","鼯"],"chǎo chāo":["吵"],"nà nè":["吶"],"xuè chuò jué":["吷"],chuī:["吹","炊","龡"],"dōu rú":["吺"],hǒu:["吼","犼"],"hōng hǒu ōu":["吽"],"wú yù":["吾"],"ya yā":["呀"],"è e":["呃"],dāi:["呆","懛","獃"],"mèn qǐ":["呇"],hōng:["呍","嚝","揈","灴","烘","焢","硡","薨","訇","谾","軣","輷","轟","轰","鍧"],nà:["呐","捺","笝","納","纳","肭","蒳","衲","豽","貀","軜","郍","鈉","钠","靹","魶"],"tūn tiān":["呑"],"fǔ ḿ":["呒","嘸"],"dāi tǎi":["呔"],"ǒu ōu òu":["呕"],"bài bei":["呗"],"yuán yún yùn":["员","員"],guō:["呙","啯","嘓","埚","堝","墎","崞","彉","彍","懖","猓","瘑","聒","蝈","蟈","郭","鈛","鍋","锅"],"huá qì":["呚"],"qiàng qiāng":["呛","跄"],shī:["呞","失","尸","屍","师","師","施","浉","湤","湿","溮","溼","濕","狮","獅","瑡","絁","葹","蒒","蓍","虱","蝨","褷","襹","詩","诗","邿","釃","鉇","鍦","鯴","鰤","鲺","鳲","鳾","鶳","鸤","䴓","𫚕"],juǎn:["呟","埍","臇","菤","錈","锩"],pěn:["呠","翸"],"wěn mǐn":["呡"],"ne ní":["呢"],"ḿ m̀ móu":["呣"],rán:["呥","嘫","然","燃","繎","肰","蚦","蚺","衻","袇","袡","髥","髯"],"tiè chè":["呫"],"qì zhī":["呮"],"zǐ cī":["呰"],"guā gū guǎ":["呱"],"cī zī":["呲"],"hǒu xǔ gòu":["呴"],"hē ā á ǎ à a":["呵"],náo:["呶","夒","峱","嶩","巎","挠","撓","猱","硇","蛲","蟯","詉","譊","鐃","铙"],"xiā gā":["呷"],pēi:["呸","怌","肧","胚","衃","醅"],"háo xiāo":["呺"],mìng:["命","掵"],"dá dàn":["呾"],"zuǐ jǔ":["咀"],"xián gān":["咁"],pǒu:["咅","哣","犃"],"yǎng yāng":["咉"],"zǎ zé zhā":["咋"],"hé hè huó huò hú":["和"],hāi:["咍"],dā:["咑","哒","噠","墶","搭","撘","耷","褡","鎝","𨱏"],"kǎ kā":["咔"],gū:["咕","唂","唃","姑","嫴","孤","巬","巭","柧","橭","沽","泒","稒","笟","箍","箛","篐","罛","苽","菇","菰","蓇","觚","軱","軲","轱","辜","酤","鈲","鮕","鴣","鸪"],"kā gā":["咖"],zuo:["咗"],lóng:["咙","嚨","嶐","巃","巄","昽","曨","朧","栊","槞","櫳","湰","滝","漋","爖","珑","瓏","癃","眬","矓","砻","礱","礲","窿","竜","聋","聾","胧","茏","蘢","蠪","蠬","襱","豅","鏧","鑨","霳","靇","驡","鸗","龍","龒","龙"],"xiàn xián":["咞"],qì:["咠","唭","噐","器","夡","弃","憇","憩","暣","棄","欫","气","気","氣","汔","汽","泣","湆","湇","炁","甈","盵","矵","碛","碶","磜","磧","罊","芞","葺","藒","蟿","訖","讫","迄","鐑"],"xì dié":["咥"],"liē liě lié lie":["咧"],zī:["咨","嗞","姕","姿","孜","孳","孶","崰","嵫","栥","椔","淄","湽","滋","澬","玆","禌","秶","粢","紎","緇","緕","纃","缁","茊","茲","葘","諮","谘","貲","資","赀","资","赼","趑","趦","輜","輺","辎","鄑","鈭","錙","鍿","鎡","锱","镃","頾","頿","髭","鯔","鰦","鲻","鶅","鼒","齍","齜","龇"],mī:["咪"],"jī xī qià":["咭"],"gē luò kǎ lo":["咯"],"shù xún":["咰"],"zán zá zǎ zan":["咱"],"hāi ké":["咳"],huī:["咴","噅","噕","婎","媈","幑","徽","恢","拻","挥","揮","晖","暉","楎","洃","瀈","灰","灳","烣","睳","禈","翚","翬","蘳","袆","褘","詼","诙","豗","輝","辉","鰴","麾","㧑"],"huài shì":["咶"],táo:["咷","啕","桃","檮","洮","淘","祹","綯","绹","萄","蜪","裪","迯","逃","醄","鋾","鞀","鞉","饀","駣","騊","鼗","𫘦"],xián:["咸","啣","娴","娹","婱","嫌","嫺","嫻","弦","挦","撏","涎","湺","澖","甉","痫","癇","癎","絃","胘","舷","藖","蚿","蛝","衔","衘","誸","諴","賢","贒","贤","輱","醎","銜","鑦","閑","闲","鷳","鷴","鷼","鹇","鹹","麙","𫍯"],"è àn":["咹"],"xuān xuǎn":["咺","烜"],"wāi hé wǒ guǎ guō":["咼"],"yàn yè yān":["咽"],āi:["哀","哎","埃","溾","銰","鎄","锿"],pǐn:["品","榀"],shěn:["哂","婶","嬸","审","宷","審","弞","曋","渖","瀋","瞫","矤","矧","覾","訠","諗","讅","谂","谉","邥","頣","魫"],"hǒng hōng hòng":["哄"],"wā wa":["哇"],"hā hǎ hà":["哈"],zāi:["哉","栽","渽","溨","災","灾","烖","睵","賳"],"dì diè":["哋"],pài:["哌","沠","派","渒","湃","蒎","鎃"],"gén hěn":["哏"],"yǎ yā":["哑","雅"],"yuě huì":["哕","噦"],nián:["哖","年","秊","秥","鮎","鯰","鲇","鲶","鵇","黏"],"huá huā":["哗","嘩"],"jì jiē zhāi":["哜","嚌"],mōu:["哞"],"yō yo":["哟","喲"],lòng:["哢","梇","贚"],"ò ó é":["哦"],"lī lǐ li":["哩"],"nǎ na nǎi né něi":["哪"],hè:["哬","垎","壑","寉","惒","焃","煂","燺","爀","癋","碋","翯","褐","謞","賀","贺","赫","靍","靎","靏","鶴","鸖","鹤"],"bō pò bā":["哱"],zhé:["哲","啠","喆","嚞","埑","悊","摺","晢","晣","歽","矺","砓","磔","籷","粍","虴","蛰","蟄","袩","詟","謫","謺","讁","讋","谪","輒","輙","轍","辄","辙","鮿"],"liàng láng":["哴"],"liè lǜ":["哷"],hān:["哻","憨","蚶","谽","酣","頇","顸","馠","魽","鼾"],"hēng hng":["哼"],gěng:["哽","埂","峺","挭","梗","綆","绠","耿","莄","郠","骾","鯁","鲠","𬒔"],"chuò yuè":["哾"],"gě jiā":["哿"],"bei bài":["唄"],"hán hàn":["唅"],chún:["唇","浱","湻","滣","漘","犉","純","纯","脣","莼","蒓","蓴","醇","醕","錞","陙","鯙","鶉","鹑","𬭚"],"ài āi":["唉"],"jiá qiǎn":["唊"],"yán dàn xián":["唌"],chē:["唓","砗","硨","莗","蛼"],"wú ńg ń":["唔"],zào:["唕","唣","噪","慥","梍","灶","煰","燥","皁","皂","竃","竈","簉","艁","譟","趮","躁","造","𥖨"],dí:["唙","啇","嘀","嚁","嫡","廸","敌","敵","梑","涤","滌","狄","笛","籴","糴","苖","荻","蔋","蔐","藡","覿","觌","豴","迪","靮","頔","馰","髢","鸐","𬱖"],"gòng hǒng gǒng":["唝","嗊"],dóu:["唞"],"lào láo":["唠","嘮","憦"],huàn:["唤","喚","奂","奐","宦","嵈","幻","患","愌","换","換","擐","攌","梙","槵","浣","涣","渙","漶","澣","烉","焕","煥","瑍","痪","瘓","睆","肒","藧","豢","轘","逭","鯇","鯶","鰀","鲩"],léng:["唥","塄","楞","碐","薐"],"wō wěi":["唩"],fěng:["唪","覂","諷","讽"],"yín jìn":["唫"],"hǔ xià":["唬"],wéi:["唯","围","圍","壝","峗","峞","嵬","帏","帷","幃","惟","桅","沩","洈","涠","湋","溈","潍","潙","潿","濰","犩","矀","維","维","蓶","覹","违","違","鄬","醀","鍏","闈","闱","韋","韦","鮠","𣲗","𬶏"],shuā:["唰"],chàng:["唱","怅","悵","暢","焻","畅","畼","誯","韔","鬯"],"ér wā":["唲"],qiàng:["唴","炝","熗","羻"],yō:["唷"],yū:["唹","淤","瘀","盓","箊","紆","纡","込","迂","迃","陓"],lài:["唻","濑","瀨","瀬","癞","癩","睐","睞","籁","籟","藾","賚","賴","赉","赖","頼","顂","鵣"],tuò:["唾","嶞","柝","毤","毻","箨","籜","萚","蘀","跅"],"zhōu zhāo tiào":["啁"],kěn:["啃","垦","墾","恳","懇","肎","肯","肻","豤","錹"],"zhuó zhào":["啅","濯"],"hēng hèng":["啈","悙"],"lín lán":["啉"],"a ā á ǎ à":["啊"],qiāng:["啌","嗴","嶈","戕","摤","斨","枪","槍","溬","牄","猐","獇","羌","羗","腔","蜣","謒","鏘","锖","锵"],"tūn zhūn xiāng duǐ":["啍"],wèn:["問","妏","揾","搵","璺","问","顐"],"cuì qi":["啐"],"dié shà jié tì":["啑"],"yuē wā":["啘"],"zǐ cǐ":["啙"],"bǐ tú":["啚"],"chuò chuài":["啜"],"yǎ yā è":["啞"],fēi:["啡","婓","婔","扉","暃","渄","猆","緋","绯","裶","霏","非","靟","飛","飝","飞","餥","馡","騑","騛","鯡","鲱","𬴂"],pí:["啤","壀","枇","毗","毘","焷","琵","疲","皮","篺","罴","羆","脾","腗","膍","蚍","蚽","蜱","螷","蠯","豼","貔","郫","鈹","阰","陴","隦","魮","鮍","鲏","鵧","鼙"],shá:["啥"],"lā la":["啦"],"yīng qíng":["啨"],pā:["啪","妑","舥","葩","趴"],"zhě shì":["啫"],sè:["啬","嗇","懎","擌","栜","歮","涩","渋","澀","澁","濇","濏","瀒","瑟","璱","瘷","穑","穡","穯","繬","譅","轖","銫","鏼","铯","飋"],niè:["啮","嗫","噛","嚙","囁","囓","圼","孼","孽","嵲","嶭","巕","帇","敜","枿","槷","櫱","涅","湼","痆","篞","籋","糱","糵","聂","聶","臬","臲","蘖","蠥","讘","踂","踗","踙","蹑","躡","錜","鎳","鑈","鑷","钀","镊","镍","闑","陧","隉","顳","颞","齧","𫔶"],"luō luó luo":["啰","囉"],"tān chǎn tuō":["啴"],bo:["啵","蔔"],dìng:["啶","定","椗","矴","碇","碠","磸","聢","腚","萣","蝊","訂","订","錠","锭","顁","飣","饤"],lāng:["啷"],"án ān":["啽"],kā:["喀","擖"],"yóng yú":["喁"],"lā lá lǎ":["喇"],jiē:["喈","喼","嗟","堦","媘","接","掲","擑","湝","煯","疖","痎","癤","皆","秸","稭","脻","蝔","街","謯","阶","階","鞂","鶛"],hóu:["喉","帿","猴","瘊","睺","篌","糇","翭","葔","鄇","鍭","餱","骺","鯸","𬭤"],"dié zhá":["喋"],wāi:["喎","歪","竵"],"nuò rě":["喏"],"xù huò guó":["喐"],zán:["喒"],"wō ō":["喔"],hú:["喖","嘝","囫","壶","壷","壺","媩","弧","搰","斛","楜","槲","湖","瀫","焀","煳","狐","猢","瑚","瓳","箶","絗","縠","胡","葫","蔛","蝴","螜","衚","觳","醐","鍸","頶","餬","鬍","魱","鰗","鵠","鶘","鶦","鹕"],"huàn yuán xuǎn hé":["喛"],xǐ:["喜","囍","壐","屣","徙","憙","枲","橲","歖","漇","玺","璽","矖","禧","縰","葈","葸","蓰","蟢","謑","蹝","躧","鈢","鉨","鉩","鱚","𬭳","𬶮"],"hē hè yè":["喝"],kuì:["喟","嘳","媿","嬇","愦","愧","憒","篑","簣","籄","聩","聭","聵","膭","蕢","謉","餽","饋","馈"],"zhǒng chuáng":["喠"],"wéi wèi":["喡","為","爲"],"duó zhà":["喥"],"sāng sàng":["喪"],"qiáo jiāo":["喬"],"pèn bēn":["喯"],"cān sūn qī":["喰"],"zhā chā":["喳"],miāo:["喵"],"pēn pèn":["喷"],kuí:["喹","夔","奎","巙","戣","揆","晆","暌","楏","楑","櫆","犪","睽","葵","藈","蘷","虁","蝰","躨","逵","鄈","鍨","鍷","頯","馗","騤","骙","魁"],"lou lóu":["喽"],"zào qiāo":["喿"],"hè xiāo xiào hù":["嗃"],"á shà":["嗄"],xiù:["嗅","岫","峀","溴","珛","琇","璓","秀","綉","繍","繡","绣","螑","袖","褎","褏","銹","鏥","鏽","锈","齅"],"qiāng qiàng":["嗆","戗","戧","蹌","蹡"],"ài yì":["嗌","艾"],"má mǎ ma":["嗎"],"kè kē":["嗑"],"dā tà":["嗒","鎉"],sǎng:["嗓","搡","磉","褬","鎟","顙","颡"],chēn:["嗔","抻","琛","瞋","諃","謓","賝","郴","𬘭"],"wā gǔ":["嗗"],"pǎng bēng":["嗙"],"xián qiǎn qiān":["嗛"],lào:["嗠","嫪","橯","涝","澇","耢","耮","躼","軂","酪"],wēng:["嗡","翁","聬","螉","鎓","鶲","鹟","𬭩"],wà:["嗢","腽","膃","袜","襪","韤"],"hēi hāi":["嗨"],hē:["嗬","欱","蠚","訶","诃"],zi:["嗭"],sǎi:["嗮"],"ǹg ńg ňg":["嗯"],gě:["嗰","舸"],ná:["嗱","拏","拿","鎿","镎"],diǎ:["嗲"],"ài ǎi āi":["嗳"],tōng:["嗵","樋","炵","蓪"],"zuī suī":["嗺"],"zhē zhè zhù zhe":["嗻"],mò:["嗼","圽","塻","墨","妺","嫼","寞","帞","昩","末","枺","歿","殁","沫","漠","爅","獏","瘼","皌","眽","眿","瞐","瞙","砞","礳","秣","絈","纆","耱","茉","莈","蓦","蛨","蟔","貃","貊","貘","銆","鏌","镆","陌","靺","驀","魩","默","黙","𬙊"],sòu:["嗽","瘶"],tǎn:["嗿","坦","忐","憳","憻","暺","毯","璮","菼","袒","襢","醓","鉭","钽"],"jiào dǎo":["嘄"],"kǎi gě":["嘅"],"shān càn":["嘇"],cáo:["嘈","嶆","曹","曺","槽","漕","艚","蓸","螬","褿","鏪","𥕢"],piào:["嘌","徱","蔈","驃"],"lóu lou":["嘍"],gǎ:["尕","玍"],"gǔ jiǎ":["嘏"],"jiāo xiāo":["嘐"],"xū shī":["嘘","噓"],pó:["嘙","嚩","婆","櫇","皤","鄱"],"dē dēi":["嘚"],"ma má":["嘛"],"lē lei":["嘞"],"gā gá gǎ":["嘠"],sāi:["嘥","噻","毢","腮","顋","鰓"],"zuō chuài":["嘬"],"cháo zhāo":["嘲","朝","鼂"],zuǐ:["嘴","噿","嶊","璻"],"qiáo qiào":["嘺","翹","谯"],"chù xù shòu":["嘼"],"tān chǎn":["嘽"],"dàn tán":["嘾","弾","彈","惔","澹"],"hēi mò":["嘿"],ě:["噁","砨","頋","騀","鵈"],"fān bo":["噃"],chuáng:["噇","床","牀"],"cù zā hé":["噈"],"tūn kuò":["噋"],"cēng chēng":["噌"],dēng:["噔","嬁","灯","燈","璒","登","竳","簦","艠","豋"],pū:["噗","扑","撲","攴","攵","潽","炇","陠"],juē:["噘","屩","屫","撧"],lū:["噜","嚕","撸","擼","謢"],zhān:["噡","岾","惉","旃","旜","枬","栴","毡","氈","氊","沾","瞻","薝","蛅","詀","詹","譫","谵","趈","邅","閚","霑","飦","饘","驙","魙","鱣","鸇","鹯","𫗴"],ō:["噢"],"zhòu zhuó":["噣"],"jiào qiào chī":["噭"],yuàn:["噮","妴","怨","愿","掾","瑗","禐","苑","衏","裫","褑","院","願"],"ǎi ài āi":["噯"],"yōng yǒng":["噰","澭"],"jué xué":["噱"],"pēn pèn fèn":["噴"],gá:["噶","尜","釓","錷","钆"],"xīn hěn hèn":["噷"],dāng:["噹","澢","珰","璫","筜","簹","艡","蟷","裆","襠"],làn:["嚂","滥","濫","烂","燗","爁","爛","爤","瓓","糷","钄"],tà:["嚃","嚺","崉","挞","搨","撻","榻","橽","毾","涾","澾","濌","禢","粏","誻","譶","蹋","蹹","躂","躢","遝","錔","闒","闥","闼","阘","鞜","鞳"],"huō huò ǒ":["嚄"],hāo:["嚆","茠","蒿","薅"],"hè xià":["嚇"],"xiù pì":["嚊"],"zhōu chóu":["嚋","盩","诪"],mē:["嚒"],"chā cā":["嚓"],"bó pào bào":["嚗"],"me mèi mò":["嚜"],"xié hái":["嚡"],"áo xiāo":["嚣"],mō:["嚤","摸"],pín:["嚬","娦","嫔","嬪","玭","矉","薲","蠙","貧","贫","顰","颦","𬞟"],mè:["嚰","濹"],"rǎng rāng":["嚷"],lá:["嚹","旯"],"jiáo jué jiào":["嚼"],chuò:["嚽","娖","擉","歠","涰","磭","踀","輟","辍","辵","辶","酫","鑡","餟","齪","龊"],"huān huàn":["嚾"],"zá cà":["囃"],chài:["囆","虿","蠆","袃","訍"],"náng nāng":["囊"],"zá zàn cān":["囋"],sū:["囌","櫯","甦","稣","穌","窣","蘇","蘓","酥","鯂"],zèng:["囎","熷","甑","贈","赠","鋥","锃"],"zá niè yàn":["囐"],nāng:["囔"],"luó luō luo":["囖"],"wéi guó":["囗"],huí:["囘","回","囬","廻","廽","恛","洄","痐","茴","蚘","蛔","蛕","蜖","迴","逥","鮰"],nín:["囜","您","脌"],"jiǎn nān":["囝"],nān:["囡"],tuán:["团","団","團","慱","抟","摶","檲","糰","鏄","鷒","鷻"],"tún dùn":["囤","坉"],guó:["囯","囶","囻","国","圀","國","帼","幗","慖","摑","漍","聝","腘","膕","蔮","虢","馘","𬇹"],kùn:["困","涃","睏"],"wéi tōng":["囲"],qūn:["囷","夋","逡"],rì:["囸","日","衵","鈤","馹","驲"],tāi:["囼","孡","胎"],pǔ:["圃","圑","擈","普","暜","樸","檏","氆","浦","溥","烳","諩","譜","谱","蹼","鐠","镨"],"quān juàn juān":["圈","圏"],"chuí chuán":["圌"],tuǎn:["圕","畽","疃"],lüè:["圙","掠","略","畧","稤","鋝","鋢","锊","䂮"],"huán yuán":["圜"],luán:["圝","圞","奱","娈","孌","孪","孿","峦","巒","挛","攣","曫","栾","欒","滦","灤","癴","癵","羉","脔","臠","虊","銮","鑾","鵉","鸞","鸾"],tǔ:["土","圡","釷","钍"],"xū wéi":["圩"],"dì de":["地","嶳"],"qiān sú":["圱"],zhèn:["圳","塦","挋","振","朕","栚","甽","眹","紖","絼","纼","誫","賑","赈","鋴","鎭","鎮","镇","阵","陣","震","鴆","鸩"],"chǎng cháng":["场","場","塲"],"qí yín":["圻"],jiá:["圿","忦","恝","戞","扴","脥","荚","莢","蛱","蛺","裌","跲","郏","郟","鋏","铗","頬","頰","颊","鴶","鵊"],"zhǐ zhì":["坁"],bǎn:["坂","岅","昄","板","版","瓪","粄","舨","蝂","鈑","钣","阪","魬"],qǐn:["坅","寑","寝","寢","昑","梫","笉","螼","赾","鋟","锓"],"méi fén":["坆"],"rǒng kēng":["坈"],"fāng fáng":["坊"],"fèn bèn":["坋"],tān:["坍","怹","摊","擹","攤","滩","灘","瘫","癱","舑","貪","贪"],"huài pēi pī péi":["坏"],"dì làn":["坔"],tán:["坛","墰","墵","壇","壜","婒","憛","昙","曇","榃","檀","潭","燂","痰","磹","罈","罎","藫","談","譚","譠","谈","谭","貚","郯","醰","錟","顃"],bà:["坝","垻","壩","弝","欛","灞","爸","矲","覇","霸","鮁","鲅"],fén:["坟","墳","妢","岎","幩","枌","棼","汾","焚","燌","燓","羒","羵","蒶","蕡","蚠","蚡","豮","豶","轒","鐼","隫","馩","魵","黂","鼖","鼢","𣸣"],zhuì:["坠","墜","惴","甀","畷","礈","綴","縋","缀","缒","腏","膇","諈","贅","赘","醊","錣","鑆"],pō:["坡","岥","泼","溌","潑","釙","鏺","钋","頗","颇","䥽"],"pǎn bàn":["坢"],kūn:["坤","堃","堒","崐","崑","昆","晜","潉","焜","熴","猑","琨","瑻","菎","蜫","裈","裩","褌","醌","錕","锟","騉","髠","髡","髨","鯤","鲲","鵾","鶤","鹍"],diàn:["坫","垫","墊","壂","奠","婝","店","惦","扂","橂","殿","淀","澱","玷","琔","电","癜","簟","蜔","鈿","電","靛","驔"],"mù mǔ":["坶"],"kē kě":["坷","軻"],xuè:["坹","岤","桖","瀥","狘","瞲","謔","谑","趐"],"dǐ chí":["坻","柢"],lā:["垃","柆","菈","邋"],lǒng:["垄","垅","壟","壠","拢","攏","竉","陇","隴","𬕂"],mín:["垊","姄","岷","崏","捪","旻","旼","民","珉","琘","琝","瑉","痻","盿","砇","緍","緡","缗","罠","苠","鈱","錉","鍲","鴖"],"dòng tóng":["垌","峒","洞"],cí:["垐","嬨","慈","柌","濨","珁","瓷","甆","磁","礠","祠","糍","茨","詞","词","辝","辞","辤","辭","雌","飺","餈","鴜","鶿","鷀","鹚"],duī:["垖","堆","塠","痽","磓","鐓","鐜","鴭"],"duò duǒ":["垛"],"duǒ duò":["垜","挆"],chá:["垞","察","嵖","搽","槎","檫","猹","茬","茶","詧","靫","𥻗"],shǎng:["垧","晌","樉","賞","贘","赏","鋿","鏛","鑜"],shǒu:["垨","守","手","扌","艏","首"],da:["垯","繨","跶"],háng:["垳","斻","杭","筕","絎","绗","航","苀","蚢","裄","貥","迒","頏","颃","魧"],"ān ǎn":["垵"],xīng:["垶","惺","星","曐","煋","猩","瑆","皨","篂","腥","興","觪","觲","謃","騂","骍","鮏","鯹"],"yuàn huán":["垸"],bāng:["垹","帮","幇","幚","幫","捠","梆","浜","邦","邫","鞤","𠳐"],"póu fú":["垺"],cén:["埁","岑","涔"],"běng fēng":["埄"],"dì fáng":["埅"],"xiá jiā":["埉"],"mái mán":["埋"],làng:["埌","崀","浪","蒗","閬","㫰"],"shān yán":["埏"],"qín jīn":["埐"],"pǔ bù":["埔"],huā:["埖","婲","椛","硴","糀","花","蒊","蘤","誮","錵"],"suì sù":["埣"],"pí pì":["埤"],"qīng zhēng":["埥","鲭"],"wǎn wān":["埦"],lǔn:["埨","稐","𫭢"],"zhēng chéng":["埩"],kōng:["埪","崆","箜","躻","錓","鵼"],"cǎi cài":["埰","寀","采"],"chù tòu":["埱"],běng:["埲","琫","菶","鞛"],"kǎn xiàn":["埳"],"yì shì":["埶","醳"],péi:["培","毰","裴","裵","賠","赔","錇","锫","阫","陪"],"sào sǎo":["埽"],"jǐn qīn jìn":["堇"],"péng bèng":["堋"],"qiàn zàn jiàn":["堑"],àn:["堓","屵","岸","按","暗","案","胺","荌","豻","貋","錌","闇","隌","黯"],"duò huī":["堕","墮"],huán:["堚","寏","寰","峘","桓","洹","澴","獂","环","環","糫","繯","缳","羦","荁","萈","萑","豲","鍰","鐶","锾","镮","闤","阛","雈","鬟","鹮","𬘫","𤩽"],"bǎo bǔ pù":["堡"],"máo móu wǔ":["堥"],ruán:["堧","壖","撋"],"ài è yè":["堨"],gèng:["堩","暅"],méi:["堳","塺","媒","嵋","徾","攗","枚","栂","梅","楣","楳","槑","湄","湈","煤","猸","玫","珻","瑂","眉","睂","禖","脄","脢","腜","苺","莓","葿","郿","酶","鎇","镅","霉","鶥","鹛","黴"],dǔ:["堵","琽","睹","笃","篤","覩","賭","赌"],féng:["堸","綘","艂","逢"],hèng:["堼"],chūn:["堾","媋","旾","春","暙","杶","椿","槆","橁","櫄","瑃","箺","萅","蝽","輴","鰆","鶞","䲠"],jiǎng:["塂","奖","奨","奬","桨","槳","獎","耩","膙","蒋","蔣","講","讲","顜"],huāng:["塃","巟","慌","肓","荒","衁"],duàn:["塅","断","斷","椴","段","毈","煅","瑖","碫","簖","籪","緞","缎","腶","葮","躖","鍛","锻"],tǎ:["塔","墖","獭","獺","鮙","鰨","鳎"],wěng:["塕","奣","嵡","攚","暡","瞈","蓊"],"sāi sài sè":["塞"],zàng:["塟","弉","臓","臟","葬","蔵","銺"],tián:["塡","屇","恬","沺","湉","璳","甛","甜","田","畋","畑","碵","磌","胋","闐","阗","鴫","鷆","鷏"],zhèng:["塣","幁","政","証","諍","證","证","诤","郑","鄭","靕","鴊"],"tián zhèn":["填"],wēn:["塭","昷","榲","殟","温","溫","瑥","瘟","蕰","豱","輼","轀","辒","鎾","饂","鰛","鰮","鳁"],liù:["塯","廇","磟","翏","雡","霤","餾","鬸","鷚","鹨"],hǎi:["塰","海","烸","酼","醢"],lǎng:["塱","朖","朗","朤","烺","蓢","㮾"],bèng:["塴","揼","泵","甏","綳","蹦","迸","逬","鏰","镚"],chén:["塵","宸","尘","忱","敐","敶","晨","曟","栕","樄","沉","煁","瘎","臣","茞","莀","莐","蔯","薼","螴","訦","諶","軙","辰","迧","鈂","陈","陳","霃","鷐","麎"],"ōu qiū":["塸"],"qiàn jiàn":["塹"],"zhuān tuán":["塼"],shuǎng:["塽","慡","漺","爽","縔","鏯"],shú:["塾","婌","孰","璹","秫","贖","赎"],lǒu:["塿","嵝","嶁","甊","篓","簍"],chí:["墀","弛","持","池","漦","竾","筂","箎","篪","茌","荎","蚳","謘","貾","赿","踟","迟","迡","遅","遟","遲","鍉","馳","驰"],shù:["墅","庶","庻","怷","恕","戍","束","树","樹","沭","漱","潄","濖","竖","竪","絉","腧","荗","蒁","虪","術","裋","豎","述","鉥","錰","鏣","霔","鶐","𬬸"],"dì zhì":["墆","疐"],kàn:["墈","崁","瞰","矙","磡","衎","鬫"],chěn:["墋","夦","硶","碜","磣","贂","趻","踸","鍖"],"zhǐ zhuó":["墌"],qiǎng:["墏","繈","繦","羥","襁"],zēng:["増","增","憎","璔","矰","磳","罾","譄","鄫","鱛","䎖"],qiáng:["墙","墻","嫱","嬙","樯","檣","漒","牆","艢","蔃","蔷","蘠"],"kuài tuí":["墤"],"tuǎn dǒng":["墥"],"qiáo què":["墧"],"zūn dūn":["墫"],"qiāo áo":["墽"],"yì tú":["墿"],"xué bó jué":["壆"],lǎn:["壈","嬾","孄","孏","懒","懶","揽","擥","攬","榄","欖","浨","漤","灠","纜","缆","罱","覧","覽","览","醂","顲"],huài:["壊","壞","蘾"],rǎng:["壌","壤","攘","爙"],"làn xiàn":["壏"],dǎo:["壔","导","導","岛","島","嶋","嶌","嶹","捣","搗","擣","槝","祷","禂","禱","蹈","陦","隝","隯"],ruǐ:["壡","桵","橤","繠","蕊","蕋","蘂","蘃"],san:["壭"],zhuàng:["壮","壯","壵","撞","焋","状","狀"],"ké qiào":["壳","殼"],kǔn:["壸","壼","悃","捆","梱","硱","祵","稇","稛","綑","裍","閫","閸","阃"],mǎng:["壾","漭","茻","莽","莾","蠎"],cún:["壿","存"],"zhǐ zhōng":["夂"],"gǔ yíng":["夃"],"jiàng xiáng":["夅","降"],"páng féng fēng":["夆"],zhāi:["夈","捚","摘","斋","斎","榸","粂","齋"],"xuàn xiòng":["夐"],wài:["外","顡"],"wǎn yuàn wān yuān":["夗"],"mǎo wǎn":["夘"],mèng:["夢","夣","孟","梦","癦","霥"],"dà dài":["大"],"fū fú":["夫","姇","枎","粰"],guài:["夬","怪","恠"],yāng:["央","姎","抰","殃","泱","秧","胦","鉠","鍈","雵","鴦","鸯"],"hāng bèn":["夯"],gǎo:["夰","搞","杲","槀","槁","檺","稁","稾","稿","縞","缟","菒","藁","藳"],"tāo běn":["夲"],"tóu tou":["头"],"yǎn tāo":["夵"],"kuā kuà":["夸","誇"],"jiá jiā gā xiá":["夹"],huà:["夻","婳","嫿","嬅","崋","摦","杹","枠","桦","槬","樺","澅","画","畫","畵","繣","舙","話","諙","譮","话","黊"],"jiā jiá gā xiá":["夾"],ēn:["奀","恩","蒽"],"dī tì":["奃"],"yǎn yān":["奄","渰"],pào:["奅","疱","皰","砲","礟","礮","靤","麭"],nài:["奈","柰","渿","耐","萘","褦","錼","鼐"],"quān juàn":["奍","弮","棬"],zòu:["奏","揍"],"qì qiè xiè":["契"],kāi:["奒","开","揩","鐦","锎","開"],"bēn bèn":["奔","泍"],tào:["套"],"zàng zhuǎng":["奘"],běn:["奙","本","楍","畚","翉","苯"],"xùn zhuì":["奞"],shē:["奢","檨","猞","畭","畲","賒","賖","赊","輋","𪨶"],"hǎ pò tǎi":["奤"],"ào yù":["奥","奧","澚"],yūn:["奫","氲","氳","蒀","蒕","蝹","贇","赟","𫖳"],"duǒ chě":["奲"],"nǚ rǔ":["女"],nú:["奴","孥","笯","駑","驽"],"dīng dǐng tiǎn":["奵"],"tā jiě":["她"],nuán:["奻"],"hǎo hào":["好"],fàn:["奿","嬎","梵","汎","泛","滼","瀪","犯","畈","盕","笵","範","范","訉","販","贩","軬","輽","飯","飰","饭"],shuò:["妁","搠","朔","槊","烁","爍","矟","蒴","鎙","鑠","铄"],"fēi pèi":["妃"],wàng:["妄","忘","旺","望","朢"],zhuāng:["妆","妝","娤","庄","庒","桩","梉","樁","粧","糚","荘","莊","装","裝"],mā:["妈","媽"],"fū yōu":["妋"],"hài jiè":["妎"],dù:["妒","妬","杜","殬","渡","秺","芏","荰","螙","蠧","蠹","鍍","镀","靯","𬭊"],miào:["妙","庙","庿","廟","玅","竗"],"fǒu pēi pī":["妚"],"yuè jué":["妜"],niū:["妞"],"nà nàn":["妠"],tuǒ:["妥","嫷","庹","椭","楕","橢","鬌","鰖","鵎"],"wàn yuán":["妧"],fáng:["妨","房","肪","防","魴","鲂"],nī:["妮"],zhóu:["妯","碡"],zhāo:["妱","巶","招","昭","釗","鉊","鍣","钊","駋","𬬿"],"nǎi nǐ":["妳"],tǒu:["妵","敨","紏","蘣","黈"],"xián xuán xù":["妶"],"zhí yì":["妷","秇"],ē:["妸","妿","婀","屙"],mèi:["妹","媚","寐","抺","旀","昧","沬","煝","痗","眛","睸","祙","篃","蝞","袂","跊","鬽","魅"],"qī qì":["妻"],"xū xǔ":["姁","稰"],"shān shàn":["姍","姗","苫","釤","钐"],mán:["姏","慲","樠","蛮","蠻","謾","饅","馒","鬗","鬘","鰻","鳗"],jiě:["姐","媎","檞","毑","飷"],"wěi wēi":["委"],pīn:["姘","拼","礗","穦","馪","驞"],"huá huó":["姡"],"jiāo xiáo":["姣"],"gòu dù":["姤"],"lǎo mǔ":["姥"],"nián niàn":["姩"],zhěn:["姫","屒","弫","抮","昣","枕","畛","疹","眕","稹","縝","縥","缜","聄","萙","袗","裖","覙","診","诊","軫","轸","辴","駗","鬒"],héng:["姮","恆","恒","烆","珩","胻","蘅","衡","鑅","鴴","鵆","鸻"],"jūn xún":["姰"],"kuā hù":["姱"],"è yà":["姶"],"xiān shēn":["姺"],wá:["娃"],"ráo rǎo":["娆","嬈"],"shào shāo":["娋"],xiē:["娎","揳","楔","歇","蝎","蠍"],"wǔ méi mǔ":["娒"],"chuò lài":["娕"],niáng:["娘","嬢","孃"],"nà nuó":["娜","𦰡"],"pōu bǐ":["娝"],"něi suī":["娞"],tuì:["娧","煺","蛻","蜕","退","駾"],mǎn:["娨","屘","満","满","滿","螨","蟎","襔","鏋"],"wú wù yú":["娪"],"xī āi":["娭"],"zhuì shuì":["娷"],"dōng dòng":["娻"],"ǎi ái è":["娾"],"ē ě":["娿"],mián:["婂","嬵","宀","杣","棉","檰","櫋","眠","矈","矊","矏","綿","緜","绵","芇","蝒"],"pǒu péi bù":["婄"],biǎo:["婊","脿","表","裱","褾","諘","錶"],"fù fàn":["婏"],wǒ:["婐","婑","我"],"ní nǐ":["婗","棿"],"quán juàn":["婘","惓"],hūn:["婚","昏","昬","棔","涽","睧","睯","碈","荤","葷","蔒","轋","閽","阍"],"qiān jǐn":["婜"],"wān wà":["婠"],"lái lài":["婡","徕","徠"],"zhōu chōu":["婤"],"chuò nào":["婥"],"nüè àn":["婩"],"hùn kūn":["婫"],"dàng yáng":["婸"],nàn:["婻"],"ruò chuò":["婼"],jiǎ:["婽","岬","斚","斝","榎","槚","檟","玾","甲","胛","鉀","钾"],"tōu yú":["婾","媮"],"yù yú":["媀"],"wéi wěi":["媁"],"dì tí":["媂","珶","苐"],róu:["媃","揉","柔","渘","煣","瑈","瓇","禸","粈","糅","脜","腬","葇","蝚","蹂","輮","鍒","鞣","騥","鰇","鶔","𫐓"],"ruǎn nèn":["媆"],miáo:["媌","嫹","描","瞄","苗","鶓","鹋"],"yí pèi":["媐"],"mián miǎn":["媔"],"tí shì":["媞","惿"],"duò tuó":["媠","沲"],ǎo:["媪","媼","艹","芺","袄","襖","镺"],"chú zòu":["媰"],yìng:["媵","映","暎","硬","膡","鱦"],"qín shēn":["嫀"],jià:["嫁","幏","架","榢","稼","駕","驾"],sǎo:["嫂"],"zhēn zhěn":["嫃"],"jiē suǒ":["嫅"],"míng mǐng":["嫇"],niǎo:["嫋","嬝","嬲","茑","蔦","袅","裊","褭","鸟"],tāo:["嫍","幍","弢","慆","掏","搯","槄","涛","滔","濤","瑫","絛","縚","縧","绦","詜","謟","轁","鞱","韜","韬","飸","饕"],biáo:["嫑"],"piáo piāo":["嫖","薸"],xuán:["嫙","悬","懸","暶","檈","漩","玄","璇","璿","痃","蜁","𫠊"],"màn mān":["嫚"],kāng:["嫝","嵻","康","慷","槺","漮","砊","穅","糠","躿","鏮","鱇","𡐓","𩾌"],"hān nǎn":["嫨"],nèn:["嫩","嫰"],zhē:["嫬","遮"],"mā má":["嫲"],piè:["嫳"],zhǎn:["嫸","展","搌","斩","斬","琖","盏","盞","輾","醆","颭","飐"],"xiān yǎn jìn":["嬐"],liǎn:["嬚","敛","斂","琏","璉","羷","脸","臉","蔹","蘝","蘞","裣","襝","鄻"],"qióng huán xuān":["嬛"],dǒng:["嬞","懂","箽","董","蕫","諌"],cān:["嬠","湌","爘","飡","餐","驂","骖"],tiǎo:["嬥","宨","晀","朓","窱","脁"],bí:["嬶","荸","鼻"],liǔ:["嬼","柳","栁","桞","桺","橮","熮","珋","綹","绺","罶","羀","鋶","锍"],"qiān xiān":["孅","欦"],"xié huī":["孈"],"huān quán":["孉"],"lí lì":["孋","麗"],"zhú chuò":["孎"],kǒng:["孔","恐"],"mā zī":["孖"],"sūn xùn":["孙","孫"],"bèi bó":["孛","誖"],"yòu niū":["孧"],zhuǎn:["孨","竱","轉"],hái:["孩","骸"],nāo:["孬"],"chán càn":["孱"],bò:["孹","檗","蘗","譒"],nái:["孻","腉"],"níng nìng":["宁","寍","寗","寜","寧","甯"],zhái:["宅"],"tū jiā":["宊"],sòng:["宋","訟","誦","讼","诵","送","鎹","頌","颂","餸"],ròu:["宍","肉","譳"],zhūn:["宒","窀","衠","諄","谆","迍"],"mì fú":["宓"],"dàng tàn":["宕"],"wǎn yuān":["宛"],chǒng:["宠","寵"],qún:["宭","峮","帬","羣","群","裙","裠"],zǎi:["宰","崽"],"bǎo shí":["宲"],"jiā jia jie":["家"],"huāng huǎng":["宺"],kuān:["宽","寛","寬","臗","鑧","髋","髖"],"sù xiǔ xiù":["宿"],"jié zǎn":["寁"],"bìng bǐng":["寎"],"jìn qǐn":["寖"],"lóu jù":["寠"],"xiě xiè":["寫"],"qīn qìn":["寴"],cùn:["寸","籿"],duì:["对","対","對","怼","憝","懟","濧","瀩","碓","祋","綐","薱","譈","譵","轛","队","陮"],"lüè luó":["寽"],"shè yè yì":["射"],"jiāng jiàng qiāng":["将"],"jiāng jiàng":["將","浆","漿","畺"],zūn:["尊","嶟","樽","罇","遵","鐏","鱒","鳟","鶎","鷷","𨱔"],"shù zhù":["尌","澍"],xiǎo:["小","晓","暁","曉","皛","皢","筱","筿","篠","謏","𫍲"],"jié jí":["尐","诘","鞊"],"shǎo shào":["少"],ěr:["尒","尓","尔","栮","毦","洱","爾","珥","耳","薾","衈","趰","迩","邇","鉺","铒","餌","饵","駬"],"wāng yóu":["尢"],wāng:["尣","尩","尪","尫","汪"],liào:["尥","尦","廖","撂","料","炓","窷","鐐","镣","𪤗"],"méng máng lóng páng":["尨"],gà:["尬","魀"],"kuì kuǐ":["尯"],tuí:["尵","弚","穨","蘈","蹪","隤","頹","頺","頽","颓","魋","𬯎"],yǐn:["尹","嶾","引","朄","檃","檼","櫽","淾","濥","瘾","癮","粌","蘟","蚓","螾","讔","赺","趛","輑","鈏","靷"],"chǐ chě":["尺"],kāo:["尻","髛"],"jìn jǐn":["尽"],"wěi yǐ":["尾"],"niào suī":["尿"],céng:["层","層","嶒","驓"],diǎo:["屌"],"píng bǐng bīng":["屏"],lòu:["屚","漏","瘘","瘺","瘻","鏤","镂","陋"],"shǔ zhǔ":["属","屬"],"xiè tì":["屟"],"chè cǎo":["屮"],"tún zhūn":["屯"],"nì jǐ":["屰"],"hóng lóng":["屸"],"qǐ kǎi":["岂","豈"],áng:["岇","昂","昻"],"gǎng gāng":["岗","崗"],kě:["岢","敤","渇","渴","炣"],gǒu:["岣","狗","玽","笱","耇","耈","耉","苟","豿"],tiáo:["岧","岹","樤","祒","笤","芀","萔","蓚","蓨","蜩","迢","鋚","鎥","鞗","髫","鯈","鰷","鲦","齠","龆"],"qū jū":["岨"],lǐng:["岭","嶺","領","领"],pò:["岶","敀","洦","湐","烞","珀","破","砶","粕","蒪","魄"],"bā kè":["峇"],luò:["峈","摞","洛","洜","犖","珞","笿","纙","荦","詻","雒","駱","骆","鵅"],"fù niè":["峊"],ěn:["峎"],"zhì shì":["峙","崻"],qiǎ:["峠","跒","酠","鞐"],"qiáo jiào":["峤","癄"],"xié yé":["峫"],bū:["峬","庯","晡","誧","逋","鈽","錻","钸","餔","鵏"],chóng:["崇","崈","爞","虫","蝩","蟲","褈","隀"],"zú cuì":["崒","椊"],"líng léng":["崚"],"dòng dōng":["崠"],xiáo:["崤","洨","淆","訤","誵"],"pí bǐ":["崥","芘"],"zhǎn chán":["崭","嶃","嶄"],"wǎi wēi":["崴"],"yáng dàng":["崵"],"shì dié":["崼"],yào:["崾","曜","熎","燿","矅","穾","窔","筄","耀","艞","药","葯","薬","藥","袎","覞","詏","讑","靿","鷂","鹞","鼼"],"kān zhàn":["嵁"],"hán dǎng":["嵅"],"qiàn kàn":["嵌"],"wù máo":["嵍"],"kě jié":["嵑","嶱"],"wēi wěi":["嵔"],kē:["嵙","柯","棵","榼","樖","牁","牱","犐","珂","疴","瞌","磕","礚","科","稞","窠","萪","薖","蚵","蝌","趷","轲","醘","鈳","钶","頦","顆","颗","髁"],"dàng táng":["嵣"],"róng yíng":["嵤","爃"],"ái kǎi":["嵦"],"kāo qiāo":["嵪"],cuó:["嵯","嵳","痤","矬","蒫","蔖","虘","鹺","鹾"],"qiǎn qīn":["嵰"],"dì dié":["嵽"],cēn:["嵾"],dǐng:["嵿","艼","薡","鐤","頂","顶","鼎","鼑"],"áo ào":["嶅"],"pǐ pèi":["嶏"],"jiào qiáo":["嶠","潐"],"jué guì":["嶡","鳜"],"zhān shàn":["嶦","鳣"],"xiè jiè":["嶰"],"guī xī juàn":["嶲"],rū:["嶿"],"lì liè":["巁","棙","爄","綟"],"xī guī juàn":["巂"],"yíng hōng":["巆"],yǐng:["巊","廮","影","摬","梬","潁","瘿","癭","矨","穎","郢","鐛","頴","颍","颕","颖"],chǎo:["巐","炒","煼","眧","麨"],cuán:["巑","櫕","欑"],chuān:["巛","川","氚","瑏","穿"],"jīng xíng":["巠"],cháo:["巢","巣","晁","漅","潮","牊","窲","罺","謿","轈","鄛","鼌"],qiǎo:["巧","愀","髜"],gǒng:["巩","廾","拱","拲","栱","汞","珙","輁","鞏"],"chà chā chāi cī":["差"],"xiàng hàng":["巷"],shuài:["帅","帥","蟀"],pà:["帊","帕","怕","袙"],"tǎng nú":["帑"],"mò wà":["帓"],"tiē tiě tiè":["帖"],zhǒu:["帚","晭","疛","睭","箒","肘","菷","鯞"],"juǎn juàn":["帣"],shuì:["帨","涗","涚","睡","稅","税","裞"],"chóu dào":["帱","幬"],"jiǎn jiān sàn":["帴"],"shà qiè":["帹"],"qí jì":["帺","荠"],"shān qiāo shēn":["幓"],"zhuàng chuáng":["幢"],"chān chàn":["幨"],miè:["幭","懱","搣","滅","灭","烕","礣","篾","蔑","薎","蠛","衊","鑖","鱴","鴓"],"gān gàn":["干"],"bìng bīng":["并","幷"],"jī jǐ":["幾"],"guǎng ān":["广"],guǎng:["広","廣","犷","獷"],me:["庅"],"dùn tún":["庉"],"bài tīng":["庍"],"yìng yīng":["应"],"dǐ de":["底"],"dù duó":["度"],"máng méng páng":["庬"],"bìng píng":["庰"],chěng:["庱","悜","睈","逞","騁","骋"],"jī cuò":["庴"],qǐng:["庼","廎","檾","漀","苘","請","謦","请","頃","顷"],"guī wěi huì":["廆"],"jǐn qín":["廑"],kuò:["廓","扩","拡","擴","濶","筈","萿","葀","蛞","闊","阔","霩","鞟","鞹","韕","頢","鬠"],"qiáng sè":["廧","薔"],"yǐn yìn":["廴","隐","隠","隱","飮","飲","饮"],"pò pǎi":["廹","迫"],"nòng lòng":["弄"],"dì tì tuí":["弟"],"jué zhāng":["弡"],"mí mǐ":["弥","彌","靡"],chāo:["弨","怊","抄","欩","訬","超","鈔","钞"],yi:["弬"],shāo:["弰","旓","烧","焼","燒","筲","艄","萷","蕱","輎","髾","鮹"],"xuān yuān":["弲"],"qiáng qiǎng jiàng":["強","强"],"tán dàn":["弹","醈"],biè:["彆"],"qiáng jiàng qiǎng":["彊"],"jì xuě":["彐"],tuàn:["彖","褖"],yuē:["彟","曰","曱","矱"],"shān xiǎn":["彡"],wén:["彣","文","炆","珳","瘒","繧","聞","芠","蚉","蚊","螡","蟁","閺","閿","闅","闦","闻","阌","雯","馼","駇","魰","鳼","鴍","鼤","𫘜"],"péng bāng":["彭"],"piāo piào":["彯"],"zhuó bó":["彴"],"tuǒ yí":["彵"],"páng fǎng":["彷"],wǎng:["彺","往","徃","惘","枉","棢","網","网","罒","罓","罔","罖","菵","蛧","蝄","誷","輞","辋","魍"],cú:["徂","殂"],"dài dāi":["待"],huái:["徊","怀","懐","懷","槐","淮","耲","蘹","褢","褱","踝"],"wā wàng jiā":["徍"],"chěng zhèng":["徎"],"dé děi de":["得"],"cóng zòng":["從"],"shì tǐ":["徥"],"tí chí":["徲","鶗","鶙"],dé:["徳","德","恴","悳","惪","淂","鍀","锝"],"zhǐ zhēng":["徴","徵"],bié:["徶","癿","莂","蛂","襒","蹩"],"chōng zhǒng":["徸"],"jiǎo jiào":["徼","笅","筊"],"lòng lǒng":["徿"],"qú jù":["忂","渠","瞿","螶"],"dìng tìng":["忊"],gǎi:["忋","改"],rěn:["忍","栠","栣","秹","稔","綛","荏","荵","躵"],chàn:["忏","懴","懺","硟","羼","韂","顫"],tè:["忑","慝","特","蟘","鋱","铽"],"tè tēi tuī":["忒"],"gān hàn":["忓","攼"],"yì qì":["忔"],"tài shì":["忕"],"xī liě":["忚"],"yīng yìng":["応","應","譍"],"mǐn wěn mín":["忞","忟"],"sōng zhōng":["忪"],"yù shū":["忬","悆"],"qí shì":["忯","耆"],"tún zhūn dùn":["忳"],"qián qín":["忴","扲"],hún:["忶","浑","渾","餛","馄","魂","鼲"],niǔ:["忸","扭","炄","狃","紐","纽","莥","鈕","钮","靵"],"kuáng wǎng":["忹"],"kāng hàng":["忼"],"kài xì":["忾","愾"],òu:["怄","慪"],"bǎo bào":["怉"],"mín mén":["怋"],"zuò zhà":["怍"],zěn:["怎"],yàng:["怏","恙","样","様","樣","漾","羕","詇"],"kòu jù":["怐"],"náo niú":["怓"],"zhēng zhèng":["怔","掙","钲","铮"],"tiē zhān":["怗"],"hù gù":["怘"],"cū jù zū":["怚"],"sī sāi":["思"],"yóu chóu":["怞"],"tū dié":["怢"],"yōu yào":["怮"],xuàn:["怰","昡","楦","泫","渲","炫","琄","眩","碹","絢","縼","繏","绚","蔙","衒","袨","贙","鉉","鏇","铉","镟","颴"],"xù xuè":["怴"],"bì pī":["怶"],"xī shù":["怸"],"nèn nín":["恁"],"tiāo yáo":["恌"],"xī qī xù":["恓"],"xiào jiǎo":["恔"],"hū kuā":["恗"],nǜ:["恧","朒","衂","衄"],hèn:["恨"],"dòng tōng":["恫"],"quán zhuān":["恮"],"è wù ě wū":["恶","惡"],tòng:["恸","慟","憅","痛","衕"],"yuān juàn":["悁"],"qiāo qiǎo":["悄"],"jiè kè":["悈"],"hào jiào":["悎"],huǐ:["悔","檓","毀","毁","毇","燬","譭"],"mán mèn":["悗","鞔"],"yī yì":["悘","衣"],quān:["悛","箞","鐉","𨟠"],"kuī lǐ":["悝"],"yì niàn":["悥"],"mèn mēn":["悶"],guàn:["悹","悺","惯","慣","掼","摜","樌","欟","泴","涫","潅","灌","爟","瓘","盥","礶","祼","罆","罐","貫","贯","躀","遦","鏆","鑵","鱹","鸛","鹳"],"kōng kǒng":["悾"],"lǔn lùn":["惀"],guǒ:["惈","果","椁","槨","粿","綶","菓","蜾","裹","褁","輠","餜","馃"],"yuān wǎn":["惌","箢"],"lán lín":["惏"],"yù xù":["惐","淢"],"chuò chuì":["惙"],"hūn mèn":["惛"],"chǎng tǎng":["惝"],"suǒ ruǐ":["惢"],cǎn:["惨","慘","憯","黪","黲","䅟"],cán:["惭","慙","慚","残","殘","蚕","蝅","蠶","蠺"],"dàn dá":["惮","憚"],rě:["惹"],"yú tōu":["愉"],"kài qì":["愒"],"dàng táng shāng yáng":["愓"],"chén xìn dān":["愖"],"kè qià":["愘"],nuò:["愞","懦","懧","掿","搦","榒","稬","穤","糑","糥","糯","諾","诺","蹃","逽","鍩","锘"],gǎn:["感","擀","敢","桿","橄","澉","澸","皯","秆","稈","笴","芉","衦","赶","趕","鱤","鳡"],"còng sōng":["愡"],"sāi sī sǐ":["愢"],"gōng gòng hǒng":["愩","慐"],"shuò sù":["愬","洬"],"yáo yào":["愮"],huàng:["愰","曂","榥","滉","皝","皩","鎤","㿠"],zhěng:["愸","抍","拯","整","晸"],cǎo:["愺","艸","草","騲"],"xì xié":["慀"],"cǎo sāo":["慅"],"xù chù":["慉"],"qiè qiàn":["慊"],"cáo cóng":["慒"],"ào áo":["慠"],"lián liǎn":["慩","梿","槤","櫣"],"jìn qín jǐn":["慬"],"dì chì":["慸"],"zhí zhé":["慹"],"lóu lǚ":["慺","鷜"],còng:["憁","謥"],"zhī zhì":["憄","知","織","织"],chēng:["憆","摚","撐","撑","晿","柽","棦","橕","檉","泟","浾","琤","瞠","碀","緽","罉","蛏","蟶","赪","赬","鏿","鐣","阷","靗","頳","饓"],biē:["憋","虌","鱉","鳖","鼈","龞"],"chéng dèng zhèng":["憕"],"xǐ xī":["憘"],"duì dùn tūn":["憞"],"xiāo jiāo":["憢"],"xián xiàn":["憪"],"liáo liǎo":["憭","燎","爎","爒"],shéng:["憴","縄","繉","繩","绳","譝"],"náo nǎo náng":["憹"],"jǐng jìng":["憼"],"jǐ jiǎo":["憿"],"xuān huān":["懁"],"cǎo sāo sào":["懆"],mèn:["懑","懣","暪","焖","燜"],"mèng méng měng":["懜"],"ài yì nǐ":["懝"],"méng měng":["懞","瞢","矒"],"qí jī jì":["懠"],mǒ:["懡"],"lán xiàn":["懢"],"yōu yǒu":["懮"],"liú liǔ":["懰","藰"],ràng:["懹","譲","讓","让"],huān:["懽","欢","歓","歡","獾","讙","貛","酄","驩","鴅","鵍"],nǎn:["戁","揇","湳","煵","腩","蝻","赧"],"mí mó":["戂"],"gàng zhuàng":["戅","戆"],"zhuàng gàng":["戇"],"xū qu":["戌"],"xì hū":["戏","戯","戲"],"jiá gā":["戛"],zéi:["戝","蠈","賊","贼","鰂","鱡","鲗"],děng:["戥","等"],"hū xì":["戱"],chuō:["戳","踔","逴"],"biǎn piān":["扁"],"shǎng jiōng":["扄"],"shàn shān":["扇"],cái:["才","材","纔","裁","財","财"],"zhā zā zhá":["扎"],"lè lì cái":["扐"],"bā pá":["扒"],"dǎ dá":["打"],rēng:["扔"],"fǎn fú":["払"],"diǎo dí yuē lì":["扚"],"káng gāng":["扛"],"yū wū":["扜"],"yū wū kū":["扝"],"tuō chǐ yǐ":["扡"],"gǔ jié xì gē":["扢"],dèn:["扥","扽"],"sǎo sào":["扫","掃"],rǎo:["扰","擾","隢"],"xī chā qì":["扱"],"bān pān":["扳"],"bā ào":["扷"],"xī zhé":["扸"],"zhì sǔn kǎn":["扻"],zhǎo:["找","沼","瑵"],"kuáng wǎng zài":["抂"],"hú gǔ":["抇","鹄","鹘"],"bǎ bà":["把"],"dǎn shěn":["抌"],"nè nì ruì nà":["抐"],zhuā:["抓","檛","簻","膼","髽"],póu:["抔","裒"],"zhé shé zhē":["折"],"póu pōu fū":["抙","捊"],pāo:["抛","拋","脬","萢"],"ǎo ào niù":["抝"],"lūn lún":["抡","掄"],"qiǎng qiāng chēng":["抢"],"zhǐ zhǎi":["抧"],"bù pū":["抪","柨"],"yǎo tāo":["抭"],"hē hè qiā":["抲"],"nǐ ní":["抳"],"pī pēi":["抷"],"mǒ mò mā":["抹"],chōu:["抽","犨","犫","瘳","篘"],"jiā yá":["拁"],"fú bì":["拂","畐","鶝"],zhǎ:["拃","眨","砟","鮺","鲝"],"dān dàn dǎn":["担"],"chāi cā":["拆"],niān:["拈","蔫"],"lā lá lǎ là":["拉"],"bàn pàn":["拌"],pāi:["拍"],līn:["拎"],guǎi:["拐","枴","柺"],"tuò tà zhí":["拓"],"ào ǎo niù":["拗"],"jū gōu":["拘"],"pīn pàn fān":["拚"],"bài bái":["拜"],bài:["拝","敗","稗","粺","薭","贁","败","韛"],qiá:["拤"],"nǐng níng nìng":["拧"],"zé zhái":["择","擇"],hén:["拫","痕","鞎"],"kuò guā":["括"],"jié jiá":["拮"],nǐn:["拰"],shuān:["拴","栓","閂","闩"],"cún zùn":["拵"],"zā zǎn":["拶","桚"],kǎo:["拷","攷","栲","烤","考"],"yí chǐ hài":["拸"],"cè sè chuò":["拺"],"zhuài zhuāi yè":["拽"],"shí shè":["拾"],bāi:["挀","掰"],"kuò guāng":["挄"],nòng:["挊","挵","齈"],"jiào jiāo":["挍","敎","教"],"kuà kū":["挎"],"ná rú":["挐"],"tiāo tiǎo":["挑"],"dié shè":["挕"],liě:["挘","毟"],"yà yǎ":["挜","掗"],"wō zhuā":["挝"],"xié jiā":["挟","挾"],"dǎng dàng":["挡","擋"],"zhèng zhēng":["挣","正","症"],"āi ái":["挨"],"tuō shuì":["挩","捝"],"tǐ tì":["挮"],"suō shā":["挱"],"sā shā suō":["挲"],"kēng qiān":["挳","摼"],"bàng péng":["挷"],"ruó ruá":["挼"],"jiǎo kù":["捁"],"wǔ wú":["捂"],tǒng:["捅","桶","筒","筩","統","綂","统","㛚"],"huò chì":["捇"],"tú shū chá":["捈"],"lǚ luō":["捋"],"shāo shào":["捎","稍"],niē:["捏","揑"],"shù sǒng sōu":["捒"],"yé yú":["捓"],"jué zhuó":["捔"],"bù pú zhì":["捗"],zùn:["捘","銌"],lāo:["捞","撈","粩"],sǔn:["损","損","榫","笋","筍","箰","鎨","隼"],"wàn wǎn wān yù":["捥"],pěng:["捧","淎","皏"],shě:["捨"],"fǔ fù bǔ":["捬"],dáo:["捯"],"luò luǒ wǒ":["捰"],"juǎn quán":["捲"],"chēn tiǎn":["捵"],"niǎn niē":["捻"],"ruó wěi ré":["捼"],zuó:["捽","昨","秨","稓","筰","莋","鈼"],"wò xiá":["捾"],"qìng qiàn":["掅"],"póu pǒu":["掊"],qiā:["掐","葜"],"pái pǎi":["排"],"qiān wàn":["掔"],"yè yē":["掖"],"niè nǐ yì":["掜"],"huò xù":["掝"],"yàn shàn yǎn":["掞"],"zhěng dìng":["掟"],kòng:["控","鞚"],tuī:["推","蓷","藬"],"zōu zhōu chōu":["掫"],tiàn:["掭","舚"],kèn:["掯","裉","褃"],pá:["掱","杷","潖","爬","琶","筢"],"guó guāi":["掴"],"dǎn shàn":["掸","撣"],"chān xiān càn shǎn":["掺"],sāo:["掻","搔","溞","繅","缫","螦","騒","騷","鰠","鱢","鳋"],pèng:["掽","椪","槰","碰","踫"],"zhēng kēng":["揁"],"jiū yóu":["揂"],"jiān jiǎn":["揃","籛"],"pì chè":["揊"],"sāi zǒng cāi":["揌"],"tí dī dǐ":["提"],"zǒng sōng":["揔"],"huáng yóng":["揘"],"zǎn zuàn":["揝"],"xū jū":["揟"],"ké qiā":["揢"],"chuāi chuǎi chuài tuán zhuī":["揣"],"dì tì":["揥"],"lá là":["揦"],là:["揧","楋","溂","瓎","瘌","翋","臘","蝋","蝲","蠟","辢","辣","鑞","镴","鬎","鯻","𬶟"],"jiē qì":["揭"],"chòng dǒng":["揰"],"dié shé yè":["揲"],"jiàn qián jiǎn":["揵"],yé:["揶","爷","爺","瑘","鋣","鎁","铘"],chān:["搀","摻","攙","裧","襜","覘","觇","辿","鋓"],"gē gé":["搁","擱"],"lǒu lōu":["搂","摟"],"chōu zǒu":["搊"],chuāi:["搋"],sūn:["搎","槂","狲","猻","荪","蓀","蕵","薞","飧","飱"],"róng náng nǎng":["搑"],"péng bàng":["搒"],cuō:["搓","瑳","磋","蹉","遳","醝"],"kē è":["搕"],"nù nuò nòu":["搙"],"lā xié xiàn":["搚"],qiǔ:["搝","糗"],"xiǎn xiān":["搟"],"jié zhé":["搩"],"pán bān pó":["搫"],bān:["搬","攽","斑","斒","班","瘢","癍","肦","螁","螌","褩","辬","頒","颁","𨭉"],"zhì nái":["搱"],"wā wǎ wà":["搲"],huá:["搳","撶","滑","猾","蕐","螖","譁","鏵","铧","驊","骅","鷨"],"qiāng qiǎng chēng":["搶"],"tián shēn":["搷"],"ná nuò":["搻"],èn:["摁"],"shè niè":["摄","攝"],bìn:["摈","擯","殡","殯","膑","臏","髌","髕","髩","鬂","鬓","鬢"],"shā sà shǎi":["摋"],"chǎn sùn":["摌"],"jiū liú liáo jiǎo náo":["摎"],"féng pěng":["摓"],shuāi:["摔"],"dì tú zhí":["摕"],"qì jì chá":["摖"],"sōu sǒng":["摗"],"liǎn liàn":["摙"],"gài xì":["摡"],"hù chū":["摢"],tàng:["摥","烫","燙","鐋"],"nái zhì":["摨"],"mó mā":["摩"],"jiāng qiàng":["摪"],"áo qiáo":["摮"],"niè chè":["摰"],"mán màn":["摱"],"chàn cán":["摲"],"sè mí sù":["摵"],"biāo biào":["摽"],"juē jué":["撅"],piē:["撆","暼","氕","瞥"],"piě piē":["撇"],"zǎn zān zēn qián":["撍"],"sā sǎ":["撒"],hòng:["撔","訌","讧","闀","鬨"],"héng guàng":["撗"],niǎn:["撚","撵","攆","涊","焾","碾","簐","蹍","蹨","躎","輦","辇"],"chéng zhěng":["撜"],"huī wéi":["撝"],cāo:["撡","操","糙"],"xiāo sōu":["撨"],"liáo liāo":["撩"],"cuō zuǒ":["撮"],"wěi tuǒ":["撱"],cuān:["撺","攛","汆","蹿","躥","鑹","镩"],"qiào yāo jī":["撽"],"zhuā wō":["撾"],"lèi léi":["擂"],nǎng:["擃","攮","曩","灢"],"qíng jǐng":["擏"],kuǎi:["擓","蒯","㧟"],"pǐ bò":["擗"],"bò bāi":["擘"],"jù jǐ":["據"],mēng:["擝"],"sǒu sòu":["擞"],xǐng:["擤","箵","醒"],cā:["擦"],"níng nǐng nìng":["擰"],"zhì jié":["擳"],"là liè":["擸","爉"],"sòu sǒu":["擻"],"lì luò yuè":["擽"],"tī zhāi zhì":["擿"],pān:["攀","潘","眅","萠"],lèi:["攂","泪","涙","淚","禷","类","纇","蘱","酹","銇","錑","頛","頪","類","颣"],"cā sǎ":["攃"],"jùn pèi":["攈"],"lì luò":["攊","躒"],"là lài":["攋","櫴"],"lú luó":["攎"],"zǎn cuán":["攒"],"xiān jiān":["攕"],"mí mǐ mó":["攠"],"zǎn cuán zàn zuān":["攢"],zuàn:["攥"],"lì shài":["攦"],"lì luǒ":["攭"],"guǐ guì":["攱"],"jī qī yǐ":["攲"],fàng:["放"],"wù móu":["敄"],"chù shōu":["敊"],"gé guó è":["敋"],"duó duì":["敓","敚"],"duō què":["敠","敪"],"sàn sǎn":["散"],"dūn duì":["敦","镦"],"qī yǐ jī":["敧"],"xiào xué":["敩"],"shù shǔ shuò":["数","數"],"ái zhú":["敱","敳"],"xiòng xuàn":["敻"],"zhuó zhú":["斀"],"yì dù":["斁"],"lí tái":["斄"],"fěi fēi":["斐"],"yǔ zhōng":["斔"],"dòu dǒu":["斗"],"wò guǎn":["斡"],"tǒu tiǎo":["斢"],dòu:["斣","梪","浢","痘","窦","竇","脰","荳","豆","逗","郖","酘","閗","闘","餖","饾","鬥","鬦","鬪","鬬","鬭"],"yín zhì":["斦"],"chǎn jiè":["斺"],"wū yū yú":["於"],"yóu liú":["斿"],"páng bàng":["旁"],"máo mào":["旄"],"pī bì":["旇"],"xuán xuàn":["旋"],"wú mó":["无"],zǎo:["早","枣","栆","棗","澡","璪","薻","藻","蚤"],gā:["旮"],"gàn hàn":["旰"],"tái yīng":["旲"],"xū xù":["旴"],"tūn zhùn":["旽"],"wù wǔ":["旿"],"pò pèi":["昢"],zòng:["昮","猔","疭","瘲","粽","糉","糭","縦"],ǎi:["昹","毐","矮","蔼","藹","譪","躷","霭","靄"],"huàng huǎng":["晃"],xuǎn:["晅","癣","癬","选","選"],"xù kuā":["晇"],hǒng:["晎"],shài:["晒","曬"],"yūn yùn":["晕","煴"],"shèng chéng":["晟","椉","盛"],"jǐng yǐng":["景"],shǎn:["晱","熌","睒","覢","閃","闪","陕","陝"],"qǐ dù":["晵"],"ǎn àn yǎn":["晻"],"wǎng wàng":["暀"],zàn:["暂","暫","瓉","瓒","瓚","禶","襸","讃","讚","賛","贊","赞","蹔","鄼","錾","鏨","饡"],"yùn yūn":["暈"],"mín mǐn":["暋"],"dǔ shǔ":["暏"],shǔ:["暑","曙","潻","癙","糬","署","薥","薯","藷","蜀","蠴","襡","襩","鱪","鱰","黍","鼠","鼡"],"jiǎn lán":["暕"],nuǎn:["暖","煗","餪"],"bào pù":["暴"],"xī xǐ":["暿"],"pù bào":["曝","瀑"],"qū qǔ":["紶"],"qǔ qū":["曲"],"gèng gēng":["更"],"hū hù":["曶","雽"],"zēng céng":["曽","橧"],"céng zēng":["曾","竲"],"cǎn qián jiàn":["朁"],"qiè hé":["朅"],"bì pí":["朇","禆","笓","裨"],"yǒu yòu":["有"],"bān fén":["朌","鳻"],"fú fù":["服","洑"],"fěi kū":["朏","胐"],"qú xù chǔn":["朐"],"juān zuī":["朘"],"huāng máng wáng":["朚"],"qī jī":["期"],"tóng chuáng":["朣","橦"],zhá:["札","牐","箚","蚻","譗","鍘","铡","閘","闸"],"zhú shù shú":["朮"],"shù shú zhú":["术"],"zhū shú":["朱"],"pǔ pò pō piáo":["朴"],"dāo tiáo mù":["朷"],"guǐ qiú":["朹"],xiǔ:["朽","滫","潃","糔"],"chéng chēng":["朾"],zá:["杂","沯","砸","襍","雑","雜","雥","韴"],"yú wū":["杅"],"gān gǎn":["杆"],"chā chà":["杈"],"shān shā":["杉"],cūn:["村","皴","竴","膥","踆","邨"],"rèn ér":["杒","梕"],"sháo biāo":["杓"],"dì duò":["杕","枤"],"gū gài":["杚"],"yí zhì lí duò":["杝"],"gàng gāng":["杠"],"tiáo tiāo":["条","條"],"mà mǎ":["杩"],"sì zhǐ xǐ":["杫"],"yuán wán":["杬","蚖"],"bèi fèi":["杮"],"shū duì":["杸"],"niǔ chǒu":["杻"],"wò yuè":["枂","臒"],máo:["枆","毛","氂","渵","牦","矛","罞","茅","茆","蝥","蟊","軞","酕","鉾","錨","锚","髦","鶜"],"pī mì":["枈"],àng:["枊","盎","醠"],"fāng bìng":["枋"],"hù dǐ":["枑"],xín:["枔","襑","鐔","鬵"],"yāo yǎo":["枖"],"ě è":["枙"],"zhī qí":["枝"],"cōng zōng":["枞","樅"],"xiān zhēn":["枮"],"tái sì":["枱"],"gǒu jǔ gōu":["枸"],"bāo fú":["枹"],"yì xiè":["枻","栧"],"tuó duò":["柁","馱","駄","驮"],"yí duò lí":["柂"],"nǐ chì":["柅"],"pán bàn":["柈","跘"],"yǎng yàng yāng yīng":["柍"],"fù fū fǔ":["柎"],"bǎi bó bò":["柏"],mǒu:["某"],"sháo shào":["柖"],zhè:["柘","樜","浙","淛","蔗","蟅","這","鷓","鹧","䗪"],"yòu yóu":["柚","櫾"],"guì jǔ":["柜"],"zhà zuò":["柞"],"dié zhì":["柣","眰"],"zhā zǔ zū":["柤"],"chá zhā":["查","査"],"āo ào":["柪","軪"],"bā fú pèi bó biē":["柭"],"duò zuó wù":["柮"],"bì bié":["柲"],"zhù chù":["柷"],"bēi pēi":["柸"],"shì fèi":["柹"],"shān zhà shi cè":["栅"],"lì yuè":["栎","櫟"],"qì qiè":["栔","砌"],"qī xī":["栖","蹊"],"guā kuò":["栝"],"bīng bēn":["栟"],"xiào jiào":["校"],"jiàn zùn":["栫","袸"],"yǒu yù":["栯"],"hé hú":["核"],gēn:["根","跟"],"zhī yì":["栺"],"gé gē":["格"],"héng háng":["桁"],"guàng guāng":["桄"],"yí tí":["桋","荑"],sāng:["桑","桒","槡"],"jú jié":["桔"],"yú móu":["桙"],"ráo náo":["桡","橈"],"guì huì":["桧","檜"],"chén zhèn":["桭"],"tīng yíng":["桯"],"bó po":["桲"],"bèn fàn":["桳"],"fēng fèng":["桻","葑"],"sù yìn":["梀"],"tǐng tìng":["梃"],"xuān juān xié":["梋"],"tú chá":["梌"],"āo yòu":["梎"],kuǎn:["梡","欵","款","歀"],"shāo sào":["梢"],"qín chén cén":["梣"],"lí sì qǐ":["梩"],"chān yán":["梴"],"bīn bīng":["梹","槟","檳"],"táo chóu dào":["梼"],"cōng sōng":["棇"],"gùn hùn":["棍"],"dé zhé":["棏"],"pái bèi pèi":["棑"],"bàng pǒu bèi bēi":["棓"],"dì dài tì":["棣"],sēn:["森","椮","槮","襂"],"rěn shěn":["棯"],"léng lēng líng":["棱"],"fú sù":["棴"],"zōu sǒu":["棷"],zōu:["棸","箃","緅","諏","诹","邹","郰","鄒","鄹","陬","騶","驺","鯫","鲰","黀","齱","齺"],"zhào zhuō":["棹"],"chēn shēn":["棽"],"jiē qiè":["椄"],"yǐ yī":["椅"],"chóu zhòu diāo":["椆"],"qiāng kōng":["椌"],"zhuī chuí":["椎"],"bēi pí":["椑"],mēn:["椚"],"quān juàn quán":["椦"],"duǒ chuán":["椯"],"wěi huī":["椲"],"jiǎ jiā":["椵"],"hán jiān":["椷"],"shèn zhēn":["椹"],"yàn yà":["椻"],"zhā chá":["楂"],"guō kuǎ":["楇"],"jí zhì":["楖"],"kǔ hù":["楛"],"yóu yǒu":["楢"],"sǒng cōng":["楤"],"yuán xuàn":["楥"],"yǎng yàng yīng":["楧"],pián:["楩","胼","腁","賆","蹁","駢","騈","骈","骿","㛹"],"dié yè":["楪"],"dùn shǔn":["楯"],"còu zòu":["楱"],"dì dǐ shì":["楴"],"kǎi jiē":["楷"],"róu ròu":["楺"],"lè yuè":["楽"],"wēn yùn":["榅","鞰"],lǘ:["榈","櫚","氀","膢","藘","閭","闾","驢","驴"],shén:["榊","神","鉮","鰰","𬬹"],"bī pi":["榌"],"zhǎn niǎn zhèn":["榐"],"fú fù bó":["榑"],"jiàn jìn":["榗"],"bǎng bàng":["榜"],"shā xiè":["榝","樧"],nòu:["槈","耨","鎒","鐞"],"qiǎn lián xiàn":["槏"],gàng:["槓","焵","焹","筻","鿍"],gāo:["槔","槹","橰","櫜","睾","篙","糕","羔","臯","韟","餻","高","髙","鷎","鷱","鼛"],"diān zhěn zhēn":["槙"],"kǎn jiàn":["槛"],"xí dié":["槢"],"jī guī":["槣"],"róng yōng":["槦"],"tuán shuàn quán":["槫"],"qì sè":["槭"],"cuī zhǐ":["槯"],"yǒu chǎo":["槱"],"màn wàn":["槾"],"lí chī":["樆"],"léi lěi":["樏","櫑","礌"],"cháo jiǎo chāo":["樔"],"chēng táng":["樘"],"jiū liáo":["樛"],"mó mú":["模"],"niǎo mù":["樢"],"héng hèng":["横","橫"],xuě:["樰","膤","艝","轌","雪","鱈","鳕"],"fá fèi":["橃"],rùn:["橍","润","潤","膶","閏","閠","闰"],"zhǎn jiǎn":["橏"],shùn:["橓","瞚","瞬","舜","蕣","順","顺","鬊"],"tuí dūn":["橔"],"táng chēng":["橖"],"sù qiū":["橚"],"tán diàn":["橝"],"fén fèn fèi":["橨"],"rǎn yān":["橪"],"cū chu":["橻"],"shū qiāo":["橾"],"píng bò":["檘"],"zhái shì tú":["檡"],"biǎo biāo":["檦"],"qiān lián":["檶"],"nǐ mí":["檷"],"jiàn kǎn":["檻"],"nòu ruǎn rú":["檽"],"jī jì":["櫅","禨"],"huǎng guǒ gǔ":["櫎"],"lǜ chū":["櫖"],"miè mèi":["櫗"],ōu:["櫙","欧","歐","殴","毆","瓯","甌","膒","藲","謳","讴","鏂","鴎","鷗","鸥"],"zhù zhuó":["櫡"],"jué jì":["櫭"],"huái guī":["櫰"],"chán zhàn":["欃"],"wéi zuì":["欈"],cáng:["欌","鑶"],"yù yì":["欥"],"chù qù xì":["欪"],"kài ài":["欬"],"yì yīn":["欭"],"xì kài":["欯"],"shuò sòu":["欶"],"ǎi ēi éi ěi èi ê̄ ế ê̌ ề":["欸"],"qī yī":["欹"],"chuā xū":["欻"],"chǐ chuài":["欼"],"kǎn qiàn":["欿"],"kǎn kè":["歁"],"chuǎn chuán":["歂"],"yīn yān":["歅"],"jìn qūn":["歏"],pēn:["歕"],"xū chuā":["歘"],"xī shè":["歙"],"liǎn hān":["歛"],"zhì chí":["歭"],"sè shà":["歰"],sǐ:["死"],"wěn mò":["歾"],piǎo:["殍","皫","瞟","醥","顠"],"qíng jìng":["殑"],"fǒu bó":["殕"],"zhí shi":["殖"],"yè yān yàn":["殗"],"hūn mèi":["殙"],chòu:["殠","臰","遚"],"kuì huì":["殨","溃","潰"],cuàn:["殩","熶","爨","窜","竄","篡","簒"],"yīn yān yǐn":["殷"],"qìng kēng shēng":["殸"],"yáo xiáo xiào":["殽"],"gū gǔ":["毂","蛄"],"guàn wān":["毌"],"dú dài":["毒"],"xún xùn":["毥"],mú:["毪","氁"],"dòu nuò":["毭"],"sāi suī":["毸"],lu:["氇"],sào:["氉","瘙","矂","髞"],"shì zhī":["氏"],"dī dǐ":["氐"],"máng méng":["氓"],"yáng rì":["氜"],shuǐ:["水","氵","氺","閖"],"zhěng chéng zhèng":["氶"],tǔn:["氽"],"fán fàn":["氾"],"guǐ jiǔ":["氿"],"bīn pà pā":["汃"],"zhuó què":["汋"],"dà tài":["汏"],pìn:["汖","牝","聘"],"hàn hán":["汗","馯"],tu:["汢"],"tāng shāng":["汤","湯"],"zhī jì":["汥"],"gàn hán cén":["汵"],"wèn mén":["汶"],"fāng pāng":["汸"],"hǔ huǎng":["汻"],"niú yóu":["汼"],hàng:["沆"],"shěn chén":["沈"],"dùn zhuàn":["沌"],"nǜ niǔ":["沑"],"méi mò":["沒","没"],"tà dá":["沓"],"mì wù":["沕"],"hóng pāng":["沗"],"shā shà":["沙"],"zhuǐ zǐ":["沝"],"ōu òu":["沤","漚"],"jǔ jù":["沮"],"tuō duó":["沰"],"mǐ lì":["沵"],"yí chí":["沶"],"xiè yì":["泄"],"bó pō":["泊"],"mì bì":["泌","秘"],"chù shè":["泏"],"yōu yòu āo":["泑"],"pēng píng":["泙","硑"],"pào pāo":["泡"],"ní nì":["泥","秜"],"yuè sà":["泧"],"jué xuè":["泬","疦"],"lóng shuāng":["泷","瀧"],"luò pō":["泺","濼"],"zé shì":["泽","澤"],"sǎ xǐ":["洒"],"sè qì zì":["洓"],"xǐ xiǎn":["洗"],"kǎo kào":["洘"],"àn yàn è":["洝"],"lěi lèi":["洡"],"qiè jié":["洯"],"qiǎn jiān":["浅"],"jì jǐ":["济","済","濟","纪"],"hǔ xǔ":["浒","滸"],"jùn xùn":["浚","濬"],"yǐng chéng yíng":["浧"],"liàn lì":["浰"],"féng hóng":["浲","溄"],"jiǒng jiōng":["浻"],"suī něi":["浽"],"yǒng chōng":["涌"],"tūn yūn":["涒"],"wō guō":["涡","渦"],hēng:["涥","脝"],"zhǎng zhàng":["涨","漲"],"shòu tāo":["涭"],shuàn:["涮","腨"],"kōng náng":["涳"],"wò wǎn yuān":["涴"],"tuō tuò":["涶"],wō:["涹","猧","窝","窩","莴","萵","蜗","蝸","踒"],"qiè jí":["淁"],"guǒ guàn":["淉"],"lín lìn":["淋","獜","疄"],"tǎng chǎng":["淌"],"nào chuò zhuō":["淖"],"péng píng":["淜"],féi:["淝","肥","腓","蜰"],"pì pèi":["淠"],"niǎn shěn":["淰"],"biāo hǔ":["淲"],"chún zhūn":["淳"],"hùn hún":["混"],qiǎn:["淺","繾","缱","肷","膁","蜸","譴","谴","遣","鑓"],"wèn mín":["渂"],"rè ruò luò":["渃"],"dú dòu":["渎","瀆","读"],"jiàn jiān":["渐","溅","漸","濺"],"miǎn shéng":["渑","澠"],"nuǎn nuán":["渜"],"qiú wù":["渞"],"tíng tīng":["渟"],"dì tí dī":["渧"],"gǎng jiǎng":["港"],"hōng qìng":["渹"],tuān:["湍","煓"],"huì mǐn xū":["湏"],"xǔ xù":["湑"],pén:["湓","瓫","盆","葐"],"mǐn hūn":["湣"],"tuàn nuǎn":["湪"],"qiū jiǎo":["湫","湬"],"yān yīn":["湮"],"bàn pán":["湴"],"zhuāng hún":["湷"],"yàn guì":["溎"],"lián liǎn nián xián xiàn":["溓"],"dá tǎ":["溚","鿎"],"liū liù":["溜","澑","蹓"],lùn:["溣"],mǎ:["溤","犸","獁","玛","瑪","码","碼","遤","鎷","馬","马","鰢","鷌"],"zhēn qín":["溱"],"nì niào":["溺"],"chù xù":["滀","畜"],"wěng wēng":["滃"],"hào xuè":["滈"],"qì xì xiē":["滊"],"xíng yíng":["滎"],"zé hào":["滜"],"piāo piào piǎo":["漂"],"cóng sǒng":["漎"],"féng péng":["漨"],"luò tà":["漯"],"pēng bēn":["漰"],"chóng shuāng":["漴"],"huǒ kuò huò":["漷"],"liáo liú":["漻"],"cuǐ cuī":["漼"],"cóng zǒng":["潀"],"cóng zōng":["潈"],"pì piē":["潎"],"dàng xiàng":["潒"],"huáng guāng":["潢"],"liáo lào lǎo":["潦"],"cōng zòng":["潨"],"zhí zhì":["潪"],"tān shàn":["潬"],"tú zhā":["潳"],"sàn sǎ":["潵"],hēi:["潶","黑","黒","𬭶"],"chéng dèng":["澄","瀓"],"cūn cún":["澊"],"péng pēng":["澎"],"hòng gǒng":["澒","銾"],"wàn màn":["澫"],"kuài huì":["澮"],"guō wō":["濄"],"pēn fén":["濆"],"jí shà":["濈"],"huì huò":["濊"],"dǐng tìng":["濎"],"mǐ nǐ":["濔"],"bì pì":["濞"],"cuì zuǐ":["濢"],"hù huò":["濩"],"ǎi kài kè":["濭"],"wěi duì":["濻","瀢"],"zàn cuán":["濽","灒"],"yǎng yàng":["瀁"],"wǎng wāng":["瀇"],"mò miè":["瀎","眜"],suǐ:["瀡","膸","髓"],"huái wāi":["瀤"],"zùn jiàn":["瀳"],"yīng yǐng yìng":["瀴"],"ráng ràng":["瀼"],shuàng:["灀"],"zhuó jiào zé":["灂"],sǎ:["灑","訯","靸"],"luán luàn":["灓"],"dǎng tǎng":["灙"],"xún quán quàn":["灥"],"huǒ biāo":["灬"],"zhà yù":["灹"],"fén bèn":["炃"],"jiǒng guì":["炅"],"pàng fēng":["炐"],quē:["炔","缺","缼","蒛"],biān:["炞","煸","甂","砭","笾","箯","籩","編","编","蝙","邉","邊","鍽","鞭","鯾","鯿","鳊"],"zhāo zhào":["炤"],"zhuō chù":["炪"],"pào páo bāo":["炮"],"páo fǒu":["炰"],"shǎn qián shān":["炶"],"zhà zhá":["炸"],"jiǎo yào":["烄"],quǎn:["烇","犬","犭","畎","綣","绻","虇"],"yàng yáng":["烊"],"lào luò":["烙"],"huí huǐ":["烠"],rè:["热","熱"],"fú páo":["烰"],"xiè chè":["烲","焎"],"yàn shān":["烻"],"hūn xūn":["焄"],kào:["焅","犒","銬","铐","靠","鮳","鯌","鲓","㸆"],"juān yè":["焆"],"jùn qū":["焌"],"tāo dào":["焘"],"chǎo jù":["焣"],"wò ài":["焥"],"zǒng cōng":["焧"],"xī yì":["焬"],"xìn xīn":["焮"],"chāo zhuō":["焯"],"xiǒng yīng":["焸","焽"],kuǐ:["煃","跬","蹞","頍","𫠆"],"huī yùn xūn":["煇"],"jiǎo qiāo":["煍"],"qián shǎn shān":["煔"],"xī yí":["煕"],"shà shā":["煞"],"yè zhá":["煠"],"yáng yàng":["煬"],"ēn yūn":["煾"],"yūn yǔn":["熅"],"hè xiāo":["熇"],xióng:["熊","熋","雄"],"xūn xùn":["熏","爋"],gòng:["熕","貢","贡"],liū:["熘"],"cōng zǒng":["熜"],"lù āo":["熝"],"shú shóu":["熟"],"fēng péng":["熢"],"cuǐ suī":["熣"],tēng:["熥","膯","鼟"],"yùn yù":["熨"],"áo āo":["熬"],"hàn rǎn":["熯"],"ōu ǒu":["熰"],"huáng huǎng":["熿"],"chǎn dǎn chàn":["燀"],"jiāo zhuó qiáo jué":["燋"],"yàn yān":["燕"],"tài liè":["燤"],āo:["爊"],"yàn xún":["爓"],"jué jiào":["爝","覐","覚","覺","觉"],"lǎn làn":["爦"],"zhuǎ zhǎo":["爪"],"zhǎo zhuǎ":["爫"],"fù fǔ":["父"],diē:["爹","褺","跌"],zāng:["牂","羘","臧","賍","賘","贓","贜","赃","髒"],"piàn piān":["片"],"biān miàn":["牑"],bǎng:["牓","綁","绑"],"yǒu yōng":["牗"],"chēng chèng":["牚","竀"],niú:["牛","牜"],"jiū lè":["牞"],"mù móu":["牟"],māng:["牤"],"gē qiú":["牫"],"yòu chōu":["牰"],"tè zhí":["犆"],bēn:["犇","錛","锛"],"jiān qián":["犍","玪"],má:["犘","痲","蔴","蟇","麻"],"máo lí":["犛"],"bá quǎn":["犮"],"zhuó bào":["犳"],"àn hān":["犴"],"kàng gǎng":["犺"],"pèi fèi":["犻"],"fān huān":["犿"],kuáng:["狂","狅","誑","诳","軖","軠","鵟","𫛭"],"yí quán chí":["狋"],"xīng shēng":["狌"],"tuó yí":["狏"],kǔ:["狜","苦"],"huán huān":["狟"],"hé mò":["狢"],"tà shì":["狧"],"máng dòu":["狵"],"xī shǐ":["狶"],suān:["狻","痠","酸"],"bài pí":["猈"],"jiān yàn":["猏","豣"],"yī yǐ":["猗"],"yá wèi":["猚"],cāi:["猜"],"māo máo":["猫","貓"],"chuàn chuān":["猭"],"tuān tuàn":["猯","貒"],"yà jiá qiè":["猰"],"hè xiē gé hài":["猲"],"biān piàn":["猵","獱"],"bó pò":["猼"],"háo gāo":["獋"],"fén fèn":["獖"],"yào xiāo":["獟"],"shuò xī":["獡"],"gé liè xiē":["獦"],"nòu rú":["獳"],"náo nǎo yōu":["獶"],ráng:["獽","瓤","禳","穣","穰","蘘","躟","鬤"],"náo yōu":["獿"],"lǜ shuài":["率"],"wáng wàng":["王"],"yáng chàng":["玚"],"mín wén":["玟"],"bīn fēn":["玢"],"mén yǔn":["玧"],"qiāng cāng":["玱","瑲","篬"],"án gān":["玵"],"xuán xián":["玹"],"cī cǐ":["玼","跐"],"yí tāi":["珆"],"zǔ jù":["珇"],fà:["珐","琺","蕟","髪","髮"],"yín kèn":["珢"],"huī hún":["珲"],"xuán qióng":["琁"],"fú fū":["琈"],"bǐng pín":["琕"],"cuì sè":["琗"],"yù wéi":["琟"],"tiǎn tiàn":["琠"],"zhuó zuó":["琢"],"běng pěi":["琣"],guǎn:["琯","璭","痯","筦","管","舘","輨","錧","館","馆","鳤"],"hún huī":["琿"],"xié jiē":["瑎"],"chàng dàng yáng":["瑒"],"tiàn zhèn":["瑱"],"bīn pián":["瑸","璸"],"tú shū":["瑹"],cuǐ:["璀","皠","趡"],"zǎo suǒ":["璅"],"jué qióng":["璚"],"lú fū":["璷"],"jì zī":["璾"],suí:["瓍","綏","绥","遀","随","隨","髄"],"mí xǐ":["瓕"],"qióng wěi wèi":["瓗"],"huán yè yà":["瓛"],"bó páo":["瓟"],"zhí hú":["瓡"],piáo:["瓢","闝"],"wǎ wà":["瓦"],"xiáng hóng":["瓨"],wèng:["瓮","甕","罋","蕹","齆"],"shèn shén":["甚"],ruí:["甤","緌","蕤"],yòng:["用","砽","苚","蒏","醟","㶲"],shuǎi:["甩"],béng:["甭","甮"],"yóu zhá":["甴"],"diàn tián shèng":["甸"],"tǐng dīng":["町","甼"],"zāi zī":["甾"],"bì qí":["畁"],"dá fú":["畗"],"cè jì":["畟"],"zāi zī tián":["畠"],"zhì chóu shì":["畤"],"fān pān":["畨","番"],"shē yú":["畬"],"dāng dàng dǎng":["當"],"jiāng qiáng":["疆"],"pǐ yǎ shū":["疋"],"jié qiè":["疌"],"yí nǐ":["疑"],nè:["疒","眲","訥","讷"],"gē yì":["疙"],"nüè yào":["疟","瘧"],"lì lài":["疠","癘"],"yǎ xiā":["疨"],xuē:["疶","蒆","薛","辥","辪","靴","鞾"],"dǎn da":["疸"],"fá biǎn":["疺"],"fèi féi":["疿","痱"],"shān diàn":["痁"],"téng chóng":["痋"],"tōng tóng":["痌"],"wěi yòu yù":["痏"],"tān shǐ":["痑"],"pū pù":["痡","鋪"],"bēng péng":["痭"],"má lìn":["痳"],"tiǎn diàn":["痶"],"ān yè è":["痷"],"kē ē":["痾"],"zhì chì":["瘈"],"jiǎ xiá xiā":["瘕"],"lěi huì":["瘣"],"chài cuó":["瘥"],"diān chēn":["瘨"],"da dá":["瘩"],"biě biē":["瘪"],qué:["瘸"],"dàn dān":["癉"],"guì wēi":["癐"],"nòng nóng":["癑"],"biē biě":["癟"],"bō bǒ":["癷"],bái:["白"],"jí bī":["皀"],"de dì dí dī":["的"],"pā bà":["皅"],"gāo háo":["皋"],"gāo yáo":["皐"],"lì luò bō":["皪"],"zhā cǔ":["皻"],"zhāo zhǎn dǎn":["皽"],"jiān jiàn":["监","監","鋻","间","鞬"],"gài gě hé":["盖"],"máng wàng":["盳"],yuǎn:["盶","逺","遠"],"tián xián":["盷"],"xiāng xiàng":["相"],dǔn:["盹","趸","躉"],"xì pǎn":["盻"],"shěng xǐng":["省"],"yún hùn":["眃"],"miǎn miàn":["眄"],"kàn kān":["看"],"yìng yāng yǎng":["眏"],"yǎo āo ǎo":["眑"],"jū xū kōu":["眗"],"yí chì":["眙"],"dié tì":["眣"],"bǐng fǎng":["眪"],"pàng pán":["眫"],"mī mí":["眯","瞇"],"xuàn shùn xún":["眴"],tiào:["眺","粜","糶","覜","趒"],"zhe zhuó zháo zhāo":["着"],"qiáo shào xiāo":["睄"],"cuó zhuài":["睉"],gùn:["睔","謴"],"suì zuì":["睟"],"pì bì":["睥","稫","辟"],"yì zé gāo":["睪"],"xǐng xìng":["睲"],"guì wèi kuì":["瞆"],"kòu jì":["瞉"],"qióng huán":["瞏"],"mán mén":["瞒","瞞"],"diāo dōu":["瞗"],"lou lóu lǘ":["瞜"],"shùn rún":["瞤"],"liào liǎo":["瞭","钌"],"jiàn xián":["瞯"],"wǔ mí":["瞴"],"guì kuì":["瞶"],"nǐng chēng":["矃"],"huò yuè":["矆"],"mēng méng":["矇"],"kuàng guō":["矌"],"guàn quán":["矔"],"mǎn mán":["矕"],"jīn guān qín":["矜"],"jīn qín guān":["矝"],"yù xù jué":["矞"],"jiǎo jiáo":["矫","矯"],duǎn:["短"],"shí dàn":["石"],"gāng qiāng kòng":["矼"],"huā xū":["砉"],"pīn bīn fēn":["砏"],"yán yàn":["研","硏"],"luǒ kē":["砢"],"fú fèi":["砩","笰"],"zhǔ zhù":["砫"],"lá lì lā":["砬"],"kuāng guāng":["硄"],"gè luò":["硌"],"shuò shí":["硕","碩"],"wèi wéi ái":["硙"],"què kè kù":["硞"],"mǎng bàng":["硥"],"luò lòng":["硦"],"yǒng tóng":["硧"],nüè:["硸","虐"],"kēng kěng":["硻"],"yān yǎn":["硽"],"zhuì chuí duǒ":["硾"],"kōng kòng":["硿"],"zòng cóng":["碂"],"jiān zhàn":["碊"],"lù liù":["碌","陆"],"què xī":["碏"],"lún lǔn lùn":["碖"],"náo gāng":["碙"],"jié yà":["碣"],"wèi wěi":["碨"],"tí dī":["碮"],"chá chā":["碴"],"qiāo què":["碻"],"sù xiè":["碿"],"liú liù":["磂","遛","鎦","馏"],"sī tí":["磃"],"bàng páng":["磅"],"huá kě gū":["磆"],"wěi kuǐ":["磈"],"xiá qià yà":["磍"],"lián qiān":["磏"],"wèi ái gài":["磑"],"lá lā":["磖"],"áo qiāo":["磝"],"pēng pèng":["磞","閛"],"yīn yǐn":["磤"],"lěi léi":["磥"],"mó mò":["磨"],"qì zhú":["磩"],"láo luò":["磱"],"pán bō":["磻"],"jí shé":["磼"],"hé qiāo qiào":["礉"],"kè huò":["礊"],"què hú":["礐"],"è qì":["礘"],cǎ:["礤","礸"],"xián xín":["礥"],"léi lěi lèi":["礧"],"yán yǎn":["礹"],"qí zhǐ":["祇","蚔"],"bēng fāng":["祊"],"bì mì":["祕"],suàn:["祘","笇","筭","算","蒜"],"piào piāo":["票"],"jì zhài":["祭"],"shuì lèi":["祱"],"jìn jīn":["禁"],"chán shàn":["禅"],"yáng shāng":["禓"],"zhī zhǐ tí":["禔"],"shàn chán":["禪"],"yú yù ǒu":["禺"],"zǐ zì":["秄"],"chá ná":["秅"],"zhǒng zhòng chóng":["种"],"hào mào":["秏"],"kù kū":["秙"],zū:["租","葅"],chèng:["秤","穪"],"huó kuò":["秮","秳"],"chēng chèn chèng":["称","稱"],"shì zhì":["秲","銴"],"fù pū":["秿"],"xùn zè":["稄"],"tú shǔ":["稌"],"zhùn zhǔn":["稕"],"jī qí":["稘","綨","觭"],"léng líng":["稜"],"zuì zú sū":["稡"],"xì qiè":["稧","郄"],"zhǒng zhòng":["種"],"zōng zǒng":["稯"],"xián jiān liàn":["稴"],"zī jiū":["稵"],"jī qǐ":["稽"],ròng:["穃"],"shān cǎn cēn":["穇"],"mén méi":["穈"],"jǐ jì":["穖"],"xiāo rào":["穘"],"zhuō bó":["穛"],"tóng zhǒng zhòng":["穜"],zuō:["穝"],"biāo pāo":["穮","藨"],"zhuō jué":["穱"],"cuán zàn":["穳"],"kōng kòng kǒng":["空"],"yū yǔ":["穻"],zhǎi:["窄","鉙"],báo:["窇","雹"],"kū zhú":["窋"],"jiào liáo liù":["窌"],"wā guī":["窐"],"tiǎo yáo":["窕"],"xūn yìn":["窨"],"yà yē":["窫"],"tián diān yǎn":["窴"],"chāo kē":["窼"],"kuǎn cuàn":["窽","窾"],"chù qì":["竐"],"qǔ kǒu":["竘"],"jìng zhěn":["竧"],"kǎn kàn":["竷"],"zhú dǔ":["竺"],"lè jīn":["竻"],"zhuì ruì":["笍"],"háng hàng":["笐"],"cén jìn hán":["笒"],"dā xiá nà":["笚"],"zé zuó":["笮"],"lóng lǒng":["笼","篭","籠","躘","龓"],"zhù zhú":["筑","築"],"dá dā":["答","荅"],shāi:["筛","篩","簁","籭"],"yún jūn":["筠"],"láng làng":["筤","郎","阆"],"zhì zhǐ":["筫"],o:["筽"],"póu bù fú pú":["箁"],"pái bēi":["箄"],gè:["箇","虼","鉻","铬"],"tái chí":["箈"],"guǎi dài":["箉"],"zhào dào":["箌"],"jīng qìng":["箐"],"lín lǐn":["箖"],"jùn qūn":["箘"],"shī yí":["箷","釶"],"yuē yào chuò":["箹"],"xiāo shuò qiào":["箾"],"gōng gǎn lǒng":["篢"],"páng péng":["篣"],"zhuó huò":["篧"],"jiǎn jiān":["篯"],"dí zhú":["篴"],"zān cēn cǎn":["篸"],"zhuàn suǎn zuàn":["篹"],"piǎo biāo":["篻"],"guó guì":["簂"],"cè jí":["簎"],"mì miè":["簚"],"shāi sī":["簛"],"sǔn zhuàn":["簨"],"gàn gǎn":["簳"],"bò bǒ":["簸"],"bó bù":["簿"],shi:["籂"],"zhēn jiān":["籈"],"zhuàn zuǎn":["籑"],"fān pān biān":["籓"],"sǒu shǔ":["籔"],zuǎn:["籫","繤","纂","纉","纘","缵"],nǚ:["籹","釹","钕"],"shā chǎo":["粆"],"kāng jīng":["粇"],fěn:["粉","黺"],cū:["粗","觕","麁","麄","麤"],"nián zhān":["粘"],"cè sè":["粣"],"zhōu yù":["粥"],"shēn sǎn":["糁"],"biān biǎn":["糄","萹"],miàn:["糆","面","靣","麪","麫","麵","麺"],"hú hū hù":["糊"],"gǔ gòu":["糓"],"mí méi":["糜"],"sǎn shēn":["糝","糣"],zāo:["糟","蹧","遭","醩"],"mì sī":["糸"],"jiū jiǔ":["糺"],"xì jì":["系","繫"],"zhēng zhěng":["糽"],"chà chǎ":["紁","衩"],"yuē yāo":["約","约"],"hóng gōng":["紅","红"],"hé gē":["紇","纥"],"wén wèn":["紋","纹"],fóu:["紑"],"jì jié jiè":["紒"],"pī pí bǐ":["紕","纰"],"jīn jìn":["紟"],"zhā zā":["紥","紮"],hā:["紦"],"fū fù":["紨"],"chōu chóu":["紬"],"lèi léi lěi":["累"],"bō bì":["紴"],"tiǎn zhěn":["紾"],"jiōng jiǒng":["絅"],"jié jiē":["結","结","节"],"guà kuā":["絓"],"bǎi mò":["絔"],"gēng huán":["絙"],"jié xié":["絜"],"quán shuān":["絟"],"gǎi ǎi":["絠"],"luò lào":["絡","络"],"bīng bēng pēng":["絣"],"gěi jǐ":["給","给"],"tóng tōng dòng":["絧"],"tiào diào dào":["絩"],"lěi lèi léi":["絫"],"gāi hài":["絯"],"chī zhǐ":["絺"],"wèn miǎn mán wàn":["絻"],"huán huàn wàn":["綄"],"qīn xiān":["綅"],"tì tí":["綈"],"yán xiàn":["綖"],"zōng zèng zòng":["綜"],"chēn lín":["綝"],"zhǔn zhùn":["綧"],"qiàn qīng zhēng":["綪"],"qìng qǐ":["綮"],"lún guān":["綸","纶"],"chuò chāo":["綽","绰"],"tián tǎn chān":["緂"],"lǜ lù":["緑","绿"],"ruǎn ruàn":["緛"],"jí qī":["緝"],"zhòng chóng":["緟","重"],"miáo máo":["緢"],"xiè yè":["緤"],huǎn:["緩","缓","㬊"],"gēng gèng":["緪","縆"],"tōu xū shū":["緰"],"zōng zòng":["緵","繌"],"yùn gǔn":["緷"],"guā wō":["緺"],"yùn yūn wēn":["緼","縕"],"bāng bàng":["縍"],"gǔ hú":["縎","鶻"],"cī cuò suǒ":["縒"],"cuī shuāi":["縗"],"róng rǒng ròng":["縙"],"zài zēng":["縡"],cài:["縩","菜","蔡"],"féng fèng":["縫"],"suō sù":["縮","缩"],"yǎn yǐn":["縯","酓"],"zòng zǒng":["縱","纵"],"zhuàn juàn":["縳"],"mò mù":["縸","莫"],"piǎo piāo":["縹","缥"],"fán pó":["繁"],"bēng bèng":["繃"],"móu miù miào liǎo":["繆"],"yáo yóu zhòu":["繇"],"zēng zèng":["繒","缯"],"jú jué":["繘"],"chuō chuò":["繛"],"zūn zǔn":["繜"],rào:["繞","绕","遶"],"chǎn chán":["繟"],"huì huí":["繢","缋","藱"],"qiāo sāo zǎo":["繰"],"jiǎo zhuó":["繳","缴"],"dàn tán chán":["繵"],nǒng:["繷"],"pú fú":["纀"],"yào lì":["纅"],"rǎng xiāng":["纕"],"lí sǎ xǐ lǐ":["纚"],"xiān qiàn":["纤"],"jīng jìng":["经"],"tí tì":["绨"],"bēng běng bèng":["绷"],"zōng zèng":["综"],"jī qī":["缉"],"wēn yùn yūn":["缊"],"fèng féng":["缝"],"shuāi cuī suī":["缞"],"miù móu liáo miào mù":["缪"],"qiāo sāo":["缲"],fǒu:["缶","缹","缻","雬","鴀"],"bà ba pí":["罢","罷"],"guà guǎi":["罫"],"yáng xiáng":["羊","羏"],"měi gāo":["羙"],"yì xī":["羛"],"qiǎng qiān":["羟"],"qiāng kòng":["羫"],"qián xián yán":["羬"],nóu:["羺"],"hóng gòng":["羾"],"pī bì pō":["翍"],"qú yù":["翑"],ké:["翗"],"qiào qiáo":["翘"],"zhái dí":["翟"],"dào zhōu":["翢"],"hóu qú":["翵"],shuǎ:["耍"],"ruǎn nuò":["耎"],"ér nài":["耏"],"zhuān duān":["耑"],"pá bà":["耙"],"chí sì":["耛"],"qù chú":["耝"],"lún lǔn":["耣"],"jí jiè":["耤"],"tāng tǎng":["耥"],pǎng:["耪","覫"],"zhá zé":["耫"],"yē yé":["耶"],"yún yíng":["耺"],"wà tuǐ zhuó":["聉"],"ér nǜ":["聏"],"tiē zhé":["聑"],"dǐ zhì":["聜"],qié:["聺"],"nǐ jiàn":["聻"],"lèi lē":["肋"],cào:["肏","襙","鄵","鼜"],"bó dí":["肑"],"xiào xiāo":["肖"],"dù dǔ":["肚"],chāi:["肞","釵","钗"],"hán qín hàn":["肣"],"pàng pán pàn":["肨","胖"],"zhūn chún":["肫"],āng:["肮","骯"],"yù yō":["育"],"pí bǐ bì":["肶"],"fèi bì":["胇"],"bèi bēi":["背"],"fèi zǐ":["胏"],"píng pēng":["胓","苹"],"fū fú zhǒu":["胕"],"shèng shēng":["胜"],kuà:["胯","跨","骻"],"gǎi hǎi":["胲"],"gē gé gā":["胳"],"néng nài":["能"],"guī kuì":["胿"],"mài mò":["脉"],"zāng zàng":["脏"],"jiǎo jué":["脚","角"],cuǒ:["脞"],"de te":["脦"],"zuī juān":["脧"],něi:["脮","腇","餒","馁","鮾","鯘"],"pú fǔ":["脯"],niào:["脲"],shuí:["脽"],guò:["腂","過","鐹"],"là xī":["腊"],"yān ā":["腌"],"gāo gào":["膏"],"lù biāo":["膔"],chuái:["膗"],"zhuān chuán chún zhuǎn":["膞"],chuài:["膪","踹"],"fán pán":["膰"],"wǔ hū":["膴"],"shān dàn":["膻"],tún:["臀","臋","蛌","豘","豚","軘","霕","飩","饨","魨","鲀","黗"],"bì bei":["臂"],"là gé":["臈"],"sào sāo":["臊"],nào:["臑","閙","闹","鬧"],"ní luán":["臡"],"qiān xián":["臤"],"guàng jiǒng":["臦"],"guǎng jiǒng":["臩"],"chòu xiù":["臭"],"mián biān":["臱"],"dié zhí":["臷"],"zhī jìn":["臸"],"shè shě":["舍"],pù:["舖","舗"],"bān bō pán":["般"],kuā:["舿"],"gèn gěn":["艮"],"sè shǎi":["色"],"fú bó":["艴"],"jiāo qiú":["艽"],"chāi chā":["芆"],"sháo què":["芍"],"hù xià":["芐"],"zì zǐ":["芓"],"huì hū":["芔"],"tún chūn":["芚"],"jiè gài":["芥"],"xù zhù":["芧"],"yuán yán":["芫"],"xīn xìn":["芯"],"lún huā":["芲"],"wù hū":["芴"],"gōu gǒu":["芶"],"mào máo":["芼"],"fèi fú":["芾"],"chán yín":["苂"],qiē:["苆"],"sū sù":["苏"],"tiáo sháo":["苕"],"lì jī":["苙"],"kē hē":["苛"],"jù qǔ":["苣"],"ruò rě":["若"],"zhù níng":["苧"],"pā bó":["苩"],xiú:["苬"],"zhǎ zuó":["苲"],"jū chá":["苴"],nié:["苶"],"shēng ruí":["苼"],"qié jiā":["茄"],"zǐ cí":["茈"],"qiàn xī":["茜"],chǎi:["茝"],"fá pèi":["茷"],ráo:["荛","蕘","襓","饒","饶"],"yíng xíng":["荥"],"qián xún":["荨","蕁"],"yìn yīn":["荫"],"hé hè":["荷"],"shā suō":["莎"],"péng fēng":["莑"],"shēn xīn":["莘"],"wǎn guān guǎn":["莞"],"yóu sù":["莤"],"shāo xiāo":["莦","蛸"],"làng liáng":["莨"],"piǎo fú":["莩"],"wèn wǎn miǎn":["莬"],"shì shí":["莳","蒔"],"tù tú":["莵"],"xiān liǎn":["莶","薟"],"wǎn yù":["菀"],"zōu chù":["菆"],"lù lǜ":["菉"],"jūn jùn":["菌"],"niè rěn":["菍"],"zī zì zāi":["菑"],"tú tù":["菟"],"jiē shà":["菨"],"qiáo zhǎo":["菬"],"tái zhī chí":["菭"],"fēi fěi":["菲","蜚"],"qín qīn jīn":["菳"],"zū jù":["菹","蒩"],"lǐn má":["菻"],"tián tiàn":["菾"],tiē:["萜","貼","贴"],"luò là lào luō":["落"],"zhù zhuó zhe":["著"],"shèn rèn":["葚"],"gě gé":["葛"],"jùn suǒ":["葰"],"kuì kuài":["蒉"],"rú ná":["蒘"],"méng mēng měng":["蒙"],"yuán huán":["蒝"],"xú shú":["蒣"],"xí xì":["蒵"],"mì míng":["蓂"],"sōu sǒu":["蓃"],"gài gě hé hài":["蓋"],"yǎo zhuó":["蓔"],"diào tiáo dí":["蓧"],"xū qiū fū":["蓲"],"zí jú":["蓻"],"liǎo lù":["蓼"],xu:["蓿"],"hàn hǎn":["蔊"],"màn wàn mán":["蔓"],"pó bò":["蔢"],"fān fán bō":["蕃"],"hóng hòng":["蕻"],"yù ào":["薁","隩"],"xí xiào":["薂"],"báo bó bò":["薄"],"cí zī":["薋"],"wàn luàn":["薍"],"kǎo hāo":["薧"],"yuǎn wěi":["薳"],"zhòu chóu":["薵"],"wō mái":["薶"],"xiāo hào":["藃"],"yù xù xū":["藇"],"jiè jí":["藉"],"diào zhuó":["藋"],"cáng zàng":["藏"],lǎ:["藞"],"chú zhū":["藸"],"pín píng":["蘋"],"gān hán":["虷"],"hóng jiàng":["虹"],"huī huǐ":["虺"],"xiā há":["虾"],"mǎ mà mā":["蚂"],"fāng bàng":["蚄"],"bàng bèng":["蚌"],"jué quē":["蚗"],"qín qián":["蚙"],"gōng zhōng":["蚣"],"fǔ fù":["蚥"],"dài dé":["蚮"],"gǒu qú xù":["蚼"],"bǒ pí":["蚾"],"shé yí":["蛇"],tiě:["蛈","鉄","銕","鐡","鐵","铁","驖"],"gé luò":["蛒"],"máng bàng":["蛖"],"yì xǔ":["蛡"],"há gé":["蛤"],"qiè ní":["蛪"],"é yǐ":["蛾"],"zhē zhé":["蜇"],"là zhà":["蜡"],suò:["蜶","逤"],"yóu qiú":["蝤"],"xiā hā":["蝦"],"xī qī":["螇"],"bī pí":["螕"],"nài něng":["螚"],"hé xiá":["螛"],"guì huǐ":["螝"],"mǎ mā mà":["螞"],"shì zhē":["螫"],"zhì dié":["螲"],"jiàn chán":["螹"],"ma má mò":["蟆"],"mǎng měng":["蟒"],"biē bié":["蟞"],"bēn fèi":["蟦"],"láo liáo":["蟧"],"yín xún":["蟫"],"lí lǐ":["蠡"],"xuè xiě":["血"],"xíng háng hàng héng":["行"],"shuāi cuī":["衰"],"tuó tuō":["袉"],"lǐng líng":["袊"],"bào páo pào":["袌"],"jù jiē":["袓"],"hè kè":["袔"],"yí yì":["袘","貤"],"nà jué":["袦"],"bèi pī":["被"],"chǐ nuǒ":["袲"],"chǐ qǐ duǒ nuǒ":["袳"],"jiá qiā jié":["袷"],"bó mò":["袹"],"guī guà":["袿"],"liè liě":["裂"],"chéng chěng":["裎"],"jiē gé":["裓"],"dāo chóu":["裯"],"shang cháng":["裳"],"yuān gǔn":["裷"],"yǎn ān":["裺"],"tì xī":["裼"],"fù fú":["褔"],"chǔ zhǔ":["褚"],"tuì tùn":["褪"],lǎi:["襰"],"yào yāo":["要"],"qín tán":["覃"],"jiàn xiàn":["見","见"],piǎn:["覑","諞","谝","貵","𡎚"],"piē miè":["覕"],"yíng yǐng":["覮"],"qù qū":["覰","覷","觑"],"jiàn biǎn":["覵"],"luó luǎn":["覶"],"zī zuǐ":["觜"],"huà xiè":["觟"],"jiě jiè xiè":["解","觧"],"xué hù":["觷"],"lì lù":["觻"],tǎo:["討","讨"],zhùn:["訰"],"zī zǐ":["訾"],"yí dài":["詒","诒"],xiòng:["詗","诇"],"diào tiǎo":["誂"],"yí chǐ chì":["誃"],"lǎng làng":["誏"],"ēi éi ěi èi xī":["誒","诶"],shuà:["誜"],"yǔ yù":["語","语","雨"],"shuō shuì yuè":["說","说"],"shuí shéi":["誰","谁"],"qū juè":["誳"],"chī lài":["誺"],"nì ná":["誽"],"diào tiáo":["調"],"pǐ bēi":["諀"],"jì jī":["諅"],"zé zuò zhǎ cuò":["諎"],"chù jí":["諔"],"háo xià":["諕"],"lùn lún":["論","论"],"shì dì":["諟"],"huà guā":["諣"],"xǐ shāi āi":["諰"],"nán nàn":["諵","難"],miù:["謬","谬"],zèn:["譖","谮"],"shí zhì":["識","识"],"juàn xuān":["讂"],"yí tuī":["讉"],zhán:["讝"],"xǔ hǔ":["许"],"xiáng yáng":["详"],"tiáo diào zhōu":["调"],"chén shèn":["谌"],"mí mèi":["谜"],"màn mán":["谩"],"gǔ yù":["谷"],"huō huò huá":["豁"],"zhì zhài":["豸"],"huān huán":["貆"],"kěn kūn":["貇"],"mò hé":["貈"],"mò hé háo":["貉"],"jù lóu":["貗"],"zé zhài":["責","责"],"dài tè":["貸"],"bì bēn":["賁"],"jiǎ gǔ jià":["賈"],"xiōng mín":["賯"],càng:["賶"],"zhuàn zuàn":["賺","赚"],"wàn zhuàn":["贃"],"gàn gòng zhuàng":["贛"],"yuán yùn":["贠"],"bēn bì":["贲"],"jiǎ gǔ":["贾"],zǒu:["走","赱","鯐"],"dié tú":["趃"],"jū qiè":["趄"],"qū cù":["趋","趨"],"jí jié":["趌"],"guā huó":["趏"],"què qì jí":["趞"],"tàng tāng":["趟"],"chuō zhuó":["趠"],"qù cù":["趣"],"yuè tì":["趯"],"bō bào":["趵"],"kuà wù":["趶"],"guì jué":["趹"],"fāng fàng páng":["趽"],"páo bà":["跁"],"qí qǐ":["跂"],"jiàn chén":["跈"],"pǎo páo":["跑"],"diǎn diē tiē":["跕"],"jū jù qiè":["跙"],bǒ:["跛"],"luò lì":["跞"],"dài duò duō chí":["跢"],zhuǎi:["跩"],"bèng pián":["跰"],"tiào táo":["跳"],"shū chōu":["跾"],"liàng liáng":["踉"],"tà tā":["踏"],chǎ:["蹅","鑔","镲"],"dí zhí":["蹢"],"dēng dèng":["蹬","鐙","镫"],cèng:["蹭"],"dūn cún":["蹲"],"juě jué":["蹶"],liāo:["蹽"],"xiè sǎ":["躠"],tǐ:["躰","軆","骵"],"yà zhá gá":["轧","軋"],"xìn xiàn":["軐"],"fàn guǐ":["軓"],"zhuàn zhuǎn":["転"],"zhóu zhòu":["軸","轴"],bú:["轐","醭","鳪"],"zhuǎn zhuàn zhuǎi":["转"],"zǎi zài":["载"],"niǎn zhǎn":["辗"],"biān bian":["边"],"dào biān":["辺"],"yǐ yí":["迆","迤","迱"],"guò guo guō":["过"],"wàng kuāng":["迋"],"hái huán":["还"],"zhè zhèi":["这"],"yuǎn yuàn":["远"],"zhì lì":["迣"],"zhù wǎng":["迬"],"zhuī duī":["追"],"shì kuò":["适"],tòu:["透"],"tōng tòng":["通"],guàng:["逛"],"dǎi dài":["逮"],"suì suí":["遂"],"tí dì":["遆"],"yí wèi":["遗"],"shì dí zhé":["適"],cà:["遪"],"huán hái":["還"],"lí chí":["邌"],"kàng háng":["邟"],"nà nèi nā":["那"],"xié yá yé yú xú":["邪"],"gāi hái":["郂"],"huán xún":["郇"],"chī xī":["郗"],hǎo:["郝"],"lì zhí":["郦"],"xiáo ǎo":["郩"],"dōu dū":["都"],liǎo:["曢","鄝","镽"],"zàn cuán cuó":["酂","酇"],"dīng dǐng":["酊"],"cù zuò":["酢"],"fā pō":["酦"],"shāi shī":["酾"],niàng:["酿","醸"],"qiú chōu":["醔"],"pō fā":["醗","醱"],"chǎn chěn":["醦"],"yàn liǎn xiān":["醶"],"niàng niáng":["釀"],"lǐ li":["里"],"lí xǐ xī":["釐"],"liǎo liào":["釕"],"dīng dìng":["釘","钉"],"qiǎo jiǎo":["釥"],"yú huá":["釪"],"huá wū":["釫"],"rì rèn jiàn":["釰","釼"],"dì dài":["釱"],"pī zhāo":["釽"],"yá yé":["釾"],"bǎ pá":["鈀","钯"],"tā tuó":["鉈","铊"],běi:["鉳"],"bǐng píng":["鉼"],"hā kē":["鉿","铪"],chòng:["銃","铳"],"xiǎng jiōng":["銄"],"yù sì":["銉"],"xù huì":["銊"],"rén rěn":["銋"],"shàn shuò":["銏"],"chì lì":["銐"],"xiǎn xǐ":["銑","铣"],"hóu xiàng":["銗"],"diào tiáo yáo":["銚"],"xiān kuò tiǎn guā":["銛","銽","铦"],"zhé niè":["銸"],"zhōng yōng":["銿"],"tōu tù dòu":["鋀"],"méi méng":["鋂"],"wàn jiǎn":["鋄","鎫"],"tǐng dìng":["鋌","铤"],"juān jiān cuān":["鋑"],"sī tuó":["鋖"],"juān xuān juàn":["鋗"],"wú huá wū":["鋘"],"zhuó chuò":["鋜"],"xíng xìng jīng":["鋞"],"jū jú":["鋦","锔"],"zuì niè":["鋷"],"yuān yuǎn wǎn wān":["鋺"],"gāng gàng":["鋼","钢"],zhuī:["錐","锥","騅","骓","鵻"],ā:["錒","锕"],"cuō chā":["鎈"],"suǒ sè":["鎍"],"yáo zú":["鎐"],"yè tà gé":["鎑"],"qiāng chēng":["鎗"],"gé lì":["鎘","镉","鬲"],"bī pī bì":["鎞"],"gǎo hào":["鎬"],"zú chuò":["鏃"],"xiū xiù":["鏅"],"shòu sōu":["鏉"],"dí dī":["鏑","镝"],"qiāo sǎn càn":["鏒"],"lù áo":["鏕"],"tāng táng":["鏜"],"jiàn zàn":["鏩"],"huì suì ruì":["鏸"],"qiǎng qiāng":["鏹","镪"],"sǎn xiàn sà":["鏾"],"jiǎn jiàn":["鐧","锏"],"dāng chēng":["鐺","铛"],"zuān zuàn":["鑽"],"sà xì":["钑"],"yào yuè":["钥"],"tǒu dǒu":["钭"],"zuàn zuān":["钻"],"qiān yán":["铅"],"pí pī":["铍"],"yáo diào tiáo":["铫"],"tāng tàng":["铴"],"pù pū":["铺"],"tán xiān":["锬"],"liù liú":["镏"],"hào gǎo":["镐"],"táng tāng":["镗"],"tán chán xín":["镡"],"huò shǎn":["閄"],"hàn bì":["閈","闬"],"kāng kàng":["閌","闶"],"xián jiàn jiān jiǎn":["閒"],"xiā xiǎ":["閕"],"xiǎ kě":["閜"],"biàn guān":["閞"],"hé gé":["閤","颌"],"hòng xiàng":["閧"],"sē xī":["閪"],"tíng tǐng":["閮"],"è yān":["閼","阏"],"hòng juǎn xiàng":["闂"],"bǎn pàn":["闆"],"dū shé":["闍","阇"],"què quē":["闕"],"tāng táng chāng":["闛"],"kàn hǎn":["闞","阚"],"xì sè tà":["闟"],"mēn mèn":["闷"],"quē què":["阙"],"yán diàn":["阽"],"ā ē":["阿"],"bēi pō pí":["陂"],"yàn yǎn":["隁"],"yú yáo shù":["隃"],"lóng lōng":["隆"],"duì zhuì":["隊"],"suí duò":["隋"],"gāi qí ái":["隑"],"huī duò":["隓","隳"],"wěi kuí":["隗"],"lì dài":["隸"],"zhuī cuī wéi":["隹"],"hè hú":["隺","鶮"],"jùn juàn":["隽","雋"],"nán nàn nuó":["难"],"què qiāo qiǎo":["雀"],"guàn huán":["雚"],"guī xī":["雟"],"sè xí":["雭"],án:["雸"],"wù méng":["雺"],tèng:["霯"],"lù lòu":["露"],mái:["霾"],"jìng liàng":["靚"],"gé jí":["革"],bǎ:["靶"],"yāng yàng":["鞅"],"gé tà sǎ":["鞈"],"biān yìng":["鞕"],"qiào shāo":["鞘"],"juān xuān":["鞙"],"shàng zhǎng":["鞝"],"pí bǐng bì bēi":["鞞"],la:["鞡"],"xiè dié":["鞢"],ēng:["鞥"],"móu mù":["鞪"],"bì bǐng":["鞸"],"mèi wà":["韎"],rǒu:["韖"],"shè xiè":["韘"],"yùn wēn":["韫"],"dùn dú":["頓","顿"],duǐ:["頧"],luō:["頱"],"bīn pín":["頻"],yóng:["顒","颙","鰫"],mān:["顢","颟"],"jǐng gěng":["颈"],"jié xié jiá":["颉"],"kē ké":["颏"],"pín bīn":["频"],"chàn zhàn":["颤"],"fēng fěng":["風","风"],"biāo diū":["颩"],"bá fú":["颰"],"sāo sōu":["颾"],"liù liáo":["飂"],"shí sì yì":["食"],"yǎng juàn":["飬"],"zhù tǒu":["飳"],"yí sì":["飴"],"zuò zé zhā":["飵"],tiè:["飻","餮"],"xiǎng náng":["饟"],"táng xíng":["饧"],"gē le":["饹"],"chā zha":["馇"],"náng nǎng":["馕"],"yūn wò":["馧"],"zhī shì":["馶"],"xìn jìn":["馸"],"kuài jué":["駃"],zǎng:["駔","驵"],"tái dài":["駘"],"xún xuān":["駨"],"liáng láng":["駺"],piàn:["騗","騙","骗","魸"],"dài tái":["骀"],"sāo sǎo":["骚"],"gǔ gū":["骨"],"bèi mó":["骳"],"xiāo qiāo":["骹"],"bǎng pǎng":["髈"],"bó jué":["髉"],"bì pǒ":["髲"],"máo méng":["髳"],"kuò yuè":["髺"],"bā bà":["魞","鲃"],"jì cǐ":["鮆"],"bó bà":["鮊"],"zhǎ zhà":["鮓","鲊"],"chóu dài":["鮘"],"luò gé":["鮥"],"guī xié wā kuí":["鮭"],"xiān xiǎn":["鮮","鲜"],"pū bū":["鯆"],"yì sī":["鯣"],"bà bó":["鲌"],"guī xié":["鲑"],"sāi xǐ":["鳃"],"niǎo diǎo":["鳥"],"diāo zhāo":["鳭"],"gān hàn yàn":["鳱"],"fū guī":["鳺"],"jiān qiān zhān":["鳽"],"hé jiè":["鶡"],"piān biǎn":["鶣"],"chuàn zhì":["鶨"],"cāng qiāng":["鶬"],"sǔn xùn":["鶽"],"biāo páo":["麃"],"zhù cū":["麆"],"jūn qún":["麇","麕"],chi:["麶"],"mó me":["麼"],"mó me ma":["麽"],"mí mǒ":["麿"],"dàn shèn":["黮"],"zhěn yān":["黰"],"dǎn zhǎn":["黵"],"miǎn mǐn měng":["黾"],hōu:["齁"],nàng:["齉"],"qí jì zī zhāi":["齐"],"yín kěn yǎn":["龂"],"yín kěn":["龈"],"gōng wò":["龏"],"guī jūn qiū":["龜","龟"],"kuí wā":["䖯"],lōu:["䁖"],"ōu qū":["𫭟"],"lóu lǘ":["𦝼"],"gǎ gā gá":["嘎"],"wā guà":["坬"],"zhǐ dǐ":["茋"],"gǒng hóng":["硔"],"yáo xiào":["滧"]},J1=new uX;Object.keys(BB).forEach(e=>{const t=BB[e];for(let n of t)J1.set(n,e)});const zB={这个:"zhè ge",成为:"chéng wéi",认为:"rèn wéi",作为:"zuò wéi",部分:"bù fen",要求:"yāo qiú",应该:"yīng gāi",增长:"zēng zhǎng",提供:"tí gōng",觉得:"jué de",任务:"rèn wu",那个:"nà ge",称为:"chēng wéi",为主:"wéi zhǔ",了解:"liǎo jiě",处理:"chǔ lǐ",皇上:"huáng shang",只要:"zhǐ yào",大量:"dà liàng",力量:"lì liàng",几乎:"jī hū",干部:"gàn bù",目的:"mù dì",行为:"xíng wéi",只见:"zhǐ jiàn",认识:"rèn shi",市长:"shì zhǎng",师父:"shī fu",调查:"diào chá",重新:"chóng xīn",分为:"fēn wéi",知识:"zhī shi",导弹:"dǎo dàn",质量:"zhì liàng",行款:"háng kuǎn",行列:"háng liè",行话:"háng huà",行业:"háng yè",隔行:"gé háng",在行:"zài háng",行家:"háng jia",内行:"nèi háng",外行:"wài háng",同行:"tóng háng",本行:"běn háng",行伍:"háng wǔ",洋行:"yáng háng",银行:"yín háng",商行:"shāng háng",支行:"zhī háng",总行:"zǒng háng",行情:"háng qíng",懂行:"dǒng háng",行规:"háng guī",行当:"háng dang",行货:"háng huò",太行:"tài háng",入行:"rù háng",中行:"zhōng háng",农行:"nóng háng",工行:"gōng háng",建行:"jiàn háng",各行:"gè háng",行号:"háng hào",行高:"háng gāo",行首:"háng shǒu",行尾:"háng wěi",行末:"háng mò",行长:"háng zhǎng",行距:"háng jù",换行:"huàn háng",行会:"háng huì",行辈:"háng bèi",行道:"háng dào",道行:"dào heng",参与:"cān yù",充分:"chōng fèn",尽管:"jǐn guǎn",生长:"shēng zhǎng",数量:"shù liàng",应当:"yīng dāng",院长:"yuàn zhǎng",强调:"qiáng diào",只能:"zhǐ néng",音乐:"yīn yuè",以为:"yǐ wéi",处于:"chǔ yú",部长:"bù zhǎng",蒙古:"měng gǔ",只有:"zhǐ yǒu",适当:"shì dàng",只好:"zhǐ hǎo",成长:"chéng zhǎng",高兴:"gāo xìng",不了:"bù liǎo",产量:"chǎn liàng",胖子:"pàng zi",显得:"xiǎn de",只是:"zhǐ shì",似的:"shì de",率领:"shuài lǐng",改为:"gǎi wéi",不禁:"bù jīn",成分:"chéng fèn",答应:"dā ying",少年:"shào nián",兴趣:"xìng qù",太监:"tài jian",休息:"xiū xi",校长:"xiào zhǎng",更新:"gēng xīn",合同:"hé tong",喝道:"hè dào",重庆:"chóng qìng",重建:"chóng jiàn",使得:"shǐ de",审查:"shěn chá",累计:"lěi jì",给予:"jǐ yǔ",极为:"jí wéi",冠军:"guàn jūn",仿佛:"fǎng fú",头发:"tóu fa",投降:"tóu xiáng",家长:"jiā zhǎng",仔细:"zǐ xì",要是:"yào shi",将领:"jiàng lǐng",含量:"hán liàng",更为:"gèng wéi",积累:"jī lěi",地处:"dì chǔ",县长:"xiàn zhǎng",少女:"shào nǚ",路上:"lù shang",只怕:"zhǐ pà",能量:"néng liàng",储量:"chǔ liàng",供应:"gōng yìng",挑战:"tiǎo zhàn",西藏:"xī zàng",记得:"jì de",总量:"zǒng liàng",当真:"dàng zhēn",将士:"jiàng shì",差别:"chā bié",较为:"jiào wéi",长老:"zhǎng lǎo",大夫:"dài fu",差异:"chā yì",懂得:"dǒng de",尽量:"jǐn liàng",模样:"mú yàng",的确:"dí què",为首:"wéi shǒu",便宜:"pián yi",更名:"gēng míng",石头:"shí tou",州长:"zhōu zhǎng",为止:"wéi zhǐ",漂亮:"piào liang",炮弹:"pào dàn",藏族:"zàng zú",角色:"jué sè",当作:"dàng zuò",尽快:"jǐn kuài",人为:"rén wéi",重复:"chóng fù",胡同:"hú tòng",差距:"chā jù",弟兄:"dì xiong",大将:"dà jiàng",睡觉:"shuì jiào",一觉:"yí jiào",团长:"tuán zhǎng",队长:"duì zhǎng",区长:"qū zhǎng",难得:"nán dé",丫头:"yā tou",会长:"huì zhǎng",弟弟:"dì di",王爷:"wáng ye",重量:"zhòng liàng",誉为:"yù wéi",家伙:"jiā huo",华山:"huà shān",椅子:"yǐ zi",流量:"liú liàng",长大:"zhǎng dà",勉强:"miǎn qiǎng",会计:"kuài jì",过分:"guò fèn",济南:"jǐ nán",调动:"diào dòng",燕京:"yān jīng",少将:"shào jiàng",中毒:"zhòng dú",晓得:"xiǎo de",变更:"biàn gēng",打更:"dǎ gēng",认得:"rèn de",苹果:"píng guǒ",念头:"niàn tou",挣扎:"zhēng zhá",三藏:"sān zàng",剥削:"bō xuē",丞相:"chéng xiàng",少量:"shǎo liàng",寻思:"xún si",夺得:"duó dé",干线:"gàn xiàn",呼吁:"hū yù",处罚:"chǔ fá",长官:"zhǎng guān",柏林:"bó lín",亲戚:"qīn qi",身分:"shēn fèn",胳膊:"gē bo",着手:"zhuó shǒu",炸弹:"zhà dàn",咳嗽:"ké sou",叶子:"yè zi",外长:"wài zhǎng",供给:"gōng jǐ",师长:"shī zhǎng",变量:"biàn liàng",应有:"yīng yǒu",下载:"xià zài",乐器:"yuè qì",间接:"jiàn jiē",底下:"dǐ xià",打扮:"dǎ bàn",子弹:"zǐ dàn",弹药:"dàn yào",热量:"rè liàng",削弱:"xuē ruò",骨干:"gǔ gàn",容量:"róng liàng",模糊:"mó hu",转动:"zhuàn dòng",称呼:"chēng hu",科长:"kē zhǎng",处置:"chǔ zhì",着重:"zhuó zhòng",着急:"zháo jí",强迫:"qiǎng pò",庭长:"tíng zhǎng",首相:"shǒu xiàng",喇嘛:"lǎ ma",镇长:"zhèn zhǎng",只管:"zhǐ guǎn",重重:"chóng chóng",免得:"miǎn de",着实:"zhuó shí",度假:"dù jià",真相:"zhēn xiàng",相貌:"xiàng mào",处分:"chǔ fèn",委屈:"wěi qu",为期:"wéi qī",伯伯:"bó bo",伯子:"bǎi zi",圈子:"quān zi",见识:"jiàn shi",笼罩:"lǒng zhào",与会:"yù huì",都督:"dū du",都市:"dū shì",成都:"chéng dū",首都:"shǒu dū",帝都:"dì dū",王都:"wáng dū",东都:"dōng dū",都护:"dū hù",都城:"dū chéng",建都:"jiàn dū",迁都:"qiān dū",故都:"gù dū",定都:"dìng dū",中都:"zhōng dū",六安:"lù ān",宰相:"zǎi xiàng",较量:"jiào liàng",对称:"duì chèn",总长:"zǒng zhǎng",相公:"xiàng gong",空白:"kòng bái",打量:"dǎ liang",水分:"shuǐ fèn",舌头:"shé tou",没收:"mò shōu",行李:"xíng li",判处:"pàn chǔ",散文:"sǎn wén",处境:"chǔ jìng",孙子:"sūn zi",拳头:"quán tou",打发:"dǎ fā",组长:"zǔ zhǎng",骨头:"gǔ tou",宁可:"nìng kě",更换:"gēng huàn",薄弱:"bó ruò",还原:"huán yuán",重修:"chóng xiū",重来:"chóng lái",只顾:"zhǐ gù",爱好:"ài hào",馒头:"mán tou",军长:"jūn zhǎng",首长:"shǒu zhǎng",厂长:"chǎng zhǎng",司长:"sī zhǎng",长子:"zhǎng zǐ",强劲:"qiáng jìng",恰当:"qià dàng",头儿:"tóu er",站长:"zhàn zhǎng",折腾:"zhē teng",相处:"xiāng chǔ",统率:"tǒng shuài",中将:"zhōng jiàng",命中:"mìng zhòng",名将:"míng jiàng",木头:"mù tou",动弹:"dòng tan",地壳:"dì qiào",干活:"gàn huó",少爷:"shào ye",水量:"shuǐ liàng",补给:"bǔ jǐ",尾巴:"wěi ba",来得:"lái de",好奇:"hào qí",钥匙:"yào shi",当做:"dàng zuò",沉着:"chén zhuó",哑巴:"yǎ ba",车子:"chē zi",上将:"shàng jiàng",恶心:"ě xīn",担子:"dàn zi",应届:"yīng jiè",主角:"zhǔ jué",运转:"yùn zhuǎn",兄长:"xiōng zhǎng",格式:"gé shì",正月:"zhēng yuè",营长:"yíng zhǎng",当成:"dàng chéng",女婿:"nǚ xu",咽喉:"yān hóu",重阳:"chóng yáng",化为:"huà wéi",吐蕃:"tǔ bō",钻进:"zuān jìn",乐队:"yuè duì",亮相:"liàng xiàng",被子:"bèi zi",舍得:"shě de",杉木:"shā mù",击中:"jī zhòng",排长:"pái zhǎng",假期:"jià qī",分量:"fèn liàng",数次:"shù cì",提防:"dī fáng",吆喝:"yāo he",查处:"chá chǔ",量子:"liàng zǐ",里头:"lǐ tou",调研:"diào yán",伺候:"cì hou",重申:"chóng shēn",枕头:"zhěn tou",拚命:"pīn mìng",社长:"shè zhǎng",归还:"guī huán",批量:"pī liàng",畜牧:"xù mù",点着:"diǎn zháo",甚为:"shèn wéi",小将:"xiǎo jiàng",着眼:"zhuó yǎn",处死:"chǔ sǐ",厌恶:"yàn wù",鼓乐:"gǔ yuè",树干:"shù gàn",秘鲁:"bì lǔ",大方:"dà fāng",外头:"wài tou",班长:"bān zhǎng",星宿:"xīng xiù",宁愿:"nìng yuàn",钦差:"qīn chāi",为数:"wéi shù",勾当:"gòu dàng",削减:"xuē jiǎn",间谍:"jiàn dié",埋怨:"mán yuàn",结实:"jiē shi",计量:"jì liáng",淹没:"yān mò",村长:"cūn zhǎng",连长:"lián zhǎng",自给:"zì jǐ",武将:"wǔ jiàng",温差:"wēn chā",直奔:"zhí bèn",供求:"gōng qiú",剂量:"jì liàng",道长:"dào zhǎng",泄露:"xiè lòu",王八:"wáng ba",切割:"qiē gē",间隔:"jiàn gé",一晃:"yì huǎng",长假:"cháng jià",令狐:"líng hú",为害:"wéi hài",句子:"jù zi",偿还:"cháng huán",疙瘩:"gē da",燕山:"yān shān",堵塞:"dǔ sè",夺冠:"duó guàn",扎实:"zhā shi",电荷:"diàn hè",看守:"kān shǒu",复辟:"fù bì",郁闷:"yù mèn",尽早:"jǐn zǎo",切断:"qiē duàn",指头:"zhǐ tou",为生:"wéi shēng",畜生:"chù sheng",切除:"qiē chú",着力:"zhuó lì",着想:"zhuó xiǎng",级差:"jí chā",投奔:"tóu bèn",棍子:"gùn zi",含糊:"hán hu",少妇:"shào fù",兴致:"xìng zhì",纳闷:"nà mèn",干流:"gàn liú",卷起:"juǎn qǐ",扇子:"shàn zi",更改:"gēng gǎi",笼络:"lǒng luò",喇叭:"lǎ ba",载荷:"zài hè",妥当:"tuǒ dàng",为难:"wéi nán",着陆:"zhuó lù",燕子:"yàn zi",干吗:"gàn má",白发:"bái fà",总得:"zǒng děi",夹击:"jiā jī",曝光:"bào guāng",曲调:"qǔ diào",相机:"xiàng jī",叫化:"jiào huà",角逐:"jué zhú",啊哟:"ā yō",载重:"zài zhòng",长辈:"zhǎng bèi",出差:"chū chāi",垛口:"duǒ kǒu",撇开:"piē kāi",厅长:"tīng zhǎng",组分:"zǔ fèn",误差:"wù chā",家当:"jiā dàng",传记:"zhuàn jì",个子:"gè zi",铺设:"pū shè",干事:"gàn shì",杆菌:"gǎn jūn",定量:"dìng liàng",运载:"yùn zài",会儿:"huì er",酋长:"qiú zhǎng",重返:"chóng fǎn",差额:"chā é",露面:"lòu miàn",钻研:"zuān yán",大城:"dài chéng",上当:"shàng dàng",销量:"xiāo liàng",作坊:"zuō fang",照相:"zhào xiàng",哎呀:"āi yā",调集:"diào jí",看中:"kàn zhòng",议长:"yì zhǎng",风筝:"fēng zheng",辟邪:"bì xié",空隙:"kòng xì",更迭:"gēng dié",偏差:"piān chā",声调:"shēng diào",适量:"shì liàng",屯子:"tún zi",无量:"wú liàng",空地:"kòng dì",调度:"diào dù",散射:"sǎn shè",创伤:"chuāng shāng",海参:"hǎi shēn",满载:"mǎn zài",重叠:"chóng dié",落差:"luò chā",单调:"dān diào",老将:"lǎo jiàng",人参:"rén shēn",间断:"jiàn duàn",重现:"chóng xiàn",夹杂:"jiā zá",调用:"diào yòng",萝卜:"luó bo",附着:"fù zhuó",应声:"yìng shēng",主将:"zhǔ jiàng",罪过:"zuì guo",咀嚼:"jǔ jué",为政:"wéi zhèng",过量:"guò liàng",乐曲:"yuè qǔ",负荷:"fù hè",枪弹:"qiāng dàn",悄然:"qiǎo rán",处方:"chǔ fāng",悄声:"qiǎo shēng",曲子:"qǔ zi",情调:"qíng diào",挑衅:"tiǎo xìn",代为:"dài wéi",了结:"liǎo jié",打中:"dǎ zhòng",酒吧:"jiǔ bā",懒得:"lǎn de",增量:"zēng liàng",衣着:"yī zhuó",部将:"bù jiàng",要塞:"yào sài",茶几:"chá jī",杠杆:"gàng gǎn",出没:"chū mò",鲜有:"xiǎn yǒu",间隙:"jiàn xì",重担:"zhòng dàn",重演:"chóng yǎn",重试:"chóng shì",应酬:"yìng chou",只当:"zhǐ dāng",毋宁:"wú nìng",包扎:"bāo zā",前头:"qián tou",卷烟:"juǎn yān",非得:"fēi děi",弹道:"dàn dào",杆子:"gān zi",门将:"mén jiàng",后头:"hòu tou",喝彩:"hè cǎi",暖和:"nuǎn huo",累积:"lěi jī",调遣:"diào qiǎn",倔强:"jué jiàng",宝藏:"bǎo zàng",丧事:"sāng shì",约莫:"yuē mo",纤夫:"qiàn fū",更替:"gēng tì",装载:"zhuāng zài",背包:"bēi bāo",帖子:"tiě zi",松散:"sōng sǎn",呼喝:"hū hè",可恶:"kě wù",自转:"zì zhuàn",供电:"gōng diàn",反省:"fǎn xǐng",坦率:"tǎn shuài",苏打:"sū dá",本分:"běn fèn",落得:"luò de",鄙薄:"bǐ bó",相间:"xiāng jiàn",单薄:"dān bó",混蛋:"hún dàn",贞观:"zhēn guān",附和:"fù hè",能耐:"néng nài",吓唬:"xià hu",未了:"wèi liǎo",引着:"yǐn zháo",抽调:"chōu diào",沙子:"shā zi",席卷:"xí juǎn",标的:"biāo dì",别扭:"biè niu",思量:"sī liang",喝采:"hè cǎi",论语:"lún yǔ",盖子:"gài zi",分外:"fèn wài",弄堂:"lòng táng",乐舞:"yuè wǔ",雨量:"yǔ liàng",毛发:"máo fà",差遣:"chāi qiǎn",背负:"bēi fù",转速:"zhuàn sù",声乐:"shēng yuè",夹攻:"jiā gōng",供水:"gōng shuǐ",主干:"zhǔ gàn",惩处:"chéng chǔ",长相:"zhǎng xiàng",公差:"gōng chāi",榴弹:"liú dàn",省得:"shěng de",条子:"tiáo zi",重围:"chóng wéi",阻塞:"zǔ sè",劲风:"jìng fēng",纠葛:"jiū gé",颠簸:"diān bǒ",点中:"diǎn zhòng",重创:"zhòng chuāng",姥姥:"lǎo lao",迷糊:"mí hu",公家:"gōng jia",几率:"jī lǜ",苦闷:"kǔ mèn",度量:"dù liàng",差错:"chā cuò",暑假:"shǔ jià",参差:"cēn cī",搭载:"dā zài",助长:"zhù zhǎng",相称:"xiāng chèn",红晕:"hóng yùn",舍命:"shě mìng",喜好:"xǐ hào",列传:"liè zhuàn",劲敌:"jìng dí",蛤蟆:"há ma",请假:"qǐng jià",钉子:"dīng zi",沉没:"chén mò",高丽:"gāo lí",休假:"xiū jià",无为:"wú wéi",巴结:"bā jie",了得:"liǎo dé",变相:"biàn xiàng",核弹:"hé dàn",亲家:"qìng jia",承载:"chéng zài",喝问:"hè wèn",还击:"huán jī",交还:"jiāo huán",将令:"jiàng lìng",单于:"chán yú",空缺:"kòng quē",绿林:"lù lín",胆量:"dǎn liàng",执着:"zhí zhuó",低调:"dī diào",闭塞:"bì sè",轻薄:"qīng bó",得当:"dé dàng",占卜:"zhān bǔ",扫帚:"sào zhou",龟兹:"qiū cí",年长:"nián zhǎng",外传:"wài zhuàn",头子:"tóu zi",裁缝:"cái feng",礼乐:"lǐ yuè",血泊:"xuè pō",散乱:"sǎn luàn",动量:"dòng liàng",倒腾:"dǎo teng",取舍:"qǔ shě",咱家:"zán jiā",长发:"cháng fà",爪哇:"zhǎo wā",弹壳:"dàn ké",省悟:"xǐng wù",嚷嚷:"rāng rang",连累:"lián lèi",应得:"yīng dé",族长:"zú zhǎng",柜子:"guì zi",擂鼓:"léi gǔ",眩晕:"xuàn yùn",调配:"tiáo pèi",躯干:"qū gàn",差役:"chāi yì",坎坷:"kǎn kě",少儿:"shào ér",乐团:"yuè tuán",养分:"yǎng fèn",退还:"tuì huán",格调:"gé diào",语调:"yǔ diào",音调:"yīn diào",乐府:"yuè fǔ",古朴:"gǔ pǔ",打点:"dǎ diǎn",差使:"chāi shǐ",匀称:"yún chèn",瘦削:"shòu xuē",膏药:"gāo yao",吞没:"tūn mò",调任:"diào rèn",散居:"sǎn jū",上头:"shàng tóu",风靡:"fēng mǐ",放假:"fàng jià",估量:"gū liang",失当:"shī dàng",中弹:"zhòng dàn",妄为:"wàng wéi",长者:"zhǎng zhě",起哄:"qǐ hòng",末了:"mò liǎo",相声:"xiàng sheng",校正:"jiào zhèng",劝降:"quàn xiáng",矢量:"shǐ liàng",沉闷:"chén mèn",给与:"jǐ yǔ",解法:"jiě fǎ",塞外:"sài wài",将校:"jiàng xiào",嗜好:"shì hào",没落:"mò luò",朴刀:"pō dāo",片子:"piān zi",切削:"qiē xiāo",弹丸:"dàn wán",稀薄:"xī bó",亏得:"kuī dé",间歇:"jiàn xiē",翘首:"qiáo shǒu",色调:"sè diào",处决:"chǔ jué",表率:"biǎo shuài",尺子:"chǐ zi",招降:"zhāo xiáng",称职:"chèn zhí",斗篷:"dǒu peng",铺子:"pù zi",底子:"dǐ zi",负载:"fù zài",干警:"gàn jǐng",倒数:"dào shǔ",将官:"jiàng guān",锄头:"chú tou",归降:"guī xiáng",疟疾:"nüè ji",唠叨:"láo dao",限量:"xiàn liàng",屏息:"bǐng xī",重逢:"chóng féng",器乐:"qì yuè",氢弹:"qīng dàn",脖颈:"bó gěng",妃子:"fēi zi",处事:"chǔ shì",参量:"cān liàng",轻率:"qīng shuài",缥缈:"piāo miǎo",中奖:"zhòng jiǎng",才干:"cái gàn",施舍:"shī shě",卷子:"juàn zi",游说:"yóu shuì",巷子:"xiàng zi",膀胱:"páng guāng",切勿:"qiè wù",看管:"kān guǎn",风头:"fēng tou",精干:"jīng gàn",高差:"gāo chā",恐吓:"kǒng hè",扁担:"biǎn dàn",给养:"jǐ yǎng",格子:"gé zi",供需:"gōng xū",反差:"fǎn chā",飞弹:"fēi dàn",微薄:"wēi bó",发型:"fà xíng",即兴:"jí xìng",攒动:"cuán dòng",间或:"jiàn huò",浅薄:"qiǎn bó",乐章:"yuè zhāng",顺差:"shùn chā",调子:"diào zi",相位:"xiàng wèi",转子:"zhuàn zǐ",劲旅:"jìng lǚ",咔嚓:"kā chā",了事:"liǎo shì",转悠:"zhuàn you",当铺:"dàng pù",爪子:"zhuǎ zi",单子:"dān zi",好战:"hào zhàn",燕麦:"yàn mài",只许:"zhǐ xǔ",干练:"gàn liàn",女将:"nǚ jiàng",酒量:"jiǔ liàng",划船:"huá chuán",伎俩:"jì liǎng",挑拨:"tiǎo bō",少校:"shào xiào",着落:"zhuó luò",憎恶:"zēng wù",刻薄:"kè bó",要挟:"yāo xié",用处:"yòng chu",还手:"huán shǒu",模具:"mú jù",执著:"zhí zhuó",喝令:"hè lìng",保长:"bǎo zhǎng",吸着:"xī zhe",症结:"zhēng jié",公转:"gōng zhuàn",校勘:"jiào kān",重提:"chóng tí",扫兴:"sǎo xìng",铺盖:"pū gài",长史:"zhǎng shǐ",差价:"chā jià",压根:"yà gēn",怔住:"zhèng zhù",应允:"yīng yǔn",切入:"qiē rù",战将:"zhàn jiàng",年少:"nián shào",舍身:"shě shēn",执拗:"zhí niù",处世:"chǔ shì",中风:"zhòng fēng",等量:"děng liàng",放量:"fàng liàng",腔调:"qiāng diào",老少:"lǎo shào",没入:"mò rù",瓜葛:"guā gé",将帅:"jiàng shuài",车载:"chē zài",窝囊:"wō nang",长进:"zhǎng jìn",可汗:"kè hán",并州:"bīng zhōu",供销:"gōng xiāo",切片:"qiē piàn",差事:"chāi shì",知会:"zhī hui",鹰爪:"yīng zhǎo",处女:"chǔ nǚ",切磋:"qiē cuō",日头:"rì tou",押解:"yā jiè",滋长:"zī zhǎng",道观:"dào guàn",脚色:"jué sè",当量:"dāng liàng",婆家:"pó jia",缘分:"yuán fèn",空闲:"kòng xián",好色:"hào sè",怒喝:"nù hè",笼统:"lǒng tǒng",边塞:"biān sài",何曾:"hé céng",重合:"chóng hé",零散:"líng sǎn",轰隆:"hōng lōng",化子:"huà zi",内蒙:"nèi měng",数落:"shǔ luò",逆差:"nì chā",牟利:"móu lì",栅栏:"zhà lan",中标:"zhòng biāo",调档:"diào dàng",佝偻:"gōu lóu",场子:"chǎng zi",甲壳:"jiǎ qiào",重温:"chóng wēn",炮制:"páo zhì",返还:"fǎn huán",自传:"zì zhuàn",高调:"gāo diào",殷红:"yān hóng",固着:"gù zhuó",强求:"qiǎng qiú",本相:"běn xiàng",骄横:"jiāo hèng",草率:"cǎo shuài",气闷:"qì mèn",着色:"zhuó sè",宁肯:"nìng kěn",兴头:"xìng tou",拘泥:"jū nì",夹角:"jiā jiǎo",发髻:"fà jì",猛将:"měng jiàng",约摸:"yuē mo",拖累:"tuō lěi",呢绒:"ní róng",钻探:"zuān tàn",夹层:"jiā céng",落魄:"luò pò",巷道:"hàng dào",运量:"yùn liàng",解闷:"jiě mèn",空儿:"kòng er",估摸:"gū mo",好客:"hào kè",钻孔:"zuān kǒng",糊弄:"hù nòng",荥阳:"xíng yáng",烦闷:"fán mèn",仓卒:"cāng cù",分叉:"fēn chà",厂子:"chǎng zi",小调:"xiǎo diào",少阳:"shào yáng",受降:"shòu xiáng",染坊:"rǎn fáng",胳臂:"gē bei",将门:"jiàng mén",模板:"mú bǎn",配给:"pèi jǐ",为伍:"wéi wǔ",跟头:"gēn tou",划算:"huá suàn",累赘:"léi zhui",哄笑:"hōng xiào",晕眩:"yūn xuàn",干掉:"gàn diào",缝制:"féng zhì",难处:"nán chù",着意:"zhuó yì",蛮横:"mán hèng",奇数:"jī shù",短发:"duǎn fà",生还:"shēng huán",还清:"huán qīng",看护:"kān hù",直率:"zhí shuài",奏乐:"zòu yuè",载客:"zài kè",专横:"zhuān hèng",湮没:"yān mò",空格:"kòng gé",铺垫:"pū diàn",良将:"liáng jiàng",哗啦:"huā lā",散漫:"sǎn màn",脱发:"tuō fà",送还:"sòng huán",埋没:"mái mò",累及:"lěi jí",薄雾:"bó wù",调离:"diào lí",舌苔:"shé tāi",机长:"jī zhǎng",栓塞:"shuān sè",配角:"pèi jué",切口:"qiē kǒu",创口:"chuāng kǒu",哈欠:"hā qian",实弹:"shí dàn",铺平:"pū píng",哈达:"hǎ dá",懒散:"lǎn sǎn",实干:"shí gàn",填空:"tián kòng",刁钻:"diāo zuān",乐师:"yuè shī",量变:"liàng biàn",诱降:"yòu xiáng",搪塞:"táng sè",征调:"zhēng diào",夹道:"jiā dào",干咳:"gān ké",止咳:"zhǐ ké",乐工:"yuè gōng",划过:"huá guò",着火:"zháo huǒ",更正:"gēng zhèng",给付:"jǐ fù",空子:"kòng zi",哪吒:"né zhā",正着:"zhèng zháo",刷子:"shuā zi",丧葬:"sāng zàng",夹带:"jiā dài",安分:"ān fèn",中意:"zhòng yì",长孙:"zhǎng sūn",校订:"jiào dìng",卷曲:"juǎn qū",载运:"zài yùn",投弹:"tóu dàn",柞蚕:"zuò cán",份量:"fèn liàng",调换:"diào huàn",了然:"liǎo rán",咧嘴:"liě zuǐ",典当:"diǎn dàng",寒假:"hán jià",长兄:"zhǎng xiōng",给水:"jǐ shuǐ",须发:"xū fà",枝干:"zhī gàn",属相:"shǔ xiàng",哄抢:"hōng qiǎng",刻划:"kè huà",塞子:"sāi zi",单干:"dān gàn",还乡:"huán xiāng",兆头:"zhào tou",寺观:"sì guàn",督率:"dū shuài",啊哈:"ā ha",割舍:"gē shě",抹布:"mā bù",好恶:"hào wù",下处:"xià chǔ",消长:"xiāo zhǎng",离间:"lí jiàn",准头:"zhǔn tou",校对:"jiào duì",什物:"shí wù",番禺:"pān yú",佛爷:"fó ye",吗啡:"mǎ fēi",盐分:"yán fèn",虎将:"hǔ jiàng",薄荷:"bò he",独处:"dú chǔ",空位:"kòng wèi",铺路:"pū lù",乌拉:"wū lā",调回:"diào huí",来头:"lái tou",闲散:"xián sǎn",胶卷:"jiāo juǎn",冒失:"mào shi",干劲:"gàn jìn",弦乐:"xián yuè",相国:"xiàng guó",丹参:"dān shēn",助兴:"zhù xìng",铺开:"pū kāi",次长:"cì zhǎng",发卡:"fà qiǎ",拮据:"jié jū",刹车:"shā chē",生发:"shēng fà",重播:"chóng bō",缝合:"féng hé",音量:"yīn liàng",少尉:"shào wèi",冲压:"chòng yā",苍劲:"cāng jìng",厚薄:"hòu báo",威吓:"wēi hè",外相:"wài xiàng",呼号:"hū háo",着迷:"zháo mí",挑担:"tiāo dàn",纹路:"wén lù",还俗:"huán sú",强横:"qiáng hèng",着数:"zhāo shù",降顺:"xiáng shùn",挑明:"tiǎo míng",眯缝:"mī feng",分内:"fèn nèi",更衣:"gēng yī",软和:"ruǎn huo",尽兴:"jìn xìng",号子:"hào zi",爪牙:"zhǎo yá",败将:"bài jiàng",猜中:"cāi zhòng",结扎:"jié zā",没空:"méi kòng",夹缝:"jiā fèng",拾掇:"shí duo",掺和:"chān huo",簸箕:"bò ji",电量:"diàn liàng",荷载:"hè zǎi",调式:"diào shì",处身:"chǔ shēn",打手:"dǎ shǒu",弹弓:"dàn gōng",横蛮:"hèng mán",能干:"néng gàn",校点:"jiào diǎn",加载:"jiā zài",干校:"gàn xiào",哄传:"hōng chuán",校注:"jiào zhù",淤塞:"yū sè",马扎:"mǎ zhá",月氏:"yuè zhī",高干:"gāo gàn",经传:"jīng zhuàn",曾孙:"zēng sūn",好斗:"hào dòu",关卡:"guān qiǎ",逃奔:"táo bèn",磨蹭:"mó ceng",牟取:"móu qǔ",颤栗:"zhàn lì",蚂蚱:"mà zha",撮合:"cuō he",趔趄:"liè qie",摔打:"shuāi dǎ",台子:"tái zi",分得:"fēn de",粘着:"nián zhuó",采邑:"cài yì",散装:"sǎn zhuāng",婀娜:"ē nuó",兴味:"xìng wèi",行头:"xíng tou",气量:"qì liàng",调运:"diào yùn",处治:"chǔ zhì",乐音:"yuè yīn",充塞:"chōng sè",恫吓:"dòng hè",论调:"lùn diào",相中:"xiāng zhòng",民乐:"mín yuè",炮仗:"pào zhang",丧服:"sāng fú",骁将:"xiāo jiàng",量刑:"liàng xíng",缝补:"féng bǔ",财会:"cái kuài",大干:"dà gàn",历数:"lì shǔ",校场:"jiào chǎng",塞北:"sài běi",识相:"shí xiàng",辱没:"rǔ mò",鲜亮:"xiān liàng",语塞:"yǔ sè",露脸:"lòu liǎn",凉快:"liáng kuai",腰杆:"yāo gǎn",溜达:"liū da",嘎嘎:"gā gā",公干:"gōng gàn",桔梗:"jié gěng",挑逗:"tiǎo dòu",看门:"kān mén",乐歌:"yuè gē",拓片:"tà piàn",挑动:"tiǎo dòng",准将:"zhǔn jiàng",遒劲:"qiú jìng",磨坊:"mò fáng",逶迤:"wēi yí",搅和:"jiǎo huo",摩挲:"mó suō",作弄:"zuò nòng",苗头:"miáo tou",打颤:"dǎ zhàn",大藏:"dà zàng",畜牲:"chù shēng",勾搭:"gōu da",树荫:"shù yīn",树杈:"shù chà",铁杆:"tiě gǎn",将相:"jiàng xiàng",份子:"fèn zi",视差:"shì chā",绿荫:"lǜ yīn",枪杆:"qiāng gǎn",缝纫:"féng rèn",愁闷:"chóu mèn",点将:"diǎn jiàng",华佗:"huà tuó",劲射:"jìng shè",箱笼:"xiāng lǒng",终了:"zhōng liǎo",鬓发:"bìn fà",结巴:"jiē ba",苦干:"kǔ gàn",看家:"kān jiā",正旦:"zhēng dàn",中肯:"zhòng kěn",厦门:"xià mén",东莞:"dōng guǎn",食量:"shí liàng",宫调:"gōng diào",间作:"jiàn zuò",弹片:"dàn piàn",差池:"chā chí",漂白:"piǎo bái",杠子:"gàng zi",调处:"tiáo chǔ",好动:"hào dòng",转炉:"zhuàn lú",屏气:"bǐng qì",夹板:"jiā bǎn",哀乐:"āi yuè",干道:"gàn dào",苦处:"kǔ chù",劈柴:"pǐ chái",长势:"zhǎng shì",天华:"tiān huá",共处:"gòng chǔ",校验:"jiào yàn",出塞:"chū sài",磨盘:"mò pán",萎靡:"wěi mǐ",奔丧:"bēn sāng",唱和:"chàng hè",大调:"dà diào",非分:"fēi fèn",钻营:"zuān yíng",夹子:"jiā zi",超载:"chāo zài",更始:"gēng shǐ",铃铛:"líng dang",披散:"pī sàn",发还:"fā huán",转轮:"zhuàn lún",横财:"hèng cái",泡桐:"pāo tóng",抛撒:"pāo sǎ",天呀:"tiān yā",糊糊:"hū hu",躯壳:"qū qiào",通量:"tōng liàng",奉还:"fèng huán",午觉:"wǔ jiào",闷棍:"mèn gùn",浪头:"làng tou",砚台:"yàn tái",油坊:"yóu fáng",学长:"xué zhǎng",过载:"guò zài",笔调:"bǐ diào",衣被:"yī bèi",畜产:"xù chǎn",调阅:"diào yuè",蛮干:"mán gàn",曾祖:"zēng zǔ",提干:"tí gàn",变调:"biàn diào",覆没:"fù mò",模子:"mú zi",乐律:"yuè lǜ",称心:"chèn xīn",木杆:"mù gān",重印:"chóng yìn",自省:"zì xǐng",提调:"tí diào",看相:"kàn xiàng",芋头:"yù tou",下切:"xià qiē",塞上:"sài shàng",铺张:"pū zhāng",藤蔓:"téng wàn",薄幸:"bó xìng",解数:"xiè shù",褪去:"tuì qù",霰弹:"xiàn dàn",柚木:"yóu mù",痕量:"hén liàng",雅乐:"yǎ yuè",号哭:"háo kū",诈降:"zhà xiáng",猪圈:"zhū juàn",咋舌:"zé shé",铣床:"xǐ chuáng",防弹:"fáng dàn",健将:"jiàn jiàng",丽水:"lí shuǐ",削发:"xuē fà",空当:"kòng dāng",多相:"duō xiàng",鲜见:"xiǎn jiàn",划桨:"huá jiǎng",载波:"zài bō",跳蚤:"tiào zao",俏皮:"qiào pí",吧嗒:"bā dā",结发:"jié fà",了断:"liǎo duàn",同调:"tóng diào",石磨:"shí mò",时差:"shí chā",鼻塞:"bí sè",挑子:"tiāo zi",推磨:"tuī mò",武侯:"wǔ hóu",抹煞:"mǒ shā",调转:"diào zhuǎn",籍没:"jí mò",还债:"huán zhài",调演:"diào yǎn",分划:"fēn huá",奇偶:"jī ǒu",断喝:"duàn hè",闷雷:"mèn léi",狼藉:"láng jí",饭量:"fàn liàng",还礼:"huán lǐ",转调:"zhuǎn diào",星相:"xīng xiàng",手相:"shǒu xiàng",配乐:"pèi yuè",盖头:"gài tou",连杆:"lián gǎn",簿记:"bù jì",刀把:"dāo bà",量词:"liàng cí",名角:"míng jué",步调:"bù diào",校本:"jiào běn",账簿:"zhàng bù",隽永:"juàn yǒng",稍为:"shāo wéi",易传:"yì zhuàn",乐谱:"yuè pǔ",牵累:"qiān lěi",答理:"dā li",喝斥:"hè chì",吟哦:"yín é",干渠:"gàn qú",海量:"hǎi liàng",精当:"jīng dàng",着床:"zhuó chuáng",月相:"yuè xiàng",庶几:"shù jī",宫观:"gōng guàn",论处:"lùn chǔ",征辟:"zhēng bì",厚朴:"hòu pò",介壳:"jiè qiào",吭哧:"kēng chī",咯血:"kǎ xiě",铺陈:"pū chén",重生:"chóng shēng",乐理:"yuè lǐ",哀号:"āi háo",藏历:"zàng lì",刚劲:"gāng jìng",削平:"xuē píng",浓荫:"nóng yīn",城垛:"chéng duǒ",当差:"dāng chāi",正传:"zhèng zhuàn",并处:"bìng chǔ",创面:"chuāng miàn",旦角:"dàn jué",薄礼:"bó lǐ",晃荡:"huàng dang",臊子:"sào zi",家什:"jiā shí",闷头:"mēn tóu",美发:"měi fà",度数:"dù shu",着凉:"zháo liáng",闯将:"chuǎng jiàng",几案:"jī àn",姘头:"pīn tou",差数:"chā shù",散碎:"sǎn suì",壅塞:"yōng sè",寒颤:"hán zhàn",牵强:"qiān qiǎng",无间:"wú jiàn",轮转:"lún zhuàn",号叫:"háo jiào",铺排:"pū pái",降伏:"xiáng fú",轧钢:"zhá gāng",东阿:"dōng ē",病假:"bìng jià",累加:"lěi jiā",梗塞:"gěng sè",弹夹:"dàn jiā",钻心:"zuān xīn",晃眼:"huǎng yǎn",魔爪:"mó zhǎo",标量:"biāo liàng",憋闷:"biē mèn",猜度:"cāi duó",处士:"chǔ shì",官差:"guān chāi",讨还:"tǎo huán",长门:"cháng mén",馏分:"liú fēn",里弄:"lǐ lòng",色相:"sè xiàng",雅兴:"yǎ xìng",角力:"jué lì",弹坑:"dàn kēng",枝杈:"zhī chà",夹具:"jiā jù",处刑:"chǔ xíng",悍将:"hàn jiàng",好学:"hào xué",好好:"hǎo hǎo",银发:"yín fà",扫把:"sào bǎ",法相:"fǎ xiàng",贵干:"guì gàn",供气:"gōng qì",空余:"kòng yú",捆扎:"kǔn zā",瘠薄:"jí bó",浆糊:"jiàng hu",嘎吱:"gā zhī",调令:"diào lìng",法帖:"fǎ tiè",淋病:"lìn bìng",调派:"diào pài",转盘:"zhuàn pán",供稿:"gōng gǎo",差官:"chāi guān",忧闷:"yōu mèn",教长:"jiào zhǎng",重唱:"chóng chàng",酒兴:"jiǔ xìng",乐坛:"yuè tán",花呢:"huā ní",叱喝:"chì hè",膀臂:"bǎng bì",得空:"dé kòng",转圈:"zhuàn quān",横暴:"hèng bào",哄抬:"hōng tái",引吭:"yǐn háng",载货:"zài huò",中计:"zhòng jì",官长:"guān zhǎng",相面:"xiàng miàn",看头:"kàn tou",盼头:"pàn tou",意兴:"yì xìng",军乐:"jūn yuè",累次:"lěi cì",骨嘟:"gǔ dū",燕赵:"yān zhào",报丧:"bào sāng",弥撒:"mí sa",挨斗:"ái dòu",扁舟:"piān zhōu",丑角:"chǒu jué",吊丧:"diào sāng",强将:"qiáng jiàng",重奏:"chóng zòu",发辫:"fà biàn",着魔:"zháo mó",着法:"zhāo fǎ",盛放:"shèng fàng",填塞:"tián sè",凶横:"xiōng hèng",稽首:"qǐ shǒu",碑帖:"bēi tiè",冲量:"chōng liàng",发菜:"fà cài",假发:"jiǎ fà",翻卷:"fān juǎn",小量:"xiǎo liàng",胶着:"jiāo zhuó",里子:"lǐ zi",调调:"diào diao",散兵:"sǎn bīng",高挑:"gāo tiǎo",播撒:"bō sǎ",夹心:"jiā xīn",扇动:"shān dòng",叨扰:"tāo rǎo",霓裳:"ní cháng",捻子:"niǎn zi",弥缝:"mí féng",撒布:"sǎ bù",场院:"cháng yuàn",省亲:"xǐng qīn",提拉:"tí lā",惯量:"guàn liàng",强逼:"qiáng bī",强征:"qiáng zhēng",晕车:"yùn chē",数道:"shù dào",带累:"dài lèi",拓本:"tà běn",嫌恶:"xián wù",宿将:"sù jiàng",龟裂:"jūn liè",缠夹:"chán jiā",发式:"fà shì",隔扇:"gé shàn",天分:"tiān fèn",癖好:"pǐ hào",四通:"sì tōng",白术:"bái zhú",划伤:"huá shāng",角斗:"jué dòu",听差:"tīng chāi",岁差:"suì chā",丧礼:"sāng lǐ",脉脉:"mò mò",削瘦:"xuē shòu",撒播:"sǎ bō",莎草:"suō cǎo",犍为:"qián wéi",调头:"diào tóu",龙卷:"lóng juǎn",外调:"wài diào",字帖:"zì tiè",卷发:"juǎn fà",揣度:"chuǎi duó",洋相:"yáng xiàng",散光:"sǎn guāng",骨碌:"gū lu",薄命:"bó mìng",笼头:"lóng tóu",咽炎:"yān yán",碌碡:"liù zhou",片儿:"piàn er",纤手:"qiàn shǒu",散体:"sǎn tǐ",内省:"nèi xǐng",强留:"qiáng liú",解送:"jiè sòng",反间:"fǎn jiàn",少壮:"shào zhuàng",留空:"liú kōng",告假:"gào jià",咳血:"ké xuè",薄暮:"bó mù",铺轨:"pū guǐ",磨削:"mó xuē",治丧:"zhì sāng",叉子:"chā zi",哄动:"hōng dòng",蛾子:"é zi",出落:"chū luò",股长:"gǔ zhǎng",贵处:"guì chù",还魂:"huán hún",例假:"lì jià",刹住:"shā zhù",身量:"shēn liàng",同好:"tóng hào",模量:"mó liàng",更生:"gēng shēng",服丧:"fú sāng",率直:"shuài zhí",字模:"zì mú",散架:"sǎn jià",答腔:"dā qiāng",交恶:"jiāo wù",薄情:"bó qíng",眼泡:"yǎn pāo",袅娜:"niǎo nuó",草垛:"cǎo duò",冲劲:"chòng jìn",呢喃:"ní nán",切中:"qiè zhòng",挑灯:"tiǎo dēng",还愿:"huán yuàn",激将:"jī jiàng",更鼓:"gēng gǔ",没药:"mò yào",败兴:"bài xìng",切面:"qiē miàn",散户:"sǎn hù",累进:"lěi jìn",背带:"bēi dài",秤杆:"chèng gǎn",碾坊:"niǎn fáng",簿子:"bù zi",扳手:"bān shǒu",铅山:"yán shān",儒将:"rú jiàng",重光:"chóng guāng",剪发:"jiǎn fà",长上:"zhǎng shàng",小传:"xiǎo zhuàn",压轴:"yā zhòu",弱冠:"ruò guàn",花卷:"huā juǎn",横祸:"hèng huò",夹克:"jiā kè",光晕:"guāng yùn",披靡:"pī mǐ",对调:"duì diào",夹持:"jiā chí",空额:"kòng é",平调:"píng diào",铺床:"pū chuáng",丧钟:"sāng zhōng",作乐:"zuò lè",少府:"shào fǔ",数数:"shuò shuò",奔头:"bèn tou",进给:"jìn jǐ",率性:"shuài xìng",乐子:"lè zi",绑扎:"bǎng zā",挑唆:"tiǎo suō",漂洗:"piǎo xǐ",夹墙:"jiā qiáng",咳喘:"ké chuǎn",乜斜:"miē xie",错处:"cuò chù",闷酒:"mèn jiǔ",时调:"shí diào",重孙:"chóng sūn",经幢:"jīng chuáng",圩场:"xū chǎng",调门:"diào mén",花头:"huā tóu",划拉:"huá la",套色:"tào shǎi",粗率:"cū shuài",相率:"xiāng shuài",款识:"kuǎn zhì",吁请:"yù qǐng",荫蔽:"yīn bì",文蛤:"wén gé",嘀嗒:"dī dā",调取:"diào qǔ",交差:"jiāo chāi",落子:"luò zǐ",相册:"xiàng cè",絮叨:"xù dao",落发:"luò fà",异相:"yì xiàng",浸没:"jìn mò",角抵:"jué dǐ",卸载:"xiè zài",春卷:"chūn juǎn",扎挣:"zhá zheng",畜养:"xù yǎng",吡咯:"bǐ luò",垛子:"duò zi",恶少:"è shào",发际:"fà jì",红苕:"hóng sháo",糨糊:"jiàng hu",哭丧:"kū sāng",稍息:"shào xī",晕船:"yùn chuán",校样:"jiào yàng",外差:"wài chā",脚爪:"jiǎo zhǎo",铺展:"pū zhǎn",芫荽:"yán sui",夹紧:"jiā jǐn",尿泡:"suī pào",丧乱:"sāng luàn",凶相:"xiōng xiàng",华发:"huá fà",打场:"dǎ cháng",云量:"yún liàng",正切:"zhèng qiē",划拳:"huá quán",划艇:"huá tǐng",评传:"píng zhuàn",拉纤:"lā qiàn",句读:"jù dòu",散剂:"sǎn jì",骨殖:"gǔ shi",塞音:"sè yīn",铺叙:"pū xù",阏氏:"yān zhī",冷颤:"lěng zhàn",煞住:"shā zhù",少男:"shào nán",管乐:"guǎn yuè",号啕:"háo táo",纳降:"nà xiáng",拥塞:"yōng sè",万乘:"wàn shèng",杆儿:"gǎn ér",葛藤:"gé téng",簿籍:"bù jí",皮夹:"pí jiā",校准:"jiào zhǔn",允当:"yǔn dàng",器量:"qì liàng",选调:"xuǎn diào",扮相:"bàn xiàng",干才:"gàn cái",基干:"jī gàn",割切:"gē qiē",国乐:"guó yuè",卡壳:"qiǎ ké",辟谷:"bì gǔ",磨房:"mò fáng",咿呀:"yī yā",芥末:"jiè mo",薄技:"bó jì",产假:"chǎn jià",诗兴:"shī xìng",重出:"chóng chū",转椅:"zhuàn yǐ",酌量:"zhuó liang",簿册:"bù cè",藏青:"zàng qīng",的士:"dī shì",调人:"diào rén",解元:"jiè yuán",茎干:"jīng gàn",巨量:"jù liàng",榔头:"láng tou",率真:"shuài zhēn",喷香:"pèn xiāng",锁钥:"suǒ yuè",虾蟆:"há má",相图:"xiàng tú",兴会:"xìng huì",灶头:"zào tóu",重婚:"chóng hūn",钻洞:"zuān dòng",忖度:"cǔn duó",党参:"dǎng shēn",调温:"diào wēn",杆塔:"gān tǎ",葛布:"gé bù",拱券:"gǒng xuàn",夹生:"jiā shēng",露馅:"lòu xiàn",恰切:"qià qiè",散见:"sǎn jiàn",哨卡:"shào qiǎ",烫发:"tàng fà",体量:"tǐ liàng",挺括:"tǐng kuò",系带:"jì dài",相士:"xiàng shì",羊圈:"yáng juàn",转矩:"zhuàn jǔ",吧台:"bā tái",苍术:"cāng zhú",菲薄:"fěi bó",蛤蚧:"gé jiè",蛤蜊:"gé lí",瓜蔓:"guā wàn",怪相:"guài xiàng",临帖:"lín tiè",女红:"nǚ gōng",刨床:"bào chuáng",翘楚:"qiáo chǔ",数九:"shǔ jiǔ",谈兴:"tán xìng",雄劲:"xióng jìng",扎染:"zā rǎn",遮荫:"zhē yīn",周正:"zhōu zhèng",赚头:"zhuàn tou",扒手:"pá shǒu",搀和:"chān huo",诚朴:"chéng pǔ",肚量:"dù liàng",干结:"gān jié",工尺:"gōng chě",家累:"jiā lěi",曲水:"qū shuǐ",沙参:"shā shēn",挑花:"tiǎo huā",阿门:"ā mén",背篓:"bēi lǒu",瘪三:"biē sān",裁处:"cái chǔ",创痛:"chuāng tòng",福相:"fú xiàng",更动:"gēng dòng",豪兴:"háo xìng",还阳:"huán yáng",还嘴:"huán zuǐ",借调:"jiè diào",卷云:"juǎn yún",流弹:"liú dàn",想头:"xiǎng tou",削价:"xuē jià",校阅:"jiào yuè",雅量:"yǎ liàng",别传:"bié zhuàn",薄酒:"bó jiǔ",春假:"chūn jià",发妻:"fà qī",哗哗:"huā huā",宽绰:"kuān chuo",了悟:"liǎo wù",切花:"qiē huā",审度:"shěn duó",应许:"yīng xǔ",转台:"zhuàn tái",仔猪:"zǐ zhū",裁量:"cái liáng",藏戏:"zàng xì",乘兴:"chéng xìng",绸缪:"chóu móu",摧折:"cuī zhé",调经:"tiáo jīng",调职:"diào zhí",缝缀:"féng zhuì",骨朵:"gū duǒ",核儿:"hú er",恒量:"héng liàng",还价:"huán jià",浑朴:"hún pǔ",苦差:"kǔ chāi",面糊:"miàn hù",煞车:"shā chē",省视:"xǐng shì",什锦:"shí jǐn",信差:"xìn chāi",余切:"yú qiē",攒眉:"cuán méi",炸糕:"zhá gāo",钻杆:"zuàn gǎn",扒灰:"pá huī",拌和:"bàn huò",长调:"cháng diào",大溜:"dà liù",抖搂:"dǒu lōu",飞转:"fēi zhuàn",干仗:"gàn zhàng",好胜:"hào shèng",画片:"huà piàn",搅混:"jiǎo hún",螺杆:"luó gǎn",木模:"mù mú",怒号:"nù háo",频数:"pín shù",无宁:"wú níng",遗少:"yí shào",邮差:"yóu chāi",占卦:"zhān guà",占星:"zhān xīng",重审:"chóng shěn",自量:"zì liàng",调防:"diào fáng",发廊:"fà láng",反调:"fǎn diào",缝子:"fèng zi",更夫:"gēng fū",骨子:"gǔ zi",光杆:"guāng gǎn",夹棍:"jiā gùn",居丧:"jū sāng",巨贾:"jù gǔ",看押:"kān yā",空转:"kōng zhuàn",量力:"liàng lì",炮烙:"páo luò",赔还:"péi huán",扑扇:"pū shān",散记:"sǎn jì",散件:"sǎn jiàn",删削:"shān xuē",射干:"shè gàn",条几:"tiáo jī",偷空:"tōu kòng",削壁:"xuē bì",校核:"jiào hé",阴干:"yīn gān",择菜:"zhái cài",重九:"chóng jiǔ",主调:"zhǔ diào",自禁:"zì jīn",吧唧:"bā jī",便溺:"biàn niào",词调:"cí diào",叨咕:"dáo gu",落枕:"lào zhěn",铺砌:"pū qì",刷白:"shuà bái",委靡:"wěi mǐ",系泊:"xì bó",相马:"xiàng mǎ",熨帖:"yù tiē",转筋:"zhuàn jīn",棒喝:"bàng hè",傧相:"bīn xiàng",镐头:"gǎo tóu",间苗:"jiàn miáo",乐池:"yuè chí",卖相:"mài xiàng",屏弃:"bǐng qì",铅弹:"qiān dàn",切变:"qiē biàn",请调:"qǐng diào",群氓:"qún méng",散板:"sǎn bǎn",省察:"xǐng chá",事假:"shì jià",纤绳:"qiàn shéng",重影:"chóng yǐng",耕种:"gēng zhòng",种地:"zhòng dì",种菜:"zhòng cài",栽种:"zāi zhòng",接种:"jiē zhòng",垦种:"kěn zhòng",种殖:"zhòng zhí",种瓜:"zhòng guā",种豆:"zhòng dòu",种树:"zhòng shù",睡着:"shuì zháo",笼子:"lóng zi",重启:"chóng qǐ",重整:"chóng zhěng",重弹:"chóng tán",重足:"chóng zú",重山:"chóng shān",重游:"chóng yóu",重峦:"chóng luán",爷爷:"yé ye",奶奶:"nǎi nai",姥爷:"lǎo ye",爸爸:"bà ba",妈妈:"mā ma",婶婶:"shěn shen",舅舅:"jiù jiu",姑姑:"gū gu",叔叔:"shū shu",姨夫:"yí fu",舅母:"jiù mu",姑父:"gū fu",姐夫:"jiě fu",婆婆:"pó po",公公:"gōng gong",舅子:"jiù zi",姐姐:"jiě jie",哥哥:"gē ge",妹妹:"mèi mei",妹夫:"mèi fu",姨子:"yí zi",宝宝:"bǎo bao",娃娃:"wá wa",孩子:"hái zi",日子:"rì zi",样子:"yàng zi",狮子:"shī zi",身子:"shēn zi",架子:"jià zi",嫂子:"sǎo zi",鼻子:"bí zi",亭子:"tíng zi",折子:"zhé zi",面子:"miàn zi",脖子:"bó zi",辈子:"bèi zi",帽子:"mào zi",拍子:"pāi zi",柱子:"zhù zi",辫子:"biàn zi",鸽子:"gē zi",房子:"fáng zi",丸子:"wán zi",摊子:"tān zi",牌子:"pái zi",胡子:"hú zi",鬼子:"guǐ zi",矮子:"ǎi zi",鸭子:"yā zi",小子:"xiǎo zi",影子:"yǐng zi",屋子:"wū zi",对子:"duì zi",点子:"diǎn zi",本子:"běn zi",种子:"zhǒng zi",儿子:"ér zi",兔子:"tù zi",骗子:"piàn zi",院子:"yuàn zi",猴子:"hóu zi",嗓子:"sǎng zi",侄子:"zhí zi",柿子:"shì zi",钳子:"qián zi",虱子:"shī zi",瓶子:"píng zi",豹子:"bào zi",筷子:"kuài zi",篮子:"lán zi",绳子:"shéng zi",嘴巴:"zuǐ ba",耳朵:"ěr duo",茄子:"qié zi",蚌埠:"bèng bù",崆峒:"kōng tóng",琵琶:"pí pa",蘑菇:"mó gu",葫芦:"hú lu",狐狸:"hú li",桔子:"jú zi",盒子:"hé zi",桌子:"zhuō zi",竹子:"zhú zi",师傅:"shī fu",衣服:"yī fu",袜子:"wà zi",杯子:"bēi zi",刺猬:"cì wei",麦子:"mài zi",队伍:"duì wu",知了:"zhī liǎo",鱼儿:"yú er",馄饨:"hún tun",灯笼:"dēng long",庄稼:"zhuāng jia",聪明:"cōng ming",镜子:"jìng zi",银子:"yín zi",盘子:"pán zi",了却:"liǎo què",力气:"lì qi",席子:"xí zi",林子:"lín zi",朝霞:"zhāo xiá",朝夕:"zhāo xī",朝气:"zhāo qì",翅膀:"chì bǎng",省长:"shěng zhǎng",臧否:"zāng pǐ",否泰:"pǐ tài",变得:"biàn de",丈夫:"zhàng fu",豆腐:"dòu fu",笔杆:"bǐ gǎn",枞阳:"zōng yáng",行人:"xíng rén",打着:"dǎ zhe",第一:"dì yī",万一:"wàn yī",之一:"zhī yī",得之:"dé zhī",统一:"tǒng yī",唯一:"wéi yī",专一:"zhuān yī",单一:"dān yī",如一:"rú yī",其一:"qí yī",合一:"hé yī",逐一:"zhú yī",周一:"zhōu yī",初一:"chū yī",研一:"yán yī",归一:"guī yī",假一:"jiǎ yī",闻一:"wén yī",了了:"liǎo liǎo",公了:"gōng liǎo",私了:"sī liǎo",一月:"yī yuè",一号:"yī hào",一级:"yī jí",一等:"yī děng",一哥:"yī gē",月一:"yuè yī",一一:"yī yī",二一:"èr yī",三一:"sān yī",四一:"sì yī",五一:"wǔ yī",六一:"liù yī",七一:"qī yī",八一:"bā yī",九一:"jiǔ yī","一〇":"yī líng",一零:"yī líng",一二:"yī èr",一三:"yī sān",一四:"yī sì",一五:"yī wǔ",一六:"yī liù",一七:"yī qī",一八:"yī bā",一九:"yī jiǔ",一又:"yī yòu",一饼:"yī bǐng",一楼:"yī lóu",为例:"wéi lì",为准:"wéi zhǔn",沧海:"cāng hǎi",难为:"nán wéi",责难:"zé nàn",患难:"huàn nàn",磨难:"mó nàn",大难:"dà nàn",刁难:"diāo nàn",殉难:"xùn nàn",落难:"luò nàn",罹难:"lí nàn",灾难:"zāi nàn",难民:"nàn mín",苦难:"kǔ nàn",危难:"wēi nàn",发难:"fā nàn",逃难:"táo nàn",避难:"bì nàn",遇难:"yù nàn",阻难:"zǔ nàn",厄难:"è nàn",徇难:"xùn nàn",空难:"kōng nàn",喜欢:"xǐ huan",朝朝:"zhāo zhāo",不行:"bù xíng",轧轧:"yà yà",弯曲:"wān qū",扭曲:"niǔ qū",曲直:"qū zhí",委曲:"wěi qū",酒曲:"jiǔ qū",曲径:"qū jìng",曲解:"qū jiě",歪曲:"wāi qū",曲线:"qū xiàn",曲阜:"qū fù",九曲:"jiǔ qū",曲折:"qū zhé",曲肱:"qū gōng",曲意:"qū yì",仡佬:"gē lǎo"},sbe=Object.keys(zB).map(e=>({zh:e,pinyin:zB[e],probability:2e-8,length:2,priority:Nc.Normal,dict:Symbol("dict2")})),HB={为什么:"wèi shén me",实际上:"shí jì shang",检察长:"jiǎn chá zhǎng",干什么:"gàn shén me",这会儿:"zhè huì er",尽可能:"jǐn kě néng",董事长:"dǒng shì zhǎng",了不起:"liǎo bù qǐ",参谋长:"cān móu zhǎng",朝鲜族:"cháo xiǎn zú",海内外:"hǎi nèi wài",禁不住:"jīn bú zhù",柏拉图:"bó lā tú",不在乎:"bú zài hu",洛杉矶:"luò shān jī",有点儿:"yǒu diǎn er",迫击炮:"pǎi jī pào",不得了:"bù dé liǎo",马尾松:"mǎ wěi sōng",运输量:"yùn shū liàng",发脾气:"fā pí qi",士大夫:"shì dà fū",鸭绿江:"yā lù jiāng",压根儿:"yà gēn er",对得起:"duì de qǐ",那会儿:"nà huì er",自个儿:"zì gě er",物理量:"wù lǐ liàng",怎么着:"zěn me zhāo",明晃晃:"míng huǎng huǎng",节假日:"jié jià rì",心里话:"xīn lǐ huà",发行量:"fā xíng liàng",兴冲冲:"xìng chōng chōng",分子量:"fēn zǐ liàng",国子监:"guó zǐ jiàn",老大难:"lǎo dà nán",党内外:"dǎng nèi wài",这么着:"zhè me zhāo",少奶奶:"shào nǎi nai",暗地里:"àn dì lǐ",更年期:"gēng nián qī",工作量:"gōng zuò liàng",背地里:"bèi dì lǐ",山里红:"shān li hóng",好好儿:"hǎo hāo er",交响乐:"jiāo xiǎng yuè",好意思:"hǎo yì si",吐谷浑:"tǔ yù hún",没意思:"méi yì si",理发师:"lǐ fà shī",塔什干:"tǎ shí gān",充其量:"chōng qí liàng",靠得住:"kào de zhù",车行道:"chē xíng dào",人行道:"rén xíng dào",中郎将:"zhōng láng jiàng",照明弹:"zhào míng dàn",烟幕弹:"yān mù dàn",没奈何:"mò nài hé",乱哄哄:"luàn hōng hōng",惠更斯:"huì gēng sī",载重量:"zài zhòng liàng",瞧得起:"qiáo de qǐ",纪传体:"jì zhuàn tǐ",阿房宫:"ē páng gōng",卷心菜:"juǎn xīn cài",戏班子:"xì bān zi",过得去:"guò de qù",花岗石:"huā gāng shí",外甥女:"wài sheng nǚ",团团转:"tuán tuán zhuàn",大堡礁:"dà bǎo jiāo",燃烧弹:"rán shāo dàn",劳什子:"láo shí zi",摇滚乐:"yáo gǔn yuè",夹竹桃:"jiā zhú táo",闹哄哄:"nào hōng hōng",三连冠:"sān lián guàn",重头戏:"zhòng tóu xì",二人转:"èr rén zhuàn",节骨眼:"jiē gǔ yǎn",知识面:"zhī shi miàn",护士长:"hù shi zhǎng",信号弹:"xìn hào dàn",干电池:"gān diàn chí",枪杆子:"qiāng gǎn zi",哭丧棒:"kū sāng bàng",鼻咽癌:"bí yān ái",瓦岗军:"wǎ gāng jūn",买得起:"mǎi de qǐ",癞蛤蟆:"lài há ma",脊梁骨:"jǐ liang gǔ",子母弹:"zǐ mǔ dàn",开小差:"kāi xiǎo chāi",女强人:"nǚ qiáng rén",英雄传:"yīng xióng zhuàn",爵士乐:"jué shì yuè",说笑话:"shuō xiào hua",碰头会:"pèng tóu huì",玻璃钢:"bō li gāng",曳光弹:"yè guāng dàn",少林拳:"shào lín quán",咏叹调:"yǒng tàn diào",少先队:"shào xiān duì",灵长目:"líng zhǎng mù",对着干:"duì zhe gàn",蒙蒙亮:"méng méng liàng",软骨头:"ruǎn gǔ tou",铺盖卷:"pū gài juǎn",和稀泥:"huò xī ní",背黑锅:"bēi hēi guō",红彤彤:"hóng tōng tōng",武侯祠:"wǔ hóu cí",打哆嗦:"dǎ duō suo",户口簿:"hù kǒu bù",马尾藻:"mǎ wěi zǎo",夜猫子:"yè māo zi",打手势:"dǎ shǒu shì",龙王爷:"lóng wáng yé",气头上:"qì tóu shang",糊涂虫:"hú tu chóng",笔杆子:"bǐ gǎn zi",占便宜:"zhàn pián yi",打主意:"dǎ zhǔ yì",多弹头:"duō dàn tóu",露一手:"lòu yì shǒu",堰塞湖:"yàn sè hú",保得住:"bǎo de zhù",趵突泉:"bào tū quán",奥得河:"ào de hé",司务长:"sī wù zhǎng",禁不起:"jīn bù qǐ",什刹海:"shí chà hǎi",莲花落:"lián huā lào",见世面:"jiàn shì miàn",豁出去:"huō chū qù",电位差:"diàn wèi chā",挨个儿:"āi gè er",那阵儿:"nà zhèn er",肺活量:"fèi huó liàng",大师傅:"dà shī fu",掷弹筒:"zhì dàn tǒng",打呼噜:"dǎ hū lu",广渠门:"ān qú mén",未见得:"wèi jiàn dé",大婶儿:"dà shěn er",谈得来:"tán de lái",脚丫子:"jiǎo yā zi",空包弹:"kōng bāo dàn",窝里斗:"wō li dòu",弹着点:"dàn zhuó diǎn",个头儿:"gè tóu er",看得起:"kàn de qǐ",糊涂账:"hú tu zhàng",大猩猩:"dà xīng xing",禁得起:"jīn de qǐ",法相宗:"fǎ xiàng zōng",可怜相:"kě lián xiàng",吃得下:"chī de xià",汉堡包:"hàn bǎo bāo",闹嚷嚷:"nào rāng rāng",数来宝:"shǔ lái bǎo",合得来:"hé de lái",干性油:"gān xìng yóu",闷葫芦:"mèn hú lu",呱呱叫:"guā guā jiào",西洋参:"xī yáng shēn",林荫道:"lín yīn dào",拉家常:"lā jiā cháng",卷铺盖:"juǎn pū gài",过得硬:"guò de yìng",飞将军:"fēi jiāng jūn",挑大梁:"tiǎo dà liáng",哈巴狗:"hǎ ba gǒu",过家家:"guò jiā jiā",催泪弹:"cuī lèi dàn",雨夹雪:"yǔ jiā xuě",敲竹杠:"qiāo zhú gàng",列车长:"liè chē zhǎng",华达呢:"huá dá ní",犯得着:"fàn de zháo",土疙瘩:"tǔ gē da",煞风景:"shā fēng jǐng",轻量级:"qīng liàng jí",羞答答:"xiū dā dā",石子儿:"shí zǐ er",达姆弹:"dá mǔ dàn",科教片:"kē jiào piān",侃大山:"kǎn dà shān",丁点儿:"dīng diǎn er",吃得消:"chī de xiāo",捋虎须:"luō hǔ xū",高丽参:"gāo lí shēn",众生相:"zhòng shēng xiàng",咽峡炎:"yān xiá yán",禁得住:"jīn de zhù",吃得开:"chī de kāi",柞丝绸:"zuò sī chóu",应声虫:"yìng shēng chóng",数得着:"shǔ de zháo",傻劲儿:"shǎ jìn er",铅玻璃:"qiān bō li",可的松:"kě dì sōng",划得来:"huá de lái",晕乎乎:"yūn hū hū",屎壳郎:"shǐ ke làng",尥蹶子:"liào juě zi",藏红花:"zàng hóng huā",闷罐车:"mèn guàn chē",卡脖子:"qiǎ bó zi",红澄澄:"hóng deng deng",赶得及:"gǎn de jí",当间儿:"dāng jiàn er",露马脚:"lòu mǎ jiǎo",鸡内金:"jī nèi jīn",犯得上:"fàn de shàng",钉齿耙:"dīng chǐ bà",饱和点:"bǎo hé diǎn",龙爪槐:"lóng zhǎo huái",喝倒彩:"hè dào cǎi",定冠词:"dìng guàn cí",担担面:"dàn dan miàn",吃得住:"chī de zhù",爪尖儿:"zhuǎ jiān er",支着儿:"zhī zhāo er",折跟头:"zhē gēn tou",阴着儿:"yīn zhāo er",烟卷儿:"yān juǎn er",宣传弹:"xuān chuán dàn",信皮儿:"xìn pí er",弦切角:"xián qiē jiǎo",缩砂密:"sù shā mì",说得来:"shuō de lái",水漂儿:"shuǐ piāo er",耍笔杆:"shuǎ bǐ gǎn",数得上:"shǔ de shàng",数不着:"shǔ bù zháo",数不清:"shǔ bù qīng",什件儿:"shí jiàn er",生死簿:"shēng sǐ bù",扇风机:"shān fēng jī",撒呓挣:"sā yì zheng",日记簿:"rì jì bù",热得快:"rè de kuài",亲家公:"qìng jia gōng",奇函数:"jī hán shù",拍纸簿:"pāi zhǐ bù",努劲儿:"nǔ jìn er",泥娃娃:"ní wá wa",内切圆:"nèi qiē yuán",哪会儿:"nǎ huì er",闷头儿:"mēn tóu er",没谱儿:"méi pǔ er",铆劲儿:"mǎo jìn er",溜肩膀:"liū jiān bǎng",了望台:"liào wàng tái",老来少:"lǎo lái shào",坤角儿:"kūn jué er",考勤簿:"kǎo qín bù",卷笔刀:"juǎn bǐ dāo",进给量:"jìn jǐ liàng",划不来:"huá bù lái",汗褂儿:"hàn guà er",鼓囊囊:"gǔ nāng nāng",够劲儿:"gòu jìn er",公切线:"gōng qiē xiàn",搁得住:"gé de zhù",赶浪头:"gǎn làng tóu",赶得上:"gǎn de shàng",干酵母:"gān jiào mǔ",嘎渣儿:"gā zhā er",嘎嘣脆:"gā bēng cuì",对得住:"duì de zhù",逗闷子:"dòu mèn zi",顶呱呱:"dǐng guā guā",滴溜儿:"dī liù er",大轴子:"dà zhòu zi",打板子:"dǎ bǎn zi",寸劲儿:"cùn jìn er",醋劲儿:"cù jìn er",揣手儿:"chuāi shǒu er",冲劲儿:"chòng jìn er",吃得来:"chī de lái",不更事:"bù gēng shì",奔头儿:"bèn tou er",百夫长:"bǎi fū zhǎng",娃娃亲:"wá wa qīn",死劲儿:"sǐ jìn er",骨朵儿:"gū duǒ er",功劳簿:"gōng láo bù",都江堰:"dū jiāng yàn",一担水:"yí dàn shuǐ",否极泰:"pǐ jí tài",泰来否:"tài lái pǐ",咳特灵:"ké tè líng",开户行:"kāi hù háng",郦食其:"lì yì jī",花事了:"huā shì liǎo",一更更:"yì gēng gēng",一重山:"yì chóng shān",风一更:"fēng yì gēng",雪一更:"xuě yì gēng",归一码:"guī yì mǎ",星期一:"xīng qī yī",礼拜一:"lǐ bài yī",一季度:"yī jì dù",一月一:"yī yuè yī",一字马:"yī zì mǎ",一是一:"yī shì yī",一次方:"yī cì fāng",一阳指:"yī yáng zhǐ",一字决:"yī zì jué",一年级:"yī nián jí",一不做:"yī bú zuò",屈戌儿:"qū qu ér",难为水:"nán wéi shuǐ",难为情:"nán wéi qíng",行一行:"xíng yì háng",别别的:"biè bié de",干哪行:"gàn nǎ háng",干一行:"gàn yì háng",曲别针:"qū bié zhēn"},rbe=Object.keys(HB).map(e=>({zh:e,pinyin:HB[e],probability:2e-8,length:3,priority:Nc.Normal,dict:Symbol("dict3")})),jB={成吉思汗:"chéng jí sī hán",四通八达:"sì tōng bā dá",一模一样:"yì mú yí yàng",青藏高原:"qīng zàng gāo yuán",阿弥陀佛:"ē mí tuó fó",解放思想:"jiè fàng sī xiǎng",所作所为:"suǒ zuò suǒ wéi",迷迷糊糊:"mí mí hu hū",荷枪实弹:"hè qiāng shí dàn",兴高采烈:"xìng gāo cǎi liè",无能为力:"wú néng wéi lì",布鲁塞尔:"bù lǔ sài ěr",为所欲为:"wéi suǒ yù wéi",克什米尔:"kè shí mǐ ěr",没完没了:"méi wán méi liǎo",不为人知:"bù wéi rén zhī",结结巴巴:"jiē jiē bā bā",前仆后继:"qián pū hòu jì",铺天盖地:"pū tiān gài dì",直截了当:"zhí jié liǎo dàng",供不应求:"gōng bú yìng qiú",御史大夫:"yù shǐ dà fū",不为瓦全:"bù wéi wǎ quán",不可收拾:"bù kě shōu shi",胡作非为:"hú zuò fēi wéi",分毫不差:"fēn háo bú chà",模模糊糊:"mó mó hu hū",不足为奇:"bù zú wéi qí",悄无声息:"qiǎo wú shēng xī",了如指掌:"liǎo rú zhǐ zhǎng",深恶痛绝:"shēn wù tòng jué",高高兴兴:"gāo gāo xìng xìng",唉声叹气:"āi shēng tàn qì",汉藏语系:"hàn zàng yǔ xì",处心积虑:"chǔ xīn jī lǜ",泣不成声:"qì bù chéng shēng",半夜三更:"bàn yè sān gēng",失魂落魄:"shī hún luò pò",二十八宿:"èr shí bā xiù",转来转去:"zhuàn lái zhuàn qù",数以万计:"shǔ yǐ wàn jì",相依为命:"xiāng yī wéi mìng",恋恋不舍:"liàn liàn bù shě",屈指可数:"qū zhǐ kě shǔ",神出鬼没:"shén chū guǐ mò",结结实实:"jiē jiē shí shí",有的放矢:"yǒu dì fàng shǐ",叽哩咕噜:"jī lǐ gū lū",调兵遣将:"diào bīng qiǎn jiàng",载歌载舞:"zài gē zài wǔ",转危为安:"zhuǎn wēi wéi ān",踏踏实实:"tā tā shi shí",桑给巴尔:"sāng jǐ bā ěr",装模作样:"zhuāng mú zuò yàng",见义勇为:"jiàn yì yǒng wéi",相差无几:"xiāng chā wú jǐ",叹为观止:"tàn wéi guān zhǐ",闷闷不乐:"mèn mèn bú lè",喜怒哀乐:"xǐ nù āi lè",鲜为人知:"xiǎn wéi rén zhī",张牙舞爪:"zhāng yá wǔ zhǎo",为非作歹:"wéi fēi zuò dǎi",含糊其辞:"hán hú qí cí",疲于奔命:"pí yú bēn mìng",勉为其难:"miǎn wéi qí nán",依依不舍:"yī yī bù shě",顶头上司:"dǐng tóu shàng si",不着边际:"bù zhuó biān jì",大模大样:"dà mú dà yàng",寻欢作乐:"xún huān zuò lè",一走了之:"yì zǒu liǎo zhī",字里行间:"zì lǐ háng jiān",含含糊糊:"hán hán hu hū",恰如其分:"qià rú qí fèn",破涕为笑:"pò tì wéi xiào",深更半夜:"shēn gēng bàn yè",千差万别:"qiān chā wàn bié",数不胜数:"shǔ bú shèng shǔ",据为己有:"jù wéi jǐ yǒu",天旋地转:"tiān xuán dì zhuàn",养尊处优:"yǎng zūn chǔ yōu",玻璃纤维:"bō li xiān wéi",吵吵闹闹:"chāo chao nào nào",晕头转向:"yūn tóu zhuàn xiàng",土生土长:"tǔ shēng tǔ zhǎng",宁死不屈:"nìng sǐ bù qū",不省人事:"bù xǐng rén shì",尽力而为:"jìn lì ér wéi",精明强干:"jīng míng qiáng gàn",唠唠叨叨:"láo lao dāo dāo",叽叽喳喳:"jī ji zhā zhā",功不可没:"gōng bù kě mò",锲而不舍:"qiè ér bù shě",排忧解难:"pái yōu jiě nàn",稀里糊涂:"xī li hú tú",各有所长:"gè yǒu suǒ cháng",的的确确:"dí dí què què",哄堂大笑:"hōng táng dà xiào",听而不闻:"tīng ér bù wén",刀耕火种:"dāo gēng huǒ zhòng",内分泌腺:"nèi fèn mì xiàn",化险为夷:"huà xiǎn wéi yí",百发百中:"bǎi fā bǎi zhòng",重见天日:"chóng jiàn tiān rì",反败为胜:"fǎn bài wéi shèng",一了百了:"yì liǎo bǎi liǎo",大大咧咧:"dà da liē liē",心急火燎:"xīn jí huǒ liǎo",粗心大意:"cū xīn dà yi",鸡皮疙瘩:"jī pí gē da",夷为平地:"yí wéi píng dì",日积月累:"rì jī yuè lěi",设身处地:"shè shēn chǔ dì",投其所好:"tóu qí suǒ hào",间不容发:"jiān bù róng fà",人满为患:"rén mǎn wéi huàn",穷追不舍:"qióng zhuī bù shě",为时已晚:"wéi shí yǐ wǎn",如数家珍:"rú shǔ jiā zhēn",心里有数:"xīn lǐ yǒu shù",以牙还牙:"yǐ yá huán yá",神不守舍:"shén bù shǒu shě",孟什维克:"mèng shí wéi kè",各自为战:"gè zì wéi zhàn",怨声载道:"yuàn shēng zài dào",救苦救难:"jiù kǔ jiù nàn",好好先生:"hǎo hǎo xiān sheng",怪模怪样:"guài mú guài yàng",抛头露面:"pāo tóu lù miàn",游手好闲:"yóu shǒu hào xián",无所不为:"wú suǒ bù wéi",调虎离山:"diào hǔ lí shān",步步为营:"bù bù wéi yíng",好大喜功:"hào dà xǐ gōng",众矢之的:"zhòng shǐ zhī dì",长生不死:"cháng shēng bù sǐ",蔚为壮观:"wèi wéi zhuàng guān",不可胜数:"bù kě shèng shǔ",鬼使神差:"guǐ shǐ shén chāi",洁身自好:"jié shēn zì hào",敢作敢为:"gǎn zuò gǎn wéi",茅塞顿开:"máo sè dùn kāi",走马换将:"zǒu mǎ huàn jiàng",为时过早:"wéi shí guò zǎo",为人师表:"wéi rén shī biǎo",阴差阳错:"yīn chā yáng cuò",油腔滑调:"yóu qiāng huá diào",重蹈覆辙:"chóng dǎo fù zhé",骂骂咧咧:"mà ma liē liē",絮絮叨叨:"xù xù dāo dāo",如履薄冰:"rú lǚ bó bīng",损兵折将:"sǔn bīng zhé jiàng",拐弯抹角:"guǎi wān mò jiǎo",像模像样:"xiàng mú xiàng yàng",供过于求:"gōng guò yú qiú",开花结果:"kāi huā jiē guǒ",仔仔细细:"zǐ zǐ xì xì",川藏公路:"chuān zàng gōng lù",河北梆子:"hé běi bāng zi",长年累月:"cháng nián lěi yuè",正儿八经:"zhèng er bā jīng",不识抬举:"bù shí tái ju",重振旗鼓:"chóng zhèn qí gǔ",气息奄奄:"qì xī yān yān",紧追不舍:"jǐn zhuī bù shě",服服帖帖:"fú fu tiē tiē",强词夺理:"qiǎng cí duó lǐ",噼里啪啦:"pī li pā lā",人才济济:"rén cái jǐ jǐ",发人深省:"fā rén shēn xǐng",不足为凭:"bù zú wéi píng",为富不仁:"wéi fù bù rén",连篇累牍:"lián piān lěi dú",呼天抢地:"hū tiān qiāng dì",落落大方:"luò luò dà fāng",自吹自擂:"zì chuī zì léi",乐善好施:"lè shàn hào shī",以攻为守:"yǐ gōng wéi shǒu",磨磨蹭蹭:"mó mó cèng cèng",削铁如泥:"xuē tiě rú ní",助纣为虐:"zhù zhòu wéi nüè",以退为进:"yǐ tuì wéi jìn",嘁嘁喳喳:"qī qī chā chā",枪林弹雨:"qiāng lín dàn yǔ",令人发指:"lìng rén fà zhǐ",转败为胜:"zhuǎn bài wéi shèng",转弯抹角:"zhuǎn wān mò jiǎo",在劫难逃:"zài jié nán táo",正当防卫:"zhèng dàng fáng wèi",不足为怪:"bù zú wéi guài",难兄难弟:"nàn xiōng nàn dì",咿咿呀呀:"yī yī yā yā",弹尽粮绝:"dàn jìn liáng jué",阿谀奉承:"ē yú fèng chéng",稀里哗啦:"xī li huā lā",返老还童:"fǎn lǎo huán tóng",好高骛远:"hào gāo wù yuǎn",鹿死谁手:"lù sǐ shéi shǒu",差强人意:"chā qiáng rén yì",大吹大擂:"dà chuī dà léi",成家立业:"chéng jiā lì yè",自怨自艾:"zì yuàn zì yì",负债累累:"fù zhài lěi lěi",古为今用:"gǔ wéi jīn yòng",入土为安:"rù tǔ wéi ān",下不为例:"xià bù wéi lì",一哄而上:"yì hōng ér shàng",没头苍蝇:"méi tóu cāng ying",天差地远:"tiān chā dì yuǎn",风卷残云:"fēng juǎn cán yún",多灾多难:"duō zāi duō nàn",乳臭未干:"rǔ xiù wèi gān",行家里手:"háng jiā lǐ shǒu",狼狈为奸:"láng bèi wéi jiān",处变不惊:"chǔ biàn bù jīng",一唱一和:"yí chàng yí hè",一念之差:"yí niàn zhī chā",金蝉脱壳:"jīn chán tuō qiào",滴滴答答:"dī dī dā dā",硕果累累:"shuò guǒ léi léi",好整以暇:"hào zhěng yǐ xiá",红得发紫:"hóng de fā zǐ",传为美谈:"chuán wéi měi tán",富商大贾:"fù shāng dà gǔ",四海为家:"sì hǎi wéi jiā",了若指掌:"liǎo ruò zhǐ zhǎng",大有可为:"dà yǒu kě wéi",出头露面:"chū tóu lù miàn",鼓鼓囊囊:"gǔ gu nāng nāng",窗明几净:"chuāng míng jī jìng",泰然处之:"tài rán chǔ zhī",怒发冲冠:"nù fà chōng guān",有机玻璃:"yǒu jī bō li",骨头架子:"gǔ tou jià zi",义薄云天:"yì bó yún tiān",一丁点儿:"yī dīng diǎn er",时来运转:"shí lái yùn zhuǎn",陈词滥调:"chén cí làn diào",化整为零:"huà zhěng wéi líng",火烧火燎:"huǒ shāo huǒ liǎo",干脆利索:"gàn cuì lì suǒ",吊儿郎当:"diào er láng dāng",广种薄收:"guǎng zhòng bó shōu",种瓜得瓜:"zhòng guā dé guā",种豆得豆:"zhòng dòu dé dòu",难舍难分:"nán shě nán fēn",歃血为盟:"shà xuè wéi méng",奋发有为:"fèn fā yǒu wéi",阴错阳差:"yīn cuò yáng chā",东躲西藏:"dōng duǒ xī cáng",烟熏火燎:"yān xūn huǒ liǎo",钻牛角尖:"zuān niú jiǎo jiān",乔装打扮:"qiáo zhuāng dǎ bàn",改弦更张:"gǎi xián gēng zhāng",河南梆子:"hé nán bāng zi",好吃懒做:"hào chī lǎn zuò",何乐不为:"hé lè bù wéi",大出风头:"dà chū fēng tóu",攻城掠地:"gōng chéng lüè dì",漂漂亮亮:"piào piào liang liang",折衷主义:"zhé zhōng zhǔ yì",大马哈鱼:"dà mǎ hǎ yú",绿树成荫:"lǜ shù chéng yīn",率先垂范:"shuài xiān chuí fàn",家长里短:"jiā cháng lǐ duǎn",宽大为怀:"kuān dà wéi huái",左膀右臂:"zuǒ bǎng yòu bì",一笑了之:"yí xiào liǎo zhī",天下为公:"tiān xià wéi gōng",还我河山:"huán wǒ hé shān",何足为奇:"hé zú wéi qí",好自为之:"hǎo zì wéi zhī",风姿绰约:"fēng zī chuò yuē",大雨滂沱:"dà yǔ pāng tuó",传为佳话:"chuán wéi jiā huà",吃里扒外:"chī lǐ pá wài",重操旧业:"chóng cāo jiù yè",小家子气:"xiǎo jiā zi qì",少不更事:"shào bù gēng shì",难分难舍:"nán fēn nán shě",添砖加瓦:"tiān zhuān jiā wǎ",是非分明:"shì fēi fēn míng",舍我其谁:"shě wǒ qí shuí",偏听偏信:"piān tīng piān xìn",量入为出:"liàng rù wéi chū",降龙伏虎:"xiáng lóng fú hǔ",钢化玻璃:"gāng huà bō li",正中下怀:"zhèng zhòng xià huái",以身许国:"yǐ shēn xǔ guó",一语中的:"yì yǔ zhòng dì",丧魂落魄:"sàng hún luò pò",三座大山:"sān zuò dà shān",济济一堂:"jǐ jǐ yì táng",好事之徒:"hào shì zhī tú",干净利索:"gàn jìng lì suǒ",出将入相:"chū jiàng rù xiàng",袅袅娜娜:"niǎo niǎo nuó nuó",狐狸尾巴:"hú li wěi ba",好逸恶劳:"hào yì wù láo",大而无当:"dà ér wú dàng",打马虎眼:"dǎ mǎ hu yǎn",板上钉钉:"bǎn shàng dìng dīng",吆五喝六:"yāo wǔ hè liù",虾兵蟹将:"xiā bīng xiè jiàng",水调歌头:"shuǐ diào gē tóu",数典忘祖:"shǔ diǎn wàng zǔ",人事不省:"rén shì bù xǐng",曲高和寡:"qǔ gāo hè guǎ",屡教不改:"lǚ jiào bù gǎi",互为因果:"hù wéi yīn guǒ",互为表里:"hù wéi biǎo lǐ",厚此薄彼:"hòu cǐ bó bǐ",过关斩将:"guò guān zhǎn jiàng",疙疙瘩瘩:"gē ge dā dā",大腹便便:"dà fù pián pián",走为上策:"zǒu wéi shàng cè",冤家对头:"yuān jia duì tóu",有隙可乘:"yǒu xì kě chèng",一鳞半爪:"yì lín bàn zhǎo",片言只语:"piàn yán zhǐ yǔ",开花结实:"kāi huā jié shí",经年累月:"jīng nián lěi yuè",含糊其词:"hán hú qí cí",寡廉鲜耻:"guǎ lián xiǎn chǐ",成年累月:"chéng nián lěi yuè",不徇私情:"bú xùn sī qíng",不当人子:"bù dāng rén zǐ",膀大腰圆:"bǎng dà yāo yuán",指腹为婚:"zhǐ fù wéi hūn",这么点儿:"zhè me diǎn er",意兴索然:"yì xīng suǒ rán",绣花枕头:"xiù huā zhěn tou",无的放矢:"wú dì fàng shǐ",望闻问切:"wàng wén wèn qiè",舍己为人:"shě jǐ wèi rén",穷年累月:"qióng nián lěi yuè",排难解纷:"pái nàn jiě fēn",处之泰然:"chǔ zhī tài rán",指鹿为马:"zhǐ lù wéi mǎ",危如累卵:"wēi rú lěi luǎn",天兵天将:"tiān bīng tiān jiàng",舍近求远:"shě jìn qiú yuǎn",南腔北调:"nán qiāng běi diào",苦中作乐:"kǔ zhōng zuò lè",厚积薄发:"hòu jī bó fā",臭味相投:"xiù wèi xiāng tóu",长幼有序:"zhǎng yòu yǒu xù",逼良为娼:"bī liáng wéi chāng",悲悲切切:"bēi bēi qiè qiē",败军之将:"bài jūn zhī jiàng",欺行霸市:"qī háng bà shì",削足适履:"xuē zú shì lǚ",先睹为快:"xiān dǔ wéi kuài",啼饥号寒:"tí jī háo hán",疏不间亲:"shū bú jiàn qīn",神差鬼使:"shén chāi guǐ shǐ",敲敲打打:"qiāo qiāo dǎ dǎ",平铺直叙:"píng pū zhí xù",没头没尾:"méi tóu mò wěi",寥寥可数:"liáo liáo kě shǔ",哼哈二将:"hēng hā èr jiàng",鹤发童颜:"hè fà tóng yán",各奔前程:"gè bèn qián chéng",弹无虚发:"dàn wú xū fā",大人先生:"dà rén xiān sheng",与民更始:"yǔ mín gēng shǐ",树碑立传:"shù bēi lì zhuàn",是非得失:"shì fēi dé shī",实逼处此:"shí bī chǔ cǐ",塞翁失马:"sài wēng shī mǎ",日薄西山:"rì bó xī shān",切身体会:"qiè shēn tǐ huì",片言只字:"piàn yán zhǐ zì",跑马卖解:"pǎo mǎ mài xiè",宁折不弯:"nìng zhé bù wān",零零散散:"líng líng sǎn sǎn",量体裁衣:"liàng tǐ cái yī",连中三元:"lián zhòng sān yuán",礼崩乐坏:"lǐ bēng yuè huài",不为已甚:"bù wéi yǐ shèn",转悲为喜:"zhuǎn bēi wéi xǐ",以眼还眼:"yǐ yǎn huán yǎn",蔚为大观:"wèi wéi dà guān",未为不可:"wèi wéi bù kě",童颜鹤发:"tóng yán hè fà",朋比为奸:"péng bǐ wéi jiān",莫此为甚:"mò cǐ wéi shèn",夹枪带棒:"jiā qiāng dài bàng",富商巨贾:"fù shāng jù jiǎ",淡然处之:"dàn rán chǔ zhī",箪食壶浆:"dān shí hú jiāng",创巨痛深:"chuāng jù tòng shēn",草长莺飞:"cǎo zhǎng yīng fēi",坐视不救:"zuò shī bú jiù",以己度人:"yǐ jǐ duó rén",随行就市:"suí háng jiù shì",文以载道:"wén yǐ zài dào",文不对题:"wén bú duì tí",铁板钉钉:"tiě bǎn dìng dīng",身体发肤:"shēn tǐ fà fū",缺吃少穿:"quē chī shǎo chuān",目无尊长:"mù wú zūn zhǎng",吉人天相:"jí rén tiān xiàng",毁家纾难:"huǐ jiā shū nàn",钢筋铁骨:"gāng jīn tiě gǔ",丢卒保车:"diū zú bǎo jū",丢三落四:"diū sān là sì",闭目塞听:"bì mù sè tīng",削尖脑袋:"xuē jiān nǎo dài",为非作恶:"wéi fēi zuò è",人才难得:"rén cái nán dé",情非得已:"qíng fēi dé yǐ",切中要害:"qiè zhòng yào hài",火急火燎:"huǒ jí huǒ liǎo",画地为牢:"huà dì wéi láo",好酒贪杯:"hào jiǔ tān bēi",长歌当哭:"cháng gē dàng kū",载沉载浮:"zài chén zài fú",遇难呈祥:"yù nàn chéng xiáng",榆木疙瘩:"yú mù gē da",以邻为壑:"yǐ lín wéi hè",洋为中用:"yáng wéi zhōng yòng",言为心声:"yán wéi xīn shēng",言必有中:"yán bì yǒu zhòng",图穷匕见:"tú qióng bǐ xiàn",滂沱大雨:"páng tuó dà yǔ",目不暇给:"mù bù xiá jǐ",量才录用:"liàng cái lù yòng",教学相长:"jiào xué xiāng zhǎng",悔不当初:"huǐ bù dāng chū",呼幺喝六:"hū yāo hè liù",不足为训:"bù zú wéi xùn",不拘形迹:"bù jū xíng jī",傍若无人:"páng ruò wú rén",罪责难逃:"zuì zé nán táo",自我吹嘘:"zì wǒ chuī xū",转祸为福:"zhuǎn huò wéi fú",勇冠三军:"yǒng guàn sān jūn",易地而处:"yì dì ér chǔ",卸磨杀驴:"xiè mò shā lǘ",玩儿不转:"wán ér bú zhuàn",天道好还:"tiān dào hǎo huán",身单力薄:"shēn dān lì bó",撒豆成兵:"sǎ dòu chéng bīng",片纸只字:"piàn zhǐ zhī zì",宁缺毋滥:"nìng quē wú làn",没没无闻:"mò mò wú wén",量力而为:"liàng lì ér wéi",历历可数:"lì lì kě shǔ",口碑载道:"kǒu bēi zài dào",君子好逑:"jūn zǐ hǎo qiú",好为人师:"hào wéi rén shī",豪商巨贾:"háo shāng jù jiǎ",各有所好:"gè yǒu suǒ hào",度德量力:"duó dé liàng lì",指天为誓:"zhǐ tiān wéi shì",逸兴遄飞:"yì xìng chuán fēi",心宽体胖:"xīn kuān tǐ pán",为德不卒:"wéi dé bù zú",天下为家:"tiān xià wéi jiā",视为畏途:"shì wéi wèi tú",三灾八难:"sān zāi bā nàn",沐猴而冠:"mù hóu ér guàn",哩哩啦啦:"lī li lā lā",见缝就钻:"jiàn fèng jiù zuān",夹层玻璃:"jiā céng bō li",急公好义:"jí gōng hào yì",积年累月:"jī nián lěi yuè",划地为牢:"huá dì wéi láo",更名改姓:"gēng míng gǎi xìng",奉为圭臬:"fèng wéi guī niè",多难兴邦:"duō nàn xīng bāng",不破不立:"bú pò bú lì",坐地自划:"zuò dì zì huá",坐不重席:"zuò bù chóng xí",坐不窥堂:"zuò bù kuī táng",作嫁衣裳:"zuò jià yī shang",左枝右梧:"zuǒ zhī yòu wú",左宜右有:"zuǒ yí yòu yǒu",钻头觅缝:"zuān tóu mì fèng",钻天打洞:"zuān tiān dǎ dòng",钻皮出羽:"zuān pí chū yǔ",钻火得冰:"zuān huǒ dé bīng",钻洞觅缝:"zuàn dòng mì féng",钻冰求火:"zuān bīng qiú huǒ",子为父隐:"zǐ wéi fù yǐn",擢发难数:"zhuó fà nán shǔ",着人先鞭:"zhuó rén xiān biān",斫雕为朴:"zhuó diāo wéi pǔ",锥处囊中:"zhuī chǔ náng zhōng",椎心饮泣:"chuí xīn yǐn qì",椎心泣血:"chuí xīn qì xuè",椎牛飨士:"chuí niú xiǎng shì",椎牛歃血:"chuí niú shà xuè",椎牛发冢:"chuí niú fà zhǒng",椎埋屠狗:"chuí mái tú gǒu",椎埋狗窃:"chuí mái gǒu qiè",壮发冲冠:"zhuàng fā chōng guàn",庄严宝相:"zhuāng yán bǎo xiàng",转愁为喜:"zhuǎn chóu wéi xǐ",转嗔为喜:"zhuǎn chēn wéi xǐ",拽巷啰街:"zhuài xiàng luó jiē",拽耙扶犁:"zhuāi pá fú lí",拽布拖麻:"zhuài bù tuō má",箸长碗短:"zhù cháng wǎn duǎn",铸剑为犁:"zhù jiàn wéi lí",杼柚其空:"zhù yòu qí kōng",杼柚空虚:"zhù yòu kōng xū",助天为虐:"zhù tiān wéi nüè",属垣有耳:"zhǔ yuán yǒu ěr",属毛离里:"zhǔ máo lí lǐ",属辞比事:"zhǔ cí bǐ shì",逐物不还:"zhú wù bù huán",铢量寸度:"zhū liáng cùn duó",铢两悉称:"zhū liǎng xī chèn",侏儒观戏:"zhū rú guān xì",朱轓皁盖:"zhū fān zào gài",昼度夜思:"zhòu duó yè sī",诪张为幻:"zhōu zhāng wéi huàn",重明继焰:"chóng míng jì yàn",众啄同音:"zhòng zhuó tóng yīn",众毛攒裘:"zhòng máo cuán qiú",众好众恶:"zhòng hào zhòng wù",擿埴索涂:"zhāi zhí suǒ tú",稚齿婑媠:"zhì chǐ wǒ tuó",至当不易:"zhì dàng bú yì",指皂为白:"zhǐ zào wéi bái",指雁为羹:"zhǐ yàn wéi gēng",指树为姓:"zhǐ shù wéi xìng",指山说磨:"zhǐ shān shuō mò",止戈为武:"zhǐ gē wéi wǔ",枝干相持:"zhī gàn xiāng chí",枝大于本:"zh dà yú běn",支吾其词:"zhī wú qí cí",正身率下:"zhèng shēn shuài xià",正冠李下:"zhèng guàn lǐ xià",整冠纳履:"zhěng guān nà lǚ",整躬率物:"zhěng gōng shuài wù",整顿干坤:"zhěng dùn gàn kūn",针头削铁:"zhēn tóu xuē tiě",贞松劲柏:"zhēn sōng jìng bǎi",赭衣塞路:"zhě yī sè lù",折箭为誓:"shé jiàn wéi shì",折而族之:"zhé ér zú zhī",昭德塞违:"zhāo dé sè wéi",章句小儒:"zhāng jù xiǎo rú",湛恩汪濊:"zhàn ēn wāng huì",占风望气:"zhān fēng wàng qì",斩将搴旗:"zhǎn jiàng qiān qí",曾母投杼:"zēng mǔ tóu zhù",曾参杀人:"zēng shēn shā rén",造谣中伤:"zào yáo zhòng shāng",早占勿药:"zǎo zhān wù yào",凿龟数策:"záo guī shǔ cè",攒三聚五:"cuán sān jù wǔ",攒眉蹙额:"cuán mei cù é",攒零合整:"cuán líng hé zhěng",攒锋聚镝:"cuán fēng jù dí",载笑载言:"zài xiào zài yán",载酒问字:"zài jiǔ wèn zì",殒身不恤:"yǔn shēn bú xù",云舒霞卷:"yún shū xiá juǎn",月中折桂:"yuè zhōng shé guì",月落参横:"yuè luò shēn héng",鬻驽窃价:"yù nú qiè jià",鬻鸡为凤:"yù jī wéi fèng",遇难成祥:"yù nàn chéng xiáng",郁郁累累:"yù yù lěi lěi",玉卮无当:"yù zhī wú dàng",语笑喧阗:"yǔ xiào xuān tián",与世沉浮:"yǔ shì chén fú",与时消息:"yǔ shí xiāo xi",逾墙钻隙:"yú qiáng zuān xì",渔夺侵牟:"yú duó qīn móu",杅穿皮蠹:"yú chuān pí dù",余勇可贾:"yú yǒng kě gǔ",予智予雄:"yú zhì yú xióng",予取予求:"yú qǔ yú qiú",于家为国:"yú jiā wéi guó",有借无还:"yǒu jiè wú huán",有加无已:"yǒu jiā wú yǐ",有国难投:"yǒu guó nán tóu",游必有方:"yóu bì yǒu fāng",油干灯尽:"yóu gàn dēng jìn",尤云殢雨:"yóu yún tì yǔ",庸中皦皦:"yōng zhōng jiǎo jiǎo",郢书燕说:"yǐng shū yān shuō",营蝇斐锦:"yíng yíng fēi jǐn",鹰心雁爪:"yīng xīn yàn zhǎo",莺吟燕儛:"yīng yín yàn wǔ",应天顺时:"yīng tiān shùn shí",印累绶若:"yìn léi shòu ruò",隐占身体:"yǐn zhàn shēn tǐ",饮犊上流:"yìn dú shàng liú",引绳切墨:"yǐn shéng qiē mò",龈齿弹舌:"yín chǐ dàn shé",因缘为市:"yīn yuán wéi shì",因树为屋:"yīn shù wéi wū",溢美溢恶:"yì měi yì wù",抑塞磊落:"yì sè lěi luò",倚闾望切:"yǐ lǘ wàng qiē",以意为之:"yǐ yì wéi zhī",以言为讳:"yǐ yán wéi huì",以疏间亲:"yǐ shū jiàn qīn",以水济水:"yǐ shuǐ jǐ shuǐ",以书为御:"yǐ shū wéi yù",以守为攻:"yǐ shǒu wéi gōng",以升量石:"yǐ shēng liáng dàn",以慎为键:"yǐ shèn wéi jiàn",以筌为鱼:"yǐ quán wéi yú",以利累形:"yǐ lì lěi xíng",以毁为罚:"yǐ huǐ wéi fá",以黑为白:"yǐ hēi wéi bái",以规为瑱:"yǐ guī wéi tiàn",以古为鉴:"yǐ gǔ wéi jiàn",以宫笑角:"yǐ gōng xiào jué",以法为教:"yǐ fǎ wéi jiào",以大恶细:"yǐ dà wù xì",遗世忘累:"yí shì wàng lěi",遗寝载怀:"yí qǐn zài huái",移的就箭:"yí dì jiù jiàn",依头缕当:"yī tóu lǚ dàng",衣租食税:"yì zū shí shuì",衣轻乘肥:"yì qīng chéng féi",衣裳之会:"yī shang zhī huì",衣单食薄:"yī dān shí bó",一还一报:"yì huán yí bào",叶公好龙:"yè gōng hào lóng",野调无腔:"yě diào wú qiāng",瑶池女使:"yáo chí nǚ shǐ",幺麽小丑:"yāo mó xiǎo chǒu",养精畜锐:"yǎng jīng xù ruì",卬首信眉:"áng shǒu shēn méi",洋洋纚纚:"yáng yáng sǎ sǎ",羊羔美酒:"yáng gāo měi jiǔ",扬风扢雅:"yáng fēng jié yǎ",燕昭市骏:"yān zhāo shì jùn",燕昭好马:"yān zhāo hǎo mǎ",燕石妄珍:"yān shí wàng zhēn",燕骏千金:"yān jùn qiān jīn",燕金募秀:"yān jīn mù xiù",燕驾越毂:"yān jià yuè gǔ",燕歌赵舞:"yān gē zhào wǔ",燕岱之石:"yān dài zhī shí",燕处危巢:"yàn chǔ wēi cháo",掞藻飞声:"shàn zǎo fēi shēng",偃革为轩:"yǎn gé wéi xuān",妍蚩好恶:"yán chī hǎo è",压良为贱:"yā liáng wéi jiàn",搀行夺市:"chān háng duó shì",泣数行下:"qì shù háng xià",当行出色:"dāng háng chū sè",秀出班行:"xiù chū bān háng",儿女成行:"ér nǚ chéng háng",大行大市:"dà háng dà shì",寻行数墨:"xún háng shǔ mò",埙篪相和:"xūn chí xiāng hè",血债累累:"xuè zhài lěi lěi",炫玉贾石:"xuàn yù gǔ shí",炫石为玉:"xuàn shí wéi yù",悬石程书:"xuán dàn chéng shū",悬狟素飡:"xuán huán sù cān",悬龟系鱼:"xuán guī xì yú",揎拳捋袖:"xuān quán luō xiù",轩鹤冠猴:"xuān hè guàn hóu",畜妻养子:"xù qī yǎng zǐ",羞人答答:"xiū rén dā dā",修鳞养爪:"xiū lín yǎng zhǎo",熊据虎跱:"xióng jù hǔ zhì",兄死弟及:"xiōng sǐ dì jí",腥闻在上:"xīng wén zài shàng",兴文匽武:"xīng wén yǎn wǔ",兴观群怨:"xìng guān qún yuàn",兴高彩烈:"xìng gāo cǎi liè",心手相应:"xīn shǒu xiāng yìng",心口相应:"xīn kǒu xiāng yīng",挟势弄权:"xié shì nòng quán",胁肩累足:"xié jiān lěi zú",校短量长:"jiào duǎn liáng cháng",小眼薄皮:"xiǎo yǎn bó pí",硝云弹雨:"xiāo yún dàn yǔ",鸮鸣鼠暴:"xiāo míng shǔ bào",削株掘根:"xuē zhū jué gēn",削铁无声:"xuē tiě wú shēng",削职为民:"xuē zhí wéi mín",削木为吏:"xuē mù wéi lì",想望风褱:"xiǎng wàng fēng huái",香培玉琢:"xiang pei yu zhuó",相鼠有皮:"xiàng shǔ yǒu pí",相时而动:"xiàng shí ér dòng",相切相磋:"xiāng qiē xiāng cuō",相女配夫:"xiàng nǚ pèi fū",相门有相:"xiàng mén yǒu xiàng",挦章撦句:"xián zhāng chě jù",先我着鞭:"xiān wǒ zhuó biān",习焉不察:"xí yān bù chá",歙漆阿胶:"shè qī ē jiāo",晰毛辨发:"xī máo biàn fà",悉索薄赋:"xī suǒ bó fù",雾鳞云爪:"wù lín yún zhǎo",物稀为贵:"wù xī wéi guì",碔砆混玉:"wǔ fū hùn yù",武断专横:"wǔ duàn zhuān héng",五石六鹢:"wǔ shí liù yì",五色相宣:"wǔ sè xiāng xuān",五侯七贵:"wǔ hóu qī guì",五侯蜡烛:"wǔ hòu là zhú",五羖大夫:"wǔ gǔ dà fū",吾自有处:"wú zì yǒu chǔ",无下箸处:"wú xià zhù chǔ",无伤无臭:"wú shāng wú xiù",无能为役:"wú néng wéi yì",无寇暴死:"wú kòu bào sǐ",无孔不钻:"wú kǒng bú zuàn",无间可乘:"wú jiān kě chéng",无间冬夏:"wú jiān dōng xià",无恶不为:"wú è bù wéi",无动为大:"wú dòng wéi dà",诬良为盗:"wū liáng wéi dào",握拳透爪:"wò quán tòu zhǎo",文武差事:"wén wǔ chāi shì",委委佗佗:"wēi wēi tuó tuó",惟日为岁:"wéi rì wéi suì",帷薄不修:"wéi bó bù xiū",为善最乐:"wéi shàn zuì lè",为山止篑:"wéi shān zhǐ kuì",为仁不富:"wéi rén bú fù",为裘为箕:"wéi qiú wéi jī",为民父母:"wéi mín fù mǔ",为虺弗摧:"wéi huǐ fú cuī",为好成歉:"wéi hǎo chéng qiàn",为鬼为蜮:"wéi guǐ wéi yù",望风响应:"wàng fēng xiǎng yīng",望尘僄声:"wàng chén piào shēng",往渚还汀:"wǎng zhǔ huán tīng",王贡弹冠:"wáng gòng dàn guàn",亡国大夫:"wáng guó dà fū",万贯家私:"wàn guàn jiā sī",晚食当肉:"wǎn shí dàng ròu",晚节不保:"wǎn jié bù bǎo",玩岁愒时:"wán suì kài shí",蛙蟆胜负:"wā má shèng fù",吞言咽理:"tūn yán yàn lǐ",颓垣断堑:"tuí yuán duàn qiàn",推干就湿:"tuī gàn jiù shī",剸繁决剧:"tuán fán jué jù",团头聚面:"tuán tóu jù miàn",兔丝燕麦:"tù sī yàn mài",兔头麞脑:"tù tóu zhāng nǎo",兔葵燕麦:"tù kuí yàn mài",吐哺握发:"tǔ bǔ wò fà",投传而去:"tóu zhuàn ér qù",头没杯案:"tóu mò bēi àn",头昏脑闷:"tóu hūn nǎo mèn",头会箕敛:"tóu kuài jī liǎn",头出头没:"tóu chū tóu mò",痛自创艾:"tòng zì chuāng yì",同恶相助:"tóng wù xiāng zhù",同恶相恤:"tóng wù xiāng xù",痌瘝在抱:"tōng guān zài bào",通文调武:"tōng wén diào wǔ",停留长智:"tíng liú zhǎng zhì",铁树开华:"tiě shù kāi huā",条贯部分:"tiáo guàn bù fēn",挑牙料唇:"tiǎo yá liào chún",挑么挑六:"tiāo yāo tiāo liù",挑唇料嘴:"tiǎo chún liào zuǐ",恬不为意:"tián bù wéi yì",恬不为怪:"tián bù wéi guài",天下为笼:"tiān xià wéi lóng",天台路迷:"tiān tái lù mí",天年不遂:"tiān nián bú suì",探囊胠箧:"tàn náng qū qiè",谭言微中:"tán yán wēi zhòng",谈言微中:"tán yán wēi zhòng",狧穅及米:"shì kāng jí mǐ",随物应机:"suí wù yīng jī",搜岩采干:"sōu yán cǎi gàn",宋斤鲁削:"sòng jīn lǔ xuē",松筠之节:"sōng yún zhī jié",四亭八当:"sì tíng bā dàng",四马攒蹄:"sì mǎ cuán tí",四不拗六:"sì bú niù liù",思所逐之:"sī suǒ zhú zhī",丝恩发怨:"sī ēn fà yuàn",硕望宿德:"shuò wàng xiǔ dé",铄古切今:"shuò gǔ qiē jīn",顺风而呼:"shùn fēng ér hū",顺风吹火:"shùn fēng chuī huǒ",水中著盐:"shuǐ zhōng zhuó yán",双柑斗酒:"shuāng gān dǒu jiǔ",数米而炊:"shǔ mǐ ér chuī",数米量柴:"shǔ mǐ liáng chái",数理逻辑:"shù lǐ luó ji",数黑论黄:"shǔ hēi lùn huáng",数白论黄:"shǔ bái lùn huáng",束缊还妇:"shù yūn huán fù",束蒲为脯:"shù pú wéi pú",束椽为柱:"shù chuán wéi zhù",书缺有间:"shū quē yǒu jiàn",手足重茧:"shǒu zú chóng jiǎn",手足异处:"shǒu zú yì chǔ",手脚干净:"shǒu jiǎo gàn jìng",手不应心:"shǒu bù yīng xīn",螫手解腕:"shì shǒu jiě wàn",释知遗形:"shì zhī yí xíng",适时应务:"shì shí yīng wù",适情率意:"shì qíng shuài yì",适当其冲:"shì dāng qí chōng",视为知己:"shì wéi zhī jǐ",使羊将狼:"shǐ yáng jiàng láng",食为民天:"shí wéi mín tiān",拾掇无遗:"shí duō wú yí",实与有力:"shí yù yǒu lì",石英玻璃:"shí yīng bō li",石室金匮:"shí shì jīn guì",什袭珍藏:"shí xí zhēn cáng",什伍东西:"shí wǔ dōng xī",什围伍攻:"shí wéi wǔ gōng",十魔九难:"shí mó jiǔ nàn",诗书发冢:"shī shū fà zhǒng",虱处裈中:"shī chǔ kūn zhōng",师直为壮:"shī zhí wéi zhuàng",尸居龙见:"shī jū lóng xiàn",圣经贤传:"shèng jīng xián zhuàn",圣君贤相:"shèng jūn xián xiàng",生拖死拽:"shēng tuō sǐ zhuài",审己度人:"shěn jǐ duó rén",神武挂冠:"shén wǔ guà guàn",神龙失埶:"shén lóng shī shì",深文曲折:"shēn wén qǔ shé",深厉浅揭:"shēn lì qiǎn qì",深谷为陵:"shēn gǔ wéi líng",深恶痛疾:"shēn wù tòng jí",深仇宿怨:"shēn chóu xiǔ yuàn",舍己为公:"shě jǐ wèi gōng",舍短取长:"shě duǎn qǔ cháng",舍策追羊:"shě cè zhuī yáng",蛇蝎为心:"shé xiē wéi xīn",少成若性:"shào chéng ruò xìng",上当学乖:"shàng dàng xué guāi",赏不当功:"shǎng bù dāng gōng",善自为谋:"shàn zì wéi móu",善为说辞:"shàn wéi shuō cí",善善恶恶:"shàn shàn wù è",善财难舍:"shàn cái nán shě",苫眼铺眉:"shān yǎn pū méi",讪牙闲嗑:"shàn yá xián kē",山阴乘兴:"shān yīn chéng xīng",山殽野湋:"shān yáo yě wéi",山溜穿石:"shān liù chuān shí",山节藻棁:"shān jié zǎo zhuō",杀鸡为黍:"shā jī wéi shǔ",色厉胆薄:"sè lì dǎn bó",桑荫未移:"sāng yīn wèi yí",桑荫不徙:"sāng yīn bù xǐ",桑土绸缪:"sāng tǔ chóu miù",桑户棬枢:"sāng hù juàn shū",三战三北:"sān zhàn sān běi",三瓦两舍:"sān wǎ liǎng shě",三人为众:"sān rén wèi zhòng",三差两错:"sān chā liǎng cuò",塞井焚舍:"sāi jǐng fén shě",洒心更始:"sǎ xīn gèng shǐ",洒扫应对:"sǎ sǎo yìng duì",软红香土:"ruǎn hóng xiāng tǔ",入吾彀中:"rù wú gòu zhōng",入铁主簿:"rù tiě zhǔ bù",入理切情:"rù lǐ qiē qíng",汝成人耶:"rǔ chéng rén yé",如水投石:"rú shuǐ tóu shí",如切如磋:"rú qiē rú cuō",如登春台:"rú dēng chūn tái",肉薄骨并:"ròu bó gǔ bìng",柔情绰态:"róu qíng chuò tài",戎马劻勷:"róng mǎ kuāng ráng",日中为市:"rì zhōng wéi shì",日月参辰:"rì yuè shēn chén",日省月修:"rì xǐng yuè xiū",日削月割:"rì xuē yuè gē",日省月试:"rì xǐng yuè shì",任达不拘:"rèn dá bù jū",人言藉藉:"rén yán jí jí",人模狗样:"rén mú gǒu yàng",人莫予毒:"rén mò yú dú",热熬翻饼:"rè áo fān bǐng",圈牢养物:"juàn láo yǎng wù",取予有节:"qǔ yǔ yǒu jié",诎要桡腘:"qū yāo ráo guó",穷形尽相:"qióng xíng jìn xiàng",情凄意切:"qíng qī yì qiè",情见势屈:"qíng xiàn shì qū",情见乎辞:"qíng xiàn hū cí",清都绛阙:"qīng dōu jiàng què",倾肠倒肚:"qīng cháng dào dǔ",青紫被体:"qīng zǐ pī tǐ",青林黑塞:"qīng lín hēi sài",螓首蛾眉:"qín shǒu é méi",琴瑟之好:"qín sè zhī hào",且住为佳:"qiě zhù wéi jiā",切树倒根:"qiē shù dǎo gēn",切理餍心:"qiē lǐ yàn xīn",切近的当:"qiē jìn de dāng",翘足引领:"qiáo zú yǐn lǐng",巧发奇中:"qiǎo fā qí zhòng",强嘴拗舌:"jiàng zuǐ niù shé",强直自遂:"qiáng zhí zì suí",强死强活:"qiǎng sǐ qiǎng huó",强食自爱:"qiǎng shí zì ài",强食靡角:"qiǎng shí mí jiǎo",强弓劲弩:"qiáng gōng jìng nǔ",强聒不舍:"qiǎng guō bù shě",强凫变鹤:"qiáng fú biàn hè",强而后可:"qiǎng ér hòu kě",强得易贫:"qiǎng dé yì pín",遣兴陶情:"qiǎn xìng táo qíng",牵羊担酒:"qiān yáng dān jiǔ",千了百当:"qiān liǎo bǎi dàng",泣下如雨:"qì xià rú yǔ",起偃为竖:"qǐ yǎn wéi shù",岂弟君子:"kǎi tì jūn zǐ",綦溪利跂:"qí xī lì qí",棋输先著:"qí shū xiān zhuó",齐王舍牛:"qí wáng shě niú",欺天诳地:"qī tiān kuáng dì",普天率土:"pǔ tiān shuài tǔ",铺胸纳地:"pū xiōng nà dì",铺锦列绣:"pū jǐn liè xiù",破家为国:"pò jiā wèi guó",破觚为圜:"pò gū wéi yuán",萍飘蓬转:"píng piāo péng zhuàn",帡天极地:"píng tiān jí dì",屏声息气:"bǐng shēng xī qì",凭几据杖:"píng jī jù zhàng",贫嘴薄舌:"pín zuǐ bó shé",片语只辞:"piàn yǔ zhī cí",披发文身:"pī fà wén shēn",烹龙炮凤:"pēng lóng páo fèng",炰鳖脍鲤:"fǒu biē kuài lǐ",庞眉皓发:"páng méi hào fà",攀花折柳:"pān huā zhé liǔ",攀蟾折桂:"pān chán shé guì",女大难留:"nǚ dà nán liú",弄玉吹箫:"nòng yù chuī xiāo",弄管调弦:"nòng guǎn tiáo xián",弄粉调朱:"nòng fěn diào zhū",浓抹淡妆:"nóng mò dàn zhuāng",捻土为香:"niǎn tǔ wéi xiāng",年谊世好:"nián yì shì hǎo",年华垂暮:"nián huá chuí mù",儗不于伦:"nǐ bù yú lún",泥而不滓:"ní ér bù zǐ",能者为师:"néng zhě wéi shī",能不称官:"néng bú chèn guān",挠直为曲:"náo zhí wéi qū",难进易退:"nán jìn yì tuì",难得糊涂:"nán dé hú tú",南蛮鴂舌:"nán mán jué shé",南贩北贾:"nán fàn běi gǔ",牧猪奴戏:"mù zhū nú xì",目眢心忳:"mù yuān xīn tún",目挑心招:"mù tiǎo xīn zhāo",目量意营:"mù liàng yì yíng",木头木脑:"mù tóu mù nǎo",木干鸟栖:"mù gàn niǎo qī",侔色揣称:"móu sè chuǎi chèn",莫予毒也:"mò yú dú yě",抹粉施脂:"mò fěn shī zhī",磨砻镌切:"mó lóng juān qiē",磨棱刓角:"mó léng wán jiǎo",摸门不着:"mō mén bù zháo",摸不着边:"mō bù zhuó biān",命中注定:"mìng zhōng zhù dìng",鸣鹤之应:"míng hè zhī yìng",明效大验:"míng xiào dà yàn",名我固当:"míng wǒ gù dāng",邈处欿视:"miǎo chǔ kǎn shì",黾穴鸲巢:"měng xué qú cháo",绵里薄材:"mián lǐ bó cái",靡有孑遗:"mǐ yǒu jié yí",靡衣偷食:"mǐ yī tōu shí",迷恋骸骨:"mí liàn hái gǔ",扪参历井:"mén shēn lì jǐng",门单户薄:"mén dān hù bó",昧旦晨兴:"mèi dàn chén xīng",冒名接脚:"mào míng jiē jiǎo",毛遂堕井:"máo suí duò jǐng",毛发倒竖:"máo fā dǎo shù",卖文为生:"mài wén wéi shēng",卖李钻核:"mài lǐ zuān hé",买椟还珠:"mǎi dú huán zhū",埋三怨四:"mán sān yuàn sì",马入华山:"mǎ rù huá shān",落魄江湖:"luò pò jiāng hú",落落难合:"luò luò nán hé",落草为寇:"luò cǎo wéi kòu",罗织构陷:"luó zhī gòu xiàn",鸾凤和鸣:"luán fèng hè míng",率由旧章:"shuài yóu jiù zhāng",率土同庆:"shuài tǔ tóng qìng",率兽食人:"shuài shòu shí rén",率土归心:"shuài tǔ guī xīn",率马以骥:"shuài mǎ yǐ jì",率尔成章:"shuài ěr chéng zhāng",鲁斤燕削:"lǔ jīn yàn xuē",漏尽更阑:"lòu jìn gēng lán",笼鸟槛猿:"lóng niǎo jiàn yuán",笼鸟池鱼:"lóng niǎo chí yú",龙游曲沼:"lóng yóu qū zhǎo",龙血玄黄:"lóng xuè xuán huáng",龙雕凤咀:"lóng diāo fèng jǔ",六尺之讬:"liù chǐ zhī tuō",令原之戚:"líng yuán zhī qī",令人捧腹:"lìng rén pěng fù",陵劲淬砺:"líng jìng cuì lì",临敌易将:"lín dí yì jiàng",裂裳衣疮:"liè shang yī chuāng",裂冠毁冕:"liè guàn huǐ miǎn",了无惧色:"liǎo wú jù sè",了身达命:"liǎo shēn dá mìng",了然无闻:"liǎo rán wú wén",了不可见:"liǎo bù kě jiàn",了不长进:"liǎo bù zhǎng jìn",燎发摧枯:"liǎo fà cuī kū",审时度势:"shěn shí duó shì",量小力微:"liàng xiǎo lì wēi",相时度力:"xiāng shí duó lì",量枘制凿:"liàng ruì zhì záo",量如江海:"liàng rú jiāng hǎi",量金买赋:"liàng jīn mǎi fù",量己审分:"liàng jǐ shěn fēn",敛骨吹魂:"liǎn gǔ chuī hún",詈夷为跖:"lì yí wéi zhí",利令志惛:"lì lìng zhì hūn",李广不侯:"lǐ guǎng bú hòu",礼为情貌:"lǐ wéi qíng mào",礼让为国:"lǐ ràng wéi guó",犁生骍角:"lí shēng xīng jiǎo",离本徼末:"lí běn jiǎo mò",楞眉横眼:"léng méi hèng yǎn",擂天倒地:"léi tiān dǎo dì",累足成步:"lěi zú chéng bù",累瓦结绳:"lěi wǎ jié shéng",累土至山:"lěi tǔ zhì shān",累土聚沙:"lěi tǔ jù shā",累卵之危:"lěi luǎn zhī wēi",累累如珠:"lěi lěi rú zhū",累块积苏:"lěi kuài jī sū",乐山乐水:"lè shān lè shuǐ",潦原浸天:"lǎo yuán jìn tiān",老师宿儒:"lǎo shī xiǔ rú",牢什古子:"láo shí gǔ zi",琅嬛福地:"láng huán fú dì",揆情度理:"kuí qíng duó lǐ",旷日累时:"kuàng rì lěi shí",匡救弥缝:"kuāng jiù mí fèng",枯树生华:"kū shù shēng huā",口轻舌薄:"kǒu qīng shé bó",口角生风:"kǒu jiǎo shēng fēng",口角春风:"kǒu jiǎo chūn fēng",口角风情:"kǒu jiǎo fēng qíng",口干舌焦:"kǒu gān shé jiāo",口腹之累:"kǒu fù zhī lěi",空腹便便:"kōng fù pián pián",嗑牙料嘴:"kē yá liào zuǐ",刻木为鹄:"kè mù wéi hú",咳珠唾玉:"ké zhū tuò yù",咳唾成珠:"ké tuò chéng zhū",抗颜为师:"kàng yán wéi shī",开华结果:"kāi huā jié guǒ",峻阪盐车:"jùn bǎn yán chē",嚼铁咀金:"jiáo tiě jǔ jīn",嚼墨喷纸:"jué mò pēn zhǐ",倔头强脑:"juè tóu jiàng nǎo",倔头倔脑:"juè tóu juè nǎo",倦鸟知还:"juàn niǎo zhī huán",卷席而葬:"juǎn xí ér zàng",卷甲倍道:"juǎn jiǎ bèi dào",聚米为山:"jù mǐ wéi shān",举手相庆:"jǔ shǒu xiāng qìng",举世混浊:"jǔ shì hún zhuó",鞠为茂草:"jū wéi mào cǎo",拘神遣将:"jū shén qiǎn jiàng",居下讪上:"jū xià shàn shàng",久要不忘:"jiǔ yāo bú wàng",九转功成:"jiǔ zhuǎn gōng chéng",九蒸三熯:"jiǔ zhēng sān hàn",敬业乐群:"jìng yè lè qún",井底虾蟆:"jǐng dǐ xiā má",旌旗卷舒:"jīng qí juǎn shū",荆棘载途:"jīng jí zài tú",禁舍开塞:"jìn shě kāi sāi",祲威盛容:"jìn wēi shèng róng",进退消长:"jìn tuì xiāo cháng",进退应矩:"jìn tuì yīng jǔ",进退触籓:"jìn tuì chù fān",进退跋疐:"jìn tuì bá zhì",尽多尽少:"jǐn duō jǐn shǎo",锦囊还矢:"jǐn náng huán shǐ",矜己自饰:"jīn jǐ zì shì",矜功负气:"jīn gōng fù qì",津关险塞:"jīn guān xiǎn sài",金吾不禁:"jīn wú bú jìn",金翅擘海:"jīn chì bāi hǎi",解衣衣人:"jiě yī yī rén",解人难得:"jiě rén nán dé",解铃系铃:"jiě líng xì líng",解发佯狂:"jiě fà yáng kuáng",诘屈磝碻:"jié qū áo qiāo",教猱升木:"jiāo náo shēng mù",较瘦量肥:"jiào shòu liàng féi",角立杰出:"jiǎo lì jié chū",焦沙烂石:"jiāo shā làn shí",骄儿騃女:"jiāo ér sì nǚ",浇风薄俗:"jiāo fēng bó sú",降妖捉怪:"xiáng yāo zhuō guài",将取固予:"jiāng qǔ gù yǔ",将门有将:"jiàng mén yǒu jiàng",将夺固与:"jiāng duó gù yǔ",槛花笼鹤:"jiàn huā lóng hè",鉴影度形:"jiàn yǐng duó xíng",渐不可长:"jiàn bù kě zhǎng",见素抱朴:"xiàn sù bào pǔ",见弃于人:"jiàn qì yú rén",简丝数米:"jiǎn sī shǔ mǐ",俭不中礼:"jiǎn bú zhòng lǐ",间见层出:"jiàn xiàn céng chū",尖嘴薄舌:"jiān zuǐ bó shé",甲冠天下:"jiǎ guàn tiān xià",葭莩之亲:"jiā fú zhī qīn",家累千金:"jiā lèi qiān jīn",家给人足:"jiā jǐ rén zú",家道从容:"jiā dào cóng róng",夹袋人物:"jiā dài rén wù",霁风朗月:"jì fēng lǎng yuè",寄兴寓情:"jì xìng yù qíng",计深虑远:"jì shēn lǜ yuǎn",计功量罪:"jì gōng liàng zuì",掎裳连襼:"jǐ shang lián yì",虮虱相吊:"jǐ shī xiāng diào",疾不可为:"jí bù kě wéi",极深研几:"jí shēn yán jī",及宾有鱼:"jí bīn yǒu yú",激薄停浇:"jī bó tíng jiāo",积素累旧:"jī sù lěi jiù",积时累日:"jī shí lěi rì",积露为波:"jī lù wéi bō",积德累功:"jī dé lěi gōng",积谗糜骨:"jī chán méi gǔ",击排冒没:"jī pái mào mò",祸为福先:"huò wéi fú xiān",祸福相依:"huò fú xiāng yī",获隽公车:"huò jùn gōng chē",混应滥应:"hùn yīng làn yīng",毁舟为杕:"huǐ zhōu wéi duò",毁钟为铎:"huǐ zhōng wéi duó",毁冠裂裳:"huǐ guān liè cháng",晦盲否塞:"huì máng pǐ sè",回船转舵:"huí chuán zhuàn duò",潢池盗弄:"huáng chí dào nòng",黄冠草履:"huáng guàn cǎo lǚ",黄发儿齿:"huáng fà ér chǐ",黄发垂髫:"huáng fà chuí tiáo",还珠返璧:"huán zhū fǎn bì",还年驻色:"huán nián zhù sè",还年却老:"huán nián què lǎo",坏裳为裤:"huài shang wéi kù",画荻和丸:"huà dí huò wán",化枭为鸠:"huà xiāo wéi jiū",化腐为奇:"huà fǔ wéi qí",化鸱为凤:"huà chī wéi fèng",花不棱登:"huā bu lēng dēng",户限为穿:"hù xiàn wéi chuān",呼卢喝雉:"hū lú hè zhì",呼来喝去:"hū lái hè qù",呼不给吸:"hū bù jǐ xī",厚味腊毒:"hòu wèi xī dú",厚德载物:"hòu dé zài wù",鸿渐于干:"hóng jiàn yú gàn",洪炉燎发:"hóng lú liáo fà",红绳系足:"hóng shéng jì zú",红不棱登:"hóng bu lēng dēng",横抢硬夺:"hèng qiǎng yìng duó",横恩滥赏:"hèng ēn làn shǎng",恨海难填:"hèn hǎi nán tián",鹤发鸡皮:"hè fà jī pí",涸思干虑:"hé sī gān lǜ",河涸海干:"hé hé hǎi gān",和颜说色:"hé yán yuè sè",合从连衡:"hé zòng lián héng",浩浩汤汤:"hào hào shāng shāng",好勇斗狠:"hào yǒng dòu hěn",好问则裕:"hào wèn zé yù",好为事端:"hào wéi shì duān",好问决疑:"hào wèn jué yí",好生之德:"hào shēng zhī dé",好奇尚异:"hǎo qí shàng yì",好恶不同:"hǎo è bù tóng",好丹非素:"hào dān fēi sù",豪干暴取:"háo gàn bào qǔ",毫发不爽:"háo fà bù shuǎng",寒酸落魄:"hán suān luò pò",含英咀华:"hán yīng jǔ huá",含糊不明:"hán hú bù míng",过为已甚:"guò wéi yǐ shèn",桂折兰摧:"guì shé lán cuī",规旋矩折:"guī xuán jǔ shé",广文先生:"guǎng wén xiān sheng",广陵散绝:"guǎng líng sǎn jué",冠山戴粒:"guàn shān dài lì",冠屦倒施:"guàn jù dǎo shī",挂席为门:"guà xí wéi mén",寡见鲜闻:"guǎ jiàn xiǎn wén",瓜葛相连:"guā gé xiāng lián",鼓吻奋爪:"gǔ wěn fèn zhǎo",古调单弹:"gǔ diào dān tán",古调不弹:"gǔ diào bù tán",姑射神人:"gū yè shén rén",苟合取容:"gǒu hé qǔ róng",狗续侯冠:"gǒu xù hòu guàn",钩爪锯牙:"gōu zhǎo jù yá",共枝别干:"gòng zhī bié gàn",共为唇齿:"gòng wéi chún chǐ",拱手而降:"gǒng shǒu ér xiáng",拱肩缩背:"gǒng jiān suō bèi",功薄蝉翼:"gōng bó chán yì",弓调马服:"gōng diào mǎ fú",更姓改物:"gēng xìng gǎi wù",更仆难数:"gēng pú nán shǔ",更令明号:"gēng lìng míng hào",更待干罢:"gèng dài gàn bà",更唱迭和:"gēng chàng dié hé",更长梦短:"gēng cháng mèng duǎn",各色名样:"gè sè míng yàng",格格不纳:"gé gé bú nà",格格不吐:"gé gé bù tǔ",告朔饩羊:"gù shuò xì yáng",膏车秣马:"gào chē mò mǎ",高义薄云:"gāo yì bó yún",岗头泽底:"gāng tóu zé dǐ",敢为敢做:"gǎn wéi gǎn zuò",甘分随时:"gān fèn suí shí",甘处下流:"gān chǔ xià liú",干啼湿哭:"gàn tí shī kū",干名犯义:"gàn míng fàn yì",干将莫邪:"gān jiāng mò yé",干城之将:"gān chéng zhī jiàng",腹载五车:"fù zài wǔ chē",父债子还:"fù zhài zǐ huán",父为子隐:"fù wéi zǐ yǐn",辅世长民:"fǔ shì zhǎng mín",福为祸始:"fú wéi huò shǐ",符号逻辑:"fú hào luó jí",浮收勒折:"fú shōu lè shé",肤受之愬:"fū shòu zhī sù",否终则泰:"pǐ zhōng zé tài",佛头著粪:"fó tóu zhuó fèn",奉为楷模:"fèng wéi kǎi mó",凤靡鸾吪:"fèng mǐ luán é",封豨修蛇:"fēng xī xiū shé",风影敷衍:"fēng yǐng fū yǎn",丰屋蔀家:"fēng wū bù jiā",粪土不如:"fèn tǔ bù rú",分风劈流:"fēn fēng pǐ liú",沸沸汤汤:"fèi fèi shāng shāng",菲食薄衣:"fěi shí bó yī",飞将数奇:"fēi jiàng shù qí",放辟邪侈:"fàng pì xié chǐ",方领圆冠:"fāng lǐng yuán guàn",犯而不校:"fàn ér bú jiào",返本还源:"fǎn běn huán yuán",反劳为逸:"fǎn láo wéi yì",法轮常转:"fǎ lún cháng zhuàn",罚不当罪:"fá bù dāng zuì",发引千钧:"fà yǐn qiān jūn",发奸擿伏:"fā jiān tī fú",发短心长:"fà duǎn xīn cháng",二竖为虐:"èr shù wéi nüè",儿女心肠:"ér nǚ xīn cháng",儿女亲家:"ér nǚ qìng jiā",遏恶扬善:"è wù yáng shàn",饿殍枕藉:"è piǎo zhěn jí",饿殍载道:"è piǎo zài dào",恶醉强酒:"wù zuì qiǎng jiǔ",恶意中伤:"è yì zhòng shāng",恶湿居下:"wù shī jū xià",恶居下流:"wù jū xià liú",恶不去善:"wù bú qù shàn",扼吭夺食:"è háng duó shí",扼襟控咽:"è jīn kòng yān",峨峨汤汤:"é é shāng shāng",屙金溺银:"ē jīn niào yín",朵颐大嚼:"duǒ yí dà jiáo",夺人所好:"duó rén suǒ hào",多言数穷:"duō yán shuò qióng",多文为富:"duō wén wéi fù",多端寡要:"duō duān guǎ yào",多财善贾:"duō cái shàn gǔ",遁世无闷:"dùn shì wú mèn",遁迹黄冠:"dùn jì huáng guàn",堆案盈几:"duī àn yíng jī",断还归宗:"duàn huán guī zōng",短见薄识:"duǎn jiàn bó shí",蠹居棊处:"dù jū qí chǔ",度己以绳:"duó jǐ yǐ shéng",杜默为诗:"dù mò wéi shī",杜鹃啼血:"dù juān tí xuè",笃近举远:"dǔ jìn jǔ yuǎn",独有千秋:"dú yǒu qiān qiū",读书得间:"dú shū dé jiàn",斗转参横:"dǒu zhuǎn shēn héng",兜肚连肠:"dōu dǔ lián cháng",洞见症结:"dòng jiàn zhèng jié",恫疑虚喝:"dòng yí xū hè",动中窾要:"dòng zhōng kuǎn yào",东鸣西应:"dōng míng xī yīng",东鳞西爪:"dōng lín xī zhǎo",东量西折:"dōng liàng xī shé",东家西舍:"dōng jiā xī shè",东扯西拽:"dōng chě xī zhuāi",鼎铛有耳:"dǐng chēng yǒu ěr",鼎铛玉石:"dǐng chēng yù shí",钉头磷磷:"dīng tóu lín lín",跌宕不羁:"diē dàng bù jī",跌弹斑鸠:"diē dàn bān jiū",雕心雁爪:"diāo xīn yàn zhǎo",颠倒衣裳:"diān dǎo yī cháng",德薄能鲜:"dé bó néng xiǎn",得马折足:"dé mǎ shé zú",蹈其覆辙:"dǎo qí fù zhé",捣虚撇抗:"dǎo xū piē kàng",倒载干戈:"dào zài gān gē",倒裳索领:"dào cháng suǒ lǐng",倒果为因:"dào guǒ wéi yīn",叨在知己:"tāo zài zhī jǐ",叨陪末座:"tāo péi mò zuò",党豺为虐:"dǎng chái wéi nüè",当轴处中:"dāng zhóu chǔ zhōng",当着不着:"dāng zhuó bù zhuó",当务始终:"dāng wù shǐ zhōng",淡汝浓抹:"dàn rǔ nóng mǒ",弹丸脱手:"tán wán tuō shǒu",弹铗无鱼:"dàn jiá wú yú",箪食瓢饮:"dān sì piáo yǐn",大璞不完:"dà pú bù wán",大明法度:"dà míng fǎ dù",大车以载:"dà chē yǐ zài",打闷葫芦:"dǎ mèn hú lu",沓来踵至:"tà lái zhǒng zhì",厝火燎原:"cuò huǒ liǎo yuán",撮科打哄:"cuō kē dǎ hòng",寸积铢累:"cùn jī zhū lěi",啛啛喳喳:"cuì cuì chā chā",摧折豪强:"cuī zhé háo qiáng",摧刚为柔:"cuī gāng wéi róu",从俗就简:"cóng sú jiù jiǎn",此发彼应:"cǐ fā bǐ yīng",此唱彼和:"cǐ chàng bǐ hè",慈悲为本:"cí bēi wéi běn",纯属骗局:"chún shǔ piàn jú",春笋怒发:"chūn sǔn nù fā",垂头搨翼:"chuí tóu tà yì",传为笑谈:"chuán wéi xiào tán",传风扇火:"chuán fēng shān huǒ",穿红着绿:"chuān hóng zhuó lǜ",触处机来:"chù chǔ jī lái",处尊居显:"chǔ zūn jū xiǎn",处堂燕雀:"chǔ táng yàn què",处实效功:"chǔ shí xiào gōng",处高临深:"chǔ gāo lín shēn",出入无间:"chū rù wú jiān",出门应辙:"chū mén yīng zhé",出处语默:"chū chǔ yǔ mò",出处殊途:"chū chǔ shū tú",出处进退:"chū chǔ jìn tuì",愁山闷海:"chóu shān mèn hǎi",冲冠眦裂:"chōng guàn zì liè",齿牙为祸:"chǐ yá wéi huò",尺二冤家:"chǐ èr yuān jia",尺短寸长:"chǐ duǎn cùn cháng",尺寸之功:"chǐ cùn zhī gōng",城北徐公:"chéng běi xú gōng",成败兴废:"chéng bài xīng fèi",趁水和泥:"chèn shuǐ huò ní",称雨道晴:"chēng yǔ dào qíng",称体载衣:"chēng tǐ zài yī",称体裁衣:"chèn tǐ cái yī",称家有无:"chèn jiā yǒu wú",称德度功:"chēng dé duó gōng",沉吟章句:"chén yín zhāng jù",沉吟不决:"chén yín bù jué",沉疴宿疾:"chén kē sù jí",扯纤拉烟:"chě qiàn lā yān",扯顺风旗:"chě shùn fēng qí",车载船装:"chē zǎi chuán zhuāng",朝升暮合:"zhāo shēng mù gě",朝攀暮折:"zhāo pān mù shé",超今冠古:"chāo jīn guàn gǔ",倡而不和:"chàng ér bú hè",畅所欲为:"chàng suǒ yù wéi",苌弘碧血:"cháng hóng bì xiě",长幼尊卑:"zhǎng yòu zūn bēi",长绳系日:"cháng shéng jì rì",长年三老:"zhǎng nián sān lǎo",长春不老:"cháng chūn bù lǎo",长傲饰非:"zhǎng ào shì fēi",昌亭旅食:"chāng tíng lǚ shí",禅絮沾泥:"chán xù zhān ní",差三错四:"chā sān cuò sì",层台累榭:"céng tái lěi xiè",层见迭出:"céng xiàn dié chū",藏踪蹑迹:"cáng zōng niè jì",苍蝇见血:"cāng yíng jiàn xiě",餐松啖柏:"cān sōng dàn bó",骖风驷霞:"cān fēng sì xiá",参伍错综:"cēn wǔ cuò zōng",参辰卯酉:"shēn chén mǎo yǒu",材优干济:"cái yōu gān jǐ",材薄质衰:"cái bó zhì shuāi",才大难用:"cái dà nán yòng",才薄智浅:"cái bó zhì qiǎn",不足为意:"bù zú wéi yì",不足为据:"bù zú wéi jù",不足为法:"bù zú wéi fǎ",不足齿数:"bù zú chǐ shǔ",不着疼热:"bù zhuó téng rè",不知薡蕫:"bù zhī dǐng dǒng",不越雷池:"bú yuè léi chí",不相为谋:"bù xiāng wéi móu",不贪为宝:"bù tān wéi bǎo",不了而了:"bù liǎo ér liǎo",不可揆度:"bù kě kuí duó",不遑启处:"bù huáng qǐ chǔ",不当不正:"bù dāng bú zhèng",不差什么:"bú chà shén me",不差累黍:"bù chā lěi shǔ",擘两分星:"bò liǎng fēn xīng",簸土扬沙:"bǒ tǔ yáng shā",薄物细故:"bó wù xì gù",薄寒中人:"bó hán zhòng rén",博文约礼:"bó wén yuē lǐ",播糠眯目:"bō kāng mí mù",剥皮抽筋:"bō pí chōu jīn",剥肤椎髓:"bō fū chuí suǐ",波属云委:"bō zhǔ yún wěi",波骇云属:"bō hài yún zhǔ",兵微将寡:"bīng wēi jiàng guǎ",兵强将勇:"bīng qiáng jiàng yǒng",兵多将广:"bīng duō jiàng guǎng",兵不由将:"bīng bù yóu jiàng",冰解的破:"bīng jiě dì pò",彬彬济济:"bīn bīn jǐ jǐ",摽梅之年:"biào méi zhī nián",表里为奸:"biǎo lǐ wéi jiān",飙发电举:"biāo fā diàn jǔ",变贪厉薄:"biàn tān lì bó",敝盖不弃:"bì gài bú qì",秕言谬说:"bǐ yán miù shuō",比物属事:"bǐ wù zhǔ shì",被山带河:"pī shān dài hé",被甲枕戈:"pī jiǎ zhěn gē",被甲据鞍:"pī jiǎ jù ān",被褐怀玉:"pī hè huái yù",被发缨冠:"pī fà yīng guàn",背曲腰躬:"bèi qǔ yāo gōng",北窗高卧:"běi chuāng gāo wò",北辰星拱:"běi chén xīng gǒng",北鄙之音:"běi bǐ zhī yīn",卑宫菲食:"bēi gōng fěi shí",暴衣露冠:"pù yī lù guàn",暴腮龙门:"pù sāi lóng mén",暴露文学:"bào lù wén xué",暴虎冯河:"bào hǔ píng hé",抱蔓摘瓜:"bào wàn zhāi guā",抱法处势:"bào fǎ chǔ shì",褒贬与夺:"bāo biǎn yǔ duó",帮闲钻懒:"bāng xián zuān lǎn",拜将封侯:"bài jiàng fēng hóu",百兽率舞:"bǎi shòu shuài wǔ",百孔千创:"bǎi kǒng qiān chuāng",白衣卿相:"bái yī qīng xiàng",白首为郎:"bái shǒu wéi láng",白首相知:"bái shǒu xiāng zhī",把玩无厌:"bǎ wán wú yàn",拔锅卷席:"bá guō juǎn xí",拔本塞源:"bá běn sè yuán",傲不可长:"ào bù kě zhǎng",熬更守夜:"áo gēng shǒu yè",安时处顺:"ān shí chǔ shùn",安身为乐:"ān shēn wéi lè",安老怀少:"ān lǎo huái shào",安步当车:"ān bù dàng chē",爱人好士:"ài rén hào shì",矮人观场:"ǎi rén guān chǎng",捱风缉缝:"ái fēng jī fèng",挨山塞海:"āi shān sè hǎi",阿家阿翁:"ā jiā ā wēng",阿党相为:"ē dǎng xiāng wéi",追亡逐北:"zhuī wáng zhú běi",竹篮打水:"zhú lán dá shuǐ",知疼着热:"zhī téng zháo rè",语不惊人:"yǔ bù jīng rén",于今为烈:"yú jīn wéi liè",一日三省:"yí rì sān xǐng",穴居野处:"xué jū yě chǔ",五脊六兽:"wǔ jǐ liù shòu",无声无臭:"wú shēng wú xiù",谓予不信:"wèi yú bú xìn",舍身为国:"shě shēn wéi guó",杀妻求将:"shā qī qiú jiàng",强作解人:"qiǎng zuò jiě rén",气冲斗牛:"qì chōng dǒu niú",临深履薄:"lín shēn lǚ bó",钧天广乐:"jūn tiān guǎng yuè",艰难竭蹶:"jiān nán jié jué",夹七夹八:"jiā qī jiā bā",混混噩噩:"hún hún è è",厚古薄今:"hòu gǔ bó jīn",鬼怕恶人:"guǐ pà è rén",伽马射线:"gā mǎ shè xiàn",佛头着粪:"fó tóu zhuó fèn",奉为至宝:"fèng wéi zhì bǎo",登坛拜将:"dēng tán bài jiàng",晨昏定省:"chén hūn dìng xǐng",察察为明:"chá chá wéi míng",博闻强识:"bó wén qiáng zhì",避难就易:"bì nán jiù yì",了无生机:"liǎo wú shēng jī",有一说一:"yǒu yī shuō yī",独一无二:"dú yī wú èr",说一不二:"shuō yī bù èr",举一反三:"jǔ yī fǎn sān",数一数二:"shǔ yī shǔ èr",杀一儆百:"shā yī jǐng bǎi",丁一卯二:"dīng yī mǎo èr",丁一确二:"dīng yī què èr",不一而止:"bù yī ér zhǐ",无一幸免:"wú yī xìng miǎn",表里不一:"biǎo lǐ bù yī",良莠不一:"liáng yǒu bù yī",心口不一:"xīn kǒu bù yī",言行不一:"yán xíng bù yī",政令不一:"zhèng lìng bù yī",参差不一:"cēn cī bù yī",纷纷不一:"fēn fēn bù yī",毁誉不一:"huǐ yù bù yī",不一而三:"bù yī ér sān",百不一遇:"bǎi bù yī yù",言行抱一:"yán xíng bào yī",瑜百瑕一:"yú bǎi xiá yī",背城借一:"bèi chéng jiè yī",凭城借一:"píng chéng jiè yī",劝百讽一:"quàn bǎi fěng yī",群居和一:"qún jū hé yī",百不获一:"bǎi bù huò yī",百不失一:"bǎi bù shī yī",百无失一:"bǎi wú shī yī",万不失一:"wàn bù shī yī",万无失一:"wàn wú shī yī",合而为一:"hé ér wéi yī",合两为一:"hé liǎng wéi yī",合二为一:"hé èr wéi yī",天下为一:"tiān xià wéi yī",相与为一:"xiāng yǔ wéi yī",较若画一:"jiào ruò huà yī",较如画一:"jiào rú huà yī",斠若画一:"jiào ruò huà yī",言行若一:"yán xíng ruò yī",始终若一:"shǐ zhōng ruò yī",终始若一:"zhōng shǐ ruò yī",惟精惟一:"wéi jīng wéi yī",众多非一:"zhòng duō fēi yī",不能赞一:"bù néng zàn yī",问一答十:"wèn yī dá shí",一不扭众:"yī bù niǔ zhòng",一以贯之:"yī yǐ guàn zhī",一以当百:"yī yǐ dāng bǎi",百不当一:"bǎi bù dāng yī",十不当一:"shí bù dāng yī",以一警百:"yǐ yī jǐng bǎi",以一奉百:"yǐ yī fèng bǎi",以一持万:"yǐ yī chí wàn",以一知万:"yǐ yī zhī wàn",百里挑一:"bǎi lǐ tiāo yī",整齐划一:"zhěng qí huà yī",一来二去:"yī lái èr qù",一路公交:"yī lù gōng jiāo",一路汽车:"yī lù qì chē",一路巴士:"yī lù bā shì",朝朝朝落:"zhāo cháo zhāo luò",曲意逢迎:"qū yì féng yíng",一行不行:"yì háng bù xíng",行行不行:"háng háng bù xíng"},abe=Object.keys(jB).map(e=>({zh:e,pinyin:jB[e],probability:2e-8,length:4,priority:Nc.Normal,dict:Symbol("dict4")})),WB={巴尔干半岛:"bā ěr gàn bàn dǎo",巴尔喀什湖:"bā ěr kā shí hú",不幸而言中:"bú xìng ér yán zhòng",布尔什维克:"bù ěr shí wéi kè",何乐而不为:"hé lè ér bù wéi",苛政猛于虎:"kē zhèng měng yú hǔ",蒙得维的亚:"méng dé wéi dì yà",民以食为天:"mín yǐ shí wéi tiān",事后诸葛亮:"shì hòu zhū gě liàng",物以稀为贵:"wù yǐ xī wéi guì",先下手为强:"xiān xià shǒu wéi qiáng",行行出状元:"háng háng chū zhuàng yuan",亚得里亚海:"yà dé lǐ yà hǎi",眼不见为净:"yǎn bú jiàn wéi jìng",竹筒倒豆子:"zhú tǒng dào dòu zi"},lbe=Object.keys(WB).map(e=>({zh:e,pinyin:WB[e],probability:2e-8,length:5,priority:Nc.Normal,dict:Symbol("dict5")}));function qB(e,t){return e&&(e.decimalt.probability)?e:t}function VB(e){e.probability<1e-300&&(e.probability*=1e300,e.decimal+=1)}function cbe(e){return e.priority===Nc.Custom?-(e.length*e.length*100):e.priority===Nc.Surname?-(e.length*e.length*10):0}function ube(e,t){const n=[];let i=e.length-1,o=e[i];for(let s=t-1;s>=0;s--){const r=s+1>=t?{probability:1,decimal:0,patterns:[]}:n[s+1];for(;o&&o.index+o.length-1===s;){const l=o.index,c={probability:o.probability*r.probability,decimal:r.decimal+cbe(o),patterns:r.patterns,concatPattern:o};VB(c),n[l]=qB(n[l],c),o=e[--i]}const a={probability:1e-13*r.probability,decimal:0,patterns:r.patterns};VB(a),n[s]=qB(n[s],a),n[s].concatPattern&&(n[s].patterns=n[s].patterns.concat(n[s].concatPattern),n[s].concatPattern=void 0,delete n[s+1])}return n[0].patterns.reverse()}function UB(e,t){return e&&e.count<=t.count?e:t}function dbe(e){return e.priority===Nc.Custom?-(e.length*e.length*1e5):e.priority===Nc.Surname?-(e.length*e.length*100):1}function fbe(e,t){const n=[];let i=e.length-1,o=e[i];for(let s=t-1;s>=0;s--){const r=s+1>=t?{count:0,patterns:[]}:n[s+1];for(;o&&o.index+o.length-1===s;){const l=o.index,c={count:dbe(o)+r.count,patterns:r.patterns,concatPattern:o};n[l]=UB(n[l],c),o=e[--i]}const a={count:1+r.count,patterns:r.patterns};n[s]=UB(n[s],a),n[s].concatPattern&&(n[s].patterns=n[s].patterns.concat(n[s].concatPattern),n[s].concatPattern=void 0,delete n[s+1])}return n[0].patterns.reverse()}function hbe(e,t){return!(t.index+t.length<=e.index||t.priority>e.priority||t.priority===e.priority&&t.length>e.length)}function pbe(e){const t=[];for(let n=e.length-1;n>=0;){const{index:i}=e[n];let o=n-1;for(;o>=0&&hbe(e[n],e[o]);)o--;(o<0||e[o].index+e[o].length<=i)&&t.push(e[n]),n=o}return t.reverse()}var KB;(function(e){e[e.ReverseMaxMatch=1]="ReverseMaxMatch",e[e.MaxProbability=2]="MaxProbability",e[e.MinTokenization=3]="MinTokenization"})(KB||(KB={}));class ZB{constructor(t,n="",i=""){this.children=new Map,this.fail=null,this.patterns=[],this.parent=t,this.prefix=n,this.key=i}}class mbe{constructor(){this.dictMap=new Map,this.queues=[],this.root=new ZB(null)}build(t){this.buildTrie(t),this.buildFailPointer()}buildTrie(t){for(let n of t){const i=bT(n.zh);let o=this.root;for(let s=0;s{t=t.concat(i)}),this.queues=[];t.length>n;){let i=t[n++],o=i.parent&&i.parent.fail,s=i.key;for(;o&&!o.children.has(s);)o=o.fail;o?i.fail=o.children.get(s):i.fail=this.root}}addPatternToDictMap(t){this.dictMap.has(t.dict)||this.dictMap.set(t.dict,new Set),this.dictMap.get(t.dict).add(t)}addNodeToQueues(t){this.queues[Uu(t.prefix)]||(this.queues[Uu(t.prefix)]=[]),this.queues[Uu(t.prefix)].push(t)}insertPattern(t,n){for(let i=t.length-1;i>=0;i--){const o=t[i];if(n.priority===o.priority&&n.probability>=o.probability)t[i+1]=o;else if(n.priority>o.priority)t[i+1]=o;else{t[i+1]=n;return}}t[0]=n}removeDict(t){this.dictMap.has(t)&&(this.dictMap.get(t).forEach(i=>{i.node.patterns=i.node.patterns.filter(o=>o!==i)}),this.dictMap.delete(t))}match(t,n){let i=this.root,o=[];const s=bT(t);for(let r=0;rn==="off"?u.priority!==Nc.Surname:n==="head"?u.length-1-r===0:!0);l&&o.push(Object.assign(Object.assign({},l),{index:r-l.length+1}));let c=i.fail;for(;c!==null;){const u=c.patterns.find(d=>n==="off"?d.priority!==Nc.Surname:n==="head"?d.length-1-r===0:!0);u&&o.push(Object.assign(Object.assign({},u),{index:r-u.length+1})),c=c.fail}}}return o}search(t,n,i=2){const o=this.match(t,n);return i===1?pbe(o):i===3?fbe(o,Uu(t)):ube(o,Uu(t))}}const gbe=[...lbe,...abe,...rbe,...sbe,...tbe,...obe],fX=new mbe;fX.build(gbe);const vbe=new uX,ybe=()=>vbe,bbe=[];function kbe(){return bbe}const i4=e=>{const t=J1.get(e);return t?t.split(" ")[0]:e},wbe=e=>{const t=[],n=kbe();for(let i=0;i{const s=o?wbe(e):e,r=fX.search(s,n,i);let a=0;const l=bT(e);for(let c=0;ce.replace(/(ā|á|ǎ|à)/g,"a").replace(/(ō|ó|ǒ|ò)/g,"o").replace(/(ē|é|ě|è)/g,"e").replace(/(ī|í|ǐ|ì)/g,"i").replace(/(ū|ú|ǔ|ù)/g,"u").replace(/(ǖ|ǘ|ǚ|ǜ)/g,"ü").replace(/(n̄|ń|ň|ǹ)/g,"n").replace(/(m̄|ḿ|m̌|m̀)/g,"m").replace(/(ê̄|ế|ê̌|ề)/g,"ê"),hX=(e,t="off")=>{const n=ybe();let i=J1.get(e)?J1.get(e).split(" "):[];if(n.get(e))i=n.get(e).split(" ");else if(t!=="off"){const o=kT[e];o&&(i=[o].concat(i.filter(s=>s!==o)))}return i},Abe=(e,t="off")=>{let n=hX(e,t);return n.length>0?n.map(i=>({origin:e,result:i,isZh:!0,originPinyin:i})):[{origin:e,result:e,isZh:!1,originPinyin:e}]},L6=(e,t)=>{const n=e.split(" "),i=[],o=[];for(let s of n)for(let r of G3e)if(s.startsWith(r)){let a=s.slice(r.length);Q3e.indexOf(r)!==-1&&Y3e.indexOf(a)!==-1&&(a=J3e[a]),i.push(r),o.push(a);break}return t==="standard"&&i.forEach((s,r)=>{(s==="y"||s==="w")&&(i[r]="")}),{final:o.join(" "),initial:i.join(" ")}},Z8=e=>{const{final:t}=L6(e);let n="",i="",o="";return X3e.indexOf(tC(t))!==-1?(n=t[0],i=t[1],o=t.slice(2)):(i=t[0]||"",o=t.slice(1)||""),{head:n,body:i,tail:o}},nC=e=>{const t=/(ā|ō|ē|ī|ū|ǖ|n̄|m̄|ê̄)/,n=/(á|ó|é|í|ú|ǘ|ń|ḿ|ế)/,i=/(ǎ|ǒ|ě|ǐ|ǔ|ǚ|ň|m̌|ê̌)/,o=/(à|ò|è|ì|ù|ǜ|ǹ|m̀|ề)/,s=/(a|o|e|i|u|ü|ê)/,r=/(n|m)$/,a=[];return e.split(" ").forEach(c=>{t.test(c)?a.push("1"):n.test(c)?a.push("2"):i.test(c)?a.push("3"):o.test(c)?a.push("4"):s.test(c)||r.test(c)?a.push("0"):a.push("")}),a.join(" ")},Sbe=(e,t)=>{const n=tC(e).split(" "),i=nC(t).split(" "),o=[];return n.forEach((s,r)=>{o.push(`${s}${i[r]}`)}),o.join(" ")},pX=(e,t)=>{const n=[];return e.split(" ").forEach(o=>{n.push(t?o[0]:o)}),n.join(" ")};function xbe(e,t,n){if(ibe.indexOf(e)===-1)return i4(e);if(t===n&&t&&i4(t)!==t)return tC(i4(e));if(n&&!nbe[e].includes(n)){const i=i4(n);if(i!==n){const o=nC(i),s=dX[e];for(let r in s)if(s[r].indexOf(Number(o))!==-1)return r}}}function _be(e,t){if(e==="了"&&(!t||!J1.get(t)))return"liǎo"}function Ibe(e,t){if(e==="々")return!t||!J1.get(t)?"tóng":J1.get(t).split(" ")[0]}function GB(e,t,n){return Ibe(e,t)||_be(e,t)||xbe(e,t,n)||i4(e)}const Tbe=e=>typeof e!="string"?(console.error("The first param of pinyin is error: "+e+' is not assignable to type "string".'),!1):!0;function _S(e,t){return t instanceof RegExp?t.test(e):!0}const Mbe=(e,t)=>{let n=t.nonZh;if(n==="removed")return e.filter(i=>i.isZh||!_S(i.origin,t.nonZhScope));if(n==="consecutive"){for(let i=e.length-2;i>=0;i--){const o=e[i],s=e[i+1];!o.isZh&&!s.isZh&&_S(o.origin,t.nonZhScope)&&_S(s.origin,t.nonZhScope)&&(o.origin+=s.origin,o.result+=s.result,s.delete=!0)}return e.filter(i=>!i.delete)}else return e},QB=(e,t)=>Uu(e)===1&&t.multiple?Abe(e,t.surname):!1,Ebe=(e,t)=>{switch(t.pattern){case"pinyin":break;case"num":e.forEach(n=>{n.result=n.isZh?nC(n.result):""});break;case"initial":e.forEach(n=>{n.result=n.isZh?L6(n.result,t.initialPattern).initial:""});break;case"final":e.forEach(n=>{n.result=n.isZh?L6(n.result,t.initialPattern).final:""});break;case"first":e.forEach(n=>{n.result=pX(n.result,n.isZh)});break;case"finalHead":e.forEach(n=>{n.result=n.isZh?Z8(n.result).head:""});break;case"finalBody":e.forEach(n=>{n.result=n.isZh?Z8(n.result).body:""});break;case"finalTail":e.forEach(n=>{n.result=n.isZh?Z8(n.result).tail:""});break}},Lbe=(e,t)=>{switch(t.toneType){case"symbol":break;case"none":e.forEach(n=>{n.isZh&&(n.result=tC(n.result))});break;case"num":{e.forEach(n=>{n.isZh&&(n.result=Sbe(n.result,n.originPinyin))});break}}},Rbe=(e,t)=>{t.v&&e.forEach(n=>{n.isZh&&(n.result=n.result.replace(/ü/g,typeof t.v=="string"?t.v:"v"))})},Pbe=(e,t,n)=>{if(t.multiple&&Uu(n)===1){let i="";e=e.filter(o=>{const s=o.result!==i;return i=o.result,s})}return t.type==="array"?e.map(i=>i.result):t.type==="all"?e.map(i=>{const o=i.isZh?i.result:"",{initial:s,final:r}=L6(o,t.initialPattern),{head:a,body:l,tail:c}=Z8(o);let u=[];return o!==""&&(u=[o].concat(hX(i.origin,t.surname).filter(d=>d!==o))),{origin:i.origin,pinyin:o,initial:s,final:r,first:pX(i.result,i.isZh),finalHead:a,finalBody:l,finalTail:c,num:Number(nC(i.originPinyin)),isZh:i.isZh,polyphonic:u,inZhRange:!!J1.get(i.origin),result:i.result}}):e.map(i=>i.result).join(t.separator)},$be=(e,t)=>(t===!1&&e.forEach(n=>{n.origin==="一"?n.result=n.originPinyin="yī":n.origin==="不"&&(n.result=n.originPinyin="bù")}),e),Obe={pattern:"pinyin",toneType:"symbol",type:"string",multiple:!1,mode:"normal",removeNonZh:!1,nonZh:"spaced",v:!1,separator:" ",toneSandhi:!0,segmentit:2};function R6(e,t){if(t=Object.assign(Object.assign({},Obe),t||{}),!Tbe(e))return e;if(e==="")return t.type==="array"||t.type==="all"?[]:"";t.surname===void 0&&(t.mode==="surname"?t.surname="all":t.surname="off"),t.type==="all"&&(t.pattern="pinyin"),t.pattern==="num"&&(t.toneType="none"),t.removeNonZh&&(t.nonZh="removed");let i=Array(Uu(e)),{list:o}=Cbe(e,i,t.surname,t.segmentit,t.traditional);return o=$be(o,t.toneSandhi),o=Mbe(o,t),QB(e,t)&&(o=QB(e,t)),Ebe(o,t),Lbe(o,t),Rbe(o,t),Pbe(o,t,e)}var wT;(function(e){e[e.AllSegment=1]="AllSegment",e[e.AllArray=2]="AllArray",e[e.AllString=3]="AllString",e[e.PinyinSegment=4]="PinyinSegment",e[e.PinyinArray=5]="PinyinArray",e[e.PinyinString=6]="PinyinString",e[e.ZhSegment=7]="ZhSegment",e[e.ZhArray=8]="ZhArray",e[e.ZhString=9]="ZhString"})(wT||(wT={}));wT.AllSegment;function NR(e,t=[]){let n="";const i=[],o=[],s=(a,l)=>{for(let c=a;cl.start-c.start)){const l=Math.min(Math.max(a.start,r),e.length),c=Math.min(Math.max(a.end,l),e.length);s(r,l);const u=a.text??"";for(let d=0;d0?e.ends[e.ends.length-1]:e.source.length}function Fbe(e,t){return t>0&&t<=e.ends.length?e.ends[t-1]:t<=0?gX(e,0):e.source.length}const CT=[{name:"/new",desc:"commands.new.desc",noArgs:!0},{name:"/clear",desc:"commands.clear.desc",noArgs:!0},{name:"/login",desc:"commands.login.desc",noArgs:!0},{name:"/plan",desc:"commands.plan.desc"},{name:"/swarm",desc:"commands.swarm.desc"},{name:"/tower",desc:"commands.tower.desc"},{name:"/goal",desc:"commands.goal.desc"},{name:"/btw",desc:"commands.btw.desc",acceptsInput:!0,argHint:"commands.btw.argHint"},{name:"/compact",desc:"commands.compact.desc",acceptsInput:!0,argHint:"commands.compact.argHint"},{name:"/undo",desc:"commands.undo.desc",noArgs:!0},{name:"/fork",desc:"commands.fork.desc",noArgs:!0},{name:"/reload",desc:"commands.reload.desc",noArgs:!0},{name:"/export",desc:"commands.export.desc",noArgs:!0},{name:"/status",desc:"commands.status.desc",noArgs:!0}],YB={"/plan":"plan","/goal":"goal","/swarm":"swarm"};function vX(e){return Object.hasOwn(YB,e)?YB[e]:void 0}function P6(e){if(!e.startsWith("/"))return null;const t=e.indexOf(" ");return t===-1?{cmd:e,arg:""}:{cmd:e.slice(0,t),arg:e.slice(t+1)}}function $6(e,t=Nbe()){const n=typeof e=="string"?NR(e,mX(e)):e,i=Dbe(n.text);if(!i)return null;const o=t.find(c=>c.isSkill!==!0&&c.name===i.cmd);if(!o||o.noArgs===!0&&i.arg.trim()!=="")return null;const{source:s}=n,r=gX(n,i.start),a=Fbe(n,i.start+i.cmd.length);let l=a;for(;s[l]===" ";)l+=1;return{item:o,commandRange:{start:r,end:a},argumentRange:{start:l,end:s.length},needsArgumentSeparator:l===a}}function Dbe(e){const t=e.length-e.trimStart().length;if(vX(e.slice(t,e.trimEnd().length))!==void 0)return{cmd:e.slice(t,e.trimEnd().length),arg:"",start:t};const n=P6(e);return n===null?null:{cmd:n.cmd,arg:n.arg,start:0}}let JB=null;function Nbe(){return JB??=oC(),JB}const Jd="skill:";function Bbe(e,t){const n=e.find(r=>r.name===t);if(n!==void 0)return n;const i=`/${Jd}${t.slice(1)}`,o=e.find(r=>r.name===i);if(o!==void 0)return o;if(!t.startsWith(`/${Jd}`))return;const s=t.slice(1+Jd.length);if(!(s.length===0||s.includes(" ")))return e.find(r=>r.isSkill===!0&&iC(r.name)===s)}function iC(e){const t=e.startsWith("/")?e.slice(1):e;return t.startsWith(Jd)?t.slice(Jd.length):t}function zbe(e,t,n){for(const i of[`/${Jd}${t}`,`/${t}`]){if(e===i)return;if(e.startsWith(`${i} `))return e.slice(i.length+1).trim()||void 0}return(n??"").trim()||void 0}function oC(e=[],t){const n=t?.towerEnabled===!0?CT:CT.filter(o=>o.name!=="/tower"),i=e.map(o=>({name:o.source==="builtin"?`/${o.name}`:`/${Jd}${o.name}`,desc:o.description,isSkill:!0,acceptsInput:!0}));return[...n,...i]}const XB=new Map;function yX(e){let t=XB.get(e);if(!t){const n=R6(e,{toneType:"none",type:"array"}),i=R6(e,{pattern:"first",toneType:"none",type:"array"});t=Hbe(e,n,i),XB.set(e,t)}return t}const ez={full:[],first:[],offsets:[],literal:[]};function Hbe(e,t,n){if(t.length!==n.length)return ez;const i=[],o=[];let s=0;for(let r=0;r0&&e.slice(s,s+a.length).toLowerCase()===a.toLowerCase()?(o.push(!0),s+=a.length):(o.push(!1),s+=Array.from(e.slice(s))[0]?.length??0)}return i.push(s),s!==e.length?ez:{full:t,first:n,offsets:i,literal:o}}function AT(e,t,n,i){const o=e[t];let s=0,r=-1,a=-1,l=0,c=0;for(let f=0;f=0)return AT(i,"first",o,o+t.length);const s=i.full.join("").indexOf(t);if(!(s<0))return AT(i,"full",s,s+t.length)}function Ube(e,t,n){const i=e.trim().replace(/^\//,"").toLowerCase();if(i==="")return{};const o=qbe(t,i),s=Vbe(n,i);return{name:o?[o]:void 0,desc:s?[s]:void 0}}const Kbe={keys:[{name:"name",weight:3},{name:"desc",weight:1},{name:"pinyinFull",weight:1},{name:"pinyinFirst",weight:1}],includeScore:!0,includeMatches:!0,ignoreLocation:!0,threshold:.4};function Zbe(e,t){const n=e.toLowerCase(),i=t.toLowerCase();return n===i?0:n.startsWith(i)?1:2}function nz(e){const t=[...e].sort((i,o)=>i[0]-o[0]),n=[];for(const i of t){const o=n[n.length-1];o&&i[0]<=o[1]?o[1]=Math.max(o[1],i[1]):n.push([...i])}return n}function Gbe(e,t){const n=[],i=[];for(const o of t??[])for(const[s,r]of o.indices)if(o.key==="name")n.push([s+1,r+2]);else if(o.key==="desc")i.push([s,r+1]);else if(o.key==="pinyinFirst"||o.key==="pinyinFull"){const a=AT(yX(e.desc),o.key==="pinyinFirst"?"first":"full",s,r+1);a&&i.push(a)}return{name:n.length>0?nz(n):void 0,desc:i.length>0?nz(i):void 0}}function Qbe(e,t=CT,n=i=>i.desc){const i=e.trim().replace(/^\//,"");if(i==="")return t.map(s=>({item:s,ranges:{}}));const o=t.map((s,r)=>{const a=n(s),l=jbe(a);return{index:r,item:s,name:s.name.replace(/^\//,""),desc:a,pinyinFull:l.full,pinyinFirst:l.first}});return new V3e(o,Kbe).search(i).map(({item:s,score:r,matches:a})=>({doc:s,score:r??1,rank:Zbe(s.name,i),ranges:Gbe(s,a)})).sort((s,r)=>s.rank!==r.rank?s.rank-r.rank:s.score!==r.score?s.score-r.score:s.doc.index-r.doc.index).map(({doc:s,ranges:r})=>({item:s.item,ranges:r}))}const Ybe=50;function Jbe(e){const t=e.llmTiming?.llmStreamDurationMs,n=e.usage?.output;if(!(t===void 0||ts&&r>s,l=Math.min(e,a?r:s);return{left:a?t.left-i-l:t.right+i,maxWidth:l,flipped:a}}let n5e=0;function iz(e,t){const n=++n5e;return e.pendingSwarmBySession[t]=n,n}function BR(e,t,n){return n===void 0||e.pendingSwarmBySession[t]!==n?!1:(delete e.pendingSwarmBySession[t],!0)}function ST(e,t,n){e.pendingSwarmBySession[t]===void 0&&(e.swarmModeBySession[t]=n)}function oz(e,t){const n=new Set(e.map(c=>c.id)),i=t.filter(c=>c.kind==="subagent"&&!n.has(c.id));if(i.length===0)return e;const o=new Map(e.map(c=>[c.id,c])),s=new Map(e.filter(c=>c.kind==="subagent"&&c.agentId!==void 0).map(c=>[c.agentId,c])),r=new Set,a=i.map(c=>{const u=c.backgroundTaskId!==void 0?o.get(c.backgroundTaskId):void 0,d=s.get(c.agentId??c.id),f=(d?.status==="running"&&u?.status!=="running"?d:u)??d;if(f===void 0)return c;r.add(f.id);const h=c.status==="running"&&f.status!=="running";return{...c,status:c.status==="running"?f.status:c.status,subagentPhase:h?f.status==="completed"?"completed":"failed":c.subagentPhase,completedAt:f.completedAt??c.completedAt,completedAtEstimated:f.completedAt!==void 0?void 0:c.completedAtEstimated,outputPreview:f.outputPreview??c.outputPreview,outputBytes:f.outputBytes??c.outputBytes,model:c.model??f.model,thinkingEffort:c.thinkingEffort??f.thinkingEffort,backgroundTaskId:f.id}});return[...e.filter(c=>!r.has(c.id)),...a]}const i5e="Report the current tower status: call TowerStatus and give a compact summary.",o5e="Tear down the tower: call TowerTeardown and report what it did. It refuses to destroy dirty worktrees unless forced.";let s5e=0;function xT(e,t){const n=++s5e;return e.pendingTowerBySession[t]=n,n}function zR(e,t,n){return n===void 0||e.pendingTowerBySession[t]!==n?!1:(delete e.pendingTowerBySession[t],!0)}function _T(e,t,n){e.pendingTowerBySession[t]===void 0&&(e.towerModeBySession[t]=n)}function r5e(){if(typeof navigator>"u")return!1;if(/Mac|iPod|iPhone|iPad/.test(navigator.platform))return!0;const e=navigator.userAgentData;return e?.platform==="macOS"||e?.platform==="iOS"}function a5e(e,t=r5e()){return(t?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey)&&!e.altKey&&!e.shiftKey&&(e.code==="KeyF"||e.key.toLowerCase()==="f")&&!e.defaultPrevented}const l5e=new Map([["ς","σ"],["ß","ss"],["ſ","s"],["ff","ff"],["fi","fi"],["fl","fl"],["ffi","ffi"],["ffl","ffl"],["ſt","st"],["st","st"],["ʼn","ʼn"],["µ","μ"],["K","k"],["Å","å"],["Ω","ω"]]);function c5e(e){return e==="pre"||e==="pre-wrap"||e==="break-spaces"?"preserve":e==="pre-line"?"pre-line":"collapse"}function u5e(e,t){if(t==="preserve")return{text:e,map:Array.from({length:e.length},(r,a)=>a)};const n=t==="collapse"?/[\t\n\f\r ]/:/[\t ]/;let i="";const o=[];let s=!1;for(let r=0;rsz(u.text)),i="\0";let o="";const s=[];for(let u=0;u0&&e[u].gapBefore&&(o+=i),s[u]=o.length,o+=n[u].folded;const r=h5e(sz(t).folded);if(r===null)return;const a=new RegExp(r,"g");function l(u){let d=0,f=s.length-1,h=0;for(;d<=f;){const m=d+f>>1;s[m]<=u?(h=m,d=m+1):f=m-1}return h}let c;for(;;){const u=a.exec(o);if(u===null)return;const d=u.index,f=d+u[0].length-1,h=l(d),m=l(f),g=n[h].map[d-s[h]],y=n[m].map[f-s[m]],v={startSeg:h,startOffset:g.start,endSeg:m,endOffset:y.start+y.length};c!==void 0&&c.startSeg===v.startSeg&&c.startOffset===v.startOffset&&c.endSeg===v.endSeg&&c.endOffset===v.endOffset||(c=v,yield v)}}const f5e=/[.*+?^${}()|[\]\\]/g;function h5e(e){const t=[];let n=0;for(;n=y5e)return{ranges:l,truncated:!0};l.push(f)}}return{ranges:l,truncated:!1}}const wX="kimi-transcript-search",IT="kimi-transcript-search-current";function CX(){return globalThis.CSS?.highlights??null}function TS(e,t){const n=CX(),i=globalThis.Highlight;if(!n||!i)return;if(e.length===0){TT();return}const o=new i;for(const r of e)o.add(r);n.set(wX,o);const s=e[t];if(s!==void 0){const r=new i;r.add(s),n.set(IT,r)}else n.delete(IT)}function TT(){const e=CX();e?.delete(wX),e?.delete(IT)}let AX=null;function k5e(e){e!==null&&(AX=e)}let az=0,x5=null;async function O6(e){const t=++az,n=(async()=>{const o=await e();t===az&&k5e(o)})(),i=(async()=>{await n,x5!==null&&x5.seq>t&&await x5.promise})();return x5={seq:t,promise:i},i}let SX=null;function w5e(e){SX=e}const C5e=5e3;function A5e(e){return Promise.race([e(),new Promise(t=>{setTimeout(()=>t(null),C5e)})])}function _5(){return`${AX==="global"?"https://www.kimi.ai":"https://www.kimi.com"}/code?from=${bv?"kimi_code_desktop":"kimi_code_web"}`}function HR(){const e=SX;if(e===null){window.open(_5(),"_blank","noopener");return}const t=()=>A5e(e);if(bv){O6(t).then(()=>{window.open(_5(),"_blank","noopener")});return}const n=window.open("","_blank");if(n===null){window.open(_5(),"_blank","noopener");return}try{n.opener=null}catch{}O6(t).then(()=>{try{n.location.href=_5()}catch{}})}function S5e(e,t,n){if(e.length===0)return null;const i=new Set(e),o=t.filter(r=>i.has(r)),s=e.filter(r=>!t.includes(r));return s.length===0&&o.length===t.length?null:t.length===0&&n!==void 0?s.toSorted((r,a)=>(n.get(a)??Number.NEGATIVE_INFINITY)-(n.get(r)??Number.NEGATIVE_INFINITY)):[...s,...o]}function x5e(e,t){const n=new Map(t.map((i,o)=>[i,o]));return e.toSorted((i,o)=>(n.get(i.id)??-1)-(n.get(o.id)??-1))}function _5e(e,t,n,i="before"){const o=e.indexOf(t),s=e.indexOf(n);if(o===-1||s===-1||o===s)return e;const r=[...e];r.splice(o,1);const a=o(t.get(i.id)??Number.NEGATIVE_INFINITY)-(t.get(n.id)??Number.NEGATIVE_INFINITY))}function T5e(e,t){let n=!1;const i={...e};for(const[o,s]of t)s>(i[o]??Number.NEGATIVE_INFINITY)&&(i[o]=s,n=!0);return{next:i,changed:n}}function M5e(e,t){const n=new Map;for(const i of e){if(i.parentSessionId||i.archived)continue;const o=new Date(i.updatedAt).getTime();if(Number.isNaN(o))continue;const s=t(i);o>(n.get(s)??Number.NEGATIVE_INFINITY)&&n.set(s,o)}return n}function E5e(e,t){const n=new Map;for(const i of e){const o=t[i.id]??Number.NEGATIVE_INFINITY,s=i.lastOpenedAt?Date.parse(i.lastOpenedAt):Number.NaN,r=Number.isNaN(s)?Number.NEGATIVE_INFINITY:s;n.set(i.id,Math.max(o,r))}return n}function L5e(e,t){const n=Object.keys(e);if(!n.some(o=>!t.has(o)))return{next:e,changed:!1};const i={};for(const o of n)t.has(o)&&(i[o]=e[o]);return{next:i,changed:!0}}const R5e=5;function P5e(e,t,n,i=R5e){if(e.length<=i)return e;const o=e.slice(0,i);if(t&&!o.some(s=>s.id===t)){const s=e.find(r=>r.id===t);s&&(o[i-1]=s)}return o}const G8=new Set;let F6=!1;function D6(){for(const e of G8)e()}function $5e(){F6||typeof window>"u"||(F6=!0,window.addEventListener("scroll",D6,!0),window.addEventListener("resize",D6))}function O5e(){F6&&(F6=!1,window.removeEventListener("scroll",D6,!0),window.removeEventListener("resize",D6))}function F5e(e){G8.add(e),$5e();let t=!1;return()=>{t||(t=!0,G8.delete(e),G8.size===0&&O5e())}}const qh=6,Vh=8,D5e=150,N5e=tt({__name:"TooltipBubble",props:{target:{default:null},delegate:{default:null},text:{},placement:{default:"top"},maxWidth:{default:280},maxLines:{default:6}},setup(e){const t=e,n=Z(),i=Z(!1),o=Z(!1),s=Z({maxWidth:`${t.maxWidth}px`});let r,a=null,l,c=!1;function u(){if(t.target)return t.target;const T=t.delegate;return T?T.firstElementChild??T:null}function d(T){const E=n.value;if(!E)return;const L=T.getBoundingClientRect(),P=E.offsetWidth,B=E.offsetHeight,V=window.innerWidth,N=window.innerHeight;let D=t.placement;D==="top"&&L.top-qh-BN-Vh?D="top":D==="left"&&L.left-qh-PV-Vh&&(D="left");let j=0,F=0;D==="top"?(j=L.top-qh-B,F=L.left+L.width/2-P/2):D==="bottom"?(j=L.bottom+qh,F=L.left+L.width/2-P/2):D==="left"?(j=L.top+L.height/2-B/2,F=L.left-qh-P):(j=L.top+L.height/2-B/2,F=L.right+qh),F=Math.min(Math.max(F,Vh),V-Vh-P),j=Math.min(Math.max(j,Vh),N-Vh-B),s.value={maxWidth:`${t.maxWidth}px`,top:`${Math.round(j)}px`,left:`${Math.round(F)}px`}}function f(){return z2.value&&!FN(u())}function h(){if(!t.text||f())return;const T=u();T&&(window.clearTimeout(r),r=window.setTimeout(()=>{!T.isConnected||f()||(s.value={maxWidth:`${t.maxWidth}px`},i.value=!0,o.value=!1,kt(()=>{d(T),o.value=!0}))},D5e))}function m(){window.clearTimeout(r),c=!1,i.value=!1,o.value=!1}function g(T){c||q2(T)||(c=!0,h())}function y(T){!(T.target instanceof Element)||!T.target.matches(":focus-visible")||t.delegate&&k(T.target)!==t.delegate||h()}function v(){m()}function k(T){return T instanceof Element?T.closest(".ui-tip"):null}function C(T){const E=t.delegate;if(E){if(k(T.target)!==E){m();return}c||q2(T)||(c=!0,h())}}function w(T){const E=t.delegate;if(!E)return;const L=T.relatedTarget;L instanceof Element&&E.contains(L)||m()}function S(){m()}function x(){a&&(a.removeEventListener("focusin",y),t.delegate?(a.removeEventListener("pointermove",C),a.removeEventListener("mouseout",w),a.removeEventListener("focusout",S)):(a.removeEventListener("pointermove",g),a.removeEventListener("mouseleave",v),a.removeEventListener("focusout",v)),a=null)}function M(){x(),l?.disconnect(),l=void 0;const T=t.target??t.delegate;T&&(a=T,T.addEventListener("focusin",y),t.delegate?(T.addEventListener("pointermove",C,{passive:!0}),T.addEventListener("mouseout",w),T.addEventListener("focusout",S),l=new MutationObserver(()=>{i.value&&m()}),l.observe(T,{childList:!0})):(T.addEventListener("pointermove",g,{passive:!0}),T.addEventListener("mouseleave",v),T.addEventListener("focusout",v)))}Fe(()=>[t.target,t.delegate],()=>{m(),M()}),Fe(z2,T=>{T&&!FN(u())&&m()});let I=null;return Fe(i,T=>{if(T){I??=F5e(m);return}I?.(),I=null}),Pn(()=>{nb(),M()}),wi(()=>{window.clearTimeout(r),l?.disconnect(),x(),I?.(),I=null}),(T,E)=>i.value?(b(),oe(Ls,{key:0,to:"body"},[A("div",{ref_key:"bubble",ref:n,class:De(["ui-tip__bubble",{positioned:o.value}]),style:nn([s.value,{"--tip-lines":e.maxLines}]),role:"tooltip"},O(e.text),7)])):Y("",!0)}}),xX=wt(N5e,[["__scopeId","data-v-19764006"]]),B5e=["aria-pressed","type","disabled","aria-label"],z5e=tt({__name:"IconButton",props:{size:{default:"md"},disabled:{type:Boolean},pressed:{type:Boolean,default:void 0},label:{},tooltip:{},type:{default:"button"}},setup(e,{expose:t}){const n=Z();return t({el:n}),(i,o)=>(b(),_("button",{ref_key:"el",ref:n,class:De(["ui-icon-button",[`ui-icon-button--${e.size}`,{"is-pressed":e.pressed}]]),"aria-pressed":e.pressed,type:e.type,disabled:e.disabled,"aria-label":e.label},[si(i.$slots,"default",{},void 0,!0),e.tooltip?(b(),oe(xX,{key:0,target:n.value??null,text:e.tooltip},null,8,["target","text"])):Y("",!0)],10,B5e))}}),fn=wt(z5e,[["__scopeId","data-v-ae430378"]]),H5e={class:"ui-action-toast-host"},j5e={class:"ui-action-toast__body"},W5e=tt({__name:"ActionToast",props:{duration:{default:8e3},dismissLabel:{},dismissToken:{}},emits:["dismiss"],setup(e,{emit:t}){const n=e,i=t,{t:o}=Sm();let s=null,r=0,a=0;function l(d){s=setTimeout(()=>i("dismiss",n.dismissToken),d),r=Date.now()+d}function c(){s!==null&&(clearTimeout(s),s=null,a=Math.max(0,r-Date.now()))}function u(){s===null&&l(a)}return l(n.duration),Jn(()=>{s!==null&&clearTimeout(s)}),(d,f)=>(b(),_("div",H5e,[A("div",{class:"ui-action-toast",role:"status",onPointerenter:c,onPointerleave:u},[A("span",j5e,[si(d.$slots,"default")]),q(fn,{class:"ui-action-toast__close",size:"sm",label:e.dismissLabel??p(o)("common.dismiss"),tooltip:e.dismissLabel??p(o)("common.dismiss"),onClick:f[0]||(f[0]=h=>i("dismiss",e.dismissToken))},{default:ne(()=>[q(ve,{name:"close",size:"sm"})]),_:1},8,["label","tooltip"])],32)]))}}),q5e=wt(W5e,[["__scopeId","data-v-23d7613a"]]),V5e={key:0,width:"36",height:"36",viewBox:"0 0 36 36",fill:"none",stroke:"var(--color-success)","stroke-width":"2","aria-hidden":"true"},U5e={key:1,width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",stroke:"var(--color-danger)","stroke-width":"1.5","aria-hidden":"true"},K5e={key:2,width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",stroke:"var(--color-warning)","stroke-width":"1.5","aria-hidden":"true"},S1=tt({__name:"AuthStateIcon",props:{kind:{}},setup(e){return(t,n)=>e.kind==="success"?(b(),_("svg",V5e,[...n[0]||(n[0]=[A("circle",{cx:"18",cy:"18",r:"15"},null,-1),A("polyline",{points:"10,18 15,24 26,12"},null,-1)])])):e.kind==="expired"?(b(),_("svg",U5e,[...n[1]||(n[1]=[A("circle",{cx:"14",cy:"14",r:"12"},null,-1),A("line",{x1:"14",y1:"8",x2:"14",y2:"15"},null,-1),A("circle",{cx:"14",cy:"19",r:"1.2",fill:"var(--color-danger)"},null,-1)])])):(b(),_("svg",K5e,[...n[2]||(n[2]=[A("path",{d:"M14 3 L26 24 H2 Z"},null,-1),A("line",{x1:"14",y1:"12",x2:"14",y2:"18"},null,-1),A("circle",{cx:"14",cy:"21.5",r:"1",fill:"var(--color-warning)"},null,-1)])]))}}),Z5e={key:0,class:"ui-badge__dot","aria-hidden":"true"},G5e=tt({__name:"Badge",props:{variant:{default:"neutral"},size:{default:"md"},dot:{type:Boolean}},setup(e){return(t,n)=>(b(),_("span",{class:De(["ui-badge",[`ui-badge--${e.variant}`,`ui-badge--${e.size}`]])},[e.dot?(b(),_("span",Z5e)):Y("",!0),si(t.$slots,"default",{},void 0,!0)],2))}}),yr=wt(G5e,[["__scopeId","data-v-8fbd890a"]]),Q5e={class:"ui-banner__icon","aria-hidden":"true"},Y5e={class:"ui-banner__text"},J5e=tt({__name:"Banner",props:{variant:{default:"info"}},setup(e){return(t,n)=>(b(),_("div",{class:De(["ui-banner",`ui-banner--${e.variant}`]),role:"status"},[A("span",Q5e,[si(t.$slots,"icon",{},()=>[e.variant==="info"?(b(),oe(ve,{key:0,name:"info",size:"md"})):(b(),oe(ve,{key:1,name:"alert-triangle",size:"md"}))],!0)]),A("span",Y5e,[si(t.$slots,"default",{},void 0,!0)])],2))}}),Vg=wt(J5e,[["__scopeId","data-v-6d8a7768"]]),X5e=["aria-label"],e8e=tt({__name:"Spinner",props:{size:{default:"md"},label:{}},setup(e){const{t}=Sm(),n=Z(null);let i,o;function s(){const r=n.value;if(r){if(o?.matches){i?.cancel(),i=void 0;return}i||(i=r.animate([{transform:"rotate(0deg)"},{transform:"rotate(360deg)"}],{duration:850,iterations:1/0}),i.startTime=0)}}return Pn(()=>{const r=n.value;!r||typeof r.animate!="function"||(o=window.matchMedia("(prefers-reduced-motion: reduce)"),o.addEventListener("change",s),s())}),wi(()=>{o?.removeEventListener("change",s),o=void 0,i?.cancel(),i=void 0}),(r,a)=>(b(),_("span",{ref_key:"boxRef",ref:n,class:De(["ui-spinner",`ui-spinner--${e.size}`]),role:"status","aria-label":e.label??p(t)("common.loading")},[...a[0]||(a[0]=[A("svg",{class:"ui-spinner__svg",viewBox:"0 0 24 24","aria-hidden":"true"},[A("circle",{class:"ui-spinner__track",cx:"12",cy:"12",r:"9"}),A("circle",{class:"ui-spinner__arc",cx:"12",cy:"12",r:"9"})],-1)])],10,X5e))}}),Hi=wt(e8e,[["__scopeId","data-v-bf7852f3"]]),t8e=["type","disabled"],n8e={class:"ui-button__content"},i8e=tt({__name:"Button",props:{variant:{default:"primary"},size:{default:"md"},disabled:{type:Boolean},loading:{type:Boolean},type:{default:"button"}},setup(e){return(t,n)=>(b(),_("button",{class:De(["ui-button",[`ui-button--${e.variant}`,`ui-button--${e.size}`,{"is-loading":e.loading}]]),type:e.type,disabled:e.disabled||e.loading},[e.loading?(b(),oe(Hi,{key:0,size:"sm",class:"ui-button__spinner"})):Y("",!0),A("span",n8e,[si(t.$slots,"default",{},void 0,!0)])],10,t8e))}}),xn=wt(i8e,[["__scopeId","data-v-e1f48763"]]),o8e={key:0,class:"ui-card__head"},s8e={class:"ui-card__body"},r8e={key:1,class:"ui-card__foot"},a8e=tt({__name:"Card",props:{elevated:{type:Boolean,default:!1},size:{default:"md"}},setup(e){return(t,n)=>(b(),_("div",{class:De(["ui-card",[{"is-elevated":e.elevated},`ui-card--${e.size}`]])},[t.$slots.head?(b(),_("div",o8e,[si(t.$slots,"head",{},void 0,!0)])):Y("",!0),A("div",s8e,[si(t.$slots,"default",{},void 0,!0)]),t.$slots.foot?(b(),_("div",r8e,[si(t.$slots,"foot",{},void 0,!0)])):Y("",!0)],2))}}),_X=wt(a8e,[["__scopeId","data-v-cda946c0"]]),l8e=["checked","disabled"],c8e={class:"ui-check__box","aria-hidden":"true"},u8e={key:0,class:"ui-check__label"},d8e=tt({__name:"Checkbox",props:{modelValue:{type:Boolean},disabled:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const n=t;return(i,o)=>(b(),_("label",{class:De(["ui-check",{"is-on":e.modelValue,"is-disabled":e.disabled}])},[A("input",{class:"ui-check__input",type:"checkbox",checked:e.modelValue,disabled:e.disabled,onChange:o[0]||(o[0]=s=>n("update:modelValue",s.target.checked))},null,40,l8e),A("span",c8e,[e.modelValue?(b(),oe(ve,{key:0,name:"check",size:"md"})):Y("",!0)]),i.$slots.default?(b(),_("span",u8e,[si(i.$slots,"default",{},void 0,!0)])):Y("",!0)],2))}}),f8e=wt(d8e,[["__scopeId","data-v-acffd4ba"]]),h8e=["r","stroke-width"],p8e=["r","stroke-width","stroke-dasharray","stroke-dashoffset"],m8e=["cx","r"],g8e=.25,v8e=tt({__name:"ContextRing",props:{pct:{},weight:{default:"regular"},indeterminate:{type:Boolean,default:!1},origin:{type:Boolean,default:!1}},setup(e){const t=e,n={regular:{r:7,stroke:2.5},thin:{r:9.25,stroke:1.5}},i=R(()=>n[t.weight]),o=R(()=>2*Math.PI*i.value.r),s=R(()=>t.indeterminate?`${o.value*g8e} ${o.value}`:`${o.value}`),r=R(()=>t.indeterminate?0:o.value*(1-Math.min(100,Math.max(0,t.pct))/100));return(a,l)=>(b(),_("svg",{class:De(["ctx-ring",[`ctx-ring--${e.weight}`,{"ctx-ring--indeterminate":e.indeterminate}]]),viewBox:"0 0 20 20","aria-hidden":"true"},[A("circle",{class:"ctx-ring-track",cx:"10",cy:"10",r:i.value.r,fill:"none","stroke-width":i.value.stroke},null,8,h8e),A("circle",{class:"ctx-ring-fill",cx:"10",cy:"10",r:i.value.r,fill:"none","stroke-width":i.value.stroke,"stroke-linecap":"round","stroke-dasharray":s.value,"stroke-dashoffset":`${r.value}`},null,8,p8e),e.origin?(b(),_("circle",{key:0,class:"ctx-ring-origin",cx:10+i.value.r,cy:"10",r:i.value.stroke/2},null,8,m8e)):Y("",!0)],2))}}),y8e=wt(v8e,[["__scopeId","data-v-ef2d1b6a"]]),yl=Z(0),Rg=Z(0),H0=Z([]),b8e=R(()=>H0.value[H0.value.length-1]);function k8e(e){H0.value=[...H0.value,e],yl.value+=1}function lz(e){const t=H0.value.lastIndexOf(e);if(t<0)return;const n=[...H0.value];n.splice(t,1),H0.value=n,yl.value=Math.max(0,yl.value-1)}const w8e=["aria-modal","aria-label","inert"],C8e={key:0,class:"ui-dialog__head"},A8e={class:"ui-dialog__titles"},S8e={key:0,class:"ui-dialog__title"},x8e={key:1,class:"ui-dialog__desc"},_8e={class:"ui-dialog__body"},I8e={key:1,class:"ui-dialog__foot"},T8e='a[href], button:not([disabled]), textarea:not([disabled]), input:not([disabled]), select:not([disabled]), [tabindex]:not([tabindex="-1"])',M8e=tt({__name:"Dialog",props:{open:{type:Boolean},title:{},ariaLabel:{},description:{},closeOnOverlay:{type:Boolean,default:!0},closeOnEsc:{type:Boolean,default:!0},size:{default:"md"},height:{default:"auto"},padded:{type:Boolean,default:!0},hideClose:{type:Boolean},level:{default:"raised"},initialFocus:{},focusOnOpen:{type:Boolean,default:!0}},emits:["update:open","close"],setup(e,{emit:t}){const n=e,i=t,{t:o}=Sm(),s=Z(null);let r=null;const a=Symbol("kimi-dialog"),l=R(()=>b8e.value===a);function c(){i("update:open",!1),i("close")}function u(){return s.value?Array.from(s.value.querySelectorAll(T8e)):[]}function d(){const{initialFocus:m}=n;return m?typeof m=="function"?m()??null:typeof m=="string"?s.value?.querySelector(m)??null:s.value?.contains(m)?m:null:null}function f(m){if(!n.open||!l.value)return;if(m.key==="Escape"&&n.closeOnEsc){m.preventDefault(),c();return}if(m.key!=="Tab")return;const g=u(),y=g[0],v=g[g.length-1];if(!y||!v){m.preventDefault(),s.value?.focus();return}const k=document.activeElement;m.shiftKey&&k===y?(m.preventDefault(),v.focus()):!m.shiftKey&&k===v&&(m.preventDefault(),y.focus())}function h(m){n.closeOnOverlay&&m.target===m.currentTarget&&c()}return Fe(()=>n.open,async m=>{if(m){if(k8e(a),r=document.activeElement,n.focusOnOpen){await kt();const g=d(),y=u();(g??y[0]??s.value)?.focus()}}else lz(a),r instanceof HTMLElement&&(await kt(),r.focus(),r=null)},{immediate:!0}),typeof window<"u"&&window.addEventListener("keydown",f),wi(()=>{if(typeof window<"u"&&window.removeEventListener("keydown",f),n.open&&(lz(a),r instanceof HTMLElement)){const m=r;kt(()=>m.focus())}}),(m,g)=>(b(),oe(Ls,{to:"body"},[e.open?(b(),_("div",{key:0,class:"ui-dialog__overlay",onMousedown:h},[A("div",{ref_key:"panel",ref:s,class:De(["ui-dialog",[`ui-dialog--${e.size}`,{"ui-dialog--flush":!e.padded,"ui-dialog--fixed-height":e.height==="fixed","ui-dialog--grouped":e.level==="grouped"}]]),role:"dialog","aria-modal":l.value,"aria-label":e.ariaLabel??e.title,inert:!l.value,tabindex:"-1"},[e.title||m.$slots.head?(b(),_("div",C8e,[si(m.$slots,"head",{},()=>[A("div",A8e,[e.title?(b(),_("div",S8e,O(e.title),1)):Y("",!0),e.description?(b(),_("div",x8e,O(e.description),1)):Y("",!0)])],!0),e.hideClose?Y("",!0):(b(),oe(fn,{key:0,class:"ui-dialog__close",size:"sm",label:p(o)("common.close"),tooltip:p(o)("common.close"),onClick:c},{default:ne(()=>[q(ve,{name:"close",size:"md"})]),_:1},8,["label","tooltip"]))])):Y("",!0),A("div",_8e,[si(m.$slots,"default",{},void 0,!0)]),m.$slots.foot?(b(),_("div",I8e,[si(m.$slots,"foot",{},void 0,!0)])):Y("",!0)],10,w8e)],32)):Y("",!0)]))}}),ld=wt(M8e,[["__scopeId","data-v-c33919d1"]]),E8e={key:0,class:"ui-empty__icon","aria-hidden":"true"},L8e={key:1,class:"ui-empty__title"},R8e={key:2,class:"ui-empty__hint"},P8e=tt({__name:"EmptyState",props:{title:{},hint:{},size:{default:"md"}},setup(e){return(t,n)=>(b(),_("div",{class:De(["ui-empty",`ui-empty--${e.size}`])},[t.$slots.icon?(b(),_("span",E8e,[si(t.$slots,"icon",{},void 0,!0)])):Y("",!0),e.title?(b(),_("div",L8e,O(e.title),1)):Y("",!0),e.hint?(b(),_("div",R8e,O(e.hint),1)):Y("",!0),si(t.$slots,"default",{},void 0,!0)],2))}}),q9=wt(P8e,[["__scopeId","data-v-a8b39ebb"]]),$8e=["src","data-ink"],O8e=tt({__name:"Favicon",props:{src:{}},setup(e){const t=e,n=Z(KN(t.src)??null);Fe(()=>t.src,o=>{n.value=KN(o)??null});function i(o){o.currentTarget instanceof HTMLImageElement&&(n.value=vye(t.src,o.currentTarget))}return(o,s)=>(b(),_("img",{class:"ui-favicon",src:e.src,"data-ink":n.value??void 0,alt:"",onLoad:i},null,40,$8e))}}),MT=wt(O8e,[["__scopeId","data-v-93ad484b"]]),F8e={key:0,class:"ui-field__label"},D8e={key:1,class:"ui-field__error"},N8e={key:2,class:"ui-field__hint"},B8e=tt({__name:"Field",props:{label:{},hint:{},error:{}},setup(e){return(t,n)=>(b(),_("div",{class:De(["ui-field",{"has-error":!!e.error}])},[e.label?(b(),_("label",F8e,O(e.label),1)):Y("",!0),si(t.$slots,"default",{},void 0,!0),e.error?(b(),_("span",D8e,O(e.error),1)):e.hint?(b(),_("span",N8e,O(e.hint),1)):Y("",!0)],2))}}),z8e=wt(B8e,[["__scopeId","data-v-a6fe84a4"]]),H8e=["type","value","placeholder","disabled","readonly"],j8e=tt({__name:"Input",props:{modelValue:{},size:{default:"md"},type:{default:"text"},placeholder:{},disabled:{type:Boolean},readonly:{type:Boolean},error:{type:Boolean},embedded:{type:Boolean}},emits:["update:modelValue","focus","blur"],setup(e,{expose:t,emit:n}){const i=n,o=Z();function s(l){i("update:modelValue",l.target.value)}function r(){o.value?.focus()}function a(){o.value?.select()}return t({focus:r,select:a,el:o}),(l,c)=>(b(),_("input",{ref_key:"el",ref:o,class:De(["ui-input",[`ui-input--${e.size}`,{"has-error":e.error,"is-embedded":e.embedded}]]),type:e.type,value:e.modelValue,placeholder:e.placeholder,disabled:e.disabled,readonly:e.readonly,onInput:s,onFocus:c[0]||(c[0]=u=>l.$emit("focus",u)),onBlur:c[1]||(c[1]=u=>l.$emit("blur",u))},null,42,H8e))}}),Rr=wt(j8e,[["__scopeId","data-v-790e4789"]]),W8e=tt({__name:"Kbd",props:{keys:{},variant:{}},setup(e){return(t,n)=>e.keys.length>0?(b(),_("span",{key:0,class:De(["ui-kbd",{"ui-kbd--button":e.variant==="button"}])},[(b(!0),_(xe,null,bt(e.keys,i=>(b(),_("kbd",{key:i,class:"ui-kbd__key"},O(i),1))),128))],2)):Y("",!0)}}),Cu=wt(W8e,[["__scopeId","data-v-94e6fa5b"]]),q8e=["href","target","rel"],V8e=tt({__name:"Link",props:{href:{},variant:{default:"default"},external:{type:Boolean}},setup(e){return(t,n)=>e.href?(b(),_("a",{key:0,class:De(["ui-link",`ui-link--${e.variant}`]),href:e.href,target:e.external?"_blank":void 0,rel:e.external?"noopener noreferrer":void 0},[si(t.$slots,"default",{},void 0,!0)],10,q8e)):(b(),_("span",{key:1,class:De(["ui-link",`ui-link--${e.variant}`])},[si(t.$slots,"default",{},void 0,!0)],2))}}),U8e=wt(V8e,[["__scopeId","data-v-2c379b58"]]),K8e=["role"],Z8e=tt({__name:"Menu",props:{role:{default:"menu"}},setup(e,{expose:t}){const n=Z();t({el:n});let i;return Pn(()=>{n.value&&(i=iJ(n.value))}),wi(()=>i?.()),(o,s)=>(b(),_("div",{ref_key:"el",ref:n,class:"ui-menu",role:e.role},[si(o.$slots,"default",{},void 0,!0)],8,K8e))}}),bs=wt(Z8e,[["__scopeId","data-v-c75ed4a2"]]),G8e={key:0,class:"ui-menu-sep",role:"separator"},Q8e=["role","disabled"],Y8e={class:"ui-menu-item__action"},J8e=["role","disabled"],X8e=tt({__name:"MenuItem",props:{active:{type:Boolean},danger:{type:Boolean},disabled:{type:Boolean},separator:{type:Boolean},size:{default:"md"},role:{default:"menuitem"}},emits:["click"],setup(e){const t=Y1e();return(n,i)=>e.separator?(b(),_("div",G8e)):t.action?(b(),_("div",{key:1,class:De(["ui-menu-item-row",{"is-active":e.active,"is-disabled":e.disabled}]),role:"none"},[A("button",{class:De(["ui-menu-item",[`ui-menu-item--${e.size}`,{"is-active":e.active,"is-danger":e.danger}]]),type:"button",role:e.role,disabled:e.disabled,onClick:i[0]||(i[0]=o=>n.$emit("click",o))},[si(n.$slots,"default",{},void 0,!0)],10,Q8e),A("span",Y8e,[si(n.$slots,"action",{},void 0,!0)])],2)):(b(),_("button",{key:2,class:De(["ui-menu-item",[`ui-menu-item--${e.size}`,{"is-active":e.active,"is-danger":e.danger}]]),type:"button",role:e.role,disabled:e.disabled,onClick:i[1]||(i[1]=o=>n.$emit("click",o))},[si(n.$slots,"default",{},void 0,!0)],10,J8e))}}),ln=wt(X8e,[["__scopeId","data-v-4b436907"]]),eke=tt({__name:"Tooltip",props:{text:{},placement:{default:"top"},maxWidth:{default:280},maxLines:{default:6}},setup(e){const t=Z();return(n,i)=>(b(),_(xe,null,[A("span",{ref_key:"trigger",ref:t,class:"ui-tip"},[si(n.$slots,"default",{},void 0,!0)],512),q(xX,{delegate:t.value??null,text:e.text,placement:e.placement,"max-width":e.maxWidth,"max-lines":e.maxLines},null,8,["delegate","text","placement","max-width","max-lines"])],64))}}),$n=wt(eke,[["__scopeId","data-v-4f57efde"]]),tke={class:"ui-panel-header__title"},nke={key:0,class:"ui-panel-header__sub"},ike=tt({__name:"PanelHeader",props:{title:{},titleTooltip:{},subtitle:{},closable:{type:Boolean,default:!0},closeLabel:{},closeIcon:{default:"close"},wrap:{type:Boolean}},emits:["close"],setup(e){const{t}=Sm();return(n,i)=>(b(),_("div",{class:De(["ui-panel-header",{wrap:e.wrap}])},[si(n.$slots,"leading",{},void 0,!0),e.title?(b(),oe($n,{key:0,text:e.titleTooltip??e.title},{default:ne(()=>[A("span",tke,O(e.title),1)]),_:1},8,["text"])):Y("",!0),q($n,{text:e.subtitle},{default:ne(()=>[e.subtitle?(b(),_("span",nke,O(e.subtitle),1)):Y("",!0)]),_:1},8,["text"]),si(n.$slots,"default",{},void 0,!0),e.closable?(b(),oe(fn,{key:1,class:"ui-panel-header__close",size:"sm",label:e.closeLabel??p(t)("common.close"),tooltip:e.closeLabel??p(t)("common.close"),onClick:i[0]||(i[0]=o=>n.$emit("close"))},{default:ne(()=>[q(ve,{name:e.closeIcon,size:"sm"},null,8,["name"])]),_:1},8,["label","tooltip"])):Y("",!0)],2))}}),V9=wt(ike,[["__scopeId","data-v-3f73fde3"]]),oke=["disabled","aria-pressed"],ske=tt({__name:"Pill",props:{clickable:{type:Boolean,default:!0},active:{type:Boolean},disabled:{type:Boolean},ariaPressed:{type:Boolean}},emits:["click"],setup(e){return(t,n)=>e.clickable?(b(),_("button",{key:0,class:De(["ui-pill",{"is-active":e.active}]),type:"button",disabled:e.disabled,"aria-pressed":e.ariaPressed,onClick:n[0]||(n[0]=i=>t.$emit("click",i))},[si(t.$slots,"default",{},void 0,!0)],10,oke)):(b(),_("span",{key:1,class:De(["ui-pill",{"is-active":e.active}])},[si(t.$slots,"default",{},void 0,!0)],2))}}),IX=wt(ske,[["__scopeId","data-v-827de660"]]),rke=tt({__name:"ScrollArea",props:{orientation:{default:"vertical"},hideDelay:{default:600},overscroll:{default:"contain"}},setup(e,{expose:t}){const n=e,i=Z(null),o=Z(null),s=Z(!1),r=Z({overflow:!1,size:0,offset:0}),a=Z({overflow:!1,size:0,offset:0}),l=Z(null);let c=null,u=null,d=null;const f=R(()=>({overflowX:n.orientation==="vertical"?"hidden":"auto",overflowY:n.orientation==="horizontal"?"hidden":"auto",overscrollBehavior:n.overscroll})),h=R(()=>({height:`${r.value.size}px`,transform:`translateY(${r.value.offset}px)`})),m=R(()=>({width:`${a.value.size}px`,transform:`translateX(${a.value.offset}px)`}));function g(E,L,P,B){if(!(L>E+1)||E<=0)return{overflow:!1,size:0,offset:0};const N=Math.max(0,E-B*2),D=Math.min(N,Math.max(24,N*E/L)),j=Math.max(0,N-D),F=Math.max(1,L-E);return{overflow:!0,size:D,offset:j*P/F}}function y(){const E=o.value;if(!E)return 2;const L=Number.parseFloat(getComputedStyle(E).getPropertyValue("--ui-scroll-area-track-inset"));return Number.isFinite(L)?L:2}function v(){const E=o.value;if(!E)return;const L=y(),P=g(E.clientHeight,E.scrollHeight,E.scrollTop,L),B=g(E.clientWidth,E.scrollWidth,E.scrollLeft,L);(P.overflow!==r.value.overflow||P.size!==r.value.size||P.offset!==r.value.offset)&&(r.value=P),(B.overflow!==a.value.overflow||B.size!==a.value.size||B.offset!==a.value.offset)&&(a.value=B)}function k(){c!==null&&clearTimeout(c),c=null}function C(){k(),s.value=!0}function w(){k(),!(l.value||i.value?.matches(":hover, :focus-within"))&&(c=setTimeout(()=>{s.value=!1,c=null},n.hideDelay))}function S(){v(),C(),w()}function x(E,L){const P=o.value;P&&(L.preventDefault(),C(),l.value={axis:E,pointerId:L.pointerId,startPointer:E==="vertical"?L.clientY:L.clientX,startScroll:E==="vertical"?P.scrollTop:P.scrollLeft},L.currentTarget.setPointerCapture(L.pointerId))}function M(E){const L=l.value,P=o.value;if(!L||L.pointerId!==E.pointerId||!P)return;const B=L.axis==="vertical"?E.clientY:E.clientX,V=L.axis==="vertical"?P.clientHeight:P.clientWidth,N=L.axis==="vertical"?P.scrollHeight:P.scrollWidth,D=L.axis==="vertical"?r.value.size:a.value.size,j=Math.max(1,V-y()*2-D),F=(B-L.startPointer)*(N-V)/j;L.axis==="vertical"?P.scrollTop=L.startScroll+F:P.scrollLeft=L.startScroll+F}function I(E){!l.value||l.value.pointerId!==E.pointerId||(l.value=null,w())}function T(){const E=o.value;if(!(!E||!u))for(const L of E.children)u.observe(L)}return Pn(async()=>{await kt();const E=o.value;E&&(u=new ResizeObserver(v),u.observe(E),T(),d=new MutationObserver(()=>{T(),v()}),d.observe(E,{childList:!0,subtree:!0,characterData:!0}),v())}),wi(()=>{k(),u?.disconnect(),d?.disconnect()}),t({viewport:o,updateMetrics:v}),(E,L)=>(b(),_("div",{ref_key:"root",ref:i,class:"ui-scroll-area",onPointerenter:C,onPointerleave:w,onFocusin:C,onFocusout:w},[A("div",{ref_key:"viewport",ref:o,class:"ui-scroll-area__viewport",style:nn(f.value),tabindex:"0",onScroll:S},[si(E.$slots,"default",{},void 0,!0)],36),r.value.overflow&&n.orientation!=="horizontal"?(b(),_("div",{key:0,class:De(["ui-scroll-area__bar ui-scroll-area__bar--vertical",{"is-visible":s.value}]),"aria-hidden":"true"},[A("span",{class:"ui-scroll-area__thumb",style:nn(h.value),onPointerdown:L[0]||(L[0]=P=>x("vertical",P)),onPointermove:M,onPointerup:I,onPointercancel:I},null,36)],2)):Y("",!0),a.value.overflow&&n.orientation!=="vertical"?(b(),_("div",{key:1,class:De(["ui-scroll-area__bar ui-scroll-area__bar--horizontal",{"is-visible":s.value}]),"aria-hidden":"true"},[A("span",{class:"ui-scroll-area__thumb",style:nn(m.value),onPointerdown:L[1]||(L[1]=P=>x("horizontal",P)),onPointermove:M,onPointerup:I,onPointercancel:I},null,36)],2)):Y("",!0)],544))}}),U9=wt(rke,[["__scopeId","data-v-657c8668"]]),ake=["data-icon","aria-selected","disabled","onClick"],lke=tt({__name:"SegmentedControl",props:{modelValue:{},options:{},size:{},disabled:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const n=t;return(i,o)=>(b(),_("div",{class:De(["ui-seg",[`ui-seg--${e.size??"md"}`,{"ui-seg--disabled":e.disabled}]]),role:"tablist"},[(b(!0),_(xe,null,bt(e.options,s=>(b(),_("button",{key:s.value,class:De(["ui-seg__item",{"is-on":s.value===e.modelValue}]),"data-icon":s.icon,type:"button",role:"tab","aria-selected":s.value===e.modelValue,disabled:e.disabled,onClick:r=>n("update:modelValue",s.value)},[s.icon?(b(),oe(ve,{key:0,class:"ui-seg__icon",name:s.icon,size:"sm"},null,8,["name"])):Y("",!0),s.swatch?(b(),_("span",{key:1,class:"ui-seg__swatch",style:nn({backgroundColor:s.swatch})},null,4)):Y("",!0),Ne(" "+O(s.label),1)],10,ake))),128))],2))}}),Wr=wt(lke,[["__scopeId","data-v-d1055351"]]);function cke(e){const{anchor:t,menuHeight:n,viewportWidth:i,viewportHeight:o,gap:s,margin:r}=e,a=o-r-(t.bottom+s),l=t.top-s-r,c=aa,u=c?l:a,d=Math.min(t.width,Math.max(0,i-2*r)),f=Math.min(Math.max(t.left,r),Math.max(r,i-r-d)),h={left:`${Math.round(f)}px`,width:`${Math.round(d)}px`};return un.options.findIndex(J=>String(J.value)===String(n.modelValue??""))),w=R(()=>n.options[C.value]),S=R(()=>w.value?.label??n.placeholder);function x(J,U){l.value[U]=J instanceof HTMLElement?J:null}function M(){const J=a.value,U=l.value[u.value];!J||!U||(J.scrollTop=U.offsetTop-(J.clientHeight-U.offsetHeight)/2)}function I(){const J=r.value,U=a.value;if(!J||!U)return;U.style.maxHeight="";const Q=J.getBoundingClientRect();f.value=cke({anchor:Q,menuHeight:U.offsetHeight,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,gap:y,margin:v}).style}function T(){n.disabled||c.value||(c.value=!0,u.value=C.value>=0?C.value:n.options.findIndex(J=>!J.disabled),y=k("--space-1",cz),v=k("--space-2",uz),G(),kt(()=>{I(),kt(M)}))}function E({restoreFocus:J=!1}={}){c.value&&(c.value=!1,te(),J&&kt(()=>r.value?.focus()))}function L(){c.value?E():T()}function P(J){J.disabled||(String(J.value)!==String(n.modelValue??"")&&i("update:modelValue",J.value),E({restoreFocus:!0}))}function B(J){if(c.value||T(),n.options.length===0)return;let U=u.value;for(let Q=0;QQ.disabled?-1:re).filter(Q=>Q>=0);u.value=J.key==="Home"?U[0]??-1:U.at(-1)??-1,kt(M)}}function N(J){m=c.value;const U=J.target;s.value?.contains(U)||a.value?.contains(U)||E()}function D(){const J=g;m=!1,g=!1,te(),J&&c.value&&r.value?.focus()}function j(){g=!0}function F(J){const U=J.relatedTarget;U instanceof Node&&(s.value?.contains(U)||a.value?.contains(U))||requestAnimationFrame(()=>{if(!c.value||g)return;const Q=document.activeElement;Q&&(s.value?.contains(Q)||a.value?.contains(Q))||E()})}function z(J){c.value&&(a.value?.contains(J.target)||I())}function $(){c.value&&I()}Fe(()=>n.options.length,()=>{c.value&&kt(I)});function W(J){(J.type==="touchmove"?c.value||m:c.value)&&uke(J.target,a.value)&&J.preventDefault()}function G(){h||(h=!0,document.addEventListener("wheel",W,{capture:!0,passive:!1}),document.addEventListener("touchmove",W,{capture:!0,passive:!1}))}function K(){h&&(h=!1,document.removeEventListener("wheel",W,{capture:!0}),document.removeEventListener("touchmove",W,{capture:!0}))}function te(){c.value||m||K()}return Pn(()=>{document.addEventListener("pointerdown",N,{passive:!0}),document.addEventListener("pointerup",D,{passive:!0}),document.addEventListener("pointercancel",D,{passive:!0}),document.addEventListener("scroll",z,!0),window.addEventListener("resize",$)}),Jn(()=>{m=!1,K(),document.removeEventListener("pointerdown",N),document.removeEventListener("pointerup",D),document.removeEventListener("pointercancel",D),document.removeEventListener("scroll",z,!0),window.removeEventListener("resize",$)}),(J,U)=>(b(),_("div",{ref_key:"rootRef",ref:s,class:De(["ui-select",[`ui-select--${e.size}`,{"has-error":e.error,"is-open":c.value,"is-disabled":e.disabled}]])},[A("button",Fi({ref_key:"triggerRef",ref:r},p(o),{class:"ui-select__trigger",type:"button",role:"combobox","aria-controls":d,"aria-expanded":c.value,"aria-haspopup":"listbox",disabled:e.disabled,onClick:L,onKeydown:V,onFocusout:F}),[A("span",{class:De(["ui-select__value",{"is-placeholder":!w.value}])},[w.value?.icon?(b(),_("img",{key:0,class:"ui-select__icon",src:w.value.icon,alt:""},null,8,fke)):Y("",!0),A("span",hke,O(S.value),1)],2),q(ve,{class:"ui-select__chevron",name:"chevron-down",size:"sm"})],16,dke),(b(),oe(Ls,{to:"body"},[c.value?(b(),_("div",{key:0,id:d,ref_key:"listRef",ref:a,class:"ui-select__menu",style:nn(f.value),role:"listbox",onPointerdown:j,onFocusout:F},[(b(!0),_(xe,null,bt(e.options,(Q,re)=>(b(),_(xe,{key:`${Q.group??""}:${Q.value}`},[Q.group&&Q.group!==e.options[re-1]?.group?(b(),_("div",pke,O(Q.group),1)):Y("",!0),A("button",{ref_for:!0,ref:me=>x(me,re),class:De(["ui-select__option",{"is-selected":re===C.value,"is-active":re===u.value}]),type:"button",role:"option","aria-selected":re===C.value,disabled:Q.disabled,onMouseenter:me=>u.value=re,onClick:me=>P(Q)},[q(ve,{class:"ui-select__check",name:"check",size:"sm"}),Q.icon?(b(),_("img",{key:0,class:"ui-select__icon ui-select__icon--option",src:Q.icon,alt:""},null,8,gke)):Y("",!0),A("span",null,O(Q.label),1)],42,mke)],64))),128))],36)):Y("",!0)]))],2))}}),ET=wt(vke,[["__scopeId","data-v-e6b12a18"]]),yke=tt({__name:"Skeleton",props:{width:{},height:{},circle:{type:Boolean}},setup(e){return(t,n)=>(b(),_("span",{class:De(["ui-skeleton",{"is-circle":e.circle}]),style:nn({width:e.width??"100%",height:e.height??"12px"}),"aria-hidden":"true"},null,6))}}),bke=wt(yke,[["__scopeId","data-v-861ece71"]]),kke=tt({__name:"StatusDot",props:{status:{}},setup(e){const t=e;function n(o){switch(o){case"ok":case"done":case"completed":case"success":return"ok";case"error":case"failed":case"fail":case"danger":return"error";case"running":case"run":case"working":case"in_progress":case"active":return"running";case"suspended":return"suspended";default:return"idle"}}const i=R(()=>n(t.status));return(o,s)=>(b(),_("span",{class:De(["kw-dot",`kw-dot--${i.value}`]),"aria-hidden":"true"},null,2))}}),gh=wt(kke,[["__scopeId","data-v-ddf97fc4"]]),wke=["aria-checked","aria-label","disabled"],Cke=tt({__name:"Switch",props:{modelValue:{type:Boolean},disabled:{type:Boolean},label:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=t;return(i,o)=>(b(),_("button",{class:De(["ui-switch",{"is-on":e.modelValue}]),type:"button",role:"switch","aria-checked":e.modelValue,"aria-label":e.label,disabled:e.disabled,onClick:o[0]||(o[0]=s=>n("update:modelValue",!e.modelValue))},[...o[1]||(o[1]=[A("span",{class:"ui-switch__thumb"},null,-1)])],10,wke))}}),fc=wt(Cke,[["__scopeId","data-v-3cf7b836"]]),Ake=["value","rows","placeholder","disabled","readonly"],Ske=tt({__name:"Textarea",props:{modelValue:{},rows:{default:3},autosize:{type:Boolean},size:{default:"md"},placeholder:{},disabled:{type:Boolean},readonly:{type:Boolean},error:{type:Boolean},resize:{type:Boolean,default:!0}},emits:["update:modelValue","focus","blur"],setup(e,{expose:t,emit:n}){const i=e,o=n;function s(u){o("update:modelValue",u.target.value),i.autosize&&a()}const r=Z(null);function a(){const u=r.value;!i.autosize||!u||(u.style.height="auto",u.style.height=`${u.scrollHeight+u.offsetHeight-u.clientHeight}px`)}let l,c=0;return Fe(()=>[i.modelValue,i.autosize],()=>void kt(a)),Pn(()=>{r.value&&(l=new ResizeObserver(u=>{const d=u[0]?.contentRect.width??0;d!==c&&(c=d,a())}),l.observe(r.value),document.fonts?.ready.then(a),a())}),Jn(()=>l?.disconnect()),t({el:r}),(u,d)=>(b(),_("textarea",{ref_key:"textareaRef",ref:r,class:De(["ui-textarea",[{"has-error":e.error,"no-resize":!e.resize||e.autosize,"is-autosize":e.autosize},`ui-textarea--${e.size}`]]),value:e.modelValue,rows:e.rows,placeholder:e.placeholder,disabled:e.disabled,readonly:e.readonly,onInput:s,onFocus:d[0]||(d[0]=f=>u.$emit("focus",f)),onBlur:d[1]||(d[1]=f=>u.$emit("blur",f))},null,42,Ake))}}),TX=wt(Ske,[["__scopeId","data-v-a08469a1"]]),xke={class:"ui-toast__icon","aria-hidden":"true"},_ke={class:"ui-toast__body"},Ike={class:"ui-toast__title"},Tke={key:0,class:"ui-toast__msg"},Mke=tt({__name:"Toast",props:{variant:{default:"info"},title:{},message:{},dismissLabel:{}},emits:["dismiss"],setup(e){const{t}=Sm();return(n,i)=>(b(),_("div",{class:De(["ui-toast",`ui-toast--${e.variant}`])},[A("span",xke,[si(n.$slots,"icon",{},()=>[e.variant==="success"?(b(),oe(ve,{key:0,name:"check"})):e.variant==="danger"?(b(),oe(ve,{key:1,name:"close"})):e.variant==="warning"?(b(),oe(ve,{key:2,name:"alert-triangle"})):(b(),oe(ve,{key:3,name:"info"}))],!0)]),A("div",_ke,[A("div",Ike,O(e.title),1),e.message?(b(),_("div",Tke,O(e.message),1)):Y("",!0),si(n.$slots,"default",{},void 0,!0)]),q(fn,{class:"ui-toast__close",size:"sm",label:e.dismissLabel??p(t)("common.dismiss"),tooltip:e.dismissLabel??p(t)("common.dismiss"),onClick:i[0]||(i[0]=o=>n.$emit("dismiss"))},{default:ne(()=>[q(ve,{name:"close",size:"sm"})]),_:1},8,["label","tooltip"])],2))}}),Eke=wt(Mke,[["__scopeId","data-v-ed19c769"]]),Lke=100;function jc(){let e=!1,t=0;function n(){e=!0,t=0}function i(){e=!1,t=Date.now()}function o(){e=!1,t=0}function s(r){return e||r.isComposing||r.keyCode===229||Date.now()-t{typeof window<"u"&&(window.removeEventListener("focusin",o,!0),window.removeEventListener("focusout",o,!0))}),{handleCompositionStart:n,handleCompositionEnd:i,resetComposition:o,isComposingKeyEvent:s}}function Rke(e,t,n,i){if(!["ArrowDown","ArrowUp","Home","End","Tab"].includes(e))return null;if(i===0)return-1;if(e==="Home")return 0;if(e==="End")return i-1;const o=e==="ArrowUp"||e==="Tab"&&t?-1:1;return n<0?o===-1?i-1:0:(n+o+i)%i}const Pke=/^[0-9a-z]{1,64}$/,$ke=/^data:image\/(?:jpeg|png|webp);base64,/,Oke=512*1024;function jR(e){return typeof e=="string"&&e.length<=Oke&&$ke.test(e)?e:void 0}function Fke(e){if(e===null||typeof e!="object"||Array.isArray(e))return;const t=e,n=i=>typeof i=="string"&&i.length>0&&i.length<=1024&&!/[\s/\\\0]/.test(i)&&i!=="."&&i!=="..";return n(t.sessionId)&&n(t.fileId)?{sessionId:t.sessionId,fileId:t.fileId}:void 0}function MX(e,t){if(typeof e!="object"||e===null)return null;const n=e;if(typeof n.attId!="string"||t==="clipboard"&&!Pke.test(n.attId)||typeof n.key!="string"||typeof n.name!="string"||n.kind!=="file"&&n.kind!=="folder"&&n.kind!=="image"&&n.kind!=="video")return null;const i=n.uploading===!0,o=n.mediaOrdinal??n.mentionOrdinal;return{attId:n.attId,key:n.key,kind:n.kind,name:n.name,mediaOrdinal:typeof o=="number"&&Number.isInteger(o)&&o>0?o:void 0,size:typeof n.size=="number"?n.size:void 0,mediaType:typeof n.mediaType=="string"?n.mediaType:void 0,lastModified:typeof n.lastModified=="number"?n.lastModified:void 0,path:typeof n.path=="string"?n.path:void 0,refCount:t==="draft"&&typeof n.refCount=="number"?n.refCount:0,uploading:!1,fileId:typeof n.fileId=="string"?n.fileId:void 0,sessionId:typeof n.sessionId=="string"?n.sessionId:void 0,error:typeof n.error=="string"?n.error:i?"upload-interrupted":void 0,thumbnailUrl:jR(n.thumbnailUrl),remoteSource:Fke(n.remoteSource),purpose:n.purpose==="browser-screenshot"?"browser-screenshot":void 0,browserAssetId:typeof n.browserAssetId=="string"&&/^[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}$/.test(n.browserAssetId)?n.browserAssetId:void 0}}function EX(e){return MX(e,"draft")}function Dke(e){return MX(e,"clipboard")}function X1(){let e="";for(let t=0;t<8;t++)e+=Math.floor(Math.random()*36).toString(36);return e}function WR(e){let t=e.replace(/\\/g,"/"),n="";/^[a-zA-Z]:\//.test(t)?(n=t.slice(0,3),t=t.slice(3)):t.startsWith("//")?(n="//",t=t.slice(2)):t.startsWith("/")&&(n="/",t=t.slice(1));const i=[];for(const o of t.split("/"))if(!(o===""||o===".")){if(o===".."){i.length>0&&i[i.length-1]!==".."?i.pop():n===""&&i.push("..");continue}i.push(o)}return n+i.join("/")}function N6(e){if(!e.path)return`blob:${e.attId}`;const t=WR(e.path);return`file://${e.kind==="folder"?`${t}/`:t}`}function sC(e){if(e.previewUrl===void 0&&e.uploadProgress===void 0)return e;const{previewUrl:t,uploadProgress:n,...i}=e;return i}function Q8(e,t){return e.kind==="folder"?!0:e.uploading||e.error!==void 0||e.fileId===void 0?!1:e.sessionId===void 0||e.sessionId===t||t===void 0}function vh(e){return e==="image"||e==="video"}function V2(e){return e!==void 0&&Number.isInteger(e)&&e>0}function K9(e,t){return{...e,mediaOrdinal:t}}function qR(e){let t=0;for(const n of e)n.purpose!=="browser-screenshot"&&vh(n.kind)&&V2(n.mediaOrdinal)&&(t=Math.max(t,n.mediaOrdinal));return t+1}function LX(e,t){if(!vh(e.kind)||e.purpose==="browser-screenshot")return e;const n=t.some(i=>i.attId!==e.attId&&vh(i.kind)&&i.mediaOrdinal===e.mediaOrdinal);return V2(e.mediaOrdinal)&&!n?e:K9(e,qR(t))}function dz(e,t){return!vh(e.kind)||e.purpose==="browser-screenshot"?e:K9(e,qR(t))}function fz(e){const t=new Map;let n=1;for(const i of e)!vh(i.kind)||i.purpose==="browser-screenshot"||!V2(i.mediaOrdinal)||(t.has(i.mediaOrdinal)||t.set(i.mediaOrdinal,i.attId),n=Math.max(n,i.mediaOrdinal+1));return e.map(i=>{if(!vh(i.kind)||i.purpose==="browser-screenshot"||V2(i.mediaOrdinal)&&t.get(i.mediaOrdinal)===i.attId)return i;const o=n;return n+=1,K9(i,o)})}function Nke(e,t){const n=new Map(e.map(a=>[a.attId,a])),i=t.filter(a=>{const l=n.get(a);return l!==void 0&&l.purpose!=="browser-screenshot"&&vh(l.kind)}),o=new Map(i.map((a,l)=>[a,l+1])),s=new Set(o.values());let r=i.length+1;return e.map(a=>{if(!vh(a.kind)||a.purpose==="browser-screenshot")return a;const l=o.get(a.attId);if(l!==void 0)return K9(a,l);if(V2(a.mediaOrdinal)&&!s.has(a.mediaOrdinal))return s.add(a.mediaOrdinal),a;for(;s.has(r);)r+=1;const c=r;return s.add(c),r+=1,K9(a,c)})}function RX(e,t){return e.purpose!=="browser-screenshot"&&vh(e.kind)&&V2(e.mediaOrdinal)?`${t[e.kind]} ${e.mediaOrdinal}`:e.name}function hz(e){if(e===void 0)return;const t=new Map(e.map(n=>[n.attId,n.kind]));return n=>t.get(n)}function pz(e,t,n){let i;if(n!==void 0)e.insertTextAt(n," "),i=n;else{const a=e.getText();i=a.length,i>0&&!/\s/.test(a.charAt(i-1))&&(e.insertTextAt(i," "),i+=1)}const o=X1(),s=LX({attId:o,key:N6({kind:t.kind,attId:o}),kind:t.kind,name:t.name,size:t.size,mediaType:t.mediaType,refCount:0,uploading:t.uploading},e.getAttachmentEntries()),r=s.mediaOrdinal!==void 0&&t.mediaName!==void 0?t.mediaName(s.mediaOrdinal):t.name;return e.insertAttachment({attId:o,name:r,kind:t.kind},i),t.fileId!==void 0&&(s.fileId=t.fileId),t.sessionId!==void 0&&(s.sessionId=t.sessionId),t.error!==void 0&&(s.error=t.error),e.upsertAttachmentEntry(s),o}var PX=Symbol.for("immer-nothing"),mz=Symbol.for("immer-draftable"),Xi=Symbol.for("immer-state");function cu(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var xc=Object,U2=xc.getPrototypeOf,B6="constructor",rC="prototype",LT="configurable",z6="enumerable",Y8="writable",Z9="value",ep=e=>!!e&&!!e[Xi];function Tu(e){return e?$X(e)||aC(e)||!!e[mz]||!!e[B6]?.[mz]||lC(e)||cC(e):!1}var Bke=xc[rC][B6].toString(),gz=new WeakMap;function $X(e){if(!e||!uC(e))return!1;const t=U2(e);if(t===null||t===xc[rC])return!0;const n=xc.hasOwnProperty.call(t,B6)&&t[B6];if(n===Object)return!0;if(!Pg(n))return!1;let i=gz.get(n);return i===void 0&&(i=Function.toString.call(n),gz.set(n,i)),i===Bke}function ob(e,t,n=!0){sb(e)===0?(n?Reflect.ownKeys(e):xc.keys(e)).forEach(o=>{t(o,e[o],e)}):e.forEach((i,o)=>t(o,i,e))}function sb(e){const t=e[Xi];return t?t.type_:aC(e)?1:lC(e)?2:cC(e)?3:0}var MS=(e,t,n=sb(e))=>n===2?e.has(t):xc[rC].hasOwnProperty.call(e,t),RT=(e,t,n=sb(e))=>n===2?e.get(t):e[t],H6=(e,t,n,i=sb(e))=>{i===2?e.set(t,n):i===3?e.add(n):e[t]=n};function zke(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var aC=Array.isArray,lC=e=>e instanceof Map,cC=e=>e instanceof Set,uC=e=>typeof e=="object",Pg=e=>typeof e=="function",ES=e=>typeof e=="boolean";function Hke(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var jke=e=>uC(e)?e?.[Xi]:null,Tr=e=>e.copy_||e.base_,Wke=e=>{const t=jke(e);return t?dC(t):e},dC=e=>e.modified_?e.copy_:e.base_;function PT(e,t){if(lC(e))return new Map(e);if(cC(e))return new Set(e);if(aC(e))return Array[rC].slice.call(e);const n=$X(e);if(t===!0||t==="class_only"&&!n){const i=xc.getOwnPropertyDescriptors(e);delete i[Xi];let o=Reflect.ownKeys(i);for(let s=0;s1&&xc.defineProperties(e,{set:I5,add:I5,clear:I5,delete:I5}),xc.freeze(e),t&&ob(e,(n,i)=>{lh(i,!0)},!1)),e}function qke(){cu(2)}var I5={[Z9]:qke};function fC(e){return e===null||!uC(e)?!0:xc.isFrozen(e)}var G9="MapSet",$T="Patches",vz="ArrayMethods",j6={};function om(e){const t=j6[e];return t||cu(0,e),t}var yz=e=>!!j6[e];function Vke(e,t){j6[e]||(j6[e]=t)}var Q9,W6=()=>Q9,Uke=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:yz(G9)?om(G9):void 0,arrayMethodsPlugin_:yz(vz)?om(vz):void 0});function bz(e,t){t&&(e.patchPlugin_=om($T),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function OT(e){FT(e),e.drafts_.forEach(Kke),e.drafts_=null}function FT(e){e===Q9&&(Q9=e.parent_)}var kz=e=>Q9=Uke(Q9,e);function Kke(e){const t=e[Xi];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function wz(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[Xi].modified_&&(OT(t),cu(4)),Tu(e)&&(e=Cz(t,e));const{patchPlugin_:o}=t;o&&o.generateReplacementPatches_(n[Xi].base_,e,t)}else e=Cz(t,n);return Zke(t,e,!0),OT(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==PX?e:void 0}function Cz(e,t){if(fC(t))return t;const n=t[Xi];if(!n)return q6(t,e.handledSet_,e);if(!hC(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:i}=n;if(i)for(;i.length>0;)i.pop()(e);DX(n,e)}return n.copy_}function Zke(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&lh(t,n)}function OX(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var hC=(e,t)=>e.scope_===t,Gke=[];function FX(e,t,n,i){const o=Tr(e),s=e.type_;if(i!==void 0&&RT(o,i,s)===t){H6(o,i,n,s);return}if(!e.draftLocations_){const a=e.draftLocations_=new Map;ob(o,(l,c)=>{if(ep(c)){const u=a.get(c)||[];u.push(l),a.set(c,u)}})}const r=e.draftLocations_.get(t)??Gke;for(const a of r)H6(o,a,n,s)}function Qke(e,t,n){e.callbacks_.push(function(o){const s=t;if(!s||!hC(s,o))return;o.mapSetPlugin_?.fixSetContents(s);const r=dC(s);FX(e,s.draft_??s,r,n),DX(s,o)})}function DX(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){const{patchPlugin_:i}=t;if(i){const o=i.getPath(e);o&&i.generatePatches_(e,o,t)}OX(e)}}function DT(e,t,n){const{scope_:i}=e;if(ep(n)){const o=n[Xi];hC(o,i)&&o.callbacks_.push(function(){J8(e);const r=dC(o);FX(e,n,r,t)})}else Tu(n)&&e.callbacks_.push(function(){const s=Tr(e);e.type_===3?s.has(n)&&q6(n,i.handledSet_,i):RT(s,t,e.type_)===n&&i.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&q6(RT(e.copy_,t,e.type_),i.handledSet_,i)})}function q6(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||ep(e)||t.has(e)||!Tu(e)||fC(e)||(t.add(e),ob(e,(i,o)=>{if(ep(o)){const s=o[Xi];if(hC(s,n)){const r=dC(s);H6(e,i,r,e.type_),OX(s)}}else Tu(o)&&q6(o,t,n)})),e}function Yke(e,t){const n=aC(e),i={type_:n?1:0,scope_:t?t.scope_:W6(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let o=i,s=V6;n&&(o=[i],s=Y9);const{revoke:r,proxy:a}=Proxy.revocable(o,s);return i.draft_=a,i.revoke_=r,[a,i]}var V6={get(e,t){if(t===Xi)return e;let n=e.scope_.arrayMethodsPlugin_;const i=e.type_===1&&typeof t=="string";if(i&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const o=Tr(e);if(!MS(o,t,e.type_))return Xke(e,o,t);const s=o[t];if(e.finalized_||!Tu(s)||i&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&Hke(t))return s;if(s===LS(e.base_,t)||Jke(e,t,s)){J8(e);const r=e.type_===1?+t:t,a=J9(e.scope_,s,e,r);return e.copy_[r]=a}return s},has(e,t){return t in Tr(e)},ownKeys(e){return Reflect.ownKeys(Tr(e))},set(e,t,n){const i=NX(Tr(e),t);if(i?.set)return i.set.call(e.draft_,n),!0;if(!e.modified_){const o=LS(Tr(e),t),s=o?.[Xi];if(s&&s.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(zke(n,o)&&(n!==void 0||MS(e.base_,t,e.type_)))return!0;J8(e),Bf(e)}return e.copy_[t]===n&&(n!==void 0||MS(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),DT(e,t,n)),!0},deleteProperty(e,t){return J8(e),LS(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Bf(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=Tr(e),i=Reflect.getOwnPropertyDescriptor(n,t);return i&&{[Y8]:!0,[LT]:e.type_!==1||t!=="length",[z6]:i[z6],[Z9]:n[t]}},defineProperty(){cu(11)},getPrototypeOf(e){return U2(e.base_)},setPrototypeOf(){cu(12)}},Y9={};for(let e in V6){let t=V6[e];Y9[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}Y9.deleteProperty=function(e,t){return Y9.set.call(this,e,t,void 0)};Y9.set=function(e,t,n){return V6.set.call(this,e[0],t,n,e[0])};function LS(e,t){const n=e[Xi];return(n?Tr(n):e)[t]}function Jke(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||e.assigned_?.get(t)||!Tu(n)||n[Xi]?!1:e.baseRefs_.has(n)}function Xke(e,t,n){const i=NX(t,n);return i?Z9 in i?i[Z9]:i.get?.call(e.draft_):void 0}function NX(e,t){if(!(t in e))return;let n=U2(e);for(;n;){const i=Object.getOwnPropertyDescriptor(n,t);if(i)return i;n=U2(n)}}function Bf(e){e.modified_||(e.modified_=!0,e.parent_&&Bf(e.parent_))}function J8(e){e.copy_||(e.assigned_=new Map,e.copy_=PT(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var e6e=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(t,n,i)=>{if(Pg(t)&&!Pg(n)){const s=n;n=t;const r=this;return function(l=s,...c){return r.produce(l,u=>n.call(this,u,...c))}}Pg(n)||cu(6),i!==void 0&&!Pg(i)&&cu(7);let o;if(Tu(t)){const s=kz(this),r=J9(s,t,void 0);let a=!0;try{o=n(r),a=!1}finally{a?OT(s):FT(s)}return bz(s,i),wz(o,s)}else if(!t||!uC(t)){if(o=n(t),o===void 0&&(o=t),o===PX&&(o=void 0),this.autoFreeze_&&lh(o,!0),i){const s=[],r=[];om($T).generateReplacementPatches_(t,o,{patches_:s,inversePatches_:r}),i(s,r)}return o}else cu(1,t)},this.produceWithPatches=(t,n)=>{if(Pg(t))return(r,...a)=>this.produceWithPatches(r,l=>t(l,...a));let i,o;return[this.produce(t,n,(r,a)=>{i=r,o=a}),i,o]},ES(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),ES(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),ES(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Tu(e)||cu(8),ep(e)&&(e=t6e(e));const t=kz(this),n=J9(t,e,void 0);return n[Xi].isManual_=!0,FT(t),n}finishDraft(e,t){const n=e&&e[Xi];(!n||!n.isManual_)&&cu(9);const{scope_:i}=n;return bz(i,t),wz(void 0,i)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){const o=t[n];if(o.path.length===0&&o.op==="replace"){e=o.value;break}}n>-1&&(t=t.slice(n+1));const i=om($T).applyPatches_;return ep(e)?i(e,t):this.produce(e,o=>i(o,t))}};function J9(e,t,n,i){const[o,s]=lC(t)?om(G9).proxyMap_(t,n):cC(t)?om(G9).proxySet_(t,n):Yke(t,n);return(n?.scope_??W6()).drafts_.push(o),s.callbacks_=n?.callbacks_??[],s.key_=i,n&&i!==void 0?Qke(n,s,i):s.callbacks_.push(function(l){l.mapSetPlugin_?.fixSetContents(s);const{patchPlugin_:c}=l;s.modified_&&c&&c.generatePatches_(s,[],l)}),o}function t6e(e){return ep(e)||cu(10,e),BX(e)}function BX(e){if(!Tu(e)||fC(e))return e;const t=e[Xi];let n,i=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=PT(e,t.scope_.immer_.useStrictShallowCopy_),i=t.scope_.immer_.shouldUseStrictIteration()}else n=PT(e,!0);return ob(n,(o,s)=>{H6(n,o,BX(s))},i),t&&(t.finalized_=!1),n}var zX=globalThis.Iterator,n6e=typeof zX?.from=="function";function i6e(){class e extends Map{constructor(u,d){super(),this[Xi]={type_:2,parent_:d,scope_:d?d.scope_:W6(),modified_:!1,finalized_:!1,copy_:void 0,assigned_:void 0,base_:u,draft_:this,isManual_:!1,revoked_:!1,callbacks_:[]}}get size(){return Tr(this[Xi]).size}has(u){return Tr(this[Xi]).has(u)}set(u,d){const f=this[Xi];return a(f),(!Tr(f).has(u)||Tr(f).get(u)!==d)&&(i(f),Bf(f),f.assigned_.set(u,!0),f.copy_.set(u,d),f.assigned_.set(u,!0),DT(f,u,d)),this}delete(u){if(!this.has(u))return!1;const d=this[Xi];return a(d),i(d),Bf(d),d.base_.has(u)?d.assigned_.set(u,!1):d.assigned_.delete(u),d.copy_.delete(u),!0}clear(){const u=this[Xi];a(u),Tr(u).size&&(i(u),Bf(u),u.assigned_=new Map,ob(u.base_,d=>{u.assigned_.set(d,!1)}),u.copy_.clear())}forEach(u,d){const f=this[Xi];Tr(f).forEach((h,m,g)=>{u.call(d,this.get(m),m,this)})}get(u){const d=this[Xi];a(d);const f=Tr(d).get(u);if(d.finalized_||!Tu(f)||f!==d.base_.get(u))return f;const h=J9(d.scope_,f,d,u);return i(d),d.copy_.set(u,h),h}keys(){return Tr(this[Xi]).keys()}values(){const u=this.keys();return t({next:()=>{const d=u.next();return d.done?d:{done:!1,value:this.get(d.value)}}})}entries(){const u=this.keys();return t({next:()=>{const d=u.next();if(d.done)return d;const f=this.get(d.value);return{done:!1,value:[d.value,f]}}})}[Symbol.iterator](){return this.entries()}}function t(c){if(n6e)return zX.from(c);const u={...c,[Symbol.iterator]:()=>u};return u}function n(c,u){const d=new e(c,u);return[d,d[Xi]]}function i(c){c.copy_||(c.assigned_=new Map,c.copy_=new Map(c.base_))}class o extends Set{constructor(u,d){super(),this[Xi]={type_:3,parent_:d,scope_:d?d.scope_:W6(),modified_:!1,finalized_:!1,copy_:void 0,base_:u,draft_:this,drafts_:new Map,revoked_:!1,isManual_:!1,assigned_:void 0,callbacks_:[]}}get size(){return Tr(this[Xi]).size}has(u){const d=this[Xi];return a(d),d.copy_?!!(d.copy_.has(u)||d.drafts_.has(u)&&d.copy_.has(d.drafts_.get(u))):d.base_.has(u)}add(u){const d=this[Xi];return a(d),this.has(u)||(r(d),Bf(d),d.copy_.add(u),DT(d,u,u)),this}delete(u){if(!this.has(u))return!1;const d=this[Xi];return a(d),r(d),Bf(d),d.copy_.delete(u)||(d.drafts_.has(u)?d.copy_.delete(d.drafts_.get(u)):!1)}clear(){const u=this[Xi];a(u),Tr(u).size&&(r(u),Bf(u),u.copy_.clear())}values(){const u=this[Xi];return a(u),r(u),u.copy_.values()}entries(){const u=this[Xi];return a(u),r(u),u.copy_.entries()}keys(){return this.values()}[Symbol.iterator](){return this.values()}forEach(u,d){const f=this.values();let h=f.next();for(;!h.done;)u.call(d,h.value,h.value,this),h=f.next()}}function s(c,u){const d=new o(c,u);return[d,d[Xi]]}function r(c){c.copy_||(c.copy_=new Set,c.base_.forEach(u=>{if(Tu(u)){const d=J9(c.scope_,u,c,u);c.drafts_.set(u,d),c.copy_.add(d)}else c.copy_.add(u)}))}function a(c){c.revoked_&&cu(3,JSON.stringify(Tr(c)))}function l(c){if(c.type_===3&&c.copy_){const u=new Set(c.copy_);c.copy_.clear(),u.forEach(d=>{c.copy_.add(Wke(d))})}}Vke(G9,{proxyMap_:n,proxySet_:s,fixSetContents:l})}var o6e=new e6e,NT=o6e.produce;function va(e){this.content=e}va.prototype={constructor:va,find:function(e){for(var t=0;t>1}};va.from=function(e){if(e instanceof va)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new va(t)};function HX(e,t,n){for(let i=0;;i++){if(i==e.childCount||i==t.childCount)return e.childCount==t.childCount?null:n;let o=e.child(i),s=t.child(i);if(o==s){n+=o.nodeSize;continue}if(!o.sameMarkup(s))return n;if(o.isText&&o.text!=s.text){let r=o.text,a=s.text,l=0;for(;r[l]==a[l];l++)n++;return l&&l0&&f>0&&c[d-1]==u[f-1];)d--,f--,n--,i--;return d&&f&&d=56320&&e<57344}function qX(e){return e>=55296&&e<56320}class Mn{constructor(t,n){if(this.content=t,this.size=n||0,n==null)for(let i=0;it&&i(l,o+a,s||null,r)!==!1&&l.content.size){let u=a+1;l.nodesBetween(Math.max(0,t-u),Math.min(l.content.size,n-u),i,o+u)}a=c}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,n,i,o){let s="",r=!0;return this.nodesBetween(t,n,(a,l)=>{let c=a.isText?a.text.slice(Math.max(t,l)-l,n-l):a.isLeaf?o?typeof o=="function"?o(a):o:a.type.spec.leafText?a.type.spec.leafText(a):"":"";a.isBlock&&(a.isLeaf&&c||a.isTextblock)&&i&&(r?r=!1:s+=i),s+=c},0),s}append(t){if(!t.size)return this;if(!this.size)return t;let n=this.lastChild,i=t.firstChild,o=this.content.slice(),s=0;for(n.isText&&n.sameMarkup(i)&&(o[o.length-1]=n.withText(n.text+i.text),s=1);st)for(let s=0,r=0;rt&&((rn)&&(a.isText?a=a.cut(Math.max(0,t-r),Math.min(a.text.length,n-r)):a=a.cut(Math.max(0,t-r-1),Math.min(a.content.size,n-r-1))),i.push(a),o+=a.nodeSize),r=l}return new Mn(i,o)}cutByIndex(t,n){return t==n?Mn.empty:t==0&&n==this.content.length?this:new Mn(this.content.slice(t,n))}replaceChild(t,n){let i=this.content[t];if(i==n)return this;let o=this.content.slice(),s=this.size+n.nodeSize-i.nodeSize;return o[t]=n,new Mn(o,s)}addToStart(t){return new Mn([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new Mn(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return!1;for(let n=0;nthis.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let n=0,i=0;;n++){let o=this.child(n),s=i+o.nodeSize;if(s>=t)return s==t?T5(n+1,s):T5(n,i);i=s}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map(t=>t.toJSON()):null}static fromJSON(t,n){if(!n)return Mn.empty;if(!Array.isArray(n))throw new RangeError("Invalid input for Fragment.fromJSON");return Mn.fromArray(n.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return Mn.empty;let n,i=0;for(let o=0;othis.type.rank&&(n||(n=t.slice(0,o)),n.push(this),i=!0),n&&n.push(s)}}return n||(n=t.slice()),i||n.push(this),n}removeFromSet(t){for(let n=0;ni.type.rank-o.type.rank),n}}Eo.none=[];class X9 extends Error{}class Nn{constructor(t,n,i){this.content=t,this.openStart=n,this.openEnd=i}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,n){let i=UX(this.content,t+this.openStart,n,this.openStart+1,this.openEnd+1);return i&&new Nn(i,this.openStart,this.openEnd)}removeBetween(t,n){return new Nn(VX(this.content,t+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(t){return this.content.eq(t.content)&&this.openStart==t.openStart&&this.openEnd==t.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let t={content:this.content.toJSON()};return this.openStart>0&&(t.openStart=this.openStart),this.openEnd>0&&(t.openEnd=this.openEnd),t}static fromJSON(t,n){if(!n)return Nn.empty;let i=n.openStart||0,o=n.openEnd||0;if(typeof i!="number"||typeof o!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new Nn(Mn.fromJSON(t,n.content),i,o)}static maxOpen(t,n=!0){let i=0,o=0;for(let s=t.firstChild;s&&!s.isLeaf&&(n||!s.type.spec.isolating);s=s.firstChild)i++;for(let s=t.lastChild;s&&!s.isLeaf&&(n||!s.type.spec.isolating);s=s.lastChild)o++;return new Nn(t,i,o)}}Nn.empty=new Nn(Mn.empty,0,0);function VX(e,t,n){let{index:i,offset:o}=e.findIndex(t),s=e.maybeChild(i),{index:r,offset:a}=e.findIndex(n);if(o==t||s.isText){if(a!=n&&!e.child(r).isText)throw new RangeError("Removing non-flat range");return e.cut(0,t).append(e.cut(n))}if(i!=r)throw new RangeError("Removing non-flat range");return e.replaceChild(i,s.copy(VX(s.content,t-o-1,n-o-1)))}function UX(e,t,n,i,o,s){let{index:r,offset:a}=e.findIndex(t),l=e.maybeChild(r);if(a==t||l.isText)return s&&i<=0&&o<=0&&!s.canReplace(r,r,n)?null:e.cut(0,t).append(n).append(e.cut(t));let c=UX(l.content,t-a-1,n,r==0?i-1:0,r==e.childCount-1?o-1:0,l);return c&&e.replaceChild(r,l.copy(c))}function s6e(e,t,n){if(n.openStart>e.depth)throw new X9("Inserted content deeper than insertion position");if(e.depth-n.openStart!=t.depth-n.openEnd)throw new X9("Inconsistent open depths");return KX(e,t,n,0)}function KX(e,t,n,i){let o=e.index(i),s=e.node(i);if(o==t.index(i)&&i=0&&e.isText&&e.sameMarkup(t[n])?t[n]=e.withText(t[n].text+e.text):t.push(e)}function O4(e,t,n,i){let o=(t||e).node(n),s=0,r=t?t.index(n):o.childCount;e&&(s=e.index(n),e.depth>n?s++:e.textOffset&&(j0(e.nodeAfter,i),s++));for(let a=s;ao&&BT(e,t,o+1),r=i.depth>o&&BT(n,i,o+1),a=[];return O4(null,e,o,a),s&&r&&t.index(o)==n.index(o)?(ZX(s,r),j0(W0(s,GX(e,t,n,i,o+1)),a)):(s&&j0(W0(s,K6(e,t,o+1)),a),O4(t,n,o,a),r&&j0(W0(r,K6(n,i,o+1)),a)),O4(i,null,o,a),new Mn(a)}function K6(e,t,n){let i=[];if(O4(null,e,n,i),e.depth>n){let o=BT(e,t,n+1);j0(W0(o,K6(e,t,n+1)),i)}return O4(t,null,n,i),new Mn(i)}function r6e(e,t){let n=t.depth-e.openStart,o=t.node(n).copy(e.content);for(let s=n-1;s>=0;s--)o=t.node(s).copy(Mn.from(o));return{start:o.resolveNoCache(e.openStart+n),end:o.resolveNoCache(o.content.size-e.openEnd-n)}}class e3{constructor(t,n,i){this.pos=t,this.path=n,this.parentOffset=i,this.depth=n.length/3-1}resolveDepth(t){return t==null?this.depth:t<0?this.depth+t:t}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(t){return this.path[this.resolveDepth(t)*3]}index(t){return this.path[this.resolveDepth(t)*3+1]}indexAfter(t){return t=this.resolveDepth(t),this.index(t)+(t==this.depth&&!this.textOffset?0:1)}start(t){return t=this.resolveDepth(t),t==0?0:this.path[t*3-1]+1}end(t){return t=this.resolveDepth(t),this.start(t)+this.node(t).content.size}before(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]}after(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]+this.path[t*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let t=this.parent,n=this.index(this.depth);if(n==t.childCount)return null;let i=this.pos-this.path[this.path.length-1],o=t.child(n);return i?t.child(n).cut(i):o}get nodeBefore(){let t=this.index(this.depth),n=this.pos-this.path[this.path.length-1];return n?this.parent.child(t).cut(0,n):t==0?null:this.parent.child(t-1)}posAtIndex(t,n){n=this.resolveDepth(n);let i=this.path[n*3],o=n==0?0:this.path[n*3-1]+1;for(let s=0;s0;n--)if(this.start(n)<=t&&this.end(n)>=t)return n;return 0}blockRange(t=this,n){if(t.pos=0;i--)if(t.pos<=this.end(i)&&(!n||n(this.node(i))))return new c6e(this,t,i);return null}sameParent(t){return this.pos-this.parentOffset==t.pos-t.parentOffset}max(t){return t.pos>this.pos?t:this}min(t){return t.pos=0&&n<=t.content.size))throw new RangeError("Position "+n+" out of range");let i=[],o=0,s=n;for(let r=t;;){let{index:a,offset:l}=r.content.findIndex(s),c=s-l;if(i.push(r,a,o+l),!c||(r=r.child(a),r.isText))break;s=c-1,o+=l+1}return new e3(n,i,s)}static resolveCached(t,n){let i=Az.get(t);if(i)for(let s=0;st&&this.nodesBetween(t,n,s=>(i.isInSet(s.marks)&&(o=!0),!o)),o}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let t=this.type.name;return this.content.size&&(t+="("+this.content.toStringInner()+")"),QX(this.marks,t)}contentMatchAt(t){let n=this.type.contentMatch.matchFragment(this.content,0,t);if(!n)throw new Error("Called contentMatchAt on a node with invalid content");return n}canReplace(t,n,i=Mn.empty,o=0,s=i.childCount){let r=this.contentMatchAt(t).matchFragment(i,o,s),a=r&&r.matchFragment(this.content,n);if(!a||!a.validEnd)return!1;for(let l=o;ln.type.name)}`);this.content.forEach(n=>n.check())}toJSON(){let t={type:this.type.name};for(let n in this.attrs){t.attrs=this.attrs;break}return this.content.size&&(t.content=this.content.toJSON()),this.marks.length&&(t.marks=this.marks.map(n=>n.toJSON())),t}static fromJSON(t,n){if(!n)throw new RangeError("Invalid input for Node.fromJSON");let i;if(n.marks){if(!Array.isArray(n.marks))throw new RangeError("Invalid mark data for Node.fromJSON");i=n.marks.map(t.markFromJSON)}if(n.type=="text"){if(typeof n.text!="string")throw new RangeError("Invalid text node in JSON");return t.text(n.text,i)}let o=Mn.fromJSON(t,n.content),s=t.nodeType(n.type).create(n.attrs,o,i);return s.type.checkAttrs(s.attrs),s}};q0.prototype.text=void 0;class Z6 extends q0{constructor(t,n,i,o){if(super(t,n,null,o),!i)throw new RangeError("Empty text nodes are not allowed");this.text=i}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):QX(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(t,n){return this.text.slice(t,n)}get nodeSize(){return this.text.length}mark(t){return t==this.marks?this:new Z6(this.type,this.attrs,this.text,t)}withText(t){return t==this.text?this:new Z6(this.type,this.attrs,t,this.marks)}cut(t=0,n=this.text.length){return t==0&&n==this.text.length?this:this.withText(this.text.slice(t,n))}eq(t){return this.sameMarkup(t)&&this.text==t.text}toJSON(){let t=super.toJSON();return t.text=this.text,t}}function QX(e,t){for(let n=e.length-1;n>=0;n--)t=e[n].type.name+"("+t+")";return t}class sm{constructor(t){this.validEnd=t,this.next=[],this.wrapCache=[]}static parse(t,n){let i=new d6e(t,n);if(i.next==null)return sm.empty;let o=YX(i);i.next&&i.err("Unexpected trailing text");let s=y6e(v6e(o));return b6e(s,i),s}matchType(t){for(let n=0;nc.createAndFill()));for(let c=0;c=this.next.length)throw new RangeError(`There's no ${t}th edge in this content match`);return this.next[t]}toString(){let t=[];function n(i){t.push(i);for(let o=0;o{let s=o+(i.validEnd?"*":" ")+" ";for(let r=0;r"+t.indexOf(i.next[r].next);return s}).join(` +`)}}sm.empty=new sm(!0);class d6e{constructor(t,n){this.string=t,this.nodeTypes=n,this.inline=null,this.pos=0,this.tokens=t.split(/\s*(?=\b|\W|$)/),this.tokens[this.tokens.length-1]==""&&this.tokens.pop(),this.tokens[0]==""&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(t){return this.next==t&&(this.pos++||!0)}err(t){throw new SyntaxError(t+" (in content expression '"+this.string+"')")}}function YX(e){let t=[];do t.push(f6e(e));while(e.eat("|"));return t.length==1?t[0]:{type:"choice",exprs:t}}function f6e(e){let t=[];do t.push(h6e(e));while(e.next&&e.next!=")"&&e.next!="|");return t.length==1?t[0]:{type:"seq",exprs:t}}function h6e(e){let t=g6e(e);for(;;)if(e.eat("+"))t={type:"plus",expr:t};else if(e.eat("*"))t={type:"star",expr:t};else if(e.eat("?"))t={type:"opt",expr:t};else if(e.eat("{"))t=p6e(e,t);else break;return t}function Sz(e){/\D/.test(e.next)&&e.err("Expected number, got '"+e.next+"'");let t=Number(e.next);return e.pos++,t}function p6e(e,t){let n=Sz(e),i=n;return e.eat(",")&&(e.next!="}"?i=Sz(e):i=-1),e.eat("}")||e.err("Unclosed braced range"),{type:"range",min:n,max:i,expr:t}}function m6e(e,t){let n=e.nodeTypes,i=n[t];if(i)return[i];let o=[];for(let s in n){let r=n[s];r.isInGroup(t)&&o.push(r)}return o.length==0&&e.err("No node type or group '"+t+"' found"),o}function g6e(e){if(e.eat("(")){let t=YX(e);return e.eat(")")||e.err("Missing closing paren"),t}else if(/\W/.test(e.next))e.err("Unexpected token '"+e.next+"'");else{let t=m6e(e,e.next).map(n=>(e.inline==null?e.inline=n.isInline:e.inline!=n.isInline&&e.err("Mixing inline and block content"),{type:"name",value:n}));return e.pos++,t.length==1?t[0]:{type:"choice",exprs:t}}}function v6e(e){let t=[[]];return o(s(e,0),n()),t;function n(){return t.push([])-1}function i(r,a,l){let c={term:l,to:a};return t[r].push(c),c}function o(r,a){r.forEach(l=>l.to=a)}function s(r,a){if(r.type=="choice")return r.exprs.reduce((l,c)=>l.concat(s(c,a)),[]);if(r.type=="seq")for(let l=0;;l++){let c=s(r.exprs[l],a);if(l==r.exprs.length-1)return c;o(c,a=n())}else if(r.type=="star"){let l=n();return i(a,l),o(s(r.expr,l),l),[i(l)]}else if(r.type=="plus"){let l=n();return o(s(r.expr,a),l),o(s(r.expr,l),l),[i(l)]}else{if(r.type=="opt")return[i(a)].concat(s(r.expr,a));if(r.type=="range"){let l=a;for(let c=0;c{e[r].forEach(({term:a,to:l})=>{if(!a)return;let c;for(let u=0;u{c||o.push([a,c=[]]),c.indexOf(u)==-1&&c.push(u)})})});let s=t[i.join(",")]=new sm(i.indexOf(e.length-1)>-1);for(let r=0;r-1}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let t in this.attrs)if(this.attrs[t].isRequired)return!0;return!1}compatibleContent(t){return this==t||this.contentMatch.compatible(t.contentMatch)}computeAttrs(t){return!t&&this.defaultAttrs?this.defaultAttrs:eee(this.attrs,t)}create(t=null,n,i){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new q0(this,this.computeAttrs(t),Mn.from(n),Eo.setFrom(i))}createChecked(t=null,n,i){return n=Mn.from(n),this.checkContent(n),new q0(this,this.computeAttrs(t),n,Eo.setFrom(i))}createAndFill(t=null,n,i){if(t=this.computeAttrs(t),n=Mn.from(n),n.size){let r=this.contentMatch.fillBefore(n);if(!r)return null;n=r.append(n)}let o=this.contentMatch.matchFragment(n),s=o&&o.fillBefore(Mn.empty,!0);return s?new q0(this,t,n.append(s),Eo.setFrom(i)):null}validContent(t){let n=this.contentMatch.matchFragment(t);if(!n||!n.validEnd)return!1;for(let i=0;i-1}allowsMarks(t){if(this.markSet==null)return!0;for(let n=0;ni[s]=new iee(s,n,r));let o=n.spec.topNode||"doc";if(!i[o])throw new RangeError("Schema is missing its top node type ('"+o+"')");if(!i.text)throw new RangeError("Every schema needs a 'text' type");for(let s in i.text.attrs)throw new RangeError("The text node type should not have attributes");return i}};function k6e(e,t,n){let i=n.split("|");return o=>{let s=o===null?"null":typeof o;if(i.indexOf(s)<0)throw new RangeError(`Expected value of type ${i} for attribute ${t} on type ${e}, got ${s}`)}}class w6e{constructor(t,n,i){this.hasDefault=Object.prototype.hasOwnProperty.call(i,"default"),this.default=i.default,this.validate=typeof i.validate=="string"?k6e(t,n,i.validate):i.validate}get isRequired(){return!this.hasDefault}}class pC{constructor(t,n,i,o){this.name=t,this.rank=n,this.schema=i,this.spec=o,this.attrs=nee(t,o.attrs),this.excluded=null;let s=XX(this.attrs);this.instance=s?new Eo(this,s):null}create(t=null){return!t&&this.instance?this.instance:new Eo(this,eee(this.attrs,t))}static compile(t,n){let i=Object.create(null),o=0;return t.forEach((s,r)=>i[s]=new pC(s,o++,n,r)),i}removeFromSet(t){for(var n=0;n-1}}let C6e=class{constructor(t){this.linebreakReplacement=null,this.cached=Object.create(null);let n=this.spec={};for(let o in t)n[o]=t[o];n.nodes=va.from(t.nodes),n.marks=va.from(t.marks||{}),this.nodes=_z.compile(this.spec.nodes,this),this.marks=pC.compile(this.spec.marks,this);let i=Object.create(null);for(let o in this.nodes){if(o in this.marks)throw new RangeError(o+" can not be both a node and a mark");let s=this.nodes[o],r=s.spec.content||"",a=s.spec.marks;if(s.contentMatch=i[r]||(i[r]=sm.parse(r,this.nodes)),s.inlineContent=s.contentMatch.inlineContent,s.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!s.isInline||!s.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=s}s.markSet=a=="_"?null:a?Iz(this,a.split(" ")):a==""||!s.inlineContent?[]:null}for(let o in this.marks){let s=this.marks[o],r=s.spec.excludes;s.excluded=r==null?[s]:r==""?[]:Iz(this,r.split(" "))}this.nodeFromJSON=o=>q0.fromJSON(this,o),this.markFromJSON=o=>Eo.fromJSON(this,o),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(t,n=null,i,o){if(typeof t=="string")t=this.nodeType(t);else if(t instanceof _z){if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")")}else throw new RangeError("Invalid node type: "+t);return t.createChecked(n,i,o)}text(t,n){let i=this.nodes.text;return new Z6(i,i.defaultAttrs,t,Eo.setFrom(n))}mark(t,n){return typeof t=="string"&&(t=this.marks[t]),t.create(n)}nodeType(t){let n=this.nodes[t];if(!n)throw new RangeError("Unknown node type: "+t);return n}};function Iz(e,t){let n=[];for(let i=0;i-1)&&n.push(r=l)}if(!r)throw new SyntaxError("Unknown mark type: '"+t[i]+"'")}return n}function A6e(e){return e.tag!=null}function S6e(e){return e.style!=null}let oee=class HT{constructor(t,n){this.schema=t,this.rules=n,this.tags=[],this.styles=[];let i=this.matchedStyles=[];n.forEach(o=>{if(A6e(o))this.tags.push(o);else if(S6e(o)){let s=/[^=]*/.exec(o.style)[0];i.indexOf(s)<0&&i.push(s),this.styles.push(o)}}),this.normalizeLists=!this.tags.some(o=>{if(!/^(ul|ol)\b/.test(o.tag)||!o.node)return!1;let s=t.nodes[o.node];return s.contentMatch.matchType(s)})}parse(t,n={}){let i=new Mz(this,n,!1);return i.addAll(t,Eo.none,n.from,n.to),i.finish()}parseSlice(t,n={}){let i=new Mz(this,n,!0);return i.addAll(t,Eo.none,n.from,n.to),Nn.maxOpen(i.finish())}matchTag(t,n,i){for(let o=i?this.tags.indexOf(i)+1:0;ot.length&&(a.charCodeAt(t.length)!=61||a.slice(t.length+1)!=n))){if(r.getAttrs){let l=r.getAttrs(n);if(l===!1)continue;r.attrs=l||void 0}return r}}}static schemaRules(t){let n=[];function i(o){let s=o.priority==null?50:o.priority,r=0;for(;r{i(r=Ez(r)),r.mark||r.ignore||r.clearMark||(r.mark=o)})}for(let o in t.nodes){let s=t.nodes[o].spec.parseDOM;s&&s.forEach(r=>{i(r=Ez(r)),r.node||r.ignore||r.mark||(r.node=o)})}return n}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new HT(t,HT.schemaRules(t)))}};const see={address:!0,article:!0,aside:!0,blockquote:!0,body:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},x6e={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},ree={ol:!0,ul:!0},t3=1,jT=2,F4=4;function Tz(e,t,n){return t!=null?(t?t3:0)|(t==="full"?jT:0):e&&e.whitespace=="pre"?t3|jT:n&~F4}class M5{constructor(t,n,i,o,s,r){this.type=t,this.attrs=n,this.marks=i,this.solid=o,this.options=r,this.content=[],this.activeMarks=Eo.none,this.match=s||(r&F4?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let n=this.type.contentMatch.fillBefore(Mn.from(t));if(n)this.match=this.type.contentMatch.matchFragment(n);else{let i=this.type.contentMatch,o;return(o=i.findWrapping(t.type))?(this.match=i,o):null}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&t3)){let i=this.content[this.content.length-1],o;if(i&&i.isText&&(o=/[ \t\r\n\u000c]+$/.exec(i.text))){let s=i;i.text.length==o[0].length?this.content.pop():this.content[this.content.length-1]=s.withText(s.text.slice(0,s.text.length-o[0].length))}}let n=Mn.from(this.content);return!t&&this.match&&(n=n.append(this.match.fillBefore(Mn.empty,!0))),this.type?this.type.create(this.attrs,n,this.marks):n}inlineContext(t){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:t.parentNode&&!see.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class Mz{constructor(t,n,i){this.parser=t,this.options=n,this.isOpen=i,this.open=0,this.localPreserveWS=!1;let o=n.topNode,s,r=Tz(null,n.preserveWhitespace,0)|(i?F4:0);o?s=new M5(o.type,o.attrs,Eo.none,!0,n.topMatch||o.type.contentMatch,r):i?s=new M5(null,null,Eo.none,!0,null,r):s=new M5(t.schema.topNodeType,null,Eo.none,!0,null,r),this.nodes=[s],this.find=n.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(t,n){t.nodeType==3?this.addTextNode(t,n):t.nodeType==1&&this.addElement(t,n)}addTextNode(t,n){let i=t.nodeValue,o=this.top,s=o.options&jT?"full":this.localPreserveWS||(o.options&t3)>0,{schema:r}=this.parser;if(s==="full"||o.inlineContext(t)||/[^ \t\r\n\u000c]/.test(i)){if(s)if(s==="full")i=i.replace(/\r\n?/g,` +`);else if(r.linebreakReplacement&&/[\r\n]/.test(i)&&this.top.findWrapping(r.linebreakReplacement.create())){let a=i.split(/\r?\n|\r/);for(let l=0;l!l.clearMark(c)):n=n.concat(this.parser.schema.marks[l.mark].create(l.attrs)),l.consuming===!1)a=l;else break}}return n}addElementByRule(t,n,i,o){let s,r;if(n.node)if(r=this.parser.schema.nodes[n.node],r.isLeaf)this.insertNode(r.create(n.attrs),i,t.nodeName=="BR")||this.leafFallback(t,i);else{let l=this.enter(r,n.attrs||null,i,n.preserveWhitespace);l&&(s=!0,i=l)}else{let l=this.parser.schema.marks[n.mark];i=i.concat(l.create(n.attrs))}let a=this.top;if(r&&r.isLeaf)this.findInside(t);else if(o)this.addElement(t,i,o);else if(n.getContent)this.findInside(t),n.getContent(t,this.parser.schema).forEach(l=>this.insertNode(l,i,!1));else{let l=t;typeof n.contentElement=="string"?l=t.querySelector(n.contentElement):typeof n.contentElement=="function"?l=n.contentElement(t):n.contentElement&&(l=n.contentElement),this.findAround(t,l,!0),this.addAll(l,i),this.findAround(t,l,!1)}s&&this.sync(a)&&this.open--}addAll(t,n,i,o){let s=i||0;for(let r=i?t.childNodes[i]:t.firstChild,a=o==null?null:t.childNodes[o];r!=a;r=r.nextSibling,++s)this.findAtPoint(t,s),this.addDOM(r,n);this.findAtPoint(t,s)}findPlace(t,n,i){let o,s;for(let r=this.open,a=0;r>=0;r--){let l=this.nodes[r],c=l.findWrapping(t);if(c&&(!o||o.length>c.length+a)&&(o=c,s=l,!c.length))break;if(l.solid){if(i)break;a+=2}}if(!o)return null;this.sync(s);for(let r=0;r(r.type?r.type.allowsMarkType(c.type):Lz(c.type,t))?(l=c.addToSet(l),!1):!0),this.nodes.push(new M5(t,n,l,o,null,a)),this.open++,i}closeExtra(t=!1){let n=this.nodes.length-1;if(n>this.open){for(;n>this.open;n--)this.nodes[n-1].content.push(this.nodes[n].finish(t));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(!!(this.isOpen||this.options.topOpen))}sync(t){for(let n=this.open;n>=0;n--){if(this.nodes[n]==t)return this.open=n,!0;this.localPreserveWS&&(this.nodes[n].options|=t3)}return!1}get currentPos(){this.closeExtra();let t=0;for(let n=this.open;n>=0;n--){let i=this.nodes[n].content;for(let o=i.length-1;o>=0;o--)t+=i[o].nodeSize;n&&t++}return t}findAtPoint(t,n){if(this.find)for(let i=0;i-1)return t.split(/\s*\|\s*/).some(this.matchesContext,this);let n=t.split("/"),i=this.options.context,o=!this.isOpen&&(!i||i.parent.type==this.nodes[0].type),s=-(i?i.depth+1:0)+(o?0:1),r=(a,l)=>{for(;a>=0;a--){let c=n[a];if(c==""){if(a==n.length-1||a==0)continue;for(;l>=s;l--)if(r(a-1,l))return!0;return!1}else{let u=l>0||l==0&&o?this.nodes[l].type:i&&l>=s?i.node(l-s).type:null;if(!u||u.name!=c&&!u.isInGroup(c))return!1;l--}}return!0};return r(n.length-1,this.open)}textblockFromContext(){let t=this.options.context;if(t)for(let n=t.depth;n>=0;n--){let i=t.node(n).contentMatchAt(t.indexAfter(n)).defaultType;if(i&&i.isTextblock&&i.defaultAttrs)return i}for(let n in this.parser.schema.nodes){let i=this.parser.schema.nodes[n];if(i.isTextblock&&i.defaultAttrs)return i}}}function _6e(e){for(let t=e.firstChild,n=null;t;t=t.nextSibling){let i=t.nodeType==1?t.nodeName.toLowerCase():null;i&&ree.hasOwnProperty(i)&&n?(n.appendChild(t),t=n):i=="li"?n=t:i&&(n=null)}}function I6e(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function Ez(e){let t={};for(let n in e)t[n]=e[n];return t}function Lz(e,t){let n=t.schema.nodes;for(let i in n){let o=n[i];if(!o.allowsMarkType(e))continue;let s=[],r=a=>{s.push(a);for(let l=0;l{if(s.length||r.marks.length){let a=0,l=0;for(;a=0;o--){let s=this.serializeMark(t.marks[o],t.isInline,n);s&&((s.contentDOM||s.dom).appendChild(i),i=s.dom)}return i}serializeMark(t,n,i={}){let o=this.marks[t.type.name];return o&&X8(E5(i),o(t,n),null,t.attrs)}static renderSpec(t,n,i=null,o){return typeof n=="string"?{dom:t.createTextNode(n)}:X8(t,n,i,o)}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new Xd(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let n=Rz(t.nodes);return n.text||(n.text=i=>i.text),n}static marksFromSchema(t){return Rz(t.marks)}}function Rz(e){let t={};for(let n in e){let i=e[n].spec.toDOM;i&&(t[n]=i)}return t}function E5(e){return e.document||window.document}const Pz=new WeakMap;function T6e(e){let t=Pz.get(e);return t===void 0&&Pz.set(e,t=M6e(e)),t}function M6e(e){let t=null;function n(i){if(i&&typeof i=="object")if(Array.isArray(i))if(typeof i[0]=="string")t||(t=[]),t.push(i);else for(let o=0;o-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let r=o.indexOf(" ");r>0&&(n=o.slice(0,r),o=o.slice(r+1));let a,l=n?e.createElementNS(n,o):e.createElement(o),c=t[1],u=1;if(c&&typeof c=="object"&&c.nodeType==null&&!Array.isArray(c)){u=2;for(let d in c)if(c[d]!=null){let f=d.indexOf(" ");f>0?l.setAttributeNS(d.slice(0,f),d.slice(f+1),c[d]):d=="style"&&l.style?l.style.cssText=c[d]:l.setAttribute(d,c[d])}}for(let d=u;du)throw new RangeError("Content hole must be the only child of its parent node");return{dom:l,contentDOM:l}}else if(typeof f=="string")l.appendChild(e.createTextNode(f));else{let{dom:h,contentDOM:m}=X8(e,f,n,i);if(l.appendChild(h),m){if(a)throw new RangeError("Multiple content holes");a=m}}}return{dom:l,contentDOM:a}}const aee=65535,lee=Math.pow(2,16);function E6e(e,t){return e+t*lee}function $z(e){return e&aee}function L6e(e){return(e-(e&aee))/lee}const cee=1,uee=2,ek=4,dee=8;class WT{constructor(t,n,i){this.pos=t,this.delInfo=n,this.recover=i}get deleted(){return(this.delInfo&dee)>0}get deletedBefore(){return(this.delInfo&(cee|ek))>0}get deletedAfter(){return(this.delInfo&(uee|ek))>0}get deletedAcross(){return(this.delInfo&ek)>0}}class ml{constructor(t,n=!1){if(this.ranges=t,this.inverted=n,!t.length&&ml.empty)return ml.empty}recover(t){let n=0,i=$z(t);if(!this.inverted)for(let o=0;ot)break;let c=this.ranges[a+s],u=this.ranges[a+r],d=l+c;if(t<=d){let f=c?t==l?-1:t==d?1:n:n,h=l+o+(f<0?0:u);if(i)return h;let m=t==(n<0?l:d)?null:E6e(a/3,t-l),g=t==l?uee:t==d?cee:ek;return(n<0?t!=l:t!=d)&&(g|=dee),new WT(h,g,m)}o+=u-c}return i?t+o:new WT(t+o,0,null)}touches(t,n){let i=0,o=$z(n),s=this.inverted?2:1,r=this.inverted?1:2;for(let a=0;at)break;let c=this.ranges[a+s],u=l+c;if(t<=u&&a==o*3)return!0;i+=this.ranges[a+r]-c}return!1}forEach(t){let n=this.inverted?2:1,i=this.inverted?1:2;for(let o=0,s=0;o=0;n--){let o=t.getMirror(n);this.appendMap(t._maps[n].invert(),o!=null&&o>n?i-o-1:void 0)}}invert(){let t=new n3;return t.appendMappingInverted(this),t}map(t,n=1){if(this.mirror)return this._map(t,n,!0);for(let i=this.from;is&&l!r.isAtom||!a.type.allowsMarkType(this.mark.type)?r:r.mark(this.mark.addToSet(r.marks)),o),n.openStart,n.openEnd);return ir.fromReplace(t,this.from,this.to,s)}invert(){return new Zd(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);return n.deleted&&i.deleted||n.pos>=i.pos?null:new x1(n.pos,i.pos,this.mark)}merge(t){return t instanceof x1&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new x1(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new x1(n.from,n.to,t.markFromJSON(n.mark))}}Br.jsonID("addMark",x1);class Zd extends Br{constructor(t,n,i){super(),this.from=t,this.to=n,this.mark=i}apply(t){let n=t.slice(this.from,this.to),i=new Nn(VR(n.content,o=>o.mark(this.mark.removeFromSet(o.marks)),t),n.openStart,n.openEnd);return ir.fromReplace(t,this.from,this.to,i)}invert(){return new x1(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),i=t.mapResult(this.to,-1);return n.deleted&&i.deleted||n.pos>=i.pos?null:new Zd(n.pos,i.pos,this.mark)}merge(t){return t instanceof Zd&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new Zd(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new Zd(n.from,n.to,t.markFromJSON(n.mark))}}Br.jsonID("removeMark",Zd);class _1 extends Br{constructor(t,n){super(),this.pos=t,this.mark=n}apply(t){let n=t.nodeAt(this.pos);if(!n)return ir.fail("No node at mark step's position");let i=n.type.create(n.attrs,null,this.mark.addToSet(n.marks));return ir.fromReplace(t,this.pos,this.pos+1,new Nn(Mn.from(i),0,n.isLeaf?0:1))}invert(t){let n=t.nodeAt(this.pos);if(n){let i=this.mark.addToSet(n.marks);if(i.length==n.marks.length){for(let o=0;oi.pos?null:new Mc(n.pos,i.pos,o,s,this.slice,this.insert,this.structure)}toJSON(){let t={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(t.slice=this.slice.toJSON()),this.structure&&(t.structure=!0),t}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number"||typeof n.gapFrom!="number"||typeof n.gapTo!="number"||typeof n.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new Mc(n.from,n.to,n.gapFrom,n.gapTo,Nn.fromJSON(t,n.slice),n.insert,!!n.structure)}}Br.jsonID("replaceAround",Mc);function qT(e,t,n){let i=e.resolve(t),o=n-t,s=i.depth;for(;o>0&&s>0&&i.indexAfter(s)==i.node(s).childCount;)s--,o--;if(o>0){let r=i.node(s).maybeChild(i.indexAfter(s));for(;o>0;){if(!r||r.isLeaf)return!0;r=r.firstChild,o--}}return!1}function R6e(e,t,n,i){let o=[],s=[],r,a;e.doc.nodesBetween(t,n,(l,c,u)=>{if(!l.isInline)return;let d=l.marks;if(!i.isInSet(d)&&u.type.allowsMarkType(i.type)){let f=Math.max(c,t),h=Math.min(c+l.nodeSize,n),m=i.addToSet(d);for(let g=0;ge.step(l)),s.forEach(l=>e.step(l))}function P6e(e,t,n,i){let o=[],s=0;e.doc.nodesBetween(t,n,(r,a)=>{if(!r.isInline)return;s++;let l=null;if(i instanceof pC){let c=r.marks,u;for(;u=i.isInSet(c);)(l||(l=[])).push(u),c=u.removeFromSet(c)}else i?i.isInSet(r.marks)&&(l=[i]):l=r.marks;if(l&&l.length){let c=Math.min(a+r.nodeSize,n);for(let u=0;ue.step(new Zd(r.from,r.to,r.style)))}function UR(e,t,n,i=n.contentMatch,o=!0){let s=e.doc.nodeAt(t),r=[],a=t+1;for(let l=0;l=0;l--)e.step(r[l])}function $6e(e,t,n){return(t==0||e.canReplace(t,e.childCount))&&(n==e.childCount||e.canReplace(0,n))}function KR(e){let n=e.parent.content.cutByIndex(e.startIndex,e.endIndex);for(let i=e.depth,o=0,s=0;;--i){let r=e.$from.node(i),a=e.$from.index(i)+o,l=e.$to.indexAfter(i)-s;if(in;m--)g||i.index(m)>0?(g=!0,u=Mn.from(i.node(m).copy(u)),d++):l--;let f=Mn.empty,h=0;for(let m=s,g=!1;m>n;m--)g||o.after(m+1)=0;r--){if(i.size){let a=n[r].type.contentMatch.matchFragment(i);if(!a||!a.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}i=Mn.from(n[r].type.create(n[r].attrs,i))}let o=t.start,s=t.end;e.step(new Mc(o,s,o,s,new Nn(i,0,0),n.length,!0))}function D6e(e,t,n,i,o){if(!i.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let s=e.steps.length;e.doc.nodesBetween(t,n,(r,a)=>{let l=typeof o=="function"?o(r):o;if(r.isTextblock&&!r.hasMarkup(i,l)&&N6e(e.doc,e.mapping.slice(s).map(a),i)){let c=null;if(i.schema.linebreakReplacement){let h=i.whitespace=="pre",m=!!i.contentMatch.matchType(i.schema.linebreakReplacement);h&&!m?c=!1:!h&&m&&(c=!0)}c===!1&&hee(e,r,a,s),UR(e,e.mapping.slice(s).map(a,1),i,void 0,c===null);let u=e.mapping.slice(s),d=u.map(a,1),f=u.map(a+r.nodeSize,1);return e.step(new Mc(d,f,d+1,f-1,new Nn(Mn.from(i.create(l,null,r.marks)),0,0),1,!0)),c===!0&&fee(e,r,a,s),!1}})}function fee(e,t,n,i){t.forEach((o,s)=>{if(o.isText){let r,a=/\r?\n|\r/g;for(;r=a.exec(o.text);){let l=e.mapping.slice(i).map(n+1+s+r.index);e.replaceWith(l,l+1,t.type.schema.linebreakReplacement.create())}}})}function hee(e,t,n,i){t.forEach((o,s)=>{if(o.type==o.type.schema.linebreakReplacement){let r=e.mapping.slice(i).map(n+1+s);e.replaceWith(r,r+1,t.type.schema.text(` +`))}})}function N6e(e,t,n){let i=e.resolve(t),o=i.index();return i.parent.canReplaceWith(o,o+1,n)}function B6e(e,t,n,i,o){let s=e.doc.nodeAt(t);if(!s)throw new RangeError("No node at given position");n||(n=s.type);let r=n.create(i,null,o||s.marks);if(s.isLeaf)return e.replaceWith(t,t+s.nodeSize,r);if(!n.validContent(s.content))throw new RangeError("Invalid content for node type "+n.name);e.step(new Mc(t,t+s.nodeSize,t+1,t+s.nodeSize-1,new Nn(Mn.from(r),0,0),1,!0))}function tk(e,t,n=1,i){let o=e.resolve(t),s=o.depth-n,r=i&&i[i.length-1]||o.parent;if(s<0||o.parent.type.spec.isolating||!o.parent.canReplace(o.index(),o.parent.childCount)||!r.type.validContent(o.parent.content.cutByIndex(o.index(),o.parent.childCount)))return!1;for(let c=o.depth-1,u=n-2;c>s;c--,u--){let d=o.node(c),f=o.index(c);if(d.type.spec.isolating)return!1;let h=d.content.cutByIndex(f,d.childCount),m=i&&i[u+1];m&&(h=h.replaceChild(0,m.type.create(m.attrs)));let g=i&&i[u]||d;if(!d.canReplace(f+1,d.childCount)||!g.type.validContent(h))return!1}let a=o.indexAfter(s),l=i&&i[0];return o.node(s).canReplaceWith(a,a,l?l.type:o.node(s+1).type)}function z6e(e,t,n=1,i){let o=e.doc.resolve(t),s=Mn.empty,r=Mn.empty;for(let a=o.depth,l=o.depth-n,c=n-1;a>l;a--,c--){s=Mn.from(o.node(a).copy(s));let u=i&&i[c];r=Mn.from(u?u.type.create(u.attrs,r):o.node(a).copy(r))}e.step(new oa(t,t,new Nn(s.append(r),n,n),!0))}function pee(e,t){let n=e.resolve(t),i=n.index();return j6e(n.nodeBefore,n.nodeAfter)&&n.parent.canReplace(i,i+1)}function H6e(e,t){t.content.size||e.type.compatibleContent(t.type);let n=e.contentMatchAt(e.childCount),{linebreakReplacement:i}=e.type.schema;for(let o=0;o=0;o--){let s=i.index(o);if(i.node(o).canReplaceWith(s,s,n))return i.before(o+1);if(s>0)return null}if(i.parentOffset==i.parent.content.size)for(let o=i.depth-1;o>=0;o--){let s=i.indexAfter(o);if(i.node(o).canReplaceWith(s,s,n))return i.after(o+1);if(s=0;r--){let a=r==i.depth?0:i.pos<=(i.start(r+1)+i.end(r+1))/2?-1:1,l=i.index(r)+(a>0?1:0),c=i.node(r),u=!1;if(s==1)u=c.canReplace(l,l,o);else{let d=c.contentMatchAt(l).findWrapping(o.firstChild.type);u=d&&c.canReplaceWith(l,l,d[0])}if(u)return a==0?i.pos:a<0?i.before(r+1):i.after(r+1)}return null}function ZR(e,t,n=t,i=Nn.empty){if(t==n&&!i.size)return null;let o=e.resolve(t),s=e.resolve(n);return mee(o,s,i)?new oa(t,n,i):new U6e(o,s,i).fit()}function mee(e,t,n){return!n.openStart&&!n.openEnd&&e.start()==t.start()&&e.parent.canReplace(e.index(),t.index(),n.content)}class U6e{constructor(t,n,i){this.$from=t,this.$to=n,this.unplaced=i,this.frontier=[],this.placed=Mn.empty;for(let o=0;o<=t.depth;o++){let s=t.node(o);this.frontier.push({type:s.type,match:s.contentMatchAt(t.indexAfter(o))})}for(let o=t.depth;o>0;o--)this.placed=Mn.from(t.node(o).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let c=this.findFittable();c?this.placeNodes(c):this.openMore()||this.dropNode()}let t=this.mustMoveInline(),n=this.placed.size-this.depth-this.$from.depth,i=this.$from,o=this.close(t<0?this.$to:i.doc.resolve(t));if(!o)return null;let s=this.placed,r=i.depth,a=o.depth;for(;r&&a&&s.childCount==1;)s=s.firstChild.content,r--,a--;let l=new Nn(s,r,a);return t>-1?new Mc(i.pos,t,this.$to.pos,this.$to.end(),l,n):l.size||i.pos!=this.$to.pos?new oa(i.pos,o.pos,l):null}findFittable(){let t=this.unplaced.openStart;for(let n=this.unplaced.content,i=0,o=this.unplaced.openEnd;i1&&(o=0),s.type.spec.isolating&&o<=i){t=i;break}n=s.content}for(let n=1;n<=2;n++)for(let i=n==1?t:this.unplaced.openStart;i>=0;i--){let o,s=null;i?(s=$S(this.unplaced.content,i-1).firstChild,o=s.content):o=this.unplaced.content;let r=o.firstChild;for(let a=this.depth;a>=0;a--){let{type:l,match:c}=this.frontier[a],u,d=null;if(n==1&&(r?c.matchType(r.type)||(d=c.fillBefore(Mn.from(r),!1)):s&&l.compatibleContent(s.type)))return{sliceDepth:i,frontierDepth:a,parent:s,inject:d};if(n==2&&r&&(u=c.findWrapping(r.type)))return{sliceDepth:i,frontierDepth:a,parent:s,wrap:u};if(s&&c.matchType(s.type))break}}}openMore(){let{content:t,openStart:n,openEnd:i}=this.unplaced,o=$S(t,n);return!o.childCount||o.firstChild.isLeaf?!1:(this.unplaced=new Nn(t,n+1,Math.max(i,o.size+n>=t.size-i?n+1:0)),!0)}dropNode(){let{content:t,openStart:n,openEnd:i}=this.unplaced,o=$S(t,n);if(o.childCount<=1&&n>0){let s=t.size-n<=n+o.size;this.unplaced=new Nn(o4(t,n-1,1),n-1,s?n-1:i)}else this.unplaced=new Nn(o4(t,n,1),n,i)}placeNodes({sliceDepth:t,frontierDepth:n,parent:i,inject:o,wrap:s}){for(;this.depth>n;)this.closeFrontierNode();if(s)for(let g=0;g1||l==0||g.content.size)&&(d=y,u.push(gee(g.mark(f.allowedMarks(g.marks)),c==1?l:0,c==a.childCount?h:-1)))}let m=c==a.childCount;m||(h=-1),this.placed=s4(this.placed,n,Mn.from(u)),this.frontier[n].match=d,m&&h<0&&i&&i.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let g=0,y=a;g1&&o==this.$to.end(--i);)++o;return o}findCloseLevel(t){e:for(let n=Math.min(this.depth,t.depth);n>=0;n--){let{match:i,type:o}=this.frontier[n],s=n=0;a--){let{match:l,type:c}=this.frontier[a],u=OS(t,a,c,l,!0);if(!u||u.childCount)continue e}return{depth:n,fit:r,move:s?t.doc.resolve(t.after(n+1)):t}}}}close(t){let n=this.findCloseLevel(t);if(!n)return null;for(;this.depth>n.depth;)this.closeFrontierNode();n.fit.childCount&&(this.placed=s4(this.placed,n.depth,n.fit)),t=n.move;for(let i=n.depth+1;i<=t.depth;i++){let o=t.node(i),s=o.type.contentMatch.fillBefore(o.content,!0,t.index(i));this.openFrontierNode(o.type,o.attrs,s)}return t}openFrontierNode(t,n=null,i){let o=this.frontier[this.depth];o.match=o.match.matchType(t),this.placed=s4(this.placed,this.depth,Mn.from(t.create(n,i))),this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let n=this.frontier.pop().match.fillBefore(Mn.empty,!0);n.childCount&&(this.placed=s4(this.placed,this.frontier.length,n))}}function o4(e,t,n){return t==0?e.cutByIndex(n,e.childCount):e.replaceChild(0,e.firstChild.copy(o4(e.firstChild.content,t-1,n)))}function s4(e,t,n){return t==0?e.append(n):e.replaceChild(e.childCount-1,e.lastChild.copy(s4(e.lastChild.content,t-1,n)))}function $S(e,t){for(let n=0;n1&&(i=i.replaceChild(0,gee(i.firstChild,t-1,i.childCount==1?n-1:0))),t>0&&(i=e.type.contentMatch.fillBefore(i).append(i),n<=0&&(i=i.append(e.type.contentMatch.matchFragment(i).fillBefore(Mn.empty,!0)))),e.copy(i)}function OS(e,t,n,i,o){let s=e.node(t),r=o?e.indexAfter(t):e.index(t);if(r==s.childCount&&!n.compatibleContent(s.type))return null;let a=i.fillBefore(s.content,!0,r);return a&&!K6e(n,s.content,r)?a:null}function K6e(e,t,n){for(let i=n;i0;f--,h--){let m=o.node(f).type.spec;if(m.defining||m.definingAsContext||m.isolating)break;r.indexOf(f)>-1?a=f:o.before(f)==h&&r.splice(1,0,-f)}let l=r.indexOf(a),c=[],u=i.openStart;for(let f=i.content,h=0;;h++){let m=f.firstChild;if(c.push(m),h==i.openStart)break;f=m.content}for(let f=u-1;f>=0;f--){let h=c[f],m=Z6e(h.type);if(m&&!h.sameMarkup(o.node(Math.abs(a)-1)))u=f;else if(m||!h.type.isTextblock)break}for(let f=i.openStart;f>=0;f--){let h=(f+u+1)%(i.openStart+1),m=c[h];if(m)for(let g=0;g=0&&(e.replace(t,n,i),!(e.steps.length>d));f--){let h=r[f];h<0||(t=o.before(h),n=s.after(h))}}function vee(e,t,n,i,o){if(ti){let s=o.contentMatchAt(0),r=s.fillBefore(e).append(e);e=r.append(s.matchFragment(r).fillBefore(Mn.empty,!0))}return e}function Q6e(e,t,n,i){if(!i.isInline&&t==n&&e.doc.resolve(t).parent.content.size){let o=q6e(e.doc,t,i.type);o!=null&&(t=n=o)}e.replaceRange(t,n,new Nn(Mn.from(i),0,0))}function Y6e(e,t,n){let i=e.doc.resolve(t),o=e.doc.resolve(n);if(i.parent.isTextblock&&o.parent.isTextblock&&i.start()!=o.start()&&i.parentOffset==0&&o.parentOffset==0){let r=i.sharedDepth(n),a=!1;for(let l=i.depth;l>r;l--)i.node(l).type.spec.isolating&&(a=!0);for(let l=o.depth;l>r;l--)o.node(l).type.spec.isolating&&(a=!0);if(!a){for(let l=i.depth;l>0&&t==i.start(l);l--)t=i.before(l);for(let l=o.depth;l>0&&n==o.start(l);l--)n=o.before(l);i=e.doc.resolve(t),o=e.doc.resolve(n)}}let s=yee(i,o);for(let r=0;r0&&(l||i.node(a-1).canReplace(i.index(a-1),o.indexAfter(a-1))))return e.delete(i.before(a),o.after(a))}for(let r=1;r<=i.depth&&r<=o.depth;r++)if(t-i.start(r)==i.depth-r&&n>i.end(r)&&o.end(r)-n!=o.depth-r&&i.start(r-1)==o.start(r-1)&&i.node(r-1).canReplace(i.index(r-1),o.index(r-1)))return e.delete(i.before(r),n);e.delete(t,n)}function yee(e,t){let n=[],i=Math.min(e.depth,t.depth);for(let o=i;o>=0;o--){let s=e.start(o);if(st.pos+(t.depth-o)||e.node(o).type.spec.isolating||t.node(o).type.spec.isolating)break;(s==t.start(o)||o==e.depth&&o==t.depth&&e.parent.inlineContent&&t.parent.inlineContent&&o&&t.start(o-1)==s-1)&&n.push(o)}return n}class v2 extends Br{constructor(t,n,i){super(),this.pos=t,this.attr=n,this.value=i}apply(t){let n=t.nodeAt(this.pos);if(!n)return ir.fail("No node at attribute step's position");let i=Object.create(null);for(let s in n.attrs)i[s]=n.attrs[s];i[this.attr]=this.value;let o=n.type.create(i,null,n.marks);return ir.fromReplace(t,this.pos,this.pos+1,new Nn(Mn.from(o),0,n.isLeaf?0:1))}getMap(){return ml.empty}invert(t){return new v2(this.pos,this.attr,t.nodeAt(this.pos).attrs[this.attr])}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new v2(n.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(t,n){if(typeof n.pos!="number"||typeof n.attr!="string")throw new RangeError("Invalid input for AttrStep.fromJSON");return new v2(n.pos,n.attr,n.value)}}Br.jsonID("attr",v2);class i3 extends Br{constructor(t,n){super(),this.attr=t,this.value=n}apply(t){let n=Object.create(null);for(let o in t.attrs)n[o]=t.attrs[o];n[this.attr]=this.value;let i=t.type.create(n,t.content,t.marks);return ir.ok(i)}getMap(){return ml.empty}invert(t){return new i3(this.attr,t.attrs[this.attr])}map(t){return this}toJSON(){return{stepType:"docAttr",attr:this.attr,value:this.value}}static fromJSON(t,n){if(typeof n.attr!="string")throw new RangeError("Invalid input for DocAttrStep.fromJSON");return new i3(n.attr,n.value)}}Br.jsonID("docAttr",i3);let K2=class extends Error{};K2=function e(t){let n=Error.call(this,t);return n.__proto__=e.prototype,n};K2.prototype=Object.create(Error.prototype);K2.prototype.constructor=K2;K2.prototype.name="TransformError";class J6e{constructor(t){this.doc=t,this.steps=[],this.docs=[],this.mapping=new n3}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let n=this.maybeStep(t);if(n.failed)throw new K2(n.failed);return this}maybeStep(t){let n=t.apply(this.doc);return n.failed||this.addStep(t,n.doc),n}get docChanged(){return this.steps.length>0}changedRange(){let t=1e9,n=-1e9;for(let i=0;i{t=Math.min(t,a),n=Math.max(n,l)})}return t==1e9?null:{from:t,to:n}}addStep(t,n){this.docs.push(this.doc),this.steps.push(t),this.mapping.appendMap(t.getMap()),this.doc=n}replace(t,n=t,i=Nn.empty){let o=ZR(this.doc,t,n,i);return o&&this.step(o),this}replaceWith(t,n,i){return this.replace(t,n,new Nn(Mn.from(i),0,0))}delete(t,n){return this.replace(t,n,Nn.empty)}insert(t,n){return this.replaceWith(t,t,n)}replaceRange(t,n,i){return G6e(this,t,n,i),this}replaceRangeWith(t,n,i){return Q6e(this,t,n,i),this}deleteRange(t,n){return Y6e(this,t,n),this}lift(t,n){return O6e(this,t,n),this}join(t,n=1){return W6e(this,t,n),this}wrap(t,n){return F6e(this,t,n),this}setBlockType(t,n=t,i,o=null){return D6e(this,t,n,i,o),this}setNodeMarkup(t,n,i=null,o){return B6e(this,t,n,i,o),this}setNodeAttribute(t,n,i){return this.step(new v2(t,n,i)),this}setDocAttribute(t,n){return this.step(new i3(t,n)),this}addNodeMark(t,n){return this.step(new _1(t,n)),this}removeNodeMark(t,n){let i=this.doc.nodeAt(t);if(!i)throw new RangeError("No node at position "+t);if(n instanceof Eo)n.isInSet(i.marks)&&this.step(new rm(t,n));else{let o=i.marks,s,r=[];for(;s=n.isInSet(o);)r.push(new rm(t,s)),o=s.removeFromSet(o);for(let a=r.length-1;a>=0;a--)this.step(r[a])}return this}split(t,n=1,i){return z6e(this,t,n,i),this}addMark(t,n,i){return R6e(this,t,n,i),this}removeMark(t,n,i){return P6e(this,t,n,i),this}clearIncompatible(t,n,i){return UR(this,t,n,i),this}}const FS=Object.create(null);class To{constructor(t,n,i){this.$anchor=t,this.$head=n,this.ranges=i||[new X6e(t.min(n),t.max(n))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let t=this.ranges;for(let n=0;n=0;s--){let r=n<0?$g(t.node(0),t.node(s),t.before(s+1),t.index(s),n,i):$g(t.node(0),t.node(s),t.after(s+1),t.index(s)+1,n,i);if(r)return r}return null}static near(t,n=1){return this.findFrom(t,n)||this.findFrom(t,-n)||new Ec(t.node(0))}static atStart(t){return $g(t,t,0,0,1)||new Ec(t)}static atEnd(t){return $g(t,t,t.content.size,t.childCount,-1)||new Ec(t)}static fromJSON(t,n){if(!n||!n.type)throw new RangeError("Invalid input for Selection.fromJSON");let i=FS[n.type];if(!i)throw new RangeError(`No selection type ${n.type} defined`);return i.fromJSON(t,n)}static jsonID(t,n){if(t in FS)throw new RangeError("Duplicate use of selection JSON ID "+t);return FS[t]=n,n.prototype.jsonID=t,n}getBookmark(){return Li.between(this.$anchor,this.$head).getBookmark()}}To.prototype.visible=!0;class X6e{constructor(t,n){this.$from=t,this.$to=n}}let Oz=!1;function Fz(e){!Oz&&!e.parent.inlineContent&&(Oz=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+e.parent.type.name+")"))}class Li extends To{constructor(t,n=t){Fz(t),Fz(n),super(t,n)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,n){let i=t.resolve(n.map(this.head));if(!i.parent.inlineContent)return To.near(i);let o=t.resolve(n.map(this.anchor));return new Li(o.parent.inlineContent?o:i,i)}replace(t,n=Nn.empty){if(super.replace(t,n),n==Nn.empty){let i=this.$from.marksAcross(this.$to);i&&t.ensureMarks(i)}}eq(t){return t instanceof Li&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new mC(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(t,n){if(typeof n.anchor!="number"||typeof n.head!="number")throw new RangeError("Invalid input for TextSelection.fromJSON");return new Li(t.resolve(n.anchor),t.resolve(n.head))}static create(t,n,i=n){let o=t.resolve(n);return new this(o,i==n?o:t.resolve(i))}static between(t,n,i){let o=t.pos-n.pos;if((!i||o)&&(i=o>=0?1:-1),!n.parent.inlineContent){let s=To.findFrom(n,i,!0)||To.findFrom(n,-i,!0);if(s)n=s.$head;else return To.near(n,i)}return t.parent.inlineContent||(o==0?t=n:(t=(To.findFrom(t,-i,!0)||To.findFrom(t,i,!0)).$anchor,t.pos0?0:1);o>0?r=0;r+=o){let a=t.child(r);if(a.isAtom){if(!s&&Ri.isSelectable(a))return Ri.create(e,n-(o<0?a.nodeSize:0))}else{let l=$g(e,a,n+o,o<0?a.childCount:0,o,s);if(l)return l}n+=a.nodeSize*o}return null}function Dz(e,t,n){let i=e.steps.length-1;if(i{r==null&&(r=u)}),e.setSelection(To.near(e.doc.resolve(r),n))}const Nz=1,L5=2,Bz=4;class twe extends J6e{constructor(t){super(t.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=t.selection,this.storedMarks=t.storedMarks}get selection(){return this.curSelectionFor0}setStoredMarks(t){return this.storedMarks=t,this.updated|=L5,this}ensureMarks(t){return Eo.sameSet(this.storedMarks||this.selection.$from.marks(),t)||this.setStoredMarks(t),this}addStoredMark(t){return this.ensureMarks(t.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(t){return this.ensureMarks(t.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(this.updated&L5)>0}addStep(t,n){super.addStep(t,n),this.updated=this.updated&~L5,this.storedMarks=null}setTime(t){return this.time=t,this}replaceSelection(t){return this.selection.replace(this,t),this}replaceSelectionWith(t,n=!0){let i=this.selection;return n&&(t=t.mark(this.storedMarks||(i.empty?i.$from.marks():i.$from.marksAcross(i.$to)||Eo.none))),i.replaceWith(this,t),this}deleteSelection(){return this.selection.replace(this),this}insertText(t,n,i){let o=this.doc.type.schema;if(n==null)return t?this.replaceSelectionWith(o.text(t),!0):this.deleteSelection();{if(i==null&&(i=n),!t)return this.deleteRange(n,i);let s=this.storedMarks;if(!s){let r=this.doc.resolve(n);s=i==n?r.marks():r.marksAcross(this.doc.resolve(i))}return this.replaceRangeWith(n,i,o.text(t,s)),!this.selection.empty&&this.selection.to==n+t.length&&this.setSelection(To.near(this.selection.$to)),this}}setMeta(t,n){return this.meta[typeof t=="string"?t:t.key]=n,this}getMeta(t){return this.meta[typeof t=="string"?t:t.key]}get isGeneric(){for(let t in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=Bz,this}get scrolledIntoView(){return(this.updated&Bz)>0}}function zz(e,t){return!t||!e?e:e.bind(t)}class r4{constructor(t,n,i){this.name=t,this.init=zz(n.init,i),this.apply=zz(n.apply,i)}}const nwe=[new r4("doc",{init(e){return e.doc||e.schema.topNodeType.createAndFill()},apply(e){return e.doc}}),new r4("selection",{init(e,t){return e.selection||To.atStart(t.doc)},apply(e){return e.selection}}),new r4("storedMarks",{init(e){return e.storedMarks||null},apply(e,t,n,i){return i.selection.$cursor?e.storedMarks:null}}),new r4("scrollToSelection",{init(){return 0},apply(e,t){return e.scrolledIntoView?t+1:t}})];class DS{constructor(t,n){this.schema=t,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=nwe.slice(),n&&n.forEach(i=>{if(this.pluginsByKey[i.key])throw new RangeError("Adding different instances of a keyed plugin ("+i.key+")");this.plugins.push(i),this.pluginsByKey[i.key]=i,i.spec.state&&this.fields.push(new r4(i.key,i.spec.state,i))})}}class I1{constructor(t){this.config=t}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(t){return this.applyTransaction(t).state}filterTransaction(t,n=-1){for(let i=0;ii.toJSON())),t&&typeof t=="object")for(let i in t){if(i=="doc"||i=="selection")throw new RangeError("The JSON fields `doc` and `selection` are reserved");let o=t[i],s=o.spec.state;s&&s.toJSON&&(n[i]=s.toJSON.call(o,this[o.key]))}return n}static fromJSON(t,n,i){if(!n)throw new RangeError("Invalid input for EditorState.fromJSON");if(!t.schema)throw new RangeError("Required config field 'schema' missing");let o=new DS(t.schema,t.plugins),s=new I1(o);return o.fields.forEach(r=>{if(r.name=="doc")s.doc=q0.fromJSON(t.schema,n.doc);else if(r.name=="selection")s.selection=To.fromJSON(s.doc,n.selection);else if(r.name=="storedMarks")n.storedMarks&&(s.storedMarks=n.storedMarks.map(t.schema.markFromJSON));else{if(i)for(let a in i){let l=i[a],c=l.spec.state;if(l.key==r.name&&c&&c.fromJSON&&Object.prototype.hasOwnProperty.call(n,a)){s[r.name]=c.fromJSON.call(l,t,n[a],s);return}}s[r.name]=r.init(t,s)}}),s}}function bee(e,t,n){for(let i in e){let o=e[i];o instanceof Function?o=o.bind(t):i=="handleDOMEvents"&&(o=bee(o,t,{})),n[i]=o}return n}class kp{constructor(t){this.spec=t,this.props={},t.props&&bee(t.props,this,this.props),this.key=t.key?t.key.key:kee("plugin")}getState(t){return t[this.key]}}const NS=Object.create(null);function kee(e){return e in NS?e+"$"+ ++NS[e]:(NS[e]=0,e+"$")}class rb{constructor(t="key"){this.key=kee(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}function y2(e){let t="";for(const n of e)n.codePointAt(0)>127||/[A-Za-z0-9\-._~]/.test(n)?t+=n:t+=`%${n.charCodeAt(0).toString(16).toUpperCase().padStart(2,"0")}`;return t}function iwe(e){const t=e.split("/").map(y2).join("/");return t.startsWith("//")?`/%2F${t.slice(2)}`:t}function gC(e){return e.replace(/%/g,"%25").replace(/&/g,"%26").replace(//g,"%3E").replace(/([\\[\]])/g,"\\$1").replace(/\n/g,"%0A").replace(/\r/g,"%0D")}function BS(e){return e.replace(/\\([\\[\]])/g,"$1").replace(/%0A/g,` +`).replace(/%0D/g,"\r").replace(/%26/g,"&").replace(/%3C/g,"<").replace(/%3E/g,">").replace(/%25/g,"%")}function owe(e){return e.replace(/%0A/g,` +`).replace(/%0D/g,"\r").replace(/%26/g,"&").replace(/%3C/g,"<").replace(/%3E/g,">").replace(/%25/g,"%")}function swe(e,t){const n=t?e.replace(/\\([\\<>])/g,"$1"):e.replace(/\\([\\()])/g,"$1");return D4(n)}function D4(e){try{return decodeURIComponent(e)}catch{return e}}let Hz;function VT(e){return Hz??=new Intl.Segmenter("und",{granularity:"grapheme"}),[...Hz.segment(e)].map(t=>t.segment)}function G6(e,t){const n=VT(e);return n.length<=t?e:`${n.slice(0,t-1).join("")}…`}const Q6="kimi-code://skill/";function QR(e){return e?e.startsWith(Q6)&&e.length>Q6.length?"skill":e.startsWith("#")||e.startsWith("?")||e.startsWith("//")||/^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(e)&&!/^[a-zA-Z]:(?:[\\/]|%5c)/i.test(e)?null:e.endsWith("/")||e.endsWith("\\")||/%5c$/i.test(e)?"folder":"file":null}function N4(e){const t=e.search(/[#?]/);return t>0?e.slice(0,t):e}function YR(e){const t=e.search(/[#?]/);return t>0?e.slice(t):""}function wee(e){const t=e.slice(Q6.length);return D4(t)}function Av(e){const t=gC(e.name);if(e.kind==="skill")return`[${t}](${Q6}${y2(e.name)})`;const n=e.kind==="folder"&&!e.path.endsWith("/")&&!e.path.endsWith("\\")?`${e.path}/`:e.path;return`[${t}](${iwe(n)})`}const B4="kimi-code-composer://attachments/",UT="kimi-code-composer://browser-references/";function JR(e){return`[${gC(e.label)}](${UT}${y2(e.refId)})`}function Z2(e){const t=`[${gC(e.name)}](${B4}${e.attId})`;return e.comment?vC({text:t,comment:e.comment}):t}const Yf="kimi-code-composer://quote/",rwe=12;function D1(e){const t=e.split(` +`).map(i=>i.trim()).find(i=>i.length>0)??"",n=G6(t,rwe);return n.length>0?n:"…"}function vC(e){const t=e.source!==void 0&&e.source.length>0?`?source=${y2(e.source)}`:"",n=e.comment!==void 0&&e.comment.length>0?`?comment=${y2(e.comment)}`:"";return`[${gC(D1(e.text))}](${Yf}${y2(e.text)}${t}${n})`}function Cee(e){const t=e.indexOf("?source="),n=e.indexOf("?comment="),i=[t,n].filter(s=>s>=0).sort((s,r)=>s-r)[0]??-1,o={text:D4(i===-1?e:e.slice(0,i))};if(t>=0){const s=n>t?n:e.length;o.source=D4(e.slice(t+8,s))}if(n>=0){const s=t>n?t:e.length;o.comment=D4(e.slice(n+9,s))}return o}const jz=document.createElement("i");function awe(e){const t="&"+e+";";jz.innerHTML=t;const n=jz.textContent;return n.charCodeAt(n.length-1)===59&&e!=="semi"||n===t?!1:n}function sf(e,t,n,i){const o=e.length;let s=0,r;if(t<0?t=-t>o?0:o+t:t=t>o?o:t,n=n>0?n:0,i.length<1e4)r=Array.from(i),r.unshift(t,n),e.splice(...r);else for(n&&e.splice(t,n);s0?(sf(e,e.length,0,t),e):t}const Wz={}.hasOwnProperty;function lwe(e){const t={};let n=-1;for(;++n-1&&e.test(String.fromCharCode(n))}}function gs(e,t,n,i){const o=i?i-1:Number.POSITIVE_INFINITY;let s=0;return r;function r(l){return Co(l)?(e.enter(n),a(l)):t(l)}function a(l){return Co(l)&&s++r))return;const M=t.events.length;let I=M,T,E;for(;I--;)if(t.events[I][0]==="exit"&&t.events[I][1].type==="chunkFlow"){if(T){E=t.events[I][1].end;break}T=!0}for(v(i),x=M;xC;){const S=n[w];t.containerState=S[1],S[0].exit.call(t,e)}n.length=C}function k(){o.write([null]),s=void 0,o=void 0,t.containerState._closeFlow=void 0}}function kwe(e,t,n){return gs(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Vz(e){if(e===null||Kl(e)||mwe(e))return 1;if(pwe(e))return 2}function eP(e,t,n){const i=[];let o=-1;for(;++o1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const d={...e[i][1].end},f={...e[n][1].start};Uz(d,-l),Uz(f,l),r={type:l>1?"strongSequence":"emphasisSequence",start:d,end:{...e[i][1].end}},a={type:l>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:f},s={type:l>1?"strongText":"emphasisText",start:{...e[i][1].end},end:{...e[n][1].start}},o={type:l>1?"strong":"emphasis",start:{...r.start},end:{...a.end}},e[i][1].end={...r.start},e[n][1].start={...a.end},c=[],e[i][1].end.offset-e[i][1].start.offset&&(c=lu(c,[["enter",e[i][1],t],["exit",e[i][1],t]])),c=lu(c,[["enter",o,t],["enter",r,t],["exit",r,t],["enter",s,t]]),c=lu(c,eP(t.parser.constructs.insideSpan.null,e.slice(i+1,n),t)),c=lu(c,[["exit",s,t],["enter",a,t],["exit",a,t],["exit",o,t]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,c=lu(c,[["enter",e[n][1],t],["exit",e[n][1],t]])):u=0,sf(e,i-1,n-i+3,c),n=i+c.length-u-2;break}}for(n=-1;++n0&&Co(x)?gs(e,k,"linePrefix",s+1)(x):k(x)}function k(x){return x===null||Ci(x)?e.check(Kz,g,w)(x):(e.enter("codeFlowValue"),C(x))}function C(x){return x===null||Ci(x)?(e.exit("codeFlowValue"),k(x)):(e.consume(x),C)}function w(x){return e.exit("codeFenced"),t(x)}function S(x,M,I){let T=0;return E;function E(N){return x.enter("lineEnding"),x.consume(N),x.exit("lineEnding"),L}function L(N){return x.enter("codeFencedFence"),Co(N)?gs(x,P,"linePrefix",i.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(N):P(N)}function P(N){return N===a?(x.enter("codeFencedFenceSequence"),B(N)):I(N)}function B(N){return N===a?(T++,x.consume(N),B):T>=r?(x.exit("codeFencedFenceSequence"),Co(N)?gs(x,V,"whitespace")(N):V(N)):I(N)}function V(N){return N===null||Ci(N)?(x.exit("codeFencedFence"),M(N)):I(N)}}}function Rwe(e,t,n){const i=this;return o;function o(r){return r===null?n(r):(e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),s)}function s(r){return i.parser.lazy[i.now().line]?n(r):t(r)}}const zS={name:"codeIndented",tokenize:$we},Pwe={partial:!0,tokenize:Owe};function $we(e,t,n){const i=this;return o;function o(c){return e.enter("codeIndented"),gs(e,s,"linePrefix",5)(c)}function s(c){const u=i.events[i.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?r(c):n(c)}function r(c){return c===null?l(c):Ci(c)?e.attempt(Pwe,r,l)(c):(e.enter("codeFlowValue"),a(c))}function a(c){return c===null||Ci(c)?(e.exit("codeFlowValue"),r(c)):(e.consume(c),a)}function l(c){return e.exit("codeIndented"),t(c)}}function Owe(e,t,n){const i=this;return o;function o(r){return i.parser.lazy[i.now().line]?n(r):Ci(r)?(e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),o):gs(e,s,"linePrefix",5)(r)}function s(r){const a=i.events[i.events.length-1];return a&&a[1].type==="linePrefix"&&a[2].sliceSerialize(a[1],!0).length>=4?t(r):Ci(r)?o(r):n(r)}}const Fwe={name:"codeText",previous:Nwe,resolve:Dwe,tokenize:Bwe};function Dwe(e){let t=e.length-4,n=3,i,o;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(i=n;++i=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return tthis.left.length?this.right.slice(this.right.length-i+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-i+this.left.length).reverse())}splice(t,n,i){const o=n||0;this.setCursor(Math.trunc(t));const s=this.right.splice(this.right.length-o,Number.POSITIVE_INFINITY);return i&&Ay(this.left,i),s.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Ay(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Ay(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t=4?t(r):e.interrupt(i.parser.constructs.flow,n,t)(r)}}function Iee(e,t,n,i,o,s,r,a,l){const c=l||Number.POSITIVE_INFINITY;let u=0;return d;function d(v){return v===60?(e.enter(i),e.enter(o),e.enter(s),e.consume(v),e.exit(s),f):v===null||v===32||v===41||KT(v)?n(v):(e.enter(i),e.enter(r),e.enter(a),e.enter("chunkString",{contentType:"string"}),g(v))}function f(v){return v===62?(e.enter(s),e.consume(v),e.exit(s),e.exit(o),e.exit(i),t):(e.enter(a),e.enter("chunkString",{contentType:"string"}),h(v))}function h(v){return v===62?(e.exit("chunkString"),e.exit(a),f(v)):v===null||v===60||Ci(v)?n(v):(e.consume(v),v===92?m:h)}function m(v){return v===60||v===62||v===92?(e.consume(v),h):h(v)}function g(v){return!u&&(v===null||v===41||Kl(v))?(e.exit("chunkString"),e.exit(a),e.exit(r),e.exit(i),t(v)):u999||h===null||h===91||h===93&&!l||h===94&&!a&&"_hiddenFootnoteSupport"in r.parser.constructs?n(h):h===93?(e.exit(s),e.enter(o),e.consume(h),e.exit(o),e.exit(i),t):Ci(h)?(e.enter("lineEnding"),e.consume(h),e.exit("lineEnding"),u):(e.enter("chunkString",{contentType:"string"}),d(h))}function d(h){return h===null||h===91||h===93||Ci(h)||a++>999?(e.exit("chunkString"),u(h)):(e.consume(h),l||(l=!Co(h)),h===92?f:d)}function f(h){return h===91||h===92||h===93?(e.consume(h),a++,d):d(h)}}function Mee(e,t,n,i,o,s){let r;return a;function a(f){return f===34||f===39||f===40?(e.enter(i),e.enter(o),e.consume(f),e.exit(o),r=f===40?41:f,l):n(f)}function l(f){return f===r?(e.enter(o),e.consume(f),e.exit(o),e.exit(i),t):(e.enter(s),c(f))}function c(f){return f===r?(e.exit(s),l(r)):f===null?n(f):Ci(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),gs(e,c,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),u(f))}function u(f){return f===r||f===null||Ci(f)?(e.exit("chunkString"),c(f)):(e.consume(f),f===92?d:u)}function d(f){return f===r||f===92?(e.consume(f),u):u(f)}}function z4(e,t){let n;return i;function i(o){return Ci(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),n=!0,i):Co(o)?gs(e,i,n?"linePrefix":"lineSuffix")(o):t(o)}}const Kwe={name:"definition",tokenize:Gwe},Zwe={partial:!0,tokenize:Qwe};function Gwe(e,t,n){const i=this;let o;return s;function s(h){return e.enter("definition"),r(h)}function r(h){return Tee.call(i,e,a,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(h)}function a(h){return o=XR(i.sliceSerialize(i.events[i.events.length-1][1]).slice(1,-1)),h===58?(e.enter("definitionMarker"),e.consume(h),e.exit("definitionMarker"),l):n(h)}function l(h){return Kl(h)?z4(e,c)(h):c(h)}function c(h){return Iee(e,u,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(h)}function u(h){return e.attempt(Zwe,d,d)(h)}function d(h){return Co(h)?gs(e,f,"whitespace")(h):f(h)}function f(h){return h===null||Ci(h)?(e.exit("definition"),i.parser.defined.push(o),t(h)):n(h)}}function Qwe(e,t,n){return i;function i(a){return Kl(a)?z4(e,o)(a):n(a)}function o(a){return Mee(e,s,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(a)}function s(a){return Co(a)?gs(e,r,"whitespace")(a):r(a)}function r(a){return a===null||Ci(a)?t(a):n(a)}}const Ywe={name:"hardBreakEscape",tokenize:Jwe};function Jwe(e,t,n){return i;function i(s){return e.enter("hardBreakEscape"),e.consume(s),o}function o(s){return Ci(s)?(e.exit("hardBreakEscape"),t(s)):n(s)}}const Xwe={name:"headingAtx",resolve:e7e,tokenize:t7e};function e7e(e,t){let n=e.length-2,i=3,o,s;return e[i][1].type==="whitespace"&&(i+=2),n-2>i&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(i===n-1||n-4>i&&e[n-2][1].type==="whitespace")&&(n-=i+1===n?2:4),n>i&&(o={type:"atxHeadingText",start:e[i][1].start,end:e[n][1].end},s={type:"chunkText",start:e[i][1].start,end:e[n][1].end,contentType:"text"},sf(e,i,n-i+1,[["enter",o,t],["enter",s,t],["exit",s,t],["exit",o,t]])),e}function t7e(e,t,n){let i=0;return o;function o(u){return e.enter("atxHeading"),s(u)}function s(u){return e.enter("atxHeadingSequence"),r(u)}function r(u){return u===35&&i++<6?(e.consume(u),r):u===null||Kl(u)?(e.exit("atxHeadingSequence"),a(u)):n(u)}function a(u){return u===35?(e.enter("atxHeadingSequence"),l(u)):u===null||Ci(u)?(e.exit("atxHeading"),t(u)):Co(u)?gs(e,a,"whitespace")(u):(e.enter("atxHeadingText"),c(u))}function l(u){return u===35?(e.consume(u),l):(e.exit("atxHeadingSequence"),a(u))}function c(u){return u===null||u===35||Kl(u)?(e.exit("atxHeadingText"),a(u)):(e.consume(u),c)}}const n7e=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Gz=["pre","script","style","textarea"],i7e={concrete:!0,name:"htmlFlow",resolveTo:r7e,tokenize:a7e},o7e={partial:!0,tokenize:c7e},s7e={partial:!0,tokenize:l7e};function r7e(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function a7e(e,t,n){const i=this;let o,s,r,a,l;return c;function c(K){return u(K)}function u(K){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(K),d}function d(K){return K===33?(e.consume(K),f):K===47?(e.consume(K),s=!0,g):K===63?(e.consume(K),o=3,i.interrupt?t:$):Wd(K)?(e.consume(K),r=String.fromCharCode(K),y):n(K)}function f(K){return K===45?(e.consume(K),o=2,h):K===91?(e.consume(K),o=5,a=0,m):Wd(K)?(e.consume(K),o=4,i.interrupt?t:$):n(K)}function h(K){return K===45?(e.consume(K),i.interrupt?t:$):n(K)}function m(K){const te="CDATA[";return K===te.charCodeAt(a++)?(e.consume(K),a===te.length?i.interrupt?t:P:m):n(K)}function g(K){return Wd(K)?(e.consume(K),r=String.fromCharCode(K),y):n(K)}function y(K){if(K===null||K===47||K===62||Kl(K)){const te=K===47,J=r.toLowerCase();return!te&&!s&&Gz.includes(J)?(o=1,i.interrupt?t(K):P(K)):n7e.includes(r.toLowerCase())?(o=6,te?(e.consume(K),v):i.interrupt?t(K):P(K)):(o=7,i.interrupt&&!i.parser.lazy[i.now().line]?n(K):s?k(K):C(K))}return K===45||Gu(K)?(e.consume(K),r+=String.fromCharCode(K),y):n(K)}function v(K){return K===62?(e.consume(K),i.interrupt?t:P):n(K)}function k(K){return Co(K)?(e.consume(K),k):E(K)}function C(K){return K===47?(e.consume(K),E):K===58||K===95||Wd(K)?(e.consume(K),w):Co(K)?(e.consume(K),C):E(K)}function w(K){return K===45||K===46||K===58||K===95||Gu(K)?(e.consume(K),w):S(K)}function S(K){return K===61?(e.consume(K),x):Co(K)?(e.consume(K),S):C(K)}function x(K){return K===null||K===60||K===61||K===62||K===96?n(K):K===34||K===39?(e.consume(K),l=K,M):Co(K)?(e.consume(K),x):I(K)}function M(K){return K===l?(e.consume(K),l=null,T):K===null||Ci(K)?n(K):(e.consume(K),M)}function I(K){return K===null||K===34||K===39||K===47||K===60||K===61||K===62||K===96||Kl(K)?S(K):(e.consume(K),I)}function T(K){return K===47||K===62||Co(K)?C(K):n(K)}function E(K){return K===62?(e.consume(K),L):n(K)}function L(K){return K===null||Ci(K)?P(K):Co(K)?(e.consume(K),L):n(K)}function P(K){return K===45&&o===2?(e.consume(K),D):K===60&&o===1?(e.consume(K),j):K===62&&o===4?(e.consume(K),W):K===63&&o===3?(e.consume(K),$):K===93&&o===5?(e.consume(K),z):Ci(K)&&(o===6||o===7)?(e.exit("htmlFlowData"),e.check(o7e,G,B)(K)):K===null||Ci(K)?(e.exit("htmlFlowData"),B(K)):(e.consume(K),P)}function B(K){return e.check(s7e,V,G)(K)}function V(K){return e.enter("lineEnding"),e.consume(K),e.exit("lineEnding"),N}function N(K){return K===null||Ci(K)?B(K):(e.enter("htmlFlowData"),P(K))}function D(K){return K===45?(e.consume(K),$):P(K)}function j(K){return K===47?(e.consume(K),r="",F):P(K)}function F(K){if(K===62){const te=r.toLowerCase();return Gz.includes(te)?(e.consume(K),W):P(K)}return Wd(K)&&r.length<8?(e.consume(K),r+=String.fromCharCode(K),F):P(K)}function z(K){return K===93?(e.consume(K),$):P(K)}function $(K){return K===62?(e.consume(K),W):K===45&&o===2?(e.consume(K),$):P(K)}function W(K){return K===null||Ci(K)?(e.exit("htmlFlowData"),G(K)):(e.consume(K),W)}function G(K){return e.exit("htmlFlow"),t(K)}}function l7e(e,t,n){const i=this;return o;function o(r){return Ci(r)?(e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),s):n(r)}function s(r){return i.parser.lazy[i.now().line]?n(r):t(r)}}function c7e(e,t,n){return i;function i(o){return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),e.attempt(yC,t,n)}}const u7e={name:"htmlText",tokenize:d7e};function d7e(e,t,n){const i=this;let o,s,r;return a;function a($){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume($),l}function l($){return $===33?(e.consume($),c):$===47?(e.consume($),S):$===63?(e.consume($),C):Wd($)?(e.consume($),I):n($)}function c($){return $===45?(e.consume($),u):$===91?(e.consume($),s=0,m):Wd($)?(e.consume($),k):n($)}function u($){return $===45?(e.consume($),h):n($)}function d($){return $===null?n($):$===45?(e.consume($),f):Ci($)?(r=d,j($)):(e.consume($),d)}function f($){return $===45?(e.consume($),h):d($)}function h($){return $===62?D($):$===45?f($):d($)}function m($){const W="CDATA[";return $===W.charCodeAt(s++)?(e.consume($),s===W.length?g:m):n($)}function g($){return $===null?n($):$===93?(e.consume($),y):Ci($)?(r=g,j($)):(e.consume($),g)}function y($){return $===93?(e.consume($),v):g($)}function v($){return $===62?D($):$===93?(e.consume($),v):g($)}function k($){return $===null||$===62?D($):Ci($)?(r=k,j($)):(e.consume($),k)}function C($){return $===null?n($):$===63?(e.consume($),w):Ci($)?(r=C,j($)):(e.consume($),C)}function w($){return $===62?D($):C($)}function S($){return Wd($)?(e.consume($),x):n($)}function x($){return $===45||Gu($)?(e.consume($),x):M($)}function M($){return Ci($)?(r=M,j($)):Co($)?(e.consume($),M):D($)}function I($){return $===45||Gu($)?(e.consume($),I):$===47||$===62||Kl($)?T($):n($)}function T($){return $===47?(e.consume($),D):$===58||$===95||Wd($)?(e.consume($),E):Ci($)?(r=T,j($)):Co($)?(e.consume($),T):D($)}function E($){return $===45||$===46||$===58||$===95||Gu($)?(e.consume($),E):L($)}function L($){return $===61?(e.consume($),P):Ci($)?(r=L,j($)):Co($)?(e.consume($),L):T($)}function P($){return $===null||$===60||$===61||$===62||$===96?n($):$===34||$===39?(e.consume($),o=$,B):Ci($)?(r=P,j($)):Co($)?(e.consume($),P):(e.consume($),V)}function B($){return $===o?(e.consume($),o=void 0,N):$===null?n($):Ci($)?(r=B,j($)):(e.consume($),B)}function V($){return $===null||$===34||$===39||$===60||$===61||$===96?n($):$===47||$===62||Kl($)?T($):(e.consume($),V)}function N($){return $===47||$===62||Kl($)?T($):n($)}function D($){return $===62?(e.consume($),e.exit("htmlTextData"),e.exit("htmlText"),t):n($)}function j($){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume($),e.exit("lineEnding"),F}function F($){return Co($)?gs(e,z,"linePrefix",i.parser.constructs.disable.null.includes("codeIndented")?void 0:4)($):z($)}function z($){return e.enter("htmlTextData"),r($)}}const tP={name:"labelEnd",resolveAll:m7e,resolveTo:g7e,tokenize:v7e},f7e={tokenize:y7e},h7e={tokenize:b7e},p7e={tokenize:k7e};function m7e(e){let t=-1;const n=[];for(;++t=3&&(c===null||Ci(c))?(e.exit("thematicBreak"),t(c)):n(c)}function l(c){return c===o?(e.consume(c),i++,l):(e.exit("thematicBreakSequence"),Co(c)?gs(e,a,"whitespace")(c):a(c))}}const Nl={continuation:{tokenize:E7e},exit:R7e,name:"list",tokenize:M7e},I7e={partial:!0,tokenize:P7e},T7e={partial:!0,tokenize:L7e};function M7e(e,t,n){const i=this,o=i.events[i.events.length-1];let s=o&&o[1].type==="linePrefix"?o[2].sliceSerialize(o[1],!0).length:0,r=0;return a;function a(h){const m=i.containerState.type||(h===42||h===43||h===45?"listUnordered":"listOrdered");if(m==="listUnordered"?!i.containerState.marker||h===i.containerState.marker:ZT(h)){if(i.containerState.type||(i.containerState.type=m,e.enter(m,{_container:!0})),m==="listUnordered")return e.enter("listItemPrefix"),h===42||h===45?e.check(nk,n,c)(h):c(h);if(!i.interrupt||h===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),l(h)}return n(h)}function l(h){return ZT(h)&&++r<10?(e.consume(h),l):(!i.interrupt||r<2)&&(i.containerState.marker?h===i.containerState.marker:h===41||h===46)?(e.exit("listItemValue"),c(h)):n(h)}function c(h){return e.enter("listItemMarker"),e.consume(h),e.exit("listItemMarker"),i.containerState.marker=i.containerState.marker||h,e.check(yC,i.interrupt?n:u,e.attempt(I7e,f,d))}function u(h){return i.containerState.initialBlankLine=!0,s++,f(h)}function d(h){return Co(h)?(e.enter("listItemPrefixWhitespace"),e.consume(h),e.exit("listItemPrefixWhitespace"),f):n(h)}function f(h){return i.containerState.size=s+i.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(h)}}function E7e(e,t,n){const i=this;return i.containerState._closeFlow=void 0,e.check(yC,o,s);function o(a){return i.containerState.furtherBlankLines=i.containerState.furtherBlankLines||i.containerState.initialBlankLine,gs(e,t,"listItemIndent",i.containerState.size+1)(a)}function s(a){return i.containerState.furtherBlankLines||!Co(a)?(i.containerState.furtherBlankLines=void 0,i.containerState.initialBlankLine=void 0,r(a)):(i.containerState.furtherBlankLines=void 0,i.containerState.initialBlankLine=void 0,e.attempt(T7e,t,r)(a))}function r(a){return i.containerState._closeFlow=!0,i.interrupt=void 0,gs(e,e.attempt(Nl,t,n),"linePrefix",i.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(a)}}function L7e(e,t,n){const i=this;return gs(e,o,"listItemIndent",i.containerState.size+1);function o(s){const r=i.events[i.events.length-1];return r&&r[1].type==="listItemIndent"&&r[2].sliceSerialize(r[1],!0).length===i.containerState.size?t(s):n(s)}}function R7e(e){e.exit(this.containerState.type)}function P7e(e,t,n){const i=this;return gs(e,o,"listItemPrefixWhitespace",i.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function o(s){const r=i.events[i.events.length-1];return!Co(s)&&r&&r[1].type==="listItemPrefixWhitespace"?t(s):n(s)}}const Qz={name:"setextUnderline",resolveTo:$7e,tokenize:O7e};function $7e(e,t){let n=e.length,i,o,s;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){i=n;break}e[n][1].type==="paragraph"&&(o=n)}else e[n][1].type==="content"&&e.splice(n,1),!s&&e[n][1].type==="definition"&&(s=n);const r={type:"setextHeading",start:{...e[i][1].start},end:{...e[e.length-1][1].end}};return e[o][1].type="setextHeadingText",s?(e.splice(o,0,["enter",r,t]),e.splice(s+1,0,["exit",e[i][1],t]),e[i][1].end={...e[s][1].end}):e[i][1]=r,e.push(["exit",r,t]),e}function O7e(e,t,n){const i=this;let o;return s;function s(c){let u=i.events.length,d;for(;u--;)if(i.events[u][1].type!=="lineEnding"&&i.events[u][1].type!=="linePrefix"&&i.events[u][1].type!=="content"){d=i.events[u][1].type==="paragraph";break}return!i.parser.lazy[i.now().line]&&(i.interrupt||d)?(e.enter("setextHeadingLine"),o=c,r(c)):n(c)}function r(c){return e.enter("setextHeadingLineSequence"),a(c)}function a(c){return c===o?(e.consume(c),a):(e.exit("setextHeadingLineSequence"),Co(c)?gs(e,l,"lineSuffix")(c):l(c))}function l(c){return c===null||Ci(c)?(e.exit("setextHeadingLine"),t(c)):n(c)}}const F7e={tokenize:D7e};function D7e(e){const t=this,n=e.attempt(yC,i,e.attempt(this.parser.constructs.flowInitial,o,gs(e,e.attempt(this.parser.constructs.flow,o,e.attempt(jwe,o)),"linePrefix")));return n;function i(s){if(s===null){e.consume(s);return}return e.enter("lineEndingBlank"),e.consume(s),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function o(s){if(s===null){e.consume(s);return}return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const N7e={resolveAll:Lee()},B7e=Eee("string"),z7e=Eee("text");function Eee(e){return{resolveAll:Lee(e==="text"?H7e:void 0),tokenize:t};function t(n){const i=this,o=this.parser.constructs[e],s=n.attempt(o,r,a);return r;function r(u){return c(u)?s(u):a(u)}function a(u){if(u===null){n.consume(u);return}return n.enter("data"),n.consume(u),l}function l(u){return c(u)?(n.exit("data"),s(u)):(n.consume(u),l)}function c(u){if(u===null)return!0;const d=o[u];let f=-1;if(d)for(;++f-1){const a=r[0];typeof a=="string"?r[0]=a.slice(i):r.shift()}s>0&&r.push(e[o].slice(0,s))}return r}function eCe(e,t){let n=-1;const i=[];let o;for(;++n=t&&e<=n}function Og(e,t){return e===void 0||T1(e,t)}function Pee(e){return!qd(e)||!pc(e.x,-1e6)||!pc(e.y,-1e6)||!pc(e.width,.01)||!pc(e.height,.01)?null:{x:e.x,y:e.y,width:e.width,height:e.height}}function oCe(e){if(!qd(e))return null;const t=Pee(e.bounds);if(t===null)return null;if(e.kind==="region")return{kind:"region",bounds:t};if(e.kind!=="element"||!T1(e.tagName,128)||e.tagName.length===0||!Og(e.role,128)||!Og(e.accessibleName,2e3)||!Og(e.text,4e3))return null;let n;if(e.attributes!==void 0){if(!qd(e.attributes)||Object.keys(e.attributes).length>128)return null;const o=Object.entries(e.attributes);if(o.some(([s,r])=>!/^(id|class|href|target|src|alt|type|name|placeholder|disabled|readonly|data-[a-zA-Z0-9_.:-]+)$/.test(s)||s.length>128||!T1(r,4096))||o.reduce((s,[r,a])=>s+r.length+a.length,0)>32768)return null;n=Object.fromEntries(o)}if(e.attributesTruncated!==void 0&&typeof e.attributesTruncated!="boolean")return null;let i;if(e.locator!==void 0){if(!qd(e.locator)||!Og(e.locator.selector,4096)||!Og(e.locator.xpath,4096))return null;const o=e.locator.framePath;if(o!==void 0&&(!Array.isArray(o)||o.length>16||!o.every(s=>T1(s,4096))))return null;i={xpath:e.locator.xpath,selector:e.locator.selector,framePath:o===void 0?void 0:[...o]}}return{kind:"element",...n===void 0?{}:{attributes:n},...e.attributesTruncated===void 0?{}:{attributesTruncated:e.attributesTruncated},tagName:e.tagName,role:e.role,accessibleName:e.accessibleName,text:e.text,locator:i,bounds:t}}function o3(e){return!qd(e)||!V0(e.id)||!V0(e.captureId)||!Og(e.comment,1e4)||e.includeScreenshot!==void 0&&typeof e.includeScreenshot!="boolean"?null:{id:e.id,captureId:e.captureId,comment:e.comment,includeScreenshot:e.includeScreenshot}}function am(e){if(qd(e)&&e.bindingId!==void 0&&!V0(e.bindingId)||!qd(e)||e.version!==1||!V0(e.id)||!pc(e.ordinal,1)||!Number.isInteger(e.ordinal)||!T1(e.label,256)||e.label.length===0||!T1(e.capturedAt,64)||!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/.test(e.capturedAt)||!Number.isFinite(Date.parse(e.capturedAt))||new Date(e.capturedAt).toISOString()!==e.capturedAt||!qd(e.page)||!T1(e.page.url,32768)||!T1(e.page.title,1024))return null;try{if(!["http:","https:"].includes(new URL(e.page.url).protocol))return null}catch{return null}const t=oCe(e.target),n=e.viewport;if(t===null||!qd(n)||!pc(n.width,1)||!pc(n.height,1)||!pc(n.scrollX,-1e6)||!pc(n.scrollY,-1e6)||!pc(n.zoomFactor,.01,64)||!pc(n.devicePixelRatio,.01,64))return null;let i;if(e.screenshot!==void 0){const o=e.screenshot;if(!qd(o)||!V0(o.attachmentId)||!pc(o.pixelWidth,1,32768)||!pc(o.pixelHeight,1,32768)||!Number.isInteger(o.pixelWidth)||!Number.isInteger(o.pixelHeight))return null;const s=Pee(o.crop);if(s===null||s.x<0||s.y<0||s.x+s.width>n.width+1||s.y+s.height>n.height+1)return null;i={attachmentId:o.attachmentId,crop:s,pixelWidth:o.pixelWidth,pixelHeight:o.pixelHeight}}return{version:1,id:e.id,...e.bindingId===void 0?{}:{bindingId:e.bindingId},ordinal:e.ordinal,label:e.label,capturedAt:e.capturedAt,page:{url:e.page.url,title:e.page.title},target:t,viewport:{width:n.width,height:n.height,scrollX:n.scrollX,scrollY:n.scrollY,zoomFactor:n.zoomFactor,devicePixelRatio:n.devicePixelRatio},screenshot:i}}const sCe={extensions:[{disable:{null:["attention","autolink","blockQuote","characterReference","codeFenced","codeIndented","codeText","definition","hardBreakEscape","headingAtx","htmlFlow","htmlText","list","setextUnderline","thematicBreak"]}}]};function nP(e){if(e.includes(` +`)){const l=[];let c=0;for(const u of e.split(` +`)){for(const d of nP(u))l.push({...d,start:d.start+c,end:d.end+c});c+=u.length+1}return l}const t=nCe(tCe(sCe).document().write(iCe()(e,void 0,!0))),n=[];let i=null,o=!1,s=!1,r=null,a=0;for(const[l,c]of t){if(c.type==="image"){a+=l==="enter"?1:-1;continue}if(l==="enter"){c.type==="label"?i={start:c.start.offset,end:c.end.offset}:c.type==="resource"&&i!==null&&c.start.offset===i.end?(o=!0,s=!1,r=null):c.type==="resourceTitle"&&o?s=!0:c.type==="resourceDestination"&&o&&(r={start:c.start.offset,end:c.end.offset});continue}if(c.type!=="resource"||!o||i===null)continue;o=!1;const{start:u,end:d}=i;i=null;const f=c.end.offset,h=a>0;if(s||e[u]!==(h?"!":"[")||r===null)continue;const m=e.slice(u+(h?2:1),d-1);let g=e.slice(r.start,r.end),y=!1;g.startsWith("<")&&(y=!0,g=g.slice(1,-1)),!(!m||!g)&&n.push({start:u,end:f,rawText:m,rawDest:g,angle:y,image:h})}return n}function $ee(e,t){const{start:n,end:i,rawText:o,rawDest:s,angle:r,image:a}=e;if(a&&!s.startsWith(Yf))return null;if(s.startsWith(UT)){const c=s.slice(UT.length);return V0(c)?{type:"browser-reference",start:n,end:i,attrs:{refId:c,label:BS(o)},rawDest:s}:null}if(s.startsWith(B4)&&s.length>B4.length){const c=BS(o),u=s.slice(B4.length);return{type:"attachment",start:n,end:i,attrs:{attId:u,name:c,kind:t?.(u)??(c.endsWith("/")?"folder":"file")},rawDest:s}}if(s.startsWith(Yf)&&s.length>Yf.length)return{type:"quote",start:n,end:i,attrs:Cee(s.slice(Yf.length)),rawDest:s};const l=QR(s);return l===null?null:l==="skill"?{type:"mention",start:n,end:i,attrs:{kind:l,name:wee(s),path:""},rawDest:s}:{type:"mention",start:n,end:i,attrs:{kind:l,name:BS(o),path:swe(s,r)},rawDest:s}}function rCe(e){const t=[];if(!e.includes(Yf))return t;const n=new Int32Array(e.length+1).fill(-1);for(let s=e.length-1;s>=0;s-=1){const r=e[s];r==="]"?n[s]=s:r==="\\"?s+1i.start-o.start),n}function tp(e){return ab(e).filter(t=>t.type==="mention").map(({start:t,end:n,attrs:i,rawDest:o})=>({start:t,end:n,attrs:i,rawDest:o}))}function pu(e){return ab(e).map(t=>Oee(t)??t).filter(t=>t.type==="attachment").map(({start:t,end:n,attrs:i,rawDest:o})=>({start:t,end:n,attrs:i,rawDest:o}))}function Oee(e,t){if(e.type!=="quote"||e.attrs.source||!e.attrs.text.includes(B4))return null;const n=nP(e.attrs.text),i=n[0];if(n.length!==1||!i||i.start!==0||i.end!==e.attrs.text.length)return null;const o=$ee(i,t);return o?.type!=="attachment"?null:{...o,start:e.start,end:e.end,attrs:{...o.attrs,...e.attrs.comment?{comment:e.attrs.comment}:{}}}}function Fee(e){return ab(e).filter(t=>t.type==="quote").map(({start:t,end:n,attrs:i,rawDest:o})=>({start:t,end:n,attrs:i,rawDest:o}))}function Dee(e){return ab(e).flatMap(t=>t.type==="browser-reference"?[{start:t.start,end:t.end,attrs:t.attrs}]:[])}function QT(e,t){const n=ab(e,t);if(n.length===0)return[{type:"text",value:e}];const i=[];let o=0;for(const s of n){const r=Oee(s,t)??s;r.start>o&&i.push({type:"text",value:e.slice(o,r.start)}),r.type==="mention"?i.push({type:"mention",attrs:r.attrs,rawDest:r.rawDest}):r.type==="browser-reference"?i.push({type:"browser-reference",attrs:r.attrs,rawDest:r.rawDest}):r.type==="attachment"?i.push({type:"attachment",attrs:r.attrs,rawDest:r.rawDest}):i.push({type:"quote",attrs:r.attrs,rawDest:r.rawDest}),o=r.end}return o[l,c+1])),s=new Map(t.mediaAttIds.map((l,c)=>[l,c+1]));let r="",a=0;for(const l of i){r+=e.slice(a,l.start),a=l.end;const{attId:c,name:u,kind:d}=l.attrs,f=d==="folder"?n?.resolveFolder?.(c):void 0;if(f!==void 0){const y=f==="/"||/^[a-zA-Z]:\/$/.test(f)?f.slice(0,-1)||"/":u.endsWith("/")?u.slice(0,-1):u;r+=Av({kind:"folder",name:y,path:f});continue}const h=o.get(c);if(h!==void 0){r+=Z2({...l.attrs,attId:String(h)});continue}const m=s.get(c);if(m!==void 0){const g=n?.resolveMediaName?.(c,m)??u;r+=Z2({...l.attrs,attId:`m${m}`,name:g});continue}r+=u+(l.attrs.comment?` +${l.attrs.comment}`:"")}return r+=e.slice(a),r}function Jz(e,t,n=0){if(t<=0&&n<=0)return e;const i=pu(e);if(i.length===0)return e;let o="",s=0;for(const r of i){const{attId:a,name:l}=r.attrs;let c,u=l;if(t>0&&/^[1-9]\d*$/.test(a))c=String(Number(a)+t);else if(n>0&&/^m[1-9]\d*$/.test(a)){const d=Number(a.slice(1)),f=d+n;c=`m${f}`;const h=` ${d}`;l.endsWith(h)&&(u=`${l.slice(0,-h.length)} ${f}`)}c!==void 0&&(o+=e.slice(s,r.start),s=r.end,o+=Z2({...r.attrs,attId:c,name:u}))}return o+=e.slice(s),o}function M1(e,t){const n=pu(e);if(n.length===0)return e;let i="",o=0;for(const s of n){const r=s.attrs.name+(s.attrs.comment?` +${s.attrs.comment}`:"");i+=e.slice(o,s.start)+(t?.(r)??r),o=s.end}return i+=e.slice(o),i}function YT(e,t){const n=pu(e);if(n.length===0)return e;let i="",o=0;for(const s of n)t.has(s.attrs.attId)||(i+=e.slice(o,s.start)+s.attrs.name+(s.attrs.comment?` +${s.attrs.comment}`:""),o=s.end);return i+=e.slice(o),i}function Nee(e){return e.includes("](")?pu(e).map(t=>({start:t.start,end:t.end,text:t.attrs.comment?`${t.attrs.name} +${t.attrs.comment}`:""})):[]}function JT(e){const t=Nee(e);return t.length===0?e:NR(e,t).text}function Y6(e){const t=mX(e),n=t[0].end,i=Nee(e.slice(n,t[1].start));return NR(e,[...t,...i.map(o=>({start:o.start+n,end:o.end+n,text:o.text}))])}let lCe=!0;const cCe=/^> (.*)$/,uCe=/^>$/;function Bee(e){return e.replaceAll("%","%25").replaceAll(` +`,"%0A").replaceAll("\r","%0D")}function dCe(e){return e.replaceAll("%0A",` +`).replaceAll("%0D","\r").replaceAll("%25","%")}const fCe=/^from: (.+)$/;function hCe(e){let t=e,n;const i=e.indexOf(` +`),o=fCe.exec(i===-1?e:e.slice(0,i));o!==null&&(n=dCe(o[1]),t=i===-1?"":e.slice(i+1));const s=[];for(const r of t.split(` +`)){const a=cCe.exec(r);if(a!==null){s.push(a[1]??"");continue}if(uCe.test(r)){s.push("");continue}return null}return{text:s.join(` +`),...n!==void 0?{source:n}:{}}}function iP(e){const t=[];for(const i of e.split(/(\n{2,})/)){if(i==="")continue;if(/^\n{2,}$/.test(i)){t.push({type:"sep",text:i});continue}const o=hCe(i);t.push(o===null?{type:"inline",text:i}:{type:"quote",text:o.text,...o.source!==void 0?{source:o.source}:{}})}const n=[];for(let i=0;i`> ${t}`).join(` +`)}function zee(e){const t=iP(e),n=new Set;return t.forEach((i,o)=>{i.type==="sep"&&i.text===` + +`&&t[o-1]?.type==="quote"&&t[o+1]?.type==="quote"&&n.add(o)}),t.map((i,o)=>{if(n.has(o))return" ";if(i.type!=="quote")return i.text;const s={text:i.text};return i.source!==void 0&&(s.source=i.source),i.comment!==void 0&&(s.comment=i.comment),vC(s)}).join("")}const Gn=new C6e({nodes:{doc:{content:"block+"},paragraph:{group:"block",content:"inline*",toDOM:()=>["p",0],parseDOM:[{tag:"p"}]},text:{group:"inline"},browser_reference:{group:"inline",inline:!0,atom:!0,selectable:!0,attrs:{refId:{},label:{}},leafText:e=>JR(e.attrs),toDOM:e=>["span",{class:"browser-reference-pill","data-browser-ref-id":e.attrs.refId},e.attrs.label]},mention:{group:"inline",inline:!0,atom:!0,selectable:!0,attrs:{kind:{},name:{},path:{default:""}},leafText:e=>Av(e.attrs),toDOM:e=>{const t=e.attrs;return["span",{class:`mention-pill mention-${t.kind}`,"data-mention-path":t.path},t.name]}},attachment:{group:"inline",inline:!0,atom:!0,selectable:!0,attrs:{attId:{},name:{},kind:{},comment:{default:void 0}},leafText:e=>Z2(e.attrs),toDOM:e=>{const t=e.attrs;return["span",{class:`attachment-pill attachment-${t.kind}`,"data-attachment-id":t.attId,"data-attachment-kind":t.kind,"data-attachment-name":t.name,"data-attachment-comment":t.comment},t.name+(t.comment?` +${t.comment}`:"")]}},quote:{group:"inline",inline:!0,atom:!0,selectable:!0,attrs:{text:{},comment:{default:""},source:{default:""}},leafText:e=>vC(e.attrs),toDOM:e=>{const t=e.attrs,n={class:"quote-pill","data-quote-text":t.text};return typeof t.comment=="string"&&t.comment.length>0&&(n["data-quote-comment"]=t.comment),typeof t.source=="string"&&t.source.length>0&&(n["data-quote-source"]=t.source),["span",n,D1(t.text)]}}}});function oP(e){return Gn.nodes.mention.create(e)}function sP(e){return Gn.nodes.attachment.create(e)}function rP(e){return Gn.nodes.quote.create(e)}function aP(e){return Gn.nodes.browser_reference.create(e)}function gCe(e,t){return e?QT(e,t).map(n=>n.type==="mention"?oP(n.attrs):n.type==="attachment"?sP(n.attrs):n.type==="quote"?rP(n.attrs):n.type==="browser-reference"?aP(n.attrs):Gn.text(n.value)):[]}function G2(e,t){const n=e.split(` +`);return Gn.node("doc",null,n.map(i=>i?Gn.node("paragraph",null,t?.reviveMentions?gCe(i,t?.attachmentKindFor):Gn.text(i)):Gn.node("paragraph")))}function Aa(e){return e.textBetween(0,e.content.size,` +`)}function H4(e){return e.isText?e.text.length:e.type===Gn.nodes.browser_reference?JR(e.attrs).length:e.type===Gn.nodes.attachment?Z2(e.attrs).length:e.type===Gn.nodes.quote?vC(e.attrs).length:Av(e.attrs).length}function vCe(e,t){if(!t.parent.isTextblock)return Gd(e,t.pos);if(t.textOffset>0)return Gd(e,t.pos-t.textOffset);const n=t.nodeBefore;return n&&n.isText?Gd(e,t.pos-n.nodeSize):Gd(e,t.pos)}function gl(e,t){let n=Math.max(0,t),i=-1;return e.forEach((o,s)=>{if(i!==-1)return;let r=0;if(o.forEach(a=>{r+=H4(a)}),n>r){n-=r+1;return}o.forEach((a,l)=>{if(i!==-1)return;const c=s+1+l,u=H4(a);if(n<=u){a.isText?i=c+n:i=n===0?c:c+1;return}n-=u}),i===-1&&(i=s+1+o.content.size)}),i===-1?e.content.size-1:i}function Gd(e,t){let n=0,i=-1;return e.forEach((o,s)=>{if(i!==-1)return;const r=s+o.nodeSize;if(t>r){o.forEach(l=>{n+=H4(l)}),n+=1;return}let a=0;o.forEach((l,c)=>{if(i!==-1)return;const u=s+1+c;if(l.isText){const d=u+l.nodeSize;if(t<=d){i=n+a+Math.max(0,t-u);return}a+=l.text.length}else{const d=u+1;if(t<=d){i=n+a+(t<=u?0:H4(l));return}a+=H4(l)}}),i===-1&&(i=n+a)}),i===-1?n:i}function yCe(e){const t=[];return e.forEach(n=>{n.forEach(i=>{!i.isText&&i.type===Gn.nodes.mention&&i.attrs.kind==="skill"&&t.push({name:i.attrs.name})})}),t}function Xz(e){return(t,n)=>{const i=t.selection.$head,o=e?i.start():i.end();return n&&n(t.tr.setSelection(Li.create(t.doc,t.selection.$anchor.pos,o)).scrollIntoView()),!0}}var J6=200,la=function(){};la.prototype.append=function(t){return t.length?(t=la.from(t),!this.length&&t||t.length=n?la.empty:this.sliceInner(Math.max(0,t),Math.min(this.length,n))};la.prototype.get=function(t){if(!(t<0||t>=this.length))return this.getInner(t)};la.prototype.forEach=function(t,n,i){n===void 0&&(n=0),i===void 0&&(i=this.length),n<=i?this.forEachInner(t,n,i,0):this.forEachInvertedInner(t,n,i,0)};la.prototype.map=function(t,n,i){n===void 0&&(n=0),i===void 0&&(i=this.length);var o=[];return this.forEach(function(s,r){return o.push(t(s,r))},n,i),o};la.from=function(t){return t instanceof la?t:t&&t.length?new Hee(t):la.empty};var Hee=(function(e){function t(i){e.call(this),this.values=i}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={length:{configurable:!0},depth:{configurable:!0}};return t.prototype.flatten=function(){return this.values},t.prototype.sliceInner=function(o,s){return o==0&&s==this.length?this:new t(this.values.slice(o,s))},t.prototype.getInner=function(o){return this.values[o]},t.prototype.forEachInner=function(o,s,r,a){for(var l=s;l=r;l--)if(o(this.values[l],a+l)===!1)return!1},t.prototype.leafAppend=function(o){if(this.length+o.length<=J6)return new t(this.values.concat(o.flatten()))},t.prototype.leafPrepend=function(o){if(this.length+o.length<=J6)return new t(o.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(t.prototype,n),t})(la);la.empty=new Hee([]);var bCe=(function(e){function t(n,i){e.call(this),this.left=n,this.right=i,this.length=n.length+i.length,this.depth=Math.max(n.depth,i.depth)+1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},t.prototype.getInner=function(i){return ia&&this.right.forEachInner(i,Math.max(o-a,0),Math.min(this.length,s)-a,r+a)===!1)return!1},t.prototype.forEachInvertedInner=function(i,o,s,r){var a=this.left.length;if(o>a&&this.right.forEachInvertedInner(i,o-a,Math.max(s,a)-a,r+a)===!1||s=s?this.right.slice(i-s,o-s):this.left.slice(i,s).append(this.right.slice(0,o-s))},t.prototype.leafAppend=function(i){var o=this.right.leafAppend(i);if(o)return new t(this.left,o)},t.prototype.leafPrepend=function(i){var o=this.left.leafPrepend(i);if(o)return new t(o,this.right)},t.prototype.appendInner=function(i){return this.left.depth>=Math.max(this.right.depth,i.depth)+1?new t(this.left,new t(this.right,i)):new t(this,i)},t})(la);const kCe=500;class Ku{constructor(t,n){this.items=t,this.eventCount=n}popEvent(t,n){if(this.eventCount==0)return null;let i=this.items.length;for(;;i--)if(this.items.get(i-1).selection){--i;break}let o,s;n&&(o=this.remapping(i,this.items.length),s=o.maps.length);let r=t.tr,a,l,c=[],u=[];return this.items.forEach((d,f)=>{if(!d.step){o||(o=this.remapping(i,f+1),s=o.maps.length),s--,u.push(d);return}if(o){u.push(new Nd(d.map));let h=d.step.map(o.slice(s)),m;h&&r.maybeStep(h).doc&&(m=r.mapping.maps[r.mapping.maps.length-1],c.push(new Nd(m,void 0,void 0,c.length+u.length))),s--,m&&o.appendMap(m,s)}else r.maybeStep(d.step);if(d.selection)return a=o?d.selection.map(o.slice(s)):d.selection,l=new Ku(this.items.slice(0,i).append(u.reverse().concat(c)),this.eventCount-1),!1},this.items.length,0),{remaining:l,transform:r,selection:a}}addTransform(t,n,i,o){let s=[],r=this.eventCount,a=this.items,l=!o&&a.length?a.get(a.length-1):null;for(let u=0;uCCe&&(a=wCe(a,c),r-=c),new Ku(a.append(s),r)}remapping(t,n){let i=new n3;return this.items.forEach((o,s)=>{let r=o.mirrorOffset!=null&&s-o.mirrorOffset>=t?i.maps.length-o.mirrorOffset:void 0;i.appendMap(o.map,r)},t,n),i}addMaps(t){return this.eventCount==0?this:new Ku(this.items.append(t.map(n=>new Nd(n))),this.eventCount)}rebased(t,n){if(!this.eventCount)return this;let i=[],o=Math.max(0,this.items.length-n),s=t.mapping,r=t.steps.length,a=this.eventCount;this.items.forEach(f=>{f.selection&&a--},o);let l=n;this.items.forEach(f=>{let h=s.getMirror(--l);if(h==null)return;r=Math.min(r,h);let m=s.maps[h];if(f.step){let g=t.steps[h].invert(t.docs[h]),y=f.selection&&f.selection.map(s.slice(l+1,h));y&&a++,i.push(new Nd(m,g,y))}else i.push(new Nd(m))},o);let c=[];for(let f=n;fkCe&&(d=d.compress(this.items.length-i.length)),d}emptyItemCount(){let t=0;return this.items.forEach(n=>{n.step||t++}),t}compress(t=this.items.length){let n=this.remapping(0,t),i=n.maps.length,o=[],s=0;return this.items.forEach((r,a)=>{if(a>=t)o.push(r),r.selection&&s++;else if(r.step){let l=r.step.map(n.slice(i)),c=l&&l.getMap();if(i--,c&&n.appendMap(c,i),l){let u=r.selection&&r.selection.map(n.slice(i));u&&s++;let d=new Nd(c.invert(),l,u),f,h=o.length-1;(f=o.length&&o[h].merge(d))?o[h]=f:o.push(d)}}else r.map&&i--},this.items.length,0),new Ku(la.from(o.reverse()),s)}}Ku.empty=new Ku(la.empty,0);function wCe(e,t){let n;return e.forEach((i,o)=>{if(i.selection&&t--==0)return n=o,!1}),e.slice(n)}class Nd{constructor(t,n,i,o){this.map=t,this.step=n,this.selection=i,this.mirrorOffset=o}merge(t){if(this.step&&t.step&&!t.selection){let n=t.step.merge(this.step);if(n)return new Nd(n.getMap().invert(),n,this.selection)}}}class l1{constructor(t,n,i,o,s){this.done=t,this.undone=n,this.prevRanges=i,this.prevTime=o,this.prevComposition=s}}const CCe=20;function ACe(e,t,n,i){let o=n.getMeta(U0),s;if(o)return o.historyState;n.getMeta(jee)&&(e=new l1(e.done,e.undone,null,0,-1));let r=n.getMeta("appendedTransaction");if(n.steps.length==0)return e;if(r&&r.getMeta(U0))return r.getMeta(U0).redo?new l1(e.done.addTransform(n,void 0,i,ik(t)),e.undone,eH(n.mapping.maps),e.prevTime,e.prevComposition):new l1(e.done,e.undone.addTransform(n,void 0,i,ik(t)),null,e.prevTime,e.prevComposition);if(n.getMeta("addToHistory")!==!1&&!(r&&r.getMeta("addToHistory")===!1)){let a=n.getMeta("composition"),l=e.prevTime==0||!r&&e.prevComposition!=a&&(e.prevTime<(n.time||0)-i.newGroupDelay||!SCe(n,e.prevRanges)),c=r?jS(e.prevRanges,n.mapping):eH(n.mapping.maps);return new l1(e.done.addTransform(n,l?t.selection.getBookmark():void 0,i,ik(t)),Ku.empty,c,n.time,a??e.prevComposition)}else return(s=n.getMeta("rebased"))?new l1(e.done.rebased(n,s),e.undone.rebased(n,s),jS(e.prevRanges,n.mapping),e.prevTime,e.prevComposition):new l1(e.done.addMaps(n.mapping.maps),e.undone.addMaps(n.mapping.maps),jS(e.prevRanges,n.mapping),e.prevTime,e.prevComposition)}function SCe(e,t){if(!t)return!1;if(!e.docChanged)return!0;let n=!1;return e.mapping.maps[0].forEach((i,o)=>{for(let s=0;s=t[s]&&(n=!0)}),n}function eH(e){let t=[];for(let n=e.length-1;n>=0&&t.length==0;n--)e[n].forEach((i,o,s,r)=>t.push(s,r));return t}function jS(e,t){if(!e)return null;let n=[];for(let i=0;i{let o=U0.getState(n);if(!o||(e?o.undone:o.done).eventCount==0)return!1;if(i){let s=xCe(o,n,e);s&&i(t?s.scrollIntoView():s)}return!0}}const qee=Wee(!1,!0),XT=Wee(!0,!0);function ICe(e,t,n){const i=gl(e.doc,n.start),o=gl(e.doc,n.end),s=Aa(e.doc),r=n.start>0?s.charAt(n.start-1):"",a=s.charAt(n.end),l=[];(r==="!"||r==="\\")&&l.push(Gn.text(" ")),l.push(oP(t)),(a===""||!/\s/.test(a))&&l.push(Gn.text(" "));const c=e.tr.replaceWith(i,o,l);return c.setSelection(Li.create(c.doc,i+l.reduce((u,d)=>u+d.nodeSize,0))),c.scrollIntoView()}function TCe(e,t,n){const i=gl(e.doc,n.start),o=gl(e.doc,n.end),s=e.tr.insertText(t,i,o);return s.setSelection(Li.create(s.doc,i+t.length)),ok(s.scrollIntoView())}function Vee(e,t,n){const i=n?n.start:Gd(e.doc,e.selection.from),o=n?n.end:Gd(e.doc,e.selection.to),s=gl(e.doc,i),r=gl(e.doc,o),a=Aa(e.doc),l=i>0?a.charAt(i-1):"",c=a.charAt(o),u=[];(l==="!"||l==="\\")&&u.push(Gn.text(" ")),u.push(sP(t)),(c===""||!/\s/.test(c))&&u.push(Gn.text(" "));const d=e.tr.replaceWith(s,r,u);return d.setSelection(Li.create(d.doc,s+u.reduce((f,h)=>f+h.nodeSize,0))),d.scrollIntoView()}function MCe(e,t,n,i){const o=i===void 0?void 0:{start:i,end:i};return Vee(e,n.length>0?{...t,comment:n}:t,o)}function ECe(e,t,n){const i=e.selection.to,o=Aa(e.doc),s=Gd(e.doc,i),r=s>0?o.charAt(s-1):"",a=o.charAt(s),l=[];r!==""&&!/\s/.test(r)&&l.push(Gn.text(" ")),l.push(rP(n!==void 0&&n.length>0?{...t,comment:n}:t)),(a===""||!/\s/.test(a))&&l.push(Gn.text(" "));const c=e.tr.replaceWith(i,i,l);return c.setSelection(Li.create(c.doc,i+l.reduce((u,d)=>u+d.nodeSize,0))),c.scrollIntoView()}function R5(e,t){return Nn.maxOpen(G2(e.replace(/\r\n?/g,` +`),t).content)}function nH(e){const t=typeof e.source=="string"&&e.source.length>0?`from: ${Bee(e.source)} +`:"",n=typeof e.comment=="string"&&e.comment.length>0?` + +${e.comment}`:"";return`${t}${mCe(e.text)}${n}`}function Uee(e,t){const n=o=>{if(o.isText)return o.text??"";if(o.type===Gn.nodes.mention)return Av(o.attrs);if(o.type===Gn.nodes.attachment){const s=o.attrs;return s.name+(s.comment?` +${s.comment}`:"")}return o.type===Gn.nodes.quote?nH(o.attrs):o.type===Gn.nodes.browser_reference?t?.(o.attrs.refId,o.attrs.label)??o.attrs.label:o.textBetween(0,o.content.size,"")},i=[];return e.content.forEach(o=>{if(o.type===Gn.nodes.mention||o.type===Gn.nodes.attachment||o.type===Gn.nodes.quote||o.type===Gn.nodes.browser_reference)i.push(n(o));else{let s="",r=!1;o.forEach(a=>{if(a.type===Gn.nodes.quote){const c=nH(a.attrs);s=s.length>0?`${s.replace(/ +$/,"")} + +${c}`:c,r=!0;return}let l=n(a);r&&(l=l.replace(/^ /,""),s+=` + +`,r=!1),s+=l}),i.push(s)}}),i.join(` +`)}const LCe=8*1024*1024,iH=1e5,eM=1e3;function j4(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function RCe(e){if(e.content!==void 0||e.marks!==void 0)return!1;if(e.type==="text")return typeof e.text=="string"&&e.text.length>0&&e.attrs===void 0;if(e.text!==void 0||!j4(e.attrs))return!1;const t=e.attrs;return e.type==="browser_reference"?V0(t.refId)&&typeof t.label=="string"&&t.label.length<=256:e.type==="mention"?(t.kind==="file"||t.kind==="folder"||t.kind==="skill")&&typeof t.name=="string"&&typeof t.path=="string":e.type==="attachment"?(t.kind==="file"||t.kind==="folder"||t.kind==="image"||t.kind==="video")&&typeof t.attId=="string"&&t.attId.length>0&&typeof t.name=="string":e.type==="quote"?typeof t.text=="string"&&(t.source===void 0||typeof t.source=="string")&&(t.comment===void 0||typeof t.comment=="string"):!1}function PCe(e){if(!j4(e)||e.type!=="doc"||!Array.isArray(e.content)||e.content.length===0||e.content.length>iH||e.text!==void 0||e.marks!==void 0)return null;let t=1;for(const n of e.content){if(!j4(n)||n.type!=="paragraph"||n.text!==void 0||n.marks!==void 0)return null;if(n.content!==void 0&&(!Array.isArray(n.content)||(t+=1+n.content.length,t>iH||!n.content.every(i=>j4(i)&&RCe(i)))))return null}try{const n=Gn.nodeFromJSON(e);return n.check(),n}catch{return null}}function ef(e){if(!j4(e)||e.version!==1||!Array.isArray(e.attachments)||!Array.isArray(e.attachmentOrder)||e.attachments.length>eM||e.attachmentOrder.length>eM)return null;try{if(JSON.stringify(e).length>LCe)return null}catch{return null}const t=PCe(e.doc);if(t===null)return null;const n=oH(e.browserReferences,o3),i=oH(e.browserCaptures,am);if(n===null||i===null)return null;const o=[],s=new Set;for(const l of e.attachments){const c=EX(l);if(c===null||s.has(c.attId))return null;s.add(c.attId),o.push(c)}const r=[],a=new Set;for(const l of e.attachmentOrder){if(typeof l!="string"||l.length===0||a.has(l))return null;a.add(l),r.push(l)}return{version:1,doc:t.toJSON(),attachments:o,attachmentOrder:r,...n.length===0?{}:{browserReferences:n},...i.length===0?{}:{browserCaptures:i}}}function oH(e,t){if(e===void 0)return[];if(!Array.isArray(e)||e.length>eM)return null;const n=[],i=new Set;for(const o of e){const s=t(o);if(s===null||i.has(s.id))return null;i.add(s.id),n.push(s)}return n}function bC(e,t,n,i){const o=new Set(n),s=new Set;e.descendants(c=>{c.type===Gn.nodes.attachment&&o.add(c.attrs.attId),c.type===Gn.nodes.browser_reference&&s.add(c.attrs.refId)});const r=i?.references.filter(c=>s.has(c.id))??[],a=new Set(r.map(c=>c.captureId)),l=i?.captures.filter(c=>a.has(c.id))??[];for(const c of l)c.screenshot!==void 0&&o.add(c.screenshot.attachmentId);return{version:1,doc:structuredClone(e.toJSON()),attachments:t.filter(c=>o.has(c.attId)).map(c=>({...sC(c)})),attachmentOrder:[...n],...r.length===0?{}:{browserReferences:structuredClone(r)},...l.length===0?{}:{browserCaptures:structuredClone(l)}}}function $Ce(e,t){if(!e.attachments.some(i=>t.has(i.attId))&&!e.attachmentOrder.some(i=>t.has(i)))return e;const n=[];return Gn.nodeFromJSON(e.doc).forEach(i=>{const o=[];i.forEach(s=>{s.type!==Gn.nodes.attachment||!t.has(s.attrs.attId)?o.push(s):s.attrs.name&&o.push(Gn.text(s.attrs.name))}),n.push(i.type.create(i.attrs,o))}),{...e,doc:Gn.nodes.doc.create(null,n).toJSON(),attachments:e.attachments.filter(i=>!t.has(i.attId)),attachmentOrder:e.attachmentOrder.filter(i=>!t.has(i))}}function Lc(e){return Gn.nodeFromJSON(e.doc)}function Kee(e,t){if(e.length===0)return null;const n=[],i=[],o=[],s=new Set,r=new Set,a=new Set,l=[],c=[];return e.forEach((u,d)=>{const f=structuredClone(u),h=new Map,m=new Set([...f.attachmentOrder,...f.attachments.map(C=>C.attId)]);for(const C of f.browserCaptures??[])C.screenshot!==void 0&&m.add(C.screenshot.attachmentId);Lc(f).descendants(C=>{C.type===Gn.nodes.attachment&&m.add(C.attrs.attId)});for(const C of m){let w=C,S=d;for(;s.has(w);)w=`${C}m${S++}`;s.add(w),h.set(C,w)}const y=new Map,v=new Map,k=(C,w)=>{let S=C,x=d;for(;w.has(S);)S=`${C.slice(0,112)}m${x++}`;return w.add(S),S};for(const C of f.browserCaptures??[]){const w=k(C.id,r);y.set(C.id,w),c.push({...C,id:w,bindingId:Ree(C),screenshot:C.screenshot===void 0?void 0:{...C.screenshot,attachmentId:h.get(C.screenshot.attachmentId)}})}for(const C of f.browserReferences??[]){const w=k(C.id,a);v.set(C.id,w),y.has(C.captureId)||y.set(C.captureId,k(C.captureId,r)),l.push({...C,id:w,captureId:y.get(C.captureId)})}for(const C of f.doc.content??[])for(const w of C.content??[])if(w.type==="attachment"&&w.attrs!==void 0&&(w.attrs.attId=h.get(w.attrs.attId)),w.type==="browser_reference"&&w.attrs!==void 0){const S=w.attrs.refId;v.has(S)||v.set(S,k(S,a)),w.attrs.refId=v.get(S)}d>0&&n.push({type:"paragraph"}),n.push(...f.doc.content??[]),i.push(...f.attachments.map(C=>{const w=h.get(C.attId);return{...C,attId:w,key:C.key===`blob:${C.attId}`?`blob:${w}`:C.key}})),o.push(...f.attachmentOrder.map(C=>h.get(C))),t?.(d,{attachments:h,references:v,captures:y})}),{version:1,doc:{type:"doc",content:n},attachments:i,attachmentOrder:o,...l.length===0?{}:{browserReferences:l},...c.length===0?{}:{browserCaptures:c}}}i6e();const ou=new rb("composerAttachmentInventory"),W4="composerAttachmentInventory";function tM(e,t){return Math.max(0,Math.min(Math.trunc(e),t))}function qS(e){const t=new Map;return e.descendants(n=>{if(n.type!==Gn.nodes.attachment)return!0;const i=n.attrs.attId;return t.set(i,(t.get(i)??0)+1),!1}),t}function OCe(e){const t=new Set;return e.descendants(n=>{if(n.type!==Gn.nodes.attachment)return!0;const i=n.attrs;return(i.kind==="file"||i.kind==="folder")&&t.add(i.attId),!1}),t}function FCe(e,t){if(e.size!==t.size)return!1;for(const[n,i]of e)if(t.get(n)!==i)return!1;return!0}function DCe(e,t){return NT(e,n=>{if(t.type==="activate"){if(n.activeIds.has(t.attId))return;const s=tM(t.index,n.orderedIds.length);n.activeIds.add(t.attId),n.orderedIds.splice(s,0,t.attId);return}if(t.type==="deactivate"){if(!n.activeIds.has(t.attId))return;n.activeIds.delete(t.attId);const s=n.orderedIds.indexOf(t.attId);s!==-1&&n.orderedIds.splice(s,1);return}if(!n.activeIds.has(t.attId))return;const i=n.orderedIds.indexOf(t.attId);if(i===-1)return;const o=tM(t.to,n.orderedIds.length-1);i!==o&&(n.orderedIds.splice(i,1),n.orderedIds.splice(o,0,t.attId))})}class mu extends Br{constructor(t){super(),this.operation=t}apply(t){return ir.ok(t)}getMap(){return ml.empty}invert(){const t=this.operation;return t.type==="activate"?new mu({type:"deactivate",attId:t.attId,index:t.index}):t.type==="deactivate"?new mu({type:"activate",attId:t.attId,index:t.index}):new mu({type:"reorder",attId:t.attId,from:t.to,to:t.from})}map(){return this}toJSON(){return{stepType:W4,operation:this.operation}}static fromJSON(t,n){if(n.operation===void 0)throw new RangeError("Invalid attachment inventory step");return new mu(n.operation)}}try{Br.jsonID(W4,mu)}catch(e){if(!(e instanceof RangeError)||e.message!==`Duplicate use of step JSON ID ${W4}`)throw e;Object.defineProperty(mu.prototype,"jsonID",{value:W4})}function NCe(e){return e instanceof mu||e.jsonID===W4}function BCe(e=[]){const t=[...new Set(e)];return new kp({key:ou,state:{init(n,i){return lh({orderedIds:t,activeIds:new Set(t),refCounts:qS(i.doc),resourceRevision:0},!0)},apply(n,i,o,s){let r=i;for(const c of n.steps)NCe(c)&&(r=DCe(r,c.operation));n.getMeta(ou)?.type==="resource-revision"&&(r=NT(r,c=>{c.resourceRevision+=1}));const l=qS(s.doc);return FCe(r.refCounts,l)||(r=NT(r,c=>{c.refCounts=new Map(l)})),r}},appendTransaction(n,i,o){if(!n.some(c=>c.docChanged))return null;const s=ou.getState(o);if(s===void 0)return null;const r=qS(o.doc),a=[...OCe(i.doc)].filter(c=>s.activeIds.has(c)&&!r.has(c));if(a.length===0)return null;const l=o.tr;for(const c of a){const u=s.orderedIds.indexOf(c);u!==-1&&l.step(new mu({type:"deactivate",attId:c,index:u}))}return l.steps.length===0?null:l}})}function gc(e){const t=ou.getState(e);if(t===void 0)throw new Error("Attachment inventory plugin is missing");return t}function s3(e,t,n){const i=gc(e),o=n===void 0?i.orderedIds.length:Math.max(0,Math.trunc(n));return new mu({type:"activate",attId:t,index:o})}function Zee(e,t){const i=gc(e).orderedIds.indexOf(t);return i===-1?null:new mu({type:"deactivate",attId:t,index:i})}function zCe(e,t,n){const i=gc(e),o=i.orderedIds.indexOf(t);if(o===-1)return null;const s=tM(n,i.orderedIds.length-1);return o===s?null:new mu({type:"reorder",attId:t,from:o,to:s})}function Gee(e,t){const n=[];return e.doc.descendants((i,o)=>i.type!==Gn.nodes.attachment?!0:(i.attrs.attId===t&&n.push({from:o,to:o+i.nodeSize}),!1)),n}function HCe(e,t){const n=Zee(e,t);if(n===null)return null;const i=e.tr.step(n);for(const o of Gee(e,t).reverse())i.delete(o.from,o.to);return i.scrollIntoView()}function jCe(e,t){const n=Gee(e,t);if(n.length===0)return null;const i=e.tr;for(const o of n.reverse())i.delete(o.from,o.to);return i.scrollIntoView()}function WCe(e,t){if(t.length===0)return null;let n=e;const i=e.tr;for(const o of t){const s=o.range??(o.pos===void 0?void 0:{start:o.pos,end:o.pos}),r=o.reference?Vee(n,o.attrs,s):n.tr;if(gc(n).activeIds.has(o.attrs.attId)||r.step(s3(n,o.attrs.attId)),r.steps.length!==0){for(const a of r.steps)i.step(a);i.setSelection(To.fromJSON(i.doc,r.selection.toJSON())),n=n.apply(r)}}return i.steps.length===0?null:i.scrollIntoView()}const X6=new rb("composerAttachmentRegistry");function qCe(e){const t=new Set,n=[];return e.descendants(i=>{if(i.type!==Gn.nodes.attachment)return!0;const o=i.attrs.attId;return t.has(o)||(t.add(o),n.push(o)),!1}),n}const yh=new rb("browserReferences"),q4="composerBrowserReference";class bh extends Br{before;after;constructor(t,n){super(),this.before=t===null?null:lh(structuredClone(t)),this.after=n===null?null:lh(structuredClone(n))}apply(t){return ir.ok(t)}getMap(){return ml.empty}invert(){return new bh(this.after,this.before)}map(){return this}toJSON(){return{stepType:q4,before:this.before,after:this.after}}static fromJSON(t,n){const i=n.before===null?null:o3(n.before),o=n.after===null?null:o3(n.after);if(n.before!==null&&i===null||n.after!==null&&o===null||i===null&&o===null||i!==null&&o!==null&&i.id!==o.id)throw new RangeError("Invalid browser reference step");return new bh(i,o)}}try{Br.jsonID(q4,bh)}catch(e){if(!(e instanceof RangeError)||e.message!==`Duplicate use of step JSON ID ${q4}`)throw e;Object.defineProperty(bh.prototype,"jsonID",{value:q4})}function sH(e){return e instanceof bh||e.jsonID===q4}function Qee(e){const t=new Set;return e.descendants(n=>{n.type===Gn.nodes.browser_reference&&t.add(n.attrs.refId)}),t}function r3(e){const t=yh.getState(e);if(t===void 0)throw new Error("Browser reference plugin is missing");return t}function VCe(e={}){return new kp({key:yh,state:{init:()=>({references:new Map((e.browserReferences??[]).map(t=>[t.id,lh(structuredClone(t))])),captures:new Map((e.browserCaptures??[]).map(t=>[t.id,lh(structuredClone(t),!0)]))}),apply(t,n){let i=n.references,o=n.captures;for(const r of t.steps){if(!sH(r))continue;const a=new Map(i);r.after!==null?a.set(r.after.id,r.after):r.before!==null&&a.delete(r.before.id),i=a}const s=t.getMeta(yh);for(const r of s?.captures??[])o.has(r.id)||(o=new Map(o).set(r.id,lh(structuredClone(r),!0)));return i===n.references&&o===n.captures?n:{references:i,captures:o}}},appendTransaction(t,n,i){if(!t.some(l=>l.docChanged||l.steps.some(sH)))return null;const o=r3(i),s=new Set;for(const l of Qee(i.doc)){const c=o.references.get(l),u=c===void 0?void 0:o.captures.get(c.captureId);u?.screenshot!==void 0&&(u.target.kind==="region"||c?.includeScreenshot!==!1)&&s.add(u.screenshot.attachmentId)}const r=gc(i),a=i.tr;for(const l of s)r.activeIds.has(l)||a.step(s3(i,l));for(const l of o.captures.values()){const c=l.screenshot?.attachmentId;if(c===void 0||s.has(c)||(r.refCounts.get(c)??0)>0)continue;const u=Zee(i,c);u!==null&&a.step(u)}return a.steps.length===0?null:a}})}function UCe(e,t,n,i){const o=am(t),s=o3(n);if(o===null||s===null)throw new Error("Invalid browser reference data");t=o,n=s;const r=r3(e);if(n.captureId!==t.id||r.references.has(n.id))throw new Error("Invalid browser reference identity");const a=r.captures.get(t.id);if(a!==void 0&&JSON.stringify(am(a))!==JSON.stringify(t))throw new Error("Browser capture is immutable");const l=i===void 0?e.selection.from:gl(e.doc,i.start),c=i===void 0?e.selection.to:gl(e.doc,i.end),u=aP({refId:n.id,label:t.label}),d=e.tr.replaceWith(l,c,[u,Gn.text(" ")]);return d.step(new bh(null,n)),a===void 0&&d.setMeta(yh,{captures:[t]}),d.setSelection(Li.create(d.doc,l+u.nodeSize+1)),d.scrollIntoView()}function KCe(e,t,n,i){const o=r3(e),s=o.references.get(t);if(s===void 0||!Qee(e.doc).has(t))return null;const r=o.captures.get(s.captureId)?.target.kind==="region"?!0:i??s.includeScreenshot;if((s.comment??"")===n&&s.includeScreenshot!==!1==(r!==!1))return null;if(n.length>1e4)throw new Error("Browser reference comment is too long");return e.tr.step(new bh(s,{...s,comment:n||void 0,includeScreenshot:r}))}function lm(e,t,n){if(t===void 0)return;const i=n?.find(a=>a.attId===e);if(i!==void 0)return i.fileId===void 0?void 0:t.find(a=>a.fileId===i.fileId&&a.sessionId===i.sessionId);let o,s;if(/^[1-9]\d*$/.test(e))o=Number(e),s=a=>a.kind==="file";else if(/^m[1-9]\d*$/.test(e))o=Number(e.slice(1)),s=a=>a.kind==="image"||a.kind==="video";else return;let r=0;for(const a of t)if(s(a)&&(r+=1,r===o))return a}function ZCe(e,t,n){const i=lm(e,t,n);if(i===void 0)return{};const o=i.url!=="";return{"data-attachment-kind":i.kind,"data-attachment-url":o?i.url:void 0,"data-attachment-file-id":i.fileId,"data-attachment-media-type":i.mediaType,"data-attachment-size":i.size,"data-attachment-session-id":o?i.sessionId:void 0,tabindex:o?0:void 0,role:o?"button":void 0}}function GCe(e,t){const n=[...e],i=new Map(n.map(r=>[r.key,r])),o=new Map(n.map(r=>[r.attId,r])),s={};for(const r of t){const a=o.get(r.attId);if(a!==void 0&&a.key===r.key)continue;const l=i.get(r.key);if(l&&!(r.kind!==l.kind||r.size!==void 0&&l.size!==void 0&&r.size!==l.size||r.lastModified!==void 0&&l.lastModified!==void 0&&r.lastModified!==l.lastModified)){l.attId!==r.attId&&(s[r.attId]=l.attId);continue}if(!o.has(r.attId)){const d=dz(r,n);n.push(d),i.set(d.key,d),o.set(d.attId,d);continue}let c=X1();for(;o.has(c);)c=X1();const u=dz({...r,attId:c},n);n.push(u),i.set(u.key,u),o.set(c,u),s[r.attId]=c}return{entries:n,attIdRemap:s}}const lP="application/x-kimi-composer",QCe=1024*1024;function YCe(e){if(e.length>QCe)return null;let t;try{t=JSON.parse(e)}catch{return null}if(typeof t!="object"||t===null)return null;const n=t;if(n.v!==1||typeof n.slice!="object"||n.slice===null||n.browserReferences!==void 0&&(!Array.isArray(n.browserReferences)||n.browserReferences.length>1e3)||n.browserCaptures!==void 0&&(!Array.isArray(n.browserCaptures)||n.browserCaptures.length>1e3))return null;let i;try{i=Nn.fromJSON(Gn,n.slice)}catch{return null}const o=[];for(const a of Array.isArray(n.attachments)?n.attachments:[]){const l=Dke(a);l!==null&&o.push(l)}const s=[],r=[];for(const a of n.browserReferences??[]){const l=o3(a);if(l===null)return null;s.push(l)}for(const a of n.browserCaptures??[]){const l=am(a);if(l===null)return null;r.push(l)}return{slice:i,attachments:o,browserReferences:s,browserCaptures:r}}function JCe(e,t,n,i){if(Object.keys(t).length===0&&n===void 0)return e;const o=new Map(n?.map(l=>[l.attId,l])??[]),s=(l,c)=>{if(l.kind!=="image"&&l.kind!=="video"||l.mediaOrdinal===void 0)return c;const u=/^(.*)\s+[1-9]\d*$/.exec(c);return u===null?c:`${u[1]} ${l.mediaOrdinal}`},r=l=>{if(l.type===Gn.nodes.attachment){const u=l.attrs,d=t[u.attId]??u.attId,f=o.get(d),h=f===void 0?u.name:i?.(f)??s(f,u.name);return d===u.attId&&h===u.name?l:Gn.nodes.attachment.create({...u,attId:d,name:h})}if(l.isLeaf)return l;const c=[];return l.forEach(u=>c.push(r(u))),l.copy(Mn.fromArray(c))},a=[];return e.content.forEach(l=>a.push(r(l))),new Nn(Mn.fromArray(a),e.openStart,e.openEnd)}function rH(e,t,n){const i=YCe(t);if(!i)return null;const o=n===void 0?[...X6.getState(e)?.values()??[]]:[...n.entries],{entries:s,attIdRemap:r}=GCe(o,i.attachments);let a=JCe(i.slice,r,s,n?.referenceName);const l=yh.getState(e),c=[],u=[];if(l!==void 0){const g=new Map;for(const C of i.browserCaptures){const w={...C,screenshot:C.screenshot===void 0?void 0:{...C.screenshot,attachmentId:r[C.screenshot.attachmentId]??C.screenshot.attachmentId}},S=l.captures.get(w.id);S!==void 0&&JSON.stringify(am(S))!==JSON.stringify(am(w))&&(w.bindingId=Ree(w),w.id=`bc_${crypto.randomUUID()}`),g.set(C.id,w.id),c.push(w)}const y=new Map(i.browserReferences.map(C=>[C.id,C])),v=C=>{if(C.type===Gn.nodes.browser_reference){const S=`br_${crypto.randomUUID()}`,x=y.get(C.attrs.refId);if(x!==void 0){let M=g.get(x.captureId);M===void 0&&(M=`bc_${crypto.randomUUID()}`,g.set(x.captureId,M)),u.push({...x,id:S,captureId:M})}return C.type.create({...C.attrs,refId:S})}if(C.isLeaf)return C;const w=[];return C.forEach(S=>w.push(v(S))),C.copy(Mn.fromArray(w))},k=[];a.content.forEach(C=>k.push(v(C))),a=new Nn(Mn.fromArray(k),a.openStart,a.openEnd)}const d=e.tr.replaceSelection(a);for(const g of u)d.step(new bh(null,g));c.length>0&&d.setMeta(yh,{captures:c});const f=new Set(o.map(g=>g.attId)),h=s.filter(g=>!f.has(g.attId));if(n===void 0){const g=h.map(y=>({type:"upsert",entry:y}));g.length>0&&d.setMeta(X6,g)}else for(const g of h)n.upsert(g);const m=ou.getState(e);if(m!==void 0){const g=Yee(a);let y=m.orderedIds.length;for(const v of g)m.activeIds.has(v)||(d.step(s3(e,v,y)),y+=1)}return d.scrollIntoView()}function Yee(e){const t=[];return e.content.descendants(n=>{if(n.type!==Gn.nodes.attachment)return!0;const i=n.attrs.attId;return t.includes(i)||t.push(i),!1}),t}function Jee(e,t,n){const i=new Set(Yee(e)),o=new Set;if(e.content.descendants(d=>{d.type===Gn.nodes.browser_reference&&o.add(d.attrs.refId)}),e.content.size===0)return null;const s=[...o].flatMap(d=>n?.references.get(d)??[]),a=[...new Set(s.map(d=>d.captureId))].flatMap(d=>n?.captures.get(d)??[]);for(const d of a)d.screenshot!==void 0&&i.add(d.screenshot.attachmentId);const l=[...i].map(d=>t(d)).filter(d=>d!==void 0).map(sC),c={v:1,slice:e.toJSON(),attachments:l,...s.length===0?{}:{browserReferences:s},...a.length===0?{}:{browserCaptures:a}};return{plain:Uee(e,(d,f)=>{const h=n?.references.get(d),m=h===void 0?void 0:n?.captures.get(h.captureId);return[f,m?.page.url,h?.comment].filter(Boolean).join(` +`)}),flavor:JSON.stringify(c)}}const XCe=50,a4=new Map;function Xee(e){const t=X1()+X1();for(a4.set(t,e);a4.size>XCe;){const n=a4.keys().next().value;if(n===void 0)break;a4.delete(n)}return JSON.stringify({v:2,ref:t})}function eAe(e){try{const t=JSON.parse(e);if(typeof t=="object"&&t!==null){const n=t;if(n.v===2&&typeof n.ref=="string")return a4.get(n.ref)}}catch{}return e}function ete(e,t){const n=t===void 0||t.fileId===void 0;return{attId:e.attId,key:t?.fileId?t.sessionId!==void 0?`blob:${t.sessionId}:${t.fileId}`:`blob:${t.fileId}`:`blob:${e.attId}`,kind:t!==void 0&&(t.kind==="image"||t.kind==="video")?t.kind:e.kind,name:t?.name??e.name,size:t?.size,mediaType:t?.mediaType,...t?.mediaOrdinal===void 0?{}:{mediaOrdinal:t.mediaOrdinal},refCount:0,uploading:!1,fileId:t?.fileId,sessionId:t?.sessionId,error:n?"upload-interrupted":void 0}}function tAe(e,t){const n=pu(e),i=iP(e).some(a=>a.type==="quote");if(n.length===0&&!i)return;const o=G2(zee(e),{reviveMentions:!0,attachmentKindFor:a=>lm(a,t)?.kind}),s=n.map(a=>ete(a.attrs,lm(a.attrs.attId,t))),r={v:1,slice:Nn.maxOpen(o.content).toJSON()??{},attachments:s};return JSON.stringify(r)}const nM=` + + + + +`,tte=` + + + + +`,nte='',ite=` + + + +`,ote=` + + +`,ste='',rte=` + + +`,ate=` + + +`,lte=` + + +`,nAe='',iAe='',oAe='',sAe='',rAe='',cte=` + + +`,aAe={sm:14,md:16,lg:20},lAe={file:nM,folder:tte,skill:nte,copy:ite,check:ote,"external-link":ste,target:rte,"file-edit":ate,close:lte,attachment:nAe,image:iAe,video:oAe,fullscreen:sAe,quote:rAe,browser:cte};function Ta(e,t="md"){const n=aAe[t];return lAe[e].replace(/]*>/,i=>i.replace(/\s(?:width|height)="[^"]*"/g,"")).replace(/^