agent-tower 0.7.2-beta.7 → 0.7.2
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/dist/app.d.ts.map +1 -1
- package/dist/app.js +4 -1
- package/dist/app.js.map +1 -1
- package/dist/app.test.js +80 -1
- package/dist/app.test.js.map +1 -1
- package/dist/cli.js +4 -10
- package/dist/cli.js.map +1 -1
- package/dist/core/container.d.ts +8 -0
- package/dist/core/container.d.ts.map +1 -1
- package/dist/core/container.js +42 -0
- package/dist/core/container.js.map +1 -1
- package/dist/core/event-bus.d.ts +2 -0
- package/dist/core/event-bus.d.ts.map +1 -1
- package/dist/core/event-bus.js.map +1 -1
- package/dist/executors/__tests__/image-utils.test.d.ts +2 -0
- package/dist/executors/__tests__/image-utils.test.d.ts.map +1 -0
- package/dist/executors/__tests__/image-utils.test.js +25 -0
- package/dist/executors/__tests__/image-utils.test.js.map +1 -0
- package/dist/executors/base.executor.d.ts +2 -0
- package/dist/executors/base.executor.d.ts.map +1 -1
- package/dist/executors/base.executor.js +6 -0
- package/dist/executors/base.executor.js.map +1 -1
- package/dist/executors/image-utils.d.ts.map +1 -1
- package/dist/executors/image-utils.js +10 -8
- package/dist/executors/image-utils.js.map +1 -1
- package/dist/git/git-cli.d.ts +2 -0
- package/dist/git/git-cli.d.ts.map +1 -1
- package/dist/git/git-cli.js +2 -0
- package/dist/git/git-cli.js.map +1 -1
- package/dist/git/worktree.manager.d.ts +2 -1
- package/dist/git/worktree.manager.d.ts.map +1 -1
- package/dist/git/worktree.manager.js +18 -12
- package/dist/git/worktree.manager.js.map +1 -1
- package/dist/index.js +16 -31
- package/dist/index.js.map +1 -1
- package/dist/mcp/http-client.d.ts +1 -0
- package/dist/mcp/http-client.d.ts.map +1 -1
- package/dist/mcp/http-client.js +3 -0
- package/dist/mcp/http-client.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +15 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools/sessions.js +2 -2
- package/dist/mcp/tools/sessions.js.map +1 -1
- package/dist/mcp/tools/workspaces.d.ts.map +1 -1
- package/dist/mcp/tools/workspaces.js +2 -1
- package/dist/mcp/tools/workspaces.js.map +1 -1
- package/dist/middleware/access-auth.d.ts +1 -0
- package/dist/middleware/access-auth.d.ts.map +1 -1
- package/dist/middleware/access-auth.js +1 -1
- package/dist/middleware/access-auth.js.map +1 -1
- package/dist/output/__tests__/text-block-lifecycle.test.d.ts +2 -0
- package/dist/output/__tests__/text-block-lifecycle.test.d.ts.map +1 -0
- package/dist/output/__tests__/text-block-lifecycle.test.js +241 -0
- package/dist/output/__tests__/text-block-lifecycle.test.js.map +1 -0
- package/dist/output/claude-code-parser.d.ts +3 -0
- package/dist/output/claude-code-parser.d.ts.map +1 -1
- package/dist/output/claude-code-parser.js +58 -7
- package/dist/output/claude-code-parser.js.map +1 -1
- package/dist/output/codex-parser.d.ts.map +1 -1
- package/dist/output/codex-parser.js +4 -6
- package/dist/output/codex-parser.js.map +1 -1
- package/dist/output/cursor-agent-parser.d.ts.map +1 -1
- package/dist/output/cursor-agent-parser.js +4 -0
- package/dist/output/cursor-agent-parser.js.map +1 -1
- package/dist/output/gemini-parser.d.ts +18 -0
- package/dist/output/gemini-parser.d.ts.map +1 -0
- package/dist/output/gemini-parser.js +91 -0
- package/dist/output/gemini-parser.js.map +1 -0
- package/dist/output/msg-store.d.ts +6 -0
- package/dist/output/msg-store.d.ts.map +1 -1
- package/dist/output/msg-store.js +17 -0
- package/dist/output/msg-store.js.map +1 -1
- package/dist/output/text-block-tracker.d.ts +29 -0
- package/dist/output/text-block-tracker.d.ts.map +1 -0
- package/dist/output/text-block-tracker.js +149 -0
- package/dist/output/text-block-tracker.js.map +1 -0
- package/dist/output/types.d.ts +9 -0
- package/dist/output/types.d.ts.map +1 -1
- package/dist/output/types.js +0 -4
- package/dist/output/types.js.map +1 -1
- package/dist/routes/__tests__/sessions-runtime.test.js +3 -0
- package/dist/routes/__tests__/sessions-runtime.test.js.map +1 -1
- package/dist/routes/__tests__/team-run-translations.test.d.ts +2 -0
- package/dist/routes/__tests__/team-run-translations.test.d.ts.map +1 -0
- package/dist/routes/__tests__/team-run-translations.test.js +418 -0
- package/dist/routes/__tests__/team-run-translations.test.js.map +1 -0
- package/dist/routes/__tests__/translations.test.d.ts +2 -0
- package/dist/routes/__tests__/translations.test.d.ts.map +1 -0
- package/dist/routes/__tests__/translations.test.js +286 -0
- package/dist/routes/__tests__/translations.test.js.map +1 -0
- package/dist/routes/__tests__/workspaces.test.js +140 -0
- package/dist/routes/__tests__/workspaces.test.js.map +1 -1
- package/dist/routes/conversations.d.ts.map +1 -1
- package/dist/routes/conversations.js +19 -2
- package/dist/routes/conversations.js.map +1 -1
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +2 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/sessions.d.ts.map +1 -1
- package/dist/routes/sessions.js +32 -3
- package/dist/routes/sessions.js.map +1 -1
- package/dist/routes/team-runs.d.ts.map +1 -1
- package/dist/routes/team-runs.js +84 -15
- package/dist/routes/team-runs.js.map +1 -1
- package/dist/routes/translations.d.ts +4 -0
- package/dist/routes/translations.d.ts.map +1 -0
- package/dist/routes/translations.js +148 -0
- package/dist/routes/translations.js.map +1 -0
- package/dist/routes/user-input-origin.d.ts +4 -0
- package/dist/routes/user-input-origin.d.ts.map +1 -0
- package/dist/routes/user-input-origin.js +7 -0
- package/dist/routes/user-input-origin.js.map +1 -0
- package/dist/routes/workspaces.d.ts.map +1 -1
- package/dist/routes/workspaces.js +32 -2
- package/dist/routes/workspaces.js.map +1 -1
- package/dist/runtime/__tests__/acp-driver-lifecycle.test.js +2 -2
- package/dist/runtime/__tests__/acp-driver-lifecycle.test.js.map +1 -1
- package/dist/runtime/__tests__/acp-driver-submission.test.d.ts +2 -0
- package/dist/runtime/__tests__/acp-driver-submission.test.d.ts.map +1 -0
- package/dist/runtime/__tests__/acp-driver-submission.test.js +88 -0
- package/dist/runtime/__tests__/acp-driver-submission.test.js.map +1 -0
- package/dist/runtime/__tests__/acp-history-reconciler.test.js +244 -0
- package/dist/runtime/__tests__/acp-history-reconciler.test.js.map +1 -1
- package/dist/runtime/__tests__/acp-projector.test.js +36 -0
- package/dist/runtime/__tests__/acp-projector.test.js.map +1 -1
- package/dist/runtime/__tests__/claude-cli-control.test.js +20 -0
- package/dist/runtime/__tests__/claude-cli-control.test.js.map +1 -1
- package/dist/runtime/__tests__/cli-driver-submission.test.d.ts +2 -0
- package/dist/runtime/__tests__/cli-driver-submission.test.d.ts.map +1 -0
- package/dist/runtime/__tests__/cli-driver-submission.test.js +61 -0
- package/dist/runtime/__tests__/cli-driver-submission.test.js.map +1 -0
- package/dist/runtime/__tests__/codex-cli-control.test.js +25 -0
- package/dist/runtime/__tests__/codex-cli-control.test.js.map +1 -1
- package/dist/runtime/acp/acp-driver.js +38 -1
- package/dist/runtime/acp/acp-driver.js.map +1 -1
- package/dist/runtime/acp/history-reconciler.d.ts.map +1 -1
- package/dist/runtime/acp/history-reconciler.js +95 -36
- package/dist/runtime/acp/history-reconciler.js.map +1 -1
- package/dist/runtime/acp/projector.d.ts +5 -2
- package/dist/runtime/acp/projector.d.ts.map +1 -1
- package/dist/runtime/acp/projector.js +50 -23
- package/dist/runtime/acp/projector.js.map +1 -1
- package/dist/runtime/claude-cli-control.d.ts +4 -1
- package/dist/runtime/claude-cli-control.d.ts.map +1 -1
- package/dist/runtime/claude-cli-control.js +3 -1
- package/dist/runtime/claude-cli-control.js.map +1 -1
- package/dist/runtime/cli-driver.js +21 -7
- package/dist/runtime/cli-driver.js.map +1 -1
- package/dist/runtime/cli-parser.d.ts.map +1 -1
- package/dist/runtime/cli-parser.js +3 -0
- package/dist/runtime/cli-parser.js.map +1 -1
- package/dist/runtime/codex-cli-control.d.ts +4 -1
- package/dist/runtime/codex-cli-control.d.ts.map +1 -1
- package/dist/runtime/codex-cli-control.js +9 -6
- package/dist/runtime/codex-cli-control.js.map +1 -1
- package/dist/runtime/codex-cli-projector.d.ts +1 -1
- package/dist/runtime/codex-cli-projector.d.ts.map +1 -1
- package/dist/runtime/codex-cli-projector.js +4 -2
- package/dist/runtime/codex-cli-projector.js.map +1 -1
- package/dist/runtime/contracts.d.ts +15 -2
- package/dist/runtime/contracts.d.ts.map +1 -1
- package/dist/runtime/runtime-coordinator.d.ts.map +1 -1
- package/dist/runtime/runtime-coordinator.js +34 -1
- package/dist/runtime/runtime-coordinator.js.map +1 -1
- package/dist/services/__tests__/conflict-admission.test.d.ts +2 -0
- package/dist/services/__tests__/conflict-admission.test.d.ts.map +1 -0
- package/dist/services/__tests__/conflict-admission.test.js +37 -0
- package/dist/services/__tests__/conflict-admission.test.js.map +1 -0
- package/dist/services/__tests__/conflict-recovery-key.test.d.ts +2 -0
- package/dist/services/__tests__/conflict-recovery-key.test.d.ts.map +1 -0
- package/dist/services/__tests__/conflict-recovery-key.test.js +143 -0
- package/dist/services/__tests__/conflict-recovery-key.test.js.map +1 -0
- package/dist/services/__tests__/message-delivery.integration.test.d.ts +2 -0
- package/dist/services/__tests__/message-delivery.integration.test.d.ts.map +1 -0
- package/dist/services/__tests__/message-delivery.integration.test.js +1137 -0
- package/dist/services/__tests__/message-delivery.integration.test.js.map +1 -0
- package/dist/services/__tests__/review-team-user-counterexamples.test.d.ts +2 -0
- package/dist/services/__tests__/review-team-user-counterexamples.test.d.ts.map +1 -0
- package/dist/services/__tests__/review-team-user-counterexamples.test.js +200 -0
- package/dist/services/__tests__/review-team-user-counterexamples.test.js.map +1 -0
- package/dist/services/__tests__/session-manager.lifecycle.test.js +37 -0
- package/dist/services/__tests__/session-manager.lifecycle.test.js.map +1 -1
- package/dist/services/__tests__/session-manager.team-run.test.js +19 -2
- package/dist/services/__tests__/session-manager.team-run.test.js.map +1 -1
- package/dist/services/__tests__/team-initial-delivery.integration.test.d.ts +2 -0
- package/dist/services/__tests__/team-initial-delivery.integration.test.d.ts.map +1 -0
- package/dist/services/__tests__/team-initial-delivery.integration.test.js +469 -0
- package/dist/services/__tests__/team-initial-delivery.integration.test.js.map +1 -0
- package/dist/services/__tests__/team-reconciler.service.test.js +102 -101
- package/dist/services/__tests__/team-reconciler.service.test.js.map +1 -1
- package/dist/services/__tests__/team-room-delivery.test.d.ts +2 -0
- package/dist/services/__tests__/team-room-delivery.test.d.ts.map +1 -0
- package/dist/services/__tests__/team-room-delivery.test.js +670 -0
- package/dist/services/__tests__/team-room-delivery.test.js.map +1 -0
- package/dist/services/__tests__/team-user-delivery.integration.test.d.ts +2 -0
- package/dist/services/__tests__/team-user-delivery.integration.test.d.ts.map +1 -0
- package/dist/services/__tests__/team-user-delivery.integration.test.js +622 -0
- package/dist/services/__tests__/team-user-delivery.integration.test.js.map +1 -0
- package/dist/services/__tests__/translation-client.test.d.ts +2 -0
- package/dist/services/__tests__/translation-client.test.d.ts.map +1 -0
- package/dist/services/__tests__/translation-client.test.js +240 -0
- package/dist/services/__tests__/translation-client.test.js.map +1 -0
- package/dist/services/__tests__/translation-protection.test.d.ts +2 -0
- package/dist/services/__tests__/translation-protection.test.d.ts.map +1 -0
- package/dist/services/__tests__/translation-protection.test.js +156 -0
- package/dist/services/__tests__/translation-protection.test.js.map +1 -0
- package/dist/services/__tests__/translation-queue.test.d.ts +2 -0
- package/dist/services/__tests__/translation-queue.test.d.ts.map +1 -0
- package/dist/services/__tests__/translation-queue.test.js +277 -0
- package/dist/services/__tests__/translation-queue.test.js.map +1 -0
- package/dist/services/__tests__/translation-room-admission.test.d.ts +2 -0
- package/dist/services/__tests__/translation-room-admission.test.d.ts.map +1 -0
- package/dist/services/__tests__/translation-room-admission.test.js +371 -0
- package/dist/services/__tests__/translation-room-admission.test.js.map +1 -0
- package/dist/services/__tests__/translation-session-blocks.test.d.ts +2 -0
- package/dist/services/__tests__/translation-session-blocks.test.d.ts.map +1 -0
- package/dist/services/__tests__/translation-session-blocks.test.js +367 -0
- package/dist/services/__tests__/translation-session-blocks.test.js.map +1 -0
- package/dist/services/__tests__/translation-settings.service.test.d.ts +2 -0
- package/dist/services/__tests__/translation-settings.service.test.d.ts.map +1 -0
- package/dist/services/__tests__/translation-settings.service.test.js +154 -0
- package/dist/services/__tests__/translation-settings.service.test.js.map +1 -0
- package/dist/services/__tests__/translation.service.test.d.ts +2 -0
- package/dist/services/__tests__/translation.service.test.d.ts.map +1 -0
- package/dist/services/__tests__/translation.service.test.js +480 -0
- package/dist/services/__tests__/translation.service.test.js.map +1 -0
- package/dist/services/access-auth.service.d.ts +1 -0
- package/dist/services/access-auth.service.d.ts.map +1 -1
- package/dist/services/access-auth.service.js +8 -0
- package/dist/services/access-auth.service.js.map +1 -1
- package/dist/services/attachment-context.d.ts +7 -1
- package/dist/services/attachment-context.d.ts.map +1 -1
- package/dist/services/attachment-context.js +23 -2
- package/dist/services/attachment-context.js.map +1 -1
- package/dist/services/conflict-admission.d.ts +37 -0
- package/dist/services/conflict-admission.d.ts.map +1 -0
- package/dist/services/conflict-admission.js +97 -0
- package/dist/services/conflict-admission.js.map +1 -0
- package/dist/services/conflict-resolution-context.d.ts +33 -0
- package/dist/services/conflict-resolution-context.d.ts.map +1 -0
- package/dist/services/conflict-resolution-context.js +434 -0
- package/dist/services/conflict-resolution-context.js.map +1 -0
- package/dist/services/message-delivery.service.d.ts +195 -0
- package/dist/services/message-delivery.service.d.ts.map +1 -0
- package/dist/services/message-delivery.service.js +956 -0
- package/dist/services/message-delivery.service.js.map +1 -0
- package/dist/services/project.service.d.ts +1 -1
- package/dist/services/session-manager.d.ts +94 -74
- package/dist/services/session-manager.d.ts.map +1 -1
- package/dist/services/session-manager.js +91 -17
- package/dist/services/session-manager.js.map +1 -1
- package/dist/services/task.service.d.ts +26 -20
- package/dist/services/task.service.d.ts.map +1 -1
- package/dist/services/task.service.js +9 -26
- package/dist/services/task.service.js.map +1 -1
- package/dist/services/team-room-delivery.d.ts +541 -0
- package/dist/services/team-room-delivery.d.ts.map +1 -0
- package/dist/services/team-room-delivery.js +123 -0
- package/dist/services/team-room-delivery.js.map +1 -0
- package/dist/services/team-run.service.d.ts +83 -0
- package/dist/services/team-run.service.d.ts.map +1 -1
- package/dist/services/team-run.service.js +207 -18
- package/dist/services/team-run.service.js.map +1 -1
- package/dist/services/team-scheduler.service.d.ts +3 -0
- package/dist/services/team-scheduler.service.d.ts.map +1 -1
- package/dist/services/team-scheduler.service.js +65 -11
- package/dist/services/team-scheduler.service.js.map +1 -1
- package/dist/services/team-task-input.d.ts +37 -0
- package/dist/services/team-task-input.d.ts.map +1 -0
- package/dist/services/team-task-input.js +98 -0
- package/dist/services/team-task-input.js.map +1 -0
- package/dist/services/team-task-input.service.d.ts +72 -0
- package/dist/services/team-task-input.service.d.ts.map +1 -0
- package/dist/services/team-task-input.service.js +205 -0
- package/dist/services/team-task-input.service.js.map +1 -0
- package/dist/services/translation-client.d.ts +31 -0
- package/dist/services/translation-client.d.ts.map +1 -0
- package/dist/services/translation-client.js +169 -0
- package/dist/services/translation-client.js.map +1 -0
- package/dist/services/translation-errors.d.ts +14 -0
- package/dist/services/translation-errors.d.ts.map +1 -0
- package/dist/services/translation-errors.js +16 -0
- package/dist/services/translation-errors.js.map +1 -0
- package/dist/services/translation-protection.d.ts +27 -0
- package/dist/services/translation-protection.d.ts.map +1 -0
- package/dist/services/translation-protection.js +547 -0
- package/dist/services/translation-protection.js.map +1 -0
- package/dist/services/translation-queue.d.ts +49 -0
- package/dist/services/translation-queue.d.ts.map +1 -0
- package/dist/services/translation-queue.js +211 -0
- package/dist/services/translation-queue.js.map +1 -0
- package/dist/services/translation-settings.service.d.ts +152 -0
- package/dist/services/translation-settings.service.d.ts.map +1 -0
- package/dist/services/translation-settings.service.js +174 -0
- package/dist/services/translation-settings.service.js.map +1 -0
- package/dist/services/translation.service.d.ts +168 -0
- package/dist/services/translation.service.d.ts.map +1 -0
- package/dist/services/translation.service.js +861 -0
- package/dist/services/translation.service.js.map +1 -0
- package/dist/services/workspace.service.d.ts +84 -93
- package/dist/services/workspace.service.d.ts.map +1 -1
- package/dist/services/workspace.service.js +69 -5
- package/dist/services/workspace.service.js.map +1 -1
- package/dist/socket/__tests__/socket-gateway.test.js +131 -1
- package/dist/socket/__tests__/socket-gateway.test.js.map +1 -1
- package/dist/socket/socket-gateway.d.ts +6 -0
- package/dist/socket/socket-gateway.d.ts.map +1 -1
- package/dist/socket/socket-gateway.js +312 -6
- package/dist/socket/socket-gateway.js.map +1 -1
- package/dist/utils/database-runtime.test.js +82 -5
- package/dist/utils/database-runtime.test.js.map +1 -1
- package/dist/utils/database-schema.d.ts +9 -0
- package/dist/utils/database-schema.d.ts.map +1 -0
- package/dist/utils/database-schema.js +434 -0
- package/dist/utils/database-schema.js.map +1 -0
- package/dist/utils/database-schema.test.d.ts +2 -0
- package/dist/utils/database-schema.test.d.ts.map +1 -0
- package/dist/utils/database-schema.test.js +359 -0
- package/dist/utils/database-schema.test.js.map +1 -0
- package/dist/utils/database-team-foundation.test.d.ts +2 -0
- package/dist/utils/database-team-foundation.test.d.ts.map +1 -0
- package/dist/utils/database-team-foundation.test.js +467 -0
- package/dist/utils/database-team-foundation.test.js.map +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +29 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/owned-child-process.test.js +6 -3
- package/dist/utils/owned-child-process.test.js.map +1 -1
- package/dist/utils/text-preview.d.ts +4 -0
- package/dist/utils/text-preview.d.ts.map +1 -0
- package/dist/utils/text-preview.js +21 -0
- package/dist/utils/text-preview.js.map +1 -0
- package/dist/web/assets/AgentDemoPage-BfXkNCdN.js +1 -0
- package/dist/web/assets/{AgentEnvironmentSettingsPage-SnxiaHvN.js → AgentEnvironmentSettingsPage-GHjKIWpb.js} +1 -1
- package/dist/web/assets/AttachmentPreview-CLN1lnLe.js +2 -0
- package/dist/web/assets/BranchSelect-Cofp8vYf.js +1 -0
- package/dist/web/assets/BrandLogo-BUimEX-9.js +1 -0
- package/dist/web/assets/ConversationPage-R7vNaOQv.js +1 -0
- package/dist/web/assets/CreateTaskInput-CasITF8y.js +1 -0
- package/dist/web/assets/{DemoPage-BHbnnZFF.js → DemoPage-DK-ikg1_.js} +3 -3
- package/dist/web/assets/DesignSystemPage-BhjNs2vP.js +12 -0
- package/dist/web/assets/EditableTaskTitle-BJ9Rxggf.js +70 -0
- package/dist/web/assets/{ExecutionPermissionSelector-DcC4IBOF.js → ExecutionPermissionSelector-B8befbxJ.js} +1 -1
- package/dist/web/assets/GeneralSettingsPage-RMN2al8I.js +1 -0
- package/dist/web/assets/{LoadingPreviewPage-dE_jyl19.js → LoadingPreviewPage-BDlf89rJ.js} +1 -1
- package/dist/web/assets/{McpSettingsPage-CIuQ4bvy.js → McpSettingsPage-CPNxFF67.js} +1 -1
- package/dist/web/assets/{MemberAvatar-BG0VDZKf.js → MemberAvatar-YVr_erAr.js} +1 -1
- package/dist/web/assets/MobileTaskDetail-QNUHMq7u.js +3 -0
- package/dist/web/assets/NotificationSettingsPage-BEyuyu3Z.js +1 -0
- package/dist/web/assets/ProfileSettingsPage-CHe4LlRp.js +3 -0
- package/dist/web/assets/ProjectKanbanPage-Bt_01giW.js +12 -0
- package/dist/web/assets/ProjectSettingsPage-cus6Ns97.js +2 -0
- package/dist/web/assets/{ProviderSettingsPage-DLq-GBxp.js → ProviderSettingsPage-DqA_B1Ey.js} +2 -2
- package/dist/web/assets/{SettingsMasterDetail-UfyoKAum.js → SettingsMasterDetail-DjWR9Sqk.js} +1 -1
- package/dist/web/assets/TaskDetail-rEXNe2h3.js +1 -0
- package/dist/web/assets/TeamSettingsPage-DwWROtW6.js +1 -0
- package/dist/web/assets/TranslationSettingsPage-Cod9c4Ug.js +1 -0
- package/dist/web/assets/arc-DEy33vTc.js +1 -0
- package/dist/web/assets/{architectureDiagram-3BPJPVTR-BCNj6ZWE.js → architectureDiagram-3BPJPVTR-Ky1D1LBk.js} +1 -1
- package/dist/web/assets/{at-sign-C4VhWike.js → at-sign-C48_y345.js} +1 -1
- package/dist/web/assets/{blockDiagram-GPEHLZMM-D1kmB9gz.js → blockDiagram-GPEHLZMM-BNgB7kNT.js} +1 -1
- package/dist/web/assets/{c4Diagram-AAUBKEIU-DbWKTkSe.js → c4Diagram-AAUBKEIU-4GMrPMgQ.js} +1 -1
- package/dist/web/assets/channel-DTP-syjA.js +1 -0
- package/dist/web/assets/check-BmiJ7qMY.js +1 -0
- package/dist/web/assets/chevron-down-3y5Aiolp.js +1 -0
- package/dist/web/assets/{chevron-up-DOkDFvIc.js → chevron-up-DqaYcjpq.js} +1 -1
- package/dist/web/assets/{chunk-2J33WTMH-B3TA0-LD.js → chunk-2J33WTMH-C439hRe_.js} +1 -1
- package/dist/web/assets/{chunk-4BX2VUAB-CvPTiBSV.js → chunk-4BX2VUAB-D8GK3M3t.js} +1 -1
- package/dist/web/assets/{chunk-55IACEB6-xGe9Fu9Z.js → chunk-55IACEB6-Dl4UhJ8X.js} +1 -1
- package/dist/web/assets/{chunk-727SXJPM-H8pz3amK.js → chunk-727SXJPM-BSEeayBq.js} +1 -1
- package/dist/web/assets/{chunk-AQP2D5EJ-BmYYNxcL.js → chunk-AQP2D5EJ-B6chbZfT.js} +1 -1
- package/dist/web/assets/{chunk-FMBD7UC4-BmOEsLTE.js → chunk-FMBD7UC4-DaLkiLdQ.js} +1 -1
- package/dist/web/assets/{chunk-ND2GUHAM-C5MfA0xc.js → chunk-ND2GUHAM-DeQwZAAT.js} +1 -1
- package/dist/web/assets/{chunk-QZHKN3VN-BcrGYZ7V.js → chunk-QZHKN3VN-CLRr4YRM.js} +1 -1
- package/dist/web/assets/classDiagram-4FO5ZUOK-CUKgurLa.js +1 -0
- package/dist/web/assets/classDiagram-v2-Q7XG4LA2-CUKgurLa.js +1 -0
- package/dist/web/assets/code-block-OCS4YCEC-CnoxUpOx.js +2 -0
- package/dist/web/assets/confirm-dialog-ltNBFYCs.js +1 -0
- package/dist/web/assets/content-DPQMfMae.js +2 -0
- package/dist/web/assets/{copy-CdzVE3kf.js → copy-HRMhTkIG.js} +1 -1
- package/dist/web/assets/{cose-bilkent-S5V4N54A-CLQ-m71G.js → cose-bilkent-S5V4N54A-C1UiYzfk.js} +1 -1
- package/dist/web/assets/cssMode-DkuSsGeg.js +1 -0
- package/dist/web/assets/{dagre-BM42HDAG-CmDqxOfn.js → dagre-BM42HDAG-CTJpBgye.js} +1 -1
- package/dist/web/assets/{diagram-2AECGRRQ-D-fSbEll.js → diagram-2AECGRRQ-Dj1_TEYp.js} +1 -1
- package/dist/web/assets/{diagram-5GNKFQAL-HPywThAf.js → diagram-5GNKFQAL-V-KUpwqh.js} +1 -1
- package/dist/web/assets/{diagram-KO2AKTUF-DAzLhllz.js → diagram-KO2AKTUF-CXG1ZIeX.js} +1 -1
- package/dist/web/assets/{diagram-LMA3HP47-DXYB9h8L.js → diagram-LMA3HP47-BZSJUwk9.js} +1 -1
- package/dist/web/assets/{diagram-OG6HWLK6-vv4kz4Zo.js → diagram-OG6HWLK6-CCr4gq4u.js} +1 -1
- package/dist/web/assets/dialog-CuFEdqLg.js +5 -0
- package/dist/web/assets/{erDiagram-TEJ5UH35-Cu6aVKAa.js → erDiagram-TEJ5UH35-Djtyzh6z.js} +1 -1
- package/dist/web/assets/{flowDiagram-I6XJVG4X-BKDe8WSQ.js → flowDiagram-I6XJVG4X-BmSVSiXJ.js} +1 -1
- package/dist/web/assets/{freemarker2-DI2giuAo.js → freemarker2-DdptX5f1.js} +2 -2
- package/dist/web/assets/{ganttDiagram-6RSMTGT7-DMVLzmAE.js → ganttDiagram-6RSMTGT7-r5vQX-b5.js} +1 -1
- package/dist/web/assets/{gitGraphDiagram-PVQCEYII-vogzYdKn.js → gitGraphDiagram-PVQCEYII-Zj9aloh9.js} +1 -1
- package/dist/web/assets/{globe-Rnn-nKw-.js → globe-B9I-jHBB.js} +1 -1
- package/dist/web/assets/handlebars-B34f-LAf.js +1 -0
- package/dist/web/assets/hooks-BLxb16IA.js +1 -0
- package/dist/web/assets/html-CnvOQ63o.js +1 -0
- package/dist/web/assets/htmlMode-RdxZ8Svp.js +1 -0
- package/dist/web/assets/{icon-button-CuSuXgr_.js → icon-button-CYiKa-7C.js} +1 -1
- package/dist/web/assets/index-0XPZayUU.css +1 -0
- package/dist/web/assets/index-B1oVmCie.js +1 -0
- package/dist/web/assets/index-BJObbxud.js +122 -0
- package/dist/web/assets/index-Bhvt-E6d.js +41 -0
- package/dist/web/assets/index-BtUQYU5l.js +1 -0
- package/dist/web/assets/index-CThFsQNP.js +1 -0
- package/dist/web/assets/index-DZLnTISJ.js +1 -0
- package/dist/web/assets/index-DcOU2m2F.js +1 -0
- package/dist/web/assets/{index-CMjLMilU.js → index-Dk3bRQAK.js} +1 -1
- package/dist/web/assets/{index-B88xAivn.js → index-DkRy6eNX.js} +5 -5
- package/dist/web/assets/{infoDiagram-5YYISTIA-CEfSHkNq.js → infoDiagram-5YYISTIA-BHtVaxZx.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-YF4QCWOH-BXKZuWtD.js → ishikawaDiagram-YF4QCWOH-BYmwjkbC.js} +5 -5
- package/dist/web/assets/javascript-BhombDEO.js +1 -0
- package/dist/web/assets/{journeyDiagram-JHISSGLW-wsOUYlu7.js → journeyDiagram-JHISSGLW-c8BBqqRS.js} +1 -1
- package/dist/web/assets/jsonMode-BJGOUeaV.js +7 -0
- package/dist/web/assets/{kanban-definition-UN3LZRKU-DNsuvOrU.js → kanban-definition-UN3LZRKU-D4Vr-oFT.js} +1 -1
- package/dist/web/assets/{kbd-B3m64lRd.js → kbd-C88ut3t9.js} +1 -1
- package/dist/web/assets/{key-round-DpYSyeDH.js → key-round-Cjbj2qNa.js} +1 -1
- package/dist/web/assets/{layers-CxqMQVmH.js → layers-eaHAVcc3.js} +1 -1
- package/dist/web/assets/{linear-BmmCZdOQ.js → linear-opi90s0L.js} +1 -1
- package/dist/web/assets/{link-DbSpzB1w.js → link-BSGb85gq.js} +1 -1
- package/dist/web/assets/liquid-Czy1WpPz.js +1 -0
- package/dist/web/assets/{lspLanguageFeatures-WhdC7zdf.js → lspLanguageFeatures-DWu2Ubf0.js} +1 -1
- package/dist/web/assets/mdx-DhXfoSnM.js +1 -0
- package/dist/web/assets/menu--sjyisSg.js +1 -0
- package/dist/web/assets/{mermaid-NOHMQCX5-DmKVQY9m.js → mermaid-NOHMQCX5-BSNbBj78.js} +71 -71
- package/dist/web/assets/{message-square-CfNb-MTd.js → message-square-BLEJN6p7.js} +1 -1
- package/dist/web/assets/{mindmap-definition-RKZ34NQL-0RzXjZ9G.js → mindmap-definition-RKZ34NQL-BN3ZjBh-.js} +1 -1
- package/dist/web/assets/{modal-Kpqn-nDO.js → modal-CSGOqphK.js} +1 -1
- package/dist/web/assets/{monaco-I1fXAMIt.js → monaco-BkuNyOkP.js} +3 -3
- package/dist/web/assets/{paperclip-BBrzKZQC.js → paperclip-CTNoXpUW.js} +1 -1
- package/dist/web/assets/{pencil-pzVKblxj.js → pencil-Cp70ZwtG.js} +1 -1
- package/dist/web/assets/{people-C6b3eeLq.js → people-DT78SebR.js} +1 -1
- package/dist/web/assets/{pieDiagram-4H26LBE5-Bcvzb8TW.js → pieDiagram-4H26LBE5-CfmFHpPI.js} +2 -2
- package/dist/web/assets/popover-BiVxGGgp.js +1 -0
- package/dist/web/assets/python-DIcQDjcf.js +1 -0
- package/dist/web/assets/{quadrantDiagram-W4KKPZXB-DwNhxMxj.js → quadrantDiagram-W4KKPZXB-CeaumJAa.js} +1 -1
- package/dist/web/assets/razor-DYK6Rxer.js +1 -0
- package/dist/web/assets/{requirementDiagram-4Y6WPE33-D2wSGYn2.js → requirementDiagram-4Y6WPE33-BWWCDXCE.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-5OEKKPKP-l3LLF--T.js → sankeyDiagram-5OEKKPKP-DAJut743.js} +1 -1
- package/dist/web/assets/search-DniD_AGC.js +1 -0
- package/dist/web/assets/search-field-CQLDXLeA.js +1 -0
- package/dist/web/assets/select-B5RYunTs.js +1 -0
- package/dist/web/assets/{select-DGwKE4l0.js → select-BPdJrr5M.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-3UESZ5HK-BAGsbTS_.js → sequenceDiagram-3UESZ5HK-CynjRGW4.js} +1 -1
- package/dist/web/assets/{server-BIPZ9Ka-.js → server-xswxWpKD.js} +1 -1
- package/dist/web/assets/stateDiagram-AJRCARHV-amAtpx9w.js +1 -0
- package/dist/web/assets/stateDiagram-v2-BHNVJYJU-V-lSceg1.js +1 -0
- package/dist/web/assets/{textarea-Bnfq7adW.js → textarea-BVyPl9rM.js} +1 -1
- package/dist/web/assets/{timeline-definition-PNZ67QCA-Dt-DcRrG.js → timeline-definition-PNZ67QCA-DZ9W7WlP.js} +1 -1
- package/dist/web/assets/toggles-QcIz43DP.js +1 -0
- package/dist/web/assets/tooltip-CPqGK_WZ.js +1 -0
- package/dist/web/assets/{track-B_K578io.js → track-Ckye0-tt.js} +1 -1
- package/dist/web/assets/{trash-2-ALAYDudv.js → trash-2-CvUJsbtT.js} +1 -1
- package/dist/web/assets/tsMode-c5x0d47n.js +11 -0
- package/dist/web/assets/typescript-i7eYblLt.js +1 -0
- package/dist/web/assets/{upload-D7hKT2VA.js → upload-CsXAmAun.js} +1 -1
- package/dist/web/assets/{use-profiles-Ncqxdw7S.js → use-profiles-DuXaBRju.js} +1 -1
- package/dist/web/assets/{use-projects-Dwy9AfAG.js → use-projects-Ddz0knyr.js} +1 -1
- package/dist/web/assets/{use-providers-BRyZjuBG.js → use-providers-Td1-gyrN.js} +1 -1
- package/dist/web/assets/use-translation-settings-NYM0lmBx.js +1 -0
- package/dist/web/assets/use-workspaces-CdJZLmGh.js +1 -0
- package/dist/web/assets/useNormalizedLogs--RbVywYa.js +1 -0
- package/dist/web/assets/useTokenUsage-DDXf7E4p.js +1 -0
- package/dist/web/assets/{vennDiagram-CIIHVFJN-Cr55FtiY.js → vennDiagram-CIIHVFJN-CB2Ubvy9.js} +1 -1
- package/dist/web/assets/{wardley-L42UT6IY-CtwMk9MJ.js → wardley-L42UT6IY-BXOkk77I.js} +1 -1
- package/dist/web/assets/{wardleyDiagram-YWT4CUSO-BeyHmTu3.js → wardleyDiagram-YWT4CUSO-VA6ywdQQ.js} +1 -1
- package/dist/web/assets/xml-D2EGActB.js +1 -0
- package/dist/web/assets/{xychartDiagram-2RQKCTM6-9g34Lq8E.js → xychartDiagram-2RQKCTM6-FNcvDj5G.js} +1 -1
- package/dist/web/assets/yaml-jeiIZSL4.js +1 -0
- package/dist/web/index.html +2 -2
- package/node_modules/@agent-tower/shared/dist/index.d.ts +1 -0
- package/node_modules/@agent-tower/shared/dist/index.d.ts.map +1 -1
- package/node_modules/@agent-tower/shared/dist/index.js +1 -0
- package/node_modules/@agent-tower/shared/dist/index.js.map +1 -1
- package/node_modules/@agent-tower/shared/dist/log-adapter.d.ts +11 -0
- package/node_modules/@agent-tower/shared/dist/log-adapter.d.ts.map +1 -1
- package/node_modules/@agent-tower/shared/dist/log-adapter.js +2 -0
- package/node_modules/@agent-tower/shared/dist/log-adapter.js.map +1 -1
- package/node_modules/@agent-tower/shared/dist/socket/events.d.ts +5 -2
- package/node_modules/@agent-tower/shared/dist/socket/events.d.ts.map +1 -1
- package/node_modules/@agent-tower/shared/dist/socket/events.js +2 -0
- package/node_modules/@agent-tower/shared/dist/socket/events.js.map +1 -1
- package/node_modules/@agent-tower/shared/dist/translation.d.ts +306 -0
- package/node_modules/@agent-tower/shared/dist/translation.d.ts.map +1 -0
- package/node_modules/@agent-tower/shared/dist/translation.js +8 -0
- package/node_modules/@agent-tower/shared/dist/translation.js.map +1 -0
- package/node_modules/@agent-tower/shared/dist/types.d.ts +23 -0
- package/node_modules/@agent-tower/shared/dist/types.d.ts.map +1 -1
- package/node_modules/@agent-tower/shared/dist/types.js.map +1 -1
- package/package.json +1 -1
- package/prisma/migrations/20261016000000_add_translation_foundation/migration.sql +104 -0
- package/prisma/migrations/20261016010000_add_message_deliveries/migration.sql +158 -0
- package/prisma/migrations/20261019000000_add_room_translation_eligibility/migration.sql +3 -0
- package/prisma/migrations/20261019100000_add_team_delivery_foundation/migration.sql +217 -0
- package/prisma/schema.prisma +224 -0
- package/dist/web/assets/AgentDemoPage-CaR_Yk9_.js +0 -1
- package/dist/web/assets/BranchSelect-D-kqavDG.js +0 -1
- package/dist/web/assets/BrandLogo-CC1alVsd.js +0 -1
- package/dist/web/assets/ConversationPage-RWKLxe1j.js +0 -3
- package/dist/web/assets/CreateTaskInput-SHJ1YpRe.js +0 -1
- package/dist/web/assets/DesignSystemPage-ChCrzeKT.js +0 -12
- package/dist/web/assets/EditableTaskTitle-CGVeZUSt.js +0 -70
- package/dist/web/assets/GeneralSettingsPage-C_tkwpmF.js +0 -1
- package/dist/web/assets/MobileTaskDetail-DxE6ZDAS.js +0 -5
- package/dist/web/assets/NotificationSettingsPage-B-Ot2OMg.js +0 -1
- package/dist/web/assets/ProfileSettingsPage-Dn1lrjJr.js +0 -3
- package/dist/web/assets/ProjectKanbanPage-jcW8sA7x.js +0 -12
- package/dist/web/assets/ProjectSettingsPage-BFPty2eA.js +0 -2
- package/dist/web/assets/TaskDetail-a1jalILy.js +0 -3
- package/dist/web/assets/TeamSettingsPage-BxGc4W7K.js +0 -1
- package/dist/web/assets/arc-dhk0OSs5.js +0 -1
- package/dist/web/assets/channel-K0AG6Tl1.js +0 -1
- package/dist/web/assets/check-DYlb0A_N.js +0 -1
- package/dist/web/assets/classDiagram-4FO5ZUOK-BTJ44hwx.js +0 -1
- package/dist/web/assets/classDiagram-v2-Q7XG4LA2-BTJ44hwx.js +0 -1
- package/dist/web/assets/code-block-OCS4YCEC-DLPrDBDy.js +0 -2
- package/dist/web/assets/confirm-dialog-BRkrtULz.js +0 -1
- package/dist/web/assets/content-DPCGELMz.js +0 -2
- package/dist/web/assets/cssMode-ChMyv9Nj.js +0 -1
- package/dist/web/assets/dialog-B_vC5R4B.js +0 -5
- package/dist/web/assets/handlebars-B9tmKQPV.js +0 -1
- package/dist/web/assets/hooks-DK4m7-FN.js +0 -1
- package/dist/web/assets/html-B_E2U0g5.js +0 -1
- package/dist/web/assets/htmlMode-DRHM_Cwq.js +0 -1
- package/dist/web/assets/index-B6Lvy5Sr.js +0 -1
- package/dist/web/assets/index-BCV57B4O.js +0 -41
- package/dist/web/assets/index-CTG-4w90.js +0 -1
- package/dist/web/assets/index-Cz73HpYH.js +0 -122
- package/dist/web/assets/index-CzvAGoau.css +0 -1
- package/dist/web/assets/index-DENY_U7o.js +0 -1
- package/dist/web/assets/index-ZO2tqdha.js +0 -1
- package/dist/web/assets/javascript-ClWqjgn3.js +0 -1
- package/dist/web/assets/jsonMode-DVAoDfae.js +0 -7
- package/dist/web/assets/liquid-CZf3xdoq.js +0 -1
- package/dist/web/assets/mdx-xzVEPP01.js +0 -1
- package/dist/web/assets/menu-0A0v_lRV.js +0 -1
- package/dist/web/assets/popover-BYz89aiY.js +0 -1
- package/dist/web/assets/python-DL05HvW4.js +0 -1
- package/dist/web/assets/razor-BCZ3_uDf.js +0 -1
- package/dist/web/assets/search-field-B5czD2Pl.js +0 -1
- package/dist/web/assets/select-yem-xN9Z.js +0 -1
- package/dist/web/assets/stateDiagram-AJRCARHV-C0BHmXYX.js +0 -1
- package/dist/web/assets/stateDiagram-v2-BHNVJYJU-Be3UCkeQ.js +0 -1
- package/dist/web/assets/toggles-DxNDJZsN.js +0 -1
- package/dist/web/assets/tooltip-CHOgkFbE.js +0 -1
- package/dist/web/assets/tsMode-kXxq-Lw7.js +0 -11
- package/dist/web/assets/typescript-E3_QcT_u.js +0 -1
- package/dist/web/assets/use-attachments-CK7y5KsN.js +0 -2
- package/dist/web/assets/use-workspaces-BBbahdwU.js +0 -1
- package/dist/web/assets/useNormalizedLogs-CRHRedwp.js +0 -1
- package/dist/web/assets/useTokenUsage-YwiF0xnT.js +0 -1
- package/dist/web/assets/xml-DxKND8qX.js +0 -1
- package/dist/web/assets/yaml-BqpCqTY6.js +0 -1
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{u as je,r as t,ae as Ut,j as e,B as ee,af as Ft,ag as _t,D as Xs,ah as Kt,ai as qt,aj as Vt,ak as Gt,al as Ht,am as Qt,an as B,ao as $t,q as Xt,v as Js,s as be,ap as Jt,aq as Yt,ar as Zt,ab as Ys,ad as Zs,ac as z,as as en,w as sn,at as et,au as tn,av as nn,aw as A,V as rn,ax as on}from"./index-Cz73HpYH.js";import{a as st,Q as an,s as ln}from"./mermaid-NOHMQCX5-DmKVQY9m.js";import{u as cn,a as dn,R as un,P as mn,T as pn}from"./useTokenUsage-YwiF0xnT.js";import{u as fn,a as xn,L as tt,T as nt}from"./useNormalizedLogs-CRHRedwp.js";import{g as gn}from"./ExecutionPermissionSelector-DcC4IBOF.js";import{u as hn,A as bn}from"./use-attachments-CK7y5KsN.js";import{T as vn,u as jn,a as yn,b as kn,c as Cn,d as wn,e as Nn,S as rt}from"./CreateTaskInput-SHJ1YpRe.js";import{u as Sn,r as In,c as Rn,g as Le,a as Tn,b as An,d as En,e as Wn,f as Mn,W as Dn,E as Pn,h as On,S as Ln,R as Bn,T as zn,i as Un,j as Fn,k as _n,l as Kn}from"./EditableTaskTitle-CGVeZUSt.js";import{u as qn,a as Vn,b as Gn,c as Hn,d as Qn,e as $n}from"./use-workspaces-BBbahdwU.js";import{u as Xn}from"./use-providers-BRyZjuBG.js";import{M as Jn}from"./modal-Kpqn-nDO.js";import{C as Yn}from"./confirm-dialog-BRkrtULz.js";import{D as Zn}from"./ProjectKanbanPage-jcW8sA7x.js";import{C as er,P as cs}from"./content-DPCGELMz.js";import{P as ot,T as sr}from"./trash-2-ALAYDudv.js";import{P as tr}from"./paperclip-BBrzKZQC.js";import"./tooltip-CHOgkFbE.js";import"./kbd-B3m64lRd.js";import"./index-B6Lvy5Sr.js";import"./index-CTG-4w90.js";import"./index-CMjLMilU.js";import"./menu-0A0v_lRV.js";import"./menu-styles-DWynpVVz.js";import"./check-DYlb0A_N.js";import"./index-ZO2tqdha.js";import"./index-BCV57B4O.js";import"./index-DENY_U7o.js";import"./track-B_K578io.js";import"./use-projects-Dwy9AfAG.js";import"./MemberAvatar-BG0VDZKf.js";import"./people-C6b3eeLq.js";import"./BrandLogo-CC1alVsd.js";import"./hooks-DK4m7-FN.js";import"./chevron-up-DOkDFvIc.js";import"./at-sign-C4VhWike.js";import"./select-DGwKE4l0.js";import"./select-yem-xN9Z.js";import"./layers-CxqMQVmH.js";import"./message-square-CfNb-MTd.js";import"./textarea-Bnfq7adW.js";import"./server-BIPZ9Ka-.js";import"./icon-button-CuSuXgr_.js";import"./search-field-B5czD2Pl.js";import"./popover-BYz89aiY.js";import"./upload-D7hKT2VA.js";import"./globe-Rnn-nKw-.js";import"./BranchSelect-D-kqavDG.js";import"./pencil-pzVKblxj.js";import"./dialog-B_vC5R4B.js";import"./copy-CdzVE3kf.js";function nr({isOpen:n,onClose:l,taskId:M}){const{t:c}=je(),[C,u]=t.useState("AUTO"),[S,o]=t.useState(null),[d,D]=t.useState([]),[ye,P]=t.useState(null),ke=Ut();t.useEffect(()=>{n&&(u("AUTO"),o(null),D([]),P(null))},[n]);const I=ke.isPending,Be=!!S||d.length>0,se=async()=>{if(!I){if(!S&&d.length===0){P(c("请选择至少一个团队模板或成员预设。"));return}P(null);try{await ke.mutateAsync({taskId:M,mode:C,...S?{teamTemplateId:S}:{},...d.length>0?{memberPresetIds:d}:{}}),l()}catch(O){if(O instanceof Ft&&O.status===409){P(c("该任务已经存在 TeamRun。请刷新后再试。"));return}P(O instanceof Error?O.message:c("创建 TeamRun 失败"))}}},ze=I||!Be;return e.jsxs(Jn,{isOpen:n,onClose:I?()=>{}:l,title:c("创建 TeamRun"),className:"max-w-5xl",action:e.jsxs(e.Fragment,{children:[e.jsx(ee,{type:"button",variant:"outline",onClick:l,disabled:I,children:c("取消")}),e.jsx(ee,{type:"button",onClick:se,disabled:ze,children:c(I?"处理中...":"创建 TeamRun")})]}),children:[e.jsx(vn,{mode:C,setMode:u,selectedTemplateId:S,setSelectedTemplateId:o,selectedMemberPresetIds:d,setSelectedMemberPresetIds:D,disabled:I}),ye&&e.jsx("div",{role:"alert",className:"rounded-lg border border-destructive/25 bg-destructive/10 px-4 py-3 text-sm text-destructive-ink",children:ye})]})}function rr({workspaceId:n,gitStatus:l,onResolve:M}){const{t:c}=je(),C=qn();if(l.operation==="idle"||l.conflictedFiles.length===0)return null;const u=l.operation==="rebase"?"Rebase":"Merge";return e.jsx(_t,{tone:"warning",className:"mx-6 mt-3 items-center",title:e.jsxs("span",{className:"flex items-center gap-2",children:[u," ",c("冲突"),e.jsxs(Kt,{tone:"warning",className:"tabular-nums",children:[l.conflictedFiles.length," ",c("个文件")]})]}),action:e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx(Xs,{variant:"ghost",onClick:()=>C.mutate(n),loading:C.isPending,children:c("中止操作")}),e.jsx(Xs,{variant:"primary",onClick:M,children:c("解决冲突")})]})})}const or=rn(),ar=n=>n.includes("://")||n.startsWith("/api/")?n:n.startsWith("/")?`${or}/attachments/by-path?path=${encodeURIComponent(n)}`:n,Z=520,ds=48,ir=4,lr=420;function cr(){const{t:n}=je();return e.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center bg-background text-muted-foreground select-none",children:[e.jsx("div",{className:"w-16 h-16 bg-muted/50 rounded-xl border border-border/60 flex items-center justify-center mb-6",children:e.jsxs("svg",{width:"28",height:"28",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"text-muted-foreground",children:[e.jsx("path",{d:"M12 2L2 7L12 12L22 7L12 2Z",fill:"currentColor"}),e.jsx("path",{d:"M2 17L12 22L22 17",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M2 12L12 17L22 12",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}),e.jsx("h3",{className:"text-foreground font-medium mb-2 text-[15px]",children:"Agent Tower"}),e.jsx("p",{className:"text-sm max-w-sm text-center text-muted-foreground leading-relaxed",children:n("Select a task from the sidebar to view logs, monitor execution, or interact with an agent.")})]})}function ve(n){const l=on[n].icon;return e.jsx(l,{className:"size-3"})}const at=[{status:A.Review,className:"bg-warning/10 text-warning-ink",hoverClass:"hover:bg-warning/15",icon:ve(A.Review)},{status:A.Running,className:"bg-info/10 text-info-ink",hoverClass:"hover:bg-info/15",icon:ve(A.Running)},{status:A.Pending,className:"bg-muted/50 text-muted-foreground",hoverClass:"hover:bg-muted",icon:ve(A.Pending)},{status:A.Done,className:"bg-success/10 text-success-ink",hoverClass:"hover:bg-success/15",icon:ve(A.Done)},{status:A.Cancelled,className:"bg-muted/50 text-muted-foreground",hoverClass:"hover:bg-border",icon:ve(A.Cancelled)}];function dr({status:n,onChangeStatus:l}){const{t:M}=je(),[c,C]=t.useState(!1),u=t.useRef(null);t.useEffect(()=>{if(!c)return;const o=d=>{u.current&&!u.current.contains(d.target)&&C(!1)};return document.addEventListener("mousedown",o),()=>document.removeEventListener("mousedown",o)},[c]);const S=at.find(o=>o.status===n);return e.jsxs("div",{className:"relative",ref:u,children:[e.jsxs("button",{onClick:()=>l&&C(o=>!o),className:`flex items-center gap-1.5 px-2.5 py-1 rounded-full text-xs font-medium transition-colors ${S.className} ${l?"cursor-pointer hover:opacity-80":""}`,children:[S.icon,e.jsx("span",{children:M(n)}),l&&e.jsx("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"currentColor",className:`ml-0.5 transition-transform ${c?"rotate-180":""}`,children:e.jsx("path",{d:"M2 3.5L5 6.5L8 3.5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"})})]}),c&&e.jsx("div",{className:"absolute right-0 top-full mt-2 w-40 bg-background rounded-lg border border-border shadow-popover z-50 py-1 animate-in fade-in zoom-in-95 duration-100",children:at.filter(o=>o.status!==n).map(o=>e.jsxs("button",{onClick:()=>{l?.(o.status),C(!1)},className:`w-full flex items-center gap-2 px-3 py-2 text-xs font-medium transition-colors ${o.hoverClass}`,children:[e.jsx("span",{className:o.className.split(" ").find(d=>d.startsWith("text-")),children:o.icon}),e.jsx("span",{className:"text-foreground/80",children:M(o.status)})]},o.status))})]})}function io({task:n,onDeleteTask:l,isDeleting:M,onTaskStatusChange:c,onTaskPriorityChange:C,autoStartState:u,onAutoStartRecovered:S}){const{t:o}=je(),[d,D]=t.useState(""),[ye,P]=t.useState(!1),[ke,I]=t.useState(!1),[Be,se]=t.useState(!1),[ze,O]=t.useState(!1),[it,us]=t.useState(!1),[lt,ms]=t.useState(!1),[ps,fs]=t.useState(null),Ce=t.useRef(null),[Ue,te]=t.useState(!1),[R,Fe]=t.useState(null),[ne,re]=t.useState(void 0),[q,we]=t.useState(!1),_e=t.useRef(null),Ke=t.useRef(null),oe=t.useRef(null),xs=t.useRef(null),{scrollRef:U,contentRef:gs,isAtBottom:hs,scrollToBottom:Ne,stopScroll:bs}=cn({resize:"smooth",initial:"instant"}),[E,vs]=t.useState(!1),[qe,ae]=t.useState(Z),[Se,js]=t.useState(!1),ys=t.useRef(0),ks=t.useRef(Z),Cs=t.useRef(null),Ve=t.useCallback((s,r,i)=>{Ce.current?.openFile(s,r,i)},[]),{data:a,isLoading:ct}=Vn(n?.id??""),ie=Sn(n?.id),ws=ie?.status==="completed"&&u?.status!=="failed"?null:u,Ge=!!(ws||ie&&ie.status!=="completed"),{data:le}=qt(n?.id??""),{data:dt}=Vt(le?.id??""),Ns=Gt(le?.id??""),p=le??null,He=!!p,ce=n?.isGitRepo!==!1&&n?.worktreeReady!==!1,Ie=le===null&&ce,ut=!!(n?.id&&le===null),{data:V,isLoading:Ss}=Ht(n?.id??"",ut);t.useEffect(()=>{we(!1),Fe(null),re(void 0)},[n?.id]);const F=t.useMemo(()=>In(a,p,ne),[ne,p,a]);t.useEffect(()=>{ne&&!a?.some(s=>s.id===ne)&&re(void 0)},[ne,a]);const j=t.useMemo(()=>a?.find(s=>s.id===F),[F,a]),N=j?.status===Qt.ACTIVE?j.id:void 0,de=ce&&Rn(j,p);t.useEffect(()=>{if(!q||!a)return;a.some(r=>r.status==="ACTIVE"&&r.sessions&&r.sessions.length>0)&&we(!1)},[a,q]);const f=t.useMemo(()=>{if(q||!a)return null;const s=h=>{const ls=h.createdAt,he=h.endedAt??h.startedAt??ls;if(!he)return 0;const Y=Date.parse(he);return Number.isNaN(Y)?0:Y},r=(h,ls)=>{const he=h.filter(Y=>ls.includes(Y.status));return he.length===0?null:he.sort((Y,zt)=>s(zt)-s(Y))[0]??null},i=a.filter(h=>h.status==="ACTIVE"&&Array.isArray(h.sessions)).flatMap(h=>h.sessions??[]),x=r(i,[B.RUNNING])??r(i,[B.PENDING])??r(i,[B.COMPLETED,B.FAILED,B.CANCELLED]);if(x)return x;const g=a.filter(h=>(h.status==="MERGED"||h.status==="ABANDONED"||h.status==="HIBERNATED")&&Array.isArray(h.sessions)).flatMap(h=>h.sessions??[]);return r(g,[B.COMPLETED,B.FAILED,B.CANCELLED])},[a,q]),G=f?.id??"",y=He?R??"":G,mt=t.useMemo(()=>{if(!R||!a)return null;for(const s of a){const r=s.sessions?.find(i=>i.id===R);if(r)return r}return null},[R,a]),Qe=t.useMemo(()=>{if(!R||!p?.invocations)return null;const s=p.invocations.filter(r=>r.sessionId===R);return s.length===0?null:s.sort((r,i)=>{const x=Date.parse(r.updatedAt??r.createdAt??""),g=Date.parse(i.updatedAt??i.createdAt??"");return(Number.isNaN(g)?0:g)-(Number.isNaN(x)?0:x)})[0]??null},[R,p?.invocations]),pt=t.useMemo(()=>!Qe?.memberId||!p?.members?null:p.members.find(s=>s.id===Qe.memberId)??null,[Qe?.memberId,p?.members]),b=R?mt:f??null,H=b?.id,Q=t.useMemo(()=>{if(b?.workspaceId)return b.workspaceId;if(!(!b||!a))return a.find(s=>s.sessions?.some(r=>r.id===b.id))?.id},[b,a]),Re=t.useCallback((s,r)=>{const x=(r&&a?.some(g=>g.id===r)?r:void 0)??Q??F??void 0;x&&re(x),Ce.current?.openPreview(s,x)},[Q,F,a]),$e=t.useCallback((s,r)=>{Re({kind:"web",url:s},r)},[Re]),Xe=t.useCallback((s,r,i)=>{Re({kind:"visualization",sessionId:s,file:r},i)},[Re]),Is=t.useCallback(s=>{$e(s,Q)},[Q,$e]),Rs=t.useCallback(s=>{H&&Xe(H,s,Q)},[H,Q,Xe]),{isActive:ue,isCancelling:me}=jn(H??"",b?.status),m=!!n?.projectArchivedAt,Ts=!!n?.projectRepoDeletedAt,Je=o(Ts?"项目已删除,本地仓库文件也已清理。恢复项目并重新绑定仓库后才能继续操作。":"项目已删除。恢复项目后才能继续创建会话或修改任务。"),{data:$}=Xn(),[Te,As]=t.useState(null),Ae=f?gn($,Te??f.providerId):void 0;t.useEffect(()=>{As(f?.providerId??null)},[f?.providerId]);const ft=t.useMemo(()=>!f||!a?!1:!a.some(r=>r.status==="ACTIVE"&&r.sessions?.some(i=>i.id===f.id)),[f,a]),w=t.useMemo(()=>{if(!(!a||q)){if(j)return Le(j);for(const s of a)if(s.status==="ACTIVE"&&Le(s))return Le(s);return Le(a[0])}},[q,j,a]),_=yn({agentType:f?.agentType,workingDir:w,input:d,setInput:D,textareaRef:oe,minHeight:60,maxHeight:300}),K=Tn({agentType:f?.agentType,workingDir:w,input:d,setInput:D,textareaRef:oe,minHeight:60,maxHeight:300}),Ye=$t(s=>s.setVisibleContext),pe=!!(de&&N&&w&&!m),{data:T,isLoading:xt}=Gn(N??"",{enabled:pe}),{data:gt}=An(w,{enabled:pe});t.useEffect(()=>{if(!(E||!pe||!N||!w))return Ye({workspaceId:N,workingDir:w,tab:"changes"}),()=>{Ye(null)}},[E,N,Ye,pe,w]);const ht=j?.sessions??[],Ze=En(j),Es=j?.commitMessage,es=t.useMemo(()=>Wn(j,a,n?.mainBranch??""),[j,n?.mainBranch,a]),k=t.useMemo(()=>T?.conflictOp&&T.conflictedFiles.length>0?{conflictOp:T.conflictOp,conflictedFiles:T.conflictedFiles}:ps,[T?.conflictOp,T?.conflictedFiles,ps]),Ws=k?.targetWorkspaceId??N,bt=k?.targetWorktreePath??j?.worktreePath,vt=k?.sourceBranch??Ze,jt=k?.targetBranch??es,v=Xt(),Ee=t.useCallback(async()=>n?.id?v.fetchQuery({queryKey:be.tasks.body(n.id),queryFn:()=>Js.get(`/tasks/${n.id}/body`)}):null,[v,n?.id]),Ms=t.useCallback(()=>n?.id?v.invalidateQueries({queryKey:be.workspaces.list(n.id)}):Promise.resolve(),[n?.id,v]);t.useEffect(()=>{if(!Ue)return;const s=r=>{Ke.current&&!Ke.current.contains(r.target)&&te(!1)};return document.addEventListener("mousedown",s),()=>document.removeEventListener("mousedown",s)},[Ue]);const We=kn(),Ds=Hn(),Ps=Jt(),Os=Qn(n?.id??""),Ls=Cn(),ss=$n(),fe=t.useMemo(()=>!a||a.some(r=>r.status==="ACTIVE")?null:a.find(r=>r.status==="HIBERNATED")??null,[a]),ts=t.useRef(null);t.useEffect(()=>{fe&&ts.current!==fe.id&&(ss.isPending||(ts.current=fe.id,ss.mutate(fe.id,{onSettled:()=>{ts.current=null}})))},[fe,ss]);const yt=t.useCallback(async()=>{if(!n?.id)return;const s=f?.providerId??$?.find(r=>r.availability.type!=="NOT_FOUND")?.provider.id;if(s){O(!1),us(!0);try{const i=(await Ee())?.prompt??n.title;await Ps.mutateAsync(n.id),we(!0);const x=await Os.mutateAsync({workspaceKind:ce?void 0:Yt.MAIN_DIRECTORY}),g=await Js.post(`/workspaces/${x.id}/sessions`,{providerId:s,prompt:i});await Ls.mutateAsync(g.id),await v.invalidateQueries({queryKey:be.workspaces.list(n.id)})}catch(r){console.error("[retry] failed:",r),we(!1)}finally{us(!1)}}},[n?.id,n?.title,ce,f?.providerId,$,Ee,Ps,Os,Ls,v]),ns=t.useCallback(async()=>{n?.id&&(await Ee(),P(!0))},[Ee,n?.id]),kt=t.useCallback(()=>{j?.id&&Ds.mutate({workspaceId:j.id})},[Ds,j?.id]),Ct=t.useCallback(()=>{!n?.id||!l||(l(n.id),se(!1))},[n?.id,l]),Bs=t.useCallback(s=>{Fe(s),requestAnimationFrame(()=>{Ne()})},[Ne]),wt=t.useCallback(()=>{Fe(null)},[]),Me=t.useCallback(s=>{fs(s??null),ms(!0)},[]),Nt=t.useCallback(s=>Ns.mutateAsync(s),[Ns]),X=t.useCallback(()=>{v.invalidateQueries({queryKey:Zt.all})},[v]),{isConnected:zs,isLoadingSnapshot:Us,isOutputActive:Fs,lastExitAt:_s,logs:xe,entries:St,attach:De}=fn({sessionId:y,sessionStatus:b?.status,sessionStartedAt:b?.startedAt??b?.createdAt,sessionEndedAt:b?.endedAt??(ue?null:b?.updatedAt),onExit:t.useCallback(()=>{v.invalidateQueries({queryKey:["workspaces"]})},[v])});t.useEffect(()=>{if(!n?.id)return;const s=Ys.connect();s.emit(Zs.SUBSCRIBE,{topic:"task",id:n.id});const r=g=>{g.taskId===n.id&&(v.invalidateQueries({queryKey:["tasks"]}),X())},i=g=>{g.taskId===n.id&&(v.invalidateQueries({queryKey:be.workspaces.list(n.id)}),X())},x=g=>{g.taskId===n.id&&(v.invalidateQueries({queryKey:be.workspaces.list(n.id)}),X())};return s.on(z.TASK_UPDATED,r),s.on(z.WORKSPACE_COMMIT_MESSAGE_UPDATED,i),s.on(z.WORKSPACE_HIBERNATED,x),()=>{s.off(z.TASK_UPDATED,r),s.off(z.WORKSPACE_COMMIT_MESSAGE_UPDATED,i),s.off(z.WORKSPACE_HIBERNATED,x),s.emit(Zs.UNSUBSCRIBE,{topic:"task",id:n.id})}},[n?.id,v,X]),t.useEffect(()=>{if(!y)return;const s=Ys.connect(),r=i=>{i.sessionId===y&&(v.invalidateQueries({queryKey:["workspaces"]}),X())};return s.on(z.SESSION_COMPLETED,r),()=>{s.off(z.SESSION_COMPLETED,r)}},[y,v,X]);const{todos:Pe}=xn(St),{files:It,addFiles:J,removeFile:Rt,clear:Ks,buildMarkdownLinks:qs,hasFiles:ge,isUploading:Oe}=hn(),Tt=t.useMemo(()=>Mn(b),[b?.tokenUsage]),Vs=dn(xe,Tt);t.useEffect(()=>{y&&zs&&De()},[y,zs,De]);const Gs=t.useRef(n?.id);t.useEffect(()=>{if(Gs.current!==n?.id&&U.current){const s=U.current;requestAnimationFrame(()=>{s.scrollTop=s.scrollHeight})}Gs.current=n?.id},[n?.id,U]);const L=wn(),rs=t.useRef(!1),Hs=t.useCallback(async()=>{if(!d.trim()&&!ge||!y||rs.current||L.isPending||me||Oe||Ae)return;rs.current=!0;const s=qs(),r=[d.trim(),s].filter(Boolean).join(`
|
|
2
|
-
|
|
3
|
-
`);D(""),Ks(),oe.current&&(oe.current.style.height="60px"),We.mutate({id:y,message:r,providerId:Te??void 0},{onSuccess:()=>{De()},onError:()=>{D(i=>i||r)},onSettled:()=>{rs.current=!1}})},[d,y,We,De,ge,Oe,qs,Ks,Te,Ae,L.isPending,me]),At=t.useCallback(()=>{!y||L.isPending||L.mutate(y)},[y,L]),Et=t.useCallback(s=>{const r=s.target.files;r&&r.length>0&&J(Array.from(r)),s.target.value=""},[J]),Wt=t.useCallback(s=>{const r=s.clipboardData.items,i=[];for(const x of r)if(x.kind==="file"){const g=x.getAsFile();g&&i.push(g)}i.length>0&&(s.preventDefault(),J(i))},[J]),[Qs,os]=t.useState(!1),Mt=t.useCallback(s=>{s.preventDefault(),os(!0)},[]),Dt=t.useCallback(s=>{s.preventDefault(),os(!1)},[]),Pt=t.useCallback(s=>{s.preventDefault(),os(!1);const r=s.dataTransfer.files;r.length>0&&J(Array.from(r))},[J]),W=t.useCallback(s=>{const r=Cs.current?.getBoundingClientRect().width??(typeof window<"u"?window.innerWidth:void 0),i=r?Math.max(Z,r-ds-ir-lr):Z;return Math.max(Z,Math.min(Math.round(s),i))},[]),as=t.useCallback(s=>{const r=s.clientX-ys.current;ae(W(ks.current-r))},[W]),is=t.useCallback(()=>{js(!1),document.body.style.cursor="",document.body.style.userSelect=""},[]);t.useEffect(()=>{if(Se)return document.addEventListener("mousemove",as),document.addEventListener("mouseup",is),document.body.style.cursor="col-resize",document.body.style.userSelect="none",()=>{document.removeEventListener("mousemove",as),document.removeEventListener("mouseup",is),document.body.style.cursor="",document.body.style.userSelect=""}},[is,as,Se]);const Ot=t.useCallback(s=>{s.preventDefault(),ys.current=s.clientX,ks.current=qe,js(!0)},[qe]);t.useEffect(()=>{!E||Se||ae(s=>W(s))},[W,E,Se]),t.useEffect(()=>{if(!E)return;const s=()=>{ae(r=>W(r))};return window.addEventListener("resize",s),()=>window.removeEventListener("resize",s)},[W,E]);const Lt=t.useCallback(()=>{ae(s=>W(s)),vs(!0),requestAnimationFrame(()=>{Ce.current?.setTab("review")})},[W]),Bt=t.useCallback(s=>{D(s.target.value);const r=s.target;r.style.height="auto";const i=r.scrollHeight;r.style.height=`${Math.max(60,Math.min(i,300))}px`},[]),$s=pe&&N?e.jsx(Dn,{projectId:n?.projectId??"",workspaceId:N,branchName:Ze,targetBranch:es,commitMessage:Es,changes:gt,gitStatus:T,isGitStatusLoading:xt,canRunGitOperations:de,onOpenChanges:Lt,onRefreshCommitMessage:Ms,onConflict:Me,className:"mb-1.5"}):null;return n?e.jsxs("div",{className:"flex-1 flex flex-col h-full bg-background relative overflow-hidden",children:[e.jsxs("div",{className:"px-6 py-3 flex items-center justify-between border-b border-border/60 bg-background z-20 flex-shrink-0",children:[e.jsxs("div",{className:"flex flex-col min-w-0 flex-1 mr-4",children:[e.jsxs("div",{className:"flex items-center gap-1.5 mb-0.5",children:[e.jsx("span",{className:`w-2 h-2 rounded-full shrink-0 ${n.projectColor.replace("text-","bg-")}`}),e.jsx("span",{className:"text-xs text-muted-foreground truncate",children:n.projectName}),n.projectArchivedAt&&e.jsx("span",{className:"rounded-full bg-muted px-2 py-0.5 text-xs font-medium text-muted-foreground shrink-0",children:n.projectRepoDeletedAt?o("源码已删除"):o("已删除")}),e.jsx("span",{className:"text-muted-foreground text-xs",children:"/"}),e.jsx("span",{className:"text-xs text-muted-foreground font-mono truncate",children:n.branch})]}),e.jsx(Pn,{taskId:n.id,title:n.title,readOnly:m})]}),e.jsxs("div",{className:"flex items-center gap-3 flex-shrink-0",children:[e.jsx(dr,{status:n.status,onChangeStatus:!m&&c?s=>c(n.id,s):void 0}),e.jsx(Nn,{value:n.priority,onChange:!m&&C?s=>C(n.id,s):void 0}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("button",{onClick:kt,disabled:!w||m,className:"w-8 h-8 flex items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-muted transition-colors disabled:opacity-30 disabled:cursor-not-allowed",title:o("Open in IDE"),children:e.jsx(er,{size:16})}),(l||Ie)&&!m&&e.jsxs("div",{className:"relative",ref:Ke,children:[e.jsx("button",{onClick:()=>te(s=>!s),className:"w-8 h-8 flex items-center justify-center rounded-md text-muted-foreground hover:text-foreground hover:bg-muted transition-colors",title:o("More actions"),children:e.jsx(On,{size:16})}),Ue&&e.jsxs("div",{className:"absolute right-0 top-full mt-2 w-44 bg-background rounded-lg border border-border shadow-popover z-50 py-1",children:[Ie&&e.jsxs("button",{onClick:()=>{I(!0),te(!1)},className:"w-full flex items-center gap-2 px-3 py-2 text-sm text-foreground/80 hover:bg-muted/50 transition-colors",children:[e.jsx(ot,{size:15}),e.jsx("span",{children:o("创建 TeamRun")})]}),e.jsxs("button",{onClick:()=>{O(!0),te(!1)},className:"w-full flex items-center gap-2 px-3 py-2 text-sm text-foreground/80 hover:bg-muted/50 transition-colors",children:[e.jsx(en,{size:15}),e.jsx("span",{children:o("重新开始")})]}),l&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"my-1 border-t border-border/60"}),e.jsxs("button",{onClick:()=>{se(!0),te(!1)},className:"w-full flex items-center gap-2 px-3 py-2 text-sm text-destructive-ink hover:bg-destructive/10 transition-colors",children:[e.jsx(sr,{size:15}),e.jsx("span",{children:o("删除任务")})]})]})]})]})]})]})]}),de&&N&&T&&e.jsx(rr,{workspaceId:N,gitStatus:T,onResolve:()=>Me()}),e.jsxs("div",{ref:Cs,className:"flex-1 flex overflow-hidden",children:[e.jsx("div",{className:"flex min-w-0 flex-1 flex-col bg-background relative",children:He&&p?R?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"relative z-20 flex shrink-0 items-center justify-between gap-3 overflow-visible border-b border-border px-4 py-3",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:"text-xs font-semibold text-foreground",children:o("Invocation details")}),e.jsx("div",{className:"truncate text-[11px] text-muted-foreground",children:R})]}),e.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[e.jsx(Ln,{session:b,providers:$,usage:Vs,providerIdFallback:pt?.providerId,agentTypeFallback:b?.agentType,tokenTooltipSide:"bottom"}),e.jsxs(ee,{type:"button",size:"sm",variant:"ghost",className:"h-7 gap-1 rounded-lg border border-border/70 bg-background/60 px-2 text-xs font-medium text-muted-foreground hover:border-muted-foreground/40 hover:bg-muted hover:text-foreground",onClick:wt,children:[e.jsx(sn,{size:13}),e.jsx("span",{children:o("Team room")})]})]})]}),e.jsxs("div",{className:"relative flex-1 min-h-0",children:[e.jsx("div",{ref:U,className:"h-full overflow-y-auto scrollbar-app-thin px-6 pt-6 pb-4",children:e.jsx("div",{ref:gs,className:"w-full max-w-4xl mx-auto",children:Us?e.jsxs("div",{className:"flex items-center justify-center py-12 gap-3 text-muted-foreground",children:[e.jsxs("svg",{className:"animate-spin motion-reduce:[animation-duration:2.4s] h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[e.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),e.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]}),e.jsx("span",{className:"text-sm",children:o("Loading logs...")})]}):xe.length===0?e.jsx("div",{className:"text-muted-foreground text-center py-8",children:o(ue?"Waiting for agent output...":"No logs recorded for this session.")}):e.jsx(tt,{children:e.jsx(st,{logs:xe,downloadSessionId:H,isOutputActive:Fs,lastExitAt:_s,onUserToggleDetails:bs,workingDir:w,scrollElementRef:U,onOpenWorkspaceFile:Ve,onOpenPreviewUrl:Is,onOpenVisualization:Rs})})})}),!hs&&e.jsxs("button",{onClick:()=>Ne(),className:"absolute bottom-3 left-1/2 -translate-x-1/2 z-10 flex items-center gap-1.5 px-3 py-1.5 bg-background/90 backdrop-blur-sm border border-border rounded-full shadow-raised text-xs text-muted-foreground hover:bg-background hover:text-foreground transition-all","aria-label":o("Scroll to bottom"),children:[e.jsx(et,{size:14}),e.jsx("span",{children:o("回到底部")})]})]}),Pe.length>0&&e.jsx("div",{className:"px-6 pt-2 pb-1 bg-background flex-shrink-0 border-t border-border/60",children:e.jsx("div",{className:"max-w-4xl mx-auto",children:e.jsx(nt,{todos:Pe})})})]}):e.jsx(Bn,{teamRun:p,messages:dt??p.messages??[],readOnly:m,readOnlyMessage:Je,onSendMessage:Nt,onViewInvocationSession:Bs,changeSummaryBar:$s,centered:!0,workingDir:w,onOpenWorkspaceFile:Ve,onOpenPreviewUrl:$e,onOpenVisualization:Xe}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"relative flex-1 min-h-0",children:[e.jsx("div",{ref:U,className:"h-full overflow-y-auto scrollbar-app-thin px-6 pt-6 pb-4",children:e.jsxs("div",{ref:gs,className:"w-full min-w-0 max-w-4xl mx-auto",children:[(Ss||V?.body)&&e.jsx("div",{className:"mb-4 pb-4 border-b border-border/60 min-w-0",children:Ss?e.jsx("p",{className:"text-sm text-muted-foreground italic",children:o("Loading...")}):V?.body?e.jsx("div",{className:"text-sm text-muted-foreground leading-relaxed prose prose-sm max-w-none break-words overflow-hidden",children:e.jsx(an,{urlTransform:ar,components:ln,children:V.body})}):null}),!m&&e.jsx(zn,{state:ws,setupProgress:ie,sessionStarted:!!f?.startedAt,onRetry:G&&u?.status==="failed"?ns:void 0},n.id),ct?(!Ge||m)&&e.jsxs("div",{className:"flex items-center justify-center py-12 gap-3 text-muted-foreground",children:[e.jsxs("svg",{className:"animate-spin motion-reduce:[animation-duration:2.4s] h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[e.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),e.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]}),e.jsx("span",{className:"text-sm",children:o("Loading...")})]}):G?Us?e.jsxs("div",{className:"flex items-center justify-center py-12 gap-3 text-muted-foreground",children:[e.jsxs("svg",{className:"animate-spin motion-reduce:[animation-duration:2.4s] h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[e.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),e.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]}),e.jsx("span",{className:"text-sm",children:o("Loading logs...")})]}):xe.length===0?e.jsx("div",{className:"text-muted-foreground text-center py-8",children:o(ue?"Waiting for agent output...":"No logs recorded for this session.")}):e.jsx(tt,{children:e.jsx(st,{logs:xe,downloadSessionId:H,isOutputActive:Fs,lastExitAt:_s,onUserToggleDetails:bs,workingDir:w,scrollElementRef:U,onOpenWorkspaceFile:Ve,onOpenPreviewUrl:Is,onOpenVisualization:Rs})}):!Ge||u?.status==="failed"||ie?.status==="failed"||m?e.jsxs("div",{className:"flex flex-col items-center justify-center py-16 text-center",children:[(!Ge||m)&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"w-14 h-14 bg-muted/50 rounded-xl border border-border/60 flex items-center justify-center mb-5",children:e.jsx(cs,{size:24,className:"text-muted-foreground/70 ml-0.5"})}),e.jsx("h3",{className:"text-base font-medium text-foreground mb-1.5",children:o(m?"项目为只读历史":"尚未启动 Agent")}),e.jsx("p",{className:"text-sm text-muted-foreground mb-6 max-w-xs",children:m?Je:o("选择一个 Agent 来执行此任务,Agent 将自动创建工作空间并开始工作。")})]}),!m&&(!u||u.status==="failed")&&e.jsxs("div",{className:"flex flex-wrap items-center justify-center gap-3",children:[e.jsxs(ee,{onClick:ns,disabled:!!(u&&u.status!=="failed"),children:[e.jsx(cs,{size:16,className:"mr-1.5"}),u?.status==="failed"?o("重试启动 Agent"):o("启动 Agent")]}),Ie&&e.jsxs(ee,{variant:"outline",onClick:()=>I(!0),children:[e.jsx(ot,{size:16,className:"mr-1.5"}),o("创建 TeamRun")]})]})]}):null]})}),!hs&&e.jsxs("button",{onClick:()=>Ne(),className:"absolute bottom-3 left-1/2 -translate-x-1/2 z-10 flex items-center gap-1.5 px-3 py-1.5 bg-background/90 backdrop-blur-sm border border-border rounded-full shadow-raised text-xs text-muted-foreground hover:bg-background hover:text-foreground transition-all","aria-label":o("Scroll to bottom"),children:[e.jsx(et,{size:14}),e.jsx("span",{children:o("回到底部")})]})]}),Pe.length>0&&e.jsx("div",{className:"px-6 pt-2 pb-1 bg-background flex-shrink-0 border-t border-border/60",children:e.jsx("div",{className:"max-w-4xl mx-auto",children:e.jsx(nt,{todos:Pe})})}),m?e.jsx("div",{className:"p-6 pt-3 bg-background flex-shrink-0 w-full z-10 pb-6 border-t border-border/60",children:e.jsx("div",{className:"max-w-4xl mx-auto",children:e.jsx("div",{className:"bg-muted/50 rounded-xl border border-border px-4 py-3 text-sm text-muted-foreground",children:Je})})}):ft?e.jsx("div",{className:"p-6 pt-3 bg-background flex-shrink-0 w-full z-10 pb-6 border-t border-border/60",children:e.jsx("div",{className:"max-w-4xl mx-auto",children:e.jsxs("div",{className:"flex items-center justify-between bg-muted/50 rounded-xl border border-border px-4 py-3",children:[e.jsx("span",{className:"text-sm text-muted-foreground",children:o("代码已合并,以上为历史沟通记录")}),e.jsxs(ee,{size:"sm",onClick:ns,children:[e.jsx(cs,{size:14,className:"mr-1.5"}),o("启动新 Agent")]})]})})}):e.jsxs("div",{className:"p-6 pt-2 bg-background flex-shrink-0 w-full z-10 pb-6 border-t border-transparent",onDragOver:Mt,onDragLeave:Dt,onDrop:Pt,children:[e.jsxs("div",{className:"max-w-4xl mx-auto",children:[$s,y?e.jsx(un,{sessionId:y}):null,e.jsxs("div",{ref:_e,className:`relative bg-background rounded-xl border hover:border-ring/40 focus-within:border-ring/60 transition-colors duration-200 ${Qs?"border-foreground/40 bg-foreground/[0.02]":"border-border"}`,children:[e.jsx(bn,{files:It,onRemove:Rt}),e.jsx("textarea",{ref:oe,value:d,onChange:Bt,onPaste:Wt,onKeyDown:s=>{K.handleKeyDown(s)||_.handleKeyDown(s)||s.key==="Enter"&&!s.shiftKey&&!s.repeat&&!s.nativeEvent.isComposing&&s.nativeEvent.keyCode!==229&&(s.preventDefault(),Hs())},rows:1,placeholder:o(Qs?"Drop files here...":G&&!ue?"Continue conversation...":"Message Agent..."),className:"w-full px-4 pt-4 pb-2 bg-transparent border-none focus:outline-none resize-none text-sm text-foreground placeholder-muted-foreground/70 leading-relaxed",style:{minHeight:"60px",maxHeight:"300px"}}),e.jsx("input",{ref:xs,type:"file",multiple:!0,className:"hidden",onChange:Et}),e.jsxs("div",{className:"flex items-center justify-between px-2 pb-2 pt-1",children:[e.jsx("div",{className:"flex items-center gap-1",children:e.jsx("button",{onClick:()=>xs.current?.click(),className:"p-2 text-muted-foreground hover:text-muted-foreground hover:bg-muted rounded-lg transition-colors",title:o("Upload file"),children:e.jsx(tr,{size:18})})}),e.jsxs("div",{className:"flex items-center gap-2",children:[f&&$&&e.jsx(mn,{providers:$,currentProviderId:Te,agentType:f.agentType,runtimeType:f.runtimeType,onSelect:As}),e.jsx(pn,{usage:Vs}),ue&&!d.trim()&&!ge?e.jsx("button",{onClick:At,disabled:L.isPending||me,"aria-label":o("Stop"),title:o("Stop"),className:"p-2 rounded-lg transition-all duration-200 bg-destructive-ink text-white hover:bg-destructive-ink/90 disabled:opacity-50",children:e.jsx(tn,{size:14})}):e.jsx("button",{onClick:Hs,disabled:!d.trim()&&!ge||Oe||We.isPending||L.isPending||me||!!Ae,className:`p-2 rounded-lg transition-all duration-200 ${(d.trim()||ge)&&!Oe&&!We.isPending&&!L.isPending&&!me&&!Ae?"bg-primary text-primary-foreground hover:bg-primary/90":"bg-transparent text-muted-foreground cursor-not-allowed"}`,children:e.jsx(nn,{size:18})})]})]})]})]}),e.jsx(rt,{open:_.query!==null,anchorRef:_e,commands:_.filteredCommands,selectedIndex:_.selectedIndex,query:_.query??"",hasCatalog:_.allCommands.length>0,onSelect:_.applyCommand}),e.jsx(rt,{open:K.query!==null,anchorRef:_e,commands:K.filteredSkills,selectedIndex:K.selectedIndex,query:K.query??"",hasCatalog:K.allSkills.length>0,title:"Skills",queryPrefix:"$",emptyCatalogMessage:"No skills catalog for this agent yet.",onSelect:K.applySkill})]})]})}),E&&e.jsx("div",{className:"w-1 cursor-col-resize hover:bg-border active:bg-ring/40 transition-colors z-50 -ml-[2px] flex-shrink-0 h-full",onMouseDown:Ot,role:"separator","aria-orientation":"vertical","aria-label":o("调整工作区宽度")}),e.jsx("div",{className:"flex h-full flex-shrink-0 bg-background",style:{width:E?ds+qe:ds},children:e.jsx(Un,{sessionId:G||void 0,workspaceId:F,workingDir:w,projectId:n.projectId,readOnly:m,repoDeleted:Ts,teamRun:p,teamStatus:p?e.jsx(Fn,{teamRun:p,workspaces:a,selectedWorkspaceId:F,onSelectWorkspace:re,onViewInvocationSession:Bs}):void 0,workspaces:a,selectedWorkspaceId:F,onSelectWorkspace:re,variant:"rail",expanded:E,onExpandedChange:s=>{s&&ae(r=>W(r)),vs(s)},minContentWidth:Z,tabRef:Ce,gitAvailable:ce,gitProps:de&&N?{branchName:Ze,targetBranch:es,commitMessage:Es,canRunGitOperations:!0,onRefreshCommitMessage:Ms,onConflict:Me,onResolveConflicts:()=>Me()}:void 0})})]}),!m&&e.jsx(_n,{isOpen:ye,onClose:()=>P(!1),taskId:n.id,projectId:n.projectId,taskTitle:V?.title??n.title,taskDescription:V?.body??"",taskPrompt:V?.prompt,projectIsGitRepo:n.isGitRepo,projectWorktreeReady:n.worktreeReady,projectGitReason:n.reason,onStarted:()=>S?.(n.id)}),Ie&&!m&&e.jsx(nr,{isOpen:ke,onClose:()=>I(!1),taskId:n.id}),de&&Ws&&k&&e.jsx(Kn,{open:lt,onOpenChange:s=>{ms(s),s||fs(null)},workspaceId:Ws,conflictOp:k.conflictOp,conflictedFiles:k.conflictedFiles,sourceBranch:vt,targetBranch:jt,operation:T?.operation,worktreePath:bt,mergeAborted:k.mergeAborted,mergeStrategy:k.mergeStrategy,sourceWorkspaceId:k.sourceWorkspaceId,targetWorkspaceId:k.targetWorkspaceId,sourceWorktreePath:k.sourceWorktreePath,targetWorktreePath:k.targetWorktreePath,sessions:ht,currentSessionId:He?void 0:G,teamRunId:p?.id}),e.jsx(Yn,{isOpen:ze,onClose:()=>O(!1),onConfirm:yt,title:o("重新开始任务"),description:e.jsx("p",{children:o("将归档当前工作区并自动在新 Worktree 中重新启动 Agent,旧工作区内容保留供参考。")}),confirmText:o("确认重试"),variant:"default",isLoading:it}),e.jsx(Zn,{isOpen:Be,onClose:()=>se(!1),onConfirm:Ct,taskId:n.id,taskTitle:n.title,workspaces:a,isLoading:M})]}):e.jsx(cr,{})}export{io as TaskDetail};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{u as Re,F as gt,H as bt,J as ft,K as ht,M as vt,N as jt,O as yt,Q as Pt,r as l,j as e,T as Nt,i as Ee,U as kt,k as Tt,n as B,w as Ae,B as p,x as _e,t as c,V as wt}from"./index-Cz73HpYH.js";import{C as Fe}from"./confirm-dialog-BRkrtULz.js";import{M as Ct}from"./modal-Kpqn-nDO.js";import{S as $}from"./select-DGwKE4l0.js";import"./mermaid-NOHMQCX5-DmKVQY9m.js";import"./use-attachments-CK7y5KsN.js";import{M as U}from"./MemberAvatar-BG0VDZKf.js";import{u as It}from"./use-providers-BRyZjuBG.js";import{T as ue,P as R}from"./trash-2-ALAYDudv.js";import{C as St}from"./chevron-up-DOkDFvIc.js";import{C as Mt}from"./index-B6Lvy5Sr.js";import"./dialog-B_vC5R4B.js";import"./index-BCV57B4O.js";import"./select-yem-xN9Z.js";import"./menu-styles-DWynpVVz.js";import"./check-DYlb0A_N.js";import"./index-ZO2tqdha.js";import"./index-CTG-4w90.js";import"./index-CMjLMilU.js";import"./tooltip-CHOgkFbE.js";import"./kbd-B3m64lRd.js";import"./people-C6b3eeLq.js";const o="/avatars/presets",Et=[{id:"developer",label:"Developer",src:`${o}/avatar-preset-01-developer.png`},{id:"architect",label:"Architect",src:`${o}/avatar-preset-02-architect.png`},{id:"tester",label:"Tester",src:`${o}/avatar-preset-03-tester.png`},{id:"devops",label:"DevOps",src:`${o}/avatar-preset-04-devops.png`},{id:"data-scientist",label:"Data scientist",src:`${o}/avatar-preset-05-data-scientist.png`},{id:"frontend",label:"Frontend",src:`${o}/avatar-preset-06-frontend.png`},{id:"backend",label:"Backend",src:`${o}/avatar-preset-07-backend.png`},{id:"security",label:"Security",src:`${o}/avatar-preset-08-security.png`},{id:"project-manager",label:"Project manager",src:`${o}/avatar-preset-09-project-manager.png`},{id:"product-manager",label:"Product manager",src:`${o}/avatar-preset-10-product-manager.png`},{id:"scrum-master",label:"Scrum master",src:`${o}/avatar-preset-11-scrum-master.png`},{id:"tech-lead",label:"Tech lead",src:`${o}/avatar-preset-12-tech-lead.png`},{id:"coordinator",label:"Coordinator",src:`${o}/avatar-preset-13-coordinator.png`},{id:"mentor",label:"Mentor",src:`${o}/avatar-preset-14-mentor.png`},{id:"reviewer",label:"Reviewer",src:`${o}/avatar-preset-15-reviewer.png`},{id:"ui-designer",label:"UI designer",src:`${o}/avatar-preset-16-ui-designer.png`},{id:"ux-researcher",label:"UX researcher",src:`${o}/avatar-preset-17-ux-researcher.png`},{id:"documenter",label:"Documenter",src:`${o}/avatar-preset-18-documenter.png`},{id:"translator",label:"Translator",src:`${o}/avatar-preset-19-translator.png`},{id:"analyst",label:"Analyst",src:`${o}/avatar-preset-20-analyst.png`},{id:"consultant",label:"Consultant",src:`${o}/avatar-preset-21-consultant.png`},{id:"creative-director",label:"Creative director",src:`${o}/avatar-preset-22-creative-director.png`},{id:"support",label:"Support",src:`${o}/avatar-preset-23-support.png`},{id:"assistant",label:"Assistant",src:`${o}/avatar-preset-24-assistant.png`},{id:"robot",label:"Robot",src:`${o}/avatar-preset-25-robot.png`}],De=wt(),At=2*1024*1024,_t=[],Ft=[],Ot=[],ze=[{key:"readRoom",label:"读房间"},{key:"postRoomMessage",label:"发房间消息"},{key:"mentionMembers",label:"提及成员"},{key:"stopMemberWork",label:"停止成员工作"},{key:"markReadyForReview",label:"标记可审查"},{key:"readFiles",label:"读文件"},{key:"writeFiles",label:"写文件"},{key:"runCommands",label:"运行命令"},{key:"readDiff",label:"读 diff"},{key:"mergeWorkspace",label:"合并工作区"}],Le={readRoom:!1,postRoomMessage:!1,mentionMembers:!1,stopMemberWork:!1,markReadyForReview:!1,readFiles:!1,writeFiles:!1,runCommands:!1,readDiff:!1,mergeWorkspace:!1},Oe=[{value:"none",label:"无"},{value:"shared",label:"共享"},{value:"dedicated",label:"独占"}],$t=[{value:"MENTION_ONLY",label:"仅提及"},{value:"USER_MESSAGES",label:"所有用户消息"}],Rt=[{value:"new_per_request",label:"每次新会话"},{value:"resume_last",label:"复用上次会话"}],Dt=[{value:"own_only",label:"仅自己队列"},{value:"team_pending",label:"全队列待处理"}];function Y(){return{name:"",aliasesText:"",providerId:"",rolePrompt:"",capabilities:{...Le},workspacePolicy:"none",triggerPolicy:"MENTION_ONLY",sessionPolicy:"new_per_request",queueManagementPolicy:"own_only",avatar:""}}function xe(r){return{name:r.name,aliasesText:r.aliases.join(", "),providerId:r.providerId,rolePrompt:r.rolePrompt,capabilities:{...Le,...r.capabilities},workspacePolicy:r.workspacePolicy,triggerPolicy:r.triggerPolicy,sessionPolicy:r.sessionPolicy,queueManagementPolicy:r.queueManagementPolicy,avatar:r.avatar??""}}function q(){return{name:"",heartbeatTimeoutMinutes:10,memberPresetIds:[]}}function pe(r){return{name:r.name,heartbeatTimeoutMinutes:r.heartbeatTimeoutMinutes??10,memberPresetIds:r.members?.map(i=>i.memberPresetId)??[]}}function zt(r,i,d,m){if(d.filter(A=>A===m).length<=1)return r;const W=d.slice(0,i+1).filter(A=>A===m).length;return`${r} #${W}`}function Lt(r){return Array.from(new Set(r.split(/[\n,]/).map(i=>i.trim()).filter(Boolean)))}function Bt(r){return r.trim()||null}function $e(r){return ze.reduce((i,d)=>i+(r[d.key]?1:0),0)}function E(r,i){return r instanceof Error?r.message:i}function Ut(r){return["image/png","image/jpeg","image/webp"].includes(r.type)}async function Yt(r){const i=new FormData;i.append("file",r);const d=await fetch(`${De}/attachments/upload`,{method:"POST",body:i});if(!d.ok){const m=await d.json().catch(()=>({}));throw new Error(m.error||m.message||`Upload failed (${d.status})`)}return d.json()}function G({title:r,error:i,isFetching:d,onRetry:m}){const{t:T}=Re();return e.jsx("div",{role:"alert",className:"rounded-lg border border-destructive/30 bg-destructive/10 px-4 py-3 text-sm text-destructive-ink",children:e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:"font-medium",children:r}),e.jsx("div",{className:"mt-1 text-xs text-destructive-ink",children:E(i,T("请稍后重试。"))})]}),e.jsx(p,{type:"button",size:"sm",variant:"outline",onClick:m,disabled:d,children:T(d?"加载中...":"重试")})]})})}function ur(){const{t:r}=Re(),{data:i,error:d,isError:m,isFetching:T,isLoading:W,refetch:A}=It(),{data:Be,error:ge,isError:w,isFetching:be,isLoading:V,refetch:fe}=gt(),{data:Ue,error:Ye,isError:D,isFetching:qe,isLoading:H,refetch:Ge}=bt(),Q=ft(),J=ht(),he=vt(),K=jt(),X=yt(),ve=Pt(),[Z,je]=l.useState("presets"),[C,ee]=l.useState("edit"),[h,te]=l.useState(null),[a,j]=l.useState(Y()),[ye,_]=l.useState(!1),[y,re]=l.useState(null),[We,se]=l.useState(!1),[Pe,Ne]=l.useState(!1),ke=l.useRef(null),[I,ae]=l.useState("edit"),[v,ne]=l.useState(null),[g,b]=l.useState(q()),[Te,P]=l.useState(!1),[N,oe]=l.useState(null),[we,F]=l.useState(!1),u=Be??_t,f=Ue??Ft,z=i??Ot,O=l.useMemo(()=>new Map(u.map(t=>[t.id,t])),[u]),le=l.useMemo(()=>new Map(f.map(t=>[t.id,t])),[f]),Ve=l.useMemo(()=>{const t=z.map(({provider:s,availability:n})=>({value:s.id,label:s.name+(n.type==="NOT_FOUND"?r(" (不可用)"):""),icon:e.jsx(Nt,{agentType:s.agentType,className:"size-4"}),disabled:n.type==="NOT_FOUND"}));return a.providerId&&!t.some(s=>s.value===a.providerId)&&t.unshift({value:a.providerId,label:`${a.providerId}${r(" (不可用)")}`,disabled:!0}),t},[a.providerId,z,r]),ie=h?O.get(h)??null:null,de=v?le.get(v)??null:null,He=l.useMemo(()=>new Map(z.map(({provider:t,availability:s})=>[t.id,t.name+(s.type==="NOT_FOUND"?r(" (不可用)"):"")])),[z,r]);if(l.useEffect(()=>{if(!(V||w||ye)){if(C==="create"){j(Y());return}if(h){const t=O.get(h);t&&j(xe(t));return}if(u.length>0){const t=u[0];te(t.id),ee("edit"),j(xe(t));return}ee("create"),te(null),j(Y())}},[O,ye,C,u,w,V,h]),l.useEffect(()=>{if(!(H||D||Te)){if(I==="create"){b(q());return}if(v){const t=le.get(v);t&&b(pe(t));return}if(f.length>0){const t=f[0];ne(t.id),ae("edit"),b(pe(t));return}ae("create"),ne(null),b(q())}},[v,le,Te,I,f,D,H]),W||V||H)return e.jsx(Ee,{className:"max-w-6xl",children:e.jsx(kt,{cards:6})});const x=(t,s)=>{j(n=>({...n,[t]:s})),_(!0)},Qe=(t,s)=>{j(n=>({...n,capabilities:{...n.capabilities,[t]:s}})),_(!0)},Je=t=>{x("avatar",t),se(!1)},Ke=()=>{x("avatar","")},Xe=async t=>{const s=t.target.files?.[0];if(t.target.value="",!!s){if(!Ut(s)){c.error(r("仅支持 PNG、JPG、WebP 头像。"));return}if(s.size>At){c.error(r("头像图片不能超过 2MB。"));return}Ne(!0);try{const n=await Yt(s);x("avatar",`${De}${n.url}`),c.success(r("头像已上传"))}catch(n){c.error(E(n,r("头像上传失败")))}finally{Ne(!1)}}},S=(t,s)=>{ee(t),te(s?.id??null),j(s?xe(s):Y()),_(!1)},Ce=(t,s)=>{b(n=>({...n,[t]:s})),P(!0)},M=(t,s)=>{ae(t),ne(s?.id??null),b(s?pe(s):q()),P(!1)},Ze=async()=>{const t={name:a.name.trim(),aliases:Lt(a.aliasesText),providerId:a.providerId.trim(),rolePrompt:a.rolePrompt.trim(),capabilities:{...a.capabilities},workspacePolicy:a.workspacePolicy,triggerPolicy:a.triggerPolicy,sessionPolicy:a.sessionPolicy,queueManagementPolicy:a.queueManagementPolicy,avatar:Bt(a.avatar)};try{if(C==="create"||!h){const s=await Q.mutateAsync(t);S("edit",s),c.success(r("已创建"))}else{const s=await J.mutateAsync({id:h,data:t});S("edit",s),c.success(r("已保存"))}}catch(s){c.error(E(s,r("保存失败")))}},et=async()=>{if(y)try{await he.mutateAsync(y.id),c.success(r("Deleted"));const t=u.filter(s=>s.id!==y.id);h===y.id&&(t.length>0?S("edit",t[0]):S("create",null)),re(null)}catch(t){c.error(E(t,r("删除失败")))}},tt=async()=>{const t={name:g.name.trim(),heartbeatTimeoutMinutes:g.heartbeatTimeoutMinutes,memberPresetIds:g.memberPresetIds};try{if(I==="create"||!v){const s=await K.mutateAsync(t);M("edit",s),c.success(r("已创建"))}else{const s=await X.mutateAsync({id:v,data:t});M("edit",s),c.success(r("已保存"))}}catch(s){c.error(E(s,r("保存失败")))}},rt=async()=>{if(N)try{await ve.mutateAsync(N.id),c.success(r("Deleted"));const t=f.filter(s=>s.id!==N.id);v===N.id&&(t.length>0?M("edit",t[0]):M("create",null)),oe(null)}catch(t){c.error(E(t,r("删除失败")))}},st=$e(a.capabilities),at=!!a.name.trim()&&!!a.providerId.trim()&&!!a.rolePrompt.trim()&&!m&&!w&&!Q.isPending&&!J.isPending,nt=!!g.name.trim()&&!D&&!w&&!K.isPending&&!X.isPending,ce=g.memberPresetIds.map(t=>O.get(t)).filter(t=>!!t),ot=t=>{_(!1),S("edit",t)},lt=()=>{_(!1),S("create",null)},it=t=>{P(!1),M("edit",t)},dt=()=>{P(!1),M("create",null)},ct=t=>{b(s=>({...s,memberPresetIds:[...s.memberPresetIds,t]})),P(!0)},mt=t=>{b(s=>({...s,memberPresetIds:s.memberPresetIds.filter((n,k)=>k!==t)})),P(!0)},Ie=(t,s)=>{b(n=>{const k=t+s;if(k<0||k>=n.memberPresetIds.length)return n;const me=[...n.memberPresetIds],[pt]=me.splice(t,1);return me.splice(k,0,pt),{...n,memberPresetIds:me}}),P(!0)},ut=t=>{ot(t),F(!0)},Se=()=>{lt(),F(!0)},xt=t=>{it(t),F(!0)},Me=()=>{dt(),F(!0)},L=()=>F(!1);return e.jsxs(Ee,{className:"max-w-6xl",children:[e.jsx(Tt,{title:r("团队协作设置"),actions:e.jsxs("div",{className:"inline-flex rounded-lg border border-border bg-muted/80 p-0.5",children:[e.jsx("button",{type:"button",onClick:()=>{je("presets"),L()},className:B("rounded-md px-3 py-1.5 text-[12px] font-medium transition-all",Z==="presets"?"bg-background text-foreground shadow-raised":"text-muted-foreground hover:text-foreground"),children:r("成员预设")}),e.jsx("button",{type:"button",onClick:()=>{je("templates"),L()},className:B("rounded-md px-3 py-1.5 text-[12px] font-medium transition-all",Z==="templates"?"bg-background text-foreground shadow-raised":"text-muted-foreground hover:text-foreground"),children:r("团队模板")})]})}),m&&e.jsx(G,{title:r("Provider 列表加载失败"),error:d,isFetching:T,onRetry:()=>{A()}}),Z==="presets"?we?e.jsxs("div",{className:"rounded-xl border border-border bg-background",children:[e.jsxs("div",{className:"flex items-center justify-between gap-3 border-b border-border/60 px-5 py-3",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsxs("button",{onClick:L,className:"flex items-center gap-1.5 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(Ae,{size:14}),r("返回")]}),e.jsx("span",{className:"text-muted-foreground",children:"|"}),e.jsx("h3",{className:"text-[13px] font-semibold text-foreground",children:C==="create"?r("创建新预设"):ie?.name??r("编辑预设")})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[C==="edit"&&ie&&e.jsx("button",{onClick:()=>re(ie),className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:text-destructive hover:bg-destructive/10 transition-colors",title:r("删除"),children:e.jsx(ue,{size:14})}),e.jsx(p,{size:"sm",onClick:Ze,disabled:!at,children:Q.isPending||J.isPending?r("保存中..."):r(C==="create"?"创建":"保存")})]})]}),e.jsxs("div",{className:"p-5 space-y-5",children:[e.jsxs("div",{className:"flex items-start gap-4",children:[e.jsxs("div",{className:"shrink-0",children:[e.jsx(U,{name:a.name||r("Agent"),avatar:a.avatar,className:"h-14 w-14 text-sm"}),e.jsxs("div",{className:"flex justify-center gap-1 mt-2",children:[e.jsx("button",{type:"button",onClick:()=>se(!0),className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:r("选择")}),e.jsx("span",{className:"text-[10px] text-muted-foreground",children:"·"}),e.jsx("button",{type:"button",onClick:()=>ke.current?.click(),disabled:Pe,className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:r(Pe?"...":"上传")}),a.avatar.trim()&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-[10px] text-muted-foreground",children:"·"}),e.jsx("button",{type:"button",onClick:Ke,className:"text-xs text-muted-foreground hover:text-destructive-ink transition-colors",children:r("清除")})]})]}),e.jsx("input",{ref:ke,type:"file",accept:"image/png,image/jpeg,image/webp",className:"hidden",onChange:Xe})]}),e.jsxs("div",{className:"flex-1 min-w-0 grid gap-3 sm:grid-cols-2",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("名称")}),e.jsx("input",{value:a.name,onChange:t=>x("name",t.target.value),className:"w-full rounded-lg border border-border bg-background px-3 py-2 text-sm transition-colors focus:border-ring focus:outline-none"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("别名")}),e.jsx("input",{value:a.aliasesText,onChange:t=>x("aliasesText",t.target.value),placeholder:r("alice, a, reviewer"),className:"w-full rounded-lg border border-border bg-background px-3 py-2 text-sm transition-colors focus:border-ring focus:outline-none"})]})]})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("Provider")}),e.jsx($,{value:a.providerId,onChange:t=>x("providerId",t),options:Ve,disabled:m}),m&&e.jsx("p",{className:"mt-1 text-xs text-destructive-ink",children:r("Provider 列表加载失败。")})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("角色提示词")}),e.jsx("textarea",{value:a.rolePrompt,onChange:t=>x("rolePrompt",t.target.value),rows:4,className:"w-full rounded-lg border border-border bg-muted/50 px-3 py-2 text-sm font-mono transition-colors focus:border-ring focus:bg-background focus:outline-none resize-y"})]}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-end justify-between gap-3 mb-2",children:[e.jsx("label",{className:"text-[12px] font-medium text-muted-foreground",children:r("可用能力")}),e.jsxs("span",{className:"text-[11px] text-muted-foreground",children:[st,"/10"]})]}),e.jsx("div",{className:"grid gap-1 sm:grid-cols-2 xl:grid-cols-3",children:ze.map(t=>e.jsxs("label",{className:"flex items-center gap-2 rounded px-2.5 py-1.5 text-[12px] text-foreground hover:bg-muted transition-colors cursor-pointer",children:[e.jsx("input",{type:"checkbox",checked:a.capabilities[t.key],onChange:s=>Qe(t.key,s.target.checked),className:"h-3.5 w-3.5 rounded border-border"}),e.jsx("span",{children:r(t.label)})]},t.key))})]}),e.jsxs("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("工作区")}),e.jsx($,{value:a.workspacePolicy,onChange:t=>x("workspacePolicy",t),options:Oe.map(t=>({value:t.value,label:r(t.label)}))})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("触发")}),e.jsx($,{value:a.triggerPolicy,onChange:t=>x("triggerPolicy",t),options:$t.map(t=>({value:t.value,label:r(t.label)}))})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("会话")}),e.jsx($,{value:a.sessionPolicy,onChange:t=>x("sessionPolicy",t),options:Rt.map(t=>({value:t.value,label:r(t.label)}))})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("队列")}),e.jsx($,{value:a.queueManagementPolicy,onChange:t=>x("queueManagementPolicy",t),options:Dt.map(t=>({value:t.value,label:r(t.label)}))})]})]})]})]}):e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between gap-3 mb-4",children:[e.jsx("span",{className:"text-[12px] text-muted-foreground",children:r("{count} 个成员预设",{count:u.length})}),e.jsxs(p,{size:"sm",variant:"outline",onClick:Se,children:[e.jsx(R,{size:13})," ",r("新增预设")]})]}),w?e.jsx(G,{title:r("加载失败"),error:ge,isFetching:be,onRetry:()=>{fe()}}):u.length===0?e.jsx(_e,{message:r("暂无成员预设"),action:e.jsxs(p,{size:"sm",onClick:Se,children:[e.jsx(R,{size:13,className:"mr-1"})," ",r("新增预设")]})}):e.jsx("div",{className:"grid gap-3 grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",children:u.map(t=>{const s=$e(t.capabilities);return e.jsxs("button",{type:"button",onClick:()=>ut(t),className:"flex items-start gap-3 rounded-xl border border-border bg-background p-4 text-left transition-all hover:border-border hover:shadow-raised",children:[e.jsx(U,{name:t.name,avatar:t.avatar,className:"h-10 w-10 text-xs shrink-0"}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("div",{className:"truncate text-[13px] font-semibold text-foreground",children:t.name}),t.aliases.length>0&&e.jsx("div",{className:"truncate text-xs text-muted-foreground mt-0.5",children:t.aliases.join(", ")}),e.jsx("div",{className:"truncate text-xs text-muted-foreground mt-1",children:He.get(t.providerId)??t.providerId}),e.jsxs("div",{className:"flex flex-wrap items-center gap-1.5 mt-2",children:[e.jsx("span",{className:"rounded bg-muted px-1.5 py-0.5 text-xs font-medium text-muted-foreground",children:r(Oe.find(n=>n.value===t.workspacePolicy)?.label??t.workspacePolicy)}),e.jsxs("span",{className:"rounded bg-muted px-1.5 py-0.5 text-xs font-medium text-muted-foreground",children:[s,"/10 ",r("能力")]})]})]})]},t.id)})})]}):we?e.jsxs("div",{className:"rounded-xl border border-border bg-background",children:[e.jsxs("div",{className:"flex items-center justify-between gap-3 border-b border-border/60 px-5 py-3",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsxs("button",{onClick:L,className:"flex items-center gap-1.5 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(Ae,{size:14}),r("返回")]}),e.jsx("span",{className:"text-muted-foreground",children:"|"}),e.jsx("h3",{className:"text-[13px] font-semibold text-foreground",children:I==="create"?r("创建新模板"):de?.name??r("编辑模板")})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[I==="edit"&&de&&e.jsx("button",{onClick:()=>oe(de),className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:text-destructive hover:bg-destructive/10 transition-colors",title:r("删除"),children:e.jsx(ue,{size:14})}),e.jsx(p,{size:"sm",onClick:tt,disabled:!nt,children:K.isPending||X.isPending?r("保存中..."):r(I==="create"?"创建":"保存")})]})]}),e.jsxs("div",{className:"p-5 space-y-5",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("模板名称")}),e.jsx("input",{value:g.name,onChange:t=>Ce("name",t.target.value),className:"w-full rounded-lg border border-border bg-background px-3 py-2 text-sm transition-colors focus:border-ring focus:outline-none"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-1",children:r("成员心跳检测时间(分钟)")}),e.jsx("input",{type:"number",min:1,max:120,step:1,value:g.heartbeatTimeoutMinutes,onChange:t=>Ce("heartbeatTimeoutMinutes",Math.min(120,Math.max(1,Number(t.target.value)||1))),className:"w-full rounded-lg border border-border bg-background px-3 py-2 text-sm transition-colors focus:border-ring focus:outline-none"})]}),e.jsxs("div",{className:"grid gap-4 xl:grid-cols-2",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-2",children:r("可用预设")}),e.jsx("div",{className:"max-h-[400px] space-y-1 overflow-y-auto scrollbar-app-thin",children:w?e.jsx(G,{title:r("加载失败"),error:ge,isFetching:be,onRetry:()=>{fe()}}):u.length===0?e.jsx("div",{className:"rounded-lg border border-dashed border-border p-3 text-center text-[12px] text-muted-foreground",children:r("先创建成员预设")}):u.map(t=>{const s=g.memberPresetIds.filter(n=>n===t.id).length;return e.jsxs("button",{type:"button",onClick:()=>ct(t.id),className:B("flex w-full items-center gap-2.5 rounded-lg border px-3 py-2 text-left transition-all",s>0?"border-foreground bg-muted":"border-border bg-background hover:border-border"),children:[e.jsx(U,{name:t.name,avatar:t.avatar,className:"h-7 w-7 text-[10px] shrink-0"}),e.jsx("div",{className:"min-w-0 flex-1",children:e.jsx("div",{className:"truncate text-[12px] font-medium text-foreground",children:t.name})}),e.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[s>0&&e.jsxs("span",{className:"rounded-full bg-primary px-1.5 py-0.5 text-[11px] font-medium text-primary-foreground",children:["x",s]}),e.jsx(R,{size:13,className:"text-muted-foreground"})]})]},t.id)})})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-[12px] font-medium text-muted-foreground mb-2",children:r("已选成员")}),e.jsx("div",{className:"max-h-[400px] space-y-1 overflow-y-auto scrollbar-app-thin",children:ce.length===0?e.jsx("div",{className:"rounded-lg border border-dashed border-border p-3 text-center text-[12px] text-muted-foreground",children:r("尚未选择")}):ce.map((t,s)=>e.jsxs("div",{className:"flex items-center justify-between gap-2 rounded-lg border border-border bg-background px-3 py-2",children:[e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx(U,{name:t.name,avatar:t.avatar,className:"h-7 w-7 text-[10px] shrink-0"}),e.jsx("span",{className:"truncate text-[12px] font-medium text-foreground",children:zt(t.name,s,g.memberPresetIds,t.id)})]}),e.jsxs("div",{className:"flex items-center gap-0.5 shrink-0",children:[e.jsx(p,{type:"button",variant:"ghost",size:"icon-sm",onClick:()=>Ie(s,-1),disabled:s===0,children:e.jsx(St,{size:13})}),e.jsx(p,{type:"button",variant:"ghost",size:"icon-sm",onClick:()=>Ie(s,1),disabled:s===ce.length-1,children:e.jsx(Mt,{size:13})}),e.jsx(p,{type:"button",variant:"ghost",size:"icon-sm",onClick:()=>mt(s),children:e.jsx(ue,{size:13})})]})]},`${t.id}-${s}`))})]})]})]})]}):e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between gap-3 mb-4",children:[e.jsx("span",{className:"text-[12px] text-muted-foreground",children:r("{count} 个团队模板",{count:f.length})}),e.jsxs(p,{size:"sm",variant:"outline",onClick:Me,children:[e.jsx(R,{size:13})," ",r("新增模板")]})]}),D?e.jsx(G,{title:r("加载失败"),error:Ye,isFetching:qe,onRetry:()=>{Ge()}}):f.length===0?e.jsx(_e,{message:r("暂无团队模板"),action:e.jsxs(p,{size:"sm",onClick:Me,children:[e.jsx(R,{size:13,className:"mr-1"})," ",r("新增模板")]})}):e.jsx("div",{className:"grid gap-3 grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",children:f.map(t=>{const s=t.members?.length??0,n=(t.members??[]).slice(0,3).map(k=>O.get(k.memberPresetId)?.name).filter(Boolean);return e.jsxs("button",{type:"button",onClick:()=>xt(t),className:"flex flex-col rounded-xl border border-border bg-background p-4 text-left transition-all hover:border-border hover:shadow-raised",children:[e.jsx("div",{className:"truncate text-[13px] font-semibold text-foreground",children:t.name}),e.jsx("div",{className:"text-xs text-muted-foreground mt-1",children:r("{count} 个成员",{count:s})}),n.length>0&&e.jsxs("div",{className:"truncate text-xs text-muted-foreground mt-1.5",children:[n.join(", "),s>3?` +${s-3}`:""]})]},t.id)})})]}),e.jsx(Fe,{isOpen:!!y,onClose:()=>re(null),onConfirm:et,title:r("删除"),description:y?r('确定删除 "{name}"?此操作不可撤销。',{name:y.name}):"",variant:"danger",confirmText:r("删除"),cancelText:r("取消"),isLoading:he.isPending}),e.jsx(Ct,{isOpen:We,onClose:()=>se(!1),title:r("选择预设头像"),className:"max-w-2xl",children:e.jsx("div",{className:"grid grid-cols-4 gap-2 sm:grid-cols-5",children:Et.map(t=>{const s=a.avatar===t.src;return e.jsxs("button",{type:"button",onClick:()=>Je(t.src),className:B("group rounded-xl border bg-background p-2 text-center transition-all hover:border-foreground/20 hover:bg-muted focus:outline-none focus:ring-2 focus:ring-ring/60",s?"border-foreground ring-2 ring-foreground":"border-border"),"aria-pressed":s,"aria-label":r("选择 {name} 头像",{name:t.label}),children:[e.jsx("img",{src:t.src,alt:t.label,loading:"lazy",className:"mx-auto h-14 w-14 rounded-full object-cover sm:h-16 sm:w-16"}),e.jsx("span",{className:"mt-1 block truncate text-xs font-medium text-muted-foreground",children:t.label})]},t.id)})})}),e.jsx(Fe,{isOpen:!!N,onClose:()=>oe(null),onConfirm:rt,title:r("删除"),description:N?r('确定删除 "{name}"?此操作不可撤销。',{name:N.name}):"",variant:"danger",confirmText:r("删除"),cancelText:r("取消"),isLoading:ve.isPending})]})}export{ur as TeamSettingsPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{S as ln,T as an,V as z,W as S,X,Y as un,$ as y,a0 as tn,a1 as F,a2 as _,a3 as rn,a4 as o,a5 as on,a6 as sn,a7 as fn}from"./index-B88xAivn.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,E,q,v,A,Y,a){var I=E-l,i=q-h,n=Y-v,d=a-A,u=d*I-n*i;if(!(u*u<y))return u=(n*(h-A)-d*(l-v))/u,[l+u*I,h+u*i]}function M(l,h,E,q,v,A,Y){var a=l-E,I=h-q,i=(Y?A:-A)/F(a*a+I*I),n=i*I,d=-i*a,u=l+n,s=h+d,f=E+n,c=q+d,$=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,R=m*m+g*g,T=v-A,P=u*c-f*s,O=(g<0?-1:1)*F(on(0,T*T*R-P*P)),V=(P*g-m*O)/R,W=(-P*m-g*O)/R,w=(P*g+m*O)/R,p=(-P*m+g*O)/R,x=V-$,e=W-t,r=w-$,j=p-t;return x*x+e*e>r*r+j*j&&(V=w,W=p),{cx:V,cy:W,x01:-n,y01:-d,x11:V*(v/T-1),y11:W*(v/T-1)}}function hn(){var l=cn,h=yn,E=X(0),q=null,v=gn,A=dn,Y=mn,a=null,I=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=A.apply(this,arguments)-un,$=rn(c-f),t=c>f;if(a||(a=n=I()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if($>tn-y)a.moveTo(s*z(f),s*S(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*z(c),u*S(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=$,O=$,V=Y.apply(this,arguments)/2,W=V>y&&(q?+q.apply(this,arguments):F(u*u+s*s)),w=_(rn(s-u)/2,+E.apply(this,arguments)),p=w,x=w,e,r;if(W>y){var j=sn(W/u*S(V)),G=sn(W/s*S(V));(P-=j*2)>y?(j*=t?1:-1,R+=j,T-=j):(P=0,R=T=(f+c)/2),(O-=G*2)>y?(G*=t?1:-1,m+=G,g-=G):(O=0,m=g=(f+c)/2)}var B=s*z(m),C=s*S(m),H=u*z(T),J=u*S(T);if(w>y){var K=s*z(g),L=s*S(g),N=u*z(R),Q=u*S(R),D;if($<an)if(D=pn(B,C,N,Q,K,L,H,J)){var U=B-D[0],Z=C-D[1],k=K-D[0],b=L-D[1],nn=1/S(fn((U*k+Z*b)/(F(U*U+Z*Z)*F(k*k+b*b)))/2),en=F(D[0]*D[0]+D[1]*D[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}O>y?x>y?(e=M(N,Q,B,C,s,x,t),r=M(K,L,H,J,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(B,C),a.arc(0,0,s,m,g,!t)):a.moveTo(B,C),!(u>y)||!(P>y)?a.lineTo(H,J):p>y?(e=M(H,J,K,L,u,-p,t),r=M(B,C,N,Q,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-an/2;return[z(d)*n,S(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:X(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:X(+n),i):h},i.cornerRadius=function(n){return arguments.length?(E=typeof n=="function"?n:X(+n),i):E},i.padRadius=function(n){return arguments.length?(q=n==null?null:typeof n=="function"?n:X(+n),i):q},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:X(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:X(+n),i):A},i.padAngle=function(n){return arguments.length?(Y=typeof n=="function"?n:X(+n),i):Y},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{U as a,R as n}from"./index-B88xAivn.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c}from"./index-Cz73HpYH.js";const e=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],t=c("check",e);export{t as C};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,c as s,a as e,C as t}from"./chunk-727SXJPM-H8pz3amK.js";import{_ as i}from"./index-B88xAivn.js";import"./chunk-FMBD7UC4-BmOEsLTE.js";import"./chunk-ND2GUHAM-C5MfA0xc.js";import"./chunk-55IACEB6-xGe9Fu9Z.js";import"./chunk-2J33WTMH-B3TA0-LD.js";import"./index-Cz73HpYH.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,c as s,a as e,C as t}from"./chunk-727SXJPM-H8pz3amK.js";import{_ as i}from"./index-B88xAivn.js";import"./chunk-FMBD7UC4-BmOEsLTE.js";import"./chunk-ND2GUHAM-C5MfA0xc.js";import"./chunk-55IACEB6-xGe9Fu9Z.js";import"./chunk-2J33WTMH-B3TA0-LD.js";import"./index-Cz73HpYH.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{L as h,Z as x,I as p,g as u}from"./mermaid-NOHMQCX5-DmKVQY9m.js";import{r as i,j as a}from"./index-Cz73HpYH.js";import"./use-attachments-CK7y5KsN.js";import"./tooltip-CHOgkFbE.js";import"./kbd-B3m64lRd.js";import"./index-B6Lvy5Sr.js";import"./index-CTG-4w90.js";import"./index-CMjLMilU.js";var v=u("block","before:content-[counter(line)]","before:inline-block","before:[counter-increment:line]","before:w-6","before:mr-4","before:text-[13px]","before:text-right","before:text-muted-foreground/50","before:font-mono","before:select-none"),k=r=>{let e={};for(let l of r.split(";")){let o=l.indexOf(":");if(o>0){let c=l.slice(0,o).trim(),n=l.slice(o+1).trim();c&&n&&(e[c]=n)}}return e},j=i.memo(({children:r,result:e,language:l,className:o,...c})=>{let n=i.useMemo(()=>{let s={};return e.bg&&(s["--sdm-bg"]=e.bg),e.fg&&(s["--sdm-fg"]=e.fg),e.rootStyle&&Object.assign(s,k(e.rootStyle)),s},[e.bg,e.fg,e.rootStyle]);return a.jsx("pre",{className:u(o,"p-4 text-sm","bg-[var(--sdm-bg,transparent)]","dark:bg-[var(--shiki-dark-bg,var(--sdm-bg,transparent))]"),"data-language":l,"data-streamdown":"code-block-body",style:n,...c,children:a.jsx("code",{className:"[counter-increment:line_0] [counter-reset:line]",children:e.tokens.map((s,m)=>a.jsx("span",{className:v,children:s.map((t,b)=>a.jsx("span",{className:u("text-[var(--sdm-c,inherit)]","dark:text-[var(--shiki-dark,var(--sdm-c,inherit))]",t.bgColor&&"bg-[var(--sdm-tbg)]",t.bgColor&&"dark:bg-[var(--shiki-dark-bg,var(--sdm-tbg))]"),style:{...t.color?{"--sdm-c":t.color}:{},...t.bgColor?{"--sdm-tbg":t.bgColor}:{},...t.htmlStyle},...t.htmlAttrs,children:t.content},b))},m))})})},(r,e)=>r.result===e.result&&r.language===e.language&&r.className===e.className),y=({className:r,language:e,style:l,...o})=>a.jsx("div",{className:u("my-4 w-full overflow-hidden rounded-xl border border-border",r),"data-language":e,"data-streamdown":"code-block",style:{contentVisibility:"auto",containIntrinsicSize:"auto 200px",...l},...o}),N=({language:r,children:e})=>a.jsxs("div",{className:"flex items-center justify-between bg-muted/80 p-3 text-muted-foreground text-xs","data-language":r,"data-streamdown":"code-block-header",children:[a.jsx("span",{className:"ml-1 font-mono lowercase",children:r}),a.jsx("div",{className:"flex items-center gap-2",children:e})]}),w=/\n+$/,R=({code:r,language:e,className:l,children:o,...c})=>{let{shikiTheme:n}=i.useContext(h),s=x(),m=i.useMemo(()=>r.replace(w,""),[r]),t=i.useMemo(()=>({bg:"transparent",fg:"inherit",tokens:m.split(`
|
|
2
|
-
`).map(g=>[{content:g,color:"inherit",bgColor:"transparent",htmlStyle:{},offset:0}])}),[m]),[b,d]=i.useState(t);return i.useEffect(()=>{if(!s){d(t);return}let g=s.highlight({code:m,language:e,themes:n},f=>{d(f)});if(g){d(g);return}d(t)},[m,e,n,s,t]),a.jsx(p.Provider,{value:{code:r},children:a.jsxs(y,{language:e,children:[a.jsx(N,{language:e,children:o}),a.jsx(j,{className:l,language:e,result:b,...c})]})})};export{R as CodeBlock};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{u as c,C as u,j as g}from"./index-Cz73HpYH.js";import{C}from"./dialog-B_vC5R4B.js";const x=({isOpen:o,onClose:n,onConfirm:e,title:r,description:s,confirmText:t="确认",cancelText:l="取消",variant:i="default",isLoading:f=!1})=>{const{t:a}=c();return u(o),g.jsx(C,{open:o,onOpenChange:m=>{m||n()},title:r,description:s,confirmLabel:a(t),cancelLabel:a(l),tone:i==="danger"?"danger":"neutral",loading:f,onConfirm:e})};export{x as C};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{c as f,u as _,r as h,j as e,b as I,n as x,bc as T,bd as z,_ as F,aN as S,aO as L,aP as M,aR as A,be as v,b7 as O,bf as B}from"./index-Cz73HpYH.js";import{C as H}from"./check-DYlb0A_N.js";import{C as D}from"./copy-CdzVE3kf.js";import{F as $}from"./tooltip-CHOgkFbE.js";import{F as G}from"./search-field-B5czD2Pl.js";const P=[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]],me=f("code-xml",P);const R=[["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 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]],V=f("file-code",R);const X=[["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"}],["circle",{cx:"10",cy:"12",r:"2",key:"737tya"}],["path",{d:"m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22",key:"wt3hpn"}]],q=f("file-image",X);const K=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],xe=f("folder-open",K);const W=[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]],Y=f("git-commit-horizontal",W);const J=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],ue=f("history",J);const Q=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],pe=f("play",Q);function fe(s=document.documentElement){const t=getComputedStyle(s),n=c=>t.getPropertyValue(c).trim(),a=n("--terminal"),r=n("--terminal-foreground"),o=n("--terminal-red"),i=n("--terminal-green"),u=n("--terminal-yellow"),m=n("--terminal-blue"),l=n("--terminal-magenta"),d=n("--terminal-cyan");return{background:a,foreground:r,cursor:r,selectionBackground:n("--terminal-selection"),black:a,red:o,green:i,yellow:u,blue:m,magenta:l,cyan:d,white:r,brightBlack:n("--terminal-bright-black"),brightRed:o,brightGreen:i,brightYellow:u,brightBlue:m,brightMagenta:l,brightCyan:d,brightWhite:n("--terminal-bright-white")}}async function U(s){if(navigator.clipboard?.writeText){await navigator.clipboard.writeText(s);return}const t=document.createElement("textarea");t.value=s,t.setAttribute("readonly",""),t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select(),document.execCommand("copy"),t.remove()}function b({value:s,display:t="icon",variant:n="ghost",size:a="sm",label:r,copiedLabel:o,onCopied:i,className:u}){const{t:m}=_(),[l,d]=h.useState(!1),c=h.useRef(null);h.useEffect(()=>()=>{c.current&&clearTimeout(c.current)},[]);const p=r??m("Copy"),g=o??m("Copied"),y=l?g:p,C=async()=>{try{await U(s),d(!0),i?.(),c.current&&clearTimeout(c.current),c.current=setTimeout(()=>d(!1),1600)}catch{d(!1)}},E=l?e.jsx(H,{className:"text-success"}):e.jsx(D,{});return e.jsxs("button",{type:"button","data-slot":"copy-button",onClick:C,"aria-label":t==="icon"?y:void 0,title:t==="icon"?p:void 0,className:I({variant:n,size:a,iconOnly:t==="icon",className:x(t==="text"&&"tabular-nums",u)}),children:[E,t==="text"&&e.jsx("span",{children:y}),e.jsx("span",{className:"sr-only","aria-live":"polite",children:l?g:""})]})}function he({label:s,description:t,error:n,required:a=!1,counter:r,htmlFor:o,className:i,children:u}){const m=h.useId(),l=o??`${m}-control`,d=`${m}-message`,c=!!(n||t),p=h.useMemo(()=>({id:l,describedBy:c?d:void 0,invalid:!!n,required:a}),[l,c,d,n,a]);return e.jsxs("div",{"data-slot":"field",className:x("flex min-w-0 flex-col gap-1.5",i),children:[(s||r)&&e.jsxs("div",{className:"flex items-baseline justify-between gap-3",children:[s&&e.jsxs("label",{htmlFor:l,className:"text-[13px] font-medium text-foreground",children:[s,a&&e.jsx("span",{"aria-hidden":"true",className:"ml-0.5 text-destructive-ink",children:"*"})]}),T(r)&&e.jsx("span",{className:"shrink-0 text-[11px] tabular-nums text-muted-foreground",children:r})]}),e.jsx(z.Provider,{value:p,children:u}),n?e.jsxs("p",{id:d,className:"flex items-start gap-1 text-xs leading-relaxed text-destructive-ink",children:[e.jsx(F,{"aria-hidden":"true",className:"mt-[3px] size-3 shrink-0"}),e.jsx("span",{children:n})]}):t?e.jsx("p",{id:d,className:"text-xs leading-relaxed text-muted-foreground",children:t}):null]})}const j=22,N=18;function ge({invalid:s,autoResize:t=!1,minRows:n=3,maxRows:a=10,className:r,style:o,id:i,disabled:u,required:m,"aria-describedby":l,...d}){const c=S(),p=s??c?.invalid??!1,g=t?{fieldSizing:"content",minHeight:n*j+N,maxHeight:a*j+N}:{};return e.jsx("textarea",{"data-slot":"textarea",id:i??c?.id,disabled:u,required:m??c?.required,"aria-invalid":p||void 0,"aria-describedby":l??c?.describedBy,rows:t?void 0:n,style:{...g,...o},className:x(A,"block w-full resize-none px-3 py-2 text-sm leading-[22px] outline-none placeholder:text-muted-foreground/70 focus:border-ring",p&&M,u&&L,r),...d})}const Z={A:"success",M:"warning",D:"danger",R:"info"};function ee(s){return Z[s]??"warning"}const te=new Set(["ts","tsx","js","jsx","mjs","json","css","html","py","go","rs","java","sh","yml","yaml","toml","prisma","sql"]),se=new Set(["png","jpg","jpeg","gif","svg","webp"]),ne=new Set(["md","mdx","txt","log"]);function k({name:s,className:t}){const n=s.split(".").pop()?.toLowerCase()??"",a=te.has(n)?V:se.has(n)?q:ne.has(n)?$:G;return e.jsx(a,{"aria-hidden":"true",className:x("size-3.5 shrink-0 text-muted-foreground",t)})}function w(s){const t=s.lastIndexOf("/");return t===-1?{dir:"",name:s}:{dir:s.slice(0,t),name:s.slice(t+1)}}function ae({status:s,size:t="sm",className:n}){const a=ee(s);return e.jsx("span",{className:x("flex shrink-0 items-center justify-center rounded-[3px] font-mono font-semibold",t==="sm"?"size-4 text-[10px]":"size-5 text-[11px]",B[a],O[a],n),children:s})}function be({path:s,status:t,additions:n,deletions:a,active:r=!1,className:o,type:i,...u}){const{dir:m,name:l}=w(s);return e.jsxs("button",{type:i??"button",title:s,"aria-current":r||void 0,className:x("flex h-8 w-full min-w-0 items-center gap-2 rounded-md px-2 text-left transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/60",r?"bg-background shadow-raised ring-1 ring-border/80":"hover:bg-accent",o),...u,children:[t&&e.jsx(ae,{status:t}),e.jsx(k,{name:l}),e.jsx("span",{className:"min-w-0 truncate font-mono text-xs text-foreground/90",children:l}),e.jsx("span",{className:"min-w-0 flex-1 truncate text-left font-mono text-[11px] text-muted-foreground [direction:rtl]",children:e.jsx("span",{dir:"ltr",children:m})}),(n!==void 0||a!==void 0)&&e.jsx(v,{additions:n,deletions:a})]})}function ye({path:s,className:t}){const{name:n}=w(s);return e.jsxs("span",{title:s,className:x("inline-flex h-6 max-w-full items-center gap-1 rounded-md bg-foreground/[0.05] px-1.5 align-middle font-mono text-[11px] text-foreground/85",t),children:[e.jsx(k,{name:n,className:"size-3"}),e.jsx("span",{className:"truncate",children:n})]})}function je({message:s,hash:t,author:n,time:a,additions:r,deletions:o,className:i}){return e.jsxs("div",{className:x("flex items-center gap-2.5 py-2",i),children:[e.jsx("span",{className:"flex size-6 shrink-0 items-center justify-center rounded-full bg-foreground/[0.05] text-muted-foreground",children:e.jsx(Y,{"aria-hidden":"true",className:"size-3.5"})}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("div",{className:"truncate text-[13px] text-foreground/90",children:s}),e.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[n,n&&a&&e.jsx("span",{"aria-hidden":"true",children:"·"}),a,(r!==void 0||o!==void 0)&&e.jsx(v,{additions:r,deletions:o,className:"ml-1"})]})]}),e.jsxs("span",{className:"flex shrink-0 items-center gap-0.5",children:[e.jsx("code",{className:"font-mono text-[11px] text-muted-foreground",children:t.slice(0,7)}),e.jsx(b,{value:t,size:"xs"})]})]})}function Ne({code:s,title:t,lineNumbers:n=!1,className:a}){const r=s.replace(/\n$/,"").split(`
|
|
2
|
-
`);return e.jsxs("div",{className:x("overflow-hidden rounded-lg border border-border/60 bg-foreground/[0.025]",a),children:[e.jsxs("div",{className:"flex h-8 items-center justify-between border-b border-border/50 pl-3 pr-1",children:[e.jsx("span",{className:"truncate font-mono text-[11px] text-muted-foreground",children:t}),e.jsx(b,{value:s,size:"xs"})]}),e.jsx("pre",{className:"overflow-x-auto py-2.5 font-mono text-xs leading-5 text-foreground/90 scrollbar-app-thin",children:r.map((o,i)=>e.jsxs("div",{className:"flex px-3",children:[n&&e.jsx("span",{"aria-hidden":"true",className:"mr-4 w-5 shrink-0 select-none text-right text-muted-foreground/50",children:i+1}),e.jsx("code",{className:"whitespace-pre",children:o||" "})]},i))})]})}const re={command:"text-terminal-foreground",output:"text-terminal-foreground",success:"text-terminal-green",error:"text-terminal-red",warning:"text-terminal-yellow",info:"text-terminal-blue",muted:"text-terminal-bright-black"};function ve({title:s,status:t,lines:n,className:a}){return e.jsxs("div",{className:x("overflow-hidden rounded-lg bg-terminal",a),children:[(s||t)&&e.jsxs("div",{className:"flex h-8 items-center justify-between gap-3 border-b border-terminal-border px-3 text-[11px] text-terminal-muted-foreground",children:[e.jsx("span",{className:"truncate font-mono",children:s}),t]}),e.jsx("pre",{className:"overflow-x-auto p-3 font-mono text-xs leading-5 scrollbar-app-thin",children:n.map((r,o)=>e.jsxs("div",{className:x("whitespace-pre",re[r.kind??"output"]),children:[r.kind==="command"&&e.jsx("span",{className:"text-terminal-bright-black",children:"$ "}),r.text]},o))})]})}function ke({text:s,className:t}){return e.jsxs("div",{className:x("relative rounded-lg border border-border/70 bg-foreground/[0.02] py-2.5 pl-3 pr-[72px] text-[13px] leading-relaxed text-foreground/90",t),children:[e.jsx("p",{className:"whitespace-pre-wrap break-words",children:s}),e.jsx(b,{value:s,display:"text",size:"xs",variant:"ghost",className:"absolute right-1.5 top-2"})]})}export{me as C,ae as F,Y as G,ue as H,pe as P,ve as T,xe as a,Ne as b,je as c,b as d,Z as e,he as f,ye as g,k as h,be as i,ke as j,ge as k,ee as l,fe as r};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as g,l as o}from"./monaco-I1fXAMIt.js";import{C as l,H as h,D as c,a as u,R as f,b as _,c as w,d as k,F as v,e as D,S as P,f as R,g as I}from"./lspLanguageFeatures-WhdC7zdf.js";import{h as Ce,i as Ae,j as We,t as Se,k as Fe}from"./lspLanguageFeatures-WhdC7zdf.js";import"./EditableTaskTitle-CGVeZUSt.js";import"./index-Cz73HpYH.js";import"./mermaid-NOHMQCX5-DmKVQY9m.js";import"./use-attachments-CK7y5KsN.js";import"./tooltip-CHOgkFbE.js";import"./kbd-B3m64lRd.js";import"./index-B6Lvy5Sr.js";import"./index-CTG-4w90.js";import"./index-CMjLMilU.js";import"./use-providers-BRyZjuBG.js";import"./MemberAvatar-BG0VDZKf.js";import"./people-C6b3eeLq.js";import"./chevron-up-DOkDFvIc.js";import"./at-sign-C4VhWike.js";import"./paperclip-BBrzKZQC.js";import"./check-DYlb0A_N.js";import"./useTokenUsage-YwiF0xnT.js";import"./CreateTaskInput-SHJ1YpRe.js";import"./use-projects-Dwy9AfAG.js";import"./BrandLogo-CC1alVsd.js";import"./hooks-DK4m7-FN.js";import"./index-DENY_U7o.js";import"./index-ZO2tqdha.js";import"./trash-2-ALAYDudv.js";import"./ExecutionPermissionSelector-DcC4IBOF.js";import"./menu-0A0v_lRV.js";import"./menu-styles-DWynpVVz.js";import"./index-BCV57B4O.js";import"./confirm-dialog-BRkrtULz.js";import"./dialog-B_vC5R4B.js";import"./modal-Kpqn-nDO.js";import"./select-DGwKE4l0.js";import"./select-yem-xN9Z.js";import"./layers-CxqMQVmH.js";import"./message-square-CfNb-MTd.js";import"./textarea-Bnfq7adW.js";import"./content-DPCGELMz.js";import"./copy-CdzVE3kf.js";import"./search-field-B5czD2Pl.js";import"./popover-BYz89aiY.js";import"./server-BIPZ9Ka-.js";import"./icon-button-CuSuXgr_.js";import"./use-workspaces-BBbahdwU.js";import"./upload-D7hKT2VA.js";import"./globe-Rnn-nKw-.js";import"./BranchSelect-D-kqavDG.js";import"./pencil-pzVKblxj.js";const C=120*1e3;class A{constructor(n){this._defaults=n,this._worker=null,this._client=null,this._idleCheckInterval=window.setInterval(()=>this._checkIfIdle(),30*1e3),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker())}_stopWorker(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null}dispose(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()}_checkIfIdle(){if(!this._worker)return;Date.now()-this._lastUsedTime>C&&this._stopWorker()}_getClient(){return this._lastUsedTime=Date.now(),this._client||(this._worker=g({moduleId:"vs/language/css/cssWorker",createWorker:()=>new Worker(new URL("/assets/css.worker-DBVD8oXr.js",import.meta.url),{type:"module"}),label:this._defaults.languageId,createData:{options:this._defaults.options,languageId:this._defaults.languageId}}),this._client=this._worker.getProxy()),this._client}getLanguageServiceWorker(...n){let e;return this._getClient().then(a=>{e=a}).then(a=>{if(this._worker)return this._worker.withSyncedResources(n)}).then(a=>e)}}function Pe(s){const n=[],e=[],a=new A(s);n.push(a);const r=(...t)=>a.getLanguageServiceWorker(...t);function d(){const{languageId:t,modeConfiguration:i}=s;m(e),i.completionItems&&e.push(o.registerCompletionItemProvider(t,new l(r,["/","-",":"]))),i.hovers&&e.push(o.registerHoverProvider(t,new h(r))),i.documentHighlights&&e.push(o.registerDocumentHighlightProvider(t,new c(r))),i.definitions&&e.push(o.registerDefinitionProvider(t,new u(r))),i.references&&e.push(o.registerReferenceProvider(t,new f(r))),i.documentSymbols&&e.push(o.registerDocumentSymbolProvider(t,new _(r))),i.rename&&e.push(o.registerRenameProvider(t,new w(r))),i.colors&&e.push(o.registerColorProvider(t,new k(r))),i.foldingRanges&&e.push(o.registerFoldingRangeProvider(t,new v(r))),i.diagnostics&&e.push(new D(t,r,s.onDidChange)),i.selectionRanges&&e.push(o.registerSelectionRangeProvider(t,new P(r))),i.documentFormattingEdits&&e.push(o.registerDocumentFormattingEditProvider(t,new R(r))),i.documentRangeFormattingEdits&&e.push(o.registerDocumentRangeFormattingEditProvider(t,new I(r)))}return d(),n.push(p(e)),p(n)}function p(s){return{dispose:()=>m(s)}}function m(s){for(;s.length;)s.pop().dispose()}export{l as CompletionAdapter,u as DefinitionAdapter,D as DiagnosticsAdapter,k as DocumentColorAdapter,R as DocumentFormattingEditProvider,c as DocumentHighlightAdapter,Ce as DocumentLinkAdapter,I as DocumentRangeFormattingEditProvider,_ as DocumentSymbolAdapter,v as FoldingRangeAdapter,h as HoverAdapter,f as ReferenceAdapter,w as RenameAdapter,P as SelectionRangeAdapter,A as WorkerManager,Ae as fromPosition,We as fromRange,Pe as setupMode,Se as toRange,Fe as toTextEdit};
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import{r as i,a4 as H,j as t,a0 as h,a8 as C,P as p,a1 as g,a2 as V,a3 as j,a6 as q,a9 as K,u as U,X,n as Y,D as y,aa as Z}from"./index-Cz73HpYH.js";import{P as J,D as Q}from"./index-B6Lvy5Sr.js";import{R as ee,h as te,u as oe,F as ne}from"./index-BCV57B4O.js";var m="Dialog",[_]=V(m),[ae,d]=_(m),E=e=>{const{__scopeDialog:o,children:r,open:s,defaultOpen:a,onOpenChange:n,modal:l=!0}=e,c=i.useRef(null),u=i.useRef(null),[v,D]=H({prop:s,defaultProp:a??!1,onChange:n,caller:m});return t.jsx(ae,{scope:o,triggerRef:c,contentRef:u,contentId:h(),titleId:h(),descriptionId:h(),open:v,onOpenChange:D,onOpenToggle:i.useCallback(()=>D(B=>!B),[D]),modal:l,children:r})};E.displayName=m;var I="DialogTrigger",P=i.forwardRef((e,o)=>{const{__scopeDialog:r,...s}=e,a=d(I,r),n=j(o,a.triggerRef);return t.jsx(p.button,{type:"button","aria-haspopup":"dialog","aria-expanded":a.open,"aria-controls":a.contentId,"data-state":R(a.open),...s,ref:n,onClick:g(e.onClick,a.onOpenToggle)})});P.displayName=I;var b="DialogPortal",[re,O]=_(b,{forceMount:void 0}),w=e=>{const{__scopeDialog:o,forceMount:r,children:s,container:a}=e,n=d(b,o);return t.jsx(re,{scope:o,forceMount:r,children:i.Children.map(s,l=>t.jsx(C,{present:r||n.open,children:t.jsx(J,{asChild:!0,container:a,children:l})}))})};w.displayName=b;var x="DialogOverlay",A=i.forwardRef((e,o)=>{const r=O(x,e.__scopeDialog),{forceMount:s=r.forceMount,...a}=e,n=d(x,e.__scopeDialog);return n.modal?t.jsx(C,{present:s||n.open,children:t.jsx(ie,{...a,ref:o})}):null});A.displayName=x;var se=q("DialogOverlay.RemoveScroll"),ie=i.forwardRef((e,o)=>{const{__scopeDialog:r,...s}=e,a=d(x,r);return t.jsx(ee,{as:se,allowPinchZoom:!0,shards:[a.contentRef],children:t.jsx(p.div,{"data-state":R(a.open),...s,ref:o,style:{pointerEvents:"auto",...s.style}})})}),f="DialogContent",T=i.forwardRef((e,o)=>{const r=O(f,e.__scopeDialog),{forceMount:s=r.forceMount,...a}=e,n=d(f,e.__scopeDialog);return t.jsx(C,{present:s||n.open,children:n.modal?t.jsx(le,{...a,ref:o}):t.jsx(ce,{...a,ref:o})})});T.displayName=f;var le=i.forwardRef((e,o)=>{const r=d(f,e.__scopeDialog),s=i.useRef(null),a=j(o,r.contentRef,s);return i.useEffect(()=>{const n=s.current;if(n)return te(n)},[]),t.jsx(M,{...e,ref:a,trapFocus:r.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:g(e.onCloseAutoFocus,n=>{n.preventDefault(),r.triggerRef.current?.focus()}),onPointerDownOutside:g(e.onPointerDownOutside,n=>{const l=n.detail.originalEvent,c=l.button===0&&l.ctrlKey===!0;(l.button===2||c)&&n.preventDefault()}),onFocusOutside:g(e.onFocusOutside,n=>n.preventDefault())})}),ce=i.forwardRef((e,o)=>{const r=d(f,e.__scopeDialog),s=i.useRef(!1),a=i.useRef(!1);return t.jsx(M,{...e,ref:o,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:n=>{e.onCloseAutoFocus?.(n),n.defaultPrevented||(s.current||r.triggerRef.current?.focus(),n.preventDefault()),s.current=!1,a.current=!1},onInteractOutside:n=>{e.onInteractOutside?.(n),n.defaultPrevented||(s.current=!0,n.detail.originalEvent.type==="pointerdown"&&(a.current=!0));const l=n.target;r.triggerRef.current?.contains(l)&&n.preventDefault(),n.detail.originalEvent.type==="focusin"&&a.current&&n.preventDefault()}})}),M=i.forwardRef((e,o)=>{const{__scopeDialog:r,trapFocus:s,onOpenAutoFocus:a,onCloseAutoFocus:n,...l}=e,c=d(f,r),u=i.useRef(null),v=j(o,u);return oe(),t.jsxs(t.Fragment,{children:[t.jsx(ne,{asChild:!0,loop:!0,trapped:s,onMountAutoFocus:a,onUnmountAutoFocus:n,children:t.jsx(Q,{role:"dialog",id:c.contentId,"aria-describedby":c.descriptionId,"aria-labelledby":c.titleId,"data-state":R(c.open),...l,ref:v,onDismiss:()=>c.onOpenChange(!1)})}),t.jsxs(t.Fragment,{children:[t.jsx(de,{titleId:c.titleId}),t.jsx(fe,{contentRef:u,descriptionId:c.descriptionId})]})]})}),N="DialogTitle",F=i.forwardRef((e,o)=>{const{__scopeDialog:r,...s}=e,a=d(N,r);return t.jsx(p.h2,{id:a.titleId,...s,ref:o})});F.displayName=N;var S="DialogDescription",k=i.forwardRef((e,o)=>{const{__scopeDialog:r,...s}=e,a=d(S,r);return t.jsx(p.p,{id:a.descriptionId,...s,ref:o})});k.displayName=S;var W="DialogClose",z=i.forwardRef((e,o)=>{const{__scopeDialog:r,...s}=e,a=d(W,r);return t.jsx(p.button,{type:"button",...s,ref:o,onClick:g(e.onClick,()=>a.onOpenChange(!1))})});z.displayName=W;function R(e){return e?"open":"closed"}var $="DialogTitleWarning",[_e,G]=K($,{contentName:f,titleName:N,docsSlug:"dialog"}),de=({titleId:e})=>{const o=G($),r=`\`${o.contentName}\` requires a \`${o.titleName}\` for the component to be accessible for screen reader users.
|
|
2
|
-
|
|
3
|
-
If you want to hide the \`${o.titleName}\`, you can wrap it with our VisuallyHidden component.
|
|
4
|
-
|
|
5
|
-
For more information, see https://radix-ui.com/primitives/docs/components/${o.docsSlug}`;return i.useEffect(()=>{e&&(document.getElementById(e)||console.error(r))},[r,e]),null},ue="DialogDescriptionWarning",fe=({contentRef:e,descriptionId:o})=>{const s=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${G(ue).contentName}}.`;return i.useEffect(()=>{const a=e.current?.getAttribute("aria-describedby");o&&a&&(document.getElementById(o)||console.warn(s))},[s,e,o]),null},ge=E,pe=P,xe=w,me=A,ve=T,De=F,he=k,L=z;const Ce=ge,Ee=pe,Ie=L,je={sm:"max-w-sm",md:"max-w-md",lg:"max-w-xl",xl:"max-w-3xl"};function be({title:e,description:o,footer:r,size:s="md",hideClose:a=!1,className:n,children:l,...c}){const{t:u}=U();return t.jsxs(xe,{children:[t.jsx(me,{className:"fixed inset-0 z-[60] bg-black/20 duration-200 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0"}),t.jsxs(ve,{className:Y("fixed left-1/2 top-1/2 z-[60] flex max-h-[calc(100vh-2rem)] w-[calc(100vw-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-xl border border-border bg-background shadow-overlay outline-none","duration-200 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",je[s],n),...o?{}:{"aria-describedby":void 0},...c,children:[t.jsxs("div",{className:"flex shrink-0 items-start justify-between gap-4 px-5 pb-3 pt-5",children:[t.jsxs("div",{className:"min-w-0",children:[t.jsx(De,{className:"text-[15px] font-semibold leading-6 text-foreground",children:e}),o&&t.jsx(he,{asChild:!0,children:t.jsx("div",{className:"mt-1 text-[13px] leading-relaxed text-muted-foreground",children:o})})]}),!a&&t.jsx(L,{"aria-label":u("Close"),className:"-mr-1.5 -mt-0.5 flex size-7 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/60",children:t.jsx(X,{className:"size-4","aria-hidden":"true"})})]}),l&&t.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto px-5 pb-5 text-sm text-foreground/90",children:l}),r&&t.jsx("div",{className:"flex shrink-0 items-center justify-end gap-2 border-t border-border/60 bg-foreground/[0.015] px-5 py-3",children:r})]})]})}function Pe({open:e,onOpenChange:o,title:r,description:s,confirmLabel:a,cancelLabel:n,tone:l="neutral",loading:c=!1,onConfirm:u}){return t.jsx(Ce,{open:e,onOpenChange:o,children:t.jsx(be,{size:"sm",hideClose:!0,title:t.jsxs("span",{className:"flex items-center gap-2",children:[l==="danger"&&t.jsx("span",{className:"flex size-6 items-center justify-center rounded-full bg-destructive/10 text-destructive",children:t.jsx(Z,{className:"size-3.5","aria-hidden":"true"})}),r]}),description:s,footer:t.jsxs(t.Fragment,{children:[t.jsx(y,{variant:"ghost",size:"md",onClick:()=>o(!1),disabled:c,children:n}),t.jsx(y,{variant:"primary",tone:l,size:"md",loading:c,onClick:u,children:a})]})})})}export{Pe as C,Ce as D,be as a,Ie as b,Ee as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{l as t}from"./monaco-I1fXAMIt.js";import"./EditableTaskTitle-CGVeZUSt.js";import"./index-Cz73HpYH.js";import"./mermaid-NOHMQCX5-DmKVQY9m.js";import"./use-attachments-CK7y5KsN.js";import"./tooltip-CHOgkFbE.js";import"./kbd-B3m64lRd.js";import"./index-B6Lvy5Sr.js";import"./index-CTG-4w90.js";import"./index-CMjLMilU.js";import"./use-providers-BRyZjuBG.js";import"./MemberAvatar-BG0VDZKf.js";import"./people-C6b3eeLq.js";import"./chevron-up-DOkDFvIc.js";import"./at-sign-C4VhWike.js";import"./paperclip-BBrzKZQC.js";import"./check-DYlb0A_N.js";import"./useTokenUsage-YwiF0xnT.js";import"./CreateTaskInput-SHJ1YpRe.js";import"./use-projects-Dwy9AfAG.js";import"./BrandLogo-CC1alVsd.js";import"./hooks-DK4m7-FN.js";import"./index-DENY_U7o.js";import"./index-ZO2tqdha.js";import"./trash-2-ALAYDudv.js";import"./ExecutionPermissionSelector-DcC4IBOF.js";import"./menu-0A0v_lRV.js";import"./menu-styles-DWynpVVz.js";import"./index-BCV57B4O.js";import"./confirm-dialog-BRkrtULz.js";import"./dialog-B_vC5R4B.js";import"./modal-Kpqn-nDO.js";import"./select-DGwKE4l0.js";import"./select-yem-xN9Z.js";import"./layers-CxqMQVmH.js";import"./message-square-CfNb-MTd.js";import"./textarea-Bnfq7adW.js";import"./content-DPCGELMz.js";import"./copy-CdzVE3kf.js";import"./search-field-B5czD2Pl.js";import"./popover-BYz89aiY.js";import"./server-BIPZ9Ka-.js";import"./icon-button-CuSuXgr_.js";import"./use-workspaces-BBbahdwU.js";import"./upload-D7hKT2VA.js";import"./globe-Rnn-nKw-.js";import"./BranchSelect-D-kqavDG.js";import"./pencil-pzVKblxj.js";const e=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],U={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{{!--","--}}"]},brackets:[["<!--","-->"],["<",">"],["{{","}}"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp(`<(?!(?:${e.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:t.IndentAction.IndentOutdent}},{beforeText:new RegExp(`<(?!(?:${e.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),action:{indentAction:t.IndentAction.Indent}}]},V={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/\{\{!--/,"comment.block.start.handlebars","@commentBlock"],[/\{\{!/,"comment.start.handlebars","@comment"],[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.root"}],[/<!DOCTYPE/,"metatag.html","@doctype"],[/<!--/,"comment.html","@commentHtml"],[/(<)(\w+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/</,"delimiter.html"],[/\{/,"delimiter.html"],[/[^<{]+/]],doctype:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.comment"}],[/[^>]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/\}\}/,"comment.end.handlebars","@pop"],[/./,"comment.content.handlebars"]],commentBlock:[[/--\}\}/,"comment.block.end.handlebars","@pop"],[/./,"comment.content.handlebars"]],commentHtml:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],handlebarsInSimpleState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3"}],{include:"handlebarsRoot"}],handlebarsInEmbeddedState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"handlebarsRoot"}],handlebarsRoot:[[/"[^"]*"/,"string.handlebars"],[/[#/][^\s}]+/,"keyword.helper.handlebars"],[/else\b/,"keyword.helper.handlebars"],[/[\s]+/],[/[^}]/,"variable.parameter.handlebars"]]}};export{U as conf,V as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as f,r as n}from"./index-Cz73HpYH.js";const l=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],m=f("folder",l);const p=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],v=f("search",p);function y(e=480){const[t,o]=n.useState(null),[d,u]=n.useState(0);return n.useEffect(()=>{if(!t||typeof ResizeObserver>"u")return;const c=new ResizeObserver(i=>{const r=Math.floor(i[0]?.contentRect.width??0);u(a=>a===r?a:r)});return c.observe(t),()=>c.disconnect()},[t]),[o,d||(typeof ResizeObserver<"u"?0:e)]}function S({value:e,defaultValue:t,onChange:o}){const[d,u]=n.useState(t),s=e!==void 0,c=s?e:d,i=n.useCallback(r=>{s||u(r),o?.(r)},[s,o]);return[c,i]}function h(e){if(typeof window>"u"||!window.matchMedia)return()=>{};const t=window.matchMedia("(prefers-reduced-motion: reduce)");return t.addEventListener("change",e),()=>t.removeEventListener("change",e)}function w(){return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}function M(){return n.useSyncExternalStore(h,w,()=>!1)}function R(e){return`${e}-${n.useId().replace(/[^a-zA-Z0-9_-]/g,"")}`}export{m as F,v as S,R as a,y as b,M as c,S as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{l as t}from"./monaco-I1fXAMIt.js";import"./EditableTaskTitle-CGVeZUSt.js";import"./index-Cz73HpYH.js";import"./mermaid-NOHMQCX5-DmKVQY9m.js";import"./use-attachments-CK7y5KsN.js";import"./tooltip-CHOgkFbE.js";import"./kbd-B3m64lRd.js";import"./index-B6Lvy5Sr.js";import"./index-CTG-4w90.js";import"./index-CMjLMilU.js";import"./use-providers-BRyZjuBG.js";import"./MemberAvatar-BG0VDZKf.js";import"./people-C6b3eeLq.js";import"./chevron-up-DOkDFvIc.js";import"./at-sign-C4VhWike.js";import"./paperclip-BBrzKZQC.js";import"./check-DYlb0A_N.js";import"./useTokenUsage-YwiF0xnT.js";import"./CreateTaskInput-SHJ1YpRe.js";import"./use-projects-Dwy9AfAG.js";import"./BrandLogo-CC1alVsd.js";import"./hooks-DK4m7-FN.js";import"./index-DENY_U7o.js";import"./index-ZO2tqdha.js";import"./trash-2-ALAYDudv.js";import"./ExecutionPermissionSelector-DcC4IBOF.js";import"./menu-0A0v_lRV.js";import"./menu-styles-DWynpVVz.js";import"./index-BCV57B4O.js";import"./confirm-dialog-BRkrtULz.js";import"./dialog-B_vC5R4B.js";import"./modal-Kpqn-nDO.js";import"./select-DGwKE4l0.js";import"./select-yem-xN9Z.js";import"./layers-CxqMQVmH.js";import"./message-square-CfNb-MTd.js";import"./textarea-Bnfq7adW.js";import"./content-DPCGELMz.js";import"./copy-CdzVE3kf.js";import"./search-field-B5czD2Pl.js";import"./popover-BYz89aiY.js";import"./server-BIPZ9Ka-.js";import"./icon-button-CuSuXgr_.js";import"./use-workspaces-BBbahdwU.js";import"./upload-D7hKT2VA.js";import"./globe-Rnn-nKw-.js";import"./BranchSelect-D-kqavDG.js";import"./pencil-pzVKblxj.js";const e=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],U={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["<!--","-->"]},brackets:[["<!--","-->"],["<",">"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"}],onEnterRules:[{beforeText:new RegExp(`<(?!(?:${e.join("|")}))([_:\\w][_:\\w-.\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),afterText:/^<\/([_:\w][_:\w-.\d]*)\s*>$/i,action:{indentAction:t.IndentAction.IndentOutdent}},{beforeText:new RegExp(`<(?!(?:${e.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),action:{indentAction:t.IndentAction.Indent}}],folding:{markers:{start:new RegExp("^\\s*<!--\\s*#region\\b.*-->"),end:new RegExp("^\\s*<!--\\s*#endregion\\b.*-->")}}},V={defaultToken:"",tokenPostfix:".html",ignoreCase:!0,tokenizer:{root:[[/<!DOCTYPE/,"metatag","@doctype"],[/<!--/,"comment","@comment"],[/(<)((?:[\w\-]+:)?[\w\-]+)(\s*)(\/>)/,["delimiter","tag","","delimiter"]],[/(<)(script)/,["delimiter",{token:"tag",next:"@script"}]],[/(<)(style)/,["delimiter",{token:"tag",next:"@style"}]],[/(<)((?:[\w\-]+:)?[\w\-]+)/,["delimiter",{token:"tag",next:"@otherTag"}]],[/(<\/)((?:[\w\-]+:)?[\w\-]+)/,["delimiter",{token:"tag",next:"@otherTag"}]],[/</,"delimiter"],[/[^<]+/]],doctype:[[/[^>]+/,"metatag.content"],[/>/,"metatag","@pop"]],comment:[[/-->/,"comment","@pop"],[/[^-]+/,"comment.content"],[/./,"comment.content"]],otherTag:[[/\/?>/,"delimiter","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],scriptAfterType:[[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/"module"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.text/javascript"}],[/'module'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.text/javascript"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@scriptEmbedded",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/>/,{token:"delimiter",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]],style:[[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter","tag",{token:"delimiter",next:"@pop"}]]],styleAfterType:[[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter",next:"@styleEmbedded",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/>/,{token:"delimiter",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}],[/[^<]+/,""]]}};export{U as conf,V as language};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as D,l as t}from"./monaco-I1fXAMIt.js";import{H as p,D as g,h as d,F as l,b as c,S as u,c as h,f as w,g as _,C as R}from"./lspLanguageFeatures-WhdC7zdf.js";import{a as Ie,e as Se,d as Ce,R as Ae,i as We,j as Fe,t as Le,k as Ee}from"./lspLanguageFeatures-WhdC7zdf.js";import"./EditableTaskTitle-CGVeZUSt.js";import"./index-Cz73HpYH.js";import"./mermaid-NOHMQCX5-DmKVQY9m.js";import"./use-attachments-CK7y5KsN.js";import"./tooltip-CHOgkFbE.js";import"./kbd-B3m64lRd.js";import"./index-B6Lvy5Sr.js";import"./index-CTG-4w90.js";import"./index-CMjLMilU.js";import"./use-providers-BRyZjuBG.js";import"./MemberAvatar-BG0VDZKf.js";import"./people-C6b3eeLq.js";import"./chevron-up-DOkDFvIc.js";import"./at-sign-C4VhWike.js";import"./paperclip-BBrzKZQC.js";import"./check-DYlb0A_N.js";import"./useTokenUsage-YwiF0xnT.js";import"./CreateTaskInput-SHJ1YpRe.js";import"./use-projects-Dwy9AfAG.js";import"./BrandLogo-CC1alVsd.js";import"./hooks-DK4m7-FN.js";import"./index-DENY_U7o.js";import"./index-ZO2tqdha.js";import"./trash-2-ALAYDudv.js";import"./ExecutionPermissionSelector-DcC4IBOF.js";import"./menu-0A0v_lRV.js";import"./menu-styles-DWynpVVz.js";import"./index-BCV57B4O.js";import"./confirm-dialog-BRkrtULz.js";import"./dialog-B_vC5R4B.js";import"./modal-Kpqn-nDO.js";import"./select-DGwKE4l0.js";import"./select-yem-xN9Z.js";import"./layers-CxqMQVmH.js";import"./message-square-CfNb-MTd.js";import"./textarea-Bnfq7adW.js";import"./content-DPCGELMz.js";import"./copy-CdzVE3kf.js";import"./search-field-B5czD2Pl.js";import"./popover-BYz89aiY.js";import"./server-BIPZ9Ka-.js";import"./icon-button-CuSuXgr_.js";import"./use-workspaces-BBbahdwU.js";import"./upload-D7hKT2VA.js";import"./globe-Rnn-nKw-.js";import"./BranchSelect-D-kqavDG.js";import"./pencil-pzVKblxj.js";const I=120*1e3;class f{constructor(o){this._defaults=o,this._worker=null,this._client=null,this._idleCheckInterval=window.setInterval(()=>this._checkIfIdle(),30*1e3),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker())}_stopWorker(){this._worker&&(this._worker.dispose(),this._worker=null),this._client=null}dispose(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()}_checkIfIdle(){if(!this._worker)return;Date.now()-this._lastUsedTime>I&&this._stopWorker()}_getClient(){return this._lastUsedTime=Date.now(),this._client||(this._worker=D({moduleId:"vs/language/html/htmlWorker",createWorker:()=>new Worker(new URL("/assets/html.worker-CwpTb9lJ.js",import.meta.url),{type:"module"}),createData:{languageSettings:this._defaults.options,languageId:this._defaults.languageId},label:this._defaults.languageId}),this._client=this._worker.getProxy()),this._client}getLanguageServiceWorker(...o){let e;return this._getClient().then(r=>{e=r}).then(r=>{if(this._worker)return this._worker.withSyncedResources(o)}).then(r=>e)}}class v extends R{constructor(o){super(o,[".",":","<",'"',"=","/"])}}function ke(i){const o=new f(i),e=(...n)=>o.getLanguageServiceWorker(...n);let r=i.languageId;t.registerCompletionItemProvider(r,new v(e)),t.registerHoverProvider(r,new p(e)),t.registerDocumentHighlightProvider(r,new g(e)),t.registerLinkProvider(r,new d(e)),t.registerFoldingRangeProvider(r,new l(e)),t.registerDocumentSymbolProvider(r,new c(e)),t.registerSelectionRangeProvider(r,new u(e)),t.registerRenameProvider(r,new h(e)),r==="html"&&(t.registerDocumentFormattingEditProvider(r,new w(e)),t.registerDocumentRangeFormattingEditProvider(r,new _(e)))}function Pe(i){const o=[],e=[],r=new f(i);o.push(r);const n=(...s)=>r.getLanguageServiceWorker(...s);function P(){const{languageId:s,modeConfiguration:a}=i;k(e),a.completionItems&&e.push(t.registerCompletionItemProvider(s,new v(n))),a.hovers&&e.push(t.registerHoverProvider(s,new p(n))),a.documentHighlights&&e.push(t.registerDocumentHighlightProvider(s,new g(n))),a.links&&e.push(t.registerLinkProvider(s,new d(n))),a.documentSymbols&&e.push(t.registerDocumentSymbolProvider(s,new c(n))),a.rename&&e.push(t.registerRenameProvider(s,new h(n))),a.foldingRanges&&e.push(t.registerFoldingRangeProvider(s,new l(n))),a.selectionRanges&&e.push(t.registerSelectionRangeProvider(s,new u(n))),a.documentFormattingEdits&&e.push(t.registerDocumentFormattingEditProvider(s,new w(n))),a.documentRangeFormattingEdits&&e.push(t.registerDocumentRangeFormattingEditProvider(s,new _(n)))}return P(),o.push(m(e)),m(o)}function m(i){return{dispose:()=>k(i)}}function k(i){for(;i.length;)i.pop().dispose()}export{R as CompletionAdapter,Ie as DefinitionAdapter,Se as DiagnosticsAdapter,Ce as DocumentColorAdapter,w as DocumentFormattingEditProvider,g as DocumentHighlightAdapter,d as DocumentLinkAdapter,_ as DocumentRangeFormattingEditProvider,c as DocumentSymbolAdapter,l as FoldingRangeAdapter,p as HoverAdapter,Ae as ReferenceAdapter,h as RenameAdapter,u as SelectionRangeAdapter,f as WorkerManager,We as fromPosition,Fe as fromRange,Pe as setupMode,ke as setupMode1,Le as toRange,Ee as toTextEdit};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as _,r as n,a3 as T,j as b,P as m,a1 as h,aS as M,aL as U,aT as j}from"./index-Cz73HpYH.js";const z=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],te=_("chevron-down",z);function P(t){const e=n.useRef(t);return n.useEffect(()=>{e.current=t}),n.useMemo(()=>(...s)=>e.current?.(...s),[])}function H(t,e=globalThis?.document){const s=P(t);n.useEffect(()=>{const o=r=>{r.key==="Escape"&&s(r)};return e.addEventListener("keydown",o,{capture:!0}),()=>e.removeEventListener("keydown",o,{capture:!0})},[s,e])}var K="DismissableLayer",p="dismissableLayer.update",q="dismissableLayer.pointerDownOutside",X="dismissableLayer.focusOutside",R,x=n.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Y=n.forwardRef((t,e)=>{const{disableOutsidePointerEvents:s=!1,onEscapeKeyDown:o,onPointerDownOutside:r,onFocusOutside:a,onInteractOutside:d,onDismiss:l,...E}=t,c=n.useContext(x),[u,I]=n.useState(null),f=u?.ownerDocument??globalThis?.document,[,S]=n.useState({}),F=T(e,i=>I(i)),D=Array.from(c.layers),[N]=[...c.layersWithOutsidePointerEventsDisabled].slice(-1),A=D.indexOf(N),O=u?D.indexOf(u):-1,k=c.layersWithOutsidePointerEventsDisabled.size>0,L=O>=A,W=Q(i=>{const v=i.target,w=[...c.branches].some(y=>y.contains(v));!L||w||(r?.(i),d?.(i),i.defaultPrevented||l?.())},f),C=V(i=>{const v=i.target;[...c.branches].some(y=>y.contains(v))||(a?.(i),d?.(i),i.defaultPrevented||l?.())},f);return H(i=>{O===c.layers.size-1&&(o?.(i),!i.defaultPrevented&&l&&(i.preventDefault(),l()))},f),n.useEffect(()=>{if(u)return s&&(c.layersWithOutsidePointerEventsDisabled.size===0&&(R=f.body.style.pointerEvents,f.body.style.pointerEvents="none"),c.layersWithOutsidePointerEventsDisabled.add(u)),c.layers.add(u),g(),()=>{s&&c.layersWithOutsidePointerEventsDisabled.size===1&&(f.body.style.pointerEvents=R)}},[u,f,s,c]),n.useEffect(()=>()=>{u&&(c.layers.delete(u),c.layersWithOutsidePointerEventsDisabled.delete(u),g())},[u,c]),n.useEffect(()=>{const i=()=>S({});return document.addEventListener(p,i),()=>document.removeEventListener(p,i)},[]),b.jsx(m.div,{...E,ref:F,style:{pointerEvents:k?L?"auto":"none":void 0,...t.style},onFocusCapture:h(t.onFocusCapture,C.onFocusCapture),onBlurCapture:h(t.onBlurCapture,C.onBlurCapture),onPointerDownCapture:h(t.onPointerDownCapture,W.onPointerDownCapture)})});Y.displayName=K;var G="DismissableLayerBranch",J=n.forwardRef((t,e)=>{const s=n.useContext(x),o=n.useRef(null),r=T(e,o);return n.useEffect(()=>{const a=o.current;if(a)return s.branches.add(a),()=>{s.branches.delete(a)}},[s.branches]),b.jsx(m.div,{...t,ref:r})});J.displayName=G;function Q(t,e=globalThis?.document){const s=P(t),o=n.useRef(!1),r=n.useRef(()=>{});return n.useEffect(()=>{const a=l=>{if(l.target&&!o.current){let E=function(){B(q,s,c,{discrete:!0})};const c={originalEvent:l};l.pointerType==="touch"?(e.removeEventListener("click",r.current),r.current=E,e.addEventListener("click",r.current,{once:!0})):E()}else e.removeEventListener("click",r.current);o.current=!1},d=window.setTimeout(()=>{e.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(d),e.removeEventListener("pointerdown",a),e.removeEventListener("click",r.current)}},[e,s]),{onPointerDownCapture:()=>o.current=!0}}function V(t,e=globalThis?.document){const s=P(t),o=n.useRef(!1);return n.useEffect(()=>{const r=a=>{a.target&&!o.current&&B(X,s,{originalEvent:a},{discrete:!1})};return e.addEventListener("focusin",r),()=>e.removeEventListener("focusin",r)},[e,s]),{onFocusCapture:()=>o.current=!0,onBlurCapture:()=>o.current=!1}}function g(){const t=new CustomEvent(p);document.dispatchEvent(t)}function B(t,e,s,{discrete:o}){const r=s.originalEvent.target,a=new CustomEvent(t,{bubbles:!1,cancelable:!0,detail:s});e&&r.addEventListener(t,e,{once:!0}),o?M(r,a):r.dispatchEvent(a)}var Z="Portal",$=n.forwardRef((t,e)=>{const{container:s,...o}=t,[r,a]=n.useState(!1);U(()=>a(!0),[]);const d=s||r&&globalThis?.document?.body;return d?j.createPortal(b.jsx(m.div,{...o,ref:e}),d):null});$.displayName=Z;export{te as C,Y as D,$ as P,P as u};
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import{r as u,a3 as ge,j as ye,P as be}from"./index-Cz73HpYH.js";import{u as q}from"./index-B6Lvy5Sr.js";var j="focusScope.autoFocusOnMount",_="focusScope.autoFocusOnUnmount",Q={bubbles:!1,cancelable:!0},Ee="FocusScope",Se=u.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:c,onUnmountAutoFocus:i,...s}=e,[a,S]=u.useState(null),b=q(c),g=q(i),f=u.useRef(null),v=ge(t,o=>S(o)),h=u.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;u.useEffect(()=>{if(r){let o=function(p){if(h.paused||!a)return;const y=p.target;a.contains(y)?f.current=y:A(f.current,{select:!0})},l=function(p){if(h.paused||!a)return;const y=p.relatedTarget;y!==null&&(a.contains(y)||A(f.current,{select:!0}))},d=function(p){if(document.activeElement===document.body)for(const E of p)E.removedNodes.length>0&&A(a)};document.addEventListener("focusin",o),document.addEventListener("focusout",l);const m=new MutationObserver(d);return a&&m.observe(a,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",o),document.removeEventListener("focusout",l),m.disconnect()}}},[r,a,h.paused]),u.useEffect(()=>{if(a){J.add(h);const o=document.activeElement;if(!a.contains(o)){const d=new CustomEvent(j,Q);a.addEventListener(j,b),a.dispatchEvent(d),d.defaultPrevented||(we(Te(ue(a)),{select:!0}),document.activeElement===o&&A(a))}return()=>{a.removeEventListener(j,b),setTimeout(()=>{const d=new CustomEvent(_,Q);a.addEventListener(_,g),a.dispatchEvent(d),d.defaultPrevented||A(o??document.body,{select:!0}),a.removeEventListener(_,g),J.remove(h)},0)}}},[a,b,g,h]);const w=u.useCallback(o=>{if(!n&&!r||h.paused)return;const l=o.key==="Tab"&&!o.altKey&&!o.ctrlKey&&!o.metaKey,d=document.activeElement;if(l&&d){const m=o.currentTarget,[p,y]=Ce(m);p&&y?!o.shiftKey&&d===y?(o.preventDefault(),n&&A(p,{select:!0})):o.shiftKey&&d===p&&(o.preventDefault(),n&&A(y,{select:!0})):d===m&&o.preventDefault()}},[n,r,h.paused]);return ye.jsx(be.div,{tabIndex:-1,...s,ref:v,onKeyDown:w})});Se.displayName=Ee;function we(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(A(r,{select:t}),document.activeElement!==n)return}function Ce(e){const t=ue(e),n=$(t,e),r=$(t.reverse(),e);return[n,r]}function ue(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const c=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||c?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function $(e,t){for(const n of e)if(!Re(n,{upTo:t}))return n}function Re(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function ke(e){return e instanceof HTMLInputElement&&"select"in e}function A(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&ke(e)&&t&&e.select()}}var J=Ae();function Ae(){let e=[];return{add(t){const n=e[0];t!==n&&n?.pause(),e=ee(e,t),e.unshift(t)},remove(t){e=ee(e,t),e[0]?.resume()}}}function ee(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Te(e){return e.filter(t=>t.tagName!=="A")}var K=0;function pt(){u.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??te()),document.body.insertAdjacentElement("beforeend",e[1]??te()),K++,()=>{K===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),K--}},[])}function te(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var C=function(){return C=Object.assign||function(t){for(var n,r=1,c=arguments.length;r<c;r++){n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},C.apply(this,arguments)};function ie(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var c=0,r=Object.getOwnPropertySymbols(e);c<r.length;c++)t.indexOf(r[c])<0&&Object.prototype.propertyIsEnumerable.call(e,r[c])&&(n[r[c]]=e[r[c]]);return n}function Ne(e,t,n){if(n||arguments.length===2)for(var r=0,c=t.length,i;r<c;r++)(i||!(r in t))&&(i||(i=Array.prototype.slice.call(t,0,r)),i[r]=t[r]);return e.concat(i||Array.prototype.slice.call(t))}var W="right-scroll-bar-position",B="width-before-scroll-bar",Me="with-scroll-bars-hidden",Fe="--removed-body-scroll-bar-size";function H(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function Pe(e,t){var n=u.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var c=n.value;c!==r&&(n.value=r,n.callback(r,c))}}}})[0];return n.callback=t,n.facade}var Oe=typeof window<"u"?u.useLayoutEffect:u.useEffect,ne=new WeakMap;function Le(e,t){var n=Pe(null,function(r){return e.forEach(function(c){return H(c,r)})});return Oe(function(){var r=ne.get(n);if(r){var c=new Set(r),i=new Set(e),s=n.current;c.forEach(function(a){i.has(a)||H(a,null)}),i.forEach(function(a){c.has(a)||H(a,s)})}ne.set(n,e)},[e]),n}function xe(e){return e}function Ie(e,t){t===void 0&&(t=xe);var n=[],r=!1,c={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(i){var s=t(i,r);return n.push(s),function(){n=n.filter(function(a){return a!==s})}},assignSyncMedium:function(i){for(r=!0;n.length;){var s=n;n=[],s.forEach(i)}n={push:function(a){return i(a)},filter:function(){return n}}},assignMedium:function(i){r=!0;var s=[];if(n.length){var a=n;n=[],a.forEach(i),s=n}var S=function(){var g=s;s=[],g.forEach(i)},b=function(){return Promise.resolve().then(S)};b(),n={push:function(g){s.push(g),b()},filter:function(g){return s=s.filter(g),n}}}};return c}function We(e){e===void 0&&(e={});var t=Ie(null);return t.options=C({async:!0,ssr:!1},e),t}var le=function(e){var t=e.sideCar,n=ie(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return u.createElement(r,C({},n))};le.isSideCarExport=!0;function Be(e,t){return e.useMedium(t),le}var se=We(),V=function(){},D=u.forwardRef(function(e,t){var n=u.useRef(null),r=u.useState({onScrollCapture:V,onWheelCapture:V,onTouchMoveCapture:V}),c=r[0],i=r[1],s=e.forwardProps,a=e.children,S=e.className,b=e.removeScrollBar,g=e.enabled,f=e.shards,v=e.sideCar,h=e.noRelative,w=e.noIsolation,o=e.inert,l=e.allowPinchZoom,d=e.as,m=d===void 0?"div":d,p=e.gapMode,y=ie(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),E=v,R=Le([n,t]),k=C(C({},y),c);return u.createElement(u.Fragment,null,g&&u.createElement(E,{sideCar:se,removeScrollBar:b,shards:f,noRelative:h,noIsolation:w,inert:o,setCallbacks:i,allowPinchZoom:!!l,lockRef:n,gapMode:p}),s?u.cloneElement(u.Children.only(a),C(C({},k),{ref:R})):u.createElement(m,C({},k,{className:S,ref:R}),a))});D.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};D.classNames={fullWidth:B,zeroRight:W};var De=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function Ue(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=De();return t&&e.setAttribute("nonce",t),e}function je(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function _e(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var Ke=function(){var e=0,t=null;return{add:function(n){e==0&&(t=Ue())&&(je(t,n),_e(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},He=function(){var e=Ke();return function(t,n){u.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},fe=function(){var e=He(),t=function(n){var r=n.styles,c=n.dynamic;return e(r,c),null};return t},Ve={left:0,top:0,right:0,gap:0},X=function(e){return parseInt(e||"",10)||0},Xe=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],c=t[e==="padding"?"paddingRight":"marginRight"];return[X(n),X(r),X(c)]},Ye=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return Ve;var t=Xe(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Ge=fe(),F="data-scroll-locked",ze=function(e,t,n,r){var c=e.left,i=e.top,s=e.right,a=e.gap;return n===void 0&&(n="margin"),`
|
|
2
|
-
.`.concat(Me,` {
|
|
3
|
-
overflow: hidden `).concat(r,`;
|
|
4
|
-
padding-right: `).concat(a,"px ").concat(r,`;
|
|
5
|
-
}
|
|
6
|
-
body[`).concat(F,`] {
|
|
7
|
-
overflow: hidden `).concat(r,`;
|
|
8
|
-
overscroll-behavior: contain;
|
|
9
|
-
`).concat([t&&"position: relative ".concat(r,";"),n==="margin"&&`
|
|
10
|
-
padding-left: `.concat(c,`px;
|
|
11
|
-
padding-top: `).concat(i,`px;
|
|
12
|
-
padding-right: `).concat(s,`px;
|
|
13
|
-
margin-left:0;
|
|
14
|
-
margin-top:0;
|
|
15
|
-
margin-right: `).concat(a,"px ").concat(r,`;
|
|
16
|
-
`),n==="padding"&&"padding-right: ".concat(a,"px ").concat(r,";")].filter(Boolean).join(""),`
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.`).concat(W,` {
|
|
20
|
-
right: `).concat(a,"px ").concat(r,`;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
.`).concat(B,` {
|
|
24
|
-
margin-right: `).concat(a,"px ").concat(r,`;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
.`).concat(W," .").concat(W,` {
|
|
28
|
-
right: 0 `).concat(r,`;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
.`).concat(B," .").concat(B,` {
|
|
32
|
-
margin-right: 0 `).concat(r,`;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
body[`).concat(F,`] {
|
|
36
|
-
`).concat(Fe,": ").concat(a,`px;
|
|
37
|
-
}
|
|
38
|
-
`)},re=function(){var e=parseInt(document.body.getAttribute(F)||"0",10);return isFinite(e)?e:0},Ze=function(){u.useEffect(function(){return document.body.setAttribute(F,(re()+1).toString()),function(){var e=re()-1;e<=0?document.body.removeAttribute(F):document.body.setAttribute(F,e.toString())}},[])},qe=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,c=r===void 0?"margin":r;Ze();var i=u.useMemo(function(){return Ye(c)},[c]);return u.createElement(Ge,{styles:ze(i,!t,c,n?"":"!important")})},G=!1;if(typeof window<"u")try{var O=Object.defineProperty({},"passive",{get:function(){return G=!0,!0}});window.addEventListener("test",O,O),window.removeEventListener("test",O,O)}catch{G=!1}var T=G?{passive:!1}:!1,Qe=function(e){return e.tagName==="TEXTAREA"},de=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!Qe(e)&&n[t]==="visible")},$e=function(e){return de(e,"overflowY")},Je=function(e){return de(e,"overflowX")},ae=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var c=ve(e,r);if(c){var i=he(e,r),s=i[1],a=i[2];if(s>a)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},et=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},tt=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},ve=function(e,t){return e==="v"?$e(t):Je(t)},he=function(e,t){return e==="v"?et(t):tt(t)},nt=function(e,t){return e==="h"&&t==="rtl"?-1:1},rt=function(e,t,n,r,c){var i=nt(e,window.getComputedStyle(t).direction),s=i*r,a=n.target,S=t.contains(a),b=!1,g=s>0,f=0,v=0;do{if(!a)break;var h=he(e,a),w=h[0],o=h[1],l=h[2],d=o-l-i*w;(w||d)&&ve(e,a)&&(f+=d,v+=w);var m=a.parentNode;a=m&&m.nodeType===Node.DOCUMENT_FRAGMENT_NODE?m.host:m}while(!S&&a!==document.body||S&&(t.contains(a)||t===a));return(g&&Math.abs(f)<1||!g&&Math.abs(v)<1)&&(b=!0),b},L=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},oe=function(e){return[e.deltaX,e.deltaY]},ce=function(e){return e&&"current"in e?e.current:e},at=function(e,t){return e[0]===t[0]&&e[1]===t[1]},ot=function(e){return`
|
|
39
|
-
.block-interactivity-`.concat(e,` {pointer-events: none;}
|
|
40
|
-
.allow-interactivity-`).concat(e,` {pointer-events: all;}
|
|
41
|
-
`)},ct=0,N=[];function ut(e){var t=u.useRef([]),n=u.useRef([0,0]),r=u.useRef(),c=u.useState(ct++)[0],i=u.useState(fe)[0],s=u.useRef(e);u.useEffect(function(){s.current=e},[e]),u.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(c));var o=Ne([e.lockRef.current],(e.shards||[]).map(ce),!0).filter(Boolean);return o.forEach(function(l){return l.classList.add("allow-interactivity-".concat(c))}),function(){document.body.classList.remove("block-interactivity-".concat(c)),o.forEach(function(l){return l.classList.remove("allow-interactivity-".concat(c))})}}},[e.inert,e.lockRef.current,e.shards]);var a=u.useCallback(function(o,l){if("touches"in o&&o.touches.length===2||o.type==="wheel"&&o.ctrlKey)return!s.current.allowPinchZoom;var d=L(o),m=n.current,p="deltaX"in o?o.deltaX:m[0]-d[0],y="deltaY"in o?o.deltaY:m[1]-d[1],E,R=o.target,k=Math.abs(p)>Math.abs(y)?"h":"v";if("touches"in o&&k==="h"&&R.type==="range")return!1;var z=window.getSelection(),U=z&&z.anchorNode,pe=U?U===R||U.contains(R):!1;if(pe)return!1;var P=ae(k,R);if(!P)return!0;if(P?E=k:(E=k==="v"?"h":"v",P=ae(k,R)),!P)return!1;if(!r.current&&"changedTouches"in o&&(p||y)&&(r.current=E),!E)return!0;var Z=r.current||E;return rt(Z,l,o,Z==="h"?p:y)},[]),S=u.useCallback(function(o){var l=o;if(!(!N.length||N[N.length-1]!==i)){var d="deltaY"in l?oe(l):L(l),m=t.current.filter(function(E){return E.name===l.type&&(E.target===l.target||l.target===E.shadowParent)&&at(E.delta,d)})[0];if(m&&m.should){l.cancelable&&l.preventDefault();return}if(!m){var p=(s.current.shards||[]).map(ce).filter(Boolean).filter(function(E){return E.contains(l.target)}),y=p.length>0?a(l,p[0]):!s.current.noIsolation;y&&l.cancelable&&l.preventDefault()}}},[]),b=u.useCallback(function(o,l,d,m){var p={name:o,delta:l,target:d,should:m,shadowParent:it(d)};t.current.push(p),setTimeout(function(){t.current=t.current.filter(function(y){return y!==p})},1)},[]),g=u.useCallback(function(o){n.current=L(o),r.current=void 0},[]),f=u.useCallback(function(o){b(o.type,oe(o),o.target,a(o,e.lockRef.current))},[]),v=u.useCallback(function(o){b(o.type,L(o),o.target,a(o,e.lockRef.current))},[]);u.useEffect(function(){return N.push(i),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:v}),document.addEventListener("wheel",S,T),document.addEventListener("touchmove",S,T),document.addEventListener("touchstart",g,T),function(){N=N.filter(function(o){return o!==i}),document.removeEventListener("wheel",S,T),document.removeEventListener("touchmove",S,T),document.removeEventListener("touchstart",g,T)}},[]);var h=e.removeScrollBar,w=e.inert;return u.createElement(u.Fragment,null,w?u.createElement(i,{styles:ot(c)}):null,h?u.createElement(qe,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function it(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const lt=Be(se,ut);var st=u.forwardRef(function(e,t){return u.createElement(D,C({},e,{ref:t,sideCar:lt}))});st.classNames=D.classNames;var ft=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},M=new WeakMap,x=new WeakMap,I={},Y=0,me=function(e){return e&&(e.host||me(e.parentNode))},dt=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=me(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},vt=function(e,t,n,r){var c=dt(t,Array.isArray(e)?e:[e]);I[n]||(I[n]=new WeakMap);var i=I[n],s=[],a=new Set,S=new Set(c),b=function(f){!f||a.has(f)||(a.add(f),b(f.parentNode))};c.forEach(b);var g=function(f){!f||S.has(f)||Array.prototype.forEach.call(f.children,function(v){if(a.has(v))g(v);else try{var h=v.getAttribute(r),w=h!==null&&h!=="false",o=(M.get(v)||0)+1,l=(i.get(v)||0)+1;M.set(v,o),i.set(v,l),s.push(v),o===1&&w&&x.set(v,!0),l===1&&v.setAttribute(n,"true"),w||v.setAttribute(r,"true")}catch(d){console.error("aria-hidden: cannot operate on ",v,d)}})};return g(t),a.clear(),Y++,function(){s.forEach(function(f){var v=M.get(f)-1,h=i.get(f)-1;M.set(f,v),i.set(f,h),v||(x.has(f)||f.removeAttribute(r),x.delete(f)),h||f.removeAttribute(n)}),Y--,Y||(M=new WeakMap,M=new WeakMap,x=new WeakMap,I={})}},gt=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),c=ft(e);return c?(r.push.apply(r,Array.from(c.querySelectorAll("[aria-live], script"))),vt(r,c,n,"aria-hidden")):function(){return null}};export{Se as F,st as R,gt as h,pt as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as O,aL as xt,aM as be,j as Y,P as At,a3 as It,a2 as Ae}from"./index-Cz73HpYH.js";import{u as Re}from"./index-B6Lvy5Sr.js";function Oe(t){const[e,n]=O.useState(void 0);return xt(()=>{if(t){n({width:t.offsetWidth,height:t.offsetHeight});const o=new ResizeObserver(r=>{if(!Array.isArray(r)||!r.length)return;const i=r[0];let s,c;if("borderBoxSize"in i){const l=i.borderBoxSize,a=Array.isArray(l)?l[0]:l;s=a.inlineSize,c=a.blockSize}else s=t.offsetWidth,c=t.offsetHeight;n({width:s,height:c})});return o.observe(t,{box:"border-box"}),()=>o.unobserve(t)}else n(void 0)},[t]),e}const Se=["top","right","bottom","left"],Z=Math.min,W=Math.max,lt=Math.round,st=Math.floor,j=t=>({x:t,y:t}),Ce={left:"right",right:"left",bottom:"top",top:"bottom"},Pe={start:"end",end:"start"};function yt(t,e,n){return W(t,Z(e,n))}function q(t,e){return typeof t=="function"?t(e):t}function U(t){return t.split("-")[0]}function tt(t){return t.split("-")[1]}function Rt(t){return t==="x"?"y":"x"}function Ot(t){return t==="y"?"height":"width"}const Ee=new Set(["top","bottom"]);function V(t){return Ee.has(U(t))?"y":"x"}function St(t){return Rt(V(t))}function Le(t,e,n){n===void 0&&(n=!1);const o=tt(t),r=St(t),i=Ot(r);let s=r==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return e.reference[i]>e.floating[i]&&(s=at(s)),[s,at(s)]}function De(t){const e=at(t);return[vt(t),e,vt(e)]}function vt(t){return t.replace(/start|end/g,e=>Pe[e])}const $t=["left","right"],kt=["right","left"],Me=["top","bottom"],Te=["bottom","top"];function $e(t,e,n){switch(t){case"top":case"bottom":return n?e?kt:$t:e?$t:kt;case"left":case"right":return e?Me:Te;default:return[]}}function ke(t,e,n,o){const r=tt(t);let i=$e(U(t),n==="start",o);return r&&(i=i.map(s=>s+"-"+r),e&&(i=i.concat(i.map(vt)))),i}function at(t){return t.replace(/left|right|bottom|top/g,e=>Ce[e])}function Fe(t){return{top:0,right:0,bottom:0,left:0,...t}}function Xt(t){return typeof t!="number"?Fe(t):{top:t,right:t,bottom:t,left:t}}function ft(t){const{x:e,y:n,width:o,height:r}=t;return{width:o,height:r,top:n,left:e,right:e+o,bottom:n+r,x:e,y:n}}function Ft(t,e,n){let{reference:o,floating:r}=t;const i=V(e),s=St(e),c=Ot(s),l=U(e),a=i==="y",f=o.x+o.width/2-r.width/2,u=o.y+o.height/2-r.height/2,h=o[c]/2-r[c]/2;let d;switch(l){case"top":d={x:f,y:o.y-r.height};break;case"bottom":d={x:f,y:o.y+o.height};break;case"right":d={x:o.x+o.width,y:u};break;case"left":d={x:o.x-r.width,y:u};break;default:d={x:o.x,y:o.y}}switch(tt(e)){case"start":d[s]-=h*(n&&a?-1:1);break;case"end":d[s]+=h*(n&&a?-1:1);break}return d}async function Ne(t,e){var n;e===void 0&&(e={});const{x:o,y:r,platform:i,rects:s,elements:c,strategy:l}=t,{boundary:a="clippingAncestors",rootBoundary:f="viewport",elementContext:u="floating",altBoundary:h=!1,padding:d=0}=q(e,t),p=Xt(d),w=c[h?u==="floating"?"reference":"floating":u],g=ft(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(w)))==null||n?w:w.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(c.floating)),boundary:a,rootBoundary:f,strategy:l})),v=u==="floating"?{x:o,y:r,width:s.floating.width,height:s.floating.height}:s.reference,y=await(i.getOffsetParent==null?void 0:i.getOffsetParent(c.floating)),x=await(i.isElement==null?void 0:i.isElement(y))?await(i.getScale==null?void 0:i.getScale(y))||{x:1,y:1}:{x:1,y:1},A=ft(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:c,rect:v,offsetParent:y,strategy:l}):v);return{top:(g.top-A.top+p.top)/x.y,bottom:(A.bottom-g.bottom+p.bottom)/x.y,left:(g.left-A.left+p.left)/x.x,right:(A.right-g.right+p.right)/x.x}}const We=async(t,e,n)=>{const{placement:o="bottom",strategy:r="absolute",middleware:i=[],platform:s}=n,c=i.filter(Boolean),l=await(s.isRTL==null?void 0:s.isRTL(e));let a=await s.getElementRects({reference:t,floating:e,strategy:r}),{x:f,y:u}=Ft(a,o,l),h=o,d={},p=0;for(let w=0;w<c.length;w++){var m;const{name:g,fn:v}=c[w],{x:y,y:x,data:A,reset:R}=await v({x:f,y:u,initialPlacement:o,placement:h,strategy:r,middlewareData:d,rects:a,platform:{...s,detectOverflow:(m=s.detectOverflow)!=null?m:Ne},elements:{reference:t,floating:e}});f=y??f,u=x??u,d={...d,[g]:{...d[g],...A}},R&&p<=50&&(p++,typeof R=="object"&&(R.placement&&(h=R.placement),R.rects&&(a=R.rects===!0?await s.getElementRects({reference:t,floating:e,strategy:r}):R.rects),{x:f,y:u}=Ft(a,h,l)),w=-1)}return{x:f,y:u,placement:h,strategy:r,middlewareData:d}},He=t=>({name:"arrow",options:t,async fn(e){const{x:n,y:o,placement:r,rects:i,platform:s,elements:c,middlewareData:l}=e,{element:a,padding:f=0}=q(t,e)||{};if(a==null)return{};const u=Xt(f),h={x:n,y:o},d=St(r),p=Ot(d),m=await s.getDimensions(a),w=d==="y",g=w?"top":"left",v=w?"bottom":"right",y=w?"clientHeight":"clientWidth",x=i.reference[p]+i.reference[d]-h[d]-i.floating[p],A=h[d]-i.reference[d],R=await(s.getOffsetParent==null?void 0:s.getOffsetParent(a));let S=R?R[y]:0;(!S||!await(s.isElement==null?void 0:s.isElement(R)))&&(S=c.floating[y]||i.floating[p]);const M=x/2-A/2,F=S/2-m[p]/2-1,D=Z(u[g],F),$=Z(u[v],F),k=D,P=S-m[p]-$,C=S/2-m[p]/2+M,N=yt(k,C,P),E=!l.arrow&&tt(r)!=null&&C!==N&&i.reference[p]/2-(C<k?D:$)-m[p]/2<0,L=E?C<k?C-k:C-P:0;return{[d]:h[d]+L,data:{[d]:N,centerOffset:C-N-L,...E&&{alignmentOffset:L}},reset:E}}}),_e=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var n,o;const{placement:r,middlewareData:i,rects:s,initialPlacement:c,platform:l,elements:a}=e,{mainAxis:f=!0,crossAxis:u=!0,fallbackPlacements:h,fallbackStrategy:d="bestFit",fallbackAxisSideDirection:p="none",flipAlignment:m=!0,...w}=q(t,e);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const g=U(r),v=V(c),y=U(c)===c,x=await(l.isRTL==null?void 0:l.isRTL(a.floating)),A=h||(y||!m?[at(c)]:De(c)),R=p!=="none";!h&&R&&A.push(...ke(c,m,p,x));const S=[c,...A],M=await l.detectOverflow(e,w),F=[];let D=((o=i.flip)==null?void 0:o.overflows)||[];if(f&&F.push(M[g]),u){const C=Le(r,s,x);F.push(M[C[0]],M[C[1]])}if(D=[...D,{placement:r,overflows:F}],!F.every(C=>C<=0)){var $,k;const C=((($=i.flip)==null?void 0:$.index)||0)+1,N=S[C];if(N&&(!(u==="alignment"?v!==V(N):!1)||D.every(b=>V(b.placement)===v?b.overflows[0]>0:!0)))return{data:{index:C,overflows:D},reset:{placement:N}};let E=(k=D.filter(L=>L.overflows[0]<=0).sort((L,b)=>L.overflows[1]-b.overflows[1])[0])==null?void 0:k.placement;if(!E)switch(d){case"bestFit":{var P;const L=(P=D.filter(b=>{if(R){const T=V(b.placement);return T===v||T==="y"}return!0}).map(b=>[b.placement,b.overflows.filter(T=>T>0).reduce((T,B)=>T+B,0)]).sort((b,T)=>b[1]-T[1])[0])==null?void 0:P[0];L&&(E=L);break}case"initialPlacement":E=c;break}if(r!==E)return{reset:{placement:E}}}return{}}}};function Nt(t,e){return{top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function Wt(t){return Se.some(e=>t[e]>=0)}const ze=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(e){const{rects:n,platform:o}=e,{strategy:r="referenceHidden",...i}=q(t,e);switch(r){case"referenceHidden":{const s=await o.detectOverflow(e,{...i,elementContext:"reference"}),c=Nt(s,n.reference);return{data:{referenceHiddenOffsets:c,referenceHidden:Wt(c)}}}case"escaped":{const s=await o.detectOverflow(e,{...i,altBoundary:!0}),c=Nt(s,n.floating);return{data:{escapedOffsets:c,escaped:Wt(c)}}}default:return{}}}}},Yt=new Set(["left","top"]);async function Be(t,e){const{placement:n,platform:o,elements:r}=t,i=await(o.isRTL==null?void 0:o.isRTL(r.floating)),s=U(n),c=tt(n),l=V(n)==="y",a=Yt.has(s)?-1:1,f=i&&l?-1:1,u=q(e,t);let{mainAxis:h,crossAxis:d,alignmentAxis:p}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return c&&typeof p=="number"&&(d=c==="end"?p*-1:p),l?{x:d*f,y:h*a}:{x:h*a,y:d*f}}const Ve=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var n,o;const{x:r,y:i,placement:s,middlewareData:c}=e,l=await Be(e,t);return s===((n=c.offset)==null?void 0:n.placement)&&(o=c.arrow)!=null&&o.alignmentOffset?{}:{x:r+l.x,y:i+l.y,data:{...l,placement:s}}}}},je=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){const{x:n,y:o,placement:r,platform:i}=e,{mainAxis:s=!0,crossAxis:c=!1,limiter:l={fn:g=>{let{x:v,y}=g;return{x:v,y}}},...a}=q(t,e),f={x:n,y:o},u=await i.detectOverflow(e,a),h=V(U(r)),d=Rt(h);let p=f[d],m=f[h];if(s){const g=d==="y"?"top":"left",v=d==="y"?"bottom":"right",y=p+u[g],x=p-u[v];p=yt(y,p,x)}if(c){const g=h==="y"?"top":"left",v=h==="y"?"bottom":"right",y=m+u[g],x=m-u[v];m=yt(y,m,x)}const w=l.fn({...e,[d]:p,[h]:m});return{...w,data:{x:w.x-n,y:w.y-o,enabled:{[d]:s,[h]:c}}}}}},Ie=function(t){return t===void 0&&(t={}),{options:t,fn(e){const{x:n,y:o,placement:r,rects:i,middlewareData:s}=e,{offset:c=0,mainAxis:l=!0,crossAxis:a=!0}=q(t,e),f={x:n,y:o},u=V(r),h=Rt(u);let d=f[h],p=f[u];const m=q(c,e),w=typeof m=="number"?{mainAxis:m,crossAxis:0}:{mainAxis:0,crossAxis:0,...m};if(l){const y=h==="y"?"height":"width",x=i.reference[h]-i.floating[y]+w.mainAxis,A=i.reference[h]+i.reference[y]-w.mainAxis;d<x?d=x:d>A&&(d=A)}if(a){var g,v;const y=h==="y"?"width":"height",x=Yt.has(U(r)),A=i.reference[u]-i.floating[y]+(x&&((g=s.offset)==null?void 0:g[u])||0)+(x?0:w.crossAxis),R=i.reference[u]+i.reference[y]+(x?0:((v=s.offset)==null?void 0:v[u])||0)-(x?w.crossAxis:0);p<A?p=A:p>R&&(p=R)}return{[h]:d,[u]:p}}}},Xe=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(e){var n,o;const{placement:r,rects:i,platform:s,elements:c}=e,{apply:l=()=>{},...a}=q(t,e),f=await s.detectOverflow(e,a),u=U(r),h=tt(r),d=V(r)==="y",{width:p,height:m}=i.floating;let w,g;u==="top"||u==="bottom"?(w=u,g=h===(await(s.isRTL==null?void 0:s.isRTL(c.floating))?"start":"end")?"left":"right"):(g=u,w=h==="end"?"top":"bottom");const v=m-f.top-f.bottom,y=p-f.left-f.right,x=Z(m-f[w],v),A=Z(p-f[g],y),R=!e.middlewareData.shift;let S=x,M=A;if((n=e.middlewareData.shift)!=null&&n.enabled.x&&(M=y),(o=e.middlewareData.shift)!=null&&o.enabled.y&&(S=v),R&&!h){const D=W(f.left,0),$=W(f.right,0),k=W(f.top,0),P=W(f.bottom,0);d?M=p-2*(D!==0||$!==0?D+$:W(f.left,f.right)):S=m-2*(k!==0||P!==0?k+P:W(f.top,f.bottom))}await l({...e,availableWidth:M,availableHeight:S});const F=await s.getDimensions(c.floating);return p!==F.width||m!==F.height?{reset:{rects:!0}}:{}}}};function dt(){return typeof window<"u"}function et(t){return qt(t)?(t.nodeName||"").toLowerCase():"#document"}function H(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function X(t){var e;return(e=(qt(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function qt(t){return dt()?t instanceof Node||t instanceof H(t).Node:!1}function _(t){return dt()?t instanceof Element||t instanceof H(t).Element:!1}function I(t){return dt()?t instanceof HTMLElement||t instanceof H(t).HTMLElement:!1}function Ht(t){return!dt()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof H(t).ShadowRoot}const Ye=new Set(["inline","contents"]);function rt(t){const{overflow:e,overflowX:n,overflowY:o,display:r}=z(t);return/auto|scroll|overlay|hidden|clip/.test(e+o+n)&&!Ye.has(r)}const qe=new Set(["table","td","th"]);function Ue(t){return qe.has(et(t))}const Ze=[":popover-open",":modal"];function pt(t){return Ze.some(e=>{try{return t.matches(e)}catch{return!1}})}const Ke=["transform","translate","scale","rotate","perspective"],Ge=["transform","translate","scale","rotate","perspective","filter"],Je=["paint","layout","strict","content"];function Ct(t){const e=Pt(),n=_(t)?z(t):t;return Ke.some(o=>n[o]?n[o]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!e&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!e&&(n.filter?n.filter!=="none":!1)||Ge.some(o=>(n.willChange||"").includes(o))||Je.some(o=>(n.contain||"").includes(o))}function Qe(t){let e=K(t);for(;I(e)&&!Q(e);){if(Ct(e))return e;if(pt(e))return null;e=K(e)}return null}function Pt(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const tn=new Set(["html","body","#document"]);function Q(t){return tn.has(et(t))}function z(t){return H(t).getComputedStyle(t)}function ht(t){return _(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function K(t){if(et(t)==="html")return t;const e=t.assignedSlot||t.parentNode||Ht(t)&&t.host||X(t);return Ht(e)?e.host:e}function Ut(t){const e=K(t);return Q(e)?t.ownerDocument?t.ownerDocument.body:t.body:I(e)&&rt(e)?e:Ut(e)}function ot(t,e,n){var o;e===void 0&&(e=[]),n===void 0&&(n=!0);const r=Ut(t),i=r===((o=t.ownerDocument)==null?void 0:o.body),s=H(r);if(i){const c=bt(s);return e.concat(s,s.visualViewport||[],rt(r)?r:[],c&&n?ot(c):[])}return e.concat(r,ot(r,[],n))}function bt(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function Zt(t){const e=z(t);let n=parseFloat(e.width)||0,o=parseFloat(e.height)||0;const r=I(t),i=r?t.offsetWidth:n,s=r?t.offsetHeight:o,c=lt(n)!==i||lt(o)!==s;return c&&(n=i,o=s),{width:n,height:o,$:c}}function Et(t){return _(t)?t:t.contextElement}function J(t){const e=Et(t);if(!I(e))return j(1);const n=e.getBoundingClientRect(),{width:o,height:r,$:i}=Zt(e);let s=(i?lt(n.width):n.width)/o,c=(i?lt(n.height):n.height)/r;return(!s||!Number.isFinite(s))&&(s=1),(!c||!Number.isFinite(c))&&(c=1),{x:s,y:c}}const en=j(0);function Kt(t){const e=H(t);return!Pt()||!e.visualViewport?en:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function nn(t,e,n){return e===void 0&&(e=!1),!n||e&&n!==H(t)?!1:e}function G(t,e,n,o){e===void 0&&(e=!1),n===void 0&&(n=!1);const r=t.getBoundingClientRect(),i=Et(t);let s=j(1);e&&(o?_(o)&&(s=J(o)):s=J(t));const c=nn(i,n,o)?Kt(i):j(0);let l=(r.left+c.x)/s.x,a=(r.top+c.y)/s.y,f=r.width/s.x,u=r.height/s.y;if(i){const h=H(i),d=o&&_(o)?H(o):o;let p=h,m=bt(p);for(;m&&o&&d!==p;){const w=J(m),g=m.getBoundingClientRect(),v=z(m),y=g.left+(m.clientLeft+parseFloat(v.paddingLeft))*w.x,x=g.top+(m.clientTop+parseFloat(v.paddingTop))*w.y;l*=w.x,a*=w.y,f*=w.x,u*=w.y,l+=y,a+=x,p=H(m),m=bt(p)}}return ft({width:f,height:u,x:l,y:a})}function mt(t,e){const n=ht(t).scrollLeft;return e?e.left+n:G(X(t)).left+n}function Gt(t,e){const n=t.getBoundingClientRect(),o=n.left+e.scrollLeft-mt(t,n),r=n.top+e.scrollTop;return{x:o,y:r}}function on(t){let{elements:e,rect:n,offsetParent:o,strategy:r}=t;const i=r==="fixed",s=X(o),c=e?pt(e.floating):!1;if(o===s||c&&i)return n;let l={scrollLeft:0,scrollTop:0},a=j(1);const f=j(0),u=I(o);if((u||!u&&!i)&&((et(o)!=="body"||rt(s))&&(l=ht(o)),I(o))){const d=G(o);a=J(o),f.x=d.x+o.clientLeft,f.y=d.y+o.clientTop}const h=s&&!u&&!i?Gt(s,l):j(0);return{width:n.width*a.x,height:n.height*a.y,x:n.x*a.x-l.scrollLeft*a.x+f.x+h.x,y:n.y*a.y-l.scrollTop*a.y+f.y+h.y}}function rn(t){return Array.from(t.getClientRects())}function sn(t){const e=X(t),n=ht(t),o=t.ownerDocument.body,r=W(e.scrollWidth,e.clientWidth,o.scrollWidth,o.clientWidth),i=W(e.scrollHeight,e.clientHeight,o.scrollHeight,o.clientHeight);let s=-n.scrollLeft+mt(t);const c=-n.scrollTop;return z(o).direction==="rtl"&&(s+=W(e.clientWidth,o.clientWidth)-r),{width:r,height:i,x:s,y:c}}const _t=25;function cn(t,e){const n=H(t),o=X(t),r=n.visualViewport;let i=o.clientWidth,s=o.clientHeight,c=0,l=0;if(r){i=r.width,s=r.height;const f=Pt();(!f||f&&e==="fixed")&&(c=r.offsetLeft,l=r.offsetTop)}const a=mt(o);if(a<=0){const f=o.ownerDocument,u=f.body,h=getComputedStyle(u),d=f.compatMode==="CSS1Compat"&&parseFloat(h.marginLeft)+parseFloat(h.marginRight)||0,p=Math.abs(o.clientWidth-u.clientWidth-d);p<=_t&&(i-=p)}else a<=_t&&(i+=a);return{width:i,height:s,x:c,y:l}}const ln=new Set(["absolute","fixed"]);function an(t,e){const n=G(t,!0,e==="fixed"),o=n.top+t.clientTop,r=n.left+t.clientLeft,i=I(t)?J(t):j(1),s=t.clientWidth*i.x,c=t.clientHeight*i.y,l=r*i.x,a=o*i.y;return{width:s,height:c,x:l,y:a}}function zt(t,e,n){let o;if(e==="viewport")o=cn(t,n);else if(e==="document")o=sn(X(t));else if(_(e))o=an(e,n);else{const r=Kt(t);o={x:e.x-r.x,y:e.y-r.y,width:e.width,height:e.height}}return ft(o)}function Jt(t,e){const n=K(t);return n===e||!_(n)||Q(n)?!1:z(n).position==="fixed"||Jt(n,e)}function fn(t,e){const n=e.get(t);if(n)return n;let o=ot(t,[],!1).filter(c=>_(c)&&et(c)!=="body"),r=null;const i=z(t).position==="fixed";let s=i?K(t):t;for(;_(s)&&!Q(s);){const c=z(s),l=Ct(s);!l&&c.position==="fixed"&&(r=null),(i?!l&&!r:!l&&c.position==="static"&&!!r&&ln.has(r.position)||rt(s)&&!l&&Jt(t,s))?o=o.filter(f=>f!==s):r=c,s=K(s)}return e.set(t,o),o}function un(t){let{element:e,boundary:n,rootBoundary:o,strategy:r}=t;const s=[...n==="clippingAncestors"?pt(e)?[]:fn(e,this._c):[].concat(n),o],c=s[0],l=s.reduce((a,f)=>{const u=zt(e,f,r);return a.top=W(u.top,a.top),a.right=Z(u.right,a.right),a.bottom=Z(u.bottom,a.bottom),a.left=W(u.left,a.left),a},zt(e,c,r));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function dn(t){const{width:e,height:n}=Zt(t);return{width:e,height:n}}function pn(t,e,n){const o=I(e),r=X(e),i=n==="fixed",s=G(t,!0,i,e);let c={scrollLeft:0,scrollTop:0};const l=j(0);function a(){l.x=mt(r)}if(o||!o&&!i)if((et(e)!=="body"||rt(r))&&(c=ht(e)),o){const d=G(e,!0,i,e);l.x=d.x+e.clientLeft,l.y=d.y+e.clientTop}else r&&a();i&&!o&&r&&a();const f=r&&!o&&!i?Gt(r,c):j(0),u=s.left+c.scrollLeft-l.x-f.x,h=s.top+c.scrollTop-l.y-f.y;return{x:u,y:h,width:s.width,height:s.height}}function gt(t){return z(t).position==="static"}function Bt(t,e){if(!I(t)||z(t).position==="fixed")return null;if(e)return e(t);let n=t.offsetParent;return X(t)===n&&(n=n.ownerDocument.body),n}function Qt(t,e){const n=H(t);if(pt(t))return n;if(!I(t)){let r=K(t);for(;r&&!Q(r);){if(_(r)&&!gt(r))return r;r=K(r)}return n}let o=Bt(t,e);for(;o&&Ue(o)&>(o);)o=Bt(o,e);return o&&Q(o)&>(o)&&!Ct(o)?n:o||Qe(t)||n}const hn=async function(t){const e=this.getOffsetParent||Qt,n=this.getDimensions,o=await n(t.floating);return{reference:pn(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function mn(t){return z(t).direction==="rtl"}const gn={convertOffsetParentRelativeRectToViewportRelativeRect:on,getDocumentElement:X,getClippingRect:un,getOffsetParent:Qt,getElementRects:hn,getClientRects:rn,getDimensions:dn,getScale:J,isElement:_,isRTL:mn};function te(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height}function wn(t,e){let n=null,o;const r=X(t);function i(){var c;clearTimeout(o),(c=n)==null||c.disconnect(),n=null}function s(c,l){c===void 0&&(c=!1),l===void 0&&(l=1),i();const a=t.getBoundingClientRect(),{left:f,top:u,width:h,height:d}=a;if(c||e(),!h||!d)return;const p=st(u),m=st(r.clientWidth-(f+h)),w=st(r.clientHeight-(u+d)),g=st(f),y={rootMargin:-p+"px "+-m+"px "+-w+"px "+-g+"px",threshold:W(0,Z(1,l))||1};let x=!0;function A(R){const S=R[0].intersectionRatio;if(S!==l){if(!x)return s();S?s(!1,S):o=setTimeout(()=>{s(!1,1e-7)},1e3)}S===1&&!te(a,t.getBoundingClientRect())&&s(),x=!1}try{n=new IntersectionObserver(A,{...y,root:r.ownerDocument})}catch{n=new IntersectionObserver(A,y)}n.observe(t)}return s(!0),i}function xn(t,e,n,o){o===void 0&&(o={});const{ancestorScroll:r=!0,ancestorResize:i=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:c=typeof IntersectionObserver=="function",animationFrame:l=!1}=o,a=Et(t),f=r||i?[...a?ot(a):[],...ot(e)]:[];f.forEach(g=>{r&&g.addEventListener("scroll",n,{passive:!0}),i&&g.addEventListener("resize",n)});const u=a&&c?wn(a,n):null;let h=-1,d=null;s&&(d=new ResizeObserver(g=>{let[v]=g;v&&v.target===a&&d&&(d.unobserve(e),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var y;(y=d)==null||y.observe(e)})),n()}),a&&!l&&d.observe(a),d.observe(e));let p,m=l?G(t):null;l&&w();function w(){const g=G(t);m&&!te(m,g)&&n(),m=g,p=requestAnimationFrame(w)}return n(),()=>{var g;f.forEach(v=>{r&&v.removeEventListener("scroll",n),i&&v.removeEventListener("resize",n)}),u?.(),(g=d)==null||g.disconnect(),d=null,l&&cancelAnimationFrame(p)}}const yn=Ve,vn=je,bn=_e,An=Xe,Rn=ze,Vt=He,On=Ie,Sn=(t,e,n)=>{const o=new Map,r={platform:gn,...n},i={...r.platform,_c:o};return We(t,e,{...r,platform:i})};var Cn=typeof document<"u",Pn=function(){},ct=Cn?O.useLayoutEffect:Pn;function ut(t,e){if(t===e)return!0;if(typeof t!=typeof e)return!1;if(typeof t=="function"&&t.toString()===e.toString())return!0;let n,o,r;if(t&&e&&typeof t=="object"){if(Array.isArray(t)){if(n=t.length,n!==e.length)return!1;for(o=n;o--!==0;)if(!ut(t[o],e[o]))return!1;return!0}if(r=Object.keys(t),n=r.length,n!==Object.keys(e).length)return!1;for(o=n;o--!==0;)if(!{}.hasOwnProperty.call(e,r[o]))return!1;for(o=n;o--!==0;){const i=r[o];if(!(i==="_owner"&&t.$$typeof)&&!ut(t[i],e[i]))return!1}return!0}return t!==t&&e!==e}function ee(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function jt(t,e){const n=ee(t);return Math.round(e*n)/n}function wt(t){const e=O.useRef(t);return ct(()=>{e.current=t}),e}function En(t){t===void 0&&(t={});const{placement:e="bottom",strategy:n="absolute",middleware:o=[],platform:r,elements:{reference:i,floating:s}={},transform:c=!0,whileElementsMounted:l,open:a}=t,[f,u]=O.useState({x:0,y:0,strategy:n,placement:e,middlewareData:{},isPositioned:!1}),[h,d]=O.useState(o);ut(h,o)||d(o);const[p,m]=O.useState(null),[w,g]=O.useState(null),v=O.useCallback(b=>{b!==R.current&&(R.current=b,m(b))},[]),y=O.useCallback(b=>{b!==S.current&&(S.current=b,g(b))},[]),x=i||p,A=s||w,R=O.useRef(null),S=O.useRef(null),M=O.useRef(f),F=l!=null,D=wt(l),$=wt(r),k=wt(a),P=O.useCallback(()=>{if(!R.current||!S.current)return;const b={placement:e,strategy:n,middleware:h};$.current&&(b.platform=$.current),Sn(R.current,S.current,b).then(T=>{const B={...T,isPositioned:k.current!==!1};C.current&&!ut(M.current,B)&&(M.current=B,be.flushSync(()=>{u(B)}))})},[h,e,n,$,k]);ct(()=>{a===!1&&M.current.isPositioned&&(M.current.isPositioned=!1,u(b=>({...b,isPositioned:!1})))},[a]);const C=O.useRef(!1);ct(()=>(C.current=!0,()=>{C.current=!1}),[]),ct(()=>{if(x&&(R.current=x),A&&(S.current=A),x&&A){if(D.current)return D.current(x,A,P);P()}},[x,A,P,D,F]);const N=O.useMemo(()=>({reference:R,floating:S,setReference:v,setFloating:y}),[v,y]),E=O.useMemo(()=>({reference:x,floating:A}),[x,A]),L=O.useMemo(()=>{const b={position:n,left:0,top:0};if(!E.floating)return b;const T=jt(E.floating,f.x),B=jt(E.floating,f.y);return c?{...b,transform:"translate("+T+"px, "+B+"px)",...ee(E.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:T,top:B}},[n,c,E.floating,f.x,f.y]);return O.useMemo(()=>({...f,update:P,refs:N,elements:E,floatingStyles:L}),[f,P,N,E,L])}const Ln=t=>{function e(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:t,fn(n){const{element:o,padding:r}=typeof t=="function"?t(n):t;return o&&e(o)?o.current!=null?Vt({element:o.current,padding:r}).fn(n):{}:o?Vt({element:o,padding:r}).fn(n):{}}}},Dn=(t,e)=>({...yn(t),options:[t,e]}),Mn=(t,e)=>({...vn(t),options:[t,e]}),Tn=(t,e)=>({...On(t),options:[t,e]}),$n=(t,e)=>({...bn(t),options:[t,e]}),kn=(t,e)=>({...An(t),options:[t,e]}),Fn=(t,e)=>({...Rn(t),options:[t,e]}),Nn=(t,e)=>({...Ln(t),options:[t,e]});var Wn="Arrow",ne=O.forwardRef((t,e)=>{const{children:n,width:o=10,height:r=5,...i}=t;return Y.jsx(At.svg,{...i,ref:e,width:o,height:r,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:t.asChild?n:Y.jsx("polygon",{points:"0,0 30,0 15,10"})})});ne.displayName=Wn;var Hn=ne,Lt="Popper",[oe,qn]=Ae(Lt),[_n,re]=oe(Lt),ie=t=>{const{__scopePopper:e,children:n}=t,[o,r]=O.useState(null);return Y.jsx(_n,{scope:e,anchor:o,onAnchorChange:r,children:n})};ie.displayName=Lt;var se="PopperAnchor",ce=O.forwardRef((t,e)=>{const{__scopePopper:n,virtualRef:o,...r}=t,i=re(se,n),s=O.useRef(null),c=It(e,s),l=O.useRef(null);return O.useEffect(()=>{const a=l.current;l.current=o?.current||s.current,a!==l.current&&i.onAnchorChange(l.current)}),o?null:Y.jsx(At.div,{...r,ref:c})});ce.displayName=se;var Dt="PopperContent",[zn,Bn]=oe(Dt),le=O.forwardRef((t,e)=>{const{__scopePopper:n,side:o="bottom",sideOffset:r=0,align:i="center",alignOffset:s=0,arrowPadding:c=0,avoidCollisions:l=!0,collisionBoundary:a=[],collisionPadding:f=0,sticky:u="partial",hideWhenDetached:h=!1,updatePositionStrategy:d="optimized",onPlaced:p,...m}=t,w=re(Dt,n),[g,v]=O.useState(null),y=It(e,nt=>v(nt)),[x,A]=O.useState(null),R=Oe(x),S=R?.width??0,M=R?.height??0,F=o+(i!=="center"?"-"+i:""),D=typeof f=="number"?f:{top:0,right:0,bottom:0,left:0,...f},$=Array.isArray(a)?a:[a],k=$.length>0,P={padding:D,boundary:$.filter(jn),altBoundary:k},{refs:C,floatingStyles:N,placement:E,isPositioned:L,middlewareData:b}=En({strategy:"fixed",placement:F,whileElementsMounted:(...nt)=>xn(...nt,{animationFrame:d==="always"}),elements:{reference:w.anchor},middleware:[Dn({mainAxis:r+M,alignmentAxis:s}),l&&Mn({mainAxis:!0,crossAxis:!1,limiter:u==="partial"?Tn():void 0,...P}),l&&$n({...P}),kn({...P,apply:({elements:nt,rects:Tt,availableWidth:we,availableHeight:xe})=>{const{width:ye,height:ve}=Tt.reference,it=nt.floating.style;it.setProperty("--radix-popper-available-width",`${we}px`),it.setProperty("--radix-popper-available-height",`${xe}px`),it.setProperty("--radix-popper-anchor-width",`${ye}px`),it.setProperty("--radix-popper-anchor-height",`${ve}px`)}}),x&&Nn({element:x,padding:c}),In({arrowWidth:S,arrowHeight:M}),h&&Fn({strategy:"referenceHidden",...P})]}),[T,B]=ue(E),Mt=Re(p);xt(()=>{L&&Mt?.()},[L,Mt]);const de=b.arrow?.x,pe=b.arrow?.y,he=b.arrow?.centerOffset!==0,[me,ge]=O.useState();return xt(()=>{g&&ge(window.getComputedStyle(g).zIndex)},[g]),Y.jsx("div",{ref:C.setFloating,"data-radix-popper-content-wrapper":"",style:{...N,transform:L?N.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:me,"--radix-popper-transform-origin":[b.transformOrigin?.x,b.transformOrigin?.y].join(" "),...b.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:Y.jsx(zn,{scope:n,placedSide:T,onArrowChange:A,arrowX:de,arrowY:pe,shouldHideArrow:he,children:Y.jsx(At.div,{"data-side":T,"data-align":B,...m,ref:y,style:{...m.style,animation:L?void 0:"none"}})})})});le.displayName=Dt;var ae="PopperArrow",Vn={top:"bottom",right:"left",bottom:"top",left:"right"},fe=O.forwardRef(function(e,n){const{__scopePopper:o,...r}=e,i=Bn(ae,o),s=Vn[i.placedSide];return Y.jsx("span",{ref:i.onArrowChange,style:{position:"absolute",left:i.arrowX,top:i.arrowY,[s]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[i.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[i.placedSide],visibility:i.shouldHideArrow?"hidden":void 0},children:Y.jsx(Hn,{...r,ref:n,style:{...r.style,display:"block"}})})});fe.displayName=ae;function jn(t){return t!==null}var In=t=>({name:"transformOrigin",options:t,fn(e){const{placement:n,rects:o,middlewareData:r}=e,s=r.arrow?.centerOffset!==0,c=s?0:t.arrowWidth,l=s?0:t.arrowHeight,[a,f]=ue(n),u={start:"0%",center:"50%",end:"100%"}[f],h=(r.arrow?.x??0)+c/2,d=(r.arrow?.y??0)+l/2;let p="",m="";return a==="bottom"?(p=s?u:`${h}px`,m=`${-l}px`):a==="top"?(p=s?u:`${h}px`,m=`${o.floating.height+l}px`):a==="right"?(p=`${-l}px`,m=s?u:`${d}px`):a==="left"&&(p=`${o.floating.width+l}px`,m=s?u:`${d}px`),{data:{x:p,y:m}}}});function ue(t){const[e,n="center"]=t.split("-");return[e,n]}var Un=ie,Zn=ce,Kn=le,Gn=fe;export{Zn as A,Kn as C,Un as R,Gn as a,qn as c,Oe as u};
|