@theowlops/boombot 0.0.0-stage → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +69 -3
- package/dist/LICENSE +21 -0
- package/dist/bin/boombot.js +16 -0
- package/dist/cli/api-key.js +123 -0
- package/dist/cli/bin-bun.js +17 -0
- package/dist/cli/bin.js +34 -0
- package/dist/cli/cli/cli-error.js +61 -0
- package/dist/cli/cli/dispatch.js +138 -0
- package/dist/cli/cli/help.js +83 -0
- package/dist/cli/cli/parser.js +89 -0
- package/dist/cli/cli/registry.js +185 -0
- package/dist/cli/cli/spec.js +41 -0
- package/dist/cli/cli/suggest.js +125 -0
- package/dist/cli/cli/version.js +30 -0
- package/dist/cli/cli/vocabulary.js +87 -0
- package/dist/cli/commands/doctor.js +365 -0
- package/dist/cli/commands/gateway.js +290 -0
- package/dist/cli/commands/migrate.js +270 -0
- package/dist/cli/commands/plugin.js +97 -0
- package/dist/cli/commands/setup.js +230 -0
- package/dist/cli/config-file.js +133 -0
- package/dist/cli/master-key.js +78 -0
- package/dist/cli/open-browser.js +59 -0
- package/dist/cli/web-assets.js +58 -0
- package/dist/gateway/auth.js +46 -0
- package/dist/gateway/config-format.js +202 -0
- package/dist/gateway/config.js +427 -0
- package/dist/gateway/context.js +1 -0
- package/dist/gateway/env-file.js +129 -0
- package/dist/gateway/events.js +172 -0
- package/dist/gateway/guard/tagging.js +505 -0
- package/dist/gateway/handlers/index.js +66 -0
- package/dist/gateway/handlers/memory.js +54 -0
- package/dist/gateway/handlers/providers.js +73 -0
- package/dist/gateway/handlers/registry.js +39 -0
- package/dist/gateway/handlers/sessions.js +188 -0
- package/dist/gateway/handlers/system.js +12 -0
- package/dist/gateway/handlers/tasks.js +191 -0
- package/dist/gateway/handlers/turn.js +100 -0
- package/dist/gateway/index.js +126 -0
- package/dist/gateway/main.js +23 -0
- package/dist/gateway/server.js +354 -0
- package/dist/gateway/services/context-limits.js +75 -0
- package/dist/gateway/services/history-normalizer.js +42 -0
- package/dist/gateway/services/image-pipeline.js +56 -0
- package/dist/gateway/services/key-roulette-client.js +43 -0
- package/dist/gateway/services/llm-client.js +593 -0
- package/dist/gateway/services/llm-decoder.js +200 -0
- package/dist/gateway/services/local-fallback.js +135 -0
- package/dist/gateway/services/memory.js +511 -0
- package/dist/gateway/services/persistent-memory.js +196 -0
- package/dist/gateway/services/providers.js +44 -0
- package/dist/gateway/services/tasks.js +237 -0
- package/dist/gateway/services/verification.js +124 -0
- package/dist/gateway/services/vision-payload.js +48 -0
- package/dist/gateway/services.js +257 -0
- package/dist/gateway/session-snapshot.js +19 -0
- package/dist/gateway/sessions.js +701 -0
- package/dist/gateway/static.js +239 -0
- package/dist/gateway/turns/clarify-tool.js +57 -0
- package/dist/gateway/turns/cronjob-tool.js +96 -0
- package/dist/gateway/turns/deferred-tools.js +154 -0
- package/dist/gateway/turns/execute-code-tool.js +84 -0
- package/dist/gateway/turns/file-tool-defs.js +178 -0
- package/dist/gateway/turns/file-tool-ops.js +178 -0
- package/dist/gateway/turns/file-tool-scan.js +182 -0
- package/dist/gateway/turns/file-tool.js +302 -0
- package/dist/gateway/turns/index.js +416 -0
- package/dist/gateway/turns/jev-middleware.js +91 -0
- package/dist/gateway/turns/local-reply.js +156 -0
- package/dist/gateway/turns/mcp-client.js +643 -0
- package/dist/gateway/turns/memory-tool.js +171 -0
- package/dist/gateway/turns/middleware.js +96 -0
- package/dist/gateway/turns/python-core.js +397 -0
- package/dist/gateway/turns/routing/index.js +3 -0
- package/dist/gateway/turns/routing/intent-classifier.js +60 -0
- package/dist/gateway/turns/routing/planner-adapter.js +91 -0
- package/dist/gateway/turns/routing/types.js +1 -0
- package/dist/gateway/turns/runtime-deps.js +228 -0
- package/dist/gateway/turns/self-config-tool.js +277 -0
- package/dist/gateway/turns/service-types.js +11 -0
- package/dist/gateway/turns/service.js +820 -0
- package/dist/gateway/turns/session-adapter.js +158 -0
- package/dist/gateway/turns/session-tool.js +49 -0
- package/dist/gateway/turns/shell-tool.js +190 -0
- package/dist/gateway/turns/skill-tool.js +239 -0
- package/dist/gateway/turns/spillover.js +201 -0
- package/dist/gateway/turns/subagent-tool.js +140 -0
- package/dist/gateway/turns/system-prompt.js +121 -0
- package/dist/gateway/turns/tool-schema.js +90 -0
- package/dist/gateway/turns/turn-utils.js +58 -0
- package/dist/gateway/turns/vision-tool.js +120 -0
- package/dist/gateway/types.js +1 -0
- package/dist/native/win32-x64/boombot-native-host.exe +0 -0
- package/dist/node_modules/@boombot/channels/handlers.d.ts +9 -0
- package/dist/node_modules/@boombot/channels/handlers.js +109 -0
- package/dist/node_modules/@boombot/channels/index.d.ts +12 -0
- package/dist/node_modules/@boombot/channels/index.js +12 -0
- package/dist/node_modules/@boombot/channels/package.json +9 -0
- package/dist/node_modules/@boombot/channels/service.d.ts +62 -0
- package/dist/node_modules/@boombot/channels/service.js +608 -0
- package/dist/node_modules/@boombot/channels/tool.d.ts +10 -0
- package/dist/node_modules/@boombot/channels/tool.js +46 -0
- package/dist/node_modules/@boombot/channels/transports/common/dedup.d.ts +17 -0
- package/dist/node_modules/@boombot/channels/transports/common/dedup.js +42 -0
- package/dist/node_modules/@boombot/channels/transports/common/handoff.d.ts +19 -0
- package/dist/node_modules/@boombot/channels/transports/common/handoff.js +32 -0
- package/dist/node_modules/@boombot/channels/transports/common/index.d.ts +3 -0
- package/dist/node_modules/@boombot/channels/transports/common/index.js +3 -0
- package/dist/node_modules/@boombot/channels/transports/common/types.d.ts +99 -0
- package/dist/node_modules/@boombot/channels/transports/common/types.js +54 -0
- package/dist/node_modules/@boombot/channels/transports/common.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/common.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/dedup/index.d.ts +1 -0
- package/dist/node_modules/@boombot/channels/transports/dedup/index.js +1 -0
- package/dist/node_modules/@boombot/channels/transports/dedup.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/dedup.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/discord/index.d.ts +1 -0
- package/dist/node_modules/@boombot/channels/transports/discord/index.js +1 -0
- package/dist/node_modules/@boombot/channels/transports/discord/transport.d.ts +36 -0
- package/dist/node_modules/@boombot/channels/transports/discord/transport.js +199 -0
- package/dist/node_modules/@boombot/channels/transports/discord.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/discord.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/handoff.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/handoff.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/messenger/index.d.ts +1 -0
- package/dist/node_modules/@boombot/channels/transports/messenger/index.js +1 -0
- package/dist/node_modules/@boombot/channels/transports/messenger/transport.d.ts +34 -0
- package/dist/node_modules/@boombot/channels/transports/messenger/transport.js +180 -0
- package/dist/node_modules/@boombot/channels/transports/messenger.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/messenger.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/slack/index.d.ts +1 -0
- package/dist/node_modules/@boombot/channels/transports/slack/index.js +1 -0
- package/dist/node_modules/@boombot/channels/transports/slack/transport.d.ts +35 -0
- package/dist/node_modules/@boombot/channels/transports/slack/transport.js +183 -0
- package/dist/node_modules/@boombot/channels/transports/slack.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/slack.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/streamer/index.d.ts +1 -0
- package/dist/node_modules/@boombot/channels/transports/streamer/index.js +1 -0
- package/dist/node_modules/@boombot/channels/transports/streamer/streamer.d.ts +31 -0
- package/dist/node_modules/@boombot/channels/transports/streamer/streamer.js +141 -0
- package/dist/node_modules/@boombot/channels/transports/streamer.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/streamer.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/telegram/index.d.ts +1 -0
- package/dist/node_modules/@boombot/channels/transports/telegram/index.js +1 -0
- package/dist/node_modules/@boombot/channels/transports/telegram/transport.d.ts +75 -0
- package/dist/node_modules/@boombot/channels/transports/telegram/transport.js +395 -0
- package/dist/node_modules/@boombot/channels/transports/telegram.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/telegram.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/tiktok/index.d.ts +1 -0
- package/dist/node_modules/@boombot/channels/transports/tiktok/index.js +1 -0
- package/dist/node_modules/@boombot/channels/transports/tiktok/transport.d.ts +27 -0
- package/dist/node_modules/@boombot/channels/transports/tiktok/transport.js +97 -0
- package/dist/node_modules/@boombot/channels/transports/tiktok.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/tiktok.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/whatsapp/index.d.ts +1 -0
- package/dist/node_modules/@boombot/channels/transports/whatsapp/index.js +1 -0
- package/dist/node_modules/@boombot/channels/transports/whatsapp/transport.d.ts +38 -0
- package/dist/node_modules/@boombot/channels/transports/whatsapp/transport.js +189 -0
- package/dist/node_modules/@boombot/channels/transports/whatsapp.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/whatsapp.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/zalo/index.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/zalo/index.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/zalo/oa.d.ts +28 -0
- package/dist/node_modules/@boombot/channels/transports/zalo/oa.js +94 -0
- package/dist/node_modules/@boombot/channels/transports/zalo/personal.d.ts +106 -0
- package/dist/node_modules/@boombot/channels/transports/zalo/personal.js +171 -0
- package/dist/node_modules/@boombot/channels/transports/zalo-personal.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/zalo-personal.js +2 -0
- package/dist/node_modules/@boombot/channels/transports/zalo.d.ts +2 -0
- package/dist/node_modules/@boombot/channels/transports/zalo.js +2 -0
- package/dist/node_modules/@boombot/core/agent-core/index.d.ts +12 -0
- package/dist/node_modules/@boombot/core/agent-core/index.js +12 -0
- package/dist/node_modules/@boombot/core/agent-core/middleware.d.ts +60 -0
- package/dist/node_modules/@boombot/core/agent-core/middleware.js +152 -0
- package/dist/node_modules/@boombot/core/agent-core/routing.d.ts +128 -0
- package/dist/node_modules/@boombot/core/agent-core/routing.js +437 -0
- package/dist/node_modules/@boombot/core/agent-core/runtime-deps.d.ts +88 -0
- package/dist/node_modules/@boombot/core/agent-core/runtime-deps.js +8 -0
- package/dist/node_modules/@boombot/core/agent-core/tool-errors.d.ts +44 -0
- package/dist/node_modules/@boombot/core/agent-core/tool-errors.js +60 -0
- package/dist/node_modules/@boombot/core/agent-core/turn-loop.d.ts +21 -0
- package/dist/node_modules/@boombot/core/agent-core/turn-loop.js +561 -0
- package/dist/node_modules/@boombot/core/agent-core/types.d.ts +189 -0
- package/dist/node_modules/@boombot/core/agent-core/types.js +7 -0
- package/dist/node_modules/@boombot/core/compaction/compactor.d.ts +19 -0
- package/dist/node_modules/@boombot/core/compaction/compactor.js +127 -0
- package/dist/node_modules/@boombot/core/compaction/estimator.d.ts +10 -0
- package/dist/node_modules/@boombot/core/compaction/estimator.js +48 -0
- package/dist/node_modules/@boombot/core/compaction/index.d.ts +3 -0
- package/dist/node_modules/@boombot/core/compaction/index.js +3 -0
- package/dist/node_modules/@boombot/core/compaction/types.d.ts +31 -0
- package/dist/node_modules/@boombot/core/compaction/types.js +7 -0
- package/dist/node_modules/@boombot/core/index.d.ts +9 -0
- package/dist/node_modules/@boombot/core/index.js +9 -0
- package/dist/node_modules/@boombot/core/jev/index.d.ts +2 -0
- package/dist/node_modules/@boombot/core/jev/index.js +2 -0
- package/dist/node_modules/@boombot/core/jev/jev.d.ts +30 -0
- package/dist/node_modules/@boombot/core/jev/jev.js +164 -0
- package/dist/node_modules/@boombot/core/jev/types.d.ts +22 -0
- package/dist/node_modules/@boombot/core/jev/types.js +1 -0
- package/dist/node_modules/@boombot/core/memory/consolidation/budget.d.ts +63 -0
- package/dist/node_modules/@boombot/core/memory/consolidation/budget.js +94 -0
- package/dist/node_modules/@boombot/core/memory/consolidation/consolidator.d.ts +152 -0
- package/dist/node_modules/@boombot/core/memory/consolidation/consolidator.js +318 -0
- package/dist/node_modules/@boombot/core/memory/consolidation/index.d.ts +12 -0
- package/dist/node_modules/@boombot/core/memory/consolidation/index.js +12 -0
- package/dist/node_modules/@boombot/core/memory/curation.d.ts +86 -0
- package/dist/node_modules/@boombot/core/memory/curation.js +120 -0
- package/dist/node_modules/@boombot/core/memory/errors.d.ts +12 -0
- package/dist/node_modules/@boombot/core/memory/errors.js +20 -0
- package/dist/node_modules/@boombot/core/memory/hybrid-search.d.ts +29 -0
- package/dist/node_modules/@boombot/core/memory/hybrid-search.js +52 -0
- package/dist/node_modules/@boombot/core/memory/index.d.ts +23 -0
- package/dist/node_modules/@boombot/core/memory/index.js +23 -0
- package/dist/node_modules/@boombot/core/memory/indexer.d.ts +47 -0
- package/dist/node_modules/@boombot/core/memory/indexer.js +138 -0
- package/dist/node_modules/@boombot/core/memory/lifecycle.d.ts +12 -0
- package/dist/node_modules/@boombot/core/memory/lifecycle.js +66 -0
- package/dist/node_modules/@boombot/core/memory/provider.d.ts +84 -0
- package/dist/node_modules/@boombot/core/memory/provider.js +117 -0
- package/dist/node_modules/@boombot/core/memory/recall.d.ts +7 -0
- package/dist/node_modules/@boombot/core/memory/recall.js +111 -0
- package/dist/node_modules/@boombot/core/memory/scope-resolver.d.ts +27 -0
- package/dist/node_modules/@boombot/core/memory/scope-resolver.js +60 -0
- package/dist/node_modules/@boombot/core/memory/search.d.ts +37 -0
- package/dist/node_modules/@boombot/core/memory/search.js +158 -0
- package/dist/node_modules/@boombot/core/memory/store.d.ts +60 -0
- package/dist/node_modules/@boombot/core/memory/store.js +289 -0
- package/dist/node_modules/@boombot/core/memory/types.d.ts +121 -0
- package/dist/node_modules/@boombot/core/memory/types.js +21 -0
- package/dist/node_modules/@boombot/core/memory/vector-index.d.ts +34 -0
- package/dist/node_modules/@boombot/core/memory/vector-index.js +65 -0
- package/dist/node_modules/@boombot/core/package.json +9 -0
- package/dist/node_modules/@boombot/core/reflection/classifier.d.ts +13 -0
- package/dist/node_modules/@boombot/core/reflection/classifier.js +77 -0
- package/dist/node_modules/@boombot/core/reflection/index.d.ts +2 -0
- package/dist/node_modules/@boombot/core/reflection/index.js +2 -0
- package/dist/node_modules/@boombot/core/reflection/types.d.ts +13 -0
- package/dist/node_modules/@boombot/core/reflection/types.js +4 -0
- package/dist/node_modules/@boombot/core/research/config.d.ts +89 -0
- package/dist/node_modules/@boombot/core/research/config.js +206 -0
- package/dist/node_modules/@boombot/core/research/crawl.d.ts +36 -0
- package/dist/node_modules/@boombot/core/research/crawl.js +179 -0
- package/dist/node_modules/@boombot/core/research/factory.d.ts +26 -0
- package/dist/node_modules/@boombot/core/research/factory.js +46 -0
- package/dist/node_modules/@boombot/core/research/http.d.ts +87 -0
- package/dist/node_modules/@boombot/core/research/http.js +250 -0
- package/dist/node_modules/@boombot/core/research/index.d.ts +17 -0
- package/dist/node_modules/@boombot/core/research/index.js +10 -0
- package/dist/node_modules/@boombot/core/research/orchestrator.d.ts +113 -0
- package/dist/node_modules/@boombot/core/research/orchestrator.js +252 -0
- package/dist/node_modules/@boombot/core/research/parse/docx.d.ts +24 -0
- package/dist/node_modules/@boombot/core/research/parse/docx.js +183 -0
- package/dist/node_modules/@boombot/core/research/parse/guards.d.ts +89 -0
- package/dist/node_modules/@boombot/core/research/parse/guards.js +171 -0
- package/dist/node_modules/@boombot/core/research/parse/index.d.ts +68 -0
- package/dist/node_modules/@boombot/core/research/parse/index.js +219 -0
- package/dist/node_modules/@boombot/core/research/parse/pdf.d.ts +38 -0
- package/dist/node_modules/@boombot/core/research/parse/pdf.js +567 -0
- package/dist/node_modules/@boombot/core/research/providers/arxiv.d.ts +9 -0
- package/dist/node_modules/@boombot/core/research/providers/arxiv.js +72 -0
- package/dist/node_modules/@boombot/core/research/providers/brave.d.ts +11 -0
- package/dist/node_modules/@boombot/core/research/providers/brave.js +36 -0
- package/dist/node_modules/@boombot/core/research/providers/duckduckgo.d.ts +9 -0
- package/dist/node_modules/@boombot/core/research/providers/duckduckgo.js +78 -0
- package/dist/node_modules/@boombot/core/research/providers/exa.d.ts +11 -0
- package/dist/node_modules/@boombot/core/research/providers/exa.js +34 -0
- package/dist/node_modules/@boombot/core/research/providers/firecrawl.d.ts +16 -0
- package/dist/node_modules/@boombot/core/research/providers/firecrawl.js +47 -0
- package/dist/node_modules/@boombot/core/research/providers/index.d.ts +17 -0
- package/dist/node_modules/@boombot/core/research/providers/index.js +11 -0
- package/dist/node_modules/@boombot/core/research/providers/jina.d.ts +13 -0
- package/dist/node_modules/@boombot/core/research/providers/jina.js +114 -0
- package/dist/node_modules/@boombot/core/research/providers/openalex.d.ts +14 -0
- package/dist/node_modules/@boombot/core/research/providers/openalex.js +66 -0
- package/dist/node_modules/@boombot/core/research/providers/semantic-scholar.d.ts +9 -0
- package/dist/node_modules/@boombot/core/research/providers/semantic-scholar.js +56 -0
- package/dist/node_modules/@boombot/core/research/providers/tavily.d.ts +11 -0
- package/dist/node_modules/@boombot/core/research/providers/tavily.js +35 -0
- package/dist/node_modules/@boombot/core/research/providers/wikipedia.d.ts +12 -0
- package/dist/node_modules/@boombot/core/research/providers/wikipedia.js +47 -0
- package/dist/node_modules/@boombot/core/research/tools.d.ts +27 -0
- package/dist/node_modules/@boombot/core/research/tools.js +251 -0
- package/dist/node_modules/@boombot/core/research/types.d.ts +133 -0
- package/dist/node_modules/@boombot/core/research/types.js +8 -0
- package/dist/node_modules/@boombot/core/research/wiring.d.ts +25 -0
- package/dist/node_modules/@boombot/core/research/wiring.js +51 -0
- package/dist/node_modules/@boombot/core/scheduler/cron.d.ts +34 -0
- package/dist/node_modules/@boombot/core/scheduler/cron.js +147 -0
- package/dist/node_modules/@boombot/core/scheduler/evaluator.d.ts +42 -0
- package/dist/node_modules/@boombot/core/scheduler/evaluator.js +148 -0
- package/dist/node_modules/@boombot/core/scheduler/index.d.ts +15 -0
- package/dist/node_modules/@boombot/core/scheduler/index.js +15 -0
- package/dist/node_modules/@boombot/core/scheduler/registry.d.ts +81 -0
- package/dist/node_modules/@boombot/core/scheduler/registry.js +263 -0
- package/dist/node_modules/@boombot/core/scheduler/runner.d.ts +59 -0
- package/dist/node_modules/@boombot/core/scheduler/runner.js +257 -0
- package/dist/node_modules/@boombot/core/scheduler/store.d.ts +150 -0
- package/dist/node_modules/@boombot/core/scheduler/store.js +526 -0
- package/dist/node_modules/@boombot/core/scheduler/timezone.d.ts +35 -0
- package/dist/node_modules/@boombot/core/scheduler/timezone.js +96 -0
- package/dist/node_modules/@boombot/core/scheduler/types.d.ts +157 -0
- package/dist/node_modules/@boombot/core/scheduler/types.js +89 -0
- package/dist/node_modules/@boombot/core/task-runner/index.d.ts +7 -0
- package/dist/node_modules/@boombot/core/task-runner/index.js +5 -0
- package/dist/node_modules/@boombot/core/task-runner/planner.d.ts +37 -0
- package/dist/node_modules/@boombot/core/task-runner/planner.js +154 -0
- package/dist/node_modules/@boombot/core/task-runner/runner.d.ts +8 -0
- package/dist/node_modules/@boombot/core/task-runner/runner.js +564 -0
- package/dist/node_modules/@boombot/core/task-runner/store.d.ts +28 -0
- package/dist/node_modules/@boombot/core/task-runner/store.js +126 -0
- package/dist/node_modules/@boombot/core/task-runner/types.d.ts +138 -0
- package/dist/node_modules/@boombot/core/task-runner/types.js +11 -0
- package/dist/node_modules/@boombot/core/workflow/dag.d.ts +16 -0
- package/dist/node_modules/@boombot/core/workflow/dag.js +109 -0
- package/dist/node_modules/@boombot/core/workflow/engine.d.ts +34 -0
- package/dist/node_modules/@boombot/core/workflow/engine.js +304 -0
- package/dist/node_modules/@boombot/core/workflow/index.d.ts +3 -0
- package/dist/node_modules/@boombot/core/workflow/index.js +3 -0
- package/dist/node_modules/@boombot/core/workflow/types.d.ts +98 -0
- package/dist/node_modules/@boombot/core/workflow/types.js +21 -0
- package/dist/node_modules/@boombot/cronjobs/handlers.d.ts +11 -0
- package/dist/node_modules/@boombot/cronjobs/handlers.js +174 -0
- package/dist/node_modules/@boombot/cronjobs/index.d.ts +2 -0
- package/dist/node_modules/@boombot/cronjobs/index.js +2 -0
- package/dist/node_modules/@boombot/cronjobs/package.json +9 -0
- package/dist/node_modules/@boombot/cronjobs/service.d.ts +53 -0
- package/dist/node_modules/@boombot/cronjobs/service.js +200 -0
- package/dist/node_modules/@boombot/plugins/index.d.ts +2 -0
- package/dist/node_modules/@boombot/plugins/index.js +2 -0
- package/dist/node_modules/@boombot/plugins/installer.d.ts +45 -0
- package/dist/node_modules/@boombot/plugins/installer.js +487 -0
- package/dist/node_modules/@boombot/plugins/manager.d.ts +23 -0
- package/dist/node_modules/@boombot/plugins/manager.js +243 -0
- package/dist/node_modules/@boombot/plugins/package.json +9 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/commands-channels.d.ts +125 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/commands-channels.js +76 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/commands-plugins.d.ts +220 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/commands-plugins.js +60 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/commands-scheduler.d.ts +33 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/commands-scheduler.js +25 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/commands.d.ts +4349 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/commands.js +563 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/envelope.d.ts +32 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/envelope.js +61 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/errors.d.ts +13 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/errors.js +16 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/events.d.ts +567 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/events.js +395 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/index.d.ts +20 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/index.js +13 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/types.d.ts +91 -0
- package/dist/node_modules/@boombot/protocol/gateway-protocol/types.js +7 -0
- package/dist/node_modules/@boombot/protocol/index.d.ts +4 -0
- package/dist/node_modules/@boombot/protocol/index.js +3 -0
- package/dist/node_modules/@boombot/protocol/package.json +9 -0
- package/dist/node_modules/@boombot/protocol/plugin-sdk/channel.d.ts +41 -0
- package/dist/node_modules/@boombot/protocol/plugin-sdk/channel.js +17 -0
- package/dist/node_modules/@boombot/protocol/plugin-sdk/index.d.ts +10 -0
- package/dist/node_modules/@boombot/protocol/plugin-sdk/index.js +10 -0
- package/dist/node_modules/@boombot/protocol/plugin-sdk/manifest.d.ts +58 -0
- package/dist/node_modules/@boombot/protocol/plugin-sdk/manifest.js +116 -0
- package/dist/node_modules/@boombot/protocol/plugin-sdk/plugin.d.ts +25 -0
- package/dist/node_modules/@boombot/protocol/plugin-sdk/plugin.js +1 -0
- package/dist/node_modules/@boombot/protocol/providers/cipher.d.ts +7 -0
- package/dist/node_modules/@boombot/protocol/providers/cipher.js +52 -0
- package/dist/node_modules/@boombot/protocol/providers/index.d.ts +19 -0
- package/dist/node_modules/@boombot/protocol/providers/index.js +19 -0
- package/dist/node_modules/@boombot/protocol/providers/key-roulette.d.ts +79 -0
- package/dist/node_modules/@boombot/protocol/providers/key-roulette.js +81 -0
- package/dist/node_modules/@boombot/protocol/providers/probe.d.ts +29 -0
- package/dist/node_modules/@boombot/protocol/providers/probe.js +96 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/anthropic.d.ts +11 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/anthropic.js +11 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/custom.d.ts +22 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/custom.js +222 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/deepseek.d.ts +7 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/deepseek.js +9 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/google.d.ts +10 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/google.js +10 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/index.d.ts +31 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/index.js +56 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/local.d.ts +10 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/local.js +11 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/mistral.d.ts +7 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/mistral.js +9 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/openai-compatible.d.ts +10 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/openai-compatible.js +10 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/openai.d.ts +7 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/openai.js +11 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/types.d.ts +58 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/types.js +1 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/xai.d.ts +7 -0
- package/dist/node_modules/@boombot/protocol/providers/profiles/xai.js +10 -0
- package/dist/node_modules/@boombot/protocol/providers/request-profile.d.ts +102 -0
- package/dist/node_modules/@boombot/protocol/providers/request-profile.js +118 -0
- package/dist/node_modules/@boombot/protocol/providers/service.d.ts +2 -0
- package/dist/node_modules/@boombot/protocol/providers/service.js +418 -0
- package/dist/node_modules/@boombot/protocol/providers/types.d.ts +141 -0
- package/dist/node_modules/@boombot/protocol/providers/types.js +16 -0
- package/dist/node_modules/@boombot/sandbox/fs-path.d.ts +13 -0
- package/dist/node_modules/@boombot/sandbox/fs-path.js +79 -0
- package/dist/node_modules/@boombot/sandbox/index.d.ts +13 -0
- package/dist/node_modules/@boombot/sandbox/index.js +13 -0
- package/dist/node_modules/@boombot/sandbox/native.d.ts +39 -0
- package/dist/node_modules/@boombot/sandbox/native.js +224 -0
- package/dist/node_modules/@boombot/sandbox/package.json +9 -0
- package/dist/node_modules/@boombot/sandbox/sandbox.d.ts +92 -0
- package/dist/node_modules/@boombot/sandbox/sandbox.js +229 -0
- package/dist/node_modules/@boombot/security/harness-guard/boundary.d.ts +22 -0
- package/dist/node_modules/@boombot/security/harness-guard/boundary.js +105 -0
- package/dist/node_modules/@boombot/security/harness-guard/gates.d.ts +90 -0
- package/dist/node_modules/@boombot/security/harness-guard/gates.js +791 -0
- package/dist/node_modules/@boombot/security/harness-guard/index.d.ts +23 -0
- package/dist/node_modules/@boombot/security/harness-guard/index.js +23 -0
- package/dist/node_modules/@boombot/security/harness-guard/policy.d.ts +20 -0
- package/dist/node_modules/@boombot/security/harness-guard/policy.js +70 -0
- package/dist/node_modules/@boombot/security/harness-guard/sanitizer.d.ts +53 -0
- package/dist/node_modules/@boombot/security/harness-guard/sanitizer.js +145 -0
- package/dist/node_modules/@boombot/security/harness-guard/types.d.ts +71 -0
- package/dist/node_modules/@boombot/security/harness-guard/types.js +10 -0
- package/dist/node_modules/@boombot/security/harness-guard/verifier.d.ts +59 -0
- package/dist/node_modules/@boombot/security/harness-guard/verifier.js +169 -0
- package/dist/node_modules/@boombot/security/index.d.ts +5 -0
- package/dist/node_modules/@boombot/security/index.js +9 -0
- package/dist/node_modules/@boombot/security/package.json +9 -0
- package/dist/node_modules/@boombot/security/policy/approval.d.ts +117 -0
- package/dist/node_modules/@boombot/security/policy/approval.js +223 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/claim-extractor.d.ts +10 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/claim-extractor.js +124 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/evidence-ledger.d.ts +25 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/evidence-ledger.js +70 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/gate.d.ts +38 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/gate.js +61 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/grounding-check.d.ts +12 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/grounding-check.js +234 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/index.d.ts +17 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/index.js +13 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/policy.d.ts +15 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/policy.js +39 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/types.d.ts +46 -0
- package/dist/node_modules/@boombot/security/reasoning-guard/types.js +7 -0
- package/dist/node_modules/@boombot/security/security/approval.d.ts +63 -0
- package/dist/node_modules/@boombot/security/security/approval.js +140 -0
- package/dist/node_modules/@boombot/security/security/audit.d.ts +39 -0
- package/dist/node_modules/@boombot/security/security/audit.js +70 -0
- package/dist/node_modules/@boombot/security/security/index.d.ts +12 -0
- package/dist/node_modules/@boombot/security/security/index.js +12 -0
- package/dist/node_modules/@boombot/security/security/trust.d.ts +79 -0
- package/dist/node_modules/@boombot/security/security/trust.js +87 -0
- package/dist/package.json +5 -0
- package/dist/proto/agent_core.proto +56 -0
- package/dist/python/agent-core-python/pyproject.toml +40 -0
- package/dist/python/agent-core-python/src/boombot_agent/__init__.py +5 -0
- package/dist/python/agent-core-python/src/boombot_agent/generated/__init__.py +0 -0
- package/dist/python/agent-core-python/src/boombot_agent/generated/agent_core_pb2.py +54 -0
- package/dist/python/agent-core-python/src/boombot_agent/generated/agent_core_pb2_grpc.py +140 -0
- package/dist/python/agent-core-python/src/boombot_agent/rpc.py +265 -0
- package/dist/python/agent-core-python/src/boombot_agent/turn.py +577 -0
- package/dist/python/agent-core-python/src/boombot_ml/__init__.py +12 -0
- package/dist/python/agent-core-python/src/boombot_ml/embeddings.py +58 -0
- package/dist/python/agent-core-python/src/boombot_ml/training.py +156 -0
- package/dist/python/agent-core-python/uv.lock +2856 -0
- package/dist/web/assets/ChatView-BZrSD-64.js +262 -0
- package/dist/web/assets/ChatView-Cahbjez6.css +1 -0
- package/dist/web/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/dist/web/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/dist/web/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/dist/web/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/dist/web/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/dist/web/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/dist/web/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/dist/web/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/dist/web/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/dist/web/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/dist/web/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/dist/web/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/dist/web/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/dist/web/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/dist/web/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/dist/web/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/dist/web/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/dist/web/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/dist/web/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/dist/web/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/dist/web/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/dist/web/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/dist/web/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/dist/web/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/dist/web/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/dist/web/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/dist/web/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/dist/web/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/dist/web/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/dist/web/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/dist/web/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/dist/web/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/dist/web/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/dist/web/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/dist/web/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/dist/web/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/dist/web/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/dist/web/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/dist/web/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/dist/web/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/dist/web/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/dist/web/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/dist/web/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/dist/web/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/dist/web/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/dist/web/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/dist/web/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/dist/web/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/dist/web/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/dist/web/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/dist/web/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/dist/web/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/dist/web/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/dist/web/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/dist/web/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/dist/web/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/dist/web/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/dist/web/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/dist/web/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/dist/web/assets/MemoryView-BJbXqqs7.css +1 -0
- package/dist/web/assets/MemoryView-BfMq_6CD.js +1 -0
- package/dist/web/assets/SchedulesView-B22QmPR-.js +1 -0
- package/dist/web/assets/SchedulesView-C6XK7A8a.css +1 -0
- package/dist/web/assets/SessionsView-C1dqdhxI.css +1 -0
- package/dist/web/assets/SessionsView-DS0-aH2a.js +1 -0
- package/dist/web/assets/TasksView-Dtasg4hd.css +1 -0
- package/dist/web/assets/TasksView-ey0FLsW8.js +2 -0
- package/dist/web/assets/Textarea-DN3Zybl1.js +1 -0
- package/dist/web/assets/Tooltip-Bn2cqFPz.css +1 -0
- package/dist/web/assets/Tooltip-MzV2Gqnc.js +1 -0
- package/dist/web/assets/browser-Bnt73-Ub.js +8 -0
- package/dist/web/assets/index-BL8bi7Yt.css +1 -0
- package/dist/web/assets/index-CuPR73Tn.js +73 -0
- package/dist/web/favicon.svg +4 -0
- package/dist/web/index.html +26 -0
- package/dist/web/logo.jpg +0 -0
- package/dist/web/logo.png +0 -0
- package/package.json +51 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._workbench_16slg_1{position:relative;display:flex;flex-direction:column;height:100%;flex-shrink:0;background:#181816;border-left:1px solid rgba(255,255,255,.08);font-family:var(--font-mono, "JetBrains Mono", Consolas, monospace);color:#edece6;overflow:hidden}._resizer_16slg_14{position:absolute;top:0;left:0;bottom:0;width:6px;cursor:col-resize;z-index:10;transition:background-color .15s ease}._resizer_16slg_14:hover,._resizer_16slg_14:active{background-color:var(--color-primary)}._header_16slg_30{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#1f1e1c;border-bottom:1px solid rgba(255,255,255,.06);-webkit-user-select:none;user-select:none}._tabs_16slg_40{display:flex;gap:4px;background:#ffffff0a;padding:3px;border-radius:8px}._tabBtn_16slg_48{background:transparent;border:0;color:#9e9c94;font-size:12px;font-family:inherit;font-weight:500;padding:4px 10px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s var(--ease-fluid)}._tabBtn_16slg_48:hover{color:#edece6;background:#ffffff0f}._tabBtn_16slg_48:active{transform:scale(.96)}._tabActive_16slg_73{background:#2b2a27!important;color:#cc785c!important;box-shadow:0 1px 3px #0000004d,inset 0 0 0 1px #cc785c40,0 0 10px #cc785c33;border-bottom:2px solid #cc785c}._headerActions_16slg_80{display:flex;align-items:center;gap:8px}._closeBtn_16slg_86{background:transparent;border:0;color:#64748b;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .15s ease}._closeBtn_16slg_86:hover{color:#f1f5f9}._liveIndicator_16slg_103{display:inline-block;width:7px;height:7px;border-radius:999px;background:#2dd4bf;box-shadow:0 0 8px #2dd4bf;animation:_pulse_16slg_1 1.5s infinite}@keyframes _pulse_16slg_1{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}._body_16slg_118{flex:1;overflow-y:auto;padding:12px}._terminal_16slg_125{display:flex;flex-direction:column;gap:8px;font-size:12.5px;line-height:1.55}._termLine_16slg_133{display:flex;align-items:flex-start;gap:8px;word-break:break-all}._timestamp_16slg_140{color:#475569;font-size:11px;flex-shrink:0}._badge_16slg_146{font-size:10px;padding:1px 6px;border-radius:4px;text-transform:uppercase;font-weight:600;flex-shrink:0}._badgeInfo_16slg_155{background:#38bdf826;color:#38bdf8}._badgeTool_16slg_156{background:#818cf826;color:#818cf8}._badgeSuccess_16slg_157{background:#34d39926;color:#34d399}._badgeError_16slg_158{background:#f43f5e26;color:#f43f5e}._badgeThinking_16slg_159{background:#fbbf2426;color:#fbbf24}._termMsg_16slg_161{flex:1}._termOutputBox_16slg_165{margin-top:4px;padding:8px 10px;background:#06070a;border:1px solid rgba(255,255,255,.05);border-radius:6px;color:#cbd5e1;font-size:11.5px;max-height:200px;overflow-y:auto;white-space:pre-wrap}._pipeline_16slg_179{display:flex;flex-direction:column;gap:12px}._stageCard_16slg_185{background:#111420;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:10px 12px}._stageHeader_16slg_192{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}._stageTitle_16slg_199{font-size:12.5px;font-weight:600;color:#f1f5f9}._stageDesc_16slg_205{font-size:11.5px;color:#94a3b8;line-height:1.4}._telemetry_16slg_212{display:flex;flex-direction:column;gap:14px}._metricCard_16slg_218{background:#111420;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:12px}._metricLabel_16slg_225{font-size:11.5px;color:#94a3b8;margin-bottom:6px}._metricValue_16slg_231{font-size:18px;font-weight:700;color:#2dd4bf}._progressBar_16slg_237{width:100%;height:6px;background:#ffffff0f;border-radius:999px;margin-top:8px;overflow:hidden}._progressFill_16slg_246{height:100%;background:linear-gradient(90deg,#818cf8,#2dd4bf);border-radius:999px;transition:width .25s ease}._slashPopup_i6lvu_1{position:absolute;bottom:calc(100% + 8px);left:0;right:0;max-height:280px;overflow-y:auto;background:#1f1e1cf0;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 12px 36px #00000073,0 0 0 1px #ffffff0d;padding:6px;z-index:50;animation:_slideUpFade_i6lvu_1 .2s var(--ease-spring);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}@keyframes _slideUpFade_i6lvu_1{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}._slashHeader_i6lvu_30{padding:6px 10px 4px;font-size:10px;font-weight:600;letter-spacing:.05em;color:#797772;text-transform:uppercase}._slashItem_i6lvu_39{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:#e4e2dd;cursor:pointer;text-align:left;transition:background .15s var(--ease-fluid),color .15s var(--ease-fluid),transform .15s var(--ease-fluid)}._slashItem_i6lvu_39:hover,._slashItemSelected_i6lvu_58{background:#cc785c26;color:#fff;transform:translate(3px)}._slashIcon_i6lvu_64{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:#ffffff0d;color:#cc785c;flex-shrink:0}._slashItemSelected_i6lvu_58 ._slashIcon_i6lvu_64{background:#cc785c;color:#fff}._slashText_i6lvu_81{flex:1;min-width:0}._slashTitle_i6lvu_86{font-size:13px;font-weight:500;line-height:1.2}._slashDesc_i6lvu_92{font-size:11px;color:#9e9c94;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._slashItemSelected_i6lvu_58 ._slashDesc_i6lvu_92{color:#d8d6d0}._slashKbd_i6lvu_105{font-size:11px;font-family:var(--font-code, monospace);color:#64625d;padding:2px 6px;border-radius:4px;background:#ffffff0a}._slashItemSelected_i6lvu_58 ._slashKbd_i6lvu_105{color:#fff;background:#ffffff26}._chatContainer_1wwtk_13{display:flex;height:100%;width:100%;overflow:hidden;position:relative}._chatMain_1wwtk_29{flex:1;display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden}._chat_1wwtk_13{display:flex;flex-direction:column;height:100%;max-height:100%;min-height:0;width:100%;max-width:920px;margin:0 auto;padding:0 var(--space-md);font-family:var(--font-body);color:var(--color-foreground);overflow:hidden}._chatHeader_1wwtk_77{display:flex;justify-content:space-between;align-items:center;padding:4px 0 12px;background:transparent;border-bottom:1px solid rgba(255,255,255,.05);margin-bottom:var(--space-xs)}._headerControls_1wwtk_97{display:flex;align-items:center;gap:10px}._telemetryBadge_1wwtk_109{display:inline-flex;align-items:center;gap:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);padding:4px 8px;border-radius:6px;font-size:11.5px;font-family:var(--font-mono, monospace);color:#94a3b8}._telemetryBadgeValue_1wwtk_135{color:#2dd4bf;font-weight:600}._workbenchToggleBtn_1wwtk_145{display:inline-flex;align-items:center;gap:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#cbd5e1;font-size:12px;font-family:var(--font-mono, monospace);padding:5px 11px;border-radius:6px;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}._workbenchToggleBtn_1wwtk_145:hover{background:#ffffff14;color:#2dd4bf;border-color:#2dd4bf4d}._workbenchToggleBtnActive_1wwtk_189{background:#2dd4bf1f!important;color:#2dd4bf!important;border-color:#2dd4bf66!important}._workbenchPaneWrapper_1wwtk_201{width:440px;height:100%;flex-shrink:0;border-left:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;overflow:hidden}._reasoningLive_1wwtk_223{margin-bottom:12px;border:1px solid rgba(129,140,248,.3);border-radius:10px;background:linear-gradient(180deg,#818cf814,#818cf805);overflow:hidden;box-shadow:0 4px 18px #818cf81f;animation:_springAccordion_1wwtk_1 .35s cubic-bezier(.16,1,.3,1);transition:all .3s cubic-bezier(.16,1,.3,1)}._reasoningLiveHeader_1wwtk_245{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#818cf81f;border-bottom:1px solid rgba(129,140,248,.15);font-size:12px;font-weight:500;color:#c7d2fe}._reasoningPulse_1wwtk_269{width:8px;height:8px;border-radius:50%;background:#818cf8;box-shadow:0 0 10px #818cf8;animation:_pulse_1wwtk_1 1.4s infinite ease-in-out}@keyframes _springAccordion_1wwtk_1{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes _fadeIn_1wwtk_1{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes _pulse_1wwtk_1{0%,to{transform:scale(.9);opacity:.5}50%{transform:scale(1.3);opacity:1;box-shadow:0 0 14px #a5b4fc}}._reasoningLiveLabel_1wwtk_355{flex:1;letter-spacing:.01em}._reasoningLiveContent_1wwtk_365{padding:10px 14px;color:#94a3b8;font-family:var(--font-mono, monospace);font-size:11.5px;line-height:1.6;white-space:pre-wrap;max-height:220px;overflow-y:auto;border-left:2px solid rgba(129,140,248,.4);margin:6px 10px 10px;background:#0003;border-radius:4px}._reasoningDetails_1wwtk_397{margin-bottom:8px;border:1px solid rgba(255,255,255,.06);border-radius:9999px;background:#ffffff05;overflow:hidden;font-size:11.5px;display:inline-flex;flex-direction:column;max-width:fit-content;transition:all .2s cubic-bezier(.16,1,.3,1)}._reasoningDetails_1wwtk_397[open]{border-radius:8px;max-width:100%;width:100%;border-color:#ffffff14;background:#12151f99;box-shadow:none}._reasoningSummary_1wwtk_441{padding:4px 10px;color:var(--color-muted-foreground, #94a3b8);cursor:pointer;font-weight:450;display:inline-flex;align-items:center;gap:6px;-webkit-user-select:none;user-select:none;transition:color .15s ease}._reasoningSummary_1wwtk_441:hover{color:var(--color-foreground, #e2e8f0)}._reasoningCheck_1wwtk_473{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#10b98133;color:#10b981;font-size:10.5px;font-weight:700;animation:_checkmarkPop_1wwtk_1 .35s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes _checkmarkPop_1wwtk_1{0%{transform:scale(0);opacity:0}70%{transform:scale(1.25)}to{transform:scale(1);opacity:1}}._reasoningSparkle_1wwtk_513{color:#f59e0b;font-size:12px}._reasoningLabel_1wwtk_523{flex:1;font-size:11.5px}._reasoningBadge_1wwtk_533{font-size:10.5px;padding:2px 7px;border-radius:10px;background:#ffffff0f;color:#94a3b8;font-family:var(--font-mono, monospace)}._reasoningContent_1wwtk_551{padding:8px 12px;color:var(--color-muted-foreground, #94a3b8);font-family:var(--font-code, monospace);font-size:11px;line-height:1.5;white-space:pre-wrap;max-height:240px;overflow-y:auto;border-top:1px solid rgba(255,255,255,.04);background:#0003}._banner_1wwtk_581{display:flex;align-items:center;gap:var(--space-md);margin-top:var(--space-sm);padding:10px 16px;border:1px solid rgba(244,63,94,.3);border-radius:10px;background:#f43f5e14;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fecdd3;font-size:13.5px;box-shadow:0 4px 16px #0003}._banner_1wwtk_581 span{flex:1}._banner_1wwtk_581 button{background:#f43f5e33!important;border:1px solid rgba(244,63,94,.4)!important;color:#fff!important;border-radius:6px!important;padding:4px 12px!important;font-weight:500!important;transition:all .15s ease!important}._banner_1wwtk_581 button:hover{background:#f43f5e59!important;border-color:#f43f5e99!important}._approvalBanner_1wwtk_651{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid rgba(204,120,92,.4);border-radius:12px;background:#222220f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 16px #0000004d,0 0 12px #cc785c33;animation:_pulseApproval_1wwtk_1 2.5s infinite ease-in-out}@keyframes _pulseApproval_1wwtk_1{0%,to{border-color:#cc785c59;box-shadow:0 4px 16px #0000004d,0 0 8px #cc785c26}50%{border-color:#cc785cb3;box-shadow:0 4px 16px #0000004d,0 0 16px #cc785c59}}._approvalHeading_1wwtk_701{display:flex;align-items:center;gap:8px}._approvalBadge_1wwtk_713{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:4px;background:#cc785c33;color:#cc785c;border:1px solid rgba(204,120,92,.4)}._approvalText_1wwtk_737{flex:1;min-width:0}._approvalText_1wwtk_737 p{margin:var(--space-xs) 0 0;color:var(--color-muted-foreground);font-size:.875rem}._approvalActions_1wwtk_759{display:flex;gap:var(--space-sm)}._list_1wwtk_773{flex:1 1 auto;min-height:0;overflow-y:auto!important;overscroll-behavior:contain;display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md) 0 80px;scroll-behavior:auto}._row_1wwtk_797{display:flex;gap:var(--space-sm);align-items:flex-start;content-visibility:auto;contain-intrinsic-size:auto 96px;animation:_springCard_1wwtk_1 .35s cubic-bezier(.16,1,.3,1) both}@keyframes _springCard_1wwtk_1{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}._rowUser_1wwtk_839{justify-content:flex-end}._avatar_1wwtk_847{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-muted);color:var(--color-accent)}._bubble_1wwtk_871{max-width:100%;min-width:0;border-radius:12px;padding:8px 0;background:transparent;border:none;color:var(--color-foreground);line-height:1.7;box-shadow:none}@property --conic-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}._bubbleStreaming_1wwtk_909{position:relative;border-radius:14px;padding:10px 14px!important;background:#0f172ab3!important;box-shadow:0 4px 20px #00000059}._bubbleStreaming_1wwtk_909:before{content:"";position:absolute;top:-1.5px;right:-1.5px;bottom:-1.5px;left:-1.5px;border-radius:15.5px;padding:1.5px;background:conic-gradient(from var(--conic-angle, 0deg),transparent 55%,rgba(129,140,248,.85) 72%,rgba(45,212,191,.95) 86%,rgba(244,63,94,.85) 95%,transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;animation:_rotateConicGlow_1wwtk_1 3.5s linear infinite}@keyframes _rotateConicGlow_1wwtk_1{to{--conic-angle: 360deg}}._rowUser_1wwtk_839 ._bubble_1wwtk_871{max-width:80%;margin-left:auto;background:#2c2a27;color:#edece6;border-radius:20px 20px 6px;border:1px solid rgba(255,255,255,.08);padding:12px 18px;box-shadow:0 4px 14px #0003;white-space:pre-wrap;overflow-wrap:anywhere}._meta_1wwtk_1005{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs);font-size:12px}._roleLabel_1wwtk_1021{font-weight:600;color:var(--color-foreground)}._rowUser_1wwtk_839 ._roleLabel_1wwtk_1021{color:var(--color-on-primary)}._time_1wwtk_1039{font-family:var(--font-code);color:var(--color-muted-foreground);font-size:12px}._msgActionBar_1wwtk_1053{display:flex;align-items:center;gap:2px;margin-top:6px;opacity:0;transform:translateY(3px);transition:opacity .15s ease,transform .15s ease;pointer-events:none}._row_1wwtk_797:hover ._msgActionBar_1wwtk_1053,._row_1wwtk_797:focus-within ._msgActionBar_1wwtk_1053{opacity:1;transform:translateY(0);pointer-events:auto}._msgAction_1wwtk_1053{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:0;border-radius:6px;background:transparent;color:var(--color-muted-foreground);cursor:pointer;transition:background .15s var(--ease-fluid),color .15s var(--ease-fluid),transform .15s var(--ease-fluid)}._msgAction_1wwtk_1053:hover{background:#ffffff12;color:var(--color-foreground);transform:scale(1.1)}._msgAction_1wwtk_1053:active{transform:scale(.92)}._msgActionActive_1wwtk_1145{color:#22c55e!important;background:#22c55e1a!important}._content_1wwtk_1155{font-size:16px;line-height:1.6;overflow-wrap:anywhere}._content_1wwtk_1155 ._p_1wwtk_1167{margin:0 0 var(--space-sm)}._content_1wwtk_1155 ._p_1wwtk_1167:last-child{margin-bottom:0}._inlineCode_1wwtk_1187{font-family:var(--font-code);font-size:.85em;background:var(--color-muted);color:var(--color-foreground);padding:2px 6px;border-radius:6px}._link_1wwtk_1205{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px;word-break:break-all;cursor:pointer;pointer-events:auto;position:relative;z-index:1;transition:opacity .15s ease}._link_1wwtk_1205:hover{opacity:.8}._rowUser_1wwtk_839 ._link_1wwtk_1205{color:inherit;text-decoration:underline}._mathInline_1wwtk_1247{font-family:var(--font-code, monospace);background:color-mix(in srgb,var(--color-muted) 50%,transparent);color:var(--color-foreground);padding:1px 5px;border-radius:4px;font-style:normal;display:inline-block}._mathBlock_1wwtk_1267{display:block;margin:var(--space-md) 0;padding:var(--space-sm) var(--space-md);overflow-x:auto;overflow-y:hidden;text-align:center;border-radius:8px;background:color-mix(in srgb,var(--color-muted) 35%,transparent)}._rowUser_1wwtk_839 ._mathInline_1wwtk_1247{background:color-mix(in srgb,var(--color-on-primary) 15%,transparent);color:inherit}._rowUser_1wwtk_839 ._inlineCode_1wwtk_1187{background:color-mix(in srgb,var(--color-on-primary) 12%,transparent);color:inherit}._codeBlock_1wwtk_1309{margin:var(--space-sm) 0;padding:var(--space-md);border:1px solid var(--color-border);border-radius:8px;background:var(--color-background);overflow-x:auto;font-family:var(--font-code);font-size:13px;line-height:1.5}._listMd_1wwtk_1333{margin:var(--space-sm) 0;padding-left:20px}._listMd_1wwtk_1333 li{margin-bottom:var(--space-xs)}._vbadge_1wwtk_1355{position:relative;display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;border:1px solid var(--color-border);font-size:12px;font-weight:500;cursor:help;outline-offset:2px}._vbadge_1wwtk_1355:focus-visible{outline:2px solid var(--color-ring)}._vbadgeOk_1wwtk_1391{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 45%,transparent)}._vbadgeWarn_1wwtk_1401{color:var(--color-destructive);border-color:color-mix(in srgb,var(--color-destructive) 45%,transparent)}._vbadgeText_1wwtk_1411{white-space:nowrap}._vbadgeTip_1wwtk_1419{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);opacity:0;pointer-events:none;white-space:nowrap;background:var(--color-card);color:var(--color-card-foreground);border:1px solid var(--color-border);border-radius:8px;padding:var(--space-xs) var(--space-sm);font-size:12px;box-shadow:var(--shadow-md);transition:opacity .2s ease,transform .2s ease;z-index:20}._vbadge_1wwtk_1355:hover ._vbadgeTip_1wwtk_1419,._vbadge_1wwtk_1355:focus-visible ._vbadgeTip_1wwtk_1419{opacity:1;transform:translate(-50%) translateY(0)}._thinking_1wwtk_1471{display:flex;flex-direction:column;gap:var(--space-xs);min-width:220px}._thinkingRow_1wwtk_1485{display:flex;align-items:center;gap:12px;animation:_fadeIn_1wwtk_1 .25s ease}._caret_1wwtk_1501{display:inline-block;width:6px;height:1.05em;margin-left:2px;vertical-align:-2px;background:var(--color-primary);border-radius:2px;animation:_caretPulse_1wwtk_1 .75s ease-in-out infinite;box-shadow:0 0 10px var(--color-primary)}@keyframes _caretPulse_1wwtk_1{0%,to{opacity:1;transform:scale(1)}50%{opacity:.15;transform:scale(.85)}}._streamContentWrapper_1wwtk_1549{display:inline}._streamContentWrapper_1wwtk_1549 p,._streamContentWrapper_1wwtk_1549 li,._streamContentWrapper_1wwtk_1549 span{animation:_tokenFadeIn_1wwtk_1 .16s cubic-bezier(.16,1,.3,1) forwards}@keyframes _tokenFadeIn_1wwtk_1{0%{opacity:.15;filter:blur(3.5px);transform:translateY(1.5px)}to{opacity:1;filter:blur(0px);transform:translateY(0)}}._streamingIndicator_1wwtk_1595{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:2px 10px;border-radius:12px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-primary) 30%,transparent);margin-left:var(--space-xs);box-shadow:0 0 12px #818cf833}._shimmerText_1wwtk_1625{background:linear-gradient(90deg,#a5b4fca6,#fff 45%,#818cf8 55%,#a5b4fca6);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:_shimmerSweep_1wwtk_1 2.2s linear infinite;display:inline-block;font-weight:600;letter-spacing:.02em}@keyframes _shimmerSweep_1wwtk_1{0%{background-position:200% center}to{background-position:-200% center}}._streamingDot_1wwtk_1681{width:6px;height:6px;border-radius:50%;background:var(--color-primary);animation:_dotBlink_1wwtk_1 1s ease-in-out infinite;box-shadow:0 0 6px var(--color-primary)}@keyframes _dotBlink_1wwtk_1{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.3}}._errorBox_1wwtk_1725{display:flex;gap:var(--space-sm);margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid color-mix(in srgb,var(--color-destructive) 50%,transparent);border-radius:8px;background:color-mix(in srgb,var(--color-destructive) 8%,transparent);color:var(--color-destructive)}._errorBody_1wwtk_1747{display:flex;flex-direction:column;gap:var(--space-sm);align-items:flex-start}._errorText_1wwtk_1761{margin:0;font-size:14px;color:var(--color-foreground)}._cancelledNote_1wwtk_1773{margin:var(--space-sm) 0 0;font-size:13px;font-style:italic;color:var(--color-muted-foreground)}._hero_1wwtk_1791{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px 0 16px;text-align:center;overflow:hidden}._heroMascot_1wwtk_1817{margin-bottom:0}._heroGreeting_1wwtk_1825{margin:0;font-family:var(--font-heading);font-size:clamp(20px,2.5vw,24px);font-weight:600;letter-spacing:-.01em;color:var(--color-foreground)}._heroLead_1wwtk_1843{margin:0;max-width:44ch;font-size:13px;color:var(--color-muted-foreground);line-height:1.4}._heroComposer_1wwtk_1859{width:100%;max-width:680px;margin-top:8px;text-align:left}._composer_1wwtk_1877{position:sticky;bottom:0;padding:var(--space-xs) 0 var(--space-sm);background:var(--color-background)}._composerWrapper_1wwtk_1893{position:relative}._composerInner_1wwtk_1901{border:1px solid rgba(255,255,255,.1);border-radius:20px;background:#222220d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:12px 16px;box-shadow:0 4px 20px #0000004d,inset 0 1px #ffffff0f;transition:border-color var(--dur-base) var(--ease-fluid),box-shadow var(--dur-base) var(--ease-fluid),transform var(--dur-base) var(--ease-spring)}._composerInner_1wwtk_1901:focus-within{border-color:#cc785c8c;box-shadow:0 8px 32px #0006,0 0 0 1px #cc785c4d,0 0 24px #cc785c33;transform:translateY(-2px)}._composerInner_1wwtk_1901 textarea{width:100%;background:transparent;border:0;outline:none;resize:none;color:var(--color-foreground);font:inherit;font-size:16px;line-height:1.5;padding:var(--space-xs) 0}._composerInner_1wwtk_1901 textarea::placeholder{color:var(--color-muted-foreground)}._composerRow_1wwtk_1975{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-xs);flex-wrap:wrap}._hint_1wwtk_1991{flex:1;font-size:12px;color:var(--color-muted-foreground)}._charCount_1wwtk_2003{font-family:var(--font-code);font-size:12px;color:var(--color-muted-foreground);font-variant-numeric:tabular-nums}._suggestRow_1wwtk_2021{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:6px;padding-bottom:12px}._suggestRow_1wwtk_2021 button{background:#252523cc!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border:1px solid rgba(255,255,255,.08)!important;color:#b0aea6!important;border-radius:999px!important;padding:8px 16px!important;font-size:13.5px!important;box-shadow:0 2px 6px #00000026!important;transition:background var(--dur-fast) var(--ease-fluid),border-color var(--dur-fast) var(--ease-fluid),color var(--dur-fast) var(--ease-fluid),transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-fast) var(--ease-fluid)!important}._suggestRow_1wwtk_2021 button:hover{background:#2f2f2bf2!important;border-color:#cc785c73!important;color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 6px 18px #00000040,0 0 16px #cc785c40!important}._suggestRow_1wwtk_2021 button:active{transform:scale(.96) translateY(0)!important}._sendBtn_1wwtk_2099{min-height:38px;min-width:38px;padding-inline:0;border-radius:50%!important;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-primary, #cc785c)!important;color:#fff!important;border:0!important;cursor:pointer;box-shadow:0 2px 8px #00000040,0 0 12px #cc785c4d;transition:opacity .15s var(--ease-fluid),transform .18s var(--ease-spring),box-shadow .18s var(--ease-fluid)}._sendBtn_1wwtk_2099:hover:not(:disabled){opacity:.98;transform:scale(1.1);box-shadow:0 4px 18px #cc785c80,0 0 24px #cc785c59}._sendBtn_1wwtk_2099:active:not(:disabled){transform:scale(.92)}._sendBtn_1wwtk_2099:disabled{background:#ffffff14;color:#ffffff4d;opacity:.6;cursor:not-allowed}@media(prefers-reduced-motion:reduce){._caret_1wwtk_1501,._toolDot_1wwtk_2177{animation:none}._vbadgeTip_1wwtk_1419{transition:none}}@media(max-width:640px){._chat_1wwtk_13{padding:0 var(--space-sm)}._bubble_1wwtk_871{max-width:92%}._hint_1wwtk_1991{display:none}}._claudeToolCard_1wwtk_2223{margin:var(--space-xs) 0 var(--space-sm);border:1px solid rgba(255,255,255,.06);border-radius:9999px;background:#ffffff08;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden;font-family:var(--font-body);display:inline-flex;flex-direction:column;max-width:fit-content;transition:all .2s cubic-bezier(.16,1,.3,1)}._claudeToolCard_1wwtk_2223:has(._claudeToolBody_1wwtk_2251){border-radius:10px;background:#12151fb3;border-color:#ffffff14}._claudeToolHeader_1wwtk_2263{display:flex;align-items:center;gap:8px;padding:4px 10px;background:transparent;border:none;cursor:pointer;color:var(--color-foreground);font-size:12px;transition:background .15s ease}._claudeToolHeader_1wwtk_2263:hover{background:#ffffff0d}._claudeToolHeaderLeft_1wwtk_2297{display:flex;align-items:center;gap:6px}._claudeToolTitle_1wwtk_2309{font-size:12px;font-weight:450;color:var(--color-muted-foreground)}._claudeToolDuration_1wwtk_2321{font-size:11px;color:var(--color-muted-foreground);opacity:.7;font-family:var(--font-code)}._iconMuted_1wwtk_2335{color:var(--color-muted-foreground);opacity:.7}._iconSuccess_1wwtk_2345{color:var(--color-accent)}._iconDanger_1wwtk_2353{color:var(--color-destructive)}._iconSpin_1wwtk_2361,._iconSpinAccent_1wwtk_2371{color:var(--color-accent);animation:_spin_1wwtk_1 1s linear infinite}@keyframes _spin_1wwtk_1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._claudeToolBody_1wwtk_2251{padding:4px 12px 8px;border-top:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;gap:6px}._claudeToolRow_1wwtk_2407{display:flex;align-items:center;gap:8px;font-size:12px}._claudeToolIndicator_1wwtk_2421{display:flex;align-items:center;justify-content:center;width:14px;height:14px}._claudeToolContent_1wwtk_2437{display:flex;align-items:center;gap:8px;flex-wrap:wrap}._claudeToolName_1wwtk_2451{color:var(--color-foreground);font-size:12px;font-weight:450}._claudeToolVerbose_1wwtk_2463{font-size:11px;color:var(--color-muted-foreground);font-family:var(--font-code)}._claudeToolCode_1wwtk_2475{padding:1px 4px;border-radius:4px;background:#ffffff0d;color:var(--color-muted-foreground);font-size:10.5px}._codeBlockWrapper_1wwtk_2493{margin-block:10px;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#00000059}._codeHeader_1wwtk_2509{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.06)}._codeLang_1wwtk_2527{font-size:11px;font-family:var(--font-code, monospace);color:var(--color-muted-foreground, rgba(255,255,255,.45));text-transform:lowercase}._codeCopyBtn_1wwtk_2541{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;cursor:pointer;color:var(--color-muted-foreground, rgba(255,255,255,.45));font-size:11px;padding:2px 6px;border-radius:6px;transition:color .15s,background .15s}._codeCopyBtn_1wwtk_2541:hover{color:var(--color-foreground, #fff);background:#ffffff14}._latencyBadge_1wwtk_2581{font-size:11px;font-family:var(--font-code, monospace);color:#2dd4bf;background:#2dd4bf1a;border:1px solid rgba(45,212,191,.2);border-radius:4px;padding:1px 6px;margin-left:4px}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,math,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.19.0"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .katex-vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .katex-thinbox{display:inline-flex;flex-direction:row;max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .katex-hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.katex-root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .katex-stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .reflectbox{display:inline-block;transform:scaleX(-1)}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._searchSection_ujkx3_3{margin-top:var(--space-lg);max-width:720px}._noteSection_ujkx3_8{display:grid;gap:var(--space-sm);margin-top:var(--space-lg);max-width:720px;justify-items:start}._searchInput_ujkx3_16{font-size:1.1rem}._count_ujkx3_20{margin:var(--space-md) 0 0;color:var(--color-muted-foreground);font-size:.9rem}._results_ujkx3_26{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-md)}._card_ujkx3_33{background:var(--color-card);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:var(--space-md) var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm);box-shadow:0 2px 8px #0003;transition:border-color .22s var(--ease-fluid),box-shadow .22s var(--ease-fluid),transform .22s var(--ease-spring);animation:_staggerCascade_ujkx3_1 .32s cubic-bezier(.16,1,.3,1) both}._card_ujkx3_33:hover{border-color:#cc785c73;box-shadow:0 8px 24px #00000059,0 0 16px #cc785c33;transform:translateY(-2px) scale(1.005)}._excerpt_ujkx3_55{color:var(--color-card-foreground);font-size:.95rem;line-height:1.65;margin:0;overflow-wrap:anywhere}._excerpt_ujkx3_55 mark{background:var(--color-accent);color:var(--color-on-accent);border-radius:4px;padding:0 2px}._cardFooter_ujkx3_70{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}._scoreWrap_ujkx3_77{display:flex;align-items:center;gap:var(--space-sm);flex:1 1 160px;min-width:140px}._scoreTrack_ujkx3_85{flex:1;height:6px;border-radius:999px;background:var(--color-muted);overflow:hidden}._scoreFill_ujkx3_93{height:100%;width:100%;border-radius:999px;background:var(--color-accent);transform:scaleX(0);transform-origin:left center;transition:transform .4s var(--ease-spring)}._scoreLabel_ujkx3_103{font-family:var(--font-code);font-size:.8rem;color:var(--color-muted-foreground);min-width:44px}._skeletons_ujkx3_110{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}._emptyWrap_ujkx3_117{margin-top:var(--space-lg)}.enter-stagger{opacity:0;animation:_mv-enter_ujkx3_1 .22s ease-out forwards;animation-delay:calc(var(--i, 0) * 40ms)}@keyframes _mv-enter_ujkx3_1{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.enter-stagger{animation:none;opacity:1}._scoreFill_ujkx3_93{transition:none}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as L,u as I,a as q,b as R,r as o,j as e,P as T,E as k,B as v,i as D,c as P,l as A}from"./index-CuPR73Tn.js";import{T as B}from"./Textarea-DN3Zybl1.js";const O="_searchSection_ujkx3_3",$="_noteSection_ujkx3_8",G="_searchInput_ujkx3_16",H="_count_ujkx3_20",Q="_results_ujkx3_26",V="_card_ujkx3_33",X="_excerpt_ujkx3_55",z="_cardFooter_ujkx3_70",J="_scoreWrap_ujkx3_77",K="_scoreTrack_ujkx3_85",U="_scoreFill_ujkx3_93",Y="_scoreLabel_ujkx3_103",Z="_skeletons_ujkx3_110",ee="_emptyWrap_ujkx3_117",r={searchSection:O,noteSection:$,searchInput:G,count:H,results:Q,card:V,excerpt:X,cardFooter:z,scoreWrap:J,scoreTrack:K,scoreFill:U,scoreLabel:Y,skeletons:Z,emptyWrap:ee};function se(c,s){const a=s.trim();if(!a)return c;const h=c.toLowerCase(),u=a.toLowerCase(),l=[];let d=0,i=0,n=h.indexOf(u,d);for(;n!==-1&&i<50;)l.push(c.slice(d,n)),l.push(e.jsx("mark",{children:c.slice(n,n+a.length)},i)),d=n+a.length,i+=1,n=h.indexOf(u,d);return l.push(c.slice(d)),e.jsx(e.Fragment,{children:l})}function ae(){const c=L(),{t:s}=I(),{client:a,connected:h}=q(),u=R(),[l,d]=o.useState(""),[i,n]=o.useState(""),[S,N]=o.useState(!1),[m,C]=o.useState(""),[p,F]=o.useState([]),[j,g]=o.useState("idle"),[w,M]=o.useState(""),_=o.useRef(0);o.useEffect(()=>{const t=setTimeout(()=>C(l.trim()),300);return()=>clearTimeout(t)},[l]);const b=o.useCallback((t,x,y)=>{a&&(g("searching"),a.memorySearch(x).then(f=>{_.current===t&&(F(f),g("done"))}).catch(f=>{_.current===t&&(M(f instanceof Error?f.message:s("memory.searchFailDefault")),g("error"),y&&u.push({tone:"error",title:s("memory.searchFailToast")}))}))},[a,s,u]);o.useEffect(()=>{if(!a||!h)return;if(!m){F([]),g("idle");return}const t=_.current+=1;b(t,m,!0)},[m,a,h,b]);const E=()=>{const t=_.current+=1;!a||!m||b(t,m,!1)},W=async t=>{if(t.preventDefault(),!(!a||!i.trim())){N(!0);try{await a.memoryNote(i.trim()),n(""),u.push({tone:"success",title:s("memory.noteSaved")})}catch(x){u.push({tone:"error",title:x instanceof Error?x.message:s("memory.noteFailed")})}finally{N(!1)}}};return h?e.jsxs(e.Fragment,{children:[e.jsx(T,{title:s("memory.title"),subtitle:s("memory.subtitleFts")}),e.jsxs("form",{className:r.noteSection,onSubmit:t=>void W(t),children:[e.jsx(B,{label:s("memory.noteLabel"),value:i,onChange:t=>n(t.target.value),placeholder:s("memory.notePlaceholder"),rows:3,maxLength:65536}),e.jsx(v,{type:"submit",variant:"primary",disabled:S||!i.trim(),children:s(S?"memory.noteSaving":"memory.noteSave")})]}),e.jsx("div",{className:r.searchSection,children:e.jsx(D,{label:s("memory.searchLabel"),className:r.searchInput,value:l,onChange:t=>d(t.target.value),placeholder:s("memory.searchPlaceholder"),role:"searchbox","aria-label":s("memory.searchAria"),autoComplete:"off"})}),j==="searching"&&e.jsx("div",{className:r.skeletons,"aria-label":s("memory.searchingAria"),children:[0,1,2].map(t=>e.jsx(P,{variant:"rect"},t))}),j==="idle"&&e.jsx("div",{className:r.emptyWrap,children:e.jsx(k,{icon:"search",title:s("memory.idleTitle"),message:s("memory.idleMessage")})}),j==="error"&&e.jsx("div",{className:r.emptyWrap,children:e.jsx(k,{icon:"warn",title:s("memory.errorTitle"),message:w,action:e.jsx(v,{variant:"secondary",onClick:E,children:s("memory.searchFailDefault")})})}),j==="done"&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:r.count,role:"status",children:p.length===0?s("memory.noneFor",{q:m}):s("memory.foundFor",{n:p.length,q:m})}),p.length===0?e.jsx("div",{className:r.emptyWrap,children:e.jsx(k,{icon:"database",title:s("memory.noResultsTitle"),message:s("memory.noResultsMessage"),action:e.jsx(v,{variant:"secondary",onClick:()=>c("/"),children:s("memory.startChat")})})}):e.jsx("div",{className:r.results,children:p.map((t,x)=>{const y=Math.min(1,Math.max(0,t.score));return e.jsxs("article",{className:`enter-stagger ${r.card}`,style:{"--i":Math.min(x,7)},children:[e.jsx("p",{className:r.excerpt,children:se(t.excerpt,m)}),e.jsxs("div",{className:r.cardFooter,children:[t.source&&e.jsx(A,{tone:"info",children:t.source}),e.jsxs("div",{className:r.scoreWrap,children:[e.jsx("div",{className:r.scoreTrack,role:"img","aria-label":s("memory.scoreAria",{n:Math.round(y*100)}),children:e.jsx("div",{className:r.scoreFill,style:{transform:`scaleX(${y})`}})}),e.jsxs("span",{className:r.scoreLabel,children:[Math.round(y*100),"%"]})]})]})]},t.id)})})]})]}):e.jsxs(e.Fragment,{children:[e.jsx(T,{title:s("memory.title"),subtitle:s("memory.subtitle")}),e.jsx(k,{icon:"warn",title:s("memory.notConnectedTitle"),message:s("memory.notConnectedMessage"),action:e.jsx(v,{variant:"primary",onClick:()=>c("/welcome"),children:s("memory.gotoOnboarding")})})]})}export{ae as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as Z,u as ee,a as se,b as te,r as m,j as t,P as W,E as M,B as _,l as $,c as ne,m as L,k as q,M as B,i as G}from"./index-CuPR73Tn.js";import{T as ae}from"./Textarea-DN3Zybl1.js";import{T as le}from"./Tooltip-MzV2Gqnc.js";const re="_list_gy8cy_3",oe="_card_gy8cy_10",ce="_row_gy8cy_35",de="_info_gy8cy_43",ie="_titleRow_gy8cy_51",ue="_title_gy8cy_51",he="_cronRow_gy8cy_66",me="_cronHuman_gy8cy_73",pe="_cronRaw_gy8cy_79",fe="_meta_gy8cy_88",ge="_prompt_gy8cy_95",ye="_controls_gy8cy_102",_e="_switchWrap_gy8cy_109",ve="_actions_gy8cy_115",xe="_form_gy8cy_121",we="_formFooter_gy8cy_127",je="_skeletons_gy8cy_134",be="_deleteWarn_gy8cy_141",o={list:re,card:oe,row:ce,info:de,titleRow:ie,title:ue,cronRow:he,cronHuman:me,cronRaw:pe,meta:fe,prompt:ge,controls:ye,switchWrap:_e,actions:ve,form:xe,formFooter:we,skeletons:je,deleteWarn:be},Y=["schedules.fieldMinute","schedules.fieldHour","schedules.fieldDay","schedules.fieldMonth","schedules.fieldDow"],Ne=[[0,59],[0,23],[1,31],[1,12],[0,7]],Te=/^(?:\*|\*\/\d+|\d+(?:-\d+)?(?:,\d+(?:-\d+)?)*)$/;function Ce(g,e){var r;const l=g.trim().split(/\s+/);if(l.length!==5)return e("schedules.cronNeedsFive");for(let n=0;n<5;n+=1){const d=l[n];if(!Te.test(d))return e("schedules.fieldInvalid",{field:e(Y[n]??"")});const u=((r=d.match(/\d+/g))==null?void 0:r.map(Number))??[],[i,h]=Ne[n];if(u.some(y=>y<i||y>h))return e("schedules.fieldRange",{field:e(Y[n]??""),lo:i,hi:h})}return null}const Ee=["schedules.dow0","schedules.dow1","schedules.dow2","schedules.dow3","schedules.dow4","schedules.dow5","schedules.dow6"];function Se(g,e){const l=g.trim().split(/\s+/);if(l.length!==5)return g;const[r,n,d,u,i]=l,h=p=>/^\d+$/.test(p),y=p=>p.padStart(2,"0"),N=p=>{const c=p.match(/^\*\/(\d+)$/);return c?Number(c[1]):void 0},T=(p,c)=>`${p}:${y(c)}`;if(r==="*"&&n==="*"&&d==="*"&&u==="*"&&i==="*")return e("schedules.everyMinute");const v=N(r);if(v!==void 0&&n==="*"&&d==="*"&&u==="*"&&i==="*")return e("schedules.everyNMinutes",{n:v});const x=N(n);if(x!==void 0&&r==="0"&&d==="*"&&u==="*"&&i==="*")return e("schedules.everyNHours",{n:x});if(h(r)&&n==="*"&&d==="*"&&u==="*"&&i==="*")return e("schedules.hourlyAtMinute",{m:r});if(h(r)&&h(n)&&d==="*"&&u==="*"&&i==="*")return e("schedules.dailyAt",{time:T(n,r)});if(h(r)&&h(n)&&d==="*"&&u==="*"&&i!=="*"){const p=e(Ee[i==="7"?0:Number(i)]??"schedules.dow0");return e("schedules.weeklyAt",{day:p,time:T(n,r)})}return h(r)&&h(n)&&h(d)&&u==="*"&&i==="*"?e("schedules.monthlyAt",{dom:d,time:T(n,r)}):g}function Re(g,e){if(!g)return e("schedules.noSchedule");const l=Date.parse(g)-Date.now();if(Number.isNaN(l))return e("schedules.unknown");if(l<=0)return e("schedules.due");const r=Math.round(l/6e4);if(r<1)return e("schedules.inSeconds");if(r<60)return e("schedules.inMinutes",{n:r});const n=Math.round(r/60);if(n<24)return e("schedules.inHours",{n});const d=Math.round(n/24);return e("schedules.inDays",{n:d})}const K={name:"",cron:"",prompt:"",enabled:!0};function De(){const g=Z(),{t:e}=ee(),{client:l,connected:r}=se(),n=te(),[d,u]=m.useState([]),[i,h]=m.useState(!0),[y,N]=m.useState(null),[T,v]=m.useState(!1),[x,p]=m.useState(null),[c,b]=m.useState(K),[R,k]=m.useState({}),[F,D]=m.useState(!1),[w,E]=m.useState(null),[A,O]=m.useState(!1),S=m.useCallback(async()=>{if(l){h(!0),N(null);try{u(await l.schedulesList())}catch(s){N(s instanceof Error?s.message:e("schedules.loadError"))}finally{h(!1)}}},[l,e]);m.useEffect(()=>{S()},[S]);const H=()=>{p(null),b(K),k({}),v(!0)},V=s=>{p(s),b({name:s.name,cron:s.cron,prompt:s.prompt,enabled:s.enabled}),k({}),v(!0)},U=m.useCallback(()=>{const s={};if(c.name.trim()||(s.name=e("schedules.nameRequired")),!c.cron.trim())s.cron=e("schedules.cronRequired");else{const a=Ce(c.cron,e);a&&(s.cron=a)}return c.prompt.trim()||(s.prompt=e("schedules.promptRequired")),s},[c,e]),z=async s=>{s.preventDefault();const a=U();if(k(a),!(Object.keys(a).length>0)&&l){D(!0);try{const f={name:c.name.trim(),cron:c.cron.trim(),prompt:c.prompt.trim(),enabled:c.enabled};x?await l.schedulesUpdate(x.id,f):await l.schedulesCreate(f),await S(),v(!1),n.push({tone:"success",title:e(x?"schedules.updatedToast":"schedules.createdToast")})}catch(f){n.push({tone:"error",title:e("schedules.saveFailToast"),message:f instanceof Error?f.message:void 0})}finally{D(!1)}}},J=async s=>{if(!l)return;const a=!s.enabled;u(f=>f.map(j=>j.id===s.id?{...j,enabled:a}:j));try{const f=await l.schedulesToggle(s.id,a);u(j=>j.map(C=>C.id===s.id?f:C)),n.push({tone:"success",title:a?e("schedules.enabledToast",{name:s.name}):e("schedules.disabledToast",{name:s.name})})}catch(f){u(j=>j.map(C=>C.id===s.id?s:C)),n.push({tone:"error",title:e("schedules.toggleFailToast"),message:f instanceof Error?f.message:void 0})}},Q=async()=>{if(!(!l||!w)){O(!0);try{await l.schedulesDelete(w.id),u(s=>s.filter(a=>a.id!==w.id)),E(null),n.push({tone:"success",title:e("schedules.deletedToast",{name:w.name})})}catch(s){n.push({tone:"error",title:e("schedules.deleteFailToast"),message:s instanceof Error?s.message:void 0})}finally{O(!1)}}},[I,P]=m.useState(null),X=async s=>{if(l){P(s.id);try{await l.schedulesRunNow(s.id),n.push({tone:"success",title:e("schedules.runNowToast",{name:s.name})})}catch(a){n.push({tone:"error",title:e("schedules.runNowFailToast"),message:a instanceof Error?a.message:void 0})}finally{P(null)}}};return r?t.jsxs(t.Fragment,{children:[t.jsx(W,{title:e("schedules.title"),subtitle:e("schedules.subtitle"),actions:t.jsxs(t.Fragment,{children:[t.jsx(le,{label:e("schedules.atMostOnceTip"),children:t.jsx($,{tone:"info",children:e("schedules.atMostOnceBadge")})}),t.jsx(_,{variant:"primary",onClick:H,children:e("schedules.create")})]})}),i&&t.jsx("div",{className:o.skeletons,"aria-label":e("schedules.loadingAria"),children:[0,1,2].map(s=>t.jsx(ne,{variant:"rect"},s))}),!i&&y&&t.jsx(M,{icon:"warn",title:e("schedules.notLoadableTitle"),message:y,action:t.jsx(_,{variant:"secondary",onClick:()=>void S(),children:e("schedules.retry")})}),!i&&!y&&d.length===0&&t.jsx(M,{icon:"calendar",title:e("schedules.emptyTitle"),message:e("schedules.emptyMessage"),action:t.jsx(_,{variant:"primary",onClick:H,children:e("schedules.create")})}),!i&&!y&&d.length>0&&t.jsx("div",{className:o.list,"data-nav-list":!0,children:d.map((s,a)=>t.jsx("article",{className:`enter-stagger ${o.card}`,style:{"--i":Math.min(a,7)},"data-nav-item":!0,tabIndex:0,children:t.jsxs("div",{className:o.row,children:[t.jsxs("div",{className:o.info,children:[t.jsxs("div",{className:o.titleRow,children:[t.jsx("h3",{className:o.title,children:s.name}),t.jsxs($,{tone:s.enabled?"accent":"muted",children:[t.jsx("span",{className:s.enabled?"status-dot status-dot--pulse":"status-dot","aria-hidden":"true"}),s.enabled?e("schedules.badgeOn"):e("schedules.badgeOff")]})]}),t.jsxs("div",{className:o.cronRow,children:[t.jsx("span",{className:o.cronHuman,children:Se(s.cron,e)}),t.jsx("span",{className:o.cronRaw,children:s.cron})]}),t.jsx("p",{className:o.meta,children:e("schedules.nextRun",{time:Re(s.nextRunAt,e)})}),t.jsx("p",{className:`${o.meta} ${o.prompt}`,children:s.prompt})]}),t.jsxs("div",{className:o.controls,children:[t.jsx("div",{className:o.switchWrap,children:t.jsx(L,{checked:s.enabled,onChange:()=>void J(s),label:s.enabled?e("schedules.badgeOn"):e("schedules.badgeOff")})}),t.jsxs("div",{className:o.actions,children:[t.jsx(_,{variant:"secondary",loading:I===s.id,disabled:I!==null,onClick:()=>void X(s),children:e("schedules.runNow")}),t.jsx(q,{icon:"edit","aria-label":e("schedules.editAria",{name:s.name}),onClick:()=>V(s)}),t.jsx(q,{icon:"trash","aria-label":e("schedules.deleteAria",{name:s.name}),onClick:()=>E(s)})]})]})]})},s.id))}),t.jsx(B,{open:T,onClose:()=>v(!1),title:e(x?"schedules.modalEditTitle":"schedules.modalAddTitle"),children:t.jsxs("form",{className:o.form,onSubmit:s=>void z(s),noValidate:!0,children:[t.jsx(G,{label:e("schedules.formName"),value:c.name,onChange:s=>b(a=>({...a,name:s.target.value})),error:R.name,placeholder:e("schedules.formNamePh"),required:!0,autoComplete:"off"}),t.jsx(G,{label:e("schedules.formCron"),value:c.cron,onChange:s=>b(a=>({...a,cron:s.target.value})),error:R.cron,hint:e("schedules.formCronHint"),placeholder:"*/15 * * * *",required:!0,autoComplete:"off",inputMode:"text"}),t.jsx(ae,{label:e("schedules.formPrompt"),value:c.prompt,onChange:s=>b(a=>({...a,prompt:s.target.value})),error:R.prompt,hint:e("schedules.formPromptHint"),placeholder:e("schedules.formPromptPh"),required:!0,rows:4}),t.jsx(L,{checked:c.enabled,onChange:s=>b(a=>({...a,enabled:s})),label:e("schedules.formEnableNow")}),t.jsxs("div",{className:o.formFooter,children:[t.jsx(_,{variant:"ghost",type:"button",onClick:()=>v(!1),children:e("schedules.cancel")}),t.jsx(_,{variant:"primary",type:"submit",loading:F,disabled:F,children:e(x?"schedules.saveChanges":"schedules.create")})]})]})}),t.jsx(B,{open:!!w,onClose:()=>E(null),title:e("schedules.modalDeleteTitle"),footer:t.jsxs(t.Fragment,{children:[t.jsx(_,{variant:"ghost",onClick:()=>E(null),children:e("schedules.cancel")}),t.jsx(_,{variant:"danger",onClick:()=>void Q(),loading:A,disabled:A,children:e("schedules.modalDeleteTitle")})]}),children:w&&t.jsx("p",{className:o.deleteWarn,children:e("schedules.modalDeleteBody",{name:w.name,cron:w.cron})})})]}):t.jsxs(t.Fragment,{children:[t.jsx(W,{title:e("schedules.title"),subtitle:e("schedules.subtitle")}),t.jsx(M,{icon:"warn",title:e("schedules.notConnectedTitle"),message:e("schedules.notConnectedMessage"),action:t.jsx(_,{variant:"primary",onClick:()=>g("/welcome"),children:e("schedules.gotoOnboarding")})})]})}export{De as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._list_gy8cy_3{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}._card_gy8cy_10{background:var(--color-card);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:var(--row-pad-y) var(--space-lg);box-shadow:0 2px 8px #0003;transition:border-color .22s var(--ease-fluid),box-shadow .22s var(--ease-fluid),transform .22s var(--ease-spring);animation:_staggerCascade_gy8cy_1 .32s cubic-bezier(.16,1,.3,1) both}._card_gy8cy_10:hover{border-color:#cc785c73;box-shadow:0 8px 24px #00000059,0 0 16px #cc785c33;transform:translateY(-2px) scale(1.005)}._card_gy8cy_10:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}._row_gy8cy_35{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap}._info_gy8cy_43{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0;flex:1 1 240px}._titleRow_gy8cy_51{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}._title_gy8cy_51{font-family:var(--font-code);font-size:1.05rem;font-weight:600;color:var(--color-card-foreground);margin:0}._cronRow_gy8cy_66{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}._cronHuman_gy8cy_73{color:var(--color-foreground);font-size:.95rem;font-weight:500}._cronRaw_gy8cy_79{font-family:var(--font-code);font-size:.8rem;color:var(--color-muted-foreground);background:var(--color-muted);border-radius:6px;padding:2px 8px}._meta_gy8cy_88{color:var(--color-muted-foreground);font-size:.85rem;margin:0;overflow-wrap:anywhere}._prompt_gy8cy_95{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}._controls_gy8cy_102{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}._switchWrap_gy8cy_109{display:flex;align-items:center;min-height:44px}._actions_gy8cy_115{display:flex;align-items:center;gap:var(--space-sm)}._form_gy8cy_121{display:flex;flex-direction:column;gap:var(--space-md)}._formFooter_gy8cy_127{display:flex;justify-content:flex-end;gap:var(--space-sm);flex-wrap:wrap}._skeletons_gy8cy_134{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}._deleteWarn_gy8cy_141{color:var(--color-muted-foreground);font-size:.95rem;line-height:1.6;margin:0}._deleteWarn_gy8cy_141 strong{color:var(--color-foreground)}.enter-stagger{opacity:0;animation:_sv-enter_gy8cy_1 .22s ease-out forwards;animation-delay:calc(var(--i, 0) * 40ms)}@keyframes _sv-enter_gy8cy_1{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.enter-stagger{animation:none;opacity:1}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._wrap_gon5p_6{width:100%;max-width:800px;margin:0 auto;padding:0 var(--space-md) var(--space-2xl);font-family:var(--font-body);color:var(--color-foreground)}._banner_gon5p_15{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:8px;background:color-mix(in srgb,var(--color-destructive) 10%,transparent);font-size:14px}._banner_gon5p_15 span{flex:1}._list_gon5p_31{list-style:none;margin:var(--space-md) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-sm)}._rowItem_gon5p_40{margin:0;padding:0}.enter-stagger{animation:_rowEnter_gon5p_1 .32s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--i, 0) * 35ms)}@keyframes _rowEnter_gon5p_1{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}._row_gon5p_40{display:flex;align-items:center;gap:var(--space-md);width:100%;text-align:left;background:var(--color-card);color:var(--color-card-foreground);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:var(--row-pad-y) var(--space-md);cursor:pointer;box-shadow:0 2px 8px #0003;transition:border-color .22s var(--ease-fluid),box-shadow .22s var(--ease-fluid),transform .22s var(--ease-spring)}._row_gon5p_40:hover{border-color:#cc785c73;box-shadow:0 8px 24px #00000059,0 0 16px #cc785c33;transform:translateY(-2px) scale(1.005)}._row_gon5p_40:active{transform:scale(.99) translateY(0)}._row_gon5p_40:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}._rowIcon_gon5p_96{flex-shrink:0;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:var(--color-muted-foreground);transition:transform var(--dur-fast) var(--ease-spring),background var(--dur-fast) var(--ease-fluid),color var(--dur-fast) var(--ease-fluid)}._row_gon5p_40:hover ._rowIcon_gon5p_96{transform:scale(1.08) rotate(-2deg);background:#cc785c26;color:var(--color-primary)}._rowMain_gon5p_119{flex:1;min-width:0}._rowTitle_gon5p_124{margin:0 0 var(--space-xs);font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._rowMeta_gon5p_133{display:flex;align-items:center;gap:var(--space-xs);margin:0;font-size:13px;color:var(--color-muted-foreground)}._rowMeta_gon5p_133 time{font-variant-numeric:tabular-nums}._rowActions_gon5p_146{display:flex;gap:var(--space-xs);flex-shrink:0}._rowActions_gon5p_146 button{min-width:44px;min-height:44px}._editForm_gon5p_158{display:flex;align-items:center;gap:var(--space-xs);width:100%}._editForm_gon5p_158 button{min-width:44px;min-height:44px;flex-shrink:0}._skelRow_gon5p_171{border:1px solid var(--color-border);border-radius:12px;padding:var(--row-pad-y) var(--space-md);background:var(--color-card);min-height:76px}._deleteText_gon5p_179{margin:0;font-size:15px;line-height:1.6;color:var(--color-foreground)}@media(prefers-reduced-motion:reduce){.enter-stagger{animation:none}._row_gon5p_40{transition:none}._row_gon5p_40:hover{transform:none}}@media(max-width:640px){._wrap_gon5p_6{padding-left:var(--space-sm);padding-right:var(--space-sm)}._rowIcon_gon5p_96{display:none}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{e as K,u as G,a as H,f as V,r as i,j as s,P as q,B as f,I as j,c as J,E as O,i as Q,k as _,M as U}from"./index-CuPR73Tn.js";const W="_wrap_gon5p_6",X="_banner_gon5p_15",Y="_list_gon5p_31",Z="_rowItem_gon5p_40",ee="_row_gon5p_40",se="_rowIcon_gon5p_96",te="_rowMain_gon5p_119",ne="_rowTitle_gon5p_124",ae="_rowMeta_gon5p_133",ie="_rowActions_gon5p_146",oe="_editForm_gon5p_158",re="_skelRow_gon5p_171",le="_deleteText_gon5p_179",r={wrap:W,banner:X,list:Y,rowItem:Z,row:ee,rowIcon:se,rowMain:te,rowTitle:ne,rowMeta:ae,rowActions:ie,editForm:oe,skelRow:re,deleteText:le};function ce(l,t,k){const n=new Date(l).getTime();if(Number.isNaN(n))return"";const C=Date.now()-n,m=Math.floor(C/6e4);if(m<1)return t("sessions.justNow");if(m<60)return t("sessions.minutesAgo",{n:m});const d=Math.floor(m/60);if(d<24)return t("sessions.hoursAgo",{n:d});const p=Math.floor(d/24);return p===1?t("sessions.yesterday"):p<30?t("sessions.daysAgo",{n:p}):new Date(n).toLocaleDateString(k)}function ue(){const l=K(),{t,locale:k}=G(),{client:n}=H(),C=V(),[m,d]=i.useState([]),[p,v]=i.useState(!0),[T,g]=i.useState(null),[h,M]=i.useState(!1),[c,b]=i.useState(null),[w,S]=i.useState(!1),[E,D]=i.useState(null),[u,R]=i.useState(null),[N,I]=i.useState(""),A=i.useCallback(async()=>{if(!n){v(!1);return}v(!0),g(null);try{const e=await n.sessionsList();d(e)}catch(e){g(e instanceof Error?e.message:t("sessions.loadError"))}finally{v(!1)}},[n,t]);i.useEffect(()=>{A()},[A]);const B=i.useCallback(async()=>{if(!(h||!n)){M(!0);try{const e=await n.sessionsCreate();l(`/chat/${e.id}`)}catch(e){g(e instanceof Error?e.message:t("sessions.createError"))}finally{M(!1)}}},[n,h,l,t]),P=i.useCallback(async()=>{if(!(!c||w||!n)){S(!0);try{await n.sessionsDelete(c.id),d(e=>e.filter(a=>a.id!==c.id)),b(null)}catch(e){g(e instanceof Error?e.message:t("sessions.deleteError"))}finally{S(!1)}}},[n,c,w,t]),$=i.useCallback(e=>{R(e.id),I(e.title)},[]),L=i.useCallback(async e=>{if(!(!n||E!==null)){D(e.id);try{const a=await n.sessionsBranch(e.id);l(`/chat/${a.id}`)}catch(a){g(a instanceof Error?a.message:t("sessions.branchError"))}finally{D(null)}}},[E,n,l,t]),x=i.useCallback(()=>{R(null),I("")},[]),F=i.useCallback(async()=>{if(!u)return;const e=N.trim();if(e===""||!n){x();return}try{const a=await n.sessionsRename(u,e);d(y=>y.map(o=>o.id===a.id?a:o))}catch(a){g(a instanceof Error?a.message:t("sessions.renameError"))}finally{x()}},[n,u,N,x,t]),z=[...m].sort((e,a)=>new Date(a.updatedAt).getTime()-new Date(e.updatedAt).getTime());return s.jsxs("section",{className:r.wrap,"aria-label":t("sessions.sectionAria"),children:[s.jsx(q,{title:t("sessions.title"),subtitle:t("sessions.subtitle"),actions:s.jsxs(f,{variant:"primary",onClick:B,loading:h,disabled:h,children:[s.jsx(j,{name:"plus",size:18}),t("sessions.newChat")]})}),T&&s.jsxs("div",{className:r.banner,role:"alert",children:[s.jsx(j,{name:"warn",size:16}),s.jsx("span",{children:T}),s.jsx(f,{variant:"ghost",size:"sm",onClick:()=>void A(),children:t("sessions.reload")})]}),p?s.jsx("div",{className:r.list,"aria-label":t("sessions.loadingAria"),children:[0,1,2].map(e=>s.jsx("div",{className:r.skelRow,children:s.jsx(J,{variant:"rect"})},e))}):z.length===0?s.jsx(O,{icon:"sessions",title:t("sessions.emptyTitle"),message:t("sessions.emptyMessage"),action:s.jsxs(f,{variant:"primary",onClick:B,loading:h,disabled:h,children:[s.jsx(j,{name:"plus",size:18}),t("sessions.newChatEmptyCta")]})}):s.jsx("ul",{className:r.list,"data-nav-list":!0,children:z.map((e,a)=>{const y=a<8&&!C;return s.jsx("li",{className:y?`enter-stagger ${r.rowItem}`:r.rowItem,style:y?{"--i":a}:void 0,children:s.jsxs("article",{className:r.row,"data-nav-item":!0,onClick:()=>l(`/chat/${e.id}`),onKeyDown:o=>{o.key==="Enter"&&u!==e.id&&l(`/chat/${e.id}`)},tabIndex:u===e.id?-1:0,role:"button","aria-label":t("sessions.openAria",{title:e.title}),children:[s.jsx("div",{className:r.rowIcon,"aria-hidden":"true",children:s.jsx(j,{name:"chat",size:18})}),s.jsx("div",{className:r.rowMain,children:u===e.id?s.jsxs("form",{className:r.editForm,onSubmit:o=>{o.preventDefault(),o.stopPropagation(),F()},onClick:o=>o.stopPropagation(),children:[s.jsx(Q,{value:N,onChange:o=>I(o.currentTarget.value),onKeyDown:o=>{o.key==="Escape"&&x()},"aria-label":t("sessions.inputAria"),autoFocus:!0,maxLength:120}),s.jsx(_,{icon:"check","aria-label":t("sessions.saveName"),onClick:F}),s.jsx(_,{icon:"x","aria-label":t("sessions.cancelRename"),onClick:x})]}):s.jsxs(s.Fragment,{children:[s.jsx("h3",{className:r.rowTitle,children:e.title}),s.jsxs("p",{className:r.rowMeta,children:[s.jsx("span",{children:t("sessions.messagesCount",{n:e.messageCount})}),s.jsx("span",{"aria-hidden":"true",children:"·"}),s.jsx(j,{name:"clock",size:13}),s.jsx("time",{children:ce(e.updatedAt,t,k)})]})]})}),u!==e.id&&s.jsxs("div",{className:r.rowActions,onClick:o=>o.stopPropagation(),children:[s.jsx(_,{icon:"copy","aria-label":t("sessions.branchAria",{title:e.title}),disabled:E!==null,onClick:()=>void L(e)}),s.jsx(_,{icon:"edit","aria-label":t("sessions.renameAria",{title:e.title}),onClick:()=>$(e)}),s.jsx(_,{icon:"trash","aria-label":t("sessions.deleteAria",{title:e.title}),onClick:()=>b(e)})]})]})},e.id)})}),s.jsx(U,{open:c!==null,onClose:()=>!w&&b(null),title:t("sessions.modalTitle"),footer:s.jsxs(s.Fragment,{children:[s.jsx(f,{variant:"ghost",onClick:()=>b(null),disabled:w,children:t("sessions.cancel")}),s.jsx(f,{variant:"danger",onClick:P,loading:w,disabled:w,children:t("sessions.deleteBtn")})]}),children:s.jsx("p",{className:r.deleteText,children:t("sessions.modalBody",{title:(c==null?void 0:c.title)??""})})})]})}export{ue as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._list_55r1k_3{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}._card_55r1k_10{background:var(--color-card);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:var(--space-md) var(--space-lg);box-shadow:0 2px 8px #0003;transition:border-color .22s var(--ease-fluid),box-shadow .22s var(--ease-fluid),transform .22s var(--ease-spring);animation:_staggerCascade_55r1k_1 .32s cubic-bezier(.16,1,.3,1) both}._card_55r1k_10:hover{border-color:#cc785c73;box-shadow:0 8px 24px #00000059,0 0 16px #cc785c33;transform:translateY(-2px) scale(1.005)}._card_55r1k_10:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}._row_55r1k_35{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap}._info_55r1k_43{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0;flex:1 1 240px}._titleRow_55r1k_51{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}._title_55r1k_51{font-size:1.05rem;font-weight:600;color:var(--color-card-foreground);margin:0;overflow-wrap:anywhere}._meta_55r1k_66{color:var(--color-muted-foreground);font-size:.85rem;margin:0}._taskError_55r1k_72{color:var(--color-destructive);font-size:.85rem;margin:0;overflow-wrap:anywhere}._approval_55r1k_79{margin-top:var(--space-xs);display:flex;align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-warn);border-radius:8px;background:var(--color-warn-soft);color:var(--color-foreground);font-size:.85rem}._approval_55r1k_79 svg{flex-shrink:0;margin-top:2px}._approvalActions_55r1k_97{display:flex;gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap}._controls_55r1k_104{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}._actions_55r1k_111{display:flex;align-items:center;gap:var(--space-xs)}._expandBtn_55r1k_117{transition:transform var(--dur-fast) var(--ease-out)}._expandBtn_55r1k_117[aria-expanded=true]{transform:rotate(90deg)}._steps_55r1k_127{list-style:none;margin:var(--space-md) 0 0;padding:var(--space-md) 0 0;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-md)}._step_55r1k_127{display:flex;flex-direction:column;gap:var(--space-xs)}._stepHead_55r1k_143{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}._stepIndex_55r1k_150{font-family:var(--font-code);font-size:.75rem;color:var(--color-muted-foreground);flex-shrink:0}._stepPrompt_55r1k_157{font-size:.9rem;color:var(--color-foreground);overflow-wrap:anywhere}._stepAttempts_55r1k_163{font-size:.75rem;color:var(--color-muted-foreground)}._stepOutput_55r1k_168{margin:0;padding:var(--space-sm) var(--space-md);border-radius:8px;background:var(--color-muted);font-family:var(--font-code);font-size:.75rem;color:var(--color-muted-foreground);white-space:pre-wrap;overflow-wrap:anywhere;max-height:10rem;overflow-y:auto}._stepError_55r1k_182{margin:0;font-size:.75rem;color:var(--color-destructive);overflow-wrap:anywhere}._form_55r1k_191{display:flex;flex-direction:column;gap:var(--space-md)}._formFooter_55r1k_197{display:flex;justify-content:flex-end;gap:var(--space-sm);flex-wrap:wrap}._redirectHint_55r1k_204{color:var(--color-muted-foreground);font-size:.9rem;line-height:1.6;margin:0}._skeletons_55r1k_211{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}.enter-stagger{opacity:0;animation:_tv-enter_55r1k_1 .22s ease-out forwards;animation-delay:calc(var(--i, 0) * 40ms)}@keyframes _tv-enter_55r1k_1{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.enter-stagger{animation:none;opacity:1}}@media(max-width:640px){._row_55r1k_35{flex-direction:column}._controls_55r1k_104{align-self:flex-end}}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{e as Z,u as ee,a as te,b as se,r as o,j as t,P as q,E as C,B as c,k as m,c as ae,l as D,I as re,M as G,i as ne}from"./index-CuPR73Tn.js";import{T as V}from"./Textarea-DN3Zybl1.js";import{T as ie}from"./Tooltip-MzV2Gqnc.js";const oe="_list_55r1k_3",le="_card_55r1k_10",ce="_row_55r1k_35",de="_info_55r1k_43",pe="_titleRow_55r1k_51",ue="_title_55r1k_51",me="_meta_55r1k_66",he="_taskError_55r1k_72",fe="_approval_55r1k_79",_e="_approvalActions_55r1k_97",xe="_controls_55r1k_104",ve="_actions_55r1k_111",ke="_expandBtn_55r1k_117",ge="_steps_55r1k_127",je="_step_55r1k_127",we="_stepHead_55r1k_143",be="_stepIndex_55r1k_150",ye="_stepPrompt_55r1k_157",Te="_stepAttempts_55r1k_163",Ce="_stepOutput_55r1k_168",Ee="_stepError_55r1k_182",Ne="_form_55r1k_191",Se="_formFooter_55r1k_197",Ae="_redirectHint_55r1k_204",Re="_skeletons_55r1k_211",r={list:oe,card:le,row:ce,info:de,titleRow:pe,title:ue,meta:me,taskError:he,approval:fe,approvalActions:_e,controls:xe,actions:ve,expandBtn:ke,steps:ge,step:je,stepHead:we,stepIndex:be,stepPrompt:ye,stepAttempts:Te,stepOutput:Ce,stepError:Ee,form:Ne,formFooter:Se,redirectHint:Ae,skeletons:Re},Ie=4e3,Be={queued:{tone:"info",pulse:!1},running:{tone:"accent",pulse:!0},paused:{tone:"warn",pulse:!1},awaiting_approval:{tone:"warn",pulse:!0},completed:{tone:"muted",pulse:!1},failed:{tone:"danger",pulse:!1},cancelled:{tone:"muted",pulse:!1},interrupted:{tone:"warn",pulse:!1}},Fe={pending:"muted",running:"accent",done:"info",failed:"danger",skipped:"warn"},Pe=new Set(["queued","running","paused","awaiting_approval"]),Me=new Set(["failed","interrupted"]);function qe(){const $=Z(),{t:s}=ee(),{client:p,connected:b}=te(),_=se(),[x,z]=o.useState([]),[k,E]=o.useState(!0),[g,N]=o.useState(null),[U,S]=o.useState(new Set),[u,A]=o.useState(null),[Y,j]=o.useState(!1),[R,I]=o.useState(""),[B,F]=o.useState(""),[J,v]=o.useState(null),[P,M]=o.useState(!1),[h,w]=o.useState(null),[y,T]=o.useState(""),[K,H]=o.useState(!1),O=o.useRef(p);O.current=p;const d=o.useCallback(async(e=!1)=>{const l=O.current;if(l){e||(E(!0),N(null));try{z(await l.tasksList())}catch(i){e||N(i instanceof Error?i.message:s("tasks.loadError"))}finally{e||E(!1)}}},[s]);o.useEffect(()=>{d()},[d]),o.useEffect(()=>{if(!b)return;const l=x.some(n=>n.status==="running"||n.status==="awaiting_approval")?1500:Ie,i=window.setInterval(()=>{document.visibilityState==="visible"&&d(!0)},l);return()=>window.clearInterval(i)},[b,d,x]);const Q=e=>{S(l=>{const i=new Set(l);return i.has(e)?i.delete(e):i.add(e),i})},f=async(e,l,i)=>{if(p){A(e.id);try{await l(p),await d(!0),_.push({tone:"success",title:i})}catch(n){_.push({tone:"error",title:s("tasks.actionFailToast"),message:n instanceof Error?n.message:void 0})}finally{A(null)}}},L=()=>{I(""),F(""),v(null),j(!0)},W=async e=>{e.preventDefault();const l=R.trim(),i=B.split(`
|
|
2
|
+
`).map(n=>n.trim()).filter(n=>n!=="").map(n=>({prompt:n}));if(l===""){v(s("tasks.titleRequired"));return}if(i.length===0){v(s("tasks.stepsRequired"));return}if(p){M(!0),v(null);try{const n=await p.tasksCreate({title:l,steps:i});j(!1),S(a=>new Set(a).add(n.id)),await d(!0),_.push({tone:"success",title:s("tasks.createdToast")})}catch(n){v(n instanceof Error?n.message:s("tasks.createFailToast"))}finally{M(!1)}}},X=async()=>{if(!p||!h)return;const e=y.trim();if(e!==""){H(!0);try{await p.tasksRedirect(h.id,e),w(null),T(""),await d(!0),_.push({tone:"success",title:s("tasks.redirectedToast")})}catch(l){_.push({tone:"error",title:s("tasks.actionFailToast"),message:l instanceof Error?l.message:void 0})}finally{H(!1)}}};return b?t.jsxs(t.Fragment,{children:[t.jsx(q,{title:s("tasks.title"),subtitle:s("tasks.subtitle"),actions:t.jsxs(t.Fragment,{children:[t.jsx(ie,{label:s("tasks.refreshAria"),children:t.jsx(m,{icon:"refresh","aria-label":s("tasks.refreshAria"),onClick:()=>void d()})}),t.jsx(c,{variant:"primary",onClick:L,children:s("tasks.create")})]})}),k&&t.jsx("div",{className:r.skeletons,"aria-label":s("tasks.loadingAria"),children:[0,1,2].map(e=>t.jsx(ae,{variant:"rect"},e))}),!k&&g&&t.jsx(C,{icon:"warn",title:s("tasks.notLoadableTitle"),message:g,action:t.jsx(c,{variant:"secondary",onClick:()=>void d(),children:s("tasks.retry")})}),!k&&!g&&x.length===0&&t.jsx(C,{icon:"clock",title:s("tasks.emptyTitle"),message:s("tasks.emptyMessage"),action:t.jsx(c,{variant:"primary",onClick:L,children:s("tasks.create")})}),!k&&!g&&x.length>0&&t.jsx("div",{className:r.list,"data-nav-list":!0,children:x.map((e,l)=>{const i=Be[e.status],n=U.has(e.id);return t.jsxs("article",{className:`enter-stagger ${r.card}`,style:{"--i":Math.min(l,7)},"data-nav-item":!0,tabIndex:0,children:[t.jsxs("div",{className:r.row,children:[t.jsxs("div",{className:r.info,children:[t.jsxs("div",{className:r.titleRow,children:[t.jsx("h3",{className:r.title,children:e.title}),t.jsxs(D,{tone:i.tone,children:[t.jsx("span",{className:i.pulse?"status-dot status-dot--pulse":"status-dot","aria-hidden":"true"}),s(`tasks.status_${e.status}`)]})]}),t.jsx("p",{className:r.meta,children:s("tasks.stepProgress",{done:e.steps.filter(a=>a.status==="done").length,total:e.steps.length})}),e.error&&t.jsx("p",{className:r.taskError,children:e.error}),e.status==="awaiting_approval"&&e.approval&&t.jsxs("div",{className:r.approval,role:"alert",children:[t.jsx(re,{name:"shield",size:16}),t.jsx("span",{children:s("tasks.approvalInfo",{tool:e.approval.toolName,reason:e.approval.reason})})]})]}),t.jsx("div",{className:r.controls,children:t.jsxs("div",{className:r.actions,children:[(e.status==="queued"||e.status==="running")&&t.jsx(m,{icon:"pause","aria-label":s("tasks.pauseAria",{title:e.title}),disabled:u===e.id,onClick:()=>void f(e,a=>a.tasksPause(e.id),s("tasks.pausedToast"))}),(e.status==="paused"||e.status==="awaiting_approval")&&t.jsx(m,{icon:"play","aria-label":s("tasks.resumeAria",{title:e.title}),disabled:u===e.id,onClick:()=>void f(e,a=>a.tasksResume(e.id),s("tasks.resumedToast"))}),Me.has(e.status)&&t.jsx(m,{icon:"refresh","aria-label":s("tasks.retryAria",{title:e.title}),disabled:u===e.id,onClick:()=>void f(e,a=>a.tasksRetry(e.id),s("tasks.retriedToast"))}),e.status==="running"&&t.jsx(m,{icon:"send","aria-label":s("tasks.redirectAria",{title:e.title}),disabled:u===e.id,onClick:()=>{w(e),T("")}}),Pe.has(e.status)&&t.jsx(m,{icon:"stop","aria-label":s("tasks.cancelAria",{title:e.title}),disabled:u===e.id,onClick:()=>void f(e,a=>a.tasksCancel(e.id),s("tasks.cancelledToast"))}),t.jsx(m,{icon:"chevron-right","aria-label":n?s("tasks.collapseAria",{title:e.title}):s("tasks.expandAria",{title:e.title}),"aria-expanded":n,className:r.expandBtn,onClick:()=>Q(e.id)})]})})]}),e.status==="awaiting_approval"&&e.approval&&t.jsxs("div",{className:r.approvalActions,children:[t.jsx(c,{variant:"primary",loading:u===e.id,onClick:()=>void f(e,a=>a.tasksResume(e.id,{approved:!0}),s("tasks.approvedToast")),children:s("tasks.approve")}),t.jsx(c,{variant:"danger",loading:u===e.id,onClick:()=>void f(e,a=>a.tasksResume(e.id,{approved:!1}),s("tasks.deniedToast")),children:s("tasks.deny")})]}),n&&t.jsx("ol",{className:r.steps,children:e.steps.map(a=>t.jsxs("li",{className:r.step,children:[t.jsxs("div",{className:r.stepHead,children:[t.jsxs("span",{className:r.stepIndex,children:["#",a.index+1]}),t.jsx("span",{className:r.stepPrompt,children:a.prompt}),t.jsx(D,{tone:Fe[a.status]??"muted",children:s(`tasks.step_${a.status}`)}),a.attempts>1&&t.jsx("span",{className:r.stepAttempts,children:s("tasks.attempts",{n:a.attempts})})]}),a.output&&t.jsx("pre",{className:r.stepOutput,children:a.output}),a.error&&t.jsx("p",{className:r.stepError,children:a.error})]},a.id))})]},e.id)})}),t.jsx(G,{open:Y,onClose:()=>j(!1),title:s("tasks.createModalTitle"),children:t.jsxs("form",{className:r.form,onSubmit:e=>void W(e),noValidate:!0,children:[t.jsx(ne,{label:s("tasks.formTitle"),value:R,onChange:e=>I(e.target.value),error:J??void 0,placeholder:s("tasks.formTitlePh"),required:!0,autoComplete:"off"}),t.jsx(V,{label:s("tasks.formSteps"),value:B,onChange:e=>F(e.target.value),hint:s("tasks.formStepsHint"),placeholder:s("tasks.formStepsPh"),rows:5,required:!0}),t.jsxs("div",{className:r.formFooter,children:[t.jsx(c,{variant:"ghost",type:"button",onClick:()=>j(!1),children:s("tasks.cancel")}),t.jsx(c,{variant:"primary",type:"submit",loading:P,disabled:P,children:s("tasks.create")})]})]})}),t.jsx(G,{open:h!==null,onClose:()=>w(null),title:s("tasks.redirectModalTitle"),children:t.jsxs("div",{className:r.form,children:[t.jsx("p",{className:r.redirectHint,children:s("tasks.redirectHint",{title:(h==null?void 0:h.title)??""})}),t.jsx(V,{label:s("tasks.redirectMessage"),value:y,onChange:e=>T(e.target.value),placeholder:s("tasks.redirectMessagePh"),rows:3,autoFocus:!0}),t.jsxs("div",{className:r.formFooter,children:[t.jsx(c,{variant:"ghost",onClick:()=>w(null),children:s("tasks.cancel")}),t.jsx(c,{variant:"primary",loading:K,disabled:y.trim()==="",onClick:()=>void X(),children:s("tasks.redirectSend")})]})]})})]}):t.jsxs(t.Fragment,{children:[t.jsx(q,{title:s("tasks.title"),subtitle:s("tasks.subtitle")}),t.jsx(C,{icon:"warn",title:s("tasks.notConnectedTitle"),message:s("tasks.notConnectedMessage"),action:t.jsx(c,{variant:"primary",onClick:()=>$("/welcome"),children:s("tasks.gotoOnboarding")})})]})}export{qe as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as n,j as i,F as x,n as l,o as u}from"./index-CuPR73Tn.js";function m({label:d,error:a,hint:t,id:o,required:e,...r}){const c=n.useId(),s=o??`textarea-${c}`;return i.jsx(x,{id:s,label:d,error:a,hint:t,required:e,children:i.jsx("textarea",{id:s,className:l.control,"aria-invalid":a?!0:void 0,"aria-describedby":u(s,a,t),required:e,...r})})}export{m as T};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._tooltip_r5lwe_1{position:relative;display:inline-flex}._tooltip_r5lwe_1:after{content:attr(data-tip);position:absolute;bottom:calc(100% + var(--space-sm));left:50%;max-width:240px;width:max-content;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background-color:var(--color-secondary);color:var(--color-on-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-normal);text-align:center;white-space:normal;overflow-wrap:anywhere;pointer-events:none;opacity:0;transform:translate(-50%,4px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);z-index:var(--z-dropdown)}._tooltip_r5lwe_1:hover:after,._tooltip_r5lwe_1:focus-within:after{opacity:1;transform:translate(-50%)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as s}from"./index-CuPR73Tn.js";const p="_tooltip_r5lwe_1",i={tooltip:p};function a({label:t,children:o}){return s.jsx("span",{className:i.tooltip,"data-tip":t,children:o})}export{a as T};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import{p as re}from"./index-CuPR73Tn.js";function oe(r,o){for(var i=0;i<o.length;i++){const e=o[i];if(typeof e!="string"&&!Array.isArray(e)){for(const t in e)if(t!=="default"&&!(t in r)){const n=Object.getOwnPropertyDescriptor(e,t);n&&Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:()=>e[t]})}}}return Object.freeze(Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}))}var z={},Q,Bt;function ie(){return Bt||(Bt=1,Q=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}),Q}var $={},_={},At;function U(){if(At)return _;At=1;let r;const o=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];return _.getSymbolSize=function(e){if(!e)throw new Error('"version" cannot be null or undefined');if(e<1||e>40)throw new Error('"version" should be in range from 1 to 40');return e*4+17},_.getSymbolTotalCodewords=function(e){return o[e]},_.getBCHDigit=function(i){let e=0;for(;i!==0;)e++,i>>>=1;return e},_.setToSJISFunction=function(e){if(typeof e!="function")throw new Error('"toSJISFunc" is not a valid function.');r=e},_.isKanjiModeEnabled=function(){return typeof r<"u"},_.toSJIS=function(e){return r(e)},_}var W={},Rt;function yt(){return Rt||(Rt=1,(function(r){r.L={bit:1},r.M={bit:0},r.Q={bit:3},r.H={bit:2};function o(i){if(typeof i!="string")throw new Error("Param is not a string");switch(i.toLowerCase()){case"l":case"low":return r.L;case"m":case"medium":return r.M;case"q":case"quartile":return r.Q;case"h":case"high":return r.H;default:throw new Error("Unknown EC Level: "+i)}}r.isValid=function(e){return e&&typeof e.bit<"u"&&e.bit>=0&&e.bit<4},r.from=function(e,t){if(r.isValid(e))return e;try{return o(e)}catch{return t}}})(W)),W}var Z,Tt;function se(){if(Tt)return Z;Tt=1;function r(){this.buffer=[],this.length=0}return r.prototype={get:function(o){const i=Math.floor(o/8);return(this.buffer[i]>>>7-o%8&1)===1},put:function(o,i){for(let e=0;e<i;e++)this.putBit((o>>>i-e-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(o){const i=Math.floor(this.length/8);this.buffer.length<=i&&this.buffer.push(0),o&&(this.buffer[i]|=128>>>this.length%8),this.length++}},Z=r,Z}var X,It;function ue(){if(It)return X;It=1;function r(o){if(!o||o<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=o,this.data=new Uint8Array(o*o),this.reservedBit=new Uint8Array(o*o)}return r.prototype.set=function(o,i,e,t){const n=o*this.size+i;this.data[n]=e,t&&(this.reservedBit[n]=!0)},r.prototype.get=function(o,i){return this.data[o*this.size+i]},r.prototype.xor=function(o,i,e){this.data[o*this.size+i]^=e},r.prototype.isReserved=function(o,i){return this.reservedBit[o*this.size+i]},X=r,X}var x={},Nt;function ae(){return Nt||(Nt=1,(function(r){const o=U().getSymbolSize;r.getRowColCoords=function(e){if(e===1)return[];const t=Math.floor(e/7)+2,n=o(e),s=n===145?26:Math.ceil((n-13)/(2*t-2))*2,a=[n-7];for(let u=1;u<t-1;u++)a[u]=a[u-1]-s;return a.push(6),a.reverse()},r.getPositions=function(e){const t=[],n=r.getRowColCoords(e),s=n.length;for(let a=0;a<s;a++)for(let u=0;u<s;u++)a===0&&u===0||a===0&&u===s-1||a===s-1&&u===0||t.push([n[a],n[u]]);return t}})(x)),x}var tt={},Pt;function ce(){if(Pt)return tt;Pt=1;const r=U().getSymbolSize,o=7;return tt.getPositions=function(e){const t=r(e);return[[0,0],[t-o,0],[0,t-o]]},tt}var et={},Mt;function fe(){return Mt||(Mt=1,(function(r){r.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};const o={N1:3,N2:3,N3:40,N4:10};r.isValid=function(t){return t!=null&&t!==""&&!isNaN(t)&&t>=0&&t<=7},r.from=function(t){return r.isValid(t)?parseInt(t,10):void 0},r.getPenaltyN1=function(t){const n=t.size;let s=0,a=0,u=0,c=null,d=null;for(let p=0;p<n;p++){a=u=0,c=d=null;for(let h=0;h<n;h++){let f=t.get(p,h);f===c?a++:(a>=5&&(s+=o.N1+(a-5)),c=f,a=1),f=t.get(h,p),f===d?u++:(u>=5&&(s+=o.N1+(u-5)),d=f,u=1)}a>=5&&(s+=o.N1+(a-5)),u>=5&&(s+=o.N1+(u-5))}return s},r.getPenaltyN2=function(t){const n=t.size;let s=0;for(let a=0;a<n-1;a++)for(let u=0;u<n-1;u++){const c=t.get(a,u)+t.get(a,u+1)+t.get(a+1,u)+t.get(a+1,u+1);(c===4||c===0)&&s++}return s*o.N2},r.getPenaltyN3=function(t){const n=t.size;let s=0,a=0,u=0;for(let c=0;c<n;c++){a=u=0;for(let d=0;d<n;d++)a=a<<1&2047|t.get(c,d),d>=10&&(a===1488||a===93)&&s++,u=u<<1&2047|t.get(d,c),d>=10&&(u===1488||u===93)&&s++}return s*o.N3},r.getPenaltyN4=function(t){let n=0;const s=t.data.length;for(let u=0;u<s;u++)n+=t.data[u];return Math.abs(Math.ceil(n*100/s/5)-10)*o.N4};function i(e,t,n){switch(e){case r.Patterns.PATTERN000:return(t+n)%2===0;case r.Patterns.PATTERN001:return t%2===0;case r.Patterns.PATTERN010:return n%3===0;case r.Patterns.PATTERN011:return(t+n)%3===0;case r.Patterns.PATTERN100:return(Math.floor(t/2)+Math.floor(n/3))%2===0;case r.Patterns.PATTERN101:return t*n%2+t*n%3===0;case r.Patterns.PATTERN110:return(t*n%2+t*n%3)%2===0;case r.Patterns.PATTERN111:return(t*n%3+(t+n)%2)%2===0;default:throw new Error("bad maskPattern:"+e)}}r.applyMask=function(t,n){const s=n.size;for(let a=0;a<s;a++)for(let u=0;u<s;u++)n.isReserved(u,a)||n.xor(u,a,i(t,u,a))},r.getBestMask=function(t,n){const s=Object.keys(r.Patterns).length;let a=0,u=1/0;for(let c=0;c<s;c++){n(c),r.applyMask(c,t);const d=r.getPenaltyN1(t)+r.getPenaltyN2(t)+r.getPenaltyN3(t)+r.getPenaltyN4(t);r.applyMask(c,t),d<u&&(u=d,a=c)}return a}})(et)),et}var J={},St;function $t(){if(St)return J;St=1;const r=yt(),o=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],i=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];return J.getBlocksCount=function(t,n){switch(n){case r.L:return o[(t-1)*4+0];case r.M:return o[(t-1)*4+1];case r.Q:return o[(t-1)*4+2];case r.H:return o[(t-1)*4+3];default:return}},J.getTotalCodewordsCount=function(t,n){switch(n){case r.L:return i[(t-1)*4+0];case r.M:return i[(t-1)*4+1];case r.Q:return i[(t-1)*4+2];case r.H:return i[(t-1)*4+3];default:return}},J}var nt={},K={},bt;function le(){if(bt)return K;bt=1;const r=new Uint8Array(512),o=new Uint8Array(256);return(function(){let e=1;for(let t=0;t<255;t++)r[t]=e,o[e]=t,e<<=1,e&256&&(e^=285);for(let t=255;t<512;t++)r[t]=r[t-255]})(),K.log=function(e){if(e<1)throw new Error("log("+e+")");return o[e]},K.exp=function(e){return r[e]},K.mul=function(e,t){return e===0||t===0?0:r[o[e]+o[t]]},K}var Lt;function de(){return Lt||(Lt=1,(function(r){const o=le();r.mul=function(e,t){const n=new Uint8Array(e.length+t.length-1);for(let s=0;s<e.length;s++)for(let a=0;a<t.length;a++)n[s+a]^=o.mul(e[s],t[a]);return n},r.mod=function(e,t){let n=new Uint8Array(e);for(;n.length-t.length>=0;){const s=n[0];for(let u=0;u<t.length;u++)n[u]^=o.mul(t[u],s);let a=0;for(;a<n.length&&n[a]===0;)a++;n=n.slice(a)}return n},r.generateECPolynomial=function(e){let t=new Uint8Array([1]);for(let n=0;n<e;n++)t=r.mul(t,new Uint8Array([1,o.exp(n)]));return t}})(nt)),nt}var rt,Dt;function ge(){if(Dt)return rt;Dt=1;const r=de();function o(i){this.genPoly=void 0,this.degree=i,this.degree&&this.initialize(this.degree)}return o.prototype.initialize=function(e){this.degree=e,this.genPoly=r.generateECPolynomial(this.degree)},o.prototype.encode=function(e){if(!this.genPoly)throw new Error("Encoder not initialized");const t=new Uint8Array(e.length+this.degree);t.set(e);const n=r.mod(t,this.genPoly),s=this.degree-n.length;if(s>0){const a=new Uint8Array(this.degree);return a.set(n,s),a}return n},rt=o,rt}var ot={},it={},st={},qt;function Wt(){return qt||(qt=1,st.isValid=function(o){return!isNaN(o)&&o>=1&&o<=40}),st}var L={},vt;function Zt(){if(vt)return L;vt=1;const r="[0-9]+",o="[A-Z $%*+\\-./:]+";let i="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";i=i.replace(/u/g,"\\u");const e="(?:(?![A-Z0-9 $%*+\\-./:]|"+i+`)(?:.|[\r
|
|
2
|
+
]))+`;L.KANJI=new RegExp(i,"g"),L.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),L.BYTE=new RegExp(e,"g"),L.NUMERIC=new RegExp(r,"g"),L.ALPHANUMERIC=new RegExp(o,"g");const t=new RegExp("^"+i+"$"),n=new RegExp("^"+r+"$"),s=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");return L.testKanji=function(u){return t.test(u)},L.testNumeric=function(u){return n.test(u)},L.testAlphanumeric=function(u){return s.test(u)},L}var _t;function F(){return _t||(_t=1,(function(r){const o=Wt(),i=Zt();r.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},r.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},r.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},r.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},r.MIXED={bit:-1},r.getCharCountIndicator=function(n,s){if(!n.ccBits)throw new Error("Invalid mode: "+n);if(!o.isValid(s))throw new Error("Invalid version: "+s);return s>=1&&s<10?n.ccBits[0]:s<27?n.ccBits[1]:n.ccBits[2]},r.getBestModeForData=function(n){return i.testNumeric(n)?r.NUMERIC:i.testAlphanumeric(n)?r.ALPHANUMERIC:i.testKanji(n)?r.KANJI:r.BYTE},r.toString=function(n){if(n&&n.id)return n.id;throw new Error("Invalid mode")},r.isValid=function(n){return n&&n.bit&&n.ccBits};function e(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return r.NUMERIC;case"alphanumeric":return r.ALPHANUMERIC;case"kanji":return r.KANJI;case"byte":return r.BYTE;default:throw new Error("Unknown mode: "+t)}}r.from=function(n,s){if(r.isValid(n))return n;try{return e(n)}catch{return s}}})(it)),it}var Ut;function he(){return Ut||(Ut=1,(function(r){const o=U(),i=$t(),e=yt(),t=F(),n=Wt(),s=7973,a=o.getBCHDigit(s);function u(h,f,N){for(let P=1;P<=40;P++)if(f<=r.getCapacity(P,N,h))return P}function c(h,f){return t.getCharCountIndicator(h,f)+4}function d(h,f){let N=0;return h.forEach(function(P){const S=c(P.mode,f);N+=S+P.getBitsLength()}),N}function p(h,f){for(let N=1;N<=40;N++)if(d(h,N)<=r.getCapacity(N,f,t.MIXED))return N}r.from=function(f,N){return n.isValid(f)?parseInt(f,10):N},r.getCapacity=function(f,N,P){if(!n.isValid(f))throw new Error("Invalid QR Code version");typeof P>"u"&&(P=t.BYTE);const S=o.getSymbolTotalCodewords(f),R=i.getTotalCodewordsCount(f,N),M=(S-R)*8;if(P===t.MIXED)return M;const T=M-c(P,f);switch(P){case t.NUMERIC:return Math.floor(T/10*3);case t.ALPHANUMERIC:return Math.floor(T/11*2);case t.KANJI:return Math.floor(T/13);case t.BYTE:default:return Math.floor(T/8)}},r.getBestVersionForData=function(f,N){let P;const S=e.from(N,e.M);if(Array.isArray(f)){if(f.length>1)return p(f,S);if(f.length===0)return 1;P=f[0]}else P=f;return u(P.mode,P.getLength(),S)},r.getEncodedBits=function(f){if(!n.isValid(f)||f<7)throw new Error("Invalid QR Code version");let N=f<<12;for(;o.getBCHDigit(N)-a>=0;)N^=s<<o.getBCHDigit(N)-a;return f<<12|N}})(ot)),ot}var ut={},Ft;function me(){if(Ft)return ut;Ft=1;const r=U(),o=1335,i=21522,e=r.getBCHDigit(o);return ut.getEncodedBits=function(n,s){const a=n.bit<<3|s;let u=a<<10;for(;r.getBCHDigit(u)-e>=0;)u^=o<<r.getBCHDigit(u)-e;return(a<<10|u)^i},ut}var at={},ct,kt;function we(){if(kt)return ct;kt=1;const r=F();function o(i){this.mode=r.NUMERIC,this.data=i.toString()}return o.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(e){let t,n,s;for(t=0;t+3<=this.data.length;t+=3)n=this.data.substr(t,3),s=parseInt(n,10),e.put(s,10);const a=this.data.length-t;a>0&&(n=this.data.substr(t),s=parseInt(n,10),e.put(s,a*3+1))},ct=o,ct}var ft,zt;function ye(){if(zt)return ft;zt=1;const r=F(),o=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function i(e){this.mode=r.ALPHANUMERIC,this.data=e}return i.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){let n;for(n=0;n+2<=this.data.length;n+=2){let s=o.indexOf(this.data[n])*45;s+=o.indexOf(this.data[n+1]),t.put(s,11)}this.data.length%2&&t.put(o.indexOf(this.data[n]),6)},ft=i,ft}var lt,Vt;function Ce(){if(Vt)return lt;Vt=1;const r=F();function o(i){this.mode=r.BYTE,typeof i=="string"?this.data=new TextEncoder().encode(i):this.data=new Uint8Array(i)}return o.getBitsLength=function(e){return e*8},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(i){for(let e=0,t=this.data.length;e<t;e++)i.put(this.data[e],8)},lt=o,lt}var dt,Kt;function Ee(){if(Kt)return dt;Kt=1;const r=F(),o=U();function i(e){this.mode=r.KANJI,this.data=e}return i.getBitsLength=function(t){return t*13},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(e){let t;for(t=0;t<this.data.length;t++){let n=o.toSJIS(this.data[t]);if(n>=33088&&n<=40956)n-=33088;else if(n>=57408&&n<=60351)n-=49472;else throw new Error("Invalid SJIS character: "+this.data[t]+`
|
|
3
|
+
Make sure your charset is UTF-8`);n=(n>>>8&255)*192+(n&255),e.put(n,13)}},dt=i,dt}var gt={exports:{}},Ht;function pe(){return Ht||(Ht=1,(function(r){var o={single_source_shortest_paths:function(i,e,t){var n={},s={};s[e]=0;var a=o.PriorityQueue.make();a.push(e,0);for(var u,c,d,p,h,f,N,P,S;!a.empty();){u=a.pop(),c=u.value,p=u.cost,h=i[c]||{};for(d in h)h.hasOwnProperty(d)&&(f=h[d],N=p+f,P=s[d],S=typeof s[d]>"u",(S||P>N)&&(s[d]=N,a.push(d,N),n[d]=c))}if(typeof t<"u"&&typeof s[t]>"u"){var R=["Could not find a path from ",e," to ",t,"."].join("");throw new Error(R)}return n},extract_shortest_path_from_predecessor_list:function(i,e){for(var t=[],n=e;n;)t.push(n),i[n],n=i[n];return t.reverse(),t},find_path:function(i,e,t){var n=o.single_source_shortest_paths(i,e,t);return o.extract_shortest_path_from_predecessor_list(n,t)},PriorityQueue:{make:function(i){var e=o.PriorityQueue,t={},n;i=i||{};for(n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t.queue=[],t.sorter=i.sorter||e.default_sorter,t},default_sorter:function(i,e){return i.cost-e.cost},push:function(i,e){var t={value:i,cost:e};this.queue.push(t),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};r.exports=o})(gt)),gt.exports}var Jt;function Be(){return Jt||(Jt=1,(function(r){const o=F(),i=we(),e=ye(),t=Ce(),n=Ee(),s=Zt(),a=U(),u=pe();function c(R){return unescape(encodeURIComponent(R)).length}function d(R,M,T){const B=[];let b;for(;(b=R.exec(T))!==null;)B.push({data:b[0],index:b.index,mode:M,length:b[0].length});return B}function p(R){const M=d(s.NUMERIC,o.NUMERIC,R),T=d(s.ALPHANUMERIC,o.ALPHANUMERIC,R);let B,b;return a.isKanjiModeEnabled()?(B=d(s.BYTE,o.BYTE,R),b=d(s.KANJI,o.KANJI,R)):(B=d(s.BYTE_KANJI,o.BYTE,R),b=[]),M.concat(T,B,b).sort(function(C,y){return C.index-y.index}).map(function(C){return{data:C.data,mode:C.mode,length:C.length}})}function h(R,M){switch(M){case o.NUMERIC:return i.getBitsLength(R);case o.ALPHANUMERIC:return e.getBitsLength(R);case o.KANJI:return n.getBitsLength(R);case o.BYTE:return t.getBitsLength(R)}}function f(R){return R.reduce(function(M,T){const B=M.length-1>=0?M[M.length-1]:null;return B&&B.mode===T.mode?(M[M.length-1].data+=T.data,M):(M.push(T),M)},[])}function N(R){const M=[];for(let T=0;T<R.length;T++){const B=R[T];switch(B.mode){case o.NUMERIC:M.push([B,{data:B.data,mode:o.ALPHANUMERIC,length:B.length},{data:B.data,mode:o.BYTE,length:B.length}]);break;case o.ALPHANUMERIC:M.push([B,{data:B.data,mode:o.BYTE,length:B.length}]);break;case o.KANJI:M.push([B,{data:B.data,mode:o.BYTE,length:c(B.data)}]);break;case o.BYTE:M.push([{data:B.data,mode:o.BYTE,length:c(B.data)}])}}return M}function P(R,M){const T={},B={start:{}};let b=["start"];for(let g=0;g<R.length;g++){const C=R[g],y=[];for(let l=0;l<C.length;l++){const A=C[l],m=""+g+l;y.push(m),T[m]={node:A,lastCount:0},B[m]={};for(let E=0;E<b.length;E++){const w=b[E];T[w]&&T[w].node.mode===A.mode?(B[w][m]=h(T[w].lastCount+A.length,A.mode)-h(T[w].lastCount,A.mode),T[w].lastCount+=A.length):(T[w]&&(T[w].lastCount=A.length),B[w][m]=h(A.length,A.mode)+4+o.getCharCountIndicator(A.mode,M))}}b=y}for(let g=0;g<b.length;g++)B[b[g]].end=0;return{map:B,table:T}}function S(R,M){let T;const B=o.getBestModeForData(R);if(T=o.from(M,B),T!==o.BYTE&&T.bit<B.bit)throw new Error('"'+R+'" cannot be encoded with mode '+o.toString(T)+`.
|
|
4
|
+
Suggested mode is: `+o.toString(B));switch(T===o.KANJI&&!a.isKanjiModeEnabled()&&(T=o.BYTE),T){case o.NUMERIC:return new i(R);case o.ALPHANUMERIC:return new e(R);case o.KANJI:return new n(R);case o.BYTE:return new t(R)}}r.fromArray=function(M){return M.reduce(function(T,B){return typeof B=="string"?T.push(S(B,null)):B.data&&T.push(S(B.data,B.mode)),T},[])},r.fromString=function(M,T){const B=p(M,a.isKanjiModeEnabled()),b=N(B),g=P(b,T),C=u.find_path(g.map,"start","end"),y=[];for(let l=1;l<C.length-1;l++)y.push(g.table[C[l]].node);return r.fromArray(f(y))},r.rawSplit=function(M){return r.fromArray(p(M,a.isKanjiModeEnabled()))}})(at)),at}var Ot;function Ae(){if(Ot)return $;Ot=1;const r=U(),o=yt(),i=se(),e=ue(),t=ae(),n=ce(),s=fe(),a=$t(),u=ge(),c=he(),d=me(),p=F(),h=Be();function f(g,C){const y=g.size,l=n.getPositions(C);for(let A=0;A<l.length;A++){const m=l[A][0],E=l[A][1];for(let w=-1;w<=7;w++)if(!(m+w<=-1||y<=m+w))for(let I=-1;I<=7;I++)E+I<=-1||y<=E+I||(w>=0&&w<=6&&(I===0||I===6)||I>=0&&I<=6&&(w===0||w===6)||w>=2&&w<=4&&I>=2&&I<=4?g.set(m+w,E+I,!0,!0):g.set(m+w,E+I,!1,!0))}}function N(g){const C=g.size;for(let y=8;y<C-8;y++){const l=y%2===0;g.set(y,6,l,!0),g.set(6,y,l,!0)}}function P(g,C){const y=t.getPositions(C);for(let l=0;l<y.length;l++){const A=y[l][0],m=y[l][1];for(let E=-2;E<=2;E++)for(let w=-2;w<=2;w++)E===-2||E===2||w===-2||w===2||E===0&&w===0?g.set(A+E,m+w,!0,!0):g.set(A+E,m+w,!1,!0)}}function S(g,C){const y=g.size,l=c.getEncodedBits(C);let A,m,E;for(let w=0;w<18;w++)A=Math.floor(w/3),m=w%3+y-8-3,E=(l>>w&1)===1,g.set(A,m,E,!0),g.set(m,A,E,!0)}function R(g,C,y){const l=g.size,A=d.getEncodedBits(C,y);let m,E;for(m=0;m<15;m++)E=(A>>m&1)===1,m<6?g.set(m,8,E,!0):m<8?g.set(m+1,8,E,!0):g.set(l-15+m,8,E,!0),m<8?g.set(8,l-m-1,E,!0):m<9?g.set(8,15-m-1+1,E,!0):g.set(8,15-m-1,E,!0);g.set(l-8,8,1,!0)}function M(g,C){const y=g.size;let l=-1,A=y-1,m=7,E=0;for(let w=y-1;w>0;w-=2)for(w===6&&w--;;){for(let I=0;I<2;I++)if(!g.isReserved(A,w-I)){let v=!1;E<C.length&&(v=(C[E]>>>m&1)===1),g.set(A,w-I,v),m--,m===-1&&(E++,m=7)}if(A+=l,A<0||y<=A){A-=l,l=-l;break}}}function T(g,C,y){const l=new i;y.forEach(function(I){l.put(I.mode.bit,4),l.put(I.getLength(),p.getCharCountIndicator(I.mode,g)),I.write(l)});const A=r.getSymbolTotalCodewords(g),m=a.getTotalCodewordsCount(g,C),E=(A-m)*8;for(l.getLengthInBits()+4<=E&&l.put(0,4);l.getLengthInBits()%8!==0;)l.putBit(0);const w=(E-l.getLengthInBits())/8;for(let I=0;I<w;I++)l.put(I%2?17:236,8);return B(l,g,C)}function B(g,C,y){const l=r.getSymbolTotalCodewords(C),A=a.getTotalCodewordsCount(C,y),m=l-A,E=a.getBlocksCount(C,y),w=l%E,I=E-w,v=Math.floor(l/E),V=Math.floor(m/E),te=V+1,Ct=v-V,ee=new u(Ct);let O=0;const H=new Array(E),Et=new Array(E);let j=0;const ne=new Uint8Array(g.buffer);for(let k=0;k<E;k++){const G=k<I?V:te;H[k]=ne.slice(O,O+G),Et[k]=ee.encode(H[k]),O+=G,j=Math.max(j,G)}const Y=new Uint8Array(l);let pt=0,D,q;for(D=0;D<j;D++)for(q=0;q<E;q++)D<H[q].length&&(Y[pt++]=H[q][D]);for(D=0;D<Ct;D++)for(q=0;q<E;q++)Y[pt++]=Et[q][D];return Y}function b(g,C,y,l){let A;if(Array.isArray(g))A=h.fromArray(g);else if(typeof g=="string"){let v=C;if(!v){const V=h.rawSplit(g);v=c.getBestVersionForData(V,y)}A=h.fromString(g,v||40)}else throw new Error("Invalid data");const m=c.getBestVersionForData(A,y);if(!m)throw new Error("The amount of data is too big to be stored in a QR Code");if(!C)C=m;else if(C<m)throw new Error(`
|
|
5
|
+
The chosen QR Code version cannot contain this amount of data.
|
|
6
|
+
Minimum version required to store current data is: `+m+`.
|
|
7
|
+
`);const E=T(C,y,A),w=r.getSymbolSize(C),I=new e(w);return f(I,C),N(I),P(I,C),R(I,y,0),C>=7&&S(I,C),M(I,E),isNaN(l)&&(l=s.getBestMask(I,R.bind(null,I,y))),s.applyMask(l,I),R(I,y,l),{modules:I,version:C,errorCorrectionLevel:y,maskPattern:l,segments:A}}return $.create=function(C,y){if(typeof C>"u"||C==="")throw new Error("No input text");let l=o.M,A,m;return typeof y<"u"&&(l=o.from(y.errorCorrectionLevel,o.M),A=c.from(y.version),m=s.from(y.maskPattern),y.toSJISFunc&&r.setToSJISFunction(y.toSJISFunc)),b(C,A,l,m)},$}var ht={},mt={},jt;function Xt(){return jt||(jt=1,(function(r){function o(i){if(typeof i=="number"&&(i=i.toString()),typeof i!="string")throw new Error("Color should be defined as hex string");let e=i.slice().replace("#","").split("");if(e.length<3||e.length===5||e.length>8)throw new Error("Invalid hex color: "+i);(e.length===3||e.length===4)&&(e=Array.prototype.concat.apply([],e.map(function(n){return[n,n]}))),e.length===6&&e.push("F","F");const t=parseInt(e.join(""),16);return{r:t>>24&255,g:t>>16&255,b:t>>8&255,a:t&255,hex:"#"+e.slice(0,6).join("")}}r.getOptions=function(e){e||(e={}),e.color||(e.color={});const t=typeof e.margin>"u"||e.margin===null||e.margin<0?4:e.margin,n=e.width&&e.width>=21?e.width:void 0,s=e.scale||4;return{width:n,scale:n?4:s,margin:t,color:{dark:o(e.color.dark||"#000000ff"),light:o(e.color.light||"#ffffffff")},type:e.type,rendererOpts:e.rendererOpts||{}}},r.getScale=function(e,t){return t.width&&t.width>=e+t.margin*2?t.width/(e+t.margin*2):t.scale},r.getImageWidth=function(e,t){const n=r.getScale(e,t);return Math.floor((e+t.margin*2)*n)},r.qrToImageData=function(e,t,n){const s=t.modules.size,a=t.modules.data,u=r.getScale(s,n),c=Math.floor((s+n.margin*2)*u),d=n.margin*u,p=[n.color.light,n.color.dark];for(let h=0;h<c;h++)for(let f=0;f<c;f++){let N=(h*c+f)*4,P=n.color.light;if(h>=d&&f>=d&&h<c-d&&f<c-d){const S=Math.floor((h-d)/u),R=Math.floor((f-d)/u);P=p[a[S*s+R]?1:0]}e[N++]=P.r,e[N++]=P.g,e[N++]=P.b,e[N]=P.a}}})(mt)),mt}var Yt;function Re(){return Yt||(Yt=1,(function(r){const o=Xt();function i(t,n,s){t.clearRect(0,0,n.width,n.height),n.style||(n.style={}),n.height=s,n.width=s,n.style.height=s+"px",n.style.width=s+"px"}function e(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}r.render=function(n,s,a){let u=a,c=s;typeof u>"u"&&(!s||!s.getContext)&&(u=s,s=void 0),s||(c=e()),u=o.getOptions(u);const d=o.getImageWidth(n.modules.size,u),p=c.getContext("2d"),h=p.createImageData(d,d);return o.qrToImageData(h.data,n,u),i(p,c,d),p.putImageData(h,0,0),c},r.renderToDataURL=function(n,s,a){let u=a;typeof u>"u"&&(!s||!s.getContext)&&(u=s,s=void 0),u||(u={});const c=r.render(n,s,u),d=u.type||"image/png",p=u.rendererOpts||{};return c.toDataURL(d,p.quality)}})(ht)),ht}var wt={},Gt;function Te(){if(Gt)return wt;Gt=1;const r=Xt();function o(t,n){const s=t.a/255,a=n+'="'+t.hex+'"';return s<1?a+" "+n+'-opacity="'+s.toFixed(2).slice(1)+'"':a}function i(t,n,s){let a=t+n;return typeof s<"u"&&(a+=" "+s),a}function e(t,n,s){let a="",u=0,c=!1,d=0;for(let p=0;p<t.length;p++){const h=Math.floor(p%n),f=Math.floor(p/n);!h&&!c&&(c=!0),t[p]?(d++,p>0&&h>0&&t[p-1]||(a+=c?i("M",h+s,.5+f+s):i("m",u,0),u=0,c=!1),h+1<n&&t[p+1]||(a+=i("h",d),d=0)):u++}return a}return wt.render=function(n,s,a){const u=r.getOptions(s),c=n.modules.size,d=n.modules.data,p=c+u.margin*2,h=u.color.light.a?"<path "+o(u.color.light,"fill")+' d="M0 0h'+p+"v"+p+'H0z"/>':"",f="<path "+o(u.color.dark,"stroke")+' d="'+e(d,c,u.margin)+'"/>',N='viewBox="0 0 '+p+" "+p+'"',S='<svg xmlns="http://www.w3.org/2000/svg" '+(u.width?'width="'+u.width+'" height="'+u.width+'" ':"")+N+' shape-rendering="crispEdges">'+h+f+`</svg>
|
|
8
|
+
`;return typeof a=="function"&&a(null,S),S},wt}var Qt;function Ie(){if(Qt)return z;Qt=1;const r=ie(),o=Ae(),i=Re(),e=Te();function t(n,s,a,u,c){const d=[].slice.call(arguments,1),p=d.length,h=typeof d[p-1]=="function";if(!h&&!r())throw new Error("Callback required as last argument");if(h){if(p<2)throw new Error("Too few arguments provided");p===2?(c=a,a=s,s=u=void 0):p===3&&(s.getContext&&typeof c>"u"?(c=u,u=void 0):(c=u,u=a,a=s,s=void 0))}else{if(p<1)throw new Error("Too few arguments provided");return p===1?(a=s,s=u=void 0):p===2&&!s.getContext&&(u=a,a=s,s=void 0),new Promise(function(f,N){try{const P=o.create(a,u);f(n(P,s,u))}catch(P){N(P)}})}try{const f=o.create(a,u);c(null,n(f,s,u))}catch(f){c(f)}}return z.create=o.create,z.toCanvas=t.bind(null,i.render),z.toDataURL=t.bind(null,i.renderToDataURL),z.toString=t.bind(null,function(n,s,a){return e.render(n,a)}),z}var xt=Ie();const Ne=re(xt),Me=oe({__proto__:null,default:Ne},[xt]);export{Me as b};
|