@mrpatronz/nexusflow 2.9.0 → 2.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +172 -113
- package/dist/agent/AcpCliAdapter.d.ts +2 -0
- package/dist/agent/AcpCliAdapter.d.ts.map +1 -1
- package/dist/agent/AcpCliAdapter.js +50 -4
- package/dist/agent/AcpCliAdapter.js.map +1 -1
- package/dist/agent/AntigravityCliAdapter.d.ts +44 -2
- package/dist/agent/AntigravityCliAdapter.d.ts.map +1 -1
- package/dist/agent/AntigravityCliAdapter.js +363 -16
- package/dist/agent/AntigravityCliAdapter.js.map +1 -1
- package/dist/agent/ClaudeCliAdapter.d.ts +3 -0
- package/dist/agent/ClaudeCliAdapter.d.ts.map +1 -1
- package/dist/agent/ClaudeCliAdapter.js +37 -10
- package/dist/agent/ClaudeCliAdapter.js.map +1 -1
- package/dist/agent/ClaudeSdkAdapter.d.ts +1 -0
- package/dist/agent/ClaudeSdkAdapter.d.ts.map +1 -1
- package/dist/agent/ClaudeSdkAdapter.js +38 -11
- package/dist/agent/ClaudeSdkAdapter.js.map +1 -1
- package/dist/agent/CliAdapterBase.d.ts +2 -0
- package/dist/agent/CliAdapterBase.d.ts.map +1 -1
- package/dist/agent/CliAdapterBase.js +5 -1
- package/dist/agent/CliAdapterBase.js.map +1 -1
- package/dist/agent/CodexCliAdapter.d.ts +1 -1
- package/dist/agent/CodexCliAdapter.d.ts.map +1 -1
- package/dist/agent/CodexCliAdapter.js +5 -4
- package/dist/agent/CodexCliAdapter.js.map +1 -1
- package/dist/agent/CodexSdkAdapter.d.ts.map +1 -1
- package/dist/agent/CodexSdkAdapter.js +4 -1
- package/dist/agent/CodexSdkAdapter.js.map +1 -1
- package/dist/agent/CopilotAcpAdapter.d.ts.map +1 -1
- package/dist/agent/CopilotAcpAdapter.js +2 -2
- package/dist/agent/CopilotAcpAdapter.js.map +1 -1
- package/dist/agent/ProviderRegistry.d.ts +8 -1
- package/dist/agent/ProviderRegistry.d.ts.map +1 -1
- package/dist/agent/ProviderRegistry.js.map +1 -1
- package/dist/agent/TurnSessionManager.d.ts +65 -0
- package/dist/agent/TurnSessionManager.d.ts.map +1 -0
- package/dist/agent/TurnSessionManager.js +330 -0
- package/dist/agent/TurnSessionManager.js.map +1 -0
- package/dist/agent/adapters.d.ts.map +1 -1
- package/dist/agent/adapters.js +23 -6
- package/dist/agent/adapters.js.map +1 -1
- package/dist/agent/cliAvailability.d.ts.map +1 -1
- package/dist/agent/cliAvailability.js +12 -0
- package/dist/agent/cliAvailability.js.map +1 -1
- package/dist/agent/mcp-config.d.ts +0 -5
- package/dist/agent/mcp-config.d.ts.map +1 -1
- package/dist/agent/mcp-config.js +2 -1
- package/dist/agent/mcp-config.js.map +1 -1
- package/dist/agent/models.d.ts +13 -0
- package/dist/agent/models.d.ts.map +1 -1
- package/dist/agent/models.js +262 -8
- package/dist/agent/models.js.map +1 -1
- package/dist/agent/nativeTools.d.ts.map +1 -1
- package/dist/agent/nativeTools.js +1 -0
- package/dist/agent/nativeTools.js.map +1 -1
- package/dist/agent/orchestrator.d.ts.map +1 -1
- package/dist/agent/orchestrator.js +3 -2
- package/dist/agent/orchestrator.js.map +1 -1
- package/dist/agent/session.d.ts +1 -0
- package/dist/agent/session.d.ts.map +1 -1
- package/dist/agent/session.js.map +1 -1
- package/dist/analyzers/detect-deps.js +16 -1
- package/dist/analyzers/detect-deps.js.map +1 -1
- package/dist/analyzers/run-analyzer.d.ts.map +1 -1
- package/dist/analyzers/run-analyzer.js.map +1 -1
- package/dist/commands/adapter.d.ts.map +1 -1
- package/dist/commands/adapter.js +15 -14
- package/dist/commands/adapter.js.map +1 -1
- package/dist/commands/add-repo.d.ts.map +1 -1
- package/dist/commands/add-repo.js +6 -5
- package/dist/commands/add-repo.js.map +1 -1
- package/dist/commands/commit.js +6 -8
- package/dist/commands/commit.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +2 -1
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/create.d.ts +4 -4
- package/dist/commands/create.d.ts.map +1 -1
- package/dist/commands/create.js +8 -7
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/desktop.d.ts +44 -3
- package/dist/commands/desktop.d.ts.map +1 -1
- package/dist/commands/desktop.js +246 -7
- package/dist/commands/desktop.js.map +1 -1
- package/dist/commands/diff.d.ts.map +1 -1
- package/dist/commands/diff.js +3 -2
- package/dist/commands/diff.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +3 -2
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/finish.js +2 -1
- package/dist/commands/finish.js.map +1 -1
- package/dist/commands/handoff.d.ts.map +1 -1
- package/dist/commands/handoff.js +12 -12
- package/dist/commands/handoff.js.map +1 -1
- package/dist/commands/init.d.ts +2 -2
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +8 -7
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/isolate.d.ts.map +1 -1
- package/dist/commands/isolate.js +2 -1
- package/dist/commands/isolate.js.map +1 -1
- package/dist/commands/knowledge.d.ts.map +1 -1
- package/dist/commands/knowledge.js +3 -2
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +3 -2
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/logs.js +3 -3
- package/dist/commands/logs.js.map +1 -1
- package/dist/commands/mcp.d.ts +1 -2
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +19 -12
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/migrate.d.ts +12 -0
- package/dist/commands/migrate.d.ts.map +1 -0
- package/dist/commands/migrate.js +128 -0
- package/dist/commands/migrate.js.map +1 -0
- package/dist/commands/open.d.ts.map +1 -1
- package/dist/commands/open.js +2 -1
- package/dist/commands/open.js.map +1 -1
- package/dist/commands/progress.d.ts.map +1 -1
- package/dist/commands/progress.js +2 -1
- package/dist/commands/progress.js.map +1 -1
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +7 -6
- package/dist/commands/project.js.map +1 -1
- package/dist/commands/refresh.d.ts.map +1 -1
- package/dist/commands/refresh.js +8 -11
- package/dist/commands/refresh.js.map +1 -1
- package/dist/commands/remove.d.ts.map +1 -1
- package/dist/commands/remove.js +2 -1
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/schedule.js +16 -18
- package/dist/commands/schedule.js.map +1 -1
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +9 -8
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +2 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/stop.d.ts.map +1 -1
- package/dist/commands/stop.js +2 -1
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/strategy.d.ts.map +1 -1
- package/dist/commands/strategy.js +6 -5
- package/dist/commands/strategy.js.map +1 -1
- package/dist/commands/sync.js +8 -10
- package/dist/commands/sync.js.map +1 -1
- package/dist/commands/tui.d.ts.map +1 -1
- package/dist/commands/tui.js +11 -10
- package/dist/commands/tui.js.map +1 -1
- package/dist/commands/ui.d.ts.map +1 -1
- package/dist/commands/ui.js +4 -3
- package/dist/commands/ui.js.map +1 -1
- package/dist/core/adapters/local-storage.d.ts +3 -1
- package/dist/core/adapters/local-storage.d.ts.map +1 -1
- package/dist/core/adapters/local-storage.js +62 -4
- package/dist/core/adapters/local-storage.js.map +1 -1
- package/dist/core/analysis-cache.d.ts.map +1 -1
- package/dist/core/analysis-cache.js +8 -7
- package/dist/core/analysis-cache.js.map +1 -1
- package/dist/core/brand-config.d.ts +261 -0
- package/dist/core/brand-config.d.ts.map +1 -0
- package/dist/core/brand-config.js +514 -0
- package/dist/core/brand-config.js.map +1 -0
- package/dist/core/config.d.ts +1 -1
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +18 -8
- package/dist/core/config.js.map +1 -1
- package/dist/core/constants.d.ts +88 -0
- package/dist/core/constants.d.ts.map +1 -0
- package/dist/core/constants.js +103 -0
- package/dist/core/constants.js.map +1 -0
- package/dist/core/doctor.d.ts.map +1 -1
- package/dist/core/doctor.js +11 -3
- package/dist/core/doctor.js.map +1 -1
- package/dist/core/generation-lock.d.ts +2 -2
- package/dist/core/generation-lock.d.ts.map +1 -1
- package/dist/core/generation-lock.js +49 -22
- package/dist/core/generation-lock.js.map +1 -1
- package/dist/core/knowledge.d.ts +19 -0
- package/dist/core/knowledge.d.ts.map +1 -1
- package/dist/core/knowledge.js +150 -24
- package/dist/core/knowledge.js.map +1 -1
- package/dist/core/migrate.d.ts +53 -0
- package/dist/core/migrate.d.ts.map +1 -0
- package/dist/core/migrate.js +607 -0
- package/dist/core/migrate.js.map +1 -0
- package/dist/core/new-repo.js +1 -1
- package/dist/core/new-repo.js.map +1 -1
- package/dist/core/projects.d.ts.map +1 -1
- package/dist/core/projects.js +13 -4
- package/dist/core/projects.js.map +1 -1
- package/dist/core/refresh.d.ts.map +1 -1
- package/dist/core/refresh.js +6 -4
- package/dist/core/refresh.js.map +1 -1
- package/dist/core/scheduler.d.ts +1 -1
- package/dist/core/scheduler.d.ts.map +1 -1
- package/dist/core/scheduler.js +11 -9
- package/dist/core/scheduler.js.map +1 -1
- package/dist/core/sync.js +1 -1
- package/dist/core/sync.js.map +1 -1
- package/dist/core/workspace-git.d.ts.map +1 -1
- package/dist/core/workspace-git.js +34 -10
- package/dist/core/workspace-git.js.map +1 -1
- package/dist/core/workspace-state.d.ts +4 -0
- package/dist/core/workspace-state.d.ts.map +1 -1
- package/dist/core/workspace-state.js +8 -8
- package/dist/core/workspace-state.js.map +1 -1
- package/dist/core/workspace.d.ts +3 -4
- package/dist/core/workspace.d.ts.map +1 -1
- package/dist/core/workspace.js +62 -30
- package/dist/core/workspace.js.map +1 -1
- package/dist/desktop-server.js +6 -3
- package/dist/desktop-server.js.map +1 -1
- package/dist/generators/base.d.ts.map +1 -1
- package/dist/generators/base.js +7 -5
- package/dist/generators/base.js.map +1 -1
- package/dist/generators/claude.d.ts.map +1 -1
- package/dist/generators/claude.js +2 -1
- package/dist/generators/claude.js.map +1 -1
- package/dist/generators/cursor.d.ts +1 -1
- package/dist/generators/cursor.d.ts.map +1 -1
- package/dist/generators/cursor.js +9 -4
- package/dist/generators/cursor.js.map +1 -1
- package/dist/generators/index.d.ts +4 -8
- package/dist/generators/index.d.ts.map +1 -1
- package/dist/generators/index.js +34 -69
- package/dist/generators/index.js.map +1 -1
- package/dist/generators/plan-generator.d.ts.map +1 -1
- package/dist/generators/plan-generator.js +20 -11
- package/dist/generators/plan-generator.js.map +1 -1
- package/dist/generators/skills-generator.d.ts.map +1 -1
- package/dist/generators/skills-generator.js +26 -11
- package/dist/generators/skills-generator.js.map +1 -1
- package/dist/gui/app_logo.png +0 -0
- package/dist/gui/assets/AgentsPage-CnXzZFo1.js +3 -0
- package/dist/gui/assets/DashboardPage-rm3hKgsw.js +1 -0
- package/dist/gui/assets/GettingStartedPage-BKeuSHZQ.js +1 -0
- package/dist/gui/assets/NullStore-DuSDhGOe.js +1 -0
- package/dist/gui/assets/ProjectsPage-CioaA4uf.js +1 -0
- package/dist/gui/assets/ScaffoldRepoInline-DKZ1rPmE.js +1 -0
- package/dist/gui/assets/Separator-BgWyHDtg.js +1 -0
- package/dist/gui/assets/SettingsPage-BevO8oge.js +1 -0
- package/dist/gui/assets/SkillsPage-D2stJRWy.js +6 -0
- package/dist/gui/assets/StartWorkPage-C8a6eN90.js +1 -0
- package/dist/gui/assets/{StrategiesPage-C36TZgDX.js → StrategiesPage-BRQMly_d.js} +2 -2
- package/dist/gui/assets/WorkroomsPage-KqBkRD-x.js +4 -0
- package/dist/gui/assets/WorkspacesPage-DcA2i5HN.js +2 -0
- package/dist/gui/assets/alert-QnMXzwpU.js +1 -0
- package/dist/gui/assets/alert-dialog-BHEUQVyS.js +1 -0
- package/dist/gui/assets/badge-DTBzXOWn.js +1 -0
- package/dist/gui/assets/brand-hHByyyzq.js +1 -0
- package/dist/gui/assets/button-CREn1mup.js +1 -0
- package/dist/gui/assets/card-yrg6ov8B.js +1 -0
- package/dist/gui/assets/chevron-down-B_Mwbim8.js +1 -0
- package/dist/gui/assets/{circle-plus-lmU1yNJd.js → circle-plus--zM3-3r3.js} +1 -1
- package/dist/gui/assets/{code-xml-jFAa3-TT.js → code-xml-DH-38Tt7.js} +1 -1
- package/dist/gui/assets/{git-branch-Cfj9D8yW.js → git-branch-Ce0I2663.js} +1 -1
- package/dist/gui/assets/index-BB4BuHBQ.css +2 -0
- package/dist/gui/assets/index-BTe-_1Mu.js +57 -0
- package/dist/gui/assets/isElementDisabled-BrwmCB1d.js +1 -0
- package/dist/gui/assets/label-DC730X8s.js +1 -0
- package/dist/gui/assets/layers-j_brOuoa.js +1 -0
- package/dist/gui/assets/menu-d_G9km1-.js +1 -0
- package/dist/gui/assets/shield-check-Dd1Yv3l2.js +1 -0
- package/dist/gui/assets/square-check-big-BSIiYXPI.js +1 -0
- package/dist/gui/assets/tabs-BHwTt4t1.js +1 -0
- package/dist/gui/assets/{trash-2-CtR35_eF.js → trash-2-CMdv3eD3.js} +1 -1
- package/dist/gui/assets/useAriaLabelledBy-BmJErI5a.js +1 -0
- package/dist/gui/assets/useValueChanged-WS99hTmm.js +1 -0
- package/dist/gui/assets/{vsc-DFh0-53h.js → vsc-eMRaEwN3.js} +1 -1
- package/dist/gui/favicon-aurora.svg +8 -0
- package/dist/gui/favicon.ico +0 -0
- package/dist/gui/favicon.svg +8 -1
- package/dist/gui/index.html +21 -12
- package/dist/harness/claude.d.ts.map +1 -1
- package/dist/harness/claude.js +97 -7
- package/dist/harness/claude.js.map +1 -1
- package/dist/harness/codex.d.ts +1 -0
- package/dist/harness/codex.d.ts.map +1 -1
- package/dist/harness/codex.js +51 -34
- package/dist/harness/codex.js.map +1 -1
- package/dist/index.js +57 -27
- package/dist/index.js.map +1 -1
- package/dist/mcp/server.d.ts +12 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +24 -6
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools.d.ts +4 -2
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +372 -17
- package/dist/mcp/tools.js.map +1 -1
- package/dist/orchestration/detect.d.ts.map +1 -1
- package/dist/orchestration/detect.js +12 -5
- package/dist/orchestration/detect.js.map +1 -1
- package/dist/orchestration/log-tail.js +17 -17
- package/dist/orchestration/log-tail.js.map +1 -1
- package/dist/orchestration/runner.d.ts +1 -1
- package/dist/orchestration/runner.d.ts.map +1 -1
- package/dist/orchestration/runner.js +13 -8
- package/dist/orchestration/runner.js.map +1 -1
- package/dist/resources/agents-catalog.d.ts +3 -1
- package/dist/resources/agents-catalog.d.ts.map +1 -1
- package/dist/resources/agents-catalog.js +12 -6
- package/dist/resources/agents-catalog.js.map +1 -1
- package/dist/resources/contracts.d.ts +7 -0
- package/dist/resources/contracts.d.ts.map +1 -1
- package/dist/resources/contracts.js +8 -1
- package/dist/resources/contracts.js.map +1 -1
- package/dist/resources/fs-safety.d.ts +7 -1
- package/dist/resources/fs-safety.d.ts.map +1 -1
- package/dist/resources/fs-safety.js +44 -1
- package/dist/resources/fs-safety.js.map +1 -1
- package/dist/resources/materializer.d.ts +1 -0
- package/dist/resources/materializer.d.ts.map +1 -1
- package/dist/resources/materializer.js +48 -17
- package/dist/resources/materializer.js.map +1 -1
- package/dist/resources/service.d.ts.map +1 -1
- package/dist/resources/service.js +3 -2
- package/dist/resources/service.js.map +1 -1
- package/dist/server.d.ts +2 -19
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +1158 -318
- package/dist/server.js.map +1 -1
- package/dist/static-resources/workflows/cost-aware-sol-luna.md +95 -0
- package/dist/storage/db.d.ts +94 -0
- package/dist/storage/db.d.ts.map +1 -0
- package/dist/storage/db.js +609 -0
- package/dist/storage/db.js.map +1 -0
- package/dist/types.d.ts +19 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/detect-ai.d.ts.map +1 -1
- package/dist/utils/detect-ai.js +1 -3
- package/dist/utils/detect-ai.js.map +1 -1
- package/dist/utils/multi-git.d.ts +0 -8
- package/dist/utils/multi-git.d.ts.map +1 -1
- package/dist/utils/multi-git.js +12 -4
- package/dist/utils/multi-git.js.map +1 -1
- package/dist/utils/pr.d.ts.map +1 -1
- package/dist/utils/pr.js +10 -5
- package/dist/utils/pr.js.map +1 -1
- package/dist/utils/resolve-workspace.d.ts +1 -1
- package/dist/utils/resolve-workspace.d.ts.map +1 -1
- package/dist/utils/resolve-workspace.js +10 -3
- package/dist/utils/resolve-workspace.js.map +1 -1
- package/dist/utils/session-finder.d.ts +12 -1
- package/dist/utils/session-finder.d.ts.map +1 -1
- package/dist/utils/session-finder.js +183 -0
- package/dist/utils/session-finder.js.map +1 -1
- package/dist/utils/skills-catalog.d.ts +5 -1
- package/dist/utils/skills-catalog.d.ts.map +1 -1
- package/dist/utils/skills-catalog.js +131 -75
- package/dist/utils/skills-catalog.js.map +1 -1
- package/dist/utils/terminal-launch.d.ts +4 -0
- package/dist/utils/terminal-launch.d.ts.map +1 -1
- package/dist/utils/terminal-launch.js +71 -12
- package/dist/utils/terminal-launch.js.map +1 -1
- package/dist/utils/update-check.d.ts +4 -1
- package/dist/utils/update-check.d.ts.map +1 -1
- package/dist/utils/update-check.js +66 -19
- package/dist/utils/update-check.js.map +1 -1
- package/dist/utils/workflows.d.ts +4 -1
- package/dist/utils/workflows.d.ts.map +1 -1
- package/dist/utils/workflows.js +51 -21
- package/dist/utils/workflows.js.map +1 -1
- package/dist/workrooms/client.d.ts +54 -0
- package/dist/workrooms/client.d.ts.map +1 -0
- package/dist/workrooms/client.js +191 -0
- package/dist/workrooms/client.js.map +1 -0
- package/dist/workrooms/contracts.d.ts +579 -0
- package/dist/workrooms/contracts.d.ts.map +1 -0
- package/dist/workrooms/contracts.js +231 -0
- package/dist/workrooms/contracts.js.map +1 -0
- package/dist/workrooms/crypto.d.ts +30 -0
- package/dist/workrooms/crypto.d.ts.map +1 -0
- package/dist/workrooms/crypto.js +72 -0
- package/dist/workrooms/crypto.js.map +1 -0
- package/dist/workrooms/host.d.ts +61 -0
- package/dist/workrooms/host.d.ts.map +1 -0
- package/dist/workrooms/host.js +747 -0
- package/dist/workrooms/host.js.map +1 -0
- package/dist/workrooms/local-resources.d.ts +26 -0
- package/dist/workrooms/local-resources.d.ts.map +1 -0
- package/dist/workrooms/local-resources.js +367 -0
- package/dist/workrooms/local-resources.js.map +1 -0
- package/dist/workrooms/manager.d.ts +228 -0
- package/dist/workrooms/manager.d.ts.map +1 -0
- package/dist/workrooms/manager.js +768 -0
- package/dist/workrooms/manager.js.map +1 -0
- package/dist/workrooms/milestones.d.ts +42 -0
- package/dist/workrooms/milestones.d.ts.map +1 -0
- package/dist/workrooms/milestones.js +94 -0
- package/dist/workrooms/milestones.js.map +1 -0
- package/dist/workrooms/portable.d.ts +21 -0
- package/dist/workrooms/portable.d.ts.map +1 -0
- package/dist/workrooms/portable.js +201 -0
- package/dist/workrooms/portable.js.map +1 -0
- package/dist/workrooms/resource-package.d.ts +7 -0
- package/dist/workrooms/resource-package.d.ts.map +1 -0
- package/dist/workrooms/resource-package.js +260 -0
- package/dist/workrooms/resource-package.js.map +1 -0
- package/dist/workrooms/service.d.ts +92 -0
- package/dist/workrooms/service.d.ts.map +1 -0
- package/dist/workrooms/service.js +788 -0
- package/dist/workrooms/service.js.map +1 -0
- package/dist/workrooms/sqlite-store.d.ts +31 -0
- package/dist/workrooms/sqlite-store.d.ts.map +1 -0
- package/dist/workrooms/sqlite-store.js +511 -0
- package/dist/workrooms/sqlite-store.js.map +1 -0
- package/dist/workrooms/store.d.ts +542 -0
- package/dist/workrooms/store.d.ts.map +1 -0
- package/dist/workrooms/store.js +71 -0
- package/dist/workrooms/store.js.map +1 -0
- package/package.json +16 -10
- package/resources/workflows/cost-aware-sol-luna.md +95 -0
- package/dist/agent/AcpCliAdapter.test.d.ts +0 -2
- package/dist/agent/AcpCliAdapter.test.d.ts.map +0 -1
- package/dist/agent/AcpCliAdapter.test.js +0 -235
- package/dist/agent/AcpCliAdapter.test.js.map +0 -1
- package/dist/agent/AntigravityCliAdapter.test.d.ts +0 -2
- package/dist/agent/AntigravityCliAdapter.test.d.ts.map +0 -1
- package/dist/agent/AntigravityCliAdapter.test.js +0 -222
- package/dist/agent/AntigravityCliAdapter.test.js.map +0 -1
- package/dist/agent/ClaudeCliAdapter.test.d.ts +0 -2
- package/dist/agent/ClaudeCliAdapter.test.d.ts.map +0 -1
- package/dist/agent/ClaudeCliAdapter.test.js +0 -320
- package/dist/agent/ClaudeCliAdapter.test.js.map +0 -1
- package/dist/agent/ClaudeSdkAdapter.test.d.ts +0 -2
- package/dist/agent/ClaudeSdkAdapter.test.d.ts.map +0 -1
- package/dist/agent/ClaudeSdkAdapter.test.js +0 -155
- package/dist/agent/ClaudeSdkAdapter.test.js.map +0 -1
- package/dist/agent/CliAdapterBase.test.d.ts +0 -2
- package/dist/agent/CliAdapterBase.test.d.ts.map +0 -1
- package/dist/agent/CliAdapterBase.test.js +0 -240
- package/dist/agent/CliAdapterBase.test.js.map +0 -1
- package/dist/agent/CodexCliAdapter.test.d.ts +0 -2
- package/dist/agent/CodexCliAdapter.test.d.ts.map +0 -1
- package/dist/agent/CodexCliAdapter.test.js +0 -331
- package/dist/agent/CodexCliAdapter.test.js.map +0 -1
- package/dist/agent/CodexSdkAdapter.test.d.ts +0 -2
- package/dist/agent/CodexSdkAdapter.test.d.ts.map +0 -1
- package/dist/agent/CodexSdkAdapter.test.js +0 -76
- package/dist/agent/CodexSdkAdapter.test.js.map +0 -1
- package/dist/agent/ProviderRegistry.test.d.ts +0 -2
- package/dist/agent/ProviderRegistry.test.d.ts.map +0 -1
- package/dist/agent/ProviderRegistry.test.js +0 -129
- package/dist/agent/ProviderRegistry.test.js.map +0 -1
- package/dist/agent/adapters.test.d.ts +0 -2
- package/dist/agent/adapters.test.d.ts.map +0 -1
- package/dist/agent/adapters.test.js +0 -71
- package/dist/agent/adapters.test.js.map +0 -1
- package/dist/agent/cliAvailability.test.d.ts +0 -2
- package/dist/agent/cliAvailability.test.d.ts.map +0 -1
- package/dist/agent/cliAvailability.test.js +0 -217
- package/dist/agent/cliAvailability.test.js.map +0 -1
- package/dist/agent/mcp-config.test.d.ts +0 -2
- package/dist/agent/mcp-config.test.d.ts.map +0 -1
- package/dist/agent/mcp-config.test.js +0 -22
- package/dist/agent/mcp-config.test.js.map +0 -1
- package/dist/agent/models.test.d.ts +0 -2
- package/dist/agent/models.test.d.ts.map +0 -1
- package/dist/agent/models.test.js +0 -40
- package/dist/agent/models.test.js.map +0 -1
- package/dist/agent/nativeAgent.test.d.ts +0 -2
- package/dist/agent/nativeAgent.test.d.ts.map +0 -1
- package/dist/agent/nativeAgent.test.js +0 -35
- package/dist/agent/nativeAgent.test.js.map +0 -1
- package/dist/agent/nativeTools.test.d.ts +0 -2
- package/dist/agent/nativeTools.test.d.ts.map +0 -1
- package/dist/agent/nativeTools.test.js +0 -67
- package/dist/agent/nativeTools.test.js.map +0 -1
- package/dist/agent/orchestrator.test.d.ts +0 -2
- package/dist/agent/orchestrator.test.d.ts.map +0 -1
- package/dist/agent/orchestrator.test.js +0 -284
- package/dist/agent/orchestrator.test.js.map +0 -1
- package/dist/agent/session.test.d.ts +0 -2
- package/dist/agent/session.test.d.ts.map +0 -1
- package/dist/agent/session.test.js +0 -74
- package/dist/agent/session.test.js.map +0 -1
- package/dist/agent/smoke-chat.test.d.ts +0 -2
- package/dist/agent/smoke-chat.test.d.ts.map +0 -1
- package/dist/agent/smoke-chat.test.js +0 -166
- package/dist/agent/smoke-chat.test.js.map +0 -1
- package/dist/commands/add-repo.test.d.ts +0 -2
- package/dist/commands/add-repo.test.d.ts.map +0 -1
- package/dist/commands/add-repo.test.js +0 -30
- package/dist/commands/add-repo.test.js.map +0 -1
- package/dist/commands/commands.test.d.ts +0 -2
- package/dist/commands/commands.test.d.ts.map +0 -1
- package/dist/commands/commands.test.js +0 -156
- package/dist/commands/commands.test.js.map +0 -1
- package/dist/commands/commit.test.d.ts +0 -2
- package/dist/commands/commit.test.d.ts.map +0 -1
- package/dist/commands/commit.test.js +0 -54
- package/dist/commands/commit.test.js.map +0 -1
- package/dist/commands/isolate.test.d.ts +0 -2
- package/dist/commands/isolate.test.d.ts.map +0 -1
- package/dist/commands/isolate.test.js +0 -59
- package/dist/commands/isolate.test.js.map +0 -1
- package/dist/commands/knowledge.test.d.ts +0 -2
- package/dist/commands/knowledge.test.d.ts.map +0 -1
- package/dist/commands/knowledge.test.js +0 -90
- package/dist/commands/knowledge.test.js.map +0 -1
- package/dist/commands/status.test.d.ts +0 -2
- package/dist/commands/status.test.d.ts.map +0 -1
- package/dist/commands/status.test.js +0 -31
- package/dist/commands/status.test.js.map +0 -1
- package/dist/commands/ui.test.d.ts +0 -2
- package/dist/commands/ui.test.d.ts.map +0 -1
- package/dist/commands/ui.test.js +0 -58
- package/dist/commands/ui.test.js.map +0 -1
- package/dist/core/adapters/storage.test.d.ts +0 -2
- package/dist/core/adapters/storage.test.d.ts.map +0 -1
- package/dist/core/adapters/storage.test.js +0 -65
- package/dist/core/adapters/storage.test.js.map +0 -1
- package/dist/core/analysis-cache.test.d.ts +0 -2
- package/dist/core/analysis-cache.test.d.ts.map +0 -1
- package/dist/core/analysis-cache.test.js +0 -163
- package/dist/core/analysis-cache.test.js.map +0 -1
- package/dist/core/config.test.d.ts +0 -2
- package/dist/core/config.test.d.ts.map +0 -1
- package/dist/core/config.test.js +0 -90
- package/dist/core/config.test.js.map +0 -1
- package/dist/core/finish.test.d.ts +0 -2
- package/dist/core/finish.test.d.ts.map +0 -1
- package/dist/core/finish.test.js +0 -110
- package/dist/core/finish.test.js.map +0 -1
- package/dist/core/generation-lock.test.d.ts +0 -2
- package/dist/core/generation-lock.test.d.ts.map +0 -1
- package/dist/core/generation-lock.test.js +0 -134
- package/dist/core/generation-lock.test.js.map +0 -1
- package/dist/core/isolate.test.d.ts +0 -2
- package/dist/core/isolate.test.d.ts.map +0 -1
- package/dist/core/isolate.test.js +0 -320
- package/dist/core/isolate.test.js.map +0 -1
- package/dist/core/knowledge.test.d.ts +0 -2
- package/dist/core/knowledge.test.d.ts.map +0 -1
- package/dist/core/knowledge.test.js +0 -287
- package/dist/core/knowledge.test.js.map +0 -1
- package/dist/core/locks.test.d.ts +0 -2
- package/dist/core/locks.test.d.ts.map +0 -1
- package/dist/core/locks.test.js +0 -143
- package/dist/core/locks.test.js.map +0 -1
- package/dist/core/new-repo.test.d.ts +0 -2
- package/dist/core/new-repo.test.d.ts.map +0 -1
- package/dist/core/new-repo.test.js +0 -78
- package/dist/core/new-repo.test.js.map +0 -1
- package/dist/core/progress.test.d.ts +0 -2
- package/dist/core/progress.test.d.ts.map +0 -1
- package/dist/core/progress.test.js +0 -52
- package/dist/core/progress.test.js.map +0 -1
- package/dist/core/projects.test.d.ts +0 -2
- package/dist/core/projects.test.d.ts.map +0 -1
- package/dist/core/projects.test.js +0 -165
- package/dist/core/projects.test.js.map +0 -1
- package/dist/core/refresh.test.d.ts +0 -2
- package/dist/core/refresh.test.d.ts.map +0 -1
- package/dist/core/refresh.test.js +0 -93
- package/dist/core/refresh.test.js.map +0 -1
- package/dist/core/scanner.test.d.ts +0 -2
- package/dist/core/scanner.test.d.ts.map +0 -1
- package/dist/core/scanner.test.js +0 -53
- package/dist/core/scanner.test.js.map +0 -1
- package/dist/core/scheduler.test.d.ts +0 -2
- package/dist/core/scheduler.test.d.ts.map +0 -1
- package/dist/core/scheduler.test.js +0 -169
- package/dist/core/scheduler.test.js.map +0 -1
- package/dist/core/sync.test.d.ts +0 -2
- package/dist/core/sync.test.d.ts.map +0 -1
- package/dist/core/sync.test.js +0 -128
- package/dist/core/sync.test.js.map +0 -1
- package/dist/core/workspace-git.test.d.ts +0 -2
- package/dist/core/workspace-git.test.d.ts.map +0 -1
- package/dist/core/workspace-git.test.js +0 -52
- package/dist/core/workspace-git.test.js.map +0 -1
- package/dist/core/workspace-skills-workflow.integration.test.d.ts +0 -2
- package/dist/core/workspace-skills-workflow.integration.test.d.ts.map +0 -1
- package/dist/core/workspace-skills-workflow.integration.test.js +0 -177
- package/dist/core/workspace-skills-workflow.integration.test.js.map +0 -1
- package/dist/core/workspace-state.test.d.ts +0 -2
- package/dist/core/workspace-state.test.d.ts.map +0 -1
- package/dist/core/workspace-state.test.js +0 -84
- package/dist/core/workspace-state.test.js.map +0 -1
- package/dist/core/workspace.create.test.d.ts +0 -2
- package/dist/core/workspace.create.test.d.ts.map +0 -1
- package/dist/core/workspace.create.test.js +0 -224
- package/dist/core/workspace.create.test.js.map +0 -1
- package/dist/core/workspace.test.d.ts +0 -2
- package/dist/core/workspace.test.d.ts.map +0 -1
- package/dist/core/workspace.test.js +0 -53
- package/dist/core/workspace.test.js.map +0 -1
- package/dist/core/worktree.test.d.ts +0 -2
- package/dist/core/worktree.test.d.ts.map +0 -1
- package/dist/core/worktree.test.js +0 -153
- package/dist/core/worktree.test.js.map +0 -1
- package/dist/generators/base.test.d.ts +0 -2
- package/dist/generators/base.test.d.ts.map +0 -1
- package/dist/generators/base.test.js +0 -287
- package/dist/generators/base.test.js.map +0 -1
- package/dist/generators/knowledge-migration.test.d.ts +0 -2
- package/dist/generators/knowledge-migration.test.d.ts.map +0 -1
- package/dist/generators/knowledge-migration.test.js +0 -22
- package/dist/generators/knowledge-migration.test.js.map +0 -1
- package/dist/generators/plan-generator.test.d.ts +0 -2
- package/dist/generators/plan-generator.test.d.ts.map +0 -1
- package/dist/generators/plan-generator.test.js +0 -220
- package/dist/generators/plan-generator.test.js.map +0 -1
- package/dist/generators/skills-generator.test.d.ts +0 -2
- package/dist/generators/skills-generator.test.d.ts.map +0 -1
- package/dist/generators/skills-generator.test.js +0 -79
- package/dist/generators/skills-generator.test.js.map +0 -1
- package/dist/gui/assets/AgentsPage-B4fx43rd.js +0 -3
- package/dist/gui/assets/CSPContext-DBUu9tE0.js +0 -1
- package/dist/gui/assets/DashboardPage-DH52G8IG.js +0 -1
- package/dist/gui/assets/GettingStartedPage-BlTrQhvi.js +0 -1
- package/dist/gui/assets/ProjectsPage-BPVSLPXv.js +0 -1
- package/dist/gui/assets/ScaffoldRepoInline-ywcpq9PX.js +0 -1
- package/dist/gui/assets/SettingsPage-RQr8SalV.js +0 -1
- package/dist/gui/assets/SkillsPage-CYoSRrwx.js +0 -6
- package/dist/gui/assets/StartWorkPage-DBKK4lFi.js +0 -1
- package/dist/gui/assets/WorkspacesPage-DxEONvSq.js +0 -6
- package/dist/gui/assets/alert-dialog-CQAX2yRx.js +0 -1
- package/dist/gui/assets/badge-CAohJGj6.js +0 -1
- package/dist/gui/assets/bot-C2HWrAft.js +0 -1
- package/dist/gui/assets/button-BDDZnIHx.js +0 -1
- package/dist/gui/assets/card-BKXzd_5L.js +0 -1
- package/dist/gui/assets/chevron-down-qTL8HPug.js +0 -1
- package/dist/gui/assets/cpu-Cdwd84Jz.js +0 -1
- package/dist/gui/assets/empty-BdlgbifD.js +0 -1
- package/dist/gui/assets/index-BF6pre6G.css +0 -2
- package/dist/gui/assets/index-C_rwnBzF.js +0 -52
- package/dist/gui/assets/isElementDisabled-uy_EOitH.js +0 -1
- package/dist/gui/assets/label-CG5exjag.js +0 -1
- package/dist/gui/assets/square-DlIYnlSq.js +0 -1
- package/dist/gui/assets/textarea-ByfoCb54.js +0 -1
- package/dist/gui/assets/useAriaLabelledBy-ClesgjMe.js +0 -1
- package/dist/gui/assets/useValueChanged-DeYvGnKs.js +0 -1
- package/dist/gui/assets/zap-CWG_Lvki.js +0 -1
- package/dist/harness/contract.test.d.ts +0 -2
- package/dist/harness/contract.test.d.ts.map +0 -1
- package/dist/harness/contract.test.js +0 -426
- package/dist/harness/contract.test.js.map +0 -1
- package/dist/harness/harness.test.d.ts +0 -2
- package/dist/harness/harness.test.d.ts.map +0 -1
- package/dist/harness/harness.test.js +0 -215
- package/dist/harness/harness.test.js.map +0 -1
- package/dist/mcp/tools.test.d.ts +0 -2
- package/dist/mcp/tools.test.d.ts.map +0 -1
- package/dist/mcp/tools.test.js +0 -194
- package/dist/mcp/tools.test.js.map +0 -1
- package/dist/orchestration/log-tail.test.d.ts +0 -2
- package/dist/orchestration/log-tail.test.d.ts.map +0 -1
- package/dist/orchestration/log-tail.test.js +0 -72
- package/dist/orchestration/log-tail.test.js.map +0 -1
- package/dist/orchestration/orchestrator.test.d.ts +0 -2
- package/dist/orchestration/orchestrator.test.d.ts.map +0 -1
- package/dist/orchestration/orchestrator.test.js +0 -85
- package/dist/orchestration/orchestrator.test.js.map +0 -1
- package/dist/orchestration/runner.test.d.ts +0 -2
- package/dist/orchestration/runner.test.d.ts.map +0 -1
- package/dist/orchestration/runner.test.js +0 -233
- package/dist/orchestration/runner.test.js.map +0 -1
- package/dist/resources/agents-catalog.test.d.ts +0 -2
- package/dist/resources/agents-catalog.test.d.ts.map +0 -1
- package/dist/resources/agents-catalog.test.js +0 -50
- package/dist/resources/agents-catalog.test.js.map +0 -1
- package/dist/resources/codex-agent.test.d.ts +0 -2
- package/dist/resources/codex-agent.test.d.ts.map +0 -1
- package/dist/resources/codex-agent.test.js +0 -27
- package/dist/resources/codex-agent.test.js.map +0 -1
- package/dist/resources/materializer.test.d.ts +0 -2
- package/dist/resources/materializer.test.d.ts.map +0 -1
- package/dist/resources/materializer.test.js +0 -149
- package/dist/resources/materializer.test.js.map +0 -1
- package/dist/resources/service.test.d.ts +0 -2
- package/dist/resources/service.test.d.ts.map +0 -1
- package/dist/resources/service.test.js +0 -58
- package/dist/resources/service.test.js.map +0 -1
- package/dist/server.test.d.ts +0 -2
- package/dist/server.test.d.ts.map +0 -1
- package/dist/server.test.js +0 -1697
- package/dist/server.test.js.map +0 -1
- package/dist/utils/detect-ai.test.d.ts +0 -2
- package/dist/utils/detect-ai.test.d.ts.map +0 -1
- package/dist/utils/detect-ai.test.js +0 -70
- package/dist/utils/detect-ai.test.js.map +0 -1
- package/dist/utils/detect-editors.test.d.ts +0 -2
- package/dist/utils/detect-editors.test.d.ts.map +0 -1
- package/dist/utils/detect-editors.test.js +0 -85
- package/dist/utils/detect-editors.test.js.map +0 -1
- package/dist/utils/git.test.d.ts +0 -2
- package/dist/utils/git.test.d.ts.map +0 -1
- package/dist/utils/git.test.js +0 -125
- package/dist/utils/git.test.js.map +0 -1
- package/dist/utils/multi-git.test.d.ts +0 -2
- package/dist/utils/multi-git.test.d.ts.map +0 -1
- package/dist/utils/multi-git.test.js +0 -330
- package/dist/utils/multi-git.test.js.map +0 -1
- package/dist/utils/pr.test.d.ts +0 -2
- package/dist/utils/pr.test.d.ts.map +0 -1
- package/dist/utils/pr.test.js +0 -47
- package/dist/utils/pr.test.js.map +0 -1
- package/dist/utils/session-finder.test.d.ts +0 -2
- package/dist/utils/session-finder.test.d.ts.map +0 -1
- package/dist/utils/session-finder.test.js +0 -304
- package/dist/utils/session-finder.test.js.map +0 -1
- package/dist/utils/skills-catalog.test.d.ts +0 -2
- package/dist/utils/skills-catalog.test.d.ts.map +0 -1
- package/dist/utils/skills-catalog.test.js +0 -281
- package/dist/utils/skills-catalog.test.js.map +0 -1
- package/dist/utils/system-scanner.test.d.ts +0 -2
- package/dist/utils/system-scanner.test.d.ts.map +0 -1
- package/dist/utils/system-scanner.test.js +0 -73
- package/dist/utils/system-scanner.test.js.map +0 -1
- package/dist/utils/terminal-launch.test.d.ts +0 -2
- package/dist/utils/terminal-launch.test.d.ts.map +0 -1
- package/dist/utils/terminal-launch.test.js +0 -117
- package/dist/utils/terminal-launch.test.js.map +0 -1
- package/dist/utils/update-check.test.d.ts +0 -2
- package/dist/utils/update-check.test.d.ts.map +0 -1
- package/dist/utils/update-check.test.js +0 -30
- package/dist/utils/update-check.test.js.map +0 -1
- package/dist/utils/workflows.test.d.ts +0 -2
- package/dist/utils/workflows.test.d.ts.map +0 -1
- package/dist/utils/workflows.test.js +0 -86
- package/dist/utils/workflows.test.js.map +0 -1
- package/dist/utils/workspace-launch.test.d.ts +0 -2
- package/dist/utils/workspace-launch.test.d.ts.map +0 -1
- package/dist/utils/workspace-launch.test.js +0 -128
- package/dist/utils/workspace-launch.test.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as e,b as t,c as n,f as r,g as i,i as a,p as o,s}from"./button-BDDZnIHx.js";import{An as c,At as l,Bt as u,Cn as d,Ct as f,Dn as p,En as m,G as h,Gt as g,Ht as _,It as v,Jn as y,Jt as b,Kt as x,Ln as S,Lt as C,M as w,Nt as T,On as E,Sn as D,St as ee,Tn as O,Tt as te,Ut as k,Vn as A,Vt as ne,Wt as j,Yt as M,Zn as N,Zt as P,_n as F,an as re,at as ie,bn as ae,bt as oe,cn as I,g as se,gn as L,hn as R,jn as z,kn as ce,kt as le,m as B,mn as V,nr as H,on as ue,ot as de,pn as U,pt as fe,qt as pe,rn as me,tn as he,ut as ge,vn as W,wn as G,wt as _e,xn as ve,xt as ye,yn as K,zt as be}from"./CSPContext-DBUu9tE0.js";import{t as xe}from"./useValueChanged-DeYvGnKs.js";var q=t(e(),1),Se=q.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}});function Ce(){return q.useContext(Se)}var we=function(e){return e[e.None=0]=`None`,e[e.GuessFromOrder=1]=`GuessFromOrder`,e}({});function Te(e={}){let{label:t,metadata:n,textRef:r,indexGuessBehavior:i,index:a}=e,{register:o,unregister:s,subscribeMapChange:c,elementsRef:l,labelsRef:u,nextIndexRef:d}=Ce(),f=q.useRef(-1),[p,m]=q.useState(a??(i===we.GuessFromOrder?()=>{if(f.current===-1){let e=d.current;d.current+=1,f.current=e}return f.current}:-1)),h=q.useRef(null),g=q.useCallback(e=>{if(h.current=e,p!==-1&&e!==null&&(l.current[p]=e,u)){let n=t!==void 0;u.current[p]=n?t:r?.current?.textContent??e.textContent}},[p,l,u,t,r]);return U(()=>{if(a!=null)return;let e=h.current;if(e)return o(e,n),()=>{s(e)}},[a,o,s,n]),U(()=>{if(a==null)return c(e=>{let t=h.current?e.get(h.current)?.index:null;t!=null&&m(t)})},[a,c,m]),{ref:g,index:p}}var Ee=[`top`,`right`,`bottom`,`left`],De=Math.min,J=Math.max,Y=Math.round,Oe=Math.floor,X=e=>({x:e,y:e}),ke={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Ae(e,t,n){return J(e,De(t,n))}function Z(e,t){return typeof e==`function`?e(t):e}function Q(e){return e.split(`-`)[0]}function je(e){return e.split(`-`)[1]}function Me(e){return e===`x`?`y`:`x`}function Ne(e){return e===`y`?`height`:`width`}function $(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Pe(e){return Me($(e))}function Fe(e,t,n){n===void 0&&(n=!1);let r=je(e),i=Pe(e),a=Ne(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=We(o)),[o,We(o)]}function Ie(e){let t=We(e);return[Le(e),t,Le(t)]}function Le(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Re=[`left`,`right`],ze=[`right`,`left`],Be=[`top`,`bottom`],Ve=[`bottom`,`top`];function He(e,t,n){switch(e){case`top`:case`bottom`:return n?t?ze:Re:t?Re:ze;case`left`:case`right`:return t?Be:Ve;default:return[]}}function Ue(e,t,n,r){let i=je(e),a=He(Q(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Le)))),a}function We(e){let t=Q(e);return ke[t]+e.slice(t.length)}function Ge(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function Ke(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Ge(e)}function qe(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function Je(e,t={}){let{enabled:r=!0,event:i=`click`,toggle:a=!0,ignoreMouse:o=!1,stickIfOpen:s=!0,touchOpenDelay:c=0,reason:l=y}=t,u=`rootStore`in e?e.rootStore:e,d=u.context.dataRef,f=q.useRef(void 0),p=he(),m=P(),h=q.useMemo(()=>{function e(e,t,n,r){let i=me(l,t,n);e&&r===`touch`&&c>0?m.start(c,()=>{u.setOpen(!0,i)}):u.setOpen(e,i)}function t(e,t,n){let r=d.current.openEvent,i=u.select(`domReferenceElement`)!==t;return e&&i||!e||!a?!0:r&&s?!n(r.type):!1}return{onPointerDown(e){f.current=e.pointerType},onMouseDown(n){let r=f.current,a=n.nativeEvent,s=u.select(`open`);if(n.button!==0||i===`click`||x(r,!0)&&o)return;let c=t(s,n.currentTarget,e=>e===`click`||e===`mousedown`),l=ne(a);if(C(l)){e(c,a,l,r);return}let d=n.currentTarget;p.request(()=>{e(c,a,d,r)})},onClick(n){if(i===`mousedown-only`)return;let r=f.current;if(i===`mousedown`&&r){f.current=void 0;return}x(r,!0)&&o||e(t(u.select(`open`),n.currentTarget,e=>e===`click`||e===`mousedown`||e===`keydown`||e===`keyup`),n.nativeEvent,n.currentTarget,r)},onKeyDown(){f.current=void 0}}},[d,i,o,l,u,s,a,p,m,c]);return q.useMemo(()=>r?{reference:h}:n,[r,h])}function Ye(e,t,n){let{reference:r,floating:i}=e,a=$(t),o=Pe(t),s=Ne(o),c=Q(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=je(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function Xe(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=Z(t,e),p=Ke(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=qe(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=qe(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var Ze=50,Qe=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:Xe},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=Ye(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<Ze&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=Ye(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},$e=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=Z(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=Q(r),_=$(o),v=Q(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[We(o)]:Ie(o)),x=p!==`none`;!d&&x&&b.push(...Ue(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=Fe(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==$(t))||T.every(e=>$(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=$(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function et(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function tt(e){return Ee.some(t=>e[t]>=0)}var nt=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=Z(e,t);switch(i){case`referenceHidden`:{let e=et(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:tt(e)}}}case`escaped`:{let e=et(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:tt(e)}}}default:return{}}}}},rt=new Set([`left`,`top`]);async function it(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Q(n),s=je(n),c=$(n)===`y`,l=rt.has(o)?-1:1,u=a&&c?-1:1,d=Z(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var at=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await it(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},ot=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=Z(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=$(i),p=Me(f),m=u[p],h=u[f],g=(e,t)=>Ae(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}},st=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=Z(e,t),u={x:n,y:r},d=$(i),f=Me(d),p=u[f],m=u[d],h=Z(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:h.mainAxis??0,crossAxis:h.crossAxis??0};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=rt.has(Q(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},ct=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){let{placement:n,rects:r,platform:i,elements:a}=t,{apply:o=()=>{},...s}=Z(e,t),c=await i.detectOverflow(t,s),l=Q(n),u=je(n),d=$(n)===`y`,{width:f,height:p}=r.floating,m,h;l===`top`||l===`bottom`?(m=l,h=u===(await(i.isRTL==null?void 0:i.isRTL(a.floating))?`start`:`end`)?`left`:`right`):(h=l,m=u===`end`?`top`:`bottom`);let g=p-c.top-c.bottom,_=f-c.left-c.right,v=De(p-c[m],g),y=De(f-c[h],_),b=t.middlewareData.shift,x=!b,S=v,C=y;b!=null&&b.enabled.x&&(C=_),b!=null&&b.enabled.y&&(S=g),x&&!u&&(d?C=f-2*J(c.left,c.right):S=p-2*J(c.top,c.bottom)),await o({...t,availableWidth:C,availableHeight:S});let w=await i.getDimensions(a.floating);return f!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function lt(e){let t=R(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=m(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Y(n)!==a||Y(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function ut(e){return O(e)?e:e.contextElement}function dt(e){let t=ut(e);if(!m(t))return X(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=lt(t),o=(a?Y(n.width):n.width)/r,s=(a?Y(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var ft=X(0);function pt(e){let t=d(e);return!z()||!t.visualViewport?ft:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function mt(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===d(e)}function ht(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=ut(e),o=X(1);t&&(r?O(r)&&(o=dt(r)):o=dt(e));let s=mt(a,n,r)?pt(a):X(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,f=i.height/o.y;if(a&&r){let e=d(a),t=O(r)?d(r):r,n=e,i=W(n);for(;i&&t!==n;){let e=dt(i),t=i.getBoundingClientRect(),r=R(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,f*=e.y,c+=a,l+=o,n=d(i),i=W(n)}}return qe({width:u,height:f,x:c,y:l})}function gt(e,t){let n=ae(e).scrollLeft;return t?t.left+n:ht(F(e)).left+n}function _t(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-gt(e,n),y:n.top+t.scrollTop}}function vt(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=F(r),s=t?c(t.floating):!1;if(r===o||s&&a)return n;let l={scrollLeft:0,scrollTop:0},u=X(1),d=X(0),f=m(r);if((f||!a)&&((K(r)!==`body`||E(o))&&(l=ae(r)),f)){let e=ht(r);u=dt(r),d.x=e.x+r.clientLeft,d.y=e.y+r.clientTop}let p=o&&!f&&!a?_t(o,l):X(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-l.scrollLeft*u.x+d.x+p.x,y:n.y*u.y-l.scrollTop*u.y+d.y+p.y}}function yt(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function bt(e){let t=ae(e),n=e.ownerDocument.body,r=J(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=J(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+gt(e),o=-t.scrollTop;return R(n).direction===`rtl`&&(a+=J(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var xt=25;function St(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=d(e),a=F(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!z()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(gt(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=xt&&(s-=o)}return{width:s,height:c,x:l,y:u}}function Ct(e,t){let n=ht(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=dt(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function wt(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=St(e,n,t);else if(t===`document`)r=bt(F(e));else if(O(t))r=Ct(t,n);else{let n=pt(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return qe(r)}function Tt(e,t){let n=t.get(e);if(n)return n;let r=ve(e,[],!1).filter(e=>O(e)&&K(e)!==`body`),i=null,a=R(e).position===`fixed`,o=a?D(e):e;for(;O(o)&&!p(o);){let e=R(o),t=G(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=D(o)}return t.set(e,r),r}function Et(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?c(t)?[]:Tt(t,this._c):[].concat(n),r],o=wt(t,a[0],i),s=o.top,l=o.right,u=o.bottom,d=o.left;for(let e=1;e<a.length;e++){let n=wt(t,a[e],i);s=J(n.top,s),l=De(n.right,l),u=De(n.bottom,u),d=J(n.left,d)}return{width:l-d,height:u-s,x:d,y:s}}function Dt(e){let{width:t,height:n}=lt(e);return{width:t,height:n}}function Ot(e,t,n){let r=m(t),i=F(t),a=n===`fixed`,o=ht(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=X(0);if((r||!a)&&((K(t)!==`body`||E(i))&&(s=ae(t)),r)){let e=ht(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}!r&&i&&(c.x=gt(i));let l=i&&!r&&!a?_t(i,s):X(0);return{x:o.left+s.scrollLeft-c.x-l.x,y:o.top+s.scrollTop-c.y-l.y,width:o.width,height:o.height}}function kt(e){return R(e).position===`static`}function At(e,t){if(!m(e)||R(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return F(e)===n&&(n=n.ownerDocument.body),n}function jt(e,t){let n=d(e);if(c(e))return n;if(!m(e)){let t=D(e);for(;t&&!p(t);){if(O(t)&&!kt(t))return t;t=D(t)}return n}let r=At(e,t);for(;r&&ce(r)&&kt(r);)r=At(r,t);return r&&p(r)&&kt(r)&&!G(r)?n:r||L(e)||n}var Mt=async function(e){let t=this.getOffsetParent||jt,n=this.getDimensions,r=await n(e.floating);return{reference:Ot(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Nt(e){return R(e).direction===`rtl`}var Pt={convertOffsetParentRelativeRectToViewportRelativeRect:vt,getDocumentElement:F,getClippingRect:Et,getOffsetParent:jt,getElementRects:Mt,getClientRects:yt,getDimensions:Dt,getScale:dt,isElement:O,isRTL:Nt};function Ft(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function It(e,t,n){let r=null,i,a=F(e);function o(){var e;clearTimeout(i),(e=r)==null||e.disconnect(),r=null}function s(n,c){n===void 0&&(n=!1),c===void 0&&(c=1),o();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(n||t(),!f||!p)return;let m=Oe(d),h=Oe(a.clientWidth-(u+f)),g=Oe(a.clientHeight-(d+p)),_=Oe(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:J(0,De(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(!Ft(l,e.getBoundingClientRect()))return s();if(n!==c){if(!y)return s();n?s(!1,n):i=setTimeout(()=>{s(!1,1e-7)},1e3)}y=!1}try{r=new IntersectionObserver(b,{...v,root:a.ownerDocument})}catch{r=new IntersectionObserver(b,v)}r.observe(e)}let c=d(e),l=()=>s(n);return c.addEventListener(`resize`,l),s(!0),()=>{c.removeEventListener(`resize`,l),o()}}function Lt(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=ut(e),u=i||a?[...l?ve(l):[],...t?ve(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n),a&&e.addEventListener(`resize`,n)});let d=l&&s?It(l,n,a):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?ht(e):null;c&&g();function g(){let t=ht(e);h&&!Ft(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var Rt=at,zt=ot,Bt=$e,Vt=ct,Ht=nt,Ut=st,Wt=(e,t,n)=>{let r=new Map,i=n??{},a={...Pt,...i.platform,_c:r};return Qe(e,t,{...i,platform:a})},Gt=t(H(),1),Kt=typeof document<`u`?q.useLayoutEffect:function(){};function qt(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!qt(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!qt(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function Jt(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Yt(e,t){let n=Jt(e);return Math.round(t*n)/n}function Xt(e){let t=q.useRef(e);return Kt(()=>{t.current=e}),t}function Zt(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=q.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=q.useState(r);qt(f,r)||p(r);let[m,h]=q.useState(null),[g,_]=q.useState(null),v=q.useCallback(e=>{e!==S.current&&(S.current=e,h(e))},[]),y=q.useCallback(e=>{e!==C.current&&(C.current=e,_(e))},[]),b=a||m,x=o||g,S=q.useRef(null),C=q.useRef(null),w=q.useRef(u),T=c!=null,E=Xt(c),D=Xt(i),ee=Xt(l),O=q.useCallback(()=>{if(!S.current||!C.current)return;let e={placement:t,strategy:n,middleware:f};D.current&&(e.platform=D.current),Wt(S.current,C.current,e).then(e=>{let t={...e,isPositioned:ee.current!==!1};te.current&&!qt(w.current,t)&&(w.current=t,Gt.flushSync(()=>{d(t)}))})},[f,t,n,D,ee]);Kt(()=>{l===!1&&w.current.isPositioned&&(w.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let te=q.useRef(!1);Kt(()=>(te.current=!0,()=>{te.current=!1}),[]),Kt(()=>{if(b&&(S.current=b),x&&(C.current=x),b&&x){if(E.current)return E.current(b,x,O);O()}},[b,x,O,E,T]);let k=q.useMemo(()=>({reference:S,floating:C,setReference:v,setFloating:y}),[v,y]),A=q.useMemo(()=>({reference:b,floating:x}),[b,x]),ne=q.useMemo(()=>{let e={position:n,left:0,top:0};if(!A.floating)return e;let t=Yt(A.floating,u.x),r=Yt(A.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...Jt(A.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,A.floating,u.x,u.y]);return q.useMemo(()=>({...u,update:O,refs:k,elements:A,floatingStyles:ne}),[u,O,k,A,ne])}var Qt=(e,t)=>{let n=Rt(e);return{name:n.name,fn:n.fn,options:[e,t]}},$t=(e,t)=>{let n=zt(e);return{name:n.name,fn:n.fn,options:[e,t]}},en=(e,t)=>({fn:Ut(e).fn,options:[e,t]}),tn=(e,t)=>{let n=Bt(e);return{name:n.name,fn:n.fn,options:[e,t]}},nn=(e,t)=>{let n=Vt(e);return{name:n.name,fn:n.fn,options:[e,t]}},rn=(e,t)=>{let n=Ht(e);return{name:n.name,fn:n.fn,options:[e,t]}};function an(e){let{open:t=!1,onOpenChange:n,elements:i={}}=e,a=re(),o=ie()!=null,s=r(()=>new h({open:t,transitionStatus:void 0,onOpenChange:n,referenceElement:i.reference??null,floatingElement:i.floating??null,triggerElements:new w,floatingId:a,syncOnly:!1,nested:o})).current;return U(()=>{let e={open:t,floatingId:a};i.reference!==void 0&&(e.referenceElement=i.reference,e.domReferenceElement=O(i.reference)?i.reference:null),i.floating!==void 0&&(e.floatingElement=i.floating),s.update(e)},[t,a,i.reference,i.floating,s]),s.context.onOpenChange=n,s.context.nested=o,s}function on(e={}){let{nodeId:t,externalTree:n}=e,r=an(e),i=e.rootContext||r,a=i.useState(`referenceElement`),o=i.useState(`floatingElement`),s=i.useState(`domReferenceElement`),c=i.useState(`open`),l=i.useState(`floatingId`),[u,d]=q.useState(null),[f,p]=q.useState(void 0),[m,h]=q.useState(void 0),g=q.useRef(null),_=de(n),v=q.useMemo(()=>({reference:a,floating:o,domReference:s}),[a,o,s]),y=Zt({...e,elements:{...v,...u&&{reference:u}}}),b=O(f)?f:null,x=m===void 0?i.state.floatingElement:m;i.useSyncedValue(`referenceElement`,f??null),i.useSyncedValue(`domReferenceElement`,f===void 0?s:b),i.useSyncedValue(`floatingElement`,x);let S=q.useCallback(e=>{let t=O(e)?{getBoundingClientRect:()=>e.getBoundingClientRect(),getClientRects:()=>e.getClientRects(),contextElement:e}:e;d(t),y.refs.setReference(t)},[y.refs]),C=q.useCallback(e=>{(O(e)||e===null)&&(g.current=e,p(e)),(O(y.refs.reference.current)||y.refs.reference.current===null||e!==null&&!O(e))&&y.refs.setReference(e)},[y.refs,p]),w=q.useCallback(e=>{h(e),y.refs.setFloating(e)},[y.refs]),T=q.useMemo(()=>({...y.refs,setReference:C,setFloating:w,setPositionReference:S,domReference:g}),[y.refs,C,w,S]),E=q.useMemo(()=>({...y.elements,domReference:s}),[y.elements,s]),D=q.useMemo(()=>({...y,dataRef:i.context.dataRef,open:c,onOpenChange:i.setOpen,events:i.context.events,floatingId:l,refs:T,elements:E,nodeId:t,rootStore:i}),[y,T,E,t,i,c,l]);return U(()=>{s&&(g.current=s)},[s]),U(()=>{i.context.dataRef.current.floatingContext=D;let e=_?.nodesRef.current.find(e=>e.id===t);e&&(e.context=D)}),q.useMemo(()=>({...y,context:D,refs:T,elements:E,rootStore:i}),[y,T,E,D,i])}var sn=`Escape`;function cn(e,t,n){switch(e){case`vertical`:return t;case`horizontal`:return n;default:return t||n}}function ln(e,t){return cn(t,e===`ArrowUp`||e===`ArrowDown`,e===`ArrowLeft`||e===`ArrowRight`)}function un(e,t,n){return cn(t,e===`ArrowDown`,n?e===`ArrowLeft`:e===`ArrowRight`)||e===`Enter`||e===` `||e===``}function dn(e,t,n){return cn(t,n?e===k:e===j,e===_)}function fn(e,t,n,r){return t===`both`||t===`horizontal`&&r?e===sn:cn(t,n?e===j:e===k,e===g)}function pn(e,t){let{listRef:n,activeIndex:r,onNavigate:i=()=>{},enabled:a=!0,selectedIndex:o=null,allowEscape:s=!1,loopFocus:c=!1,nested:d=!1,rtl:f=!1,virtual:p=!1,focusItemOnOpen:h=`auto`,focusItemOnHover:g=!0,openOnArrowKeyDown:_=!0,disabledIndices:y=void 0,orientation:x=`vertical`,parentOrientation:C,id:w,resetOnPointerLeave:E=!0,externalTree:D,grid:O}=t,te=O!=null,k=`rootStore`in e?e.rootStore:e,j=k.useState(`open`),N=k.useState(`floatingElement`),P=k.useState(`domReferenceElement`),F=k.context.dataRef,re=T(N),ae=v(P),I=l(re),se=ie(),L=de(D),R=q.useRef(h),z=q.useRef(o??-1),ce=q.useRef(null),B=q.useRef(!0),H=V(e=>{i(z.current===-1?null:z.current,e)}),ue=q.useRef(!!N),ge=q.useRef(j),W=q.useRef(!1),G=q.useRef(!1),ve=q.useRef(null),K=l(y),xe=l(j),Se=l(o),Ce=l(E),we=he(),Te=he(),Ee=V(()=>{function e(e){p?L?.events.emit(`virtualfocus`,e):ve.current=fe(e,{sync:W.current,preventScroll:!0})}let t=n.current[z.current],r=G.current;t&&e(t),(W.current?e=>e():e=>we.request(e))(()=>{let i=n.current[z.current]||t;i&&(t||e(i),ke&&(r||!B.current)&&i.scrollIntoView?.({block:`nearest`,inline:`nearest`}))})});U(()=>{F.current.orientation=x},[F,x]),U(()=>{a&&(j&&N?(z.current=o??-1,R.current&&o!=null&&(G.current=!0,H())):ue.current&&(z.current=-1,H()))},[a,j,N,o,H]),U(()=>{if(a){if(!j){W.current=!1;return}if(N)if(r==null){if(W.current=!1,Se.current!=null)return;if(ue.current&&(z.current=-1,Ee()),(!ge.current||!ue.current)&&R.current&&(ce.current!=null||R.current===!0&&ce.current==null)){let e=0,t=()=>{n.current[0]==null?(e<2&&(e?e=>Te.request(e):queueMicrotask)(t),e+=1):(z.current=ce.current==null||un(ce.current,x,f)||d?ee(n):ye(n),ce.current=null,H())};t()}}else _e(n.current,r)||(z.current=r,Ee(),G.current=!1)}},[a,j,N,r,Se,d,n,x,f,H,Ee,Te]),U(()=>{if(!a||N||!L||p||!ue.current)return;let e=L.nodesRef.current,t=e.find(e=>e.id===se)?.context?.elements.floating,n=be(le(P??t??null)),r=e.some(e=>e.context&&u(e.context.elements.floating,n));t&&!r&&B.current&&t.focus({preventScroll:!0})},[a,N,P,L,se,p]),U(()=>{ge.current=j,ue.current=!!N}),U(()=>{j||(ce.current=null,R.current=h)},[j,h]);let De=r!=null,J=V(e=>{if(!xe.current)return;let t=n.current.indexOf(e.currentTarget);t!==-1&&(z.current!==t||r!==t)&&(z.current=t,H(e))}),Y=V(()=>C??L?.nodesRef.current.find(e=>e.id===se)?.context?.dataRef?.current.orientation),Oe=V(()=>ee(n,K.current)),X=V(e=>{if(B.current=!1,W.current=!0,e.which===229||!xe.current&&e.currentTarget===I.current)return;if(d&&fn(e.key,x,f,te)){ln(e.key,Y())||M(e),k.setOpen(!1,me(A,e.nativeEvent)),m(P)&&(p?L?.events.emit(`virtualfocus`,P):P.focus());return}let t=z.current,r=ee(n,y),i=ye(n,y);if(ae||(e.key===`Home`&&(M(e),z.current=r,H(e)),e.key===`End`&&(M(e),z.current=i,H(e))),O!=null){let t=O(e,z.current,n,x,c,f,y,r,i);if(t!=null&&(z.current=t,H(e)),x===`both`)return}if(ln(e.key,x)){if(M(e),j&&!p&&be(e.currentTarget.ownerDocument)===e.currentTarget){z.current=un(e.key,x,f)?r:i,H(e);return}un(e.key,x,f)?c?t>=i?s&&t!==n.current.length?z.current=-1:(W.current=!1,z.current=r):z.current=oe(n.current,{startingIndex:t,disabledIndices:y}):z.current=Math.min(i,oe(n.current,{startingIndex:t,disabledIndices:y})):c?t<=r?s&&t!==-1?z.current=n.current.length:(W.current=!1,z.current=i):z.current=oe(n.current,{startingIndex:t,decrement:!0,disabledIndices:y}):z.current=Math.max(r,oe(n.current,{startingIndex:t,decrement:!0,disabledIndices:y})),_e(n.current,z.current)&&(z.current=-1),H(e)}}),ke=q.useMemo(()=>({onFocus(e){W.current=!0,J(e)},onClick:({currentTarget:e})=>e.focus({preventScroll:!0}),onMouseMove(e){W.current=!0,G.current=!1,g&&J(e)},onPointerLeave(e){if(!xe.current||!B.current||e.pointerType===`touch`)return;W.current=!0;let t=e.relatedTarget;if(!(!g||n.current.includes(t))&&Ce.current&&(ve.current?.(),ve.current=null,z.current=-1,H(e),!p)){let e=I.current,t=be(le(e));e&&u(e,t)&&e.focus({preventScroll:!0})}}}),[J,xe,I,g,n,H,Ce,p]),Ae=q.useMemo(()=>p&&j&&De&&{"aria-activedescendant":`${w}-${r}`},[p,j,De,w,r]),Z=q.useMemo(()=>({"aria-orientation":x===`both`?void 0:x,...ae?{}:Ae,onKeyDown(e){if(e.key===`Tab`&&e.shiftKey&&j&&!p){let t=ne(e.nativeEvent);if(t&&!u(I.current,t))return;M(e),k.setOpen(!1,me(S,e.nativeEvent)),m(P)&&P.focus();return}X(e)},onPointerMove(){B.current=!0}}),[Ae,X,I,x,ae,k,j,p,P]),Q=q.useMemo(()=>{function e(e){k.setOpen(!0,me(A,e.nativeEvent,e.currentTarget))}function t(e){h===`auto`&&pe(e.nativeEvent)&&(R.current=!p)}function n(e){R.current=h,h===`auto`&&b(e.nativeEvent)&&(R.current=!0)}return{onKeyDown(t){let n=k.select(`open`);B.current=!1;let r=t.key.startsWith(`Arrow`),i=dn(t.key,Y(),f),a=ln(t.key,x),o=(d?i:a)||t.key===`Enter`||t.key.trim()===``;if(p&&n)return X(t);if(!(!n&&!_&&r)){if(o){let e=ln(t.key,Y());ce.current=d&&e?null:t.key}if(d){i&&(M(t),n?(z.current=Oe(),H(t)):e(t));return}a&&(Se.current!=null&&(z.current=Se.current),M(t),!n&&_?e(t):X(t),n&&H(t))}},onFocus(e){k.select(`open`)&&!p&&(z.current=-1,H(e))},onPointerDown:n,onPointerEnter:n,onMouseDown:t,onClick:t}},[X,h,Oe,d,H,k,_,x,Y,f,Se,p]),je=q.useMemo(()=>({...Ae,...Q}),[Ae,Q]);return q.useMemo(()=>a?{reference:je,floating:Z,item:ke,trigger:Q}:{},[a,je,Z,Q,ke])}function mn(e,t){let{listRef:n,elementsRef:r,activeIndex:i,onMatch:a,disabledIndices:o,onTyping:c,enabled:l=!0,resetMs:d=750,selectedIndex:p=null}=t,m=`rootStore`in e?e.rootStore:e,h=m.useState(`open`),g=P(),_=q.useRef(``),v=q.useRef(p??i??-1),y=q.useRef(null),b=V(e=>{function t(e){let t=r?.current[e];return!t||f(t)}function l(e){return t(e)?o==null||!te(s,e,o):!1}function u(e,t,n=0){if(e.length===0)return-1;let r=(n%e.length+e.length)%e.length,i=t.toLowerCase();for(let t=0;t<e.length;t+=1){let n=(r+t)%e.length;if(!(!e[n]?.toLowerCase().startsWith(i)||!l(n)))return n}return-1}let m=n.current;if(_.current.length>0&&e.key===` `&&(M(e),c?.(!0)),_.current.length>0&&_.current[0]!==` `&&u(m,_.current)===-1&&e.key!==` `&&c?.(!1),m==null||e.key.length!==1||e.ctrlKey||e.metaKey||e.altKey)return;h&&e.key!==` `&&(M(e),c?.(!0));let b=_.current===``;b&&(v.current=p??i??-1),m.every((e,t)=>e&&l(t)?e[0]?.toLowerCase()!==e[1]?.toLowerCase():!0)&&_.current===e.key&&(_.current=``,v.current=y.current),_.current+=e.key,g.start(d,()=>{_.current=``,v.current=y.current,c?.(!1)});let x=((b?p??i??-1:v.current)??0)+1,S=u(m,_.current,x);S===-1?e.key!==` `&&(_.current=``,c?.(!1)):(a?.(S),y.current=S)}),x=V(e=>{let t=e.relatedTarget,n=m.select(`domReferenceElement`),r=m.select(`floatingElement`);u(n,t)||u(r,t)||(g.clear(),_.current=``,v.current=y.current,c?.(!1))});U(()=>{!h&&p!==null||(g.clear(),y.current=null,_.current!==``&&(_.current=``))},[h,p,g]),U(()=>{h&&_.current===``&&(v.current=p??i??-1)},[h,p,i]);let S=q.useMemo(()=>({onKeyDown:b,onBlur:x}),[b,x]);return q.useMemo(()=>l?{reference:S,floating:S}:{},[l,S])}var hn=q.createContext(void 0);function gn(e){let t=q.useContext(hn);if(t===void 0&&!e)throw Error(o(69));return t}var _n=i();function vn(e){return e===`starting`?ge:n}var yn=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0,offsetParent:d=`real`}=Z(e,t)||{};if(l==null)return{};let f=Ke(u),p={x:n,y:r},m=Pe(i),h=Ne(m),g=await o.getDimensions(l),_=m===`y`,v=_?`top`:`left`,y=_?`bottom`:`right`,b=_?`clientHeight`:`clientWidth`,x=a.reference[h]+a.reference[m]-p[m]-a.floating[h],S=p[m]-a.reference[m],C=d===`real`?await o.getOffsetParent?.(l):s.floating,w=s.floating[b]||a.floating[h];(!w||!await o.isElement?.(C))&&(w=s.floating[b]||a.floating[h]);let T=x/2-S/2,E=w/2-g[h]/2-1,D=Math.min(f[v],E),ee=Math.min(f[y],E),O=D,te=w-g[h]-ee,k=w/2-g[h]/2+T,A=Ae(O,k,te),ne=!c.arrow&&je(i)!=null&&k!==A&&a.reference[h]/2-(k<O?D:ee)-g[h]/2<0,j=ne?k<O?k-O:k-te:0;return{[m]:p[m]+j,data:{[m]:A,centerOffset:k-A-j,...ne&&{alignmentOffset:j}},reset:ne}}}),bn=(e,t)=>({...yn(e),options:[e,t]}),xn=rn().fn,Sn={name:`hide`,async fn(e){let{width:t,height:n,x:r,y:i}=e.rects.reference,a=t===0&&n===0&&r===0&&i===0;return{data:{referenceHidden:(await xn(e)).data?.referenceHidden||a}}}},Cn={sideX:`left`,sideY:`top`},wn={name:`adaptiveOrigin`,async fn(e){let{x:t,y:n,rects:{floating:r},elements:{floating:i},platform:a,strategy:o,placement:s}=e,c=d(i),l=c.getComputedStyle(i);if(!(l.transitionDuration!==`0s`&&l.transitionDuration!==``))return{x:t,y:n,data:Cn};let u=await a.getOffsetParent?.(i),f={width:0,height:0};if(o===`fixed`&&c?.visualViewport)f={width:c.visualViewport.width,height:c.visualViewport.height};else if(u===c){let e=le(i);f={width:e.documentElement.clientWidth,height:e.documentElement.clientHeight}}else await a.isElement?.(u)&&(f=await a.getDimensions(u));let p=Q(s),m=t,h=n;p===`left`&&(m=f.width-(t+r.width)),p===`top`&&(h=f.height-(n+r.height));let g=p===`left`?`right`:Cn.sideX,_=p===`top`?`bottom`:Cn.sideY;return{x:m,y:h,data:{sideX:g,sideY:_}}}};function Tn(e,t,n){let r=e===`inline-start`||e===`inline-end`;return{top:`top`,right:r?n?`inline-start`:`inline-end`:`right`,bottom:`bottom`,left:r?n?`inline-end`:`inline-start`:`left`}[t]}function En(e,t,n){let{rects:r,placement:i}=e;return{side:Tn(t,Q(i),n),align:je(i)||`center`,anchor:{width:r.reference.width,height:r.reference.height},positioner:{width:r.floating.width,height:r.floating.height}}}function Dn(e){let{anchor:t,positionMethod:n=`absolute`,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,collisionBoundary:s,collisionPadding:c=5,sticky:u=!1,arrowPadding:f=5,disableAnchorTracking:p=!1,inline:m,keepMounted:h=!1,floatingRootContext:g,mounted:_,collisionAvoidance:v,shiftCrossAxis:y=!1,nodeId:b,adaptiveOrigin:x,lazyFlip:S=!1,externalTree:C}=e,[w,T]=q.useState(null);!_&&w!==null&&T(null);let E=v.side||`flip`,D=v.align||`flip`,ee=v.fallbackAxisSide||`end`,O=typeof t==`function`?t:void 0,te=V(O),k=O?te:t,A=l(t),ne=l(_),j=se()===`rtl`,M=w||{top:`top`,right:`right`,bottom:`bottom`,left:`left`,"inline-end":j?`left`:`right`,"inline-start":j?`right`:`left`}[r],N=a===`center`?M:`${M}-${a}`,P=c,F=+(r===`bottom`),re=+(r===`top`),ie=+(r===`right`),ae=+(r===`left`);typeof P==`number`?P={top:P+F,right:P+ae,bottom:P+re,left:P+ie}:P&&={top:(P.top||0)+F,right:(P.right||0)+ae,bottom:(P.bottom||0)+re,left:(P.left||0)+ie};let oe={boundary:s===`clipping-ancestors`?`clippingAncestors`:s,padding:P},I=q.useRef(null),L=l(i),R=l(o),z=typeof i==`function`?0:i,ce=typeof o==`function`?0:o,B=[];m&&B.push(m),B.push(Qt(e=>{let t=En(e,r,j),n=typeof L.current==`function`?L.current(t):L.current,i=typeof R.current==`function`?R.current(t):R.current;return{mainAxis:n,crossAxis:i,alignmentAxis:i}},[z,ce,j,r]));let H=D===`none`&&E!==`shift`,ue=!H&&(u||y||E===`shift`),de=E===`none`?null:tn({...oe,padding:{top:P.top+1,right:P.right+1,bottom:P.bottom+1,left:P.left+1},mainAxis:!y&&E===`flip`,crossAxis:D===`flip`&&`alignment`,fallbackAxisSideDirection:ee}),fe=H?null:$t(e=>{let t=le(e.elements.floating).documentElement;return{...oe,rootBoundary:y?{x:0,y:0,width:t.clientWidth,height:t.clientHeight}:void 0,mainAxis:D!==`none`,crossAxis:ue,limiter:u||y?void 0:en(e=>{if(!I.current)return{};let{width:t,height:n}=I.current.getBoundingClientRect(),r=$(Q(e.placement)),i=r===`y`?t:n,a=r===`y`?P.left+P.right:P.top+P.bottom;return{offset:i/2+a/2}})}},[oe,u,y,P,D]);E===`shift`||D===`shift`||a===`center`?B.push(fe,de):B.push(de,fe),B.push(nn({...oe,apply({elements:{floating:e},availableWidth:t,availableHeight:n,rects:r}){if(!ne.current)return;let i=e.style;i.setProperty(`--available-width`,`${t}px`),i.setProperty(`--available-height`,`${n}px`);let a=d(e).devicePixelRatio||1,{x:o,y:s,width:c,height:l}=r.reference,u=(Math.round((o+c)*a)-Math.round(o*a))/a,f=(Math.round((s+l)*a)-Math.round(s*a))/a;i.setProperty(`--anchor-width`,`${u}px`),i.setProperty(`--anchor-height`,`${f}px`)}}),bn(e=>({element:I.current||le(e.elements.floating).createElement(`div`),padding:f,offsetParent:`floating`}),[f]),{name:`transformOrigin`,fn(e){let{elements:t,middlewareData:n,placement:a,rects:o,y:s}=e,c=Q(a),l=$(c),u=I.current,d=n.arrow?.x||0,f=n.arrow?.y||0,p=u?.clientWidth||0,m=u?.clientHeight||0,h=d+p/2,g=f+m/2,_=Math.abs(n.shift?.y||0),v=o.reference.height/2,y=typeof i==`function`?i(En(e,r,j)):i,b=_>y,x={top:`${h}px calc(100% + ${y}px)`,bottom:`${h}px ${-y}px`,left:`calc(100% + ${y}px) ${g}px`,right:`${-y}px ${g}px`}[c],S=`${h}px ${o.reference.y+v-s}px`;return t.floating.style.setProperty(`--transform-origin`,ue&&l===`y`&&b?S:x),{}}},Sn,x),U(()=>{!_&&g&&g.update({referenceElement:null,floatingElement:null,domReferenceElement:null,positionReference:null})},[_,g]);let pe=q.useMemo(()=>({elementResize:!p&&typeof ResizeObserver<`u`,layoutShift:!p&&typeof IntersectionObserver<`u`}),[p]),{refs:me,elements:he,x:ge,y:W,middlewareData:G,update:_e,placement:ve,context:ye,isPositioned:K,floatingStyles:be}=on({rootContext:g,open:h?_:void 0,placement:N,middleware:B,strategy:n,whileElementsMounted:h?void 0:(...e)=>Lt(...e,pe),nodeId:b,externalTree:C}),{sideX:xe,sideY:Se}=G.adaptiveOrigin||Cn,Ce=K?n:`fixed`,we=q.useMemo(()=>{let e=x?{position:Ce,[xe]:ge,[Se]:W}:{position:Ce,...be};return K||(e.opacity=0),e},[x,Ce,xe,ge,Se,W,be,K]),Te=q.useRef(null);U(()=>{if(!_)return;let e=A.current,t=typeof e==`function`?e():e,n=(On(t)?t.current:t)||null;n!==Te.current&&(me.setPositionReference(n),Te.current=n)},[_,me,k,A]),q.useEffect(()=>{if(!_)return;let e=A.current;typeof e!=`function`&&On(e)&&e.current!==Te.current&&(me.setPositionReference(e.current),Te.current=e.current)},[_,me,k,A]),q.useEffect(()=>{if(h&&_&&he.reference&&he.floating)return Lt(he.reference,he.floating,_e,pe)},[h,_,he,_e,pe]);let Ee=Q(ve),De=Tn(r,Ee,j),J=je(ve)||`center`,Y=!!G.hide?.referenceHidden;U(()=>{S&&_&&K&&T(Ee)},[S,_,K,Ee]);let Oe=q.useMemo(()=>({position:`absolute`,top:G.arrow?.y,left:G.arrow?.x}),[G.arrow]),X=G.arrow?.centerOffset!==0;return q.useMemo(()=>({positionerStyles:we,arrowStyles:Oe,arrowRef:I,arrowUncentered:X,side:De,align:J,physicalSide:Ee,anchorHidden:Y,refs:me,context:ye,isPositioned:K,update:_e}),[we,Oe,I,X,De,J,Ee,Y,me,ye,K,_e])}function On(e){return e!=null&&`current`in e}function kn(e){let{children:t,elementsRef:n,labelsRef:i,onMapChange:a}=e,o=V(a),s=q.useRef(0),c=r(jn).current,l=r(An).current,[u,d]=q.useState(0),f=q.useRef(u),p=V((e,t)=>{l.set(e,t??null),f.current+=1,d(f.current)}),m=V(e=>{l.delete(e),f.current+=1,d(f.current)}),h=q.useMemo(()=>{let e=new Map;return Array.from(l.keys()).filter(e=>e.isConnected).sort(Mn).forEach((t,n)=>{let r=l.get(t)??{};e.set(t,{...r,index:n})}),e},[l,u]);U(()=>{if(typeof MutationObserver!=`function`||h.size===0)return;let e=new MutationObserver(e=>{let t=new Set,n=e=>t.has(e)?t.delete(e):t.add(e);e.forEach(e=>{e.removedNodes.forEach(n),e.addedNodes.forEach(n)}),t.size===0&&(f.current+=1,d(f.current))});return h.forEach((t,n)=>{n.parentElement&&e.observe(n.parentElement,{childList:!0})}),()=>{e.disconnect()}},[h]),U(()=>{f.current===u&&(n.current.length!==h.size&&(n.current.length=h.size),i&&i.current.length!==h.size&&(i.current.length=h.size),s.current=h.size),o(h)},[o,h,n,i,u]),U(()=>()=>{n.current=[]},[n]),U(()=>()=>{i&&(i.current=[])},[i]);let g=V(e=>(c.add(e),()=>{c.delete(e)}));U(()=>{c.forEach(e=>e(h))},[c,h]);let _=q.useMemo(()=>({register:p,unregister:m,subscribeMapChange:g,elementsRef:n,labelsRef:i,nextIndexRef:s}),[p,m,g,n,i,s]);return(0,_n.jsx)(Se.Provider,{value:_,children:t})}function An(){return new Map}function jn(){return new Set}function Mn(e,t){let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING||n&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:n&Node.DOCUMENT_POSITION_PRECEDING||n&Node.DOCUMENT_POSITION_CONTAINS?1:0}function Nn(e,t,{styles:n,transitionStatus:r,props:i,refs:o,hidden:s,inert:c=!1}){let l={...n};return c&&(l.pointerEvents=`none`),a(`div`,e,{state:t,ref:o,props:[{role:`presentation`,hidden:s,style:l},vn(r),i],stateAttributesMapping:N})}var Pn=20;function Fn(e,t,n,r){let[i,a]=q.useState(!1);U(()=>{if(!e||!t||n==null){a(!1);return}let r=le(n).documentElement.clientWidth,i=n.offsetWidth;a(r>0&&i>0&&i>=r-Pn)},[e,t,n]),B(e&&(!t||i),r)}function In(e){let t=q.useRef(``),n=q.useCallback(n=>{n.defaultPrevented||(t.current=n.pointerType,e(n,n.pointerType))},[e]);return{onClick:q.useCallback(n=>{if(n.detail===0){e(n,`keyboard`);return}`pointerType`in n?e(n,n.pointerType):e(n,t.current),t.current=``},[e]),onPointerDown:n}}function Ln(e,t){let{onClick:n,onPointerDown:r}=In(V((n,r)=>{(typeof e==`function`?e():e)||t(r||(I?`touch`:``))}));return q.useMemo(()=>({onClick:n,onPointerDown:r}),[n,r])}function Rn(e){let[t,n]=q.useState(null),r=Ln(e,n);return xe(e,t=>{t&&!e&&n(null)}),q.useMemo(()=>({openMethod:t,triggerProps:r}),[t,r])}function zn(e){let t=e.getBoundingClientRect(),n=d(e);if(ue)return t;let r=n.getComputedStyle(e,`::before`),i=n.getComputedStyle(e,`::after`);if(!(r.content!==`none`||i.content!==`none`))return t;let a=parseFloat(r.width)||0,o=parseFloat(r.height)||0,s=parseFloat(i.width)||0,c=parseFloat(i.height)||0,l=Math.max(t.width,a,s),u=Math.max(t.height,o,c),f=l-t.width,p=u-t.height;return{left:t.left-f/2,right:t.right+f/2,top:t.top-p/2,bottom:t.bottom+p/2}}function Bn(e){let[t,n]=q.useState({current:e,previous:null});return e!==t.current&&n({current:e,previous:t.current}),t.previous}function Vn(e){return e==null||e.hasAttribute(`disabled`)||e.getAttribute(`aria-disabled`)===`true`}export{Je as _,Ln as a,we as b,kn as c,vn as d,gn as f,Pt as g,an as h,Rn as i,Dn as l,pn as m,Bn as n,Fn as o,mn as p,zn as r,Nn as s,Vn as t,wn as u,qe as v,Te as x,Y as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{m as e,o as t,r as n}from"./button-BDDZnIHx.js";function r({className:r,render:i,...a}){return n({defaultTagName:`label`,props:t({className:e(`inline-flex items-center gap-2 text-base/4.5 sm:text-sm/4 font-medium text-foreground`,r),"data-slot":`label`},a),render:i})}export{r as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e}from"./button-BDDZnIHx.js";var t=e(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),n=e(`database`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]),r=e(`file-text`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),i=e(`flask-conical`,[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]),a=e(`git-pull-request`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`line`,{x1:`6`,x2:`6`,y1:`9`,y2:`21`,key:`rroup`}]]),o=e(`layers`,[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]]),s=e(`package`,[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]),c=e(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),l=e(`square-check-big`,[[`path`,{d:`M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344`,key:`2acyp4`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),u=e(`square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]);export{o as a,r as c,s as i,n as l,l as n,a as o,c as r,i as s,u as t,t as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as e,m as t,o as n}from"./button-BDDZnIHx.js";import{s as r}from"./CSPContext-DBUu9tE0.js";var i=e();function a({className:e,size:a=`default`,unstyled:o=!1,...s}){return(0,i.jsx)(`span`,{className:t(!o&&`relative inline-flex w-full rounded-lg border border-input bg-background not-dark:bg-clip-padding text-base text-foreground shadow-xs/5 ring-ring/24 transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] has-focus-visible:has-aria-invalid:border-destructive/64 has-focus-visible:has-aria-invalid:ring-destructive/16 has-aria-invalid:border-destructive/36 has-focus-visible:border-ring has-disabled:opacity-64 has-[:disabled,:focus-visible,[aria-invalid]]:shadow-none has-focus-visible:ring-[3px] not-has-disabled:has-not-focus-visible:not-has-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] sm:text-sm dark:bg-input/32 dark:has-aria-invalid:ring-destructive/24 dark:not-has-disabled:has-not-focus-visible:not-has-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)]`,e)||void 0,"data-size":a,"data-slot":`textarea-control`,children:(0,i.jsx)(r,{render:e=>(0,i.jsx)(`textarea`,{className:t(`field-sizing-content min-h-17.5 w-full rounded-[inherit] px-[calc(--spacing(3)-1px)] py-[calc(--spacing(1.5)-1px)] outline-none max-sm:min-h-20.5`,a===`sm`&&`min-h-16.5 px-[calc(--spacing(2.5)-1px)] py-[calc(--spacing(1)-1px)] max-sm:min-h-19.5`,a===`lg`&&`min-h-18.5 py-[calc(--spacing(2)-1px)] max-sm:min-h-21.5`),"data-slot":`textarea`,...n(e,s)})})})}export{a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as e,b as t}from"./button-BDDZnIHx.js";import{in as n,pn as r}from"./CSPContext-DBUu9tE0.js";var i=t(e(),1);function a(e,t,a,s=!0,c){let[l,u]=i.useState(),d=n(c?`${c}-label`:void 0),f=e??t??l;return r(()=>{let n=e||t||!s?void 0:o(a.current,d);l!==n&&u(n)}),f}function o(e,t){let n=s(e);if(n)return!n.id&&t&&(n.id=t),n.id||void 0}function s(e){if(!e)return;let t=e.parentElement;if(t&&t.tagName===`LABEL`)return t;let n=e.id;if(n){let t=e.nextElementSibling;if(t&&t.htmlFor===n)return t}let r=e.labels;return r&&r[0]}export{a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as e,b as t}from"./button-BDDZnIHx.js";import{mn as n,pn as r}from"./CSPContext-DBUu9tE0.js";var i=t(e(),1);function a(e,t){let a=i.useRef(e),o=n(t);r(()=>{a.current!==e&&o(a.current)},[e,o]),r(()=>{a.current=e},[e])}export{a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e}from"./button-BDDZnIHx.js";var t=e(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]);export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contract.test.d.ts","sourceRoot":"","sources":["../../src/harness/contract.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,426 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it, vi } from 'vitest';
|
|
2
|
-
import { ClaudeCodeAdapter } from './claude.js';
|
|
3
|
-
import { CodexAdapter } from './codex.js';
|
|
4
|
-
describe('Harness Contract Test Suite (Issue #174)', () => {
|
|
5
|
-
describe('ClaudeCodeAdapter Contract', () => {
|
|
6
|
-
it('resolves lazy sessionId and normalizes stream events and usage', async () => {
|
|
7
|
-
async function* fakeQuery() {
|
|
8
|
-
yield {
|
|
9
|
-
type: 'system',
|
|
10
|
-
subtype: 'init',
|
|
11
|
-
session_id: '123e4567-e89b-12d3-a456-426614174000',
|
|
12
|
-
};
|
|
13
|
-
yield {
|
|
14
|
-
type: 'stream_event',
|
|
15
|
-
event: {
|
|
16
|
-
type: 'content_block_delta',
|
|
17
|
-
delta: { type: 'text_delta', text: 'Hello from Claude' },
|
|
18
|
-
},
|
|
19
|
-
};
|
|
20
|
-
yield {
|
|
21
|
-
type: 'assistant',
|
|
22
|
-
message: {
|
|
23
|
-
content: [{ type: 'text', text: 'Hello from Claude' }],
|
|
24
|
-
},
|
|
25
|
-
};
|
|
26
|
-
yield {
|
|
27
|
-
type: 'result',
|
|
28
|
-
subtype: 'success',
|
|
29
|
-
result: 'Hello from Claude',
|
|
30
|
-
total_cost_usd: 0.002,
|
|
31
|
-
usage: {
|
|
32
|
-
input_tokens: 120,
|
|
33
|
-
output_tokens: 30,
|
|
34
|
-
cache_read_input_tokens: 40,
|
|
35
|
-
},
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
const mockQueryFn = vi.fn().mockReturnValue(fakeQuery());
|
|
39
|
-
const adapter = new ClaudeCodeAdapter(undefined, mockQueryFn);
|
|
40
|
-
const handle = await adapter.start({
|
|
41
|
-
prompt: 'Say hello',
|
|
42
|
-
workspace: { workspaceId: 'test-ws', rootPath: 'C:/test' },
|
|
43
|
-
env: { ANTHROPIC_API_KEY: 'sk-ant-test' },
|
|
44
|
-
});
|
|
45
|
-
const sessionId = await handle.sessionId();
|
|
46
|
-
expect(sessionId).toBe('123e4567-e89b-12d3-a456-426614174000');
|
|
47
|
-
const events = [];
|
|
48
|
-
for await (const ev of handle.events) {
|
|
49
|
-
events.push(ev);
|
|
50
|
-
if (ev.type === 'turn_completed')
|
|
51
|
-
break;
|
|
52
|
-
}
|
|
53
|
-
expect(events).toContainEqual({
|
|
54
|
-
type: 'session_started',
|
|
55
|
-
sessionId: '123e4567-e89b-12d3-a456-426614174000',
|
|
56
|
-
});
|
|
57
|
-
expect(events).toContainEqual({
|
|
58
|
-
type: 'text_delta',
|
|
59
|
-
text: 'Hello from Claude',
|
|
60
|
-
});
|
|
61
|
-
expect(events).toContainEqual({
|
|
62
|
-
type: 'assistant_message',
|
|
63
|
-
text: 'Hello from Claude',
|
|
64
|
-
});
|
|
65
|
-
expect(events).toContainEqual({
|
|
66
|
-
type: 'turn_completed',
|
|
67
|
-
usage: {
|
|
68
|
-
inputTokens: 120,
|
|
69
|
-
outputTokens: 30,
|
|
70
|
-
cachedInputTokens: 40,
|
|
71
|
-
costUsdEstimate: 0.002,
|
|
72
|
-
},
|
|
73
|
-
});
|
|
74
|
-
await handle.dispose();
|
|
75
|
-
});
|
|
76
|
-
it('cancels active turn cleanly on handle.interrupt() via AbortController', async () => {
|
|
77
|
-
let aborted = false;
|
|
78
|
-
async function* fakeLongQuery(args) {
|
|
79
|
-
const signal = args.options.abortController.signal;
|
|
80
|
-
signal.addEventListener('abort', () => {
|
|
81
|
-
aborted = true;
|
|
82
|
-
});
|
|
83
|
-
yield {
|
|
84
|
-
type: 'system',
|
|
85
|
-
subtype: 'init',
|
|
86
|
-
session_id: '123e4567-e89b-12d3-a456-426614174000',
|
|
87
|
-
};
|
|
88
|
-
yield {
|
|
89
|
-
type: 'stream_event',
|
|
90
|
-
event: {
|
|
91
|
-
type: 'content_block_delta',
|
|
92
|
-
delta: { type: 'text_delta', text: 'Starting long task...' },
|
|
93
|
-
},
|
|
94
|
-
};
|
|
95
|
-
// Simulate waiting for abort
|
|
96
|
-
while (!signal.aborted) {
|
|
97
|
-
await new Promise((r) => setTimeout(r, 10));
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
const mockQueryFn = vi.fn().mockImplementation((args) => fakeLongQuery(args));
|
|
101
|
-
const adapter = new ClaudeCodeAdapter(undefined, mockQueryFn);
|
|
102
|
-
const handle = await adapter.start({
|
|
103
|
-
prompt: 'Long running task',
|
|
104
|
-
workspace: { workspaceId: 'test-ws', rootPath: 'C:/test' },
|
|
105
|
-
env: { ANTHROPIC_API_KEY: 'sk-ant-test' },
|
|
106
|
-
});
|
|
107
|
-
await handle.interrupt();
|
|
108
|
-
expect(aborted).toBe(true);
|
|
109
|
-
await handle.dispose();
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
describe('CodexAdapter Contract & MCP Smoke Test', () => {
|
|
113
|
-
it('executes Codex thread lifecycle, maps MCP tool items, and normalizes usage', async () => {
|
|
114
|
-
async function* fakeStream() {
|
|
115
|
-
yield {
|
|
116
|
-
type: 'thread.started',
|
|
117
|
-
thread_id: 'codex-thread-12345',
|
|
118
|
-
};
|
|
119
|
-
yield {
|
|
120
|
-
type: 'item.completed',
|
|
121
|
-
item: {
|
|
122
|
-
id: 'mcp-call-1',
|
|
123
|
-
type: 'mcp_tool_call',
|
|
124
|
-
server: 'nexusflow',
|
|
125
|
-
tool: 'list_repos',
|
|
126
|
-
arguments: {},
|
|
127
|
-
status: 'completed',
|
|
128
|
-
result: {
|
|
129
|
-
content: [{ type: 'text', text: '["repo1"]' }],
|
|
130
|
-
structured_content: ['repo1'],
|
|
131
|
-
},
|
|
132
|
-
},
|
|
133
|
-
};
|
|
134
|
-
yield {
|
|
135
|
-
type: 'item.completed',
|
|
136
|
-
item: {
|
|
137
|
-
id: 'agent-msg-1',
|
|
138
|
-
type: 'agent_message',
|
|
139
|
-
text: 'Found 1 repo in workspace.',
|
|
140
|
-
},
|
|
141
|
-
};
|
|
142
|
-
yield {
|
|
143
|
-
type: 'turn.completed',
|
|
144
|
-
usage: {
|
|
145
|
-
input_tokens: 200,
|
|
146
|
-
output_tokens: 50,
|
|
147
|
-
cached_input_tokens: 100,
|
|
148
|
-
},
|
|
149
|
-
};
|
|
150
|
-
}
|
|
151
|
-
const mockThread = {
|
|
152
|
-
id: 'codex-thread-12345',
|
|
153
|
-
runStreamed: vi.fn().mockResolvedValue({ events: fakeStream() }),
|
|
154
|
-
};
|
|
155
|
-
const mockClient = {
|
|
156
|
-
startThread: vi.fn().mockReturnValue(mockThread),
|
|
157
|
-
};
|
|
158
|
-
const adapter = new CodexAdapter({}, () => mockClient);
|
|
159
|
-
const handle = await adapter.start({
|
|
160
|
-
prompt: 'List repos via MCP',
|
|
161
|
-
workspace: { workspaceId: 'test-ws', rootPath: 'C:/test' },
|
|
162
|
-
env: { OPENAI_API_KEY: 'sk-test' },
|
|
163
|
-
mcpServers: {
|
|
164
|
-
nexusflow: {
|
|
165
|
-
command: process.execPath,
|
|
166
|
-
args: ['mcp', 'run'],
|
|
167
|
-
},
|
|
168
|
-
},
|
|
169
|
-
});
|
|
170
|
-
const sessionId = await handle.sessionId();
|
|
171
|
-
expect(sessionId).toBe('codex-thread-12345');
|
|
172
|
-
const events = [];
|
|
173
|
-
for await (const ev of handle.events) {
|
|
174
|
-
events.push(ev);
|
|
175
|
-
if (ev.type === 'turn_completed')
|
|
176
|
-
break;
|
|
177
|
-
}
|
|
178
|
-
expect(events).toContainEqual({
|
|
179
|
-
type: 'session_started',
|
|
180
|
-
sessionId: 'codex-thread-12345',
|
|
181
|
-
});
|
|
182
|
-
expect(events).toContainEqual({
|
|
183
|
-
type: 'tool_completed',
|
|
184
|
-
callId: 'mcp-call-1',
|
|
185
|
-
ok: true,
|
|
186
|
-
outputSummary: undefined,
|
|
187
|
-
});
|
|
188
|
-
expect(events).toContainEqual({
|
|
189
|
-
type: 'assistant_message',
|
|
190
|
-
text: 'Found 1 repo in workspace.',
|
|
191
|
-
});
|
|
192
|
-
expect(events).toContainEqual({
|
|
193
|
-
type: 'turn_completed',
|
|
194
|
-
usage: {
|
|
195
|
-
inputTokens: 200,
|
|
196
|
-
outputTokens: 50,
|
|
197
|
-
cachedInputTokens: 100,
|
|
198
|
-
},
|
|
199
|
-
});
|
|
200
|
-
await handle.dispose();
|
|
201
|
-
});
|
|
202
|
-
it('keeps the handle stream open for a queued follow-up turn', async () => {
|
|
203
|
-
let finishFirstTurn;
|
|
204
|
-
let finishSecondTurn;
|
|
205
|
-
const firstTurnFinished = new Promise((resolve) => {
|
|
206
|
-
finishFirstTurn = resolve;
|
|
207
|
-
});
|
|
208
|
-
const secondTurnFinished = new Promise((resolve) => {
|
|
209
|
-
finishSecondTurn = resolve;
|
|
210
|
-
});
|
|
211
|
-
async function* firstTurn() {
|
|
212
|
-
try {
|
|
213
|
-
yield {
|
|
214
|
-
type: 'thread.started',
|
|
215
|
-
thread_id: 'codex-thread-multi-turn',
|
|
216
|
-
};
|
|
217
|
-
yield {
|
|
218
|
-
type: 'item.completed',
|
|
219
|
-
item: {
|
|
220
|
-
id: 'agent-msg-first',
|
|
221
|
-
type: 'agent_message',
|
|
222
|
-
text: 'First response',
|
|
223
|
-
},
|
|
224
|
-
};
|
|
225
|
-
yield {
|
|
226
|
-
type: 'turn.completed',
|
|
227
|
-
usage: { input_tokens: 10, output_tokens: 2 },
|
|
228
|
-
};
|
|
229
|
-
}
|
|
230
|
-
finally {
|
|
231
|
-
finishFirstTurn();
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
async function* secondTurn() {
|
|
235
|
-
try {
|
|
236
|
-
yield {
|
|
237
|
-
type: 'item.completed',
|
|
238
|
-
item: {
|
|
239
|
-
id: 'agent-msg-second',
|
|
240
|
-
type: 'agent_message',
|
|
241
|
-
text: 'Second response',
|
|
242
|
-
},
|
|
243
|
-
};
|
|
244
|
-
yield {
|
|
245
|
-
type: 'turn.completed',
|
|
246
|
-
usage: { input_tokens: 12, output_tokens: 3 },
|
|
247
|
-
};
|
|
248
|
-
}
|
|
249
|
-
finally {
|
|
250
|
-
finishSecondTurn();
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
const runStreamed = vi.fn()
|
|
254
|
-
.mockResolvedValueOnce({ events: firstTurn() })
|
|
255
|
-
.mockResolvedValueOnce({ events: secondTurn() });
|
|
256
|
-
const mockThread = {
|
|
257
|
-
id: 'codex-thread-multi-turn',
|
|
258
|
-
runStreamed,
|
|
259
|
-
};
|
|
260
|
-
const mockClient = {
|
|
261
|
-
startThread: vi.fn().mockReturnValue(mockThread),
|
|
262
|
-
};
|
|
263
|
-
const adapter = new CodexAdapter({}, () => mockClient);
|
|
264
|
-
const handle = await adapter.start({
|
|
265
|
-
prompt: 'First prompt',
|
|
266
|
-
workspace: { workspaceId: 'test-ws', rootPath: 'C:/test' },
|
|
267
|
-
env: { OPENAI_API_KEY: 'sk-test' },
|
|
268
|
-
});
|
|
269
|
-
const events = handle.events[Symbol.asyncIterator]();
|
|
270
|
-
try {
|
|
271
|
-
await expect(events.next()).resolves.toEqual({
|
|
272
|
-
done: false,
|
|
273
|
-
value: { type: 'session_started', sessionId: 'codex-thread-multi-turn' },
|
|
274
|
-
});
|
|
275
|
-
await expect(events.next()).resolves.toEqual({
|
|
276
|
-
done: false,
|
|
277
|
-
value: { type: 'assistant_message', text: 'First response' },
|
|
278
|
-
});
|
|
279
|
-
await expect(events.next()).resolves.toMatchObject({
|
|
280
|
-
done: false,
|
|
281
|
-
value: { type: 'turn_completed' },
|
|
282
|
-
});
|
|
283
|
-
await firstTurnFinished;
|
|
284
|
-
await new Promise((resolve) => setImmediate(resolve));
|
|
285
|
-
handle.send('Second prompt');
|
|
286
|
-
await expect(events.next()).resolves.toEqual({
|
|
287
|
-
done: false,
|
|
288
|
-
value: { type: 'assistant_message', text: 'Second response' },
|
|
289
|
-
});
|
|
290
|
-
await expect(events.next()).resolves.toMatchObject({
|
|
291
|
-
done: false,
|
|
292
|
-
value: { type: 'turn_completed' },
|
|
293
|
-
});
|
|
294
|
-
await secondTurnFinished;
|
|
295
|
-
await new Promise((resolve) => setImmediate(resolve));
|
|
296
|
-
expect(runStreamed).toHaveBeenNthCalledWith(1, 'First prompt', expect.any(Object));
|
|
297
|
-
expect(runStreamed).toHaveBeenNthCalledWith(2, 'Second prompt', expect.any(Object));
|
|
298
|
-
const pendingNext = events.next();
|
|
299
|
-
const stateBeforeDispose = await Promise.race([
|
|
300
|
-
pendingNext.then(() => 'settled'),
|
|
301
|
-
new Promise((resolve) => setTimeout(() => resolve('pending'), 25)),
|
|
302
|
-
]);
|
|
303
|
-
expect(stateBeforeDispose).toBe('pending');
|
|
304
|
-
await handle.dispose();
|
|
305
|
-
await expect(pendingNext).resolves.toEqual({ done: true, value: undefined });
|
|
306
|
-
}
|
|
307
|
-
finally {
|
|
308
|
-
await handle.dispose();
|
|
309
|
-
}
|
|
310
|
-
});
|
|
311
|
-
it('applies model and native thread options when resuming a Codex thread', async () => {
|
|
312
|
-
const mockThread = {
|
|
313
|
-
id: 'codex-thread-resumed',
|
|
314
|
-
runStreamed: vi.fn(),
|
|
315
|
-
};
|
|
316
|
-
const mockClient = {
|
|
317
|
-
resumeThread: vi.fn().mockReturnValue(mockThread),
|
|
318
|
-
};
|
|
319
|
-
const adapter = new CodexAdapter({}, () => mockClient);
|
|
320
|
-
const handle = await adapter.resume({
|
|
321
|
-
sessionId: 'codex-thread-resumed',
|
|
322
|
-
mode: 'resume',
|
|
323
|
-
workspace: { workspaceId: 'test-ws', rootPath: 'C:/test' },
|
|
324
|
-
env: { OPENAI_API_KEY: 'sk-test' },
|
|
325
|
-
model: 'gpt-5.6-terra',
|
|
326
|
-
nativeOptions: { sandboxMode: 'read-only' },
|
|
327
|
-
});
|
|
328
|
-
expect(mockClient.resumeThread).toHaveBeenCalledWith('codex-thread-resumed', {
|
|
329
|
-
model: 'gpt-5.6-terra',
|
|
330
|
-
sandboxMode: 'read-only',
|
|
331
|
-
});
|
|
332
|
-
expect(mockThread.runStreamed).not.toHaveBeenCalled();
|
|
333
|
-
await handle.dispose();
|
|
334
|
-
});
|
|
335
|
-
it('cancels active Codex turn on handle.interrupt() via AbortSignal', async () => {
|
|
336
|
-
let aborted = false;
|
|
337
|
-
async function* fakeLongStream(signal) {
|
|
338
|
-
if (signal) {
|
|
339
|
-
signal.addEventListener('abort', () => {
|
|
340
|
-
aborted = true;
|
|
341
|
-
});
|
|
342
|
-
}
|
|
343
|
-
yield {
|
|
344
|
-
type: 'thread.started',
|
|
345
|
-
thread_id: 'codex-thread-abort',
|
|
346
|
-
};
|
|
347
|
-
while (!signal?.aborted) {
|
|
348
|
-
await new Promise((r) => setTimeout(r, 10));
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
const mockThread = {
|
|
352
|
-
id: 'codex-thread-abort',
|
|
353
|
-
runStreamed: vi.fn().mockImplementation((_prompt, opts) => {
|
|
354
|
-
return Promise.resolve({ events: fakeLongStream(opts?.signal) });
|
|
355
|
-
}),
|
|
356
|
-
};
|
|
357
|
-
const mockClient = {
|
|
358
|
-
startThread: vi.fn().mockReturnValue(mockThread),
|
|
359
|
-
};
|
|
360
|
-
const adapter = new CodexAdapter({}, () => mockClient);
|
|
361
|
-
const handle = await adapter.start({
|
|
362
|
-
prompt: 'Long running codex task',
|
|
363
|
-
workspace: { workspaceId: 'test-ws', rootPath: 'C:/test' },
|
|
364
|
-
env: { OPENAI_API_KEY: 'sk-test' },
|
|
365
|
-
});
|
|
366
|
-
await handle.interrupt();
|
|
367
|
-
expect(aborted).toBe(true);
|
|
368
|
-
await handle.dispose();
|
|
369
|
-
});
|
|
370
|
-
it('does not run queued or later prompts after an interrupted turn fails fatally', async () => {
|
|
371
|
-
let streamWaiting;
|
|
372
|
-
const streamIsWaiting = new Promise((resolve) => {
|
|
373
|
-
streamWaiting = resolve;
|
|
374
|
-
});
|
|
375
|
-
async function* interruptedStream(signal) {
|
|
376
|
-
yield {
|
|
377
|
-
type: 'thread.started',
|
|
378
|
-
thread_id: 'codex-thread-interrupted',
|
|
379
|
-
};
|
|
380
|
-
await new Promise((_resolve, reject) => {
|
|
381
|
-
const fail = () => reject(new Error('turn aborted'));
|
|
382
|
-
if (signal?.aborted) {
|
|
383
|
-
fail();
|
|
384
|
-
return;
|
|
385
|
-
}
|
|
386
|
-
signal?.addEventListener('abort', fail, { once: true });
|
|
387
|
-
streamWaiting();
|
|
388
|
-
});
|
|
389
|
-
}
|
|
390
|
-
const runStreamed = vi.fn().mockImplementation((_prompt, opts) => (Promise.resolve({ events: interruptedStream(opts?.signal) })));
|
|
391
|
-
const mockThread = {
|
|
392
|
-
id: 'codex-thread-interrupted',
|
|
393
|
-
runStreamed,
|
|
394
|
-
};
|
|
395
|
-
const mockClient = {
|
|
396
|
-
startThread: vi.fn().mockReturnValue(mockThread),
|
|
397
|
-
};
|
|
398
|
-
const adapter = new CodexAdapter({}, () => mockClient);
|
|
399
|
-
const handle = await adapter.start({
|
|
400
|
-
prompt: 'Active prompt',
|
|
401
|
-
workspace: { workspaceId: 'test-ws', rootPath: 'C:/test' },
|
|
402
|
-
env: { OPENAI_API_KEY: 'sk-test' },
|
|
403
|
-
});
|
|
404
|
-
const events = handle.events[Symbol.asyncIterator]();
|
|
405
|
-
await expect(events.next()).resolves.toEqual({
|
|
406
|
-
done: false,
|
|
407
|
-
value: { type: 'session_started', sessionId: 'codex-thread-interrupted' },
|
|
408
|
-
});
|
|
409
|
-
await streamIsWaiting;
|
|
410
|
-
handle.send('Queued follow-up');
|
|
411
|
-
await handle.interrupt();
|
|
412
|
-
await expect(events.next()).resolves.toMatchObject({
|
|
413
|
-
done: false,
|
|
414
|
-
value: { type: 'turn_failed', fatal: true },
|
|
415
|
-
});
|
|
416
|
-
await expect(events.next()).resolves.toEqual({ done: true, value: undefined });
|
|
417
|
-
await new Promise((resolve) => setImmediate(resolve));
|
|
418
|
-
expect(runStreamed).toHaveBeenCalledTimes(1);
|
|
419
|
-
handle.send('Prompt after fatal failure');
|
|
420
|
-
await new Promise((resolve) => setImmediate(resolve));
|
|
421
|
-
expect(runStreamed).toHaveBeenCalledTimes(1);
|
|
422
|
-
await handle.dispose();
|
|
423
|
-
});
|
|
424
|
-
});
|
|
425
|
-
});
|
|
426
|
-
//# sourceMappingURL=contract.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contract.test.js","sourceRoot":"","sources":["../../src/harness/contract.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"harness.test.d.ts","sourceRoot":"","sources":["../../src/harness/harness.test.ts"],"names":[],"mappings":""}
|