@code-yeongyu/senpi 2026.8.18 → 2026.8.20-2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +251 -0
- package/dist/cli/args.d.ts +1 -0
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +4 -0
- package/dist/cli/args.js.map +1 -1
- package/dist/cli-main.js +4 -0
- package/dist/cli-main.js.map +1 -1
- package/dist/cli.js +31 -3
- package/dist/cli.js.map +1 -1
- package/dist/compile-cache.d.ts +2 -0
- package/dist/compile-cache.d.ts.map +1 -0
- package/dist/compile-cache.js +33 -0
- package/dist/compile-cache.js.map +1 -0
- package/dist/core/agent-session-services.d.ts +4 -1
- package/dist/core/agent-session-services.d.ts.map +1 -1
- package/dist/core/agent-session-services.js +1 -0
- package/dist/core/agent-session-services.js.map +1 -1
- package/dist/core/agent-session.d.ts +54 -25
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +469 -87
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
- package/dist/core/compaction/branch-summarization.js +3 -0
- package/dist/core/compaction/branch-summarization.js.map +1 -1
- package/dist/core/compaction/compaction.d.ts +26 -3
- package/dist/core/compaction/compaction.d.ts.map +1 -1
- package/dist/core/compaction/compaction.js +195 -52
- package/dist/core/compaction/compaction.js.map +1 -1
- package/dist/core/cursor-exec-bridge-session.d.ts +14 -2
- package/dist/core/cursor-exec-bridge-session.d.ts.map +1 -1
- package/dist/core/cursor-exec-bridge-session.js +20 -4
- package/dist/core/cursor-exec-bridge-session.js.map +1 -1
- package/dist/core/cursor-exec-bridge.d.ts +11 -3
- package/dist/core/cursor-exec-bridge.d.ts.map +1 -1
- package/dist/core/cursor-exec-bridge.js +53 -20
- package/dist/core/cursor-exec-bridge.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/custom-tools.d.ts +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/custom-tools.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/custom-tools.js +5 -2
- package/dist/core/extensions/builtin/claude-sdk-oauth/custom-tools.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/executable.d.ts +2 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/executable.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/executable.js +15 -6
- package/dist/core/extensions/builtin/claude-sdk-oauth/executable.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/index.d.ts +3 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/index.js +18 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/index.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/oauth-login.d.ts +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/oauth-login.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/oauth-login.js +7 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/oauth-login.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.d.ts +8 -5
- package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.js +24 -2
- package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.lazy.d.ts +39 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.lazy.d.ts.map +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.lazy.js +31 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.lazy.js.map +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding-store.d.ts +29 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding-store.d.ts.map +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding-store.js +112 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding-store.js.map +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding.d.ts +37 -23
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding.js +119 -33
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-binding.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.d.ts +3 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.js +55 -2
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.d.ts +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.js +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.d.ts +11 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.js +35 -2
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-wiring.d.ts +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-wiring.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-wiring.js +78 -11
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-registry-wiring.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-restored-admission.d.ts +8 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-restored-admission.d.ts.map +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-restored-admission.js +11 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-restored-admission.js.map +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-stream.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-stream.js +17 -55
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-stream.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-sync.d.ts +13 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-sync.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-sync.js +18 -5
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-sync.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.d.ts +11 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.d.ts.map +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.js +75 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.js.map +1 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/settings.d.ts +8 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/settings.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/settings.js +18 -0
- package/dist/core/extensions/builtin/claude-sdk-oauth/settings.js.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/stream.d.ts.map +1 -1
- package/dist/core/extensions/builtin/claude-sdk-oauth/stream.js +5 -2
- package/dist/core/extensions/builtin/claude-sdk-oauth/stream.js.map +1 -1
- package/dist/core/extensions/builtin/compaction/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/compaction/index.js +5 -0
- package/dist/core/extensions/builtin/compaction/index.js.map +1 -1
- package/dist/core/extensions/builtin/compaction/log.d.ts +1 -1
- package/dist/core/extensions/builtin/compaction/log.d.ts.map +1 -1
- package/dist/core/extensions/builtin/compaction/log.js +1 -0
- package/dist/core/extensions/builtin/compaction/log.js.map +1 -1
- package/dist/core/extensions/builtin/compaction/speculative.d.ts +1 -0
- package/dist/core/extensions/builtin/compaction/speculative.d.ts.map +1 -1
- package/dist/core/extensions/builtin/compaction/speculative.js +4 -0
- package/dist/core/extensions/builtin/compaction/speculative.js.map +1 -1
- package/dist/core/extensions/builtin/config-reload/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/config-reload/index.js +13 -10
- package/dist/core/extensions/builtin/config-reload/index.js.map +1 -1
- package/dist/core/extensions/builtin/config-reload/watch-engine.d.ts +8 -1
- package/dist/core/extensions/builtin/config-reload/watch-engine.d.ts.map +1 -1
- package/dist/core/extensions/builtin/config-reload/watch-engine.js +98 -18
- package/dist/core/extensions/builtin/config-reload/watch-engine.js.map +1 -1
- package/dist/core/extensions/builtin/config-reload/watch-event-source.d.ts +1 -1
- package/dist/core/extensions/builtin/config-reload/watch-event-source.d.ts.map +1 -1
- package/dist/core/extensions/builtin/config-reload/watch-event-source.js +7 -2
- package/dist/core/extensions/builtin/config-reload/watch-event-source.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/guardrails.d.ts +7 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/guardrails.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/guardrails.js +10 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/guardrails.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/index.d.ts +1 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/index.js +29 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/index.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/models.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/models.js +30 -24
- package/dist/core/extensions/builtin/cursor-cli-oauth/models.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.d.ts +14 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.d.ts.map +1 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.js +58 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/native-bootstrap.js.map +1 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.d.ts +12 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.js +20 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/oauth-login.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/settings.d.ts +11 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/settings.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/settings.js +6 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/settings.js.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/spawn-model.d.ts +3 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/spawn-model.d.ts.map +1 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/spawn-model.js +5 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/spawn-model.js.map +1 -0
- package/dist/core/extensions/builtin/cursor-cli-oauth/stream.d.ts.map +1 -1
- package/dist/core/extensions/builtin/cursor-cli-oauth/stream.js +11 -4
- package/dist/core/extensions/builtin/cursor-cli-oauth/stream.js.map +1 -1
- package/dist/core/extensions/builtin/goal/direct-input-lifecycle.d.ts +8 -0
- package/dist/core/extensions/builtin/goal/direct-input-lifecycle.d.ts.map +1 -1
- package/dist/core/extensions/builtin/goal/direct-input-lifecycle.js +10 -0
- package/dist/core/extensions/builtin/goal/direct-input-lifecycle.js.map +1 -1
- package/dist/core/extensions/builtin/goal/elapsed-ticker.d.ts.map +1 -1
- package/dist/core/extensions/builtin/goal/elapsed-ticker.js +15 -1
- package/dist/core/extensions/builtin/goal/elapsed-ticker.js.map +1 -1
- package/dist/core/extensions/builtin/goal/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/goal/index.js +28 -25
- package/dist/core/extensions/builtin/goal/index.js.map +1 -1
- package/dist/core/extensions/builtin/goal/monitor-continuation.d.ts +9 -0
- package/dist/core/extensions/builtin/goal/monitor-continuation.d.ts.map +1 -1
- package/dist/core/extensions/builtin/goal/monitor-continuation.js +16 -0
- package/dist/core/extensions/builtin/goal/monitor-continuation.js.map +1 -1
- package/dist/core/extensions/builtin/goal/reload-reengagement.d.ts +30 -0
- package/dist/core/extensions/builtin/goal/reload-reengagement.d.ts.map +1 -0
- package/dist/core/extensions/builtin/goal/reload-reengagement.js +36 -0
- package/dist/core/extensions/builtin/goal/reload-reengagement.js.map +1 -0
- package/dist/core/extensions/builtin/goal/stale-context.d.ts +9 -0
- package/dist/core/extensions/builtin/goal/stale-context.d.ts.map +1 -0
- package/dist/core/extensions/builtin/goal/stale-context.js +11 -0
- package/dist/core/extensions/builtin/goal/stale-context.js.map +1 -0
- package/dist/core/extensions/builtin/goal/wait-ticker.d.ts +8 -0
- package/dist/core/extensions/builtin/goal/wait-ticker.d.ts.map +1 -1
- package/dist/core/extensions/builtin/goal/wait-ticker.js +37 -3
- package/dist/core/extensions/builtin/goal/wait-ticker.js.map +1 -1
- package/dist/core/extensions/builtin/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/index.js +2 -0
- package/dist/core/extensions/builtin/index.js.map +1 -1
- package/dist/core/extensions/builtin/loop/command-registration.d.ts +7 -0
- package/dist/core/extensions/builtin/loop/command-registration.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/command-registration.js +13 -0
- package/dist/core/extensions/builtin/loop/command-registration.js.map +1 -0
- package/dist/core/extensions/builtin/loop/command.d.ts +41 -0
- package/dist/core/extensions/builtin/loop/command.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/command.js +281 -0
- package/dist/core/extensions/builtin/loop/command.js.map +1 -0
- package/dist/core/extensions/builtin/loop/cron-planner.d.ts +23 -0
- package/dist/core/extensions/builtin/loop/cron-planner.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/cron-planner.js +88 -0
- package/dist/core/extensions/builtin/loop/cron-planner.js.map +1 -0
- package/dist/core/extensions/builtin/loop/index.d.ts +134 -0
- package/dist/core/extensions/builtin/loop/index.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/index.js +742 -0
- package/dist/core/extensions/builtin/loop/index.js.map +1 -0
- package/dist/core/extensions/builtin/loop/loopfile.d.ts +40 -0
- package/dist/core/extensions/builtin/loop/loopfile.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/loopfile.js +102 -0
- package/dist/core/extensions/builtin/loop/loopfile.js.map +1 -0
- package/dist/core/extensions/builtin/loop/parse.d.ts +45 -0
- package/dist/core/extensions/builtin/loop/parse.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/parse.js +92 -0
- package/dist/core/extensions/builtin/loop/parse.js.map +1 -0
- package/dist/core/extensions/builtin/loop/scheduler.d.ts +225 -0
- package/dist/core/extensions/builtin/loop/scheduler.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/scheduler.js +708 -0
- package/dist/core/extensions/builtin/loop/scheduler.js.map +1 -0
- package/dist/core/extensions/builtin/loop/status.d.ts +24 -0
- package/dist/core/extensions/builtin/loop/status.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/status.js +113 -0
- package/dist/core/extensions/builtin/loop/status.js.map +1 -0
- package/dist/core/extensions/builtin/loop/store.d.ts +49 -0
- package/dist/core/extensions/builtin/loop/store.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/store.js +424 -0
- package/dist/core/extensions/builtin/loop/store.js.map +1 -0
- package/dist/core/extensions/builtin/loop/tick-prompt.d.ts +64 -0
- package/dist/core/extensions/builtin/loop/tick-prompt.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/tick-prompt.js +183 -0
- package/dist/core/extensions/builtin/loop/tick-prompt.js.map +1 -0
- package/dist/core/extensions/builtin/loop/tools.d.ts +122 -0
- package/dist/core/extensions/builtin/loop/tools.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/tools.js +155 -0
- package/dist/core/extensions/builtin/loop/tools.js.map +1 -0
- package/dist/core/extensions/builtin/loop/types.d.ts +206 -0
- package/dist/core/extensions/builtin/loop/types.d.ts.map +1 -0
- package/dist/core/extensions/builtin/loop/types.js +37 -0
- package/dist/core/extensions/builtin/loop/types.js.map +1 -0
- package/dist/core/extensions/builtin/mcp/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/mcp/index.js +12 -1
- package/dist/core/extensions/builtin/mcp/index.js.map +1 -1
- package/dist/core/extensions/builtin/prompt-url-widget.d.ts.map +1 -1
- package/dist/core/extensions/builtin/prompt-url-widget.js +7 -15
- package/dist/core/extensions/builtin/prompt-url-widget.js.map +1 -1
- package/dist/core/extensions/builtin/rules/ui/rules-banner.d.ts.map +1 -1
- package/dist/core/extensions/builtin/rules/ui/rules-banner.js +21 -25
- package/dist/core/extensions/builtin/rules/ui/rules-banner.js.map +1 -1
- package/dist/core/extensions/builtin/todotools/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/todotools/index.js +20 -0
- package/dist/core/extensions/builtin/todotools/index.js.map +1 -1
- package/dist/core/extensions/builtin/todotools/native-todo-mirror.d.ts +3 -0
- package/dist/core/extensions/builtin/todotools/native-todo-mirror.d.ts.map +1 -0
- package/dist/core/extensions/builtin/todotools/native-todo-mirror.js +22 -0
- package/dist/core/extensions/builtin/todotools/native-todo-mirror.js.map +1 -0
- package/dist/core/extensions/builtin/webfetch/webfetch/content.lazy.d.ts +17 -0
- package/dist/core/extensions/builtin/webfetch/webfetch/content.lazy.d.ts.map +1 -0
- package/dist/core/extensions/builtin/webfetch/webfetch/content.lazy.js +22 -0
- package/dist/core/extensions/builtin/webfetch/webfetch/content.lazy.js.map +1 -0
- package/dist/core/extensions/builtin/webfetch/webfetch/tool.js +3 -3
- package/dist/core/extensions/builtin/webfetch/webfetch/tool.js.map +1 -1
- package/dist/core/extensions/index.d.ts +1 -1
- package/dist/core/extensions/index.d.ts.map +1 -1
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/core/extensions/loader.d.ts.map +1 -1
- package/dist/core/extensions/loader.js +10 -5
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/extensions/types.d.ts +30 -3
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/footer-data-provider.d.ts.map +1 -1
- package/dist/core/footer-data-provider.js +5 -10
- package/dist/core/footer-data-provider.js.map +1 -1
- package/dist/core/messages.d.ts +9 -2
- package/dist/core/messages.d.ts.map +1 -1
- package/dist/core/messages.js +13 -18
- package/dist/core/messages.js.map +1 -1
- package/dist/core/model-registry.d.ts +2 -0
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +4 -0
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/model-resolver.d.ts +15 -1
- package/dist/core/model-resolver.d.ts.map +1 -1
- package/dist/core/model-resolver.js +137 -43
- package/dist/core/model-resolver.js.map +1 -1
- package/dist/core/model-runtime.d.ts +7 -0
- package/dist/core/model-runtime.d.ts.map +1 -1
- package/dist/core/model-runtime.js +17 -0
- package/dist/core/model-runtime.js.map +1 -1
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js +8 -4
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/provider-composer.d.ts +8 -0
- package/dist/core/provider-composer.d.ts.map +1 -1
- package/dist/core/provider-composer.js.map +1 -1
- package/dist/core/provider-timeout-retry.d.ts.map +1 -1
- package/dist/core/provider-timeout-retry.js +29 -1
- package/dist/core/provider-timeout-retry.js.map +1 -1
- package/dist/core/remote-catalog-provider.d.ts.map +1 -1
- package/dist/core/remote-catalog-provider.js +2 -1
- package/dist/core/remote-catalog-provider.js.map +1 -1
- package/dist/core/retry-fallback/chains.d.ts +1 -0
- package/dist/core/retry-fallback/chains.d.ts.map +1 -1
- package/dist/core/retry-fallback/chains.js +3 -0
- package/dist/core/retry-fallback/chains.js.map +1 -1
- package/dist/core/retry-fallback/controller.d.ts +2 -0
- package/dist/core/retry-fallback/controller.d.ts.map +1 -1
- package/dist/core/retry-fallback/controller.js.map +1 -1
- package/dist/core/retry-fallback/expansion.d.ts +8 -0
- package/dist/core/retry-fallback/expansion.d.ts.map +1 -1
- package/dist/core/retry-fallback/expansion.js +2 -0
- package/dist/core/retry-fallback/expansion.js.map +1 -1
- package/dist/core/retry-fallback/hint-policy.d.ts +3 -2
- package/dist/core/retry-fallback/hint-policy.d.ts.map +1 -1
- package/dist/core/retry-fallback/hint-policy.js +19 -8
- package/dist/core/retry-fallback/hint-policy.js.map +1 -1
- package/dist/core/retry-fallback/settings.js.map +1 -1
- package/dist/core/sdk.d.ts +5 -0
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +47 -12
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-discovery.d.ts +16 -0
- package/dist/core/session-discovery.d.ts.map +1 -0
- package/dist/core/session-discovery.js +101 -0
- package/dist/core/session-discovery.js.map +1 -0
- package/dist/core/session-manager.d.ts +7 -3
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +19 -176
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/session-record.d.ts +14 -0
- package/dist/core/session-record.d.ts.map +1 -0
- package/dist/core/session-record.js +47 -0
- package/dist/core/session-record.js.map +1 -0
- package/dist/core/session-summary-cache.d.ts +40 -0
- package/dist/core/session-summary-cache.d.ts.map +1 -0
- package/dist/core/session-summary-cache.js +79 -0
- package/dist/core/session-summary-cache.js.map +1 -0
- package/dist/core/session-summary-lru.d.ts +54 -0
- package/dist/core/session-summary-lru.d.ts.map +1 -0
- package/dist/core/session-summary-lru.js +72 -0
- package/dist/core/session-summary-lru.js.map +1 -0
- package/dist/core/session-summary.d.ts +29 -0
- package/dist/core/session-summary.d.ts.map +1 -0
- package/dist/core/session-summary.js +90 -0
- package/dist/core/session-summary.js.map +1 -0
- package/dist/core/settings-manager.d.ts +1 -1
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +14 -3
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/skills.d.ts.map +1 -1
- package/dist/core/skills.js +51 -33
- package/dist/core/skills.js.map +1 -1
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +17 -2
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/extensions/llama/index.d.ts.map +1 -1
- package/dist/extensions/llama/index.js +2 -0
- package/dist/extensions/llama/index.js.map +1 -1
- package/dist/extensions/llama/provider.d.ts.map +1 -1
- package/dist/extensions/llama/provider.js +6 -6
- package/dist/extensions/llama/provider.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/inspector-policy.d.ts +6 -0
- package/dist/inspector-policy.d.ts.map +1 -1
- package/dist/inspector-policy.js +6 -1
- package/dist/inspector-policy.js.map +1 -1
- package/dist/main.d.ts +4 -0
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +10 -4
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -1
- package/dist/modes/interactive/components/earendil-announcement.js +8 -8
- package/dist/modes/interactive/components/earendil-announcement.js.map +1 -1
- package/dist/modes/interactive/components/progressive-transcript-container.d.ts +72 -0
- package/dist/modes/interactive/components/progressive-transcript-container.d.ts.map +1 -0
- package/dist/modes/interactive/components/progressive-transcript-container.js +150 -0
- package/dist/modes/interactive/components/progressive-transcript-container.js.map +1 -0
- package/dist/modes/interactive/components/settings-selector.js +1 -1
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/status-indicator.d.ts +1 -1
- package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
- package/dist/modes/interactive/components/status-indicator.js +8 -2
- package/dist/modes/interactive/components/status-indicator.js.map +1 -1
- package/dist/modes/interactive/editor-paste-transfer.d.ts +10 -1
- package/dist/modes/interactive/editor-paste-transfer.d.ts.map +1 -1
- package/dist/modes/interactive/editor-paste-transfer.js +27 -2
- package/dist/modes/interactive/editor-paste-transfer.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +73 -1
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +562 -128
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/split-trailing-assistant-text.d.ts +7 -0
- package/dist/modes/interactive/split-trailing-assistant-text.d.ts.map +1 -0
- package/dist/modes/interactive/split-trailing-assistant-text.js +19 -0
- package/dist/modes/interactive/split-trailing-assistant-text.js.map +1 -0
- package/dist/modes/interactive/tips/catalog/dag-tips.d.ts +7 -0
- package/dist/modes/interactive/tips/catalog/dag-tips.d.ts.map +1 -0
- package/dist/modes/interactive/tips/catalog/dag-tips.js +57 -0
- package/dist/modes/interactive/tips/catalog/dag-tips.js.map +1 -0
- package/dist/modes/interactive/tips/catalog/memory-tips.d.ts +7 -0
- package/dist/modes/interactive/tips/catalog/memory-tips.d.ts.map +1 -0
- package/dist/modes/interactive/tips/catalog/memory-tips.js +100 -0
- package/dist/modes/interactive/tips/catalog/memory-tips.js.map +1 -0
- package/dist/modes/interactive/tips/registry.d.ts.map +1 -1
- package/dist/modes/interactive/tips/registry.js +4 -0
- package/dist/modes/interactive/tips/registry.js.map +1 -1
- package/dist/senpi +31 -3
- package/dist/utils/management-http.d.ts +5 -3
- package/dist/utils/management-http.d.ts.map +1 -1
- package/dist/utils/management-http.js +14 -10
- package/dist/utils/management-http.js.map +1 -1
- package/docs/compaction.md +17 -0
- package/docs/custom-provider.md +5 -2
- package/docs/extensions.md +11 -2
- package/docs/llama-cpp.md +2 -0
- package/docs/models.md +8 -2
- package/docs/providers.md +9 -6
- package/docs/settings.md +22 -2
- package/docs/skills.md +4 -3
- package/examples/extensions/border-status-editor.ts +1 -1
- package/examples/extensions/git-checkpoint.ts +2 -2
- package/examples/extensions/notify.ts +3 -1
- package/examples/extensions/subagent/index.ts +6 -1
- package/examples/extensions/titlebar-spinner.ts +1 -1
- package/examples/rpc-extension-ui.ts +1 -1
- package/examples/sdk/06-extensions.ts +1 -1
- package/examples/sdk/README.md +1 -1
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-cjs/index.js +38 -13
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-es/index.js +1 -1
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-es/schemas/schemas_0.js +34 -12
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/commands/ConverseCommand.d.ts +29 -0
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/commands/ConverseStreamCommand.d.ts +15 -0
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/commands/CountTokensCommand.d.ts +14 -0
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/index.d.ts +1 -1
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/models/models_0.d.ts +119 -1
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/runtimeConfig.browser.d.ts +46 -46
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/runtimeConfig.d.ts +36 -36
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/runtimeConfig.native.d.ts +48 -48
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/runtimeConfig.shared.d.ts +2 -2
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/schemas/schemas_0.d.ts +3 -0
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/index.d.ts +1 -1
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/models/models_0.d.ts +76 -0
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/runtimeConfig.browser.d.ts +70 -72
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/runtimeConfig.d.ts +68 -68
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/runtimeConfig.native.d.ts +86 -88
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/runtimeConfig.shared.d.ts +3 -3
- package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/schemas/schemas_0.d.ts +3 -0
- package/node_modules/@aws-sdk/client-bedrock-runtime/package.json +14 -14
- package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +1328 -411
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js +8 -5
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJsonRpcProtocol.js +2 -2
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsRestJsonProtocol.js +3 -3
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonSettings.js +1 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonCodec.js +20 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonSettings.js +1 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonShapeDeserializer.js +160 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonShapeSerializer.js +193 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.js +103 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonCodec2.js +20 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.js +200 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonShapeSerializer2.js +519 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/jsonReviver.js +93 -9
- package/node_modules/@aws-sdk/core/dist-types/submodules/client/util-endpoints/lib/aws/partitions.d.ts +54 -54
- package/node_modules/@aws-sdk/core/dist-types/submodules/client/util-user-agent-browser/defaultUserAgent.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/submodules/client/util-user-agent-browser/defaultUserAgent.native.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/submodules/client/util-user-agent-node/defaultUserAgent.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/index.d.ts +9 -6
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_0Protocol.d.ts +3 -2
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_1Protocol.d.ts +3 -2
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +4 -3
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsRestJsonProtocol.d.ts +5 -3
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/JsonSettings.d.ts +7 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonCodec.d.ts +15 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonSettings.d.ts +7 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonShapeDeserializer.d.ts +14 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonShapeSerializer.d.ts +29 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +51 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +13 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.d.ts +30 -0
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonShapeSerializer2.d.ts +60 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/api-extractor-type-index.d.ts +4 -7
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/index.d.ts +61 -21
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConfigResolver.d.ts +13 -27
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConstants.d.ts +4 -16
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/NodeAccountIdEndpointModeConfigOptions.d.ts +5 -14
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/index.d.ts +16 -5
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/emitWarningIfUnsupportedVersion.d.ts +4 -11
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.browser.d.ts +107 -47
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.d.ts +112 -39
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.native.d.ts +107 -48
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/longPollMiddleware.d.ts +13 -14
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-host-header/hostHeaderMiddleware.d.ts +25 -35
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-logger/loggerMiddleware.d.ts +14 -4
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/configuration.d.ts +2 -6
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.browser.d.ts +2 -5
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.d.ts +2 -5
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.browser.d.ts +2 -6
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.d.ts +2 -10
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.native.d.ts +2 -6
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/check-features.d.ts +16 -20
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/configurations.d.ts +21 -44
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/constants.d.ts +7 -7
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/encode-features.d.ts +2 -5
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/user-agent-middleware.d.ts +18 -18
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/awsRegionConfig.d.ts +8 -11
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/extensions.d.ts +14 -16
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.browser.d.ts +1 -4
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.d.ts +7 -14
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.native.d.ts +1 -4
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setCredentialFeature.d.ts +6 -7
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setFeature.d.ts +6 -12
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setTokenFeature.d.ts +6 -7
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/aws.d.ts +2 -2
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.d.ts +4 -5
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/parseArn.d.ts +2 -7
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partition.d.ts +28 -38
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partitions.d.ts +647 -638
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/isIpAddress.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveDefaultAwsRegionalEndpointsConfig.d.ts +29 -56
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveEndpoint.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointError.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointRuleObject.d.ts +6 -1
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/ErrorRuleObject.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/RuleSetObject.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/TreeRuleObject.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/shared.d.ts +12 -1
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/configurations.d.ts +4 -7
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/createUserAgentStringParsingProvider.d.ts +7 -14
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.browser.d.ts +7 -2
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.d.ts +15 -27
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.native.d.ts +10 -18
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/crt-availability.d.ts +3 -8
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/defaultUserAgent.d.ts +14 -28
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.d.ts +2 -6
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/is-crt-available.d.ts +2 -5
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.d.ts +4 -13
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.d.ts +9 -10
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.d.ts +39 -44
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/NODE_AUTH_SCHEME_PREFERENCE_OPTIONS.d.ts +2 -5
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.browser.d.ts +1 -6
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.d.ts +1 -7
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-node-config.d.ts +4 -13
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/index.d.ts +23 -7
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.d.ts +13 -38
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.d.ts +57 -133
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.browser.d.ts +32 -11
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.d.ts +32 -9
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getArrayForCommaSeparatedString.d.ts +1 -8
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getBearerTokenEnvKey.d.ts +1 -6
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getDateHeader.d.ts +2 -8
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.d.ts +1 -8
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.d.ts +6 -26
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/index.d.ts +4 -4
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/isClockSkewed.d.ts +1 -9
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ConfigurableSerdeContext.d.ts +5 -8
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ProtocolLib.d.ts +40 -74
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/UnionSerde.d.ts +9 -24
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/cbor/AwsSmithyRpcV2CborProtocol.d.ts +36 -25
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/coercing-serializers.d.ts +3 -18
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/common.d.ts +5 -2
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/index.d.ts +30 -22
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_0Protocol.d.ts +22 -22
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_1Protocol.d.ts +22 -22
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +50 -29
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsRestJsonProtocol.d.ts +52 -36
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonSettings.d.ts +4 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/awsExpectUnion.d.ts +1 -7
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonCodec.d.ts +11 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonSettings.d.ts +4 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeDeserializer.d.ts +13 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeSerializer.d.ts +18 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +27 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +9 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.d.ts +15 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeSerializer2.d.ts +39 -0
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/detectBufferParsing.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReplacer.d.ts +7 -21
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReviver.d.ts +7 -15
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/needsReviver.d.ts +2 -11
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/parseJsonBody.d.ts +14 -22
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsEc2QueryProtocol.d.ts +18 -27
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsQueryProtocol.d.ts +57 -49
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QuerySerializerSettings.d.ts +7 -13
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QueryShapeSerializer.d.ts +21 -16
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/writeKey.d.ts +1 -4
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/AwsRestXmlProtocol.d.ts +47 -31
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlCodec.d.ts +17 -14
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeDeserializer.d.ts +15 -20
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeSerializer.d.ts +21 -21
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/parseXmlBody.d.ts +4 -13
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/simpleFormatXml.d.ts +1 -6
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/index.d.ts +3 -3
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-arn-parser/arn.d.ts +14 -32
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-format-url/format-url.d.ts +4 -2
- package/node_modules/@aws-sdk/core/package.json +6 -6
- package/node_modules/@aws-sdk/credential-provider-env/package.json +5 -5
- package/node_modules/@aws-sdk/credential-provider-http/package.json +7 -7
- package/node_modules/@aws-sdk/credential-provider-ini/package.json +13 -13
- package/node_modules/@aws-sdk/credential-provider-login/dist-cjs/index.js +35 -28
- package/node_modules/@aws-sdk/credential-provider-login/dist-es/LoginCredentialsFetcher.js +35 -28
- package/node_modules/@aws-sdk/credential-provider-login/dist-types/LoginCredentialsFetcher.d.ts +1 -0
- package/node_modules/@aws-sdk/credential-provider-login/dist-types/ts3.4/LoginCredentialsFetcher.d.ts +1 -0
- package/node_modules/@aws-sdk/credential-provider-login/package.json +6 -6
- package/node_modules/@aws-sdk/credential-provider-node/package.json +11 -11
- package/node_modules/@aws-sdk/credential-provider-process/package.json +5 -5
- package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/package.json +6 -6
- package/node_modules/@aws-sdk/credential-provider-sso/package.json +7 -7
- package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +6 -6
- package/node_modules/@aws-sdk/eventstream-handler-node/package.json +4 -4
- package/node_modules/@aws-sdk/middleware-eventstream/package.json +4 -4
- package/node_modules/@aws-sdk/middleware-websocket/package.json +7 -7
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +1 -1
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.browser.d.ts +42 -42
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.d.ts +42 -42
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.native.d.ts +41 -41
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.shared.d.ts +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.browser.d.ts +43 -43
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.d.ts +43 -43
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.native.d.ts +42 -42
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.shared.d.ts +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.browser.d.ts +42 -42
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.d.ts +42 -42
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.native.d.ts +41 -41
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.shared.d.ts +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.browser.d.ts +42 -42
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.d.ts +42 -42
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.native.d.ts +41 -41
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.shared.d.ts +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.browser.d.ts +44 -44
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.d.ts +35 -35
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.native.d.ts +43 -43
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.shared.d.ts +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.browser.d.ts +64 -66
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.d.ts +65 -65
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.native.d.ts +68 -70
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.shared.d.ts +3 -3
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.browser.d.ts +67 -69
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.d.ts +66 -66
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.native.d.ts +71 -73
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.shared.d.ts +3 -3
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.browser.d.ts +64 -66
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.d.ts +65 -65
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.native.d.ts +68 -70
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.shared.d.ts +3 -3
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.browser.d.ts +64 -66
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.d.ts +65 -65
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.native.d.ts +68 -70
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.shared.d.ts +3 -3
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.browser.d.ts +68 -70
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.d.ts +68 -68
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.native.d.ts +72 -74
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.shared.d.ts +3 -3
- package/node_modules/@aws-sdk/nested-clients/package.json +8 -8
- package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +4 -4
- package/node_modules/@aws-sdk/token-providers/package.json +6 -6
- package/node_modules/@aws-sdk/types/package.json +2 -2
- package/node_modules/@aws-sdk/xml-builder/package.json +2 -2
- package/node_modules/@bufbuild/protobuf/README.md +12 -15
- package/node_modules/@bufbuild/protobuf/dist/commonjs/create.js +199 -162
- package/node_modules/@bufbuild/protobuf/dist/commonjs/from-binary.js +321 -153
- package/node_modules/@bufbuild/protobuf/dist/commonjs/from-json.js +601 -303
- package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/message.d.ts +49 -0
- package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/message.js +157 -0
- package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/reflect-check.d.ts +27 -1
- package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/reflect-check.js +80 -56
- package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/reflect.js +3 -80
- package/node_modules/@bufbuild/protobuf/dist/commonjs/registry.js +12 -3
- package/node_modules/@bufbuild/protobuf/dist/commonjs/to-binary.d.ts +4 -0
- package/node_modules/@bufbuild/protobuf/dist/commonjs/to-binary.js +365 -127
- package/node_modules/@bufbuild/protobuf/dist/commonjs/to-json.js +393 -159
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/base64-encoding.d.ts +3 -1
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/base64-encoding.js +40 -8
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/binary-encoding.d.ts +37 -19
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/binary-encoding.js +281 -85
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/index.d.ts +1 -1
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/index.js +4 -1
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/text-encoding.d.ts +19 -2
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/text-encoding.js +47 -13
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/varint.d.ts +4 -4
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/varint.js +35 -23
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wkt/json.d.ts +28 -0
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wkt/json.js +44 -0
- package/node_modules/@bufbuild/protobuf/dist/commonjs/wkt/wrappers.js +12 -12
- package/node_modules/@bufbuild/protobuf/dist/esm/create.js +199 -162
- package/node_modules/@bufbuild/protobuf/dist/esm/from-binary.js +321 -153
- package/node_modules/@bufbuild/protobuf/dist/esm/from-json.js +602 -304
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/message.d.ts +49 -0
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/message.js +152 -0
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect-check.d.ts +27 -1
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect-check.js +79 -57
- package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect.js +1 -78
- package/node_modules/@bufbuild/protobuf/dist/esm/registry.js +12 -3
- package/node_modules/@bufbuild/protobuf/dist/esm/to-binary.d.ts +4 -0
- package/node_modules/@bufbuild/protobuf/dist/esm/to-binary.js +365 -127
- package/node_modules/@bufbuild/protobuf/dist/esm/to-json.js +393 -159
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/base64-encoding.d.ts +3 -1
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/base64-encoding.js +40 -8
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.d.ts +37 -19
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.js +283 -87
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/index.d.ts +1 -1
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/index.js +1 -1
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/text-encoding.d.ts +19 -2
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/text-encoding.js +46 -13
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/varint.d.ts +4 -4
- package/node_modules/@bufbuild/protobuf/dist/esm/wire/varint.js +35 -23
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/json.d.ts +28 -0
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/json.js +41 -0
- package/node_modules/@bufbuild/protobuf/dist/esm/wkt/wrappers.js +12 -12
- package/node_modules/@bufbuild/protobuf/package.json +2 -2
- package/node_modules/@code-yeongyu/senpi-codemode/CHANGELOG.md +64 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-string-parser/LICENSE +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-string-parser/README.md +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-string-parser/lib/index.d.ts +41 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-string-parser/lib/index.js +287 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-string-parser/lib/index.js.map +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-string-parser/package.json +31 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/LICENSE +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/README.md +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/lib/identifier-browser.js +63 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/lib/identifier-browser.js.map +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/lib/identifier.js +61 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/lib/identifier.js.map +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/lib/index.d.ts +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/lib/index.js +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/lib/index.js.map +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/helper-validator-identifier/package.json +45 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/parser/LICENSE +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/parser/README.md +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/parser/bin/babel-parser.js +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/parser/lib/index.d.ts +1035 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/parser/lib/index.js +14276 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/parser/lib/index.js.map +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/parser/package.json +57 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/parser/typings/babel-parser.d.ts +624 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/types/LICENSE +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/types/README.md +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/types/lib/index-legacy.d.ts +2743 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/types/lib/index.d.ts +3643 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/types/lib/index.js +11178 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/types/lib/index.js.flow +2596 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/types/lib/index.js.map +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/@babel/types/package.json +38 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/compile/code.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/compile/code.mjs +65 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/compile/compile.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/compile/compile.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/compile/index.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/compile/index.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/compile/validator.d.mts +35 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/compile/validator.mjs +91 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/error/errors.d.mts +208 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/error/errors.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/error/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/error/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/_idna.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/_idna.mjs +246 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/_puny.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/_puny.mjs +77 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/_registry.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/_registry.mjs +96 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/date.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/date.mjs +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/date_time.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/date_time.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/duration.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/duration.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/email.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/email.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/format.d.mts +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/format.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/hostname.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/hostname.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/idn_email.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/idn_email.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/idn_hostname.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/idn_hostname.mjs +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/index.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/index.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/ipv4.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/ipv4.mjs +38 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/ipv6.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/ipv6.mjs +67 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/iri.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/iri.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/iri_reference.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/iri_reference.mjs +60 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/json_pointer.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/json_pointer.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/json_pointer_uri_fragment.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/json_pointer_uri_fragment.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/regex.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/regex.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/relative_json_pointer.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/relative_json_pointer.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/time.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/time.mjs +27 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/uri.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/uri.mjs +135 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/uri_reference.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/uri_reference.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/uri_template.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/uri_template.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/url.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/url.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/uuid.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/format/uuid.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/emit.d.mts +56 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/emit.mjs +193 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/globals.d.mts +35 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/globals.mjs +90 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/guard.d.mts +71 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/guard.mjs +233 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/index.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/index.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/native.d.mts +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/native.mjs +60 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/string.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/guard/string.mjs +176 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/index.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/index.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/build.d.mts +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/build.mjs +118 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/check.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/check.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/compile.d.mts +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/compile.mjs +46 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_context.d.mts +35 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_context.mjs +129 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_exact_optional.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_exact_optional.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_externals.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_externals.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_functions.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_functions.mjs +65 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_reducer.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_reducer.mjs +45 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_refine.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_refine.mjs +29 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_stack.d.mts +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_stack.mjs +107 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_unique.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/_unique.mjs +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/additionalItems.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/additionalItems.mjs +60 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/additionalProperties.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/additionalProperties.mjs +110 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/allOf.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/allOf.mjs +47 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/anyOf.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/anyOf.mjs +52 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/boolean.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/boolean.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/const.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/const.mjs +30 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/contains.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/contains.mjs +54 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/dependencies.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/dependencies.mjs +45 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/dependentRequired.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/dependentRequired.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/dependentSchemas.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/dependentSchemas.mjs +38 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/dynamicRef.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/dynamicRef.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/enum.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/enum.mjs +33 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/exclusiveMaximum.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/exclusiveMaximum.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/exclusiveMinimum.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/exclusiveMinimum.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/format.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/format.mjs +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/if.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/if.mjs +47 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/index.d.mts +48 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/index.mjs +54 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/items.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/items.mjs +88 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maxContains.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maxContains.mjs +42 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maxItems.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maxItems.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maxLength.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maxLength.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maxProperties.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maxProperties.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maximum.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/maximum.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minContains.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minContains.mjs +51 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minItems.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minItems.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minLength.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minLength.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minProperties.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minProperties.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minimum.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/minimum.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/multipleOf.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/multipleOf.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/not.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/not.mjs +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/oneOf.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/oneOf.mjs +59 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/pattern.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/pattern.mjs +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/patternProperties.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/patternProperties.mjs +44 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/prefixItems.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/prefixItems.mjs +35 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/properties.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/properties.mjs +75 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/propertyNames.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/propertyNames.mjs +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/recursiveRef.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/recursiveRef.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/ref.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/ref.mjs +52 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/required.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/required.mjs +32 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/schema.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/schema.mjs +347 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/type.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/type.mjs +70 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/unevaluatedItems.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/unevaluatedItems.mjs +51 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/unevaluatedProperties.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/unevaluatedProperties.mjs +51 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/uniqueItems.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/engine/uniqueItems.mjs +51 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/errors.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/errors.mjs +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/index.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/index.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/parse.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/parse.mjs +27 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/pointer/index.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/pointer/index.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/pointer/pointer.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/pointer/pointer.mjs +106 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/pointer/pointer_get.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/pointer/pointer_get.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/resolve/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/resolve/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/resolve/ref.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/resolve/ref.mjs +146 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/resolve/resolve.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/resolve/resolve.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/schema.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/schema.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/_canonical.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/_canonical.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/_comparer.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/_comparer.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/_elements.d.mts +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/_elements.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/additionalProperties.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/additionalProperties.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/allOf.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/allOf.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/anyOf.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/anyOf.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/const.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/const.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/enum.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/enum.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/if.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/if.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/items.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/items.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/oneOf.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/oneOf.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/patternProperties.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/patternProperties.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/prefixItems.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/prefixItems.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/properties.d.mts +32 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/properties.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/ref.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/ref.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/required.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/required.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/schema.d.mts +56 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/schema.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/static.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/static.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/type.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/type.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/unevaluatedProperties.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/static/unevaluatedProperties.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/_refine.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/_refine.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/additionalItems.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/additionalItems.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/additionalProperties.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/additionalProperties.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/allOf.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/allOf.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/anchor.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/anchor.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/anyOf.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/anyOf.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/const.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/const.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/contains.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/contains.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/contentEncoding.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/contentEncoding.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/contentMediaType.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/contentMediaType.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/default.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/default.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/defs.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/defs.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dependencies.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dependencies.mjs +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dependentRequired.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dependentRequired.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dependentSchemas.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dependentSchemas.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dynamicAnchor.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dynamicAnchor.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dynamicRef.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/dynamicRef.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/else.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/else.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/enum.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/enum.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/exclusiveMaximum.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/exclusiveMaximum.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/exclusiveMinimum.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/exclusiveMinimum.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/format.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/format.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/id.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/id.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/if.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/if.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/index.d.mts +53 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/index.mjs +59 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/items.d.mts +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/items.mjs +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maxContains.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maxContains.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maxItems.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maxItems.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maxLength.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maxLength.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maxProperties.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maxProperties.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maximum.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/maximum.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minContains.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minContains.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minItems.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minItems.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minLength.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minLength.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minProperties.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minProperties.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minimum.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/minimum.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/multipleOf.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/multipleOf.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/not.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/not.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/oneOf.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/oneOf.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/pattern.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/pattern.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/patternProperties.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/patternProperties.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/prefixItems.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/prefixItems.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/properties.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/properties.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/propertyNames.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/propertyNames.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/recursiveAnchor.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/recursiveAnchor.mjs +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/recursiveRef.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/recursiveRef.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/ref.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/ref.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/required.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/required.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/schema.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/schema.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/then.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/then.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/type.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/type.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/unevaluatedItems.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/unevaluatedItems.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/unevaluatedProperties.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/unevaluatedProperties.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/uniqueItems.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/schema/types/uniqueItems.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/arguments/arguments.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/arguments/arguments.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/arguments/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/arguments/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/environment/environment.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/environment/environment.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/environment/evaluate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/environment/evaluate.mjs +37 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/environment/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/environment/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/hashing/hash.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/hashing/hash.mjs +232 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/hashing/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/hashing/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/index.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/index.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/_config.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/_config.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/_locale.d.mts +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/_locale.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ar_001.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ar_001.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/bn_BD.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/bn_BD.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/cs_CZ.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/cs_CZ.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/de_DE.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/de_DE.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/el_GR.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/el_GR.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/en_US.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/en_US.mjs +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/es_419.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/es_419.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/es_AR.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/es_AR.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/es_ES.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/es_ES.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/es_MX.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/es_MX.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/fa_IR.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/fa_IR.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/fil_PH.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/fil_PH.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/fr_CA.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/fr_CA.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/fr_FR.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/fr_FR.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ha_NG.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ha_NG.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/hi_IN.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/hi_IN.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/hu_HU.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/hu_HU.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/id_ID.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/id_ID.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/it_IT.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/it_IT.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ja_JP.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ja_JP.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ko_KR.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ko_KR.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ms_MY.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ms_MY.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/nl_NL.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/nl_NL.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/pl_PL.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/pl_PL.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/pt_BR.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/pt_BR.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/pt_PT.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/pt_PT.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ro_RO.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ro_RO.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ru_RU.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ru_RU.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/sv_SE.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/sv_SE.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/sw_TZ.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/sw_TZ.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/th_TH.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/th_TH.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/tr_TR.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/tr_TR.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/uk_UA.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/uk_UA.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ur_PK.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/ur_PK.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/vi_VN.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/vi_VN.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/yo_NG.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/yo_NG.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/zh_Hans.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/zh_Hans.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/zh_Hant.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/locale/zh_Hant.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/assign.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/assign.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/clone.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/clone.mjs +110 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/create.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/create.mjs +30 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/discard.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/discard.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/memory.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/memory.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/metrics.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/metrics.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/update.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/memory/update.mjs +32 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/settings/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/settings/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/settings/settings.d.mts +71 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/settings/settings.mjs +34 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/system.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/system.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/unreachable/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/unreachable/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/unreachable/unreachable.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/system/unreachable/unreachable.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_add_immutable.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_add_immutable.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_add_optional.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_add_optional.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_add_readonly.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_add_readonly.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_remove_immutable.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_remove_immutable.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_remove_optional.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_remove_optional.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_remove_readonly.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/_remove_readonly.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/capitalize.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/capitalize.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/conditional.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/conditional.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/constructor_parameters.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/constructor_parameters.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/evaluate.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/evaluate.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/exclude.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/exclude.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/extract.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/extract.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/index.d.mts +30 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/index.mjs +30 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/indexed.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/indexed.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/instance_type.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/instance_type.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/interface.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/interface.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/keyof.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/keyof.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/lowercase.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/lowercase.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/mapped.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/mapped.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/module.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/module.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/non_nullable.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/non_nullable.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/omit.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/omit.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/parameters.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/parameters.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/partial.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/partial.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/pick.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/pick.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/readonly_object.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/readonly_object.mjs +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/required.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/required.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/return_type.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/return_type.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/uncapitalize.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/uncapitalize.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/uppercase.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/uppercase.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/with.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/action/with.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/call/distribute_arguments.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/call/distribute_arguments.mjs +53 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/call/instantiate.d.mts +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/call/instantiate.mjs +49 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/call/resolve_arguments.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/call/resolve_arguments.mjs +33 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/call/resolve_target.d.mts +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/call/resolve_target.mjs +27 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/conditional/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/conditional/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/conditional/instantiate.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/conditional/instantiate.mjs +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/constructor_parameters/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/constructor_parameters/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/candidates.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/candidates.mjs +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/check.d.mts +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/check.mjs +45 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/dependencies.d.mts +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/dependencies.mjs +47 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/extends.d.mts +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/extends.mjs +47 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/index.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/index.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/instantiate.d.mts +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/instantiate.mjs +31 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/target.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/cyclic/target.mjs +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/enum/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/enum/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/enum/typescript_enum_to_enum_values.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/enum/typescript_enum_to_enum_values.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/broaden.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/broaden.mjs +43 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/compare.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/compare.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/composite.d.mts +34 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/composite.mjs +67 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/distribute.d.mts +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/distribute.mjs +45 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/evaluate.d.mts +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/evaluate.mjs +53 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/flatten.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/flatten.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/index.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/index.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/instantiate.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/instantiate.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/narrow.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/evaluate/narrow.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/exclude/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/exclude/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/exclude/instantiate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/exclude/instantiate.mjs +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/exclude/operation.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/exclude/operation.mjs +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/extract/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/extract/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/extract/instantiate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/extract/instantiate.mjs +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/extract/operation.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/extract/operation.mjs +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/helpers/index.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/helpers/index.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/helpers/keys.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/helpers/keys.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/helpers/keys_to_indexer.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/helpers/keys_to_indexer.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/helpers/union.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/helpers/union.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/immutable/instantiate_add.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/immutable/instantiate_add.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/immutable/instantiate_remove.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/immutable/instantiate_remove.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/index.d.mts +31 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/index.mjs +37 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_cyclic.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_cyclic.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_dependent.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_dependent.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_enum.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_enum.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_intersect.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_intersect.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_literal.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_literal.mjs +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_template_literal.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_template_literal.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_type.d.mts +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_type.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_union.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/from_union.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/to_indexable.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/to_indexable.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/to_indexable_keys.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexable/to_indexable_keys.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/array_indexer.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/array_indexer.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/from_array.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/from_array.mjs +35 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/from_object.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/from_object.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/from_tuple.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/from_tuple.mjs +35 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/from_type.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/from_type.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/instantiate.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/indexed/instantiate.mjs +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/instance_type/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/instance_type/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/instance_type/instantiate.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/instance_type/instantiate.mjs +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/instantiate.d.mts +178 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/instantiate.mjs +158 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/interface/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/interface/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/interface/instantiate.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/interface/instantiate.mjs +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/from_literal.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/from_literal.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/from_type.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/from_type.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/from_union.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/from_union.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/instantiate.d.mts +38 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/instantiate.mjs +52 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/mapping.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/intrinsics/mapping.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_any.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_any.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_array.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_array.mjs +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_object.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_object.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_record.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_record.mjs +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_tuple.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_tuple.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_type.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/from_type.mjs +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/instantiate.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/keyof/instantiate.mjs +29 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/mapped/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/mapped/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/mapped/instantiate.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/mapped/instantiate.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/mapped/mapped_operation.d.mts +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/mapped/mapped_operation.mjs +42 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/mapped/mapped_variants.d.mts +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/mapped/mapped_variants.mjs +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/module/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/module/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/module/instantiate.d.mts +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/module/instantiate.mjs +36 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/non_nullable/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/non_nullable/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/non_nullable/instantiate.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/non_nullable/instantiate.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/collapse.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/collapse.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_cyclic.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_cyclic.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_dependent.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_dependent.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_intersect.d.mts +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_intersect.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_object.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_object.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_tuple.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_tuple.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_type.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_type.mjs +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_union.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/from_union.mjs +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/object/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/omit/from_type.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/omit/from_type.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/omit/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/omit/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/omit/instantiate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/omit/instantiate.mjs +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/optional/instantiate_add.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/optional/instantiate_add.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/optional/instantiate_remove.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/optional/instantiate_remove.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/parameters/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/parameters/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/parameters/instantiate.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/parameters/instantiate.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_cyclic.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_cyclic.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_dependent.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_dependent.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_intersect.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_intersect.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_object.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_object.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_type.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_type.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_union.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/from_union.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/instantiate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/partial/instantiate.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/patterns/index.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/patterns/index.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/patterns/pattern.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/patterns/pattern.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/patterns/template.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/patterns/template.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/pick/from_type.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/pick/from_type.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/pick/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/pick/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/pick/instantiate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/pick/instantiate.mjs +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/priority/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/priority/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/priority/priority.d.mts +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/priority/priority.mjs +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly/instantiate_add.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly/instantiate_add.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly/instantiate_remove.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly/instantiate_remove.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_array.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_array.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_cyclic.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_cyclic.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_dependent.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_dependent.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_intersect.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_intersect.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_object.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_object.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_tuple.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_tuple.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_type.d.mts +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_type.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_union.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/from_union.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/instantiate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/readonly_object/instantiate.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key.d.mts +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key.mjs +40 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_any.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_any.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_boolean.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_boolean.mjs +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_enum.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_enum.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_integer.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_integer.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_intersect.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_intersect.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_literal.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_literal.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_number.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_number.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_string.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_string.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_template_literal.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_template_literal.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_union.d.mts +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/from_key_union.mjs +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/instantiate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/instantiate.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/record_create.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/record/record_create.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/ref/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/ref/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/ref/instantiate.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/ref/instantiate.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_cyclic.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_cyclic.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_dependent.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_dependent.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_intersect.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_intersect.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_object.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_object.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_type.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_type.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_union.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/from_union.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/instantiate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/required/instantiate.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/rest/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/rest/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/rest/spread.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/rest/spread.mjs +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/return_type/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/return_type/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/return_type/instantiate.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/return_type/instantiate.mjs +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/create.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/create.mjs +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/decode.d.mts +30 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/decode.mjs +81 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/encode.d.mts +33 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/encode.mjs +81 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/index.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/index.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/instantiate.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/instantiate.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/is_finite.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/is_finite.mjs +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/is_pattern.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/is_pattern.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/static.d.mts +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/template_literal/static.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/this/expand_this.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/this/expand_this.mjs +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/tuple/to_object.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/tuple/to_object.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/with/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/with/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/with/instantiate.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/engine/with/instantiate.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/any.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/any.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/array.d.mts +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/array.mjs +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/bigint.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/bigint.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/boolean.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/boolean.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/constructor.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/constructor.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/dependent.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/dependent.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/enum.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/enum.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/extends.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/extends.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/extends_left.d.mts +53 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/extends_left.mjs +80 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/extends_right.d.mts +27 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/extends_right.mjs +49 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/function.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/function.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/index.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/index.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/inference.d.mts +34 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/inference.mjs +62 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/integer.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/integer.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/intersect.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/intersect.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/literal.d.mts +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/literal.mjs +44 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/never.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/never.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/null.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/null.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/number.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/number.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/object.d.mts +32 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/object.mjs +109 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/parameters.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/parameters.mjs +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/record.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/record.mjs +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/result.d.mts +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/result.mjs +36 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/return_type.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/return_type.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/string.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/string.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/symbol.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/symbol.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/template_literal.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/template_literal.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/tuple.d.mts +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/tuple.mjs +61 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/undefined.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/undefined.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/union.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/union.mjs +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/unknown.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/unknown.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/void.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/extends/void.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/index.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/index.mjs +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/mapping.d.mts +353 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/mapping.mjs +535 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/parser.d.mts +262 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/parser.mjs +136 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/script.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/script.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/bigint.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/bigint.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/const.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/const.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/ident.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/ident.mjs +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/index.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/index.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/integer.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/integer.mjs +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/char.d.mts +75 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/char.mjs +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/guard.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/guard.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/many.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/many.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/match.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/match.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/optional.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/optional.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/take.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/take.mjs +30 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/trim.d.mts +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/internal/trim.mjs +34 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/number.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/number.mjs +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/rest.d.mts +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/rest.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/span.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/span.mjs +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/string.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/string.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/unsigned_integer.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/unsigned_integer.mjs +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/unsigned_number.d.mts +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/unsigned_number.mjs +38 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/until.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/until.mjs +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/until_1.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/script/token/until_1.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_codec.d.mts +30 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_codec.mjs +60 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_immutable.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_immutable.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_optional.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_optional.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_readonly.d.mts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_readonly.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_refine.d.mts +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/_refine.mjs +36 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/any.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/any.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/array.d.mts +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/array.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/bigint.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/bigint.mjs +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/boolean.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/boolean.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/call.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/call.mjs +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/constructor.d.mts +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/constructor.mjs +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/cyclic.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/cyclic.mjs +29 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/deferred.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/deferred.mjs +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/dependent.d.mts +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/dependent.mjs +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/enum.d.mts +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/enum.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/function.d.mts +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/function.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/generic.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/generic.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/identifier.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/identifier.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/index.d.mts +45 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/index.mjs +51 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/infer.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/infer.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/integer.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/integer.mjs +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/intersect.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/intersect.mjs +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/literal.d.mts +31 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/literal.mjs +62 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/never.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/never.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/null.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/null.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/number.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/number.mjs +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/object.d.mts +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/object.mjs +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/parameter.d.mts +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/parameter.mjs +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/properties.d.mts +43 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/properties.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/record.d.mts +52 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/record.mjs +66 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/ref.d.mts +19 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/ref.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/rest.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/rest.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/schema.d.mts +176 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/schema.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/static.d.mts +45 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/static.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/string.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/string.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/symbol.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/symbol.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/template_literal.d.mts +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/template_literal.mjs +37 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/this.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/this.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/tuple.d.mts +38 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/tuple.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/undefined.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/undefined.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/union.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/union.mjs +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/unknown.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/unknown.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/unsafe.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/unsafe.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/void.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/type/types/void.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/typebox.d.mts +69 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/typebox.mjs +85 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/assert/assert.d.mts +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/assert/assert.mjs +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/assert/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/assert/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/check/check.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/check/check.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/check/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/check/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/additional.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/additional.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/clean.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/clean.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_array.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_array.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_cyclic.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_cyclic.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_intersect.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_intersect.mjs +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_object.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_object.mjs +31 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_record.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_record.mjs +32 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_ref.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_ref.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_tuple.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_tuple.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_type.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_type.mjs +21 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_union.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/from_union.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clean/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clone/clone.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clone/clone.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clone/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/clone/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/callback.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/callback.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/decode.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/decode.mjs +52 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/encode.d.mts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/encode.mjs +52 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_array.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_array.mjs +35 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_cyclic.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_cyclic.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_intersect.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_intersect.mjs +58 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_object.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_object.mjs +42 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_record.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_record.mjs +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_ref.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_ref.mjs +31 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_tuple.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_tuple.mjs +32 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_type.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_type.mjs +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_union.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/from_union.mjs +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/has.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/has.mjs +93 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/index.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/codec/index.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/convert.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/convert.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_additional.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_additional.mjs +18 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_array.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_array.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_bigint.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_bigint.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_boolean.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_boolean.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_cyclic.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_cyclic.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_enum.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_enum.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_integer.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_integer.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_intersect.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_intersect.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_literal.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_literal.mjs +44 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_null.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_null.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_number.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_number.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_object.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_object.mjs +28 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_record.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_record.mjs +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_ref.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_ref.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_string.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_string.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_template_literal.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_template_literal.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_tuple.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_tuple.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_type.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_type.mjs +43 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_undefined.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_undefined.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_union.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_union.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_void.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/from_void.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_array.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_array.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_bigint.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_bigint.mjs +45 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_boolean.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_boolean.mjs +41 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_null.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_null.mjs +44 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_number.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_number.mjs +44 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_result.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_result.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_string.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_string.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_undefined.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/convert/try/try_undefined.mjs +44 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/create.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/create.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/error.d.mts +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/error.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_array.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_array.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_bigint.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_bigint.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_boolean.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_boolean.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_constructor.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_constructor.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_cyclic.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_cyclic.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_default.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_default.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_enum.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_enum.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_function.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_function.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_integer.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_integer.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_intersect.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_intersect.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_literal.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_literal.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_never.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_never.mjs +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_null.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_null.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_number.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_number.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_object.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_object.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_record.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_record.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_ref.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_ref.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_string.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_string.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_symbol.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_symbol.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_template_literal.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_template_literal.mjs +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_tuple.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_tuple.mjs +5 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_type.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_type.mjs +61 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_undefined.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_undefined.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_union.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_union.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_void.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/from_void.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/index.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/create/index.mjs +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/default.d.mts +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/default.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_array.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_array.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_cyclic.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_cyclic.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_default.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_default.mjs +13 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_intersect.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_intersect.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_object.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_object.mjs +32 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_record.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_record.mjs +26 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_ref.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_ref.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_tuple.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_tuple.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_type.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_type.mjs +25 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_union.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/from_union.mjs +14 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/default/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/delta/diff.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/delta/diff.mjs +135 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/delta/edit.d.mts +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/delta/edit.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/delta/index.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/delta/index.mjs +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/delta/patch.d.mts +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/delta/patch.mjs +42 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/equal/equal.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/equal/equal.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/equal/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/equal/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/errors/errors.d.mts +16 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/errors/errors.mjs +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/errors/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/errors/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/hash/hash.d.mts +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/hash/hash.mjs +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/hash/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/hash/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/index.d.mts +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/index.mjs +29 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/parse/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/parse/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/parse/parse.d.mts +11 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/parse/parse.mjs +47 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/pipeline/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/pipeline/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/pipeline/pipeline.d.mts +10 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/pipeline/pipeline.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/pointer/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/pointer/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/error.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/error.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_array.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_array.mjs +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_enum.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_enum.mjs +6 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_intersect.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_intersect.mjs +8 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_object.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_object.mjs +33 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_record.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_record.mjs +33 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_ref.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_ref.mjs +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_template_literal.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_template_literal.mjs +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_tuple.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_tuple.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_type.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_type.mjs +88 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_union.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_union.mjs +24 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_unknown.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/from_unknown.mjs +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/index.d.mts +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/index.mjs +1 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/repair.d.mts +17 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/repair/repair.mjs +20 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/shared/index.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/shared/index.mjs +4 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/shared/optional_undefined.d.mts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/shared/optional_undefined.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/shared/union_priority_sort.d.mts +7 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/shared/union_priority_sort.mjs +72 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/shared/union_score_select.d.mts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/shared/union_score_select.mjs +51 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/value.d.mts +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/build/value/value.mjs +15 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/license +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/package.json +87 -0
- package/node_modules/@code-yeongyu/senpi-codemode/node_modules/typebox/readme.md +363 -0
- package/node_modules/@code-yeongyu/senpi-codemode/package.json +4 -4
- package/node_modules/@code-yeongyu/senpi-codemode/src/tool/render.ts +11 -5
- package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts +3 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +94 -20
- package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts +7 -4
- package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/agent.js +12 -3
- package/node_modules/@earendil-works/pi-agent-core/dist/agent.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/assistant-terminal-state.d.ts +8 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/assistant-terminal-state.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/assistant-terminal-state.js +25 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/assistant-terminal-state.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts +3 -2
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js +13 -3
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.js +14 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/proxy.d.ts +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/proxy.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/proxy.js +1 -0
- package/node_modules/@earendil-works/pi-agent-core/dist/proxy.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts +9 -2
- package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/types.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/package.json +6 -6
- package/node_modules/@earendil-works/pi-ai/README.md +5 -3
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts +7 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +21 -4
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts +2 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js +7 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js +39 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/gen/agent_pb.d.ts +22 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/gen/agent_pb.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/gen/agent_pb.js +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/gen/agent_pb.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/reasoning-params.d.ts +20 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/reasoning-params.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/reasoning-params.js +26 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/reasoning-params.js.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/types.d.ts +7 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/types.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent/types.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.d.ts +7 -3
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.js +363 -218
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-conversation-rotation.d.ts +37 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-conversation-rotation.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-conversation-rotation.js +110 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-conversation-rotation.js.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-task-args.d.ts +3 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-task-args.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-task-args.js +17 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/cursor-task-args.js.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.d.ts +2 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js +14 -11
- package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts +5 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js +16 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.d.ts +2 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js +13 -10
- package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js +4 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js +4 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +45 -29
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js +8 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/pi-messages.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts +4 -0
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js +18 -9
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/device-code.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js +22 -9
- package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/github-copilot.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/cursor/catalog-grouping.d.ts +25 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/catalog-grouping.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/catalog-grouping.js +134 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/catalog-grouping.js.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/cursor-variant-aliases.json +1893 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/model-capabilities.d.ts +47 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/model-capabilities.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/model-capabilities.js +208 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/model-capabilities.js.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/selection-descriptor.d.ts +21 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/selection-descriptor.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/selection-descriptor.js +99 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/selection-descriptor.js.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/store-migration.d.ts +8 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/store-migration.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/store-migration.js +76 -0
- package/node_modules/@earendil-works/pi-ai/dist/cursor/store-migration.js.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/index.d.ts +5 -1
- package/node_modules/@earendil-works/pi-ai/dist/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/index.js +4 -0
- package/node_modules/@earendil-works/pi-ai/dist/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/model.d.ts +13 -0
- package/node_modules/@earendil-works/pi-ai/dist/model.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/model.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/models.d.ts +6 -0
- package/node_modules/@earendil-works/pi-ai/dist/models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/models.js +9 -1
- package/node_modules/@earendil-works/pi-ai/dist/models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cursor.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cursor.js +40 -11
- package/node_modules/@earendil-works/pi-ai/dist/providers/cursor.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/amazon-bedrock.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/anthropic.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/baseten.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/github-copilot.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai-codex.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode-go.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-individual.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-ams.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-cn.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-sgp.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai-coding-cn.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai.json +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/xai.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/xai.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js +1 -5
- package/node_modules/@earendil-works/pi-ai/dist/providers/xai.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.js +2 -0
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/tool-resolver.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/tool-resolver.js +21 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/tool-resolver.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.js +2 -1
- package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/recovery-message-snapshot.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +45 -4
- package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts +30 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js +48 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/pi-user-agent.d.ts +2 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/pi-user-agent.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/pi-user-agent.js +7 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/pi-user-agent.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/prompt-cache-ttl.d.ts +2 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/prompt-cache-ttl.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/prompt-cache-ttl.js +2 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/prompt-cache-ttl.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/package.json +8 -9
- package/node_modules/@earendil-works/pi-pty/dist/loader.d.ts +6 -0
- package/node_modules/@earendil-works/pi-pty/dist/loader.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-pty/dist/loader.js +11 -0
- package/node_modules/@earendil-works/pi-pty/dist/loader.js.map +1 -1
- package/node_modules/@earendil-works/pi-pty/dist/quarantine.d.ts +15 -0
- package/node_modules/@earendil-works/pi-pty/dist/quarantine.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-pty/dist/quarantine.js +27 -0
- package/node_modules/@earendil-works/pi-pty/dist/quarantine.js.map +1 -0
- package/node_modules/@earendil-works/pi-pty/package.json +2 -2
- package/node_modules/@earendil-works/pi-telemetry/package.json +2 -2
- package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts +73 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/editor.js +173 -17
- package/node_modules/@earendil-works/pi-tui/dist/components/editor.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/text.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/text.js +5 -4
- package/node_modules/@earendil-works/pi-tui/dist/components/text.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/editor-component.d.ts +69 -0
- package/node_modules/@earendil-works/pi-tui/dist/editor-component.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/editor-component.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/image-markers.d.ts +46 -0
- package/node_modules/@earendil-works/pi-tui/dist/image-markers.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-tui/dist/image-markers.js +130 -0
- package/node_modules/@earendil-works/pi-tui/dist/image-markers.js.map +1 -0
- package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +1 -0
- package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/index.js +2 -0
- package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/paste-markers.d.ts +3 -0
- package/node_modules/@earendil-works/pi-tui/dist/paste-markers.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/paste-markers.js +23 -7
- package/node_modules/@earendil-works/pi-tui/dist/paste-markers.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js +5 -1
- package/node_modules/@earendil-works/pi-tui/dist/tui-alt-screen.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/package.json +1 -1
- package/node_modules/@smithy/core/dist-cjs/submodules/cbor/index.js +1562 -339
- package/node_modules/@smithy/core/dist-cjs/submodules/event-streams/index.browser.js +23 -23
- package/node_modules/@smithy/core/dist-cjs/submodules/event-streams/index.js +23 -23
- package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +17 -13
- package/node_modules/@smithy/core/dist-cjs/submodules/schema/index.js +0 -10
- package/node_modules/@smithy/core/dist-es/submodules/cbor/CborCodec.js +4 -205
- package/node_modules/@smithy/core/dist-es/submodules/cbor/SmithyRpcV2CborProtocol.js +1 -2
- package/node_modules/@smithy/core/dist-es/submodules/cbor/cbor-encode.js +1 -1
- package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v1/CborShapeDeserializer.js +113 -0
- package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v1/CborShapeSerializer.js +103 -0
- package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v2/CborShapeDeserializer2.js +621 -0
- package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v2/CborShapeSerializer2.js +602 -0
- package/node_modules/@smithy/core/dist-es/submodules/cbor/index.js +5 -1
- package/node_modules/@smithy/core/dist-es/submodules/event-streams/EventStreamSerde.js +4 -4
- package/node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/HeaderMarshaller.js +19 -19
- package/node_modules/@smithy/core/dist-es/submodules/protocols/RpcProtocol.js +3 -4
- package/node_modules/@smithy/core/dist-es/submodules/protocols/middleware-content-length/contentLengthMiddleware.js +6 -4
- package/node_modules/@smithy/core/dist-es/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.js +8 -5
- package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/ListSchema.js +0 -2
- package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/MapSchema.js +0 -2
- package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/OperationSchema.js +0 -2
- package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/SimpleSchema.js +0 -2
- package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/StructureSchema.js +0 -2
- package/node_modules/@smithy/core/dist-types/submodules/cbor/CborCodec.d.ts +5 -27
- package/node_modules/@smithy/core/dist-types/submodules/cbor/SmithyRpcV2CborProtocol.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v1/CborShapeDeserializer.d.ts +13 -0
- package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v1/CborShapeSerializer.d.ts +15 -0
- package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v2/CborShapeDeserializer2.d.ts +18 -0
- package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v2/CborShapeSerializer2.d.ts +35 -0
- package/node_modules/@smithy/core/dist-types/submodules/cbor/index.d.ts +5 -1
- package/node_modules/@smithy/core/dist-types/submodules/client/smithy-client/extensions/defaultExtensionConfiguration.d.ts +1 -7
- package/node_modules/@smithy/core/dist-types/submodules/config/config-resolver/regionConfig/checkRegion.d.ts +2 -1
- package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/evaluateCondition.d.ts +1 -1
- package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/evaluateConditions.d.ts +1 -1
- package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/evaluateExpression.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/evaluateRules.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/getEndpointProperties.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/getReferenceValue.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/submodules/event-streams/EventStreamSerde.d.ts +14 -2
- package/node_modules/@smithy/core/dist-types/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.d.ts +7 -2
- package/node_modules/@smithy/core/dist-types/submodules/retry/util-retry/retries-2026-config.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/submodules/schema/TypeRegistry.d.ts +1 -1
- package/node_modules/@smithy/core/dist-types/submodules/serde/parse-utils.d.ts +5 -5
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/CborCodec.d.ts +5 -27
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/SmithyRpcV2CborProtocol.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v1/CborShapeDeserializer.d.ts +13 -0
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v1/CborShapeSerializer.d.ts +15 -0
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v2/CborShapeDeserializer2.d.ts +18 -0
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v2/CborShapeSerializer2.d.ts +35 -0
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/index.d.ts +5 -1
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/client/smithy-client/extensions/defaultExtensionConfiguration.d.ts +1 -7
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/config/config-resolver/regionConfig/checkRegion.d.ts +2 -1
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/evaluateCondition.d.ts +1 -1
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/evaluateConditions.d.ts +1 -1
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/evaluateExpression.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/evaluateRules.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/getEndpointProperties.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/getReferenceValue.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/event-streams/EventStreamSerde.d.ts +14 -2
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.d.ts +7 -2
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/retry/util-retry/retries-2026-config.d.ts +2 -2
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/schema/TypeRegistry.d.ts +1 -1
- package/node_modules/@smithy/core/dist-types/ts3.4/submodules/serde/parse-utils.d.ts +5 -5
- package/node_modules/@smithy/core/package.json +4 -11
- package/node_modules/@smithy/credential-provider-imds/package.json +4 -12
- package/node_modules/@smithy/fetch-http-handler/package.json +5 -13
- package/node_modules/@smithy/node-http-handler/dist-cjs/index.js +9 -2
- package/node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js +9 -2
- package/node_modules/@smithy/node-http-handler/dist-types/node-http2-handler.d.ts +1 -1
- package/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-handler.d.ts +1 -1
- package/node_modules/@smithy/node-http-handler/package.json +5 -13
- package/node_modules/@smithy/signature-v4/dist-cjs/index.js +9 -9
- package/node_modules/@smithy/signature-v4/dist-es/HeaderFormatter.js +9 -9
- package/node_modules/@smithy/signature-v4/package.json +4 -12
- package/node_modules/@smithy/types/dist-types/schema/sentinels.d.ts +14 -14
- package/node_modules/@smithy/types/package.json +29 -39
- package/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/node/child_process.d.ts +0 -1
- package/node_modules/@types/node/crypto.d.ts +7 -7
- package/node_modules/@types/node/dns/promises.d.ts +5 -5
- package/node_modules/@types/node/dns.d.ts +5 -5
- package/node_modules/@types/node/fs.d.ts +7 -0
- package/node_modules/@types/node/http.d.ts +30 -0
- package/node_modules/@types/node/http2.d.ts +4 -4
- package/node_modules/@types/node/os.d.ts +30 -30
- package/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/node/perf_hooks.d.ts +2 -1
- package/node_modules/@types/node/process.d.ts +42 -43
- package/node_modules/@types/node/quic.d.ts +1049 -84
- package/node_modules/@types/node/sqlite.d.ts +14 -1
- package/node_modules/@types/node/stream/iter.d.ts +3 -2
- package/node_modules/@types/node/test.d.ts +61 -0
- package/node_modules/@types/node/v8.d.ts +20 -23
- package/package.json +36 -36
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonCodec.js +0 -20
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeDeserializer.js +0 -160
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeSerializer.js +0 -190
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/experimental/BufferJsonShapeDeserializer.js +0 -180
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/experimental/ByteJsonShapeSerializer.js +0 -483
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/JsonCodec.d.ts +0 -19
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/JsonShapeDeserializer.d.ts +0 -13
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/JsonShapeSerializer.d.ts +0 -28
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/experimental/BufferJsonShapeDeserializer.d.ts +0 -29
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/experimental/ByteJsonShapeSerializer.d.ts +0 -57
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonCodec.d.ts +0 -19
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeDeserializer.d.ts +0 -13
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeSerializer.d.ts +0 -28
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/BufferJsonShapeDeserializer.d.ts +0 -29
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/ByteJsonShapeSerializer.d.ts +0 -57
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/LICENSE +0 -201
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/README.md +0 -9
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-cjs/index.js +0 -840
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/build-abort-error.js +0 -19
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/constants.js +0 -1
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/get-transformed-headers.js +0 -9
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/http2/ClientHttp2SessionRef.js +0 -50
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/index.js +0 -3
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js +0 -241
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js +0 -136
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-pool.js +0 -46
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http2-handler.js +0 -173
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http2.js +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-https.js +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/set-connection-timeout.js +0 -36
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/set-request-timeout.js +0 -21
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/set-socket-keep-alive.js +0 -22
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/set-socket-timeout.js +0 -23
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/timing.js +0 -4
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/write-request-body.js +0 -63
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/build-abort-error.d.ts +0 -10
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/constants.d.ts +0 -5
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/get-transformed-headers.d.ts +0 -4
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/http2/ClientHttp2SessionRef.d.ts +0 -46
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/index.d.ts +0 -3
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http-handler.d.ts +0 -47
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts +0 -46
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-pool.d.ts +0 -36
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http2-handler.d.ts +0 -76
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http2.d.ts +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-https.d.ts +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/set-connection-timeout.d.ts +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/set-request-timeout.d.ts +0 -6
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/set-socket-keep-alive.d.ts +0 -6
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/set-socket-timeout.d.ts +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/timing.d.ts +0 -9
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/build-abort-error.d.ts +0 -10
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/constants.d.ts +0 -5
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/get-transformed-headers.d.ts +0 -4
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/http2/ClientHttp2SessionRef.d.ts +0 -46
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/index.d.ts +0 -3
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http-handler.d.ts +0 -47
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-connection-manager.d.ts +0 -46
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-connection-pool.d.ts +0 -36
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-handler.d.ts +0 -76
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2.d.ts +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-https.d.ts +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-connection-timeout.d.ts +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-request-timeout.d.ts +0 -6
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-socket-keep-alive.d.ts +0 -6
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-socket-timeout.d.ts +0 -2
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/timing.d.ts +0 -9
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/write-request-body.d.ts +0 -12
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/write-request-body.d.ts +0 -12
- package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/package.json +0 -64
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/LICENSE +0 -201
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/README.md +0 -9
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-cjs/index.js +0 -840
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/build-abort-error.js +0 -19
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/constants.js +0 -1
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/get-transformed-headers.js +0 -9
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/http2/ClientHttp2SessionRef.js +0 -50
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/index.js +0 -3
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js +0 -241
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js +0 -136
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-pool.js +0 -46
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http2-handler.js +0 -173
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http2.js +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-https.js +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/set-connection-timeout.js +0 -36
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/set-request-timeout.js +0 -21
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/set-socket-keep-alive.js +0 -22
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/set-socket-timeout.js +0 -23
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/timing.js +0 -4
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/write-request-body.js +0 -63
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/build-abort-error.d.ts +0 -10
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/constants.d.ts +0 -5
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/get-transformed-headers.d.ts +0 -4
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/http2/ClientHttp2SessionRef.d.ts +0 -46
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/index.d.ts +0 -3
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http-handler.d.ts +0 -47
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts +0 -46
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-pool.d.ts +0 -36
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http2-handler.d.ts +0 -76
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http2.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-https.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/set-connection-timeout.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/set-request-timeout.d.ts +0 -6
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/set-socket-keep-alive.d.ts +0 -6
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/set-socket-timeout.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/timing.d.ts +0 -9
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/build-abort-error.d.ts +0 -10
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/constants.d.ts +0 -5
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/get-transformed-headers.d.ts +0 -4
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/http2/ClientHttp2SessionRef.d.ts +0 -46
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/index.d.ts +0 -3
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http-handler.d.ts +0 -47
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-connection-manager.d.ts +0 -46
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-connection-pool.d.ts +0 -36
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-handler.d.ts +0 -76
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-https.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-connection-timeout.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-request-timeout.d.ts +0 -6
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-socket-keep-alive.d.ts +0 -6
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-socket-timeout.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/timing.d.ts +0 -9
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/write-request-body.d.ts +0 -12
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/write-request-body.d.ts +0 -12
- package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/package.json +0 -64
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EACN,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,aAAa,GACb,MAAM,IAAI,CAAC;AACZ,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,WAAW,IAAI,kBAAkB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAA2B,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAE3F,iFAAiF;AACjF,8EAA8E;AAC9E,SAAS,MAAM;IACd,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG;QACX,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACnD,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACnD,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACnD,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACnD,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QAClD,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QAC1C,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACzD,KAAK,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACvC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACzD,KAAK,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACvC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;KACrE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACX,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;AAChH,CAAC;AAED,OAAO,EAGN,0BAA0B,EAC1B,8BAA8B,EAC9B,mBAAmB,GACnB,MAAM,eAAe,CAAC;AAEvB,MAAM,sBAAsB,GAAG,IAAI,OAAO,EAAkB,CAAC;AAE7D,8FAA8F;AAC9F,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAA2B,CAAC;AAEpE,SAAS,kBAAkB,CAAyB,OAAe,EAAE,OAAU;IAC9E,sBAAsB,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,wBAAwB,CAAC,OAAqB;IAC7D,OAAO,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC5C,CAAC;AAWD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAwLzC,SAAS,eAAe;IACvB,OAAO,MAAM,EAAE,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC9C,IAAI,CAAC,8CAA8C,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CACd,yIAAyI,CACzI,CAAC;IACH,CAAC;AACF,CAAC;AAED,kEAAkE;AAClE,SAAS,UAAU,CAAC,IAAkC;IACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9B,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO,EAAE,CAAC;IAC9B,CAAC;IACD,sDAAsD;IACtD,OAAO,UAAU,EAAE,CAAC;AACrB,CAAC;AAED,yEAAyE;AACzE,SAAS,aAAa,CAAC,OAAoB;IAC1C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,IAAI,MAAM,GAAkB,IAAI,CAAC;IAEjC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YAClB,SAAS;QACV,CAAC;QAED,KAAK,CAAC,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAC3B,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC;QACxB,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC;QAElB,iEAAiE;QACjE,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,KAA2D,CAAC;YACzE,IAAI,OAAO,IAAI,CAAC,mBAAmB,KAAK,QAAQ,EAAE,CAAC;gBAClD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACtD,IAAI,WAAW,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACnD,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC,EAAE,CAAC;gBACxC,CAAC;gBACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;YACjC,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED,4EAA4E;AAC5E,SAAS,aAAa,CAAC,OAAoB;IAC1C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YAClB,SAAS;QACV,CAAC;QAED,+CAA+C;QAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,KAA4B,CAAC;YAC9C,IAAI,QAAQ,CAAC,OAAO,IAAK,QAAQ,CAAC,OAA4B,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBACtF,QAAQ,CAAC,OAA4B,CAAC,IAAI,GAAG,QAAQ,CAAC;YACxD,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,SAAS,uBAAuB,CAAC,OAAoB;IACpD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAA8B,CAAC;IACtF,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,CAAC,CAAC;IAErC,IAAI,OAAO,IAAI,uBAAuB;QAAE,OAAO,KAAK,CAAC;IAErD,IAAI,OAAO,GAAG,CAAC;QAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACxC,IAAI,OAAO,GAAG,CAAC;QAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAExC,OAAO,IAAI,CAAC;AACb,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,qBAAqB,CAAC,OAAoB;IACzD,uBAAuB,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,mBAAmB,CAAC,OAAe;IAClD,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,SAAS;QAC3B,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAc,CAAC;YAC5C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACR,uBAAuB;QACxB,CAAC;IACF,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAuB;IAC/D,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACtC,OAAO,OAAO,CAAC,CAAC,CAAoB,CAAC;QACtC,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,SAAS,eAAe,CAAC,OAAuB,EAAE,IAAgC;IACjF,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC9C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,SAAS,gBAAgB,CACxB,OAAuB,EACvB,MAAsB,EACtB,IAAgC;IAEhC,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC7C,IAAI,IAA8B,CAAC;IACnC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACX,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACZ,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,KAAK,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACX,CAAC;IAED,MAAM,IAAI,GAAmB,EAAE,CAAC;IAChC,IAAI,OAAO,GAA6B,IAAI,CAAC;IAC7C,OAAO,OAAO,EAAE,CAAC;QAChB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,CAAC;IACf,OAAO,IAAI,CAAC;AACb,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAoB;IACtD,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,KAAK,GAAiD,IAAI,CAAC;IAC/D,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,kFAAkF;IAClF,kFAAkF;IAClF,oFAAoF;IACpF,oFAAoF;IACpF,IAAI,wBAAwB,GAAG,aAAa,CAAC;IAE7C,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;YAC5C,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;QACrC,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACjC,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACzB,wBAAwB,GAAG,aAAa,CAAC;oBACzC,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;wBACrD,KAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,gBAAgB,EAAE,OAAO,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;oBAC9E,CAAC;gBACF,CAAC;gBACD,kBAAkB,GAAG,IAAI,CAAC;YAC3B,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;gBAC/C,IAAI,kBAAkB;oBAAE,aAAa,GAAG,wBAAwB,CAAC;gBACjE,kBAAkB,GAAG,KAAK,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACP,2EAA2E;gBAC3E,0EAA0E;gBAC1E,kBAAkB,GAAG,KAAK,CAAC;gBAC3B,KAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;YAC9D,CAAC;QACF,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAClG,KAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC5E,CAAC;IACF,CAAC;IAED,8EAA8E;IAC9E,wEAAwE;IACxE,IAAI,kBAAkB;QAAE,aAAa,GAAG,wBAAwB,CAAC;IAEjE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,6BAA6B,CAAC,KAAmB;IAChE,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,uEAAuE;QACvE,oEAAoE;QACpE,IACC,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,CAAC;YAC1F,OAAO,CAAC,OAAO,IAAI,IAAI,EACtB,CAAC;YACF,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACrC,OAAO;YACN,kBAAkB,CACjB,KAAK,CAAC,EAAE,EACR,mBAAmB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CACzG;SACD,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACtD,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,0BAA0B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACjH,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QACjC,OAAO;YACN,kBAAkB,CACjB,KAAK,CAAC,EAAE,EACR,8BAA8B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CACjG;SACD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACX,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAClC,OAAuB,EACvB,MAAsB,EACtB,IAAgC;IAEhC,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACrD,IAAI,UAAU,GAA2B,IAAI,CAAC;IAE9C,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACjC,UAAU,GAAG,KAAK,CAAC;QACpB,CAAC;IACF,CAAC;IAED,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,CAAC;IAC5E,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,cAAc,GAAmB,CAAC,UAAU,CAAC,CAAC;IACpD,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACtB,sEAAsE;QACtE,sEAAsE;QACtE,iEAAiE;QACjE,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;YAAE,SAAS;QAC1C,IAAI,KAAK,CAAC,EAAE,KAAK,UAAU,CAAC,gBAAgB,EAAE,CAAC;YAC9C,cAAc,GAAG,IAAI,CAAC;QACvB,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACpB,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IACD,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC;IACtD,OAAO,cAAc,CAAC;AACvB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAClC,OAAuB,EACvB,MAAsB,EACtB,IAAgC;IAEhC,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACrD,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IACnG,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,SAAS,wBAAwB,CAAC,GAAW,EAAE,WAAmB,kBAAkB,EAAE;IACrF,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,gBAAgB,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,KAAK,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC;IACpF,OAAO,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAW,EAAE,WAAmB,kBAAkB,EAAE;IACxF,MAAM,UAAU,GAAG,wBAAwB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC3D,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7B,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,UAAU,CAAC;AACnB,CAAC;AAED,MAAM,wBAAwB,GAAG,IAAI,GAAG,IAAI,CAAC;AAC7C,MAAM,+BAA+B,GAAG,IAAI,CAAC;AAC7C,8FAA8F;AAC9F,MAAM,6BAA6B,GAAG,IAAI,GAAG,IAAI,CAAC;AAElD,MAAM,2BAA4B,SAAQ,KAAK;IAC9C,YAAY,QAAgB;QAC3B,KAAK,CAAC,0BAA0B,6BAA6B,qBAAqB,QAAQ,EAAE,CAAC,CAAC;QAC9F,IAAI,CAAC,IAAI,GAAG,6BAA6B,CAAC;IAC3C,CAAC;CACD;AAED,SAAS,qBAAqB,CAAC,IAAY;IAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,CAAC;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAc,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACR,uBAAuB;QACvB,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IACnD,MAAM,gBAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;QAAE,OAAO,EAAE,CAAC;IAE7C,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,MAAM,EAAE,GAAG,QAAQ,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAC3C,IAAI,CAAC;QACJ,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;QAC5D,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,OAAO,IAAI,EAAE,CAAC;YACb,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC/D,IAAI,SAAS,KAAK,CAAC;gBAAE,MAAM;YAE3B,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;YACxD,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,IAAI,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACpD,OAAO,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC5B,MAAM,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;gBAC5E,IAAI,KAAK;oBAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC/B,SAAS,GAAG,YAAY,GAAG,CAAC,CAAC;gBAC7B,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,UAAU;YAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC;YAAS,CAAC;QACV,SAAS,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACzC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QAChE,OAAO,EAAE,CAAC;IACX,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,2BAA2B,CAAC,IAAY;IAChD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,SAAS,CAAC;IACnC,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,OAAQ,KAA0B,CAAC,EAAE,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAChG,OAAO,KAAK,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAgB;IAC1C,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACnC,IAAI,CAAC;QACJ,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;QACnE,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,OAAO,YAAY,GAAG,6BAA6B,EAAE,CAAC;YACrD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,6BAA6B,GAAG,YAAY,CAAC,CAAC;YACzF,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;YAC5D,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gBACrB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC/B,OAAO,2BAA2B,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;YACjE,CAAC;YACD,YAAY,IAAI,SAAS,CAAC;YAE1B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;YAC3D,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,IAAI,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAClD,OAAO,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC5B,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;gBACtD,MAAM,MAAM,GAAG,2BAA2B,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBAChE,IAAI,MAAM,KAAK,SAAS;oBAAE,OAAO,MAAM,CAAC;gBACxC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;gBACtB,SAAS,GAAG,YAAY,GAAG,CAAC,CAAC;gBAC7B,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAC/C,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QACzC,CAAC;QAED,4EAA4E;QAC5E,2EAA2E;QAC3E,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACtD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAC/B,OAAO,2BAA2B,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;QACjE,CAAC;QACD,MAAM,IAAI,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;YAAS,CAAC;QACV,SAAS,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;AACF,CAAC;AAED,SAAS,6BAA6B,CAAC,QAAgB;IACtD,IAAI,CAAC;QACJ,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACR,4EAA4E;QAC5E,yEAAyE;QACzE,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAqB;IACjD,MAAM,GAAG,GAAI,MAA4B,CAAC,GAAG,CAAC;IAC9C,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAuB,EAAE,WAAmB;IACtE,OAAO,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC;AAC5E,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,qBAAqB,CAAC,UAAkB,EAAE,GAAY;IACrE,MAAM,kBAAkB,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,IAAI,CAAC;QACJ,MAAM,KAAK,GAAG,WAAW,CAAC,kBAAkB,CAAC;aAC3C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;aACnC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;aACvC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,6BAA6B,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACtE,MAAM,CACN,CAAC,IAAI,EAAmD,EAAE,CACzD,IAAI,CAAC,MAAM,KAAK,IAAI;YACpB,CAAC,CAAC,WAAW,IAAI,iBAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC,CACnF;aACA,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;aAC1D,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAExD,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACR,6EAA6E;QAC7E,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAqB;IAClD,OAAO,OAAQ,OAAmB,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,IAAI,OAAO,CAAC;AAC9E,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAgB;IAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAChC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,OAAO,CAAC;IAChB,CAAC;IACD,OAAO,OAAO;SACZ,MAAM,CAAC,CAAC,KAAK,EAAwB,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;SAC9D,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;SAC1B,IAAI,CAAC,GAAG,CAAC,CAAC;AACb,CAAC;AAED,SAAS,sBAAsB,CAAC,KAA0B;IACzD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IACrD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,SAAS,CAAC;IAE9E,MAAM,YAAY,GAAI,OAAkC,CAAC,SAAS,CAAC;IACnE,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IAC9C,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACJ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,MAAM,GAAyB,IAAI,CAAC;QACxC,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,YAAY,GAAG,EAAE,CAAC;QACtB,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,IAAwB,CAAC;QAC7B,IAAI,gBAAoC,CAAC;QAEzC,MAAM,EAAE,GAAG,eAAe,CAAC;YAC1B,KAAK,EAAE,gBAAgB,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;YACvD,SAAS,EAAE,QAAQ;SACnB,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACb,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;oBAAE,OAAO,IAAI,CAAC;gBAC1C,MAAM,GAAG,KAAK,CAAC;gBACf,SAAS;YACV,CAAC;YAED,+DAA+D;YAC/D,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBACnC,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;YACxC,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;gBAAE,SAAS;YACvC,YAAY,EAAE,CAAC;YAEf,MAAM,YAAY,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YACnD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;gBACtC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;YAClE,CAAC;YAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YAC9B,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;gBAAE,SAAS;YAC7C,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW;gBAAE,SAAS;YAEtE,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,WAAW;gBAAE,SAAS;YAE3B,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC9B,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC9C,YAAY,GAAG,WAAW,CAAC;YAC5B,CAAC;QACF,CAAC;QAED,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,MAAM,GAAG,GAAG,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,MAAM,iBAAiB,GAAG,MAAM,CAAC,aAAa,CAAC;QAC/C,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QACrG,MAAM,QAAQ,GACb,OAAO,gBAAgB,KAAK,QAAQ,IAAI,gBAAgB,GAAG,CAAC;YAC3D,CAAC,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC;YAC5B,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC1B,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC;gBACtB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;QAEjB,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,GAAG;YACH,IAAI;YACJ,iBAAiB;YACjB,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YACnC,QAAQ;YACR,YAAY;YACZ,YAAY,EAAE,YAAY,IAAI,eAAe;YAC7C,eAAe,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;SACtC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAID,MAAM,iCAAiC,GAAG,EAAE,CAAC;AAE7C,KAAK,UAAU,gCAAgC,CAC9C,KAAe,EACf,QAAoB;IAEpB,MAAM,OAAO,GAA2B,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAiB,CAAC;IAC1C,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,MAAM,SAAS,GAAG,GAAS,EAAE;QAC5B,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,IAAI,IAAmB,CAAC;QACxB,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC;aAC3B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;QACvB,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;QACvB,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACb,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACtB,QAAQ,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;QACJ,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF,OAAO,SAAS,GAAG,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACtD,OAAO,SAAS,GAAG,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,GAAG,iCAAiC,EAAE,CAAC;YACtF,SAAS,EAAE,CAAC;QACb,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,mBAAmB,CACjC,GAAW,EACX,UAAgC,EAChC,cAAc,GAAG,CAAC,EAClB,aAAsB;IAEtB,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACtF,MAAM,KAAK,GAAG,aAAa,IAAI,KAAK,CAAC,MAAM,CAAC;QAE5C,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,OAAO,GAAG,MAAM,gCAAgC,CAAC,KAAK,EAAE,GAAG,EAAE;YAClE,MAAM,EAAE,CAAC;YACT,UAAU,EAAE,CAAC,cAAc,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QACH,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,IAAI,EAAE,CAAC;gBACV,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;QACF,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,6BAA6B;IAC9B,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,OAAO,cAAc;IAsC1B,YACC,GAAW,EACX,UAAkB,EAClB,WAA+B,EAC/B,OAAgB,EAChB,iBAAqC,EACrC,oBAAkC;QA3C3B,cAAS,GAAW,EAAE,CAAC;QAKvB,YAAO,GAAY,KAAK,CAAC;QACzB,gBAAW,GAAgB,EAAE,CAAC;QAC9B,SAAI,GAA8B,IAAI,GAAG,EAAE,CAAC;QACpD,yEAAyE;QACzE,uEAAuE;QACvE,2EAA2E;QAC3E,8EAA8E;QACtE,oBAAe,GAAwB,IAAI,GAAG,EAAE,CAAC;QACjD,0BAAqB,GAAG,IAAI,OAAO,EAAoD,CAAC;QACxF,eAAU,GAAwB,IAAI,GAAG,EAAE,CAAC;QAC5C,wBAAmB,GAAwB,IAAI,GAAG,EAAE,CAAC;QACrD,WAAM,GAAkB,IAAI,CAAC;QAC7B,kBAAa,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAClD,6EAA6E;QAC7E,uFAAuF;QAC/E,kBAAa,GAAG,CAAC,CAAC;QAClB,iBAAY,GAAyD,IAAI,CAAC;QAC1E,gBAAW,GAAgF,IAAI,CAAC;QAChG,qBAAgB,GAAuB,SAAS,CAAC;QACzD,wEAAwE;QACxE,wEAAwE;QACxE,uEAAuE;QACvE,qEAAqE;QAC7D,gBAAW,GAAgB;YAClC,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,SAAS,EAAE,CAAC;YACZ,UAAU,EAAE,CAAC;YACb,IAAI,EAAE,CAAC;YACP,kBAAkB,EAAE,SAAS;SAC7B,CAAC;QAUD,IAAI,CAAC,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,OAAO,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAChE,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QACpC,CAAC;IACF,CAAC;IAED,yEAAyE;IACzE,cAAc,CAAC,WAAmB;QACjC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IAEO,eAAe,CAAC,WAAmB,EAAE,oBAAkC;QAC9E,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,GAAG,oBAAoB,IAAI,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAEjF,0EAA0E;YAC1E,0EAA0E;YAC1E,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnC,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;gBACtC,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;oBACrC,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,aAAa,YAAY,EAAE,CAAC,CAAC;gBACrF,CAAC;gBACD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC;gBAChC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,OAAO;YACR,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAA8B,CAAC;YAC/F,IAAI,CAAC,SAAS,GAAG,MAAM,EAAE,EAAE,IAAI,eAAe,EAAE,CAAC;YAEjD,IAAI,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/C,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,CAAC;YAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1F,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,CAAC;aAAM,CAAC;YACP,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;YACtC,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC,CAAC,6CAA6C;QAC/E,CAAC;IACF,CAAC;IAED,UAAU,CAAC,OAA2B;QACrC,IAAI,OAAO,EAAE,EAAE,KAAK,SAAS,EAAE,CAAC;YAC/B,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,OAAO,EAAE,EAAE,IAAI,eAAe,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAkB;YAC7B,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,uBAAuB;YAChC,EAAE,EAAE,IAAI,CAAC,SAAS;YAClB,SAAS;YACT,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,aAAa,EAAE,OAAO,EAAE,aAAa;SACrC,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAClB,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG;YAClB,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,SAAS,EAAE,CAAC;YACZ,UAAU,EAAE,CAAC;YACb,IAAI,EAAE,CAAC;YACP,kBAAkB,EAAE,SAAS;SAC7B,CAAC;QACF,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QAErB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACtD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,GAAG,aAAa,IAAI,IAAI,CAAC,SAAS,QAAQ,CAAC,CAAC;QAC3F,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAEO,WAAW;QAClB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAClB,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG;YAClB,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,SAAS,EAAE,CAAC;YACZ,UAAU,EAAE,CAAC;YACb,IAAI,EAAE,CAAC;YACP,kBAAkB,EAAE,SAAS;SAC7B,CAAC;QACF,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACzD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;gBAAE,SAAS;YACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC/B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBACnC,kDAAkD;gBAClD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;YACzD,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC5B,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBACjB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;oBACjD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;gBAC/D,CAAC;qBAAM,CAAC;oBACP,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACvC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACjD,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAEO,YAAY;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAC/C,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC;YACJ,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtC,aAAa,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;YACjF,CAAC;QACF,CAAC;gBAAS,CAAC;YACV,SAAS,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;IACF,CAAC;IAED,WAAW;QACV,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,MAAM;QACL,OAAO,IAAI,CAAC,GAAG,CAAC;IACjB,CAAC;IAED,aAAa;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED,qBAAqB;QACpB,OAAO,IAAI,CAAC,UAAU,KAAK,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;IAED,YAAY;QACX,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,qBAAqB;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,QAAQ,CAAC,KAAmB;QAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE7D,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QAC1G,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACP,yEAAyE;gBACzE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,CAAC;YACD,OAAO;QACR,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC;gBACJ,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBAClC,aAAa,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC7E,CAAC;YACF,CAAC;oBAAS,CAAC;gBACV,SAAS,CAAC,EAAE,CAAC,CAAC;YACf,CAAC;YACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACrB,CAAC;aAAM,CAAC;YACP,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACzE,CAAC;IACF,CAAC;IAEO,YAAY,CAAC,KAAmB;QACvC,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QAC/C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC9B,CAAC;IAEO,iBAAiB,CAAC,KAAmB;QAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACxD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACzB,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC3F,CAAC;QACF,CAAC;QACD,OAAO,YAAY,CAAC;IACrB,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,KAAmB;QAC3C,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW;YAAE,OAAO;QAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAClC,0EAA0E;QAC1E,iEAAiE;QACjE,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;QACtC,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;QACxC,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC;QAC9C,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC;QAChD,MAAM,kBAAkB,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC;QAC5E,IAAI,CAAC,WAAW,CAAC,kBAAkB;YAClC,kBAAkB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,kBAAkB,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,CAAC;IAED;;;OAGG;IACH,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,OAAuD;QACpE,MAAM,KAAK,GAAwB;YAClC,IAAI,EAAE,SAAS;YACf,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO;SACP,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzB,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,KAAK,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,iFAAiF;IACjF,uBAAuB,CAAC,OAAqB;QAC5C,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,sFAAsF;IACtF,aAAa,CAAC,OAAe;QAC5B,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,oGAAoG;IACpG,yBAAyB,CAAC,aAAqB;QAC9C,MAAM,KAAK,GAA6B;YACvC,IAAI,EAAE,uBAAuB;YAC7B,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,aAAa;SACb,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,2FAA2F;IAC3F,iBAAiB,CAChB,QAAgB,EAChB,OAAe,EACf,MAAuC,EACvC,gBAAyB,EACzB,eAAwB;QAExB,MAAM,KAAK,GAAqB;YAC/B,IAAI,EAAE,cAAc;YACpB,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ;YACR,OAAO;YACP,MAAM;YACN,gBAAgB;YAChB,eAAe;SACf,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,iGAAiG;IACjG,gBAAgB,CACf,OAAe,EACf,gBAAwB,EACxB,YAAoB,EACpB,OAAW,EACX,QAAkB,EAClB,KAAa;QAEb,MAAM,KAAK,GAAuB;YACjC,IAAI,EAAE,YAAY;YAClB,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO;YACP,gBAAgB;YAChB,YAAY;YACZ,OAAO;YACP,KAAK;YACL,QAAQ;SACR,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,4GAA4G;IAC5G,iBAAiB,CAAC,UAAkB,EAAE,IAAc;QACnD,MAAM,KAAK,GAAgB;YAC1B,IAAI,EAAE,QAAQ;YACd,UAAU;YACV,IAAI;YACJ,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACnC,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,0EAA0E;IAC1E,iBAAiB,CAAC,IAAY;QAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3D,MAAM,KAAK,GAAqB;YAC/B,IAAI,EAAE,cAAc;YACpB,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,IAAI,EAAE,aAAa;SACnB,CAAC;QACF,IAAI,CAAC,gBAAgB,GAAG,aAAa,IAAI,SAAS,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,EAAE,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,cAAc;QACb,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC9B,CAAC;IAED;;;;;;;OAOG;IACH,wBAAwB,CACvB,UAAkB,EAClB,OAAgD,EAChD,OAAgB,EAChB,OAAW;QAEX,MAAM,KAAK,GAA0B;YACpC,IAAI,EAAE,gBAAgB;YACtB,UAAU;YACV,OAAO;YACP,OAAO;YACP,OAAO;YACP,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACnC,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,4EAA4E;IAC5E,iBAAiB;IACjB,4EAA4E;IAE5E,SAAS;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED,YAAY;QACX,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,CAAC;IAED,QAAQ,CAAC,EAAU;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,QAAgB;QAC3B,MAAM,QAAQ,GAAmB,EAAE,CAAC;QACpC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YACxC,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9C,CAAC;QACF,CAAC;QACD,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,EAAU;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,QAAgB,EAAE,KAAyB;QAC5D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,SAAS,QAAQ,YAAY,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,KAAK,GAAe;YACzB,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ;YACR,KAAK;SACL,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,KAAK,CAAC,EAAE,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,MAAe;QACxB,8EAA8E;QAC9E,4CAA4C;QAC5C,IACC,MAAM,KAAK,SAAS;YACpB,IAAI,CAAC,WAAW,KAAK,IAAI;YACzB,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;YACvC,IAAI,CAAC,WAAW,CAAC,QAAQ,KAAK,IAAI,CAAC,aAAa,EAC/C,CAAC;YACF,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACjC,CAAC;QACD,MAAM,IAAI,GAAmB,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QACtC,IAAI,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3D,OAAO,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;YAC9C,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,CAAC;QACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACzF,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,mBAAmB;QAClB,OAAO,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACH,mBAAmB;QAClB,OAAO,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5D,CAAC;IAED,kBAAkB;QACjB,OAAO,IAAI,CAAC,cAAc,CACzB,CAAC,KAAK,EAAE,EAAE,CACT,KAAK,CAAC,IAAI,KAAK,SAAS;YACxB,KAAK,CAAC,IAAI,KAAK,gBAAgB;YAC/B,KAAK,CAAC,IAAI,KAAK,YAAY;YAC3B,CAAC,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAC5D,CAAC;IACH,CAAC;IAED,uBAAuB;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,uBAAuB,CAAC,CAAC;IAC/E,CAAC;IAED,gBAAgB;QACf,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;gBAAE,KAAK,EAAE,CAAC;QAC1C,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAEO,cAAc,CAAC,SAA2C;QACjE,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,OAAO,OAAO,EAAE,CAAC;YAChB,IAAI,SAAS,CAAC,OAAO,CAAC;gBAAE,OAAO,IAAI,CAAC;YACpC,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;OAEG;IACH,SAAS;QACR,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAC7D,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,CAAC;IAED;;;;;;;;;OASG;IACH,UAAU;QACT,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;YACrF,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;QAClC,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAqB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC;aACtD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,CAAC;QAC9D,OAAO,OAAO,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACH,OAAO;QACN,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;QACnD,MAAM,KAAK,GAAsB,EAAE,CAAC;QAEpC,oCAAoC;QACpC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC5C,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,aAAa;QACb,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAE,CAAC;YACpC,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,EAAE,EAAE,CAAC;gBAC5D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;iBAAM,CAAC;gBACP,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC3C,IAAI,MAAM,EAAE,CAAC;oBACZ,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACP,yBAAyB;oBACzB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClB,CAAC;YACF,CAAC;QACF,CAAC;QAED,8DAA8D;QAC9D,+DAA+D;QAC/D,MAAM,KAAK,GAAsB,CAAC,GAAG,KAAK,CAAC,CAAC;QAC5C,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;YAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5G,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAED,4EAA4E;IAC5E,YAAY;IACZ,4EAA4E;IAE5E;;;;;OAKG;IACH,MAAM,CAAC,YAAoB;QAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,SAAS,YAAY,YAAY,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;QAC3B,IAAI,CAAC,aAAa,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,SAAS;QACR,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAChB,YAA2B,EAC3B,OAAe,EACf,OAAiB,EACjB,QAAkB,EAClB,KAAa;QAEb,IAAI,YAAY,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,SAAS,YAAY,YAAY,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;QAC3B,MAAM,KAAK,GAAuB;YACjC,IAAI,EAAE,gBAAgB;YACtB,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,MAAM,EAAE,YAAY,IAAI,MAAM;YAC9B,OAAO;YACP,OAAO;YACP,KAAK;YACL,QAAQ;SACR,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,EAAE,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,qBAAqB,CAAC,MAAc;QACnC,MAAM,mBAAmB,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,SAAS,MAAM,YAAY,CAAC,CAAC;QAC9C,CAAC;QAED,+EAA+E;QAC/E,iFAAiF;QACjF,qFAAqF;QACrF,MAAM,iBAAiB,GAAmB,EAAE,CAAC;QAC7C,IAAI,YAAY,GAAkB,IAAI,CAAC;QACvC,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;YAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;gBAAE,SAAS;YACrC,iBAAiB,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC;YAC7D,YAAY,GAAG,KAAK,CAAC,EAAE,CAAC;QACzB,CAAC;QAED,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACtD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,GAAG,aAAa,IAAI,YAAY,QAAQ,CAAC,CAAC;QAE5F,MAAM,MAAM,GAAkB;YAC7B,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,uBAAuB;YAChC,EAAE,EAAE,YAAY;YAChB,SAAS;YACT,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS;SAC7D,CAAC;QAEF,yCAAyC;QACzC,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjE,MAAM,aAAa,GAAkE,EAAE,CAAC;QACxF,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjD,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChC,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAE,EAAE,CAAC,CAAC;YAC7F,CAAC;QACF,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,sBAAsB;YACtB,MAAM,WAAW,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;YAChF,IAAI,QAAQ,GAAG,WAAW,CAAC;YAC3B,MAAM,YAAY,GAAiB,EAAE,CAAC;YACtC,KAAK,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,aAAa,EAAE,CAAC;gBAC5E,MAAM,UAAU,GAAe;oBAC9B,IAAI,EAAE,OAAO;oBACb,EAAE,EAAE,UAAU,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;oBACrC,QAAQ;oBACR,SAAS,EAAE,cAAc;oBACzB,QAAQ;oBACR,KAAK;iBACL,CAAC;gBACF,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBAChC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC9B,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAC;YAC1B,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,CAAC,WAAW,GAAG,CAAC,MAAM,EAAE,GAAG,iBAAiB,EAAE,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAChF,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CACrC,CAAC;YACF,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC;YAClC,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,EAAE,CAAC;YAErB,+DAA+D;YAC/D,+DAA+D;YAC/D,+DAA+D;YAC/D,0DAA0D;YAC1D,oDAAoD;YACpD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;YAC1G,IAAI,YAAY,EAAE,CAAC;gBAClB,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,CAAC;YAED,OAAO,cAAc,CAAC;QACvB,CAAC;QAED,iEAAiE;QACjE,MAAM,YAAY,GAAiB,EAAE,CAAC;QACtC,IAAI,QAAQ,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;QAC3E,KAAK,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,aAAa,EAAE,CAAC;YAC5E,MAAM,UAAU,GAAe;gBAC9B,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC5E,QAAQ;gBACR,SAAS,EAAE,cAAc;gBACzB,QAAQ;gBACR,KAAK;aACL,CAAC;YACF,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9B,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,CAAC,MAAM,EAAE,GAAG,iBAAiB,EAAE,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAChF,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CACrC,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC;QAC9B,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,SAAS,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,GAAW,EAAE,UAAmB,EAAE,OAA2B;QAC1E,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC/E,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,IAAI,CAAC,IAAY,EAAE,UAAmB,EAAE,WAAoB;QAClE,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,GAAyB,IAAI,CAAC;QACxC,IAAI,oBAA6C,CAAC;QAClD,IAAI,WAAW,KAAK,SAAS,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC;gBACJ,MAAM,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,CAAC,KAAK,YAAY,2BAA2B,CAAC;oBAAE,MAAM,KAAK,CAAC;gBACjE,yEAAyE;gBACzE,sEAAsE;gBACtE,oBAAoB,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;gBACzD,MAAM,UAAU,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,GAAG,UAAU,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7D,CAAC;QACF,CAAC;QACD,MAAM,GAAG,GAAG,WAAW,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAC/F,iEAAiE;QACjE,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACjF,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;IAC1F,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,cAAc,CAAC,GAAW,EAAE,UAAmB;QACrD,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,UAAU,KAAK,SAAS,IAAI,GAAG,KAAK,wBAAwB,CAAC,GAAG,CAAC,CAAC;QACpF,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,wDAAwD;IACxD,MAAM,CAAC,QAAQ,CAAC,MAAc,OAAO,CAAC,GAAG,EAAE,EAAE,OAA2B;QACvE,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CACd,UAAkB,EAClB,SAAiB,EACjB,UAAmB,EACnB,OAA2B;QAE3B,MAAM,kBAAkB,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,iBAAiB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,aAAa,GAAG,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;QAC9D,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,yDAAyD,kBAAkB,EAAE,CAAC,CAAC;QAChG,CAAC;QAED,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAA8B,CAAC;QAClG,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,8CAA8C,kBAAkB,EAAE,CAAC,CAAC;QACrF,CAAC;QAED,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;QAC7F,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,CAAC;QAED,yDAAyD;QACzD,IAAI,OAAO,EAAE,EAAE,KAAK,SAAS,EAAE,CAAC;YAC/B,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,MAAM,YAAY,GAAG,OAAO,EAAE,EAAE,IAAI,eAAe,EAAE,CAAC;QACtD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACtD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,IAAI,YAAY,QAAQ,CAAC,CAAC;QAE3E,kEAAkE;QAClE,MAAM,SAAS,GAAkB;YAChC,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,uBAAuB;YAChC,EAAE,EAAE,YAAY;YAChB,SAAS;YACT,GAAG,EAAE,iBAAiB;YACtB,aAAa,EAAE,kBAAkB;SACjC,CAAC;QACF,aAAa,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhF,0CAA0C;QAC1C,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9B,cAAc,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC;QACF,CAAC;QAED,OAAO,IAAI,cAAc,CAAC,iBAAiB,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACzE,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAW,EAAE,UAAmB,EAAE,UAAgC;QACnF,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,UAAU,KAAK,SAAS,IAAI,GAAG,KAAK,wBAAwB,CAAC,GAAG,CAAC,CAAC;QACpF,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,CAAC,MAAM,mBAAmB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CACnE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,CACtE,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACrE,OAAO,QAAQ,CAAC;IACjB,CAAC;IAQD,MAAM,CAAC,KAAK,CAAC,OAAO,CACnB,sBAAqD,EACrD,UAAgC;QAEhC,MAAM,gBAAgB,GACrB,OAAO,sBAAsB,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChG,MAAM,QAAQ,GAAG,OAAO,sBAAsB,KAAK,UAAU,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,UAAU,CAAC;QACpG,IAAI,gBAAgB,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;YACvE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YACrE,OAAO,QAAQ,CAAC;QACjB,CAAC;QAED,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;QAErC,IAAI,CAAC;YACJ,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC9B,OAAO,EAAE,CAAC;YACX,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YACpE,MAAM,IAAI,GAAG,OAAO;iBAClB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;iBAChE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAEhD,gDAAgD;YAChD,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,MAAM,QAAQ,GAAe,EAAE,CAAC;YAChC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACxB,IAAI,CAAC;oBACJ,MAAM,KAAK,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACvE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC9C,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC;gBAC5B,CAAC;gBAAC,MAAM,CAAC;oBACR,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnB,CAAC;YACF,CAAC;YAED,2CAA2C;YAC3C,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,MAAM,QAAQ,GAAkB,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;YAEjC,MAAM,OAAO,GAAG,MAAM,gCAAgC,CAAC,QAAQ,EAAE,GAAG,EAAE;gBACrE,MAAM,EAAE,CAAC;gBACT,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAChC,CAAC,CAAC,CAAC;YAEH,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;gBAC5B,IAAI,IAAI,EAAE,CAAC;oBACV,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrB,CAAC;YACF,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YACrE,OAAO,QAAQ,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACR,OAAO,EAAE,CAAC;QACX,CAAC;IACF,CAAC;CACD","sourcesContent":["import type { AgentMessage } from \"@earendil-works/pi-agent-core\";\nimport type { ImageContent, Message, TextContent, Usage } from \"@earendil-works/pi-ai\";\nimport { randomBytes, randomUUID } from \"crypto\";\nimport {\n\tappendFileSync,\n\tcloseSync,\n\tcreateReadStream,\n\texistsSync,\n\tmkdirSync,\n\topenSync,\n\treaddirSync,\n\treadSync,\n\tstatSync,\n\twriteFileSync,\n} from \"fs\";\nimport { readdir, stat } from \"fs/promises\";\nimport { join, resolve } from \"path\";\nimport { createInterface } from \"readline\";\nimport { StringDecoder } from \"string_decoder\";\nimport { APP_NAME, getAgentDir as getDefaultAgentDir, getSessionsDir } from \"../config.ts\";\nimport { normalizePath, resolvePath } from \"../utils/paths.ts\";\nimport { type ResidentStoreStats, ResidentStringStore } from \"./session-resident-store.ts\";\n\n// Fork change: inlined UUIDv7 (upstream uses the `uuid` npm package). Keeps this\n// package self-contained so consumers don't need a transitive `uuid` install.\nfunction uuidv7(): string {\n\tconst ts = BigInt(Date.now());\n\tconst bytes = randomBytes(10);\n\tconst hex = [\n\t\t((ts >> 40n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t((ts >> 32n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t((ts >> 24n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t((ts >> 16n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t((ts >> 8n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t(ts & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t(0x70 | (bytes[0]! & 0x0f)).toString(16).padStart(2, \"0\"),\n\t\tbytes[1]!.toString(16).padStart(2, \"0\"),\n\t\t(0x80 | (bytes[2]! & 0x3f)).toString(16).padStart(2, \"0\"),\n\t\tbytes[3]!.toString(16).padStart(2, \"0\"),\n\t\t...Array.from(bytes.slice(4), (b) => b.toString(16).padStart(2, \"0\")),\n\t].join(\"\");\n\treturn `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20, 32)}`;\n}\n\nimport {\n\ttype BashExecutionMessage,\n\ttype CustomMessage,\n\tcreateBranchSummaryMessage,\n\tcreateCompactionSummaryMessage,\n\tcreateCustomMessage,\n} from \"./messages.ts\";\n\nconst contextMessageEntryIds = new WeakMap<object, string>();\n\n/** Request-local field carried across context hooks; never persisted or sent to providers. */\nexport const SESSION_CONTEXT_ENTRY_ID = \"__piSessionContextEntryId\";\n\nfunction withContextEntryId<T extends AgentMessage>(entryId: string, message: T): T {\n\tcontextMessageEntryIds.set(message, entryId);\n\treturn message;\n}\n\n/** Entry identity for a transient message projected from session history. */\nexport function getSessionContextEntryId(message: AgentMessage): string | undefined {\n\treturn contextMessageEntryIds.get(message);\n}\n\nexport interface UsageTotals {\n\tinput: number;\n\toutput: number;\n\tcacheRead: number;\n\tcacheWrite: number;\n\tcost: number;\n\tlatestCacheHitRate: number | undefined;\n}\n\nexport const CURRENT_SESSION_VERSION = 3;\n\nexport interface SessionHeader {\n\ttype: \"session\";\n\tversion?: number; // v1 sessions don't have this\n\tid: string;\n\ttimestamp: string;\n\tcwd: string;\n\tparentSession?: string;\n}\n\nexport interface NewSessionOptions {\n\tid?: string;\n\tparentSession?: string;\n}\n\nexport interface SessionEntryBase {\n\ttype: string;\n\tid: string;\n\tparentId: string | null;\n\ttimestamp: string;\n}\n\nexport interface SessionMessageEntry extends SessionEntryBase {\n\ttype: \"message\";\n\tmessage: AgentMessage;\n}\n\nexport interface ThinkingLevelChangeEntry extends SessionEntryBase {\n\ttype: \"thinking_level_change\";\n\tthinkingLevel: string;\n}\n\nexport interface ModelChangeEntry extends SessionEntryBase {\n\ttype: \"model_change\";\n\tprovider: string;\n\tmodelId: string;\n\t/** Transient fallback changes are excluded from restored session defaults. */\n\treason?: \"fallback\" | \"fallback-revert\";\n\t/** The model active before a fallback window, retained for restart restoration. */\n\toriginalProvider?: string;\n\toriginalModelId?: string;\n}\n\nexport interface CompactionEntry<T = unknown> extends SessionEntryBase {\n\ttype: \"compaction\";\n\tsummary: string;\n\tfirstKeptEntryId: string;\n\ttokensBefore: number;\n\t/** Extension-specific data (e.g., ArtifactIndex, version markers for structured compaction) */\n\tdetails?: T;\n\t/** Usage from the LLM call(s) that generated this summary, if available */\n\tusage?: Usage;\n\t/** True if generated by an extension, undefined/false if pi-generated (backward compatible) */\n\tfromHook?: boolean;\n}\n\nexport interface BranchSummaryEntry<T = unknown> extends SessionEntryBase {\n\ttype: \"branch_summary\";\n\tfromId: string;\n\tsummary: string;\n\t/** Extension-specific data (not sent to LLM) */\n\tdetails?: T;\n\t/** Usage from the LLM call that generated this summary, if available */\n\tusage?: Usage;\n\t/** True if generated by an extension, false if pi-generated */\n\tfromHook?: boolean;\n}\n\n/**\n * Custom entry for extensions to store extension-specific data in the session.\n * Use customType to identify your extension's entries.\n *\n * Purpose: Persist extension state across session reloads. On reload, extensions can\n * scan entries for their customType and reconstruct internal state.\n *\n * Does NOT participate in LLM context (ignored by buildSessionContext).\n * For injecting content into context, see CustomMessageEntry.\n */\nexport interface CustomEntry<T = unknown> extends SessionEntryBase {\n\ttype: \"custom\";\n\tcustomType: string;\n\tdata?: T;\n}\n\n/** Label entry for user-defined bookmarks/markers on entries. */\nexport interface LabelEntry extends SessionEntryBase {\n\ttype: \"label\";\n\ttargetId: string;\n\tlabel: string | undefined;\n}\n\n/** Session metadata entry (e.g., user-defined display name). */\nexport interface SessionInfoEntry extends SessionEntryBase {\n\ttype: \"session_info\";\n\tname?: string;\n}\n\n/**\n * Custom message entry for extensions to inject messages into LLM context.\n * Use customType to identify your extension's entries.\n *\n * Unlike CustomEntry, this DOES participate in LLM context.\n * The content is converted to a user message in buildSessionContext().\n * Use details for extension-specific metadata (not sent to LLM).\n *\n * display controls TUI rendering:\n * - false: hidden entirely\n * - true: rendered with distinct styling (different from user messages)\n */\nexport interface CustomMessageEntry<T = unknown> extends SessionEntryBase {\n\ttype: \"custom_message\";\n\tcustomType: string;\n\tcontent: string | (TextContent | ImageContent)[];\n\tdetails?: T;\n\tdisplay: boolean;\n}\n\n/** Session entry - has id/parentId for tree structure (returned by \"read\" methods in SessionManager) */\nexport type SessionEntry =\n\t| SessionMessageEntry\n\t| ThinkingLevelChangeEntry\n\t| ModelChangeEntry\n\t| CompactionEntry\n\t| BranchSummaryEntry\n\t| CustomEntry\n\t| CustomMessageEntry\n\t| LabelEntry\n\t| SessionInfoEntry;\n\n/** Raw file entry (includes header) */\nexport type FileEntry = SessionHeader | SessionEntry;\n\n/** Tree node for getTree() - defensive copy of session structure */\nexport interface SessionTreeNode {\n\tentry: SessionEntry;\n\tchildren: SessionTreeNode[];\n\t/** Resolved label for this entry, if any */\n\tlabel?: string;\n\t/** Timestamp of the latest label change for this entry, if any */\n\tlabelTimestamp?: string;\n}\n\nexport interface SessionContext {\n\tmessages: AgentMessage[];\n\tthinkingLevel: string;\n\tmodel: { provider: string; modelId: string } | null;\n}\n\nexport interface SessionInfo {\n\tpath: string;\n\tid: string;\n\t/** Working directory where the session was started. Empty string for old sessions. */\n\tcwd: string;\n\t/** User-defined display name from session_info entries. */\n\tname?: string;\n\t/** Path to the parent session (if this session was forked). */\n\tparentSessionPath?: string;\n\tcreated: Date;\n\tmodified: Date;\n\tmessageCount: number;\n\tfirstMessage: string;\n\tallMessagesText: string;\n}\n\nexport type ReadonlySessionManager = Pick<\n\tSessionManager,\n\t| \"getCwd\"\n\t| \"getSessionDir\"\n\t| \"getSessionId\"\n\t| \"getSessionFile\"\n\t| \"getLeafId\"\n\t| \"getLeafEntry\"\n\t| \"getEntry\"\n\t| \"getLabel\"\n\t| \"getBranch\"\n\t| \"buildContextEntries\"\n\t| \"buildSessionContext\"\n\t| \"getHeader\"\n\t| \"getEntries\"\n\t| \"getTree\"\n\t| \"getSessionName\"\n>;\n\nfunction createSessionId(): string {\n\treturn uuidv7();\n}\n\nexport function assertValidSessionId(id: string): void {\n\tif (!/^[A-Za-z0-9](?:[A-Za-z0-9._-]*[A-Za-z0-9])?$/.test(id)) {\n\t\tthrow new Error(\n\t\t\t\"Session id must be non-empty, contain only alphanumeric characters, '-', '_', and '.', and start and end with an alphanumeric character\",\n\t\t);\n\t}\n}\n\n/** Generate a unique short ID (8 hex chars, collision-checked) */\nfunction generateId(byId: { has(id: string): boolean }): string {\n\tfor (let i = 0; i < 100; i++) {\n\t\tconst id = randomUUID().slice(0, 8);\n\t\tif (!byId.has(id)) return id;\n\t}\n\t// Fallback to full UUID if somehow we have collisions\n\treturn randomUUID();\n}\n\n/** Migrate v1 → v2: add id/parentId tree structure. Mutates in place. */\nfunction migrateV1ToV2(entries: FileEntry[]): void {\n\tconst ids = new Set<string>();\n\tlet prevId: string | null = null;\n\n\tfor (const entry of entries) {\n\t\tif (entry.type === \"session\") {\n\t\t\tentry.version = 2;\n\t\t\tcontinue;\n\t\t}\n\n\t\tentry.id = generateId(ids);\n\t\tentry.parentId = prevId;\n\t\tprevId = entry.id;\n\n\t\t// Convert firstKeptEntryIndex to firstKeptEntryId for compaction\n\t\tif (entry.type === \"compaction\") {\n\t\t\tconst comp = entry as CompactionEntry & { firstKeptEntryIndex?: number };\n\t\t\tif (typeof comp.firstKeptEntryIndex === \"number\") {\n\t\t\t\tconst targetEntry = entries[comp.firstKeptEntryIndex];\n\t\t\t\tif (targetEntry && targetEntry.type !== \"session\") {\n\t\t\t\t\tcomp.firstKeptEntryId = targetEntry.id;\n\t\t\t\t}\n\t\t\t\tdelete comp.firstKeptEntryIndex;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/** Migrate v2 → v3: rename hookMessage role to custom. Mutates in place. */\nfunction migrateV2ToV3(entries: FileEntry[]): void {\n\tfor (const entry of entries) {\n\t\tif (entry.type === \"session\") {\n\t\t\tentry.version = 3;\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Update message entries with hookMessage role\n\t\tif (entry.type === \"message\") {\n\t\t\tconst msgEntry = entry as SessionMessageEntry;\n\t\t\tif (msgEntry.message && (msgEntry.message as { role: string }).role === \"hookMessage\") {\n\t\t\t\t(msgEntry.message as { role: string }).role = \"custom\";\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * Run all necessary migrations to bring entries to current version.\n * Mutates entries in place. Returns true if any migration was applied.\n */\nfunction migrateToCurrentVersion(entries: FileEntry[]): boolean {\n\tconst header = entries.find((e) => e.type === \"session\") as SessionHeader | undefined;\n\tconst version = header?.version ?? 1;\n\n\tif (version >= CURRENT_SESSION_VERSION) return false;\n\n\tif (version < 2) migrateV1ToV2(entries);\n\tif (version < 3) migrateV2ToV3(entries);\n\n\treturn true;\n}\n\n/** Exported for testing */\nexport function migrateSessionEntries(entries: FileEntry[]): void {\n\tmigrateToCurrentVersion(entries);\n}\n\n/** Exported for compaction.test.ts */\nexport function parseSessionEntries(content: string): FileEntry[] {\n\tconst entries: FileEntry[] = [];\n\tconst lines = content.trim().split(\"\\n\");\n\n\tfor (const line of lines) {\n\t\tif (!line.trim()) continue;\n\t\ttry {\n\t\t\tconst entry = JSON.parse(line) as FileEntry;\n\t\t\tentries.push(entry);\n\t\t} catch {\n\t\t\t// Skip malformed lines\n\t\t}\n\t}\n\n\treturn entries;\n}\n\nexport function getLatestCompactionEntry(entries: SessionEntry[]): CompactionEntry | null {\n\tfor (let i = entries.length - 1; i >= 0; i--) {\n\t\tif (entries[i].type === \"compaction\") {\n\t\t\treturn entries[i] as CompactionEntry;\n\t\t}\n\t}\n\treturn null;\n}\n\nfunction buildEntryIndex(entries: SessionEntry[], byId?: Map<string, SessionEntry>): Map<string, SessionEntry> {\n\tif (byId) return byId;\n\tconst index = new Map<string, SessionEntry>();\n\tfor (const entry of entries) {\n\t\tindex.set(entry.id, entry);\n\t}\n\treturn index;\n}\n\nfunction buildSessionPath(\n\tentries: SessionEntry[],\n\tleafId?: string | null,\n\tbyId?: Map<string, SessionEntry>,\n): SessionEntry[] {\n\tconst index = buildEntryIndex(entries, byId);\n\tlet leaf: SessionEntry | undefined;\n\tif (leafId === null) {\n\t\treturn [];\n\t}\n\tif (leafId) {\n\t\tleaf = index.get(leafId);\n\t}\n\tleaf ??= entries[entries.length - 1];\n\tif (!leaf) {\n\t\treturn [];\n\t}\n\n\tconst path: SessionEntry[] = [];\n\tlet current: SessionEntry | undefined = leaf;\n\twhile (current) {\n\t\tpath.push(current);\n\t\tcurrent = current.parentId ? index.get(current.parentId) : undefined;\n\t}\n\tpath.reverse();\n\treturn path;\n}\n\nfunction getSessionContextSettings(path: SessionEntry[]): Pick<SessionContext, \"thinkingLevel\" | \"model\"> {\n\tlet thinkingLevel = \"off\";\n\tlet model: { provider: string; modelId: string } | null = null;\n\tlet isInFallbackWindow = false;\n\t// A fallback switch applies an ephemeral thinking level to the fallback model, so\n\t// the level recorded inside the window must not outlive it: restoring the primary\n\t// model with the fallback model's level would silently change the reasoning budget.\n\t// Mirrors the model restoration above, including the never-reverted (crashed) case.\n\tlet preFallbackThinkingLevel = thinkingLevel;\n\n\tfor (const entry of path) {\n\t\tif (entry.type === \"thinking_level_change\") {\n\t\t\tthinkingLevel = entry.thinkingLevel;\n\t\t} else if (entry.type === \"model_change\") {\n\t\t\tif (entry.reason === \"fallback\") {\n\t\t\t\tif (!isInFallbackWindow) {\n\t\t\t\t\tpreFallbackThinkingLevel = thinkingLevel;\n\t\t\t\t\tif (entry.originalProvider && entry.originalModelId) {\n\t\t\t\t\t\tmodel = { provider: entry.originalProvider, modelId: entry.originalModelId };\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tisInFallbackWindow = true;\n\t\t\t} else if (entry.reason === \"fallback-revert\") {\n\t\t\t\tif (isInFallbackWindow) thinkingLevel = preFallbackThinkingLevel;\n\t\t\t\tisInFallbackWindow = false;\n\t\t\t} else {\n\t\t\t\t// A manual model switch abandons the window: the level the user set inside\n\t\t\t\t// it is a deliberate choice and carries over to the newly selected model.\n\t\t\t\tisInFallbackWindow = false;\n\t\t\t\tmodel = { provider: entry.provider, modelId: entry.modelId };\n\t\t\t}\n\t\t} else if (entry.type === \"message\" && entry.message.role === \"assistant\" && !isInFallbackWindow) {\n\t\t\tmodel = { provider: entry.message.provider, modelId: entry.message.model };\n\t\t}\n\t}\n\n\t// The process can exit inside a fallback window; the primary model is already\n\t// restored above, so its pre-fallback level has to be restored with it.\n\tif (isInFallbackWindow) thinkingLevel = preFallbackThinkingLevel;\n\n\treturn { thinkingLevel, model };\n}\n\n/**\n * Project one selected session entry into LLM/runtime messages.\n * Plain custom entries are display/state entries and do not participate in context.\n */\nexport function sessionEntryToContextMessages(entry: SessionEntry): AgentMessage[] {\n\tif (entry.type === \"message\") {\n\t\tconst message = entry.message;\n\t\t// Session files are parsed without validation; old versions, forks, or\n\t\t// hand-edited files can contain messages with null/missing content.\n\t\tif (\n\t\t\t(message.role === \"user\" || message.role === \"assistant\" || message.role === \"toolResult\") &&\n\t\t\tmessage.content == null\n\t\t) {\n\t\t\treturn [withContextEntryId(entry.id, { ...message, content: [] })];\n\t\t}\n\t\treturn [withContextEntryId(entry.id, message)];\n\t}\n\tif (entry.type === \"custom_message\") {\n\t\treturn [\n\t\t\twithContextEntryId(\n\t\t\t\tentry.id,\n\t\t\t\tcreateCustomMessage(entry.customType, entry.content ?? [], entry.display, entry.details, entry.timestamp),\n\t\t\t),\n\t\t];\n\t}\n\tif (entry.type === \"branch_summary\" && entry.summary) {\n\t\treturn [withContextEntryId(entry.id, createBranchSummaryMessage(entry.summary, entry.fromId, entry.timestamp))];\n\t}\n\tif (entry.type === \"compaction\") {\n\t\treturn [\n\t\t\twithContextEntryId(\n\t\t\t\tentry.id,\n\t\t\t\tcreateCompactionSummaryMessage(entry.summary, entry.tokensBefore, entry.timestamp, entry.details),\n\t\t\t),\n\t\t];\n\t}\n\treturn [];\n}\n\n/**\n * Build the active, compaction-aware session entry list.\n *\n * This follows the current leaf path. If the path contains compaction entries,\n * the latest compaction is represented by the compaction entry itself, followed\n * by the kept entries starting at firstKeptEntryId and all entries after the\n * compaction entry. Older summarized entries are omitted.\n */\nexport function buildContextEntries(\n\tentries: SessionEntry[],\n\tleafId?: string | null,\n\tbyId?: Map<string, SessionEntry>,\n): SessionEntry[] {\n\tconst path = buildSessionPath(entries, leafId, byId);\n\tlet compaction: CompactionEntry | null = null;\n\n\tfor (const entry of path) {\n\t\tif (entry.type === \"compaction\") {\n\t\t\tcompaction = entry;\n\t\t}\n\t}\n\n\tif (!compaction) {\n\t\treturn path;\n\t}\n\n\tconst compactionIdx = path.findIndex((entry) => entry.id === compaction.id);\n\tif (compactionIdx < 0) {\n\t\treturn path;\n\t}\n\n\tconst contextEntries: SessionEntry[] = [compaction];\n\tlet foundFirstKept = false;\n\tfor (let i = 0; i < compactionIdx; i++) {\n\t\tconst entry = path[i];\n\t\t// The latest summary supersedes every older compaction summary. Older\n\t\t// entries selected by firstKeptEntryId remain verbatim, but nesting a\n\t\t// prior summary here would double-count it in the model context.\n\t\tif (entry.type === \"compaction\") continue;\n\t\tif (entry.id === compaction.firstKeptEntryId) {\n\t\t\tfoundFirstKept = true;\n\t\t}\n\t\tif (foundFirstKept) {\n\t\t\tcontextEntries.push(entry);\n\t\t}\n\t}\n\tcontextEntries.push(...path.slice(compactionIdx + 1));\n\treturn contextEntries;\n}\n\n/**\n * Build the session context from entries using tree traversal.\n * If leafId is provided, walks from that entry to root.\n * Handles compaction and branch summaries along the path.\n */\nexport function buildSessionContext(\n\tentries: SessionEntry[],\n\tleafId?: string | null,\n\tbyId?: Map<string, SessionEntry>,\n): SessionContext {\n\tconst path = buildSessionPath(entries, leafId, byId);\n\tconst { thinkingLevel, model } = getSessionContextSettings(path);\n\tconst messages = buildContextEntries(entries, leafId, byId).flatMap(sessionEntryToContextMessages);\n\treturn { messages, thinkingLevel, model };\n}\n\n/**\n * Compute the default session directory for a cwd.\n * Encodes cwd into a safe directory name under ~/.senpi/agent/sessions/.\n */\nfunction getDefaultSessionDirPath(cwd: string, agentDir: string = getDefaultAgentDir()): string {\n\tconst resolvedCwd = resolvePath(cwd);\n\tconst resolvedAgentDir = resolvePath(agentDir);\n\tconst safePath = `--${resolvedCwd.replace(/^[/\\\\]/, \"\").replace(/[/\\\\:]/g, \"-\")}--`;\n\treturn join(resolvedAgentDir, \"sessions\", safePath);\n}\n\nexport function getDefaultSessionDir(cwd: string, agentDir: string = getDefaultAgentDir()): string {\n\tconst sessionDir = getDefaultSessionDirPath(cwd, agentDir);\n\tif (!existsSync(sessionDir)) {\n\t\tmkdirSync(sessionDir, { recursive: true });\n\t}\n\treturn sessionDir;\n}\n\nconst SESSION_READ_BUFFER_SIZE = 1024 * 1024;\nconst SESSION_HEADER_READ_BUFFER_SIZE = 4096;\n/** Bound synchronous header discovery while allowing large cwd and custom metadata fields. */\nconst MAX_SESSION_HEADER_SCAN_BYTES = 1024 * 1024;\n\nclass SessionHeaderScanLimitError extends Error {\n\tconstructor(filePath: string) {\n\t\tsuper(`Session header exceeds ${MAX_SESSION_HEADER_SCAN_BYTES}-byte scan limit: ${filePath}`);\n\t\tthis.name = \"SessionHeaderScanLimitError\";\n\t}\n}\n\nfunction parseSessionEntryLine(line: string): FileEntry | null {\n\tif (!line.trim()) return null;\n\ttry {\n\t\treturn JSON.parse(line) as FileEntry;\n\t} catch {\n\t\t// Skip malformed lines\n\t\treturn null;\n\t}\n}\n\n/** Exported for testing */\nexport function loadEntriesFromFile(filePath: string): FileEntry[] {\n\tconst resolvedFilePath = normalizePath(filePath);\n\tif (!existsSync(resolvedFilePath)) return [];\n\n\tconst entries: FileEntry[] = [];\n\tconst fd = openSync(resolvedFilePath, \"r\");\n\ttry {\n\t\tconst decoder = new StringDecoder(\"utf8\");\n\t\tconst buffer = Buffer.allocUnsafe(SESSION_READ_BUFFER_SIZE);\n\t\tlet pending = \"\";\n\n\t\twhile (true) {\n\t\t\tconst bytesRead = readSync(fd, buffer, 0, buffer.length, null);\n\t\t\tif (bytesRead === 0) break;\n\n\t\t\tpending += decoder.write(buffer.subarray(0, bytesRead));\n\t\t\tlet lineStart = 0;\n\t\t\tlet newlineIndex = pending.indexOf(\"\\n\", lineStart);\n\t\t\twhile (newlineIndex !== -1) {\n\t\t\t\tconst entry = parseSessionEntryLine(pending.slice(lineStart, newlineIndex));\n\t\t\t\tif (entry) entries.push(entry);\n\t\t\t\tlineStart = newlineIndex + 1;\n\t\t\t\tnewlineIndex = pending.indexOf(\"\\n\", lineStart);\n\t\t\t}\n\t\t\tpending = pending.slice(lineStart);\n\t\t}\n\n\t\tpending += decoder.end();\n\t\tconst finalEntry = parseSessionEntryLine(pending);\n\t\tif (finalEntry) entries.push(finalEntry);\n\t} finally {\n\t\tcloseSync(fd);\n\t}\n\n\t// Validate session header\n\tif (entries.length === 0) return entries;\n\tconst header = entries[0];\n\tif (header.type !== \"session\" || typeof header.id !== \"string\") {\n\t\treturn [];\n\t}\n\n\treturn entries;\n}\n\n/**\n * Inspect a physical line while searching for the first parsed session entry.\n * Blank and malformed lines are skipped to match loadEntriesFromFile().\n * Returns undefined to keep scanning, null for a parsed non-header entry, or the header.\n */\nfunction parseSessionHeaderCandidate(line: string): SessionHeader | null | undefined {\n\tif (!line.trim()) return undefined;\n\tconst entry = parseSessionEntryLine(line);\n\tif (!entry) return undefined;\n\tif (entry.type !== \"session\" || typeof (entry as { id?: unknown }).id !== \"string\") return null;\n\treturn entry;\n}\n\nfunction readSessionHeader(filePath: string): SessionHeader | null {\n\tconst fd = openSync(filePath, \"r\");\n\ttry {\n\t\tconst decoder = new StringDecoder(\"utf8\");\n\t\tconst buffer = Buffer.allocUnsafe(SESSION_HEADER_READ_BUFFER_SIZE);\n\t\tconst lineChunks: string[] = [];\n\t\tlet scannedBytes = 0;\n\n\t\twhile (scannedBytes < MAX_SESSION_HEADER_SCAN_BYTES) {\n\t\t\tconst readLength = Math.min(buffer.length, MAX_SESSION_HEADER_SCAN_BYTES - scannedBytes);\n\t\t\tconst bytesRead = readSync(fd, buffer, 0, readLength, null);\n\t\t\tif (bytesRead === 0) {\n\t\t\t\tlineChunks.push(decoder.end());\n\t\t\t\treturn parseSessionHeaderCandidate(lineChunks.join(\"\")) ?? null;\n\t\t\t}\n\t\t\tscannedBytes += bytesRead;\n\n\t\t\tconst chunk = decoder.write(buffer.subarray(0, bytesRead));\n\t\t\tlet lineStart = 0;\n\t\t\tlet newlineIndex = chunk.indexOf(\"\\n\", lineStart);\n\t\t\twhile (newlineIndex !== -1) {\n\t\t\t\tlineChunks.push(chunk.slice(lineStart, newlineIndex));\n\t\t\t\tconst header = parseSessionHeaderCandidate(lineChunks.join(\"\"));\n\t\t\t\tif (header !== undefined) return header;\n\t\t\t\tlineChunks.length = 0;\n\t\t\t\tlineStart = newlineIndex + 1;\n\t\t\t\tnewlineIndex = chunk.indexOf(\"\\n\", lineStart);\n\t\t\t}\n\t\t\tlineChunks.push(chunk.slice(lineStart));\n\t\t}\n\n\t\t// Probe for EOF so a final header without a newline is allowed when it ends\n\t\t// exactly at the scan limit. Any additional byte exceeds the bounded scan.\n\t\tconst probe = Buffer.allocUnsafe(1);\n\t\tif (readSync(fd, probe, 0, probe.length, null) === 0) {\n\t\t\tlineChunks.push(decoder.end());\n\t\t\treturn parseSessionHeaderCandidate(lineChunks.join(\"\")) ?? null;\n\t\t}\n\t\tthrow new SessionHeaderScanLimitError(filePath);\n\t} finally {\n\t\tcloseSync(fd);\n\t}\n}\n\nfunction readSessionHeaderForDiscovery(filePath: string): SessionHeader | null {\n\ttry {\n\t\treturn readSessionHeader(filePath);\n\t} catch {\n\t\t// Discovery is best-effort: unreadable or oversized files are not sessions,\n\t\t// and one corrupt file must not prevent other sessions from being found.\n\t\treturn null;\n\t}\n}\n\nfunction getSessionHeaderCwd(header: SessionHeader): string | undefined {\n\tconst cwd = (header as { cwd?: unknown }).cwd;\n\treturn typeof cwd === \"string\" ? cwd : undefined;\n}\n\nfunction sessionCwdMatches(cwd: string | undefined, resolvedCwd: string): boolean {\n\treturn cwd !== undefined && cwd !== \"\" && resolvePath(cwd) === resolvedCwd;\n}\n\n/** Exported for testing */\nexport function findMostRecentSession(sessionDir: string, cwd?: string): string | null {\n\tconst resolvedSessionDir = normalizePath(sessionDir);\n\tconst resolvedCwd = cwd ? resolvePath(cwd) : undefined;\n\ttry {\n\t\tconst files = readdirSync(resolvedSessionDir)\n\t\t\t.filter((f) => f.endsWith(\".jsonl\"))\n\t\t\t.map((f) => join(resolvedSessionDir, f))\n\t\t\t.map((path) => ({ path, header: readSessionHeaderForDiscovery(path) }))\n\t\t\t.filter(\n\t\t\t\t(file): file is { path: string; header: SessionHeader } =>\n\t\t\t\t\tfile.header !== null &&\n\t\t\t\t\t(!resolvedCwd || sessionCwdMatches(getSessionHeaderCwd(file.header), resolvedCwd)),\n\t\t\t)\n\t\t\t.map(({ path }) => ({ path, mtime: statSync(path).mtime }))\n\t\t\t.sort((a, b) => b.mtime.getTime() - a.mtime.getTime());\n\n\t\treturn files[0]?.path || null;\n\t} catch {\n\t\t// Directory access and stat races make recent-session discovery unavailable.\n\t\treturn null;\n\t}\n}\n\nfunction isMessageWithContent(message: AgentMessage): message is Message {\n\treturn typeof (message as Message).role === \"string\" && \"content\" in message;\n}\n\nfunction extractTextContent(message: Message): string {\n\tconst content = message.content;\n\tif (typeof content === \"string\") {\n\t\treturn content;\n\t}\n\treturn content\n\t\t.filter((block): block is TextContent => block.type === \"text\")\n\t\t.map((block) => block.text)\n\t\t.join(\" \");\n}\n\nfunction getMessageActivityTime(entry: SessionMessageEntry): number | undefined {\n\tconst message = entry.message;\n\tif (!isMessageWithContent(message)) return undefined;\n\tif (message.role !== \"user\" && message.role !== \"assistant\") return undefined;\n\n\tconst msgTimestamp = (message as { timestamp?: number }).timestamp;\n\tif (typeof msgTimestamp === \"number\") {\n\t\treturn msgTimestamp;\n\t}\n\n\tconst t = new Date(entry.timestamp).getTime();\n\treturn Number.isNaN(t) ? undefined : t;\n}\n\nasync function buildSessionInfo(filePath: string): Promise<SessionInfo | null> {\n\ttry {\n\t\tconst stats = await stat(filePath);\n\t\tlet header: SessionHeader | null = null;\n\t\tlet messageCount = 0;\n\t\tlet firstMessage = \"\";\n\t\tconst allMessages: string[] = [];\n\t\tlet name: string | undefined;\n\t\tlet lastActivityTime: number | undefined;\n\n\t\tconst rl = createInterface({\n\t\t\tinput: createReadStream(filePath, { encoding: \"utf8\" }),\n\t\t\tcrlfDelay: Infinity,\n\t\t});\n\n\t\tfor await (const line of rl) {\n\t\t\tconst entry = parseSessionEntryLine(line);\n\t\t\tif (!entry) continue;\n\n\t\t\tif (!header) {\n\t\t\t\tif (entry.type !== \"session\") return null;\n\t\t\t\theader = entry;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Extract session name (use latest, including explicit clears)\n\t\t\tif (entry.type === \"session_info\") {\n\t\t\t\tname = entry.name?.trim() || undefined;\n\t\t\t}\n\n\t\t\tif (entry.type !== \"message\") continue;\n\t\t\tmessageCount++;\n\n\t\t\tconst activityTime = getMessageActivityTime(entry);\n\t\t\tif (typeof activityTime === \"number\") {\n\t\t\t\tlastActivityTime = Math.max(lastActivityTime ?? 0, activityTime);\n\t\t\t}\n\n\t\t\tconst message = entry.message;\n\t\t\tif (!isMessageWithContent(message)) continue;\n\t\t\tif (message.role !== \"user\" && message.role !== \"assistant\") continue;\n\n\t\t\tconst textContent = extractTextContent(message);\n\t\t\tif (!textContent) continue;\n\n\t\t\tallMessages.push(textContent);\n\t\t\tif (!firstMessage && message.role === \"user\") {\n\t\t\t\tfirstMessage = textContent;\n\t\t\t}\n\t\t}\n\n\t\tif (!header) return null;\n\n\t\tconst cwd = typeof header.cwd === \"string\" ? header.cwd : \"\";\n\t\tconst parentSessionPath = header.parentSession;\n\t\tconst headerTime = typeof header.timestamp === \"string\" ? new Date(header.timestamp).getTime() : NaN;\n\t\tconst modified =\n\t\t\ttypeof lastActivityTime === \"number\" && lastActivityTime > 0\n\t\t\t\t? new Date(lastActivityTime)\n\t\t\t\t: !Number.isNaN(headerTime)\n\t\t\t\t\t? new Date(headerTime)\n\t\t\t\t\t: stats.mtime;\n\n\t\treturn {\n\t\t\tpath: filePath,\n\t\t\tid: header.id,\n\t\t\tcwd,\n\t\t\tname,\n\t\t\tparentSessionPath,\n\t\t\tcreated: new Date(header.timestamp),\n\t\t\tmodified,\n\t\t\tmessageCount,\n\t\t\tfirstMessage: firstMessage || \"(no messages)\",\n\t\t\tallMessagesText: allMessages.join(\" \"),\n\t\t};\n\t} catch {\n\t\treturn null;\n\t}\n}\n\nexport type SessionListProgress = (loaded: number, total: number) => void;\n\nconst MAX_CONCURRENT_SESSION_INFO_LOADS = 10;\n\nasync function buildSessionInfosWithConcurrency(\n\tfiles: string[],\n\tonLoaded: () => void,\n): Promise<(SessionInfo | null)[]> {\n\tconst results: (SessionInfo | null)[] = new Array(files.length).fill(null);\n\tconst inFlight = new Set<Promise<void>>();\n\tlet nextIndex = 0;\n\n\tconst startNext = (): void => {\n\t\tconst index = nextIndex++;\n\t\tconst file = files[index];\n\t\tif (!file) return;\n\n\t\tlet task: Promise<void>;\n\t\ttask = buildSessionInfo(file)\n\t\t\t.then((info) => {\n\t\t\t\tresults[index] = info;\n\t\t\t})\n\t\t\t.catch(() => {\n\t\t\t\tresults[index] = null;\n\t\t\t})\n\t\t\t.finally(() => {\n\t\t\t\tinFlight.delete(task);\n\t\t\t\tonLoaded();\n\t\t\t});\n\t\tinFlight.add(task);\n\t};\n\n\twhile (nextIndex < files.length || inFlight.size > 0) {\n\t\twhile (nextIndex < files.length && inFlight.size < MAX_CONCURRENT_SESSION_INFO_LOADS) {\n\t\t\tstartNext();\n\t\t}\n\t\tif (inFlight.size > 0) {\n\t\t\tawait Promise.race(inFlight);\n\t\t}\n\t}\n\n\treturn results;\n}\n\nasync function listSessionsFromDir(\n\tdir: string,\n\tonProgress?: SessionListProgress,\n\tprogressOffset = 0,\n\tprogressTotal?: number,\n): Promise<SessionInfo[]> {\n\tconst sessions: SessionInfo[] = [];\n\tif (!existsSync(dir)) {\n\t\treturn sessions;\n\t}\n\n\ttry {\n\t\tconst dirEntries = await readdir(dir);\n\t\tconst files = dirEntries.filter((f) => f.endsWith(\".jsonl\")).map((f) => join(dir, f));\n\t\tconst total = progressTotal ?? files.length;\n\n\t\tlet loaded = 0;\n\t\tconst results = await buildSessionInfosWithConcurrency(files, () => {\n\t\t\tloaded++;\n\t\t\tonProgress?.(progressOffset + loaded, total);\n\t\t});\n\t\tfor (const info of results) {\n\t\t\tif (info) {\n\t\t\t\tsessions.push(info);\n\t\t\t}\n\t\t}\n\t} catch {\n\t\t// Return empty list on error\n\t}\n\n\treturn sessions;\n}\n\n/**\n * Manages conversation sessions as append-only trees stored in JSONL files.\n *\n * Each session entry has an id and parentId forming a tree structure. The \"leaf\"\n * pointer tracks the current position. Appending creates a child of the current leaf.\n * Branching moves the leaf to an earlier entry, allowing new branches without\n * modifying history.\n *\n * Use buildSessionContext() to get the resolved message list for the LLM, which\n * handles compaction summaries and follows the path from root to current leaf.\n */\nexport class SessionManager {\n\tprivate sessionId: string = \"\";\n\tprivate sessionFile: string | undefined;\n\tprivate sessionDir: string;\n\tprivate cwd: string;\n\tprivate persist: boolean;\n\tprivate flushed: boolean = false;\n\tprivate fileEntries: FileEntry[] = [];\n\tprivate byId: Map<string, SessionEntry> = new Map();\n\t// Runtime-only identity tracking lets AgentSession compare messages to a\n\t// compaction boundary by append order rather than provider timestamps.\n\t// Materialized persisted messages are bound as they are read; only pending\n\t// messages that have not reached a session entry use AgentSession's fallback.\n\tprivate entryOrdersById: Map<string, number> = new Map();\n\tprivate messageEntryPositions = new WeakMap<AgentMessage, { entryId: string; order: number }>();\n\tprivate labelsById: Map<string, string> = new Map();\n\tprivate labelTimestampsById: Map<string, string> = new Map();\n\tprivate leafId: string | null = null;\n\tprivate residentStore = new ResidentStringStore();\n\t// Monotonic counter bumped by every mutator; memoized materialized views are\n\t// keyed on it so read hot paths (footer, RPC) never re-materialize unchanged sessions.\n\tprivate mutationCount = 0;\n\tprivate entriesCache: { mutation: number; entries: SessionEntry[] } | null = null;\n\tprivate branchCache: { leafId: string | null; mutation: number; entries: SessionEntry[] } | null = null;\n\tprivate sessionNameCache: string | undefined = undefined;\n\t// Running usage totals over ALL entries (not branch-scoped), maintained\n\t// incrementally on assistant-message append and rebuilt from scratch in\n\t// _buildIndex()/newSession. Usage fields are numeric and unaffected by\n\t// string externalization, so the resident form can be read directly.\n\tprivate usageTotals: UsageTotals = {\n\t\tinput: 0,\n\t\toutput: 0,\n\t\tcacheRead: 0,\n\t\tcacheWrite: 0,\n\t\tcost: 0,\n\t\tlatestCacheHitRate: undefined,\n\t};\n\n\tprivate constructor(\n\t\tcwd: string,\n\t\tsessionDir: string,\n\t\tsessionFile: string | undefined,\n\t\tpersist: boolean,\n\t\tnewSessionOptions?: NewSessionOptions,\n\t\tpreloadedFileEntries?: FileEntry[],\n\t) {\n\t\tthis.cwd = resolvePath(cwd);\n\t\tthis.sessionDir = normalizePath(sessionDir);\n\t\tthis.persist = persist;\n\t\tif (persist && this.sessionDir && !existsSync(this.sessionDir)) {\n\t\t\tmkdirSync(this.sessionDir, { recursive: true });\n\t\t}\n\n\t\tif (sessionFile) {\n\t\t\tthis._setSessionFile(sessionFile, preloadedFileEntries);\n\t\t} else {\n\t\t\tthis.newSession(newSessionOptions);\n\t\t}\n\t}\n\n\t/** Switch to a different session file (used for resume and branching) */\n\tsetSessionFile(sessionFile: string): void {\n\t\tthis._setSessionFile(sessionFile);\n\t}\n\n\tprivate _setSessionFile(sessionFile: string, preloadedFileEntries?: FileEntry[]): void {\n\t\tthis.sessionFile = resolvePath(sessionFile);\n\t\tthis.residentStore.clear();\n\t\tif (existsSync(this.sessionFile)) {\n\t\t\tthis.fileEntries = preloadedFileEntries ?? loadEntriesFromFile(this.sessionFile);\n\n\t\t\t// If file was empty, initialize it with a valid session header. If it was\n\t\t\t// non-empty but did not parse as a pi session, fail without modifying it.\n\t\t\tif (this.fileEntries.length === 0) {\n\t\t\t\tconst explicitPath = this.sessionFile;\n\t\t\t\tif (statSync(explicitPath).size > 0) {\n\t\t\t\t\tthrow new Error(`Session file is not a valid ${APP_NAME} session: ${explicitPath}`);\n\t\t\t\t}\n\t\t\t\tthis.newSession();\n\t\t\t\tthis.sessionFile = explicitPath;\n\t\t\t\tthis._rewriteFile();\n\t\t\t\tthis.flushed = true;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst header = this.fileEntries.find((e) => e.type === \"session\") as SessionHeader | undefined;\n\t\t\tthis.sessionId = header?.id ?? createSessionId();\n\n\t\t\tif (migrateToCurrentVersion(this.fileEntries)) {\n\t\t\t\tthis._rewriteFile();\n\t\t\t}\n\n\t\t\tthis.fileEntries = this.fileEntries.map((entry) => this.residentStore.externalize(entry));\n\t\t\tthis._buildIndex();\n\t\t\tthis.mutationCount++;\n\t\t\tthis.flushed = true;\n\t\t} else {\n\t\t\tconst explicitPath = this.sessionFile;\n\t\t\tthis.newSession();\n\t\t\tthis.sessionFile = explicitPath; // preserve explicit path from --session flag\n\t\t}\n\t}\n\n\tnewSession(options?: NewSessionOptions): string | undefined {\n\t\tif (options?.id !== undefined) {\n\t\t\tassertValidSessionId(options.id);\n\t\t}\n\t\tthis.sessionId = options?.id ?? createSessionId();\n\t\tconst timestamp = new Date().toISOString();\n\t\tconst header: SessionHeader = {\n\t\t\ttype: \"session\",\n\t\t\tversion: CURRENT_SESSION_VERSION,\n\t\t\tid: this.sessionId,\n\t\t\ttimestamp,\n\t\t\tcwd: this.cwd,\n\t\t\tparentSession: options?.parentSession,\n\t\t};\n\t\tthis.fileEntries = [header];\n\t\tthis.residentStore.clear();\n\t\tthis.byId.clear();\n\t\tthis.entryOrdersById.clear();\n\t\tthis.messageEntryPositions = new WeakMap();\n\t\tthis.labelsById.clear();\n\t\tthis.labelTimestampsById.clear();\n\t\tthis.leafId = null;\n\t\tthis.sessionNameCache = undefined;\n\t\tthis.usageTotals = {\n\t\t\tinput: 0,\n\t\t\toutput: 0,\n\t\t\tcacheRead: 0,\n\t\t\tcacheWrite: 0,\n\t\t\tcost: 0,\n\t\t\tlatestCacheHitRate: undefined,\n\t\t};\n\t\tthis.mutationCount++;\n\t\tthis.flushed = false;\n\n\t\tif (this.persist) {\n\t\t\tconst fileTimestamp = timestamp.replace(/[:.]/g, \"-\");\n\t\t\tthis.sessionFile = join(this.getSessionDir(), `${fileTimestamp}_${this.sessionId}.jsonl`);\n\t\t}\n\t\treturn this.sessionFile;\n\t}\n\n\tprivate _buildIndex(): void {\n\t\tthis.byId.clear();\n\t\tthis.entryOrdersById.clear();\n\t\tthis.messageEntryPositions = new WeakMap();\n\t\tthis.labelsById.clear();\n\t\tthis.labelTimestampsById.clear();\n\t\tthis.leafId = null;\n\t\tthis.sessionNameCache = undefined;\n\t\tthis.usageTotals = {\n\t\t\tinput: 0,\n\t\t\toutput: 0,\n\t\t\tcacheRead: 0,\n\t\t\tcacheWrite: 0,\n\t\t\tcost: 0,\n\t\t\tlatestCacheHitRate: undefined,\n\t\t};\n\t\tfor (const [order, entry] of this.fileEntries.entries()) {\n\t\t\tif (entry.type === \"session\") continue;\n\t\t\tthis.byId.set(entry.id, entry);\n\t\t\tthis.entryOrdersById.set(entry.id, order);\n\t\t\tthis.leafId = entry.id;\n\t\t\tthis._accumulateUsage(entry);\n\t\t\tif (entry.type === \"session_info\") {\n\t\t\t\t// Empty names explicitly clear the session title.\n\t\t\t\tthis.sessionNameCache = entry.name?.trim() || undefined;\n\t\t\t}\n\t\t\tif (entry.type === \"label\") {\n\t\t\t\tif (entry.label) {\n\t\t\t\t\tthis.labelsById.set(entry.targetId, entry.label);\n\t\t\t\t\tthis.labelTimestampsById.set(entry.targetId, entry.timestamp);\n\t\t\t\t} else {\n\t\t\t\t\tthis.labelsById.delete(entry.targetId);\n\t\t\t\t\tthis.labelTimestampsById.delete(entry.targetId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _rewriteFile(): void {\n\t\tif (!this.persist || !this.sessionFile) return;\n\t\tconst fd = openSync(this.sessionFile, \"w\");\n\t\ttry {\n\t\t\tfor (const entry of this.fileEntries) {\n\t\t\t\twriteFileSync(fd, `${JSON.stringify(this.residentStore.materialize(entry))}\\n`);\n\t\t\t}\n\t\t} finally {\n\t\t\tcloseSync(fd);\n\t\t}\n\t}\n\n\tisPersisted(): boolean {\n\t\treturn this.persist;\n\t}\n\n\tgetCwd(): string {\n\t\treturn this.cwd;\n\t}\n\n\tgetSessionDir(): string {\n\t\treturn this.sessionDir;\n\t}\n\n\tusesDefaultSessionDir(): boolean {\n\t\treturn this.sessionDir === getDefaultSessionDirPath(this.cwd);\n\t}\n\n\tgetSessionId(): string {\n\t\treturn this.sessionId;\n\t}\n\n\tgetSessionFile(): string | undefined {\n\t\treturn this.sessionFile;\n\t}\n\n\tgetResidentStoreStats(): ResidentStoreStats {\n\t\treturn this.residentStore.stats();\n\t}\n\n\t_persist(entry: SessionEntry): void {\n\t\tif (!this.persist || !this.sessionFile) return;\n\t\tconst persistedEntry = this.residentStore.materialize(entry);\n\n\t\tconst hasAssistant = this.fileEntries.some((e) => e.type === \"message\" && e.message.role === \"assistant\");\n\t\tif (!hasAssistant) {\n\t\t\tif (this.flushed) {\n\t\t\t\tappendFileSync(this.sessionFile, `${JSON.stringify(persistedEntry)}\\n`);\n\t\t\t} else {\n\t\t\t\t// Mark as not flushed so when assistant arrives, all entries get written\n\t\t\t\tthis.flushed = false;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.flushed) {\n\t\t\tconst fd = openSync(this.sessionFile, \"wx\");\n\t\t\ttry {\n\t\t\t\tfor (const e of this.fileEntries) {\n\t\t\t\t\twriteFileSync(fd, `${JSON.stringify(this.residentStore.materialize(e))}\\n`);\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tcloseSync(fd);\n\t\t\t}\n\t\t\tthis.flushed = true;\n\t\t} else {\n\t\t\tappendFileSync(this.sessionFile, `${JSON.stringify(persistedEntry)}\\n`);\n\t\t}\n\t}\n\n\tprivate _appendEntry(entry: SessionEntry): void {\n\t\tconst residentEntry = this.residentStore.externalize(entry);\n\t\tthis.fileEntries.push(residentEntry);\n\t\tthis.byId.set(residentEntry.id, residentEntry);\n\t\tthis.entryOrdersById.set(residentEntry.id, this.fileEntries.length - 1);\n\t\tthis.leafId = residentEntry.id;\n\t\tthis._accumulateUsage(residentEntry);\n\t\tthis.mutationCount++;\n\t\tthis._persist(residentEntry);\n\t}\n\n\tprivate _materializeEntry(entry: SessionEntry): SessionEntry {\n\t\tconst materialized = this.residentStore.materialize(entry);\n\t\tif (materialized.type === \"message\") {\n\t\t\tconst order = this.entryOrdersById.get(materialized.id);\n\t\t\tif (order !== undefined) {\n\t\t\t\tthis.messageEntryPositions.set(materialized.message, { entryId: materialized.id, order });\n\t\t\t}\n\t\t}\n\t\treturn materialized;\n\t}\n\n\t/**\n\t * Fold one entry into the running usage totals. Totals iterate ALL entries\n\t * (not branch-scoped), matching the footer hot path's historical semantics.\n\t */\n\tprivate _accumulateUsage(entry: SessionEntry): void {\n\t\tif (entry.type !== \"message\" || entry.message.role !== \"assistant\") return;\n\t\tconst usage = entry.message.usage;\n\t\t// Assistant messages persisted without usage (e.g. aborted/error turns in\n\t\t// older session files) contribute nothing to the running totals.\n\t\tif (!usage) return;\n\t\tthis.usageTotals.input += usage.input;\n\t\tthis.usageTotals.output += usage.output;\n\t\tthis.usageTotals.cacheRead += usage.cacheRead;\n\t\tthis.usageTotals.cacheWrite += usage.cacheWrite;\n\t\tthis.usageTotals.cost += usage.cost?.total ?? 0;\n\t\tconst latestPromptTokens = usage.input + usage.cacheRead + usage.cacheWrite;\n\t\tthis.usageTotals.latestCacheHitRate =\n\t\t\tlatestPromptTokens > 0 ? (usage.cacheRead / latestPromptTokens) * 100 : undefined;\n\t}\n\n\t/**\n\t * O(1) running usage totals across ALL session entries (not branch-scoped).\n\t * Maintained incrementally; identical to summing usage over getEntries().\n\t */\n\tgetUsageTotals(): UsageTotals {\n\t\treturn this.usageTotals;\n\t}\n\n\t/** Append a message as child of current leaf, then advance leaf. Returns entry id.\n\t * Does not allow writing CompactionSummaryMessage and BranchSummaryMessage directly.\n\t * Reason: we want these to be top-level entries in the session, not message session entries,\n\t * so it is easier to find them.\n\t * These need to be appended via appendCompaction() and appendBranchSummary() methods.\n\t */\n\tappendMessage(message: Message | CustomMessage | BashExecutionMessage): string {\n\t\tconst entry: SessionMessageEntry = {\n\t\t\ttype: \"message\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tmessage,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\tconst order = this.entryOrdersById.get(entry.id);\n\t\tif (order !== undefined) {\n\t\t\tthis.messageEntryPositions.set(message, { entryId: entry.id, order });\n\t\t}\n\t\treturn entry.id;\n\t}\n\n\t/** Runtime append position for this exact persisted message object, if known. */\n\tgetMessageEntryPosition(message: AgentMessage): Readonly<{ entryId: string; order: number }> | undefined {\n\t\treturn this.messageEntryPositions.get(message);\n\t}\n\n\t/** Runtime/file append position for an entry, used with getMessageEntryPosition(). */\n\tgetEntryOrder(entryId: string): number | undefined {\n\t\treturn this.entryOrdersById.get(entryId);\n\t}\n\n\t/** Append a thinking level change as child of current leaf, then advance leaf. Returns entry id. */\n\tappendThinkingLevelChange(thinkingLevel: string): string {\n\t\tconst entry: ThinkingLevelChangeEntry = {\n\t\t\ttype: \"thinking_level_change\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tthinkingLevel,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/** Append a model change as child of current leaf, then advance leaf. Returns entry id. */\n\tappendModelChange(\n\t\tprovider: string,\n\t\tmodelId: string,\n\t\treason?: \"fallback\" | \"fallback-revert\",\n\t\toriginalProvider?: string,\n\t\toriginalModelId?: string,\n\t): string {\n\t\tconst entry: ModelChangeEntry = {\n\t\t\ttype: \"model_change\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tprovider,\n\t\t\tmodelId,\n\t\t\treason,\n\t\t\toriginalProvider,\n\t\t\toriginalModelId,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/** Append a compaction summary as child of current leaf, then advance leaf. Returns entry id. */\n\tappendCompaction<T = unknown>(\n\t\tsummary: string,\n\t\tfirstKeptEntryId: string,\n\t\ttokensBefore: number,\n\t\tdetails?: T,\n\t\tfromHook?: boolean,\n\t\tusage?: Usage,\n\t): string {\n\t\tconst entry: CompactionEntry<T> = {\n\t\t\ttype: \"compaction\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tsummary,\n\t\t\tfirstKeptEntryId,\n\t\t\ttokensBefore,\n\t\t\tdetails,\n\t\t\tusage,\n\t\t\tfromHook,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/** Append a custom entry (for extensions) as child of current leaf, then advance leaf. Returns entry id. */\n\tappendCustomEntry(customType: string, data?: unknown): string {\n\t\tconst entry: CustomEntry = {\n\t\t\ttype: \"custom\",\n\t\t\tcustomType,\n\t\t\tdata,\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/** Append a session info entry (e.g., display name). Returns entry id. */\n\tappendSessionInfo(name: string): string {\n\t\tconst sanitizedName = name.replace(/[\\r\\n]+/g, \" \").trim();\n\t\tconst entry: SessionInfoEntry = {\n\t\t\ttype: \"session_info\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tname: sanitizedName,\n\t\t};\n\t\tthis.sessionNameCache = sanitizedName || undefined;\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/**\n\t * Get the current session name from the latest session_info entry, if any.\n\t * O(1): the value is maintained incrementally on appendSessionInfo() and index rebuilds.\n\t */\n\tgetSessionName(): string | undefined {\n\t\treturn this.sessionNameCache;\n\t}\n\n\t/**\n\t * Append a custom message entry (for extensions) that participates in LLM context.\n\t * @param customType Extension identifier for filtering on reload\n\t * @param content Message content (string or TextContent/ImageContent array)\n\t * @param display Whether to show in TUI (true = styled display, false = hidden)\n\t * @param details Optional extension-specific metadata (not sent to LLM)\n\t * @returns Entry id\n\t */\n\tappendCustomMessageEntry<T = unknown>(\n\t\tcustomType: string,\n\t\tcontent: string | (TextContent | ImageContent)[],\n\t\tdisplay: boolean,\n\t\tdetails?: T,\n\t): string {\n\t\tconst entry: CustomMessageEntry<T> = {\n\t\t\ttype: \"custom_message\",\n\t\t\tcustomType,\n\t\t\tcontent,\n\t\t\tdisplay,\n\t\t\tdetails,\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t// =========================================================================\n\t// Tree Traversal\n\t// =========================================================================\n\n\tgetLeafId(): string | null {\n\t\treturn this.leafId;\n\t}\n\n\tgetLeafEntry(): SessionEntry | undefined {\n\t\tconst entry = this.leafId ? this.byId.get(this.leafId) : undefined;\n\t\treturn entry ? this._materializeEntry(entry) : undefined;\n\t}\n\n\tgetEntry(id: string): SessionEntry | undefined {\n\t\tconst entry = this.byId.get(id);\n\t\treturn entry ? this._materializeEntry(entry) : undefined;\n\t}\n\n\t/**\n\t * Get all direct children of an entry.\n\t */\n\tgetChildren(parentId: string): SessionEntry[] {\n\t\tconst children: SessionEntry[] = [];\n\t\tfor (const entry of this.byId.values()) {\n\t\t\tif (entry.parentId === parentId) {\n\t\t\t\tchildren.push(this._materializeEntry(entry));\n\t\t\t}\n\t\t}\n\t\treturn children;\n\t}\n\n\t/**\n\t * Get the label for an entry, if any.\n\t */\n\tgetLabel(id: string): string | undefined {\n\t\treturn this.labelsById.get(id);\n\t}\n\n\t/**\n\t * Set or clear a label on an entry.\n\t * Labels are user-defined markers for bookmarking/navigation.\n\t * Pass undefined or empty string to clear the label.\n\t */\n\tappendLabelChange(targetId: string, label: string | undefined): string {\n\t\tif (!this.byId.has(targetId)) {\n\t\t\tthrow new Error(`Entry ${targetId} not found`);\n\t\t}\n\t\tconst entry: LabelEntry = {\n\t\t\ttype: \"label\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\ttargetId,\n\t\t\tlabel,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\tif (label) {\n\t\t\tthis.labelsById.set(targetId, label);\n\t\t\tthis.labelTimestampsById.set(targetId, entry.timestamp);\n\t\t} else {\n\t\t\tthis.labelsById.delete(targetId);\n\t\t\tthis.labelTimestampsById.delete(targetId);\n\t\t}\n\t\treturn entry.id;\n\t}\n\n\t/**\n\t * Walk from entry to root, returning all entries in path order.\n\t * Includes all entry types (messages, compaction, model changes, etc.).\n\t * Use buildSessionContext() to get the resolved messages for the LLM.\n\t */\n\tgetBranch(fromId?: string): SessionEntry[] {\n\t\t// No-arg reads (the common hot path) are memoized on (leafId, mutationCount);\n\t\t// explicit fromId lookups bypass the cache.\n\t\tif (\n\t\t\tfromId === undefined &&\n\t\t\tthis.branchCache !== null &&\n\t\t\tthis.branchCache.leafId === this.leafId &&\n\t\t\tthis.branchCache.mutation === this.mutationCount\n\t\t) {\n\t\t\treturn this.branchCache.entries;\n\t\t}\n\t\tconst path: SessionEntry[] = [];\n\t\tconst startId = fromId ?? this.leafId;\n\t\tlet current = startId ? this.byId.get(startId) : undefined;\n\t\twhile (current) {\n\t\t\tpath.unshift(this._materializeEntry(current));\n\t\t\tcurrent = current.parentId ? this.byId.get(current.parentId) : undefined;\n\t\t}\n\t\tif (fromId === undefined) {\n\t\t\tthis.branchCache = { leafId: this.leafId, mutation: this.mutationCount, entries: path };\n\t\t}\n\t\treturn path;\n\t}\n\n\t/**\n\t * Build the active, compaction-aware entry list for context/rendering.\n\t * Uses tree traversal from current leaf.\n\t */\n\tbuildContextEntries(): SessionEntry[] {\n\t\treturn buildContextEntries(this.getEntries(), this.leafId);\n\t}\n\n\t/**\n\t * Build the session context (what gets sent to the LLM).\n\t * Uses tree traversal from current leaf.\n\t */\n\tbuildSessionContext(): SessionContext {\n\t\treturn buildSessionContext(this.getEntries(), this.leafId);\n\t}\n\n\thasContextMessages(): boolean {\n\t\treturn this.hasBranchEntry(\n\t\t\t(entry) =>\n\t\t\t\tentry.type === \"message\" ||\n\t\t\t\tentry.type === \"custom_message\" ||\n\t\t\t\tentry.type === \"compaction\" ||\n\t\t\t\t(entry.type === \"branch_summary\" && Boolean(entry.summary)),\n\t\t);\n\t}\n\n\thasThinkingLevelChanges(): boolean {\n\t\treturn this.hasBranchEntry((entry) => entry.type === \"thinking_level_change\");\n\t}\n\n\tcountCompactions(): number {\n\t\tlet count = 0;\n\t\tfor (const entry of this.fileEntries) {\n\t\t\tif (entry.type === \"compaction\") count++;\n\t\t}\n\t\treturn count;\n\t}\n\n\tprivate hasBranchEntry(predicate: (entry: SessionEntry) => boolean): boolean {\n\t\tlet current = this.leafId ? this.byId.get(this.leafId) : undefined;\n\t\twhile (current) {\n\t\t\tif (predicate(current)) return true;\n\t\t\tcurrent = current.parentId ? this.byId.get(current.parentId) : undefined;\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * Get session header.\n\t */\n\tgetHeader(): SessionHeader | null {\n\t\tconst h = this.fileEntries.find((e) => e.type === \"session\");\n\t\treturn h ? this.residentStore.materialize(h as SessionHeader) : null;\n\t}\n\n\t/**\n\t * Get all session entries (excludes header).\n\t * The session is append-only: use appendXXX() to add entries, branch() to\n\t * change the leaf pointer. Entries cannot be modified or deleted.\n\t *\n\t * The result is memoized behind the session mutation counter: repeated calls\n\t * without an intervening mutation return the SAME shared array instance.\n\t * Callers must not mutate the returned array or its entries; copy first if\n\t * you need to filter/reorder.\n\t */\n\tgetEntries(): SessionEntry[] {\n\t\tif (this.entriesCache !== null && this.entriesCache.mutation === this.mutationCount) {\n\t\t\treturn this.entriesCache.entries;\n\t\t}\n\t\tconst entries = this.fileEntries\n\t\t\t.filter((e): e is SessionEntry => e.type !== \"session\")\n\t\t\t.map((entry) => this._materializeEntry(entry));\n\t\tthis.entriesCache = { mutation: this.mutationCount, entries };\n\t\treturn entries;\n\t}\n\n\t/**\n\t * Get the session as a tree structure. Returns a shallow defensive copy of all entries.\n\t * A well-formed session has exactly one root (first entry with parentId === null).\n\t * Orphaned entries (broken parent chain) are also returned as roots.\n\t */\n\tgetTree(): SessionTreeNode[] {\n\t\tconst entries = this.getEntries();\n\t\tconst nodeMap = new Map<string, SessionTreeNode>();\n\t\tconst roots: SessionTreeNode[] = [];\n\n\t\t// Create nodes with resolved labels\n\t\tfor (const entry of entries) {\n\t\t\tconst label = this.labelsById.get(entry.id);\n\t\t\tconst labelTimestamp = this.labelTimestampsById.get(entry.id);\n\t\t\tnodeMap.set(entry.id, { entry, children: [], label, labelTimestamp });\n\t\t}\n\n\t\t// Build tree\n\t\tfor (const entry of entries) {\n\t\t\tconst node = nodeMap.get(entry.id)!;\n\t\t\tif (entry.parentId === null || entry.parentId === entry.id) {\n\t\t\t\troots.push(node);\n\t\t\t} else {\n\t\t\t\tconst parent = nodeMap.get(entry.parentId);\n\t\t\t\tif (parent) {\n\t\t\t\t\tparent.children.push(node);\n\t\t\t\t} else {\n\t\t\t\t\t// Orphan - treat as root\n\t\t\t\t\troots.push(node);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Sort children by timestamp (oldest first, newest at bottom)\n\t\t// Use iterative approach to avoid stack overflow on deep trees\n\t\tconst stack: SessionTreeNode[] = [...roots];\n\t\twhile (stack.length > 0) {\n\t\t\tconst node = stack.pop()!;\n\t\t\tnode.children.sort((a, b) => new Date(a.entry.timestamp).getTime() - new Date(b.entry.timestamp).getTime());\n\t\t\tstack.push(...node.children);\n\t\t}\n\n\t\treturn roots;\n\t}\n\n\t// =========================================================================\n\t// Branching\n\t// =========================================================================\n\n\t/**\n\t * Start a new branch from an earlier entry.\n\t * Moves the leaf pointer to the specified entry. The next appendXXX() call\n\t * will create a child of that entry, forming a new branch. Existing entries\n\t * are not modified or deleted.\n\t */\n\tbranch(branchFromId: string): void {\n\t\tif (!this.byId.has(branchFromId)) {\n\t\t\tthrow new Error(`Entry ${branchFromId} not found`);\n\t\t}\n\t\tthis.leafId = branchFromId;\n\t\tthis.mutationCount++;\n\t}\n\n\t/**\n\t * Reset the leaf pointer to null (before any entries).\n\t * The next appendXXX() call will create a new root entry (parentId = null).\n\t * Use this when navigating to re-edit the first user message.\n\t */\n\tresetLeaf(): void {\n\t\tthis.leafId = null;\n\t\tthis.mutationCount++;\n\t}\n\n\t/**\n\t * Start a new branch with a summary of the abandoned path.\n\t * Same as branch(), but also appends a branch_summary entry that captures\n\t * context from the abandoned conversation path.\n\t */\n\tbranchWithSummary(\n\t\tbranchFromId: string | null,\n\t\tsummary: string,\n\t\tdetails?: unknown,\n\t\tfromHook?: boolean,\n\t\tusage?: Usage,\n\t): string {\n\t\tif (branchFromId !== null && !this.byId.has(branchFromId)) {\n\t\t\tthrow new Error(`Entry ${branchFromId} not found`);\n\t\t}\n\t\tthis.leafId = branchFromId;\n\t\tconst entry: BranchSummaryEntry = {\n\t\t\ttype: \"branch_summary\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: branchFromId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tfromId: branchFromId ?? \"root\",\n\t\t\tsummary,\n\t\t\tdetails,\n\t\t\tusage,\n\t\t\tfromHook,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/**\n\t * Create a new session file containing only the path from root to the specified leaf.\n\t * Useful for extracting a single conversation path from a branched session.\n\t * Returns the new session file path, or undefined if not persisting.\n\t */\n\tcreateBranchedSession(leafId: string): string | undefined {\n\t\tconst previousSessionFile = this.sessionFile;\n\t\tconst path = this.getBranch(leafId);\n\t\tif (path.length === 0) {\n\t\t\tthrow new Error(`Entry ${leafId} not found`);\n\t\t}\n\n\t\t// Filter out LabelEntry from path - we'll recreate them from the resolved map.\n\t\t// Because labels are real tree entries, later entries can be children of labels;\n\t\t// removing labels requires re-chaining the retained path to avoid orphaned subtrees.\n\t\tconst pathWithoutLabels: SessionEntry[] = [];\n\t\tlet pathParentId: string | null = null;\n\t\tfor (const entry of path) {\n\t\t\tif (entry.type === \"label\") continue;\n\t\t\tpathWithoutLabels.push({ ...entry, parentId: pathParentId });\n\t\t\tpathParentId = entry.id;\n\t\t}\n\n\t\tconst newSessionId = createSessionId();\n\t\tconst timestamp = new Date().toISOString();\n\t\tconst fileTimestamp = timestamp.replace(/[:.]/g, \"-\");\n\t\tconst newSessionFile = join(this.getSessionDir(), `${fileTimestamp}_${newSessionId}.jsonl`);\n\n\t\tconst header: SessionHeader = {\n\t\t\ttype: \"session\",\n\t\t\tversion: CURRENT_SESSION_VERSION,\n\t\t\tid: newSessionId,\n\t\t\ttimestamp,\n\t\t\tcwd: this.cwd,\n\t\t\tparentSession: this.persist ? previousSessionFile : undefined,\n\t\t};\n\n\t\t// Collect labels for entries in the path\n\t\tconst pathEntryIds = new Set(pathWithoutLabels.map((e) => e.id));\n\t\tconst labelsToWrite: Array<{ targetId: string; label: string; timestamp: string }> = [];\n\t\tfor (const [targetId, label] of this.labelsById) {\n\t\t\tif (pathEntryIds.has(targetId)) {\n\t\t\t\tlabelsToWrite.push({ targetId, label, timestamp: this.labelTimestampsById.get(targetId)! });\n\t\t\t}\n\t\t}\n\n\t\tif (this.persist) {\n\t\t\t// Build label entries\n\t\t\tconst lastEntryId = pathWithoutLabels[pathWithoutLabels.length - 1]?.id || null;\n\t\t\tlet parentId = lastEntryId;\n\t\t\tconst labelEntries: LabelEntry[] = [];\n\t\t\tfor (const { targetId, label, timestamp: labelTimestamp } of labelsToWrite) {\n\t\t\t\tconst labelEntry: LabelEntry = {\n\t\t\t\t\ttype: \"label\",\n\t\t\t\t\tid: generateId(new Set(pathEntryIds)),\n\t\t\t\t\tparentId,\n\t\t\t\t\ttimestamp: labelTimestamp,\n\t\t\t\t\ttargetId,\n\t\t\t\t\tlabel,\n\t\t\t\t};\n\t\t\t\tpathEntryIds.add(labelEntry.id);\n\t\t\t\tlabelEntries.push(labelEntry);\n\t\t\t\tparentId = labelEntry.id;\n\t\t\t}\n\n\t\t\tthis.residentStore.clear();\n\t\t\tthis.fileEntries = [header, ...pathWithoutLabels, ...labelEntries].map((entry) =>\n\t\t\t\tthis.residentStore.externalize(entry),\n\t\t\t);\n\t\t\tthis.sessionId = newSessionId;\n\t\t\tthis.sessionFile = newSessionFile;\n\t\t\tthis._buildIndex();\n\t\t\tthis.mutationCount++;\n\n\t\t\t// Only write the file now if it contains an assistant message.\n\t\t\t// Otherwise defer to _persist(), which creates the file on the\n\t\t\t// first assistant response, matching the newSession() contract\n\t\t\t// and avoiding the duplicate-header bug when _persist()'s\n\t\t\t// no-assistant guard later resets flushed to false.\n\t\t\tconst hasAssistant = this.fileEntries.some((e) => e.type === \"message\" && e.message.role === \"assistant\");\n\t\t\tif (hasAssistant) {\n\t\t\t\tthis._rewriteFile();\n\t\t\t\tthis.flushed = true;\n\t\t\t} else {\n\t\t\t\tthis.flushed = false;\n\t\t\t}\n\n\t\t\treturn newSessionFile;\n\t\t}\n\n\t\t// In-memory mode: replace current session with the path + labels\n\t\tconst labelEntries: LabelEntry[] = [];\n\t\tlet parentId = pathWithoutLabels[pathWithoutLabels.length - 1]?.id || null;\n\t\tfor (const { targetId, label, timestamp: labelTimestamp } of labelsToWrite) {\n\t\t\tconst labelEntry: LabelEntry = {\n\t\t\t\ttype: \"label\",\n\t\t\t\tid: generateId(new Set([...pathEntryIds, ...labelEntries.map((e) => e.id)])),\n\t\t\t\tparentId,\n\t\t\t\ttimestamp: labelTimestamp,\n\t\t\t\ttargetId,\n\t\t\t\tlabel,\n\t\t\t};\n\t\t\tlabelEntries.push(labelEntry);\n\t\t\tparentId = labelEntry.id;\n\t\t}\n\t\tthis.residentStore.clear();\n\t\tthis.fileEntries = [header, ...pathWithoutLabels, ...labelEntries].map((entry) =>\n\t\t\tthis.residentStore.externalize(entry),\n\t\t);\n\t\tthis.sessionId = newSessionId;\n\t\tthis._buildIndex();\n\t\tthis.mutationCount++;\n\t\treturn undefined;\n\t}\n\n\t/**\n\t * Create a new session.\n\t * @param cwd Working directory (stored in session header)\n\t * @param sessionDir Optional session directory. If omitted, uses default (~/.senpi/agent/sessions/<encoded-cwd>/).\n\t */\n\tstatic create(cwd: string, sessionDir?: string, options?: NewSessionOptions): SessionManager {\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : getDefaultSessionDir(cwd);\n\t\treturn new SessionManager(cwd, dir, undefined, true, options);\n\t}\n\n\t/**\n\t * Open a specific session file.\n\t * @param path Path to session file\n\t * @param sessionDir Optional session directory for /new or /branch. If omitted, derives from file's parent.\n\t * @param cwdOverride Optional cwd override instead of the session header cwd.\n\t */\n\tstatic open(path: string, sessionDir?: string, cwdOverride?: string): SessionManager {\n\t\tconst resolvedPath = resolvePath(path);\n\t\tlet header: SessionHeader | null = null;\n\t\tlet preloadedFileEntries: FileEntry[] | undefined;\n\t\tif (cwdOverride === undefined && existsSync(resolvedPath)) {\n\t\t\ttry {\n\t\t\t\theader = readSessionHeader(resolvedPath);\n\t\t\t} catch (error) {\n\t\t\t\tif (!(error instanceof SessionHeaderScanLimitError)) throw error;\n\t\t\t\t// The bounded scan is only a discovery optimization. A full load remains\n\t\t\t\t// authoritative for legacy files with very large headers or prefixes.\n\t\t\t\tpreloadedFileEntries = loadEntriesFromFile(resolvedPath);\n\t\t\t\tconst firstEntry = preloadedFileEntries[0];\n\t\t\t\theader = firstEntry?.type === \"session\" ? firstEntry : null;\n\t\t\t}\n\t\t}\n\t\tconst cwd = cwdOverride ?? (header ? getSessionHeaderCwd(header) : undefined) ?? process.cwd();\n\t\t// If no sessionDir provided, derive from file's parent directory\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : resolve(resolvedPath, \"..\");\n\t\treturn new SessionManager(cwd, dir, resolvedPath, true, undefined, preloadedFileEntries);\n\t}\n\n\t/**\n\t * Continue the most recent session, or create new if none.\n\t * @param cwd Working directory\n\t * @param sessionDir Optional session directory. If omitted, uses default (~/.senpi/agent/sessions/<encoded-cwd>/).\n\t */\n\tstatic continueRecent(cwd: string, sessionDir?: string): SessionManager {\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : getDefaultSessionDir(cwd);\n\t\tconst filterCwd = sessionDir !== undefined && dir !== getDefaultSessionDirPath(cwd);\n\t\tconst mostRecent = findMostRecentSession(dir, filterCwd ? cwd : undefined);\n\t\tif (mostRecent) {\n\t\t\treturn new SessionManager(cwd, dir, mostRecent, true);\n\t\t}\n\t\treturn new SessionManager(cwd, dir, undefined, true);\n\t}\n\n\t/** Create an in-memory session (no file persistence) */\n\tstatic inMemory(cwd: string = process.cwd(), options?: NewSessionOptions): SessionManager {\n\t\treturn new SessionManager(cwd, \"\", undefined, false, options);\n\t}\n\n\t/**\n\t * Fork a session from another project directory into the current project.\n\t * Creates a new session in the target cwd with the full history from the source session.\n\t * @param sourcePath Path to the source session file\n\t * @param targetCwd Target working directory (where the new session will be stored)\n\t * @param sessionDir Optional session directory. If omitted, uses default for targetCwd.\n\t */\n\tstatic forkFrom(\n\t\tsourcePath: string,\n\t\ttargetCwd: string,\n\t\tsessionDir?: string,\n\t\toptions?: NewSessionOptions,\n\t): SessionManager {\n\t\tconst resolvedSourcePath = resolvePath(sourcePath);\n\t\tconst resolvedTargetCwd = resolvePath(targetCwd);\n\t\tconst sourceEntries = loadEntriesFromFile(resolvedSourcePath);\n\t\tif (sourceEntries.length === 0) {\n\t\t\tthrow new Error(`Cannot fork: source session file is empty or invalid: ${resolvedSourcePath}`);\n\t\t}\n\n\t\tconst sourceHeader = sourceEntries.find((e) => e.type === \"session\") as SessionHeader | undefined;\n\t\tif (!sourceHeader) {\n\t\t\tthrow new Error(`Cannot fork: source session has no header: ${resolvedSourcePath}`);\n\t\t}\n\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : getDefaultSessionDir(resolvedTargetCwd);\n\t\tif (!existsSync(dir)) {\n\t\t\tmkdirSync(dir, { recursive: true });\n\t\t}\n\n\t\t// Create new session file with new ID but forked content\n\t\tif (options?.id !== undefined) {\n\t\t\tassertValidSessionId(options.id);\n\t\t}\n\t\tconst newSessionId = options?.id ?? createSessionId();\n\t\tconst timestamp = new Date().toISOString();\n\t\tconst fileTimestamp = timestamp.replace(/[:.]/g, \"-\");\n\t\tconst newSessionFile = join(dir, `${fileTimestamp}_${newSessionId}.jsonl`);\n\n\t\t// Write new header pointing to source as parent, with updated cwd\n\t\tconst newHeader: SessionHeader = {\n\t\t\ttype: \"session\",\n\t\t\tversion: CURRENT_SESSION_VERSION,\n\t\t\tid: newSessionId,\n\t\t\ttimestamp,\n\t\t\tcwd: resolvedTargetCwd,\n\t\t\tparentSession: resolvedSourcePath,\n\t\t};\n\t\twriteFileSync(newSessionFile, `${JSON.stringify(newHeader)}\\n`, { flag: \"wx\" });\n\n\t\t// Copy all non-header entries from source\n\t\tfor (const entry of sourceEntries) {\n\t\t\tif (entry.type !== \"session\") {\n\t\t\t\tappendFileSync(newSessionFile, `${JSON.stringify(entry)}\\n`);\n\t\t\t}\n\t\t}\n\n\t\treturn new SessionManager(resolvedTargetCwd, dir, newSessionFile, true);\n\t}\n\n\t/**\n\t * List all sessions for a directory.\n\t * @param cwd Working directory (used to compute default session directory)\n\t * @param sessionDir Optional session directory. If omitted, uses default (~/.senpi/agent/sessions/<encoded-cwd>/).\n\t * @param onProgress Optional callback for progress updates (loaded, total)\n\t */\n\tstatic async list(cwd: string, sessionDir?: string, onProgress?: SessionListProgress): Promise<SessionInfo[]> {\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : getDefaultSessionDir(cwd);\n\t\tconst filterCwd = sessionDir !== undefined && dir !== getDefaultSessionDirPath(cwd);\n\t\tconst resolvedCwd = resolvePath(cwd);\n\t\tconst sessions = (await listSessionsFromDir(dir, onProgress)).filter(\n\t\t\t(session) => !filterCwd || sessionCwdMatches(session.cwd, resolvedCwd),\n\t\t);\n\t\tsessions.sort((a, b) => b.modified.getTime() - a.modified.getTime());\n\t\treturn sessions;\n\t}\n\n\t/**\n\t * List all sessions across all project directories.\n\t * @param onProgress Optional callback for progress updates (loaded, total)\n\t */\n\tstatic async listAll(onProgress?: SessionListProgress): Promise<SessionInfo[]>;\n\tstatic async listAll(sessionDir?: string, onProgress?: SessionListProgress): Promise<SessionInfo[]>;\n\tstatic async listAll(\n\t\tsessionDirOrOnProgress?: string | SessionListProgress,\n\t\tonProgress?: SessionListProgress,\n\t): Promise<SessionInfo[]> {\n\t\tconst customSessionDir =\n\t\t\ttypeof sessionDirOrOnProgress === \"string\" ? normalizePath(sessionDirOrOnProgress) : undefined;\n\t\tconst progress = typeof sessionDirOrOnProgress === \"function\" ? sessionDirOrOnProgress : onProgress;\n\t\tif (customSessionDir) {\n\t\t\tconst sessions = await listSessionsFromDir(customSessionDir, progress);\n\t\t\tsessions.sort((a, b) => b.modified.getTime() - a.modified.getTime());\n\t\t\treturn sessions;\n\t\t}\n\n\t\tconst sessionsDir = getSessionsDir();\n\n\t\ttry {\n\t\t\tif (!existsSync(sessionsDir)) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst entries = await readdir(sessionsDir, { withFileTypes: true });\n\t\t\tconst dirs = entries\n\t\t\t\t.filter((entry) => entry.isDirectory() || entry.isSymbolicLink())\n\t\t\t\t.map((entry) => join(sessionsDir, entry.name));\n\n\t\t\t// Count total files first for accurate progress\n\t\t\tlet totalFiles = 0;\n\t\t\tconst dirFiles: string[][] = [];\n\t\t\tfor (const dir of dirs) {\n\t\t\t\ttry {\n\t\t\t\t\tconst files = (await readdir(dir)).filter((f) => f.endsWith(\".jsonl\"));\n\t\t\t\t\tdirFiles.push(files.map((f) => join(dir, f)));\n\t\t\t\t\ttotalFiles += files.length;\n\t\t\t\t} catch {\n\t\t\t\t\tdirFiles.push([]);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Process all files with progress tracking\n\t\t\tlet loaded = 0;\n\t\t\tconst sessions: SessionInfo[] = [];\n\t\t\tconst allFiles = dirFiles.flat();\n\n\t\t\tconst results = await buildSessionInfosWithConcurrency(allFiles, () => {\n\t\t\t\tloaded++;\n\t\t\t\tprogress?.(loaded, totalFiles);\n\t\t\t});\n\n\t\t\tfor (const info of results) {\n\t\t\t\tif (info) {\n\t\t\t\t\tsessions.push(info);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tsessions.sort((a, b) => b.modified.getTime() - a.modified.getTime());\n\t\t\treturn sessions;\n\t\t} catch {\n\t\t\treturn [];\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AgentMessage } from \"@earendil-works/pi-agent-core\";\nimport type { ImageContent, Message, TextContent, ThinkingSelection, Usage } from \"@earendil-works/pi-ai\";\nimport { randomBytes, randomUUID } from \"crypto\";\nimport {\n\tappendFileSync,\n\tcloseSync,\n\texistsSync,\n\tmkdirSync,\n\topenSync,\n\treaddirSync,\n\treadSync,\n\tstatSync,\n\twriteFileSync,\n} from \"fs\";\nimport { readdir } from \"fs/promises\";\nimport { join, resolve } from \"path\";\nimport { StringDecoder } from \"string_decoder\";\nimport { APP_NAME, getAgentDir as getDefaultAgentDir, getSessionsDir } from \"../config.ts\";\nimport { normalizePath, resolvePath } from \"../utils/paths.ts\";\nimport { listSessionInfos, listSessionsFromDir, type SessionListProgress } from \"./session-discovery.ts\";\nimport { type ResidentStoreStats, ResidentStringStore } from \"./session-resident-store.ts\";\n\nexport type { SessionListProgress } from \"./session-discovery.ts\";\n\n// Fork change: inlined UUIDv7 (upstream uses the `uuid` npm package). Keeps this\n// package self-contained so consumers don't need a transitive `uuid` install.\nfunction uuidv7(): string {\n\tconst ts = BigInt(Date.now());\n\tconst bytes = randomBytes(10);\n\tconst hex = [\n\t\t((ts >> 40n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t((ts >> 32n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t((ts >> 24n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t((ts >> 16n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t((ts >> 8n) & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t(ts & 0xffn).toString(16).padStart(2, \"0\"),\n\t\t(0x70 | (bytes[0]! & 0x0f)).toString(16).padStart(2, \"0\"),\n\t\tbytes[1]!.toString(16).padStart(2, \"0\"),\n\t\t(0x80 | (bytes[2]! & 0x3f)).toString(16).padStart(2, \"0\"),\n\t\tbytes[3]!.toString(16).padStart(2, \"0\"),\n\t\t...Array.from(bytes.slice(4), (b) => b.toString(16).padStart(2, \"0\")),\n\t].join(\"\");\n\treturn `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20, 32)}`;\n}\n\nimport {\n\ttype BashExecutionMessage,\n\ttype CustomMessage,\n\tcreateBranchSummaryMessage,\n\tcreateCompactionSummaryMessage,\n\tcreateCustomMessage,\n} from \"./messages.ts\";\n\nconst contextMessageEntryIds = new WeakMap<object, string>();\n\n/** Request-local field carried across context hooks; never persisted or sent to providers. */\nexport const SESSION_CONTEXT_ENTRY_ID = \"__piSessionContextEntryId\";\n\nfunction withContextEntryId<T extends AgentMessage>(entryId: string, message: T): T {\n\tcontextMessageEntryIds.set(message, entryId);\n\treturn message;\n}\n\n/** Entry identity for a transient message projected from session history. */\nexport function getSessionContextEntryId(message: AgentMessage): string | undefined {\n\treturn contextMessageEntryIds.get(message);\n}\n\nexport interface UsageTotals {\n\tinput: number;\n\toutput: number;\n\tcacheRead: number;\n\tcacheWrite: number;\n\tcost: number;\n\tlatestCacheHitRate: number | undefined;\n}\n\nexport const CURRENT_SESSION_VERSION = 3;\n\nexport interface SessionHeader {\n\ttype: \"session\";\n\tversion?: number; // v1 sessions don't have this\n\tid: string;\n\ttimestamp: string;\n\tcwd: string;\n\tparentSession?: string;\n}\n\nexport interface NewSessionOptions {\n\tid?: string;\n\tparentSession?: string;\n}\n\nexport interface SessionEntryBase {\n\ttype: string;\n\tid: string;\n\tparentId: string | null;\n\ttimestamp: string;\n}\n\nexport interface SessionMessageEntry extends SessionEntryBase {\n\ttype: \"message\";\n\tmessage: AgentMessage;\n}\n\nexport interface ThinkingLevelChangeEntry extends SessionEntryBase {\n\ttype: \"thinking_level_change\";\n\tthinkingLevel: string;\n\t/** Explicit selector provenance. Omitted by legacy entries and SDK-defaulted fallbacks. */\n\tthinkingSelection?: ThinkingSelection;\n}\n\nexport interface ModelChangeEntry extends SessionEntryBase {\n\ttype: \"model_change\";\n\tprovider: string;\n\tmodelId: string;\n\t/** Transient fallback changes are excluded from restored session defaults. */\n\treason?: \"fallback\" | \"fallback-revert\";\n\t/** The model active before a fallback window, retained for restart restoration. */\n\toriginalProvider?: string;\n\toriginalModelId?: string;\n}\n\nexport interface CompactionEntry<T = unknown> extends SessionEntryBase {\n\ttype: \"compaction\";\n\tsummary: string;\n\tfirstKeptEntryId: string;\n\ttokensBefore: number;\n\t/** Extension-specific data (e.g., ArtifactIndex, version markers for structured compaction) */\n\tdetails?: T;\n\t/** Usage from the LLM call(s) that generated this summary, if available */\n\tusage?: Usage;\n\t/** True if generated by an extension, undefined/false if pi-generated (backward compatible) */\n\tfromHook?: boolean;\n}\n\nexport interface BranchSummaryEntry<T = unknown> extends SessionEntryBase {\n\ttype: \"branch_summary\";\n\tfromId: string;\n\tsummary: string;\n\t/** Extension-specific data (not sent to LLM) */\n\tdetails?: T;\n\t/** Usage from the LLM call that generated this summary, if available */\n\tusage?: Usage;\n\t/** True if generated by an extension, false if pi-generated */\n\tfromHook?: boolean;\n}\n\n/**\n * Custom entry for extensions to store extension-specific data in the session.\n * Use customType to identify your extension's entries.\n *\n * Purpose: Persist extension state across session reloads. On reload, extensions can\n * scan entries for their customType and reconstruct internal state.\n *\n * Does NOT participate in LLM context (ignored by buildSessionContext).\n * For injecting content into context, see CustomMessageEntry.\n */\nexport interface CustomEntry<T = unknown> extends SessionEntryBase {\n\ttype: \"custom\";\n\tcustomType: string;\n\tdata?: T;\n}\n\n/** Label entry for user-defined bookmarks/markers on entries. */\nexport interface LabelEntry extends SessionEntryBase {\n\ttype: \"label\";\n\ttargetId: string;\n\tlabel: string | undefined;\n}\n\n/** Session metadata entry (e.g., user-defined display name). */\nexport interface SessionInfoEntry extends SessionEntryBase {\n\ttype: \"session_info\";\n\tname?: string;\n}\n\n/**\n * Custom message entry for extensions to inject messages into LLM context.\n * Use customType to identify your extension's entries.\n *\n * Unlike CustomEntry, this DOES participate in LLM context.\n * The content is converted to a user message in buildSessionContext().\n * Use details for extension-specific metadata (not sent to LLM).\n *\n * display controls TUI rendering:\n * - false: hidden entirely\n * - true: rendered with distinct styling (different from user messages)\n */\nexport interface CustomMessageEntry<T = unknown> extends SessionEntryBase {\n\ttype: \"custom_message\";\n\tcustomType: string;\n\tcontent: string | (TextContent | ImageContent)[];\n\tdetails?: T;\n\tdisplay: boolean;\n}\n\n/** Session entry - has id/parentId for tree structure (returned by \"read\" methods in SessionManager) */\nexport type SessionEntry =\n\t| SessionMessageEntry\n\t| ThinkingLevelChangeEntry\n\t| ModelChangeEntry\n\t| CompactionEntry\n\t| BranchSummaryEntry\n\t| CustomEntry\n\t| CustomMessageEntry\n\t| LabelEntry\n\t| SessionInfoEntry;\n\n/** Raw file entry (includes header) */\nexport type FileEntry = SessionHeader | SessionEntry;\n\n/** Tree node for getTree() - defensive copy of session structure */\nexport interface SessionTreeNode {\n\tentry: SessionEntry;\n\tchildren: SessionTreeNode[];\n\t/** Resolved label for this entry, if any */\n\tlabel?: string;\n\t/** Timestamp of the latest label change for this entry, if any */\n\tlabelTimestamp?: string;\n}\n\nexport interface SessionContext {\n\tmessages: AgentMessage[];\n\tthinkingLevel: string;\n\tthinkingSelection?: ThinkingSelection;\n\tmodel: { provider: string; modelId: string } | null;\n}\n\nexport interface SessionInfo {\n\tpath: string;\n\tid: string;\n\t/** Working directory where the session was started. Empty string for old sessions. */\n\tcwd: string;\n\t/** User-defined display name from session_info entries. */\n\tname?: string;\n\t/** Path to the parent session (if this session was forked). */\n\tparentSessionPath?: string;\n\tcreated: Date;\n\tmodified: Date;\n\tmessageCount: number;\n\tfirstMessage: string;\n\tallMessagesText: string;\n}\n\nexport type ReadonlySessionManager = Pick<\n\tSessionManager,\n\t| \"getCwd\"\n\t| \"getSessionDir\"\n\t| \"getSessionId\"\n\t| \"getSessionFile\"\n\t| \"getLeafId\"\n\t| \"getLeafEntry\"\n\t| \"getEntry\"\n\t| \"getLabel\"\n\t| \"getBranch\"\n\t| \"buildContextEntries\"\n\t| \"buildSessionContext\"\n\t| \"getHeader\"\n\t| \"getEntries\"\n\t| \"getTree\"\n\t| \"getSessionName\"\n>;\n\nfunction createSessionId(): string {\n\treturn uuidv7();\n}\n\nexport function assertValidSessionId(id: string): void {\n\tif (!/^[A-Za-z0-9](?:[A-Za-z0-9._-]*[A-Za-z0-9])?$/.test(id)) {\n\t\tthrow new Error(\n\t\t\t\"Session id must be non-empty, contain only alphanumeric characters, '-', '_', and '.', and start and end with an alphanumeric character\",\n\t\t);\n\t}\n}\n\n/** Generate a unique short ID (8 hex chars, collision-checked) */\nfunction generateId(byId: { has(id: string): boolean }): string {\n\tfor (let i = 0; i < 100; i++) {\n\t\tconst id = randomUUID().slice(0, 8);\n\t\tif (!byId.has(id)) return id;\n\t}\n\t// Fallback to full UUID if somehow we have collisions\n\treturn randomUUID();\n}\n\n/** Migrate v1 → v2: add id/parentId tree structure. Mutates in place. */\nfunction migrateV1ToV2(entries: FileEntry[]): void {\n\tconst ids = new Set<string>();\n\tlet prevId: string | null = null;\n\n\tfor (const entry of entries) {\n\t\tif (entry.type === \"session\") {\n\t\t\tentry.version = 2;\n\t\t\tcontinue;\n\t\t}\n\n\t\tentry.id = generateId(ids);\n\t\tentry.parentId = prevId;\n\t\tprevId = entry.id;\n\n\t\t// Convert firstKeptEntryIndex to firstKeptEntryId for compaction\n\t\tif (entry.type === \"compaction\") {\n\t\t\tconst comp = entry as CompactionEntry & { firstKeptEntryIndex?: number };\n\t\t\tif (typeof comp.firstKeptEntryIndex === \"number\") {\n\t\t\t\tconst targetEntry = entries[comp.firstKeptEntryIndex];\n\t\t\t\tif (targetEntry && targetEntry.type !== \"session\") {\n\t\t\t\t\tcomp.firstKeptEntryId = targetEntry.id;\n\t\t\t\t}\n\t\t\t\tdelete comp.firstKeptEntryIndex;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/** Migrate v2 → v3: rename hookMessage role to custom. Mutates in place. */\nfunction migrateV2ToV3(entries: FileEntry[]): void {\n\tfor (const entry of entries) {\n\t\tif (entry.type === \"session\") {\n\t\t\tentry.version = 3;\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Update message entries with hookMessage role\n\t\tif (entry.type === \"message\") {\n\t\t\tconst msgEntry = entry as SessionMessageEntry;\n\t\t\tif (msgEntry.message && (msgEntry.message as { role: string }).role === \"hookMessage\") {\n\t\t\t\t(msgEntry.message as { role: string }).role = \"custom\";\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * Run all necessary migrations to bring entries to current version.\n * Mutates entries in place. Returns true if any migration was applied.\n */\nfunction migrateToCurrentVersion(entries: FileEntry[]): boolean {\n\tconst header = entries.find((e) => e.type === \"session\") as SessionHeader | undefined;\n\tconst version = header?.version ?? 1;\n\n\tif (version >= CURRENT_SESSION_VERSION) return false;\n\n\tif (version < 2) migrateV1ToV2(entries);\n\tif (version < 3) migrateV2ToV3(entries);\n\n\treturn true;\n}\n\n/** Exported for testing */\nexport function migrateSessionEntries(entries: FileEntry[]): void {\n\tmigrateToCurrentVersion(entries);\n}\n\n/** Exported for compaction.test.ts */\nexport function parseSessionEntries(content: string): FileEntry[] {\n\tconst entries: FileEntry[] = [];\n\tconst lines = content.trim().split(\"\\n\");\n\n\tfor (const line of lines) {\n\t\tif (!line.trim()) continue;\n\t\ttry {\n\t\t\tconst entry = JSON.parse(line) as FileEntry;\n\t\t\tentries.push(entry);\n\t\t} catch {\n\t\t\t// Skip malformed lines\n\t\t}\n\t}\n\n\treturn entries;\n}\n\nexport function getLatestCompactionEntry(entries: SessionEntry[]): CompactionEntry | null {\n\tfor (let i = entries.length - 1; i >= 0; i--) {\n\t\tif (entries[i].type === \"compaction\") {\n\t\t\treturn entries[i] as CompactionEntry;\n\t\t}\n\t}\n\treturn null;\n}\n\nfunction buildEntryIndex(entries: SessionEntry[], byId?: Map<string, SessionEntry>): Map<string, SessionEntry> {\n\tif (byId) return byId;\n\tconst index = new Map<string, SessionEntry>();\n\tfor (const entry of entries) {\n\t\tindex.set(entry.id, entry);\n\t}\n\treturn index;\n}\n\nfunction buildSessionPath(\n\tentries: SessionEntry[],\n\tleafId?: string | null,\n\tbyId?: Map<string, SessionEntry>,\n): SessionEntry[] {\n\tconst index = buildEntryIndex(entries, byId);\n\tlet leaf: SessionEntry | undefined;\n\tif (leafId === null) {\n\t\treturn [];\n\t}\n\tif (leafId) {\n\t\tleaf = index.get(leafId);\n\t}\n\tleaf ??= entries[entries.length - 1];\n\tif (!leaf) {\n\t\treturn [];\n\t}\n\n\tconst path: SessionEntry[] = [];\n\tlet current: SessionEntry | undefined = leaf;\n\twhile (current) {\n\t\tpath.push(current);\n\t\tcurrent = current.parentId ? index.get(current.parentId) : undefined;\n\t}\n\tpath.reverse();\n\treturn path;\n}\n\nfunction getSessionContextSettings(\n\tpath: SessionEntry[],\n): Pick<SessionContext, \"thinkingLevel\" | \"thinkingSelection\" | \"model\"> {\n\tlet thinkingLevel = \"off\";\n\tlet thinkingSelection: ThinkingSelection | undefined;\n\tlet model: { provider: string; modelId: string } | null = null;\n\tlet isInFallbackWindow = false;\n\t// A fallback switch applies an ephemeral thinking level to the fallback model, so\n\t// the level recorded inside the window must not outlive it: restoring the primary\n\t// model with the fallback model's level would silently change the reasoning budget.\n\t// Mirrors the model restoration above, including the never-reverted (crashed) case.\n\tlet preFallbackThinkingLevel = thinkingLevel;\n\tlet preFallbackThinkingSelection = thinkingSelection;\n\n\tfor (const entry of path) {\n\t\tif (entry.type === \"thinking_level_change\") {\n\t\t\tthinkingLevel = entry.thinkingLevel;\n\t\t\tthinkingSelection = entry.thinkingSelection;\n\t\t} else if (entry.type === \"model_change\") {\n\t\t\tif (entry.reason === \"fallback\") {\n\t\t\t\tif (!isInFallbackWindow) {\n\t\t\t\t\tpreFallbackThinkingLevel = thinkingLevel;\n\t\t\t\t\tpreFallbackThinkingSelection = thinkingSelection;\n\t\t\t\t\tif (entry.originalProvider && entry.originalModelId) {\n\t\t\t\t\t\tmodel = { provider: entry.originalProvider, modelId: entry.originalModelId };\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tisInFallbackWindow = true;\n\t\t\t} else if (entry.reason === \"fallback-revert\") {\n\t\t\t\tif (isInFallbackWindow) {\n\t\t\t\t\tthinkingLevel = preFallbackThinkingLevel;\n\t\t\t\t\tthinkingSelection = preFallbackThinkingSelection;\n\t\t\t\t}\n\t\t\t\tisInFallbackWindow = false;\n\t\t\t} else {\n\t\t\t\t// A manual model switch abandons the window: the level the user set inside\n\t\t\t\t// it is a deliberate choice and carries over to the newly selected model.\n\t\t\t\tisInFallbackWindow = false;\n\t\t\t\tmodel = { provider: entry.provider, modelId: entry.modelId };\n\t\t\t}\n\t\t} else if (entry.type === \"message\" && entry.message.role === \"assistant\" && !isInFallbackWindow) {\n\t\t\tmodel = { provider: entry.message.provider, modelId: entry.message.model };\n\t\t}\n\t}\n\n\t// The process can exit inside a fallback window; the primary model is already\n\t// restored above, so its pre-fallback level has to be restored with it.\n\tif (isInFallbackWindow) {\n\t\tthinkingLevel = preFallbackThinkingLevel;\n\t\tthinkingSelection = preFallbackThinkingSelection;\n\t}\n\n\treturn { thinkingLevel, thinkingSelection, model };\n}\n\n/**\n * Project one selected session entry into LLM/runtime messages.\n * Plain custom entries are display/state entries and do not participate in context.\n */\nexport function sessionEntryToContextMessages(entry: SessionEntry): AgentMessage[] {\n\tif (entry.type === \"message\") {\n\t\tconst message = entry.message;\n\t\t// Session files are parsed without validation; old versions, forks, or\n\t\t// hand-edited files can contain messages with null/missing content.\n\t\tif (\n\t\t\t(message.role === \"user\" || message.role === \"assistant\" || message.role === \"toolResult\") &&\n\t\t\tmessage.content == null\n\t\t) {\n\t\t\treturn [withContextEntryId(entry.id, { ...message, content: [] })];\n\t\t}\n\t\treturn [withContextEntryId(entry.id, message)];\n\t}\n\tif (entry.type === \"custom_message\") {\n\t\treturn [\n\t\t\twithContextEntryId(\n\t\t\t\tentry.id,\n\t\t\t\tcreateCustomMessage(entry.customType, entry.content ?? [], entry.display, entry.details, entry.timestamp),\n\t\t\t),\n\t\t];\n\t}\n\tif (entry.type === \"branch_summary\" && entry.summary) {\n\t\treturn [withContextEntryId(entry.id, createBranchSummaryMessage(entry.summary, entry.fromId, entry.timestamp))];\n\t}\n\tif (entry.type === \"compaction\") {\n\t\treturn [\n\t\t\twithContextEntryId(\n\t\t\t\tentry.id,\n\t\t\t\tcreateCompactionSummaryMessage(entry.summary, entry.tokensBefore, entry.timestamp, entry.details),\n\t\t\t),\n\t\t];\n\t}\n\treturn [];\n}\n\n/**\n * Build the active, compaction-aware session entry list.\n *\n * This follows the current leaf path. If the path contains compaction entries,\n * the latest compaction is represented by the compaction entry itself, followed\n * by the kept entries starting at firstKeptEntryId and all entries after the\n * compaction entry. Older summarized entries are omitted.\n */\nexport function buildContextEntries(\n\tentries: SessionEntry[],\n\tleafId?: string | null,\n\tbyId?: Map<string, SessionEntry>,\n): SessionEntry[] {\n\tconst path = buildSessionPath(entries, leafId, byId);\n\tlet compaction: CompactionEntry | null = null;\n\n\tfor (const entry of path) {\n\t\tif (entry.type === \"compaction\") {\n\t\t\tcompaction = entry;\n\t\t}\n\t}\n\n\tif (!compaction) {\n\t\treturn path;\n\t}\n\n\tconst compactionIdx = path.findIndex((entry) => entry.id === compaction.id);\n\tif (compactionIdx < 0) {\n\t\treturn path;\n\t}\n\n\tconst contextEntries: SessionEntry[] = [compaction];\n\tlet foundFirstKept = false;\n\tfor (let i = 0; i < compactionIdx; i++) {\n\t\tconst entry = path[i];\n\t\t// The latest summary supersedes every older compaction summary. Older\n\t\t// entries selected by firstKeptEntryId remain verbatim, but nesting a\n\t\t// prior summary here would double-count it in the model context.\n\t\tif (entry.type === \"compaction\") continue;\n\t\tif (entry.id === compaction.firstKeptEntryId) {\n\t\t\tfoundFirstKept = true;\n\t\t}\n\t\tif (foundFirstKept) {\n\t\t\tcontextEntries.push(entry);\n\t\t}\n\t}\n\tcontextEntries.push(...path.slice(compactionIdx + 1));\n\treturn contextEntries;\n}\n\n/**\n * Build the session context from entries using tree traversal.\n * If leafId is provided, walks from that entry to root.\n * Handles compaction and branch summaries along the path.\n */\nexport function buildSessionContext(\n\tentries: SessionEntry[],\n\tleafId?: string | null,\n\tbyId?: Map<string, SessionEntry>,\n): SessionContext {\n\tconst path = buildSessionPath(entries, leafId, byId);\n\tconst { thinkingLevel, thinkingSelection, model } = getSessionContextSettings(path);\n\tconst messages = buildContextEntries(entries, leafId, byId).flatMap(sessionEntryToContextMessages);\n\treturn { messages, thinkingLevel, thinkingSelection, model };\n}\n\n/**\n * Compute the default session directory for a cwd.\n * Encodes cwd into a safe directory name under ~/.senpi/agent/sessions/.\n */\nfunction getDefaultSessionDirPath(cwd: string, agentDir: string = getDefaultAgentDir()): string {\n\tconst resolvedCwd = resolvePath(cwd);\n\tconst resolvedAgentDir = resolvePath(agentDir);\n\tconst safePath = `--${resolvedCwd.replace(/^[/\\\\]/, \"\").replace(/[/\\\\:]/g, \"-\")}--`;\n\treturn join(resolvedAgentDir, \"sessions\", safePath);\n}\n\nexport function getDefaultSessionDir(cwd: string, agentDir: string = getDefaultAgentDir()): string {\n\tconst sessionDir = getDefaultSessionDirPath(cwd, agentDir);\n\tif (!existsSync(sessionDir)) {\n\t\tmkdirSync(sessionDir, { recursive: true });\n\t}\n\treturn sessionDir;\n}\n\nconst SESSION_READ_BUFFER_SIZE = 1024 * 1024;\nconst SESSION_HEADER_READ_BUFFER_SIZE = 4096;\n/** Bound synchronous header discovery while allowing large cwd and custom metadata fields. */\nconst MAX_SESSION_HEADER_SCAN_BYTES = 1024 * 1024;\n\nclass SessionHeaderScanLimitError extends Error {\n\tconstructor(filePath: string) {\n\t\tsuper(`Session header exceeds ${MAX_SESSION_HEADER_SCAN_BYTES}-byte scan limit: ${filePath}`);\n\t\tthis.name = \"SessionHeaderScanLimitError\";\n\t}\n}\n\nfunction parseSessionEntryLine(line: string): FileEntry | null {\n\tif (!line.trim()) return null;\n\ttry {\n\t\treturn JSON.parse(line) as FileEntry;\n\t} catch {\n\t\t// Skip malformed lines\n\t\treturn null;\n\t}\n}\n\n/** Exported for testing */\nexport function loadEntriesFromFile(filePath: string): FileEntry[] {\n\tconst resolvedFilePath = normalizePath(filePath);\n\tif (!existsSync(resolvedFilePath)) return [];\n\n\tconst entries: FileEntry[] = [];\n\tconst fd = openSync(resolvedFilePath, \"r\");\n\ttry {\n\t\tconst decoder = new StringDecoder(\"utf8\");\n\t\tconst buffer = Buffer.allocUnsafe(SESSION_READ_BUFFER_SIZE);\n\t\tlet pending = \"\";\n\n\t\twhile (true) {\n\t\t\tconst bytesRead = readSync(fd, buffer, 0, buffer.length, null);\n\t\t\tif (bytesRead === 0) break;\n\n\t\t\tpending += decoder.write(buffer.subarray(0, bytesRead));\n\t\t\tlet lineStart = 0;\n\t\t\tlet newlineIndex = pending.indexOf(\"\\n\", lineStart);\n\t\t\twhile (newlineIndex !== -1) {\n\t\t\t\tconst entry = parseSessionEntryLine(pending.slice(lineStart, newlineIndex));\n\t\t\t\tif (entry) entries.push(entry);\n\t\t\t\tlineStart = newlineIndex + 1;\n\t\t\t\tnewlineIndex = pending.indexOf(\"\\n\", lineStart);\n\t\t\t}\n\t\t\tpending = pending.slice(lineStart);\n\t\t}\n\n\t\tpending += decoder.end();\n\t\tconst finalEntry = parseSessionEntryLine(pending);\n\t\tif (finalEntry) entries.push(finalEntry);\n\t} finally {\n\t\tcloseSync(fd);\n\t}\n\n\t// Validate session header\n\tif (entries.length === 0) return entries;\n\tconst header = entries[0];\n\tif (header.type !== \"session\" || typeof header.id !== \"string\") {\n\t\treturn [];\n\t}\n\n\treturn entries;\n}\n\n/**\n * Inspect a physical line while searching for the first parsed session entry.\n * Blank and malformed lines are skipped to match loadEntriesFromFile().\n * Returns undefined to keep scanning, null for a parsed non-header entry, or the header.\n */\nfunction parseSessionHeaderCandidate(line: string): SessionHeader | null | undefined {\n\tif (!line.trim()) return undefined;\n\tconst entry = parseSessionEntryLine(line);\n\tif (!entry) return undefined;\n\tif (entry.type !== \"session\" || typeof (entry as { id?: unknown }).id !== \"string\") return null;\n\treturn entry;\n}\n\nfunction readSessionHeader(filePath: string): SessionHeader | null {\n\tconst fd = openSync(filePath, \"r\");\n\ttry {\n\t\tconst decoder = new StringDecoder(\"utf8\");\n\t\tconst buffer = Buffer.allocUnsafe(SESSION_HEADER_READ_BUFFER_SIZE);\n\t\tconst lineChunks: string[] = [];\n\t\tlet scannedBytes = 0;\n\n\t\twhile (scannedBytes < MAX_SESSION_HEADER_SCAN_BYTES) {\n\t\t\tconst readLength = Math.min(buffer.length, MAX_SESSION_HEADER_SCAN_BYTES - scannedBytes);\n\t\t\tconst bytesRead = readSync(fd, buffer, 0, readLength, null);\n\t\t\tif (bytesRead === 0) {\n\t\t\t\tlineChunks.push(decoder.end());\n\t\t\t\treturn parseSessionHeaderCandidate(lineChunks.join(\"\")) ?? null;\n\t\t\t}\n\t\t\tscannedBytes += bytesRead;\n\n\t\t\tconst chunk = decoder.write(buffer.subarray(0, bytesRead));\n\t\t\tlet lineStart = 0;\n\t\t\tlet newlineIndex = chunk.indexOf(\"\\n\", lineStart);\n\t\t\twhile (newlineIndex !== -1) {\n\t\t\t\tlineChunks.push(chunk.slice(lineStart, newlineIndex));\n\t\t\t\tconst header = parseSessionHeaderCandidate(lineChunks.join(\"\"));\n\t\t\t\tif (header !== undefined) return header;\n\t\t\t\tlineChunks.length = 0;\n\t\t\t\tlineStart = newlineIndex + 1;\n\t\t\t\tnewlineIndex = chunk.indexOf(\"\\n\", lineStart);\n\t\t\t}\n\t\t\tlineChunks.push(chunk.slice(lineStart));\n\t\t}\n\n\t\t// Probe for EOF so a final header without a newline is allowed when it ends\n\t\t// exactly at the scan limit. Any additional byte exceeds the bounded scan.\n\t\tconst probe = Buffer.allocUnsafe(1);\n\t\tif (readSync(fd, probe, 0, probe.length, null) === 0) {\n\t\t\tlineChunks.push(decoder.end());\n\t\t\treturn parseSessionHeaderCandidate(lineChunks.join(\"\")) ?? null;\n\t\t}\n\t\tthrow new SessionHeaderScanLimitError(filePath);\n\t} finally {\n\t\tcloseSync(fd);\n\t}\n}\n\nfunction readSessionHeaderForDiscovery(filePath: string): SessionHeader | null {\n\ttry {\n\t\treturn readSessionHeader(filePath);\n\t} catch {\n\t\t// Discovery is best-effort: unreadable or oversized files are not sessions,\n\t\t// and one corrupt file must not prevent other sessions from being found.\n\t\treturn null;\n\t}\n}\n\nfunction getSessionHeaderCwd(header: SessionHeader): string | undefined {\n\tconst cwd = (header as { cwd?: unknown }).cwd;\n\treturn typeof cwd === \"string\" ? cwd : undefined;\n}\n\nfunction sessionCwdMatches(cwd: string | undefined, resolvedCwd: string): boolean {\n\treturn cwd !== undefined && cwd !== \"\" && resolvePath(cwd) === resolvedCwd;\n}\n\n/** Exported for testing */\nexport function findMostRecentSession(sessionDir: string, cwd?: string): string | null {\n\tconst resolvedSessionDir = normalizePath(sessionDir);\n\tconst resolvedCwd = cwd ? resolvePath(cwd) : undefined;\n\ttry {\n\t\tconst files = readdirSync(resolvedSessionDir)\n\t\t\t.filter((f) => f.endsWith(\".jsonl\"))\n\t\t\t.map((f) => join(resolvedSessionDir, f))\n\t\t\t.map((path) => ({ path, header: readSessionHeaderForDiscovery(path) }))\n\t\t\t.filter(\n\t\t\t\t(file): file is { path: string; header: SessionHeader } =>\n\t\t\t\t\tfile.header !== null &&\n\t\t\t\t\t(!resolvedCwd || sessionCwdMatches(getSessionHeaderCwd(file.header), resolvedCwd)),\n\t\t\t)\n\t\t\t.map(({ path }) => ({ path, mtime: statSync(path).mtime }))\n\t\t\t.sort((a, b) => b.mtime.getTime() - a.mtime.getTime());\n\n\t\treturn files[0]?.path || null;\n\t} catch {\n\t\t// Directory access and stat races make recent-session discovery unavailable.\n\t\treturn null;\n\t}\n}\n\n/**\n * Manages conversation sessions as append-only trees stored in JSONL files.\n *\n * Each session entry has an id and parentId forming a tree structure. The \"leaf\"\n * pointer tracks the current position. Appending creates a child of the current leaf.\n * Branching moves the leaf to an earlier entry, allowing new branches without\n * modifying history.\n *\n * Use buildSessionContext() to get the resolved message list for the LLM, which\n * handles compaction summaries and follows the path from root to current leaf.\n */\nexport class SessionManager {\n\tprivate sessionId: string = \"\";\n\tprivate sessionFile: string | undefined;\n\tprivate sessionDir: string;\n\tprivate cwd: string;\n\tprivate persist: boolean;\n\tprivate flushed: boolean = false;\n\tprivate fileEntries: FileEntry[] = [];\n\tprivate byId: Map<string, SessionEntry> = new Map();\n\t// Runtime-only identity tracking lets AgentSession compare messages to a\n\t// compaction boundary by append order rather than provider timestamps.\n\t// Materialized persisted messages are bound as they are read; only pending\n\t// messages that have not reached a session entry use AgentSession's fallback.\n\tprivate entryOrdersById: Map<string, number> = new Map();\n\tprivate messageEntryPositions = new WeakMap<AgentMessage, { entryId: string; order: number }>();\n\tprivate labelsById: Map<string, string> = new Map();\n\tprivate labelTimestampsById: Map<string, string> = new Map();\n\tprivate leafId: string | null = null;\n\tprivate residentStore = new ResidentStringStore();\n\t// Monotonic counter bumped by every mutator; memoized materialized views are\n\t// keyed on it so read hot paths (footer, RPC) never re-materialize unchanged sessions.\n\tprivate mutationCount = 0;\n\tprivate entriesCache: { mutation: number; entries: SessionEntry[] } | null = null;\n\tprivate branchCache: { leafId: string | null; mutation: number; entries: SessionEntry[] } | null = null;\n\tprivate sessionNameCache: string | undefined = undefined;\n\t// Running usage totals over ALL entries (not branch-scoped), maintained\n\t// incrementally on assistant-message append and rebuilt from scratch in\n\t// _buildIndex()/newSession. Usage fields are numeric and unaffected by\n\t// string externalization, so the resident form can be read directly.\n\tprivate usageTotals: UsageTotals = {\n\t\tinput: 0,\n\t\toutput: 0,\n\t\tcacheRead: 0,\n\t\tcacheWrite: 0,\n\t\tcost: 0,\n\t\tlatestCacheHitRate: undefined,\n\t};\n\n\tprivate constructor(\n\t\tcwd: string,\n\t\tsessionDir: string,\n\t\tsessionFile: string | undefined,\n\t\tpersist: boolean,\n\t\tnewSessionOptions?: NewSessionOptions,\n\t\tpreloadedFileEntries?: FileEntry[],\n\t) {\n\t\tthis.cwd = resolvePath(cwd);\n\t\tthis.sessionDir = normalizePath(sessionDir);\n\t\tthis.persist = persist;\n\t\tif (persist && this.sessionDir && !existsSync(this.sessionDir)) {\n\t\t\tmkdirSync(this.sessionDir, { recursive: true });\n\t\t}\n\n\t\tif (sessionFile) {\n\t\t\tthis._setSessionFile(sessionFile, preloadedFileEntries);\n\t\t} else {\n\t\t\tthis.newSession(newSessionOptions);\n\t\t}\n\t}\n\n\t/** Switch to a different session file (used for resume and branching) */\n\tsetSessionFile(sessionFile: string): void {\n\t\tthis._setSessionFile(sessionFile);\n\t}\n\n\tprivate _setSessionFile(sessionFile: string, preloadedFileEntries?: FileEntry[]): void {\n\t\tthis.sessionFile = resolvePath(sessionFile);\n\t\tthis.residentStore.clear();\n\t\tif (existsSync(this.sessionFile)) {\n\t\t\tthis.fileEntries = preloadedFileEntries ?? loadEntriesFromFile(this.sessionFile);\n\n\t\t\t// If file was empty, initialize it with a valid session header. If it was\n\t\t\t// non-empty but did not parse as a pi session, fail without modifying it.\n\t\t\tif (this.fileEntries.length === 0) {\n\t\t\t\tconst explicitPath = this.sessionFile;\n\t\t\t\tif (statSync(explicitPath).size > 0) {\n\t\t\t\t\tthrow new Error(`Session file is not a valid ${APP_NAME} session: ${explicitPath}`);\n\t\t\t\t}\n\t\t\t\tthis.newSession();\n\t\t\t\tthis.sessionFile = explicitPath;\n\t\t\t\tthis._rewriteFile();\n\t\t\t\tthis.flushed = true;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst header = this.fileEntries.find((e) => e.type === \"session\") as SessionHeader | undefined;\n\t\t\tthis.sessionId = header?.id ?? createSessionId();\n\n\t\t\tif (migrateToCurrentVersion(this.fileEntries)) {\n\t\t\t\tthis._rewriteFile();\n\t\t\t}\n\n\t\t\tthis.fileEntries = this.fileEntries.map((entry) => this.residentStore.externalize(entry));\n\t\t\tthis._buildIndex();\n\t\t\tthis.mutationCount++;\n\t\t\tthis.flushed = true;\n\t\t} else {\n\t\t\tconst explicitPath = this.sessionFile;\n\t\t\tthis.newSession();\n\t\t\tthis.sessionFile = explicitPath; // preserve explicit path from --session flag\n\t\t}\n\t}\n\n\tnewSession(options?: NewSessionOptions): string | undefined {\n\t\tif (options?.id !== undefined) {\n\t\t\tassertValidSessionId(options.id);\n\t\t}\n\t\tthis.sessionId = options?.id ?? createSessionId();\n\t\tconst timestamp = new Date().toISOString();\n\t\tconst header: SessionHeader = {\n\t\t\ttype: \"session\",\n\t\t\tversion: CURRENT_SESSION_VERSION,\n\t\t\tid: this.sessionId,\n\t\t\ttimestamp,\n\t\t\tcwd: this.cwd,\n\t\t\tparentSession: options?.parentSession,\n\t\t};\n\t\tthis.fileEntries = [header];\n\t\tthis.residentStore.clear();\n\t\tthis.byId.clear();\n\t\tthis.entryOrdersById.clear();\n\t\tthis.messageEntryPositions = new WeakMap();\n\t\tthis.labelsById.clear();\n\t\tthis.labelTimestampsById.clear();\n\t\tthis.leafId = null;\n\t\tthis.sessionNameCache = undefined;\n\t\tthis.usageTotals = {\n\t\t\tinput: 0,\n\t\t\toutput: 0,\n\t\t\tcacheRead: 0,\n\t\t\tcacheWrite: 0,\n\t\t\tcost: 0,\n\t\t\tlatestCacheHitRate: undefined,\n\t\t};\n\t\tthis.mutationCount++;\n\t\tthis.flushed = false;\n\n\t\tif (this.persist) {\n\t\t\tconst fileTimestamp = timestamp.replace(/[:.]/g, \"-\");\n\t\t\tthis.sessionFile = join(this.getSessionDir(), `${fileTimestamp}_${this.sessionId}.jsonl`);\n\t\t}\n\t\treturn this.sessionFile;\n\t}\n\n\tprivate _buildIndex(): void {\n\t\tthis.byId.clear();\n\t\tthis.entryOrdersById.clear();\n\t\tthis.messageEntryPositions = new WeakMap();\n\t\tthis.labelsById.clear();\n\t\tthis.labelTimestampsById.clear();\n\t\tthis.leafId = null;\n\t\tthis.sessionNameCache = undefined;\n\t\tthis.usageTotals = {\n\t\t\tinput: 0,\n\t\t\toutput: 0,\n\t\t\tcacheRead: 0,\n\t\t\tcacheWrite: 0,\n\t\t\tcost: 0,\n\t\t\tlatestCacheHitRate: undefined,\n\t\t};\n\t\tfor (const [order, entry] of this.fileEntries.entries()) {\n\t\t\tif (entry.type === \"session\") continue;\n\t\t\tthis.byId.set(entry.id, entry);\n\t\t\tthis.entryOrdersById.set(entry.id, order);\n\t\t\tthis.leafId = entry.id;\n\t\t\tthis._accumulateUsage(entry);\n\t\t\tif (entry.type === \"session_info\") {\n\t\t\t\t// Empty names explicitly clear the session title.\n\t\t\t\tthis.sessionNameCache = entry.name?.trim() || undefined;\n\t\t\t}\n\t\t\tif (entry.type === \"label\") {\n\t\t\t\tif (entry.label) {\n\t\t\t\t\tthis.labelsById.set(entry.targetId, entry.label);\n\t\t\t\t\tthis.labelTimestampsById.set(entry.targetId, entry.timestamp);\n\t\t\t\t} else {\n\t\t\t\t\tthis.labelsById.delete(entry.targetId);\n\t\t\t\t\tthis.labelTimestampsById.delete(entry.targetId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _rewriteFile(): void {\n\t\tif (!this.persist || !this.sessionFile) return;\n\t\tconst fd = openSync(this.sessionFile, \"w\");\n\t\ttry {\n\t\t\tfor (const entry of this.fileEntries) {\n\t\t\t\twriteFileSync(fd, `${JSON.stringify(this.residentStore.materialize(entry))}\\n`);\n\t\t\t}\n\t\t} finally {\n\t\t\tcloseSync(fd);\n\t\t}\n\t}\n\n\tisPersisted(): boolean {\n\t\treturn this.persist;\n\t}\n\n\tgetCwd(): string {\n\t\treturn this.cwd;\n\t}\n\n\tgetSessionDir(): string {\n\t\treturn this.sessionDir;\n\t}\n\n\tusesDefaultSessionDir(): boolean {\n\t\treturn this.sessionDir === getDefaultSessionDirPath(this.cwd);\n\t}\n\n\tgetSessionId(): string {\n\t\treturn this.sessionId;\n\t}\n\n\tgetSessionFile(): string | undefined {\n\t\treturn this.sessionFile;\n\t}\n\n\tgetResidentStoreStats(): ResidentStoreStats {\n\t\treturn this.residentStore.stats();\n\t}\n\n\t_persist(entry: SessionEntry): void {\n\t\tif (!this.persist || !this.sessionFile) return;\n\t\tconst persistedEntry = this.residentStore.materialize(entry);\n\n\t\tconst hasAssistant = this.fileEntries.some((e) => e.type === \"message\" && e.message.role === \"assistant\");\n\t\tif (!hasAssistant) {\n\t\t\tif (this.flushed) {\n\t\t\t\tappendFileSync(this.sessionFile, `${JSON.stringify(persistedEntry)}\\n`);\n\t\t\t} else {\n\t\t\t\t// Mark as not flushed so when assistant arrives, all entries get written\n\t\t\t\tthis.flushed = false;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.flushed) {\n\t\t\tconst fd = openSync(this.sessionFile, \"wx\");\n\t\t\ttry {\n\t\t\t\tfor (const e of this.fileEntries) {\n\t\t\t\t\twriteFileSync(fd, `${JSON.stringify(this.residentStore.materialize(e))}\\n`);\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tcloseSync(fd);\n\t\t\t}\n\t\t\tthis.flushed = true;\n\t\t} else {\n\t\t\tappendFileSync(this.sessionFile, `${JSON.stringify(persistedEntry)}\\n`);\n\t\t}\n\t}\n\n\tprivate _appendEntry(entry: SessionEntry): void {\n\t\tconst residentEntry = this.residentStore.externalize(entry);\n\t\tthis.fileEntries.push(residentEntry);\n\t\tthis.byId.set(residentEntry.id, residentEntry);\n\t\tthis.entryOrdersById.set(residentEntry.id, this.fileEntries.length - 1);\n\t\tthis.leafId = residentEntry.id;\n\t\tthis._accumulateUsage(residentEntry);\n\t\tthis.mutationCount++;\n\t\tthis._persist(residentEntry);\n\t}\n\n\tprivate _materializeEntry(entry: SessionEntry): SessionEntry {\n\t\tconst materialized = this.residentStore.materialize(entry);\n\t\tif (materialized.type === \"message\") {\n\t\t\tconst order = this.entryOrdersById.get(materialized.id);\n\t\t\tif (order !== undefined) {\n\t\t\t\tthis.messageEntryPositions.set(materialized.message, { entryId: materialized.id, order });\n\t\t\t}\n\t\t}\n\t\treturn materialized;\n\t}\n\n\t/**\n\t * Fold one entry into the running usage totals. Totals iterate ALL entries\n\t * (not branch-scoped), matching the footer hot path's historical semantics.\n\t */\n\tprivate _accumulateUsage(entry: SessionEntry): void {\n\t\tif (entry.type !== \"message\" || entry.message.role !== \"assistant\") return;\n\t\tconst usage = entry.message.usage;\n\t\t// Assistant messages persisted without usage (e.g. aborted/error turns in\n\t\t// older session files) contribute nothing to the running totals.\n\t\tif (!usage) return;\n\t\tthis.usageTotals.input += usage.input;\n\t\tthis.usageTotals.output += usage.output;\n\t\tthis.usageTotals.cacheRead += usage.cacheRead;\n\t\tthis.usageTotals.cacheWrite += usage.cacheWrite;\n\t\tthis.usageTotals.cost += usage.cost?.total ?? 0;\n\t\tconst latestPromptTokens = usage.input + usage.cacheRead + usage.cacheWrite;\n\t\tthis.usageTotals.latestCacheHitRate =\n\t\t\tlatestPromptTokens > 0 ? (usage.cacheRead / latestPromptTokens) * 100 : undefined;\n\t}\n\n\t/**\n\t * O(1) running usage totals across ALL session entries (not branch-scoped).\n\t * Maintained incrementally; identical to summing usage over getEntries().\n\t */\n\tgetUsageTotals(): UsageTotals {\n\t\treturn this.usageTotals;\n\t}\n\n\t/** Append a message as child of current leaf, then advance leaf. Returns entry id.\n\t * Does not allow writing CompactionSummaryMessage and BranchSummaryMessage directly.\n\t * Reason: we want these to be top-level entries in the session, not message session entries,\n\t * so it is easier to find them.\n\t * These need to be appended via appendCompaction() and appendBranchSummary() methods.\n\t */\n\tappendMessage(message: Message | CustomMessage | BashExecutionMessage): string {\n\t\tconst entry: SessionMessageEntry = {\n\t\t\ttype: \"message\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tmessage,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\tconst order = this.entryOrdersById.get(entry.id);\n\t\tif (order !== undefined) {\n\t\t\tthis.messageEntryPositions.set(message, { entryId: entry.id, order });\n\t\t}\n\t\treturn entry.id;\n\t}\n\n\t/** Runtime append position for this exact persisted message object, if known. */\n\tgetMessageEntryPosition(message: AgentMessage): Readonly<{ entryId: string; order: number }> | undefined {\n\t\treturn this.messageEntryPositions.get(message);\n\t}\n\n\t/** Runtime/file append position for an entry, used with getMessageEntryPosition(). */\n\tgetEntryOrder(entryId: string): number | undefined {\n\t\treturn this.entryOrdersById.get(entryId);\n\t}\n\n\t/** Append a thinking level change as child of current leaf, then advance leaf. Returns entry id. */\n\tappendThinkingLevelChange(thinkingLevel: string, thinkingSelection?: ThinkingSelection): string {\n\t\tconst entry: ThinkingLevelChangeEntry = {\n\t\t\ttype: \"thinking_level_change\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tthinkingLevel,\n\t\t\tthinkingSelection,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/** Append a model change as child of current leaf, then advance leaf. Returns entry id. */\n\tappendModelChange(\n\t\tprovider: string,\n\t\tmodelId: string,\n\t\treason?: \"fallback\" | \"fallback-revert\",\n\t\toriginalProvider?: string,\n\t\toriginalModelId?: string,\n\t): string {\n\t\tconst entry: ModelChangeEntry = {\n\t\t\ttype: \"model_change\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tprovider,\n\t\t\tmodelId,\n\t\t\treason,\n\t\t\toriginalProvider,\n\t\t\toriginalModelId,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/** Append a compaction summary as child of current leaf, then advance leaf. Returns entry id. */\n\tappendCompaction<T = unknown>(\n\t\tsummary: string,\n\t\tfirstKeptEntryId: string,\n\t\ttokensBefore: number,\n\t\tdetails?: T,\n\t\tfromHook?: boolean,\n\t\tusage?: Usage,\n\t): string {\n\t\tconst entry: CompactionEntry<T> = {\n\t\t\ttype: \"compaction\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tsummary,\n\t\t\tfirstKeptEntryId,\n\t\t\ttokensBefore,\n\t\t\tdetails,\n\t\t\tusage,\n\t\t\tfromHook,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/** Append a custom entry (for extensions) as child of current leaf, then advance leaf. Returns entry id. */\n\tappendCustomEntry(customType: string, data?: unknown): string {\n\t\tconst entry: CustomEntry = {\n\t\t\ttype: \"custom\",\n\t\t\tcustomType,\n\t\t\tdata,\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/** Append a session info entry (e.g., display name). Returns entry id. */\n\tappendSessionInfo(name: string): string {\n\t\tconst sanitizedName = name.replace(/[\\r\\n]+/g, \" \").trim();\n\t\tconst entry: SessionInfoEntry = {\n\t\t\ttype: \"session_info\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tname: sanitizedName,\n\t\t};\n\t\tthis.sessionNameCache = sanitizedName || undefined;\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/**\n\t * Get the current session name from the latest session_info entry, if any.\n\t * O(1): the value is maintained incrementally on appendSessionInfo() and index rebuilds.\n\t */\n\tgetSessionName(): string | undefined {\n\t\treturn this.sessionNameCache;\n\t}\n\n\t/**\n\t * Append a custom message entry (for extensions) that participates in LLM context.\n\t * @param customType Extension identifier for filtering on reload\n\t * @param content Message content (string or TextContent/ImageContent array)\n\t * @param display Whether to show in TUI (true = styled display, false = hidden)\n\t * @param details Optional extension-specific metadata (not sent to LLM)\n\t * @returns Entry id\n\t */\n\tappendCustomMessageEntry<T = unknown>(\n\t\tcustomType: string,\n\t\tcontent: string | (TextContent | ImageContent)[],\n\t\tdisplay: boolean,\n\t\tdetails?: T,\n\t): string {\n\t\tconst entry: CustomMessageEntry<T> = {\n\t\t\ttype: \"custom_message\",\n\t\t\tcustomType,\n\t\t\tcontent,\n\t\t\tdisplay,\n\t\t\tdetails,\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t// =========================================================================\n\t// Tree Traversal\n\t// =========================================================================\n\n\tgetLeafId(): string | null {\n\t\treturn this.leafId;\n\t}\n\n\tgetLeafEntry(): SessionEntry | undefined {\n\t\tconst entry = this.leafId ? this.byId.get(this.leafId) : undefined;\n\t\treturn entry ? this._materializeEntry(entry) : undefined;\n\t}\n\n\tgetEntry(id: string): SessionEntry | undefined {\n\t\tconst entry = this.byId.get(id);\n\t\treturn entry ? this._materializeEntry(entry) : undefined;\n\t}\n\n\t/**\n\t * Get all direct children of an entry.\n\t */\n\tgetChildren(parentId: string): SessionEntry[] {\n\t\tconst children: SessionEntry[] = [];\n\t\tfor (const entry of this.byId.values()) {\n\t\t\tif (entry.parentId === parentId) {\n\t\t\t\tchildren.push(this._materializeEntry(entry));\n\t\t\t}\n\t\t}\n\t\treturn children;\n\t}\n\n\t/**\n\t * Get the label for an entry, if any.\n\t */\n\tgetLabel(id: string): string | undefined {\n\t\treturn this.labelsById.get(id);\n\t}\n\n\t/**\n\t * Set or clear a label on an entry.\n\t * Labels are user-defined markers for bookmarking/navigation.\n\t * Pass undefined or empty string to clear the label.\n\t */\n\tappendLabelChange(targetId: string, label: string | undefined): string {\n\t\tif (!this.byId.has(targetId)) {\n\t\t\tthrow new Error(`Entry ${targetId} not found`);\n\t\t}\n\t\tconst entry: LabelEntry = {\n\t\t\ttype: \"label\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: this.leafId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\ttargetId,\n\t\t\tlabel,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\tif (label) {\n\t\t\tthis.labelsById.set(targetId, label);\n\t\t\tthis.labelTimestampsById.set(targetId, entry.timestamp);\n\t\t} else {\n\t\t\tthis.labelsById.delete(targetId);\n\t\t\tthis.labelTimestampsById.delete(targetId);\n\t\t}\n\t\treturn entry.id;\n\t}\n\n\t/**\n\t * Walk from entry to root, returning all entries in path order.\n\t * Includes all entry types (messages, compaction, model changes, etc.).\n\t * Use buildSessionContext() to get the resolved messages for the LLM.\n\t */\n\tgetBranch(fromId?: string): SessionEntry[] {\n\t\t// No-arg reads (the common hot path) are memoized on (leafId, mutationCount);\n\t\t// explicit fromId lookups bypass the cache.\n\t\tif (\n\t\t\tfromId === undefined &&\n\t\t\tthis.branchCache !== null &&\n\t\t\tthis.branchCache.leafId === this.leafId &&\n\t\t\tthis.branchCache.mutation === this.mutationCount\n\t\t) {\n\t\t\treturn this.branchCache.entries;\n\t\t}\n\t\tconst path: SessionEntry[] = [];\n\t\tconst startId = fromId ?? this.leafId;\n\t\tlet current = startId ? this.byId.get(startId) : undefined;\n\t\twhile (current) {\n\t\t\tpath.unshift(this._materializeEntry(current));\n\t\t\tcurrent = current.parentId ? this.byId.get(current.parentId) : undefined;\n\t\t}\n\t\tif (fromId === undefined) {\n\t\t\tthis.branchCache = { leafId: this.leafId, mutation: this.mutationCount, entries: path };\n\t\t}\n\t\treturn path;\n\t}\n\n\t/**\n\t * Build the active, compaction-aware entry list for context/rendering.\n\t * Uses tree traversal from current leaf.\n\t */\n\tbuildContextEntries(): SessionEntry[] {\n\t\treturn buildContextEntries(this.getEntries(), this.leafId);\n\t}\n\n\t/**\n\t * Build the session context (what gets sent to the LLM).\n\t * Uses tree traversal from current leaf.\n\t */\n\tbuildSessionContext(): SessionContext {\n\t\treturn buildSessionContext(this.getEntries(), this.leafId);\n\t}\n\n\thasContextMessages(): boolean {\n\t\treturn this.hasBranchEntry(\n\t\t\t(entry) =>\n\t\t\t\tentry.type === \"message\" ||\n\t\t\t\tentry.type === \"custom_message\" ||\n\t\t\t\tentry.type === \"compaction\" ||\n\t\t\t\t(entry.type === \"branch_summary\" && Boolean(entry.summary)),\n\t\t);\n\t}\n\n\thasThinkingLevelChanges(): boolean {\n\t\treturn this.hasBranchEntry((entry) => entry.type === \"thinking_level_change\");\n\t}\n\n\tcountCompactions(): number {\n\t\tlet count = 0;\n\t\tfor (const entry of this.fileEntries) {\n\t\t\tif (entry.type === \"compaction\") count++;\n\t\t}\n\t\treturn count;\n\t}\n\n\tprivate hasBranchEntry(predicate: (entry: SessionEntry) => boolean): boolean {\n\t\tlet current = this.leafId ? this.byId.get(this.leafId) : undefined;\n\t\twhile (current) {\n\t\t\tif (predicate(current)) return true;\n\t\t\tcurrent = current.parentId ? this.byId.get(current.parentId) : undefined;\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * Get session header.\n\t */\n\tgetHeader(): SessionHeader | null {\n\t\tconst h = this.fileEntries.find((e) => e.type === \"session\");\n\t\treturn h ? this.residentStore.materialize(h as SessionHeader) : null;\n\t}\n\n\t/**\n\t * Get all session entries (excludes header).\n\t * The session is append-only: use appendXXX() to add entries, branch() to\n\t * change the leaf pointer. Entries cannot be modified or deleted.\n\t *\n\t * The result is memoized behind the session mutation counter: repeated calls\n\t * without an intervening mutation return the SAME shared array instance.\n\t * Callers must not mutate the returned array or its entries; copy first if\n\t * you need to filter/reorder.\n\t */\n\tgetEntries(): SessionEntry[] {\n\t\tif (this.entriesCache !== null && this.entriesCache.mutation === this.mutationCount) {\n\t\t\treturn this.entriesCache.entries;\n\t\t}\n\t\tconst entries = this.fileEntries\n\t\t\t.filter((e): e is SessionEntry => e.type !== \"session\")\n\t\t\t.map((entry) => this._materializeEntry(entry));\n\t\tthis.entriesCache = { mutation: this.mutationCount, entries };\n\t\treturn entries;\n\t}\n\n\t/**\n\t * Get the session as a tree structure. Returns a shallow defensive copy of all entries.\n\t * A well-formed session has exactly one root (first entry with parentId === null).\n\t * Orphaned entries (broken parent chain) are also returned as roots.\n\t */\n\tgetTree(): SessionTreeNode[] {\n\t\tconst entries = this.getEntries();\n\t\tconst nodeMap = new Map<string, SessionTreeNode>();\n\t\tconst roots: SessionTreeNode[] = [];\n\n\t\t// Create nodes with resolved labels\n\t\tfor (const entry of entries) {\n\t\t\tconst label = this.labelsById.get(entry.id);\n\t\t\tconst labelTimestamp = this.labelTimestampsById.get(entry.id);\n\t\t\tnodeMap.set(entry.id, { entry, children: [], label, labelTimestamp });\n\t\t}\n\n\t\t// Build tree\n\t\tfor (const entry of entries) {\n\t\t\tconst node = nodeMap.get(entry.id)!;\n\t\t\tif (entry.parentId === null || entry.parentId === entry.id) {\n\t\t\t\troots.push(node);\n\t\t\t} else {\n\t\t\t\tconst parent = nodeMap.get(entry.parentId);\n\t\t\t\tif (parent) {\n\t\t\t\t\tparent.children.push(node);\n\t\t\t\t} else {\n\t\t\t\t\t// Orphan - treat as root\n\t\t\t\t\troots.push(node);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Sort children by timestamp (oldest first, newest at bottom)\n\t\t// Use iterative approach to avoid stack overflow on deep trees\n\t\tconst stack: SessionTreeNode[] = [...roots];\n\t\twhile (stack.length > 0) {\n\t\t\tconst node = stack.pop()!;\n\t\t\tnode.children.sort((a, b) => new Date(a.entry.timestamp).getTime() - new Date(b.entry.timestamp).getTime());\n\t\t\tstack.push(...node.children);\n\t\t}\n\n\t\treturn roots;\n\t}\n\n\t// =========================================================================\n\t// Branching\n\t// =========================================================================\n\n\t/**\n\t * Start a new branch from an earlier entry.\n\t * Moves the leaf pointer to the specified entry. The next appendXXX() call\n\t * will create a child of that entry, forming a new branch. Existing entries\n\t * are not modified or deleted.\n\t */\n\tbranch(branchFromId: string): void {\n\t\tif (!this.byId.has(branchFromId)) {\n\t\t\tthrow new Error(`Entry ${branchFromId} not found`);\n\t\t}\n\t\tthis.leafId = branchFromId;\n\t\tthis.mutationCount++;\n\t}\n\n\t/**\n\t * Reset the leaf pointer to null (before any entries).\n\t * The next appendXXX() call will create a new root entry (parentId = null).\n\t * Use this when navigating to re-edit the first user message.\n\t */\n\tresetLeaf(): void {\n\t\tthis.leafId = null;\n\t\tthis.mutationCount++;\n\t}\n\n\t/**\n\t * Start a new branch with a summary of the abandoned path.\n\t * Same as branch(), but also appends a branch_summary entry that captures\n\t * context from the abandoned conversation path.\n\t */\n\tbranchWithSummary(\n\t\tbranchFromId: string | null,\n\t\tsummary: string,\n\t\tdetails?: unknown,\n\t\tfromHook?: boolean,\n\t\tusage?: Usage,\n\t): string {\n\t\tif (branchFromId !== null && !this.byId.has(branchFromId)) {\n\t\t\tthrow new Error(`Entry ${branchFromId} not found`);\n\t\t}\n\t\tthis.leafId = branchFromId;\n\t\tconst entry: BranchSummaryEntry = {\n\t\t\ttype: \"branch_summary\",\n\t\t\tid: generateId(this.byId),\n\t\t\tparentId: branchFromId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tfromId: branchFromId ?? \"root\",\n\t\t\tsummary,\n\t\t\tdetails,\n\t\t\tusage,\n\t\t\tfromHook,\n\t\t};\n\t\tthis._appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\t/**\n\t * Create a new session file containing only the path from root to the specified leaf.\n\t * Useful for extracting a single conversation path from a branched session.\n\t * Returns the new session file path, or undefined if not persisting.\n\t */\n\tcreateBranchedSession(leafId: string): string | undefined {\n\t\tconst previousSessionFile = this.sessionFile;\n\t\tconst path = this.getBranch(leafId);\n\t\tif (path.length === 0) {\n\t\t\tthrow new Error(`Entry ${leafId} not found`);\n\t\t}\n\n\t\t// Filter out LabelEntry from path - we'll recreate them from the resolved map.\n\t\t// Because labels are real tree entries, later entries can be children of labels;\n\t\t// removing labels requires re-chaining the retained path to avoid orphaned subtrees.\n\t\tconst pathWithoutLabels: SessionEntry[] = [];\n\t\tlet pathParentId: string | null = null;\n\t\tfor (const entry of path) {\n\t\t\tif (entry.type === \"label\") continue;\n\t\t\tpathWithoutLabels.push({ ...entry, parentId: pathParentId });\n\t\t\tpathParentId = entry.id;\n\t\t}\n\n\t\tconst newSessionId = createSessionId();\n\t\tconst timestamp = new Date().toISOString();\n\t\tconst fileTimestamp = timestamp.replace(/[:.]/g, \"-\");\n\t\tconst newSessionFile = join(this.getSessionDir(), `${fileTimestamp}_${newSessionId}.jsonl`);\n\n\t\tconst header: SessionHeader = {\n\t\t\ttype: \"session\",\n\t\t\tversion: CURRENT_SESSION_VERSION,\n\t\t\tid: newSessionId,\n\t\t\ttimestamp,\n\t\t\tcwd: this.cwd,\n\t\t\tparentSession: this.persist ? previousSessionFile : undefined,\n\t\t};\n\n\t\t// Collect labels for entries in the path\n\t\tconst pathEntryIds = new Set(pathWithoutLabels.map((e) => e.id));\n\t\tconst labelsToWrite: Array<{ targetId: string; label: string; timestamp: string }> = [];\n\t\tfor (const [targetId, label] of this.labelsById) {\n\t\t\tif (pathEntryIds.has(targetId)) {\n\t\t\t\tlabelsToWrite.push({ targetId, label, timestamp: this.labelTimestampsById.get(targetId)! });\n\t\t\t}\n\t\t}\n\n\t\tif (this.persist) {\n\t\t\t// Build label entries\n\t\t\tconst lastEntryId = pathWithoutLabels[pathWithoutLabels.length - 1]?.id || null;\n\t\t\tlet parentId = lastEntryId;\n\t\t\tconst labelEntries: LabelEntry[] = [];\n\t\t\tfor (const { targetId, label, timestamp: labelTimestamp } of labelsToWrite) {\n\t\t\t\tconst labelEntry: LabelEntry = {\n\t\t\t\t\ttype: \"label\",\n\t\t\t\t\tid: generateId(new Set(pathEntryIds)),\n\t\t\t\t\tparentId,\n\t\t\t\t\ttimestamp: labelTimestamp,\n\t\t\t\t\ttargetId,\n\t\t\t\t\tlabel,\n\t\t\t\t};\n\t\t\t\tpathEntryIds.add(labelEntry.id);\n\t\t\t\tlabelEntries.push(labelEntry);\n\t\t\t\tparentId = labelEntry.id;\n\t\t\t}\n\n\t\t\tthis.residentStore.clear();\n\t\t\tthis.fileEntries = [header, ...pathWithoutLabels, ...labelEntries].map((entry) =>\n\t\t\t\tthis.residentStore.externalize(entry),\n\t\t\t);\n\t\t\tthis.sessionId = newSessionId;\n\t\t\tthis.sessionFile = newSessionFile;\n\t\t\tthis._buildIndex();\n\t\t\tthis.mutationCount++;\n\n\t\t\t// Only write the file now if it contains an assistant message.\n\t\t\t// Otherwise defer to _persist(), which creates the file on the\n\t\t\t// first assistant response, matching the newSession() contract\n\t\t\t// and avoiding the duplicate-header bug when _persist()'s\n\t\t\t// no-assistant guard later resets flushed to false.\n\t\t\tconst hasAssistant = this.fileEntries.some((e) => e.type === \"message\" && e.message.role === \"assistant\");\n\t\t\tif (hasAssistant) {\n\t\t\t\tthis._rewriteFile();\n\t\t\t\tthis.flushed = true;\n\t\t\t} else {\n\t\t\t\tthis.flushed = false;\n\t\t\t}\n\n\t\t\treturn newSessionFile;\n\t\t}\n\n\t\t// In-memory mode: replace current session with the path + labels\n\t\tconst labelEntries: LabelEntry[] = [];\n\t\tlet parentId = pathWithoutLabels[pathWithoutLabels.length - 1]?.id || null;\n\t\tfor (const { targetId, label, timestamp: labelTimestamp } of labelsToWrite) {\n\t\t\tconst labelEntry: LabelEntry = {\n\t\t\t\ttype: \"label\",\n\t\t\t\tid: generateId(new Set([...pathEntryIds, ...labelEntries.map((e) => e.id)])),\n\t\t\t\tparentId,\n\t\t\t\ttimestamp: labelTimestamp,\n\t\t\t\ttargetId,\n\t\t\t\tlabel,\n\t\t\t};\n\t\t\tlabelEntries.push(labelEntry);\n\t\t\tparentId = labelEntry.id;\n\t\t}\n\t\tthis.residentStore.clear();\n\t\tthis.fileEntries = [header, ...pathWithoutLabels, ...labelEntries].map((entry) =>\n\t\t\tthis.residentStore.externalize(entry),\n\t\t);\n\t\tthis.sessionId = newSessionId;\n\t\tthis._buildIndex();\n\t\tthis.mutationCount++;\n\t\treturn undefined;\n\t}\n\n\t/**\n\t * Create a new session.\n\t * @param cwd Working directory (stored in session header)\n\t * @param sessionDir Optional session directory. If omitted, uses default (~/.senpi/agent/sessions/<encoded-cwd>/).\n\t */\n\tstatic create(cwd: string, sessionDir?: string, options?: NewSessionOptions): SessionManager {\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : getDefaultSessionDir(cwd);\n\t\treturn new SessionManager(cwd, dir, undefined, true, options);\n\t}\n\n\t/**\n\t * Open a specific session file.\n\t * @param path Path to session file\n\t * @param sessionDir Optional session directory for /new or /branch. If omitted, derives from file's parent.\n\t * @param cwdOverride Optional cwd override instead of the session header cwd.\n\t */\n\tstatic open(path: string, sessionDir?: string, cwdOverride?: string): SessionManager {\n\t\tconst resolvedPath = resolvePath(path);\n\t\tlet header: SessionHeader | null = null;\n\t\tlet preloadedFileEntries: FileEntry[] | undefined;\n\t\tif (cwdOverride === undefined && existsSync(resolvedPath)) {\n\t\t\ttry {\n\t\t\t\theader = readSessionHeader(resolvedPath);\n\t\t\t} catch (error) {\n\t\t\t\tif (!(error instanceof SessionHeaderScanLimitError)) throw error;\n\t\t\t\t// The bounded scan is only a discovery optimization. A full load remains\n\t\t\t\t// authoritative for legacy files with very large headers or prefixes.\n\t\t\t\tpreloadedFileEntries = loadEntriesFromFile(resolvedPath);\n\t\t\t\tconst firstEntry = preloadedFileEntries[0];\n\t\t\t\theader = firstEntry?.type === \"session\" ? firstEntry : null;\n\t\t\t}\n\t\t}\n\t\tconst cwd = cwdOverride ?? (header ? getSessionHeaderCwd(header) : undefined) ?? process.cwd();\n\t\t// If no sessionDir provided, derive from file's parent directory\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : resolve(resolvedPath, \"..\");\n\t\treturn new SessionManager(cwd, dir, resolvedPath, true, undefined, preloadedFileEntries);\n\t}\n\n\t/**\n\t * Continue the most recent session, or create new if none.\n\t * @param cwd Working directory\n\t * @param sessionDir Optional session directory. If omitted, uses default (~/.senpi/agent/sessions/<encoded-cwd>/).\n\t */\n\tstatic continueRecent(cwd: string, sessionDir?: string): SessionManager {\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : getDefaultSessionDir(cwd);\n\t\tconst filterCwd = sessionDir !== undefined && dir !== getDefaultSessionDirPath(cwd);\n\t\tconst mostRecent = findMostRecentSession(dir, filterCwd ? cwd : undefined);\n\t\tif (mostRecent) {\n\t\t\treturn new SessionManager(cwd, dir, mostRecent, true);\n\t\t}\n\t\treturn new SessionManager(cwd, dir, undefined, true);\n\t}\n\n\t/** Create an in-memory session (no file persistence) */\n\tstatic inMemory(cwd: string = process.cwd(), options?: NewSessionOptions): SessionManager {\n\t\treturn new SessionManager(cwd, \"\", undefined, false, options);\n\t}\n\n\t/**\n\t * Fork a session from another project directory into the current project.\n\t * Creates a new session in the target cwd with the full history from the source session.\n\t * @param sourcePath Path to the source session file\n\t * @param targetCwd Target working directory (where the new session will be stored)\n\t * @param sessionDir Optional session directory. If omitted, uses default for targetCwd.\n\t */\n\tstatic forkFrom(\n\t\tsourcePath: string,\n\t\ttargetCwd: string,\n\t\tsessionDir?: string,\n\t\toptions?: NewSessionOptions,\n\t): SessionManager {\n\t\tconst resolvedSourcePath = resolvePath(sourcePath);\n\t\tconst resolvedTargetCwd = resolvePath(targetCwd);\n\t\tconst sourceEntries = loadEntriesFromFile(resolvedSourcePath);\n\t\tif (sourceEntries.length === 0) {\n\t\t\tthrow new Error(`Cannot fork: source session file is empty or invalid: ${resolvedSourcePath}`);\n\t\t}\n\n\t\tconst sourceHeader = sourceEntries.find((e) => e.type === \"session\") as SessionHeader | undefined;\n\t\tif (!sourceHeader) {\n\t\t\tthrow new Error(`Cannot fork: source session has no header: ${resolvedSourcePath}`);\n\t\t}\n\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : getDefaultSessionDir(resolvedTargetCwd);\n\t\tif (!existsSync(dir)) {\n\t\t\tmkdirSync(dir, { recursive: true });\n\t\t}\n\n\t\t// Create new session file with new ID but forked content\n\t\tif (options?.id !== undefined) {\n\t\t\tassertValidSessionId(options.id);\n\t\t}\n\t\tconst newSessionId = options?.id ?? createSessionId();\n\t\tconst timestamp = new Date().toISOString();\n\t\tconst fileTimestamp = timestamp.replace(/[:.]/g, \"-\");\n\t\tconst newSessionFile = join(dir, `${fileTimestamp}_${newSessionId}.jsonl`);\n\n\t\t// Write new header pointing to source as parent, with updated cwd\n\t\tconst newHeader: SessionHeader = {\n\t\t\ttype: \"session\",\n\t\t\tversion: CURRENT_SESSION_VERSION,\n\t\t\tid: newSessionId,\n\t\t\ttimestamp,\n\t\t\tcwd: resolvedTargetCwd,\n\t\t\tparentSession: resolvedSourcePath,\n\t\t};\n\t\twriteFileSync(newSessionFile, `${JSON.stringify(newHeader)}\\n`, { flag: \"wx\" });\n\n\t\t// Copy all non-header entries from source\n\t\tfor (const entry of sourceEntries) {\n\t\t\tif (entry.type !== \"session\") {\n\t\t\t\tappendFileSync(newSessionFile, `${JSON.stringify(entry)}\\n`);\n\t\t\t}\n\t\t}\n\n\t\treturn new SessionManager(resolvedTargetCwd, dir, newSessionFile, true);\n\t}\n\n\t/**\n\t * List all sessions for a directory.\n\t * @param cwd Working directory (used to compute default session directory)\n\t * @param sessionDir Optional session directory. If omitted, uses default (~/.senpi/agent/sessions/<encoded-cwd>/).\n\t * @param onProgress Optional callback for progress updates (loaded, total)\n\t */\n\tstatic async list(cwd: string, sessionDir?: string, onProgress?: SessionListProgress): Promise<SessionInfo[]> {\n\t\tconst dir = sessionDir ? normalizePath(sessionDir) : getDefaultSessionDir(cwd);\n\t\tconst filterCwd = sessionDir !== undefined && dir !== getDefaultSessionDirPath(cwd);\n\t\tconst resolvedCwd = resolvePath(cwd);\n\t\tconst sessions = (await listSessionsFromDir(dir, onProgress)).filter(\n\t\t\t(session) => !filterCwd || sessionCwdMatches(session.cwd, resolvedCwd),\n\t\t);\n\t\tsessions.sort((a, b) => b.modified.getTime() - a.modified.getTime());\n\t\treturn sessions;\n\t}\n\n\t/**\n\t * List all sessions across all project directories.\n\t * @param onProgress Optional callback for progress updates (loaded, total)\n\t */\n\tstatic async listAll(onProgress?: SessionListProgress): Promise<SessionInfo[]>;\n\tstatic async listAll(sessionDir?: string, onProgress?: SessionListProgress): Promise<SessionInfo[]>;\n\tstatic async listAll(\n\t\tsessionDirOrOnProgress?: string | SessionListProgress,\n\t\tonProgress?: SessionListProgress,\n\t): Promise<SessionInfo[]> {\n\t\tconst customSessionDir =\n\t\t\ttypeof sessionDirOrOnProgress === \"string\" ? normalizePath(sessionDirOrOnProgress) : undefined;\n\t\tconst progress = typeof sessionDirOrOnProgress === \"function\" ? sessionDirOrOnProgress : onProgress;\n\t\tif (customSessionDir) {\n\t\t\tconst sessions = await listSessionsFromDir(customSessionDir, progress);\n\t\t\tsessions.sort((a, b) => b.modified.getTime() - a.modified.getTime());\n\t\t\treturn sessions;\n\t\t}\n\n\t\tconst sessionsDir = getSessionsDir();\n\n\t\ttry {\n\t\t\tif (!existsSync(sessionsDir)) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst entries = await readdir(sessionsDir, { withFileTypes: true });\n\t\t\tconst dirs = entries\n\t\t\t\t.filter((entry) => entry.isDirectory() || entry.isSymbolicLink())\n\t\t\t\t.map((entry) => join(sessionsDir, entry.name));\n\n\t\t\t// Count total files first for accurate progress\n\t\t\tlet totalFiles = 0;\n\t\t\tconst dirFiles: string[][] = [];\n\t\t\tfor (const dir of dirs) {\n\t\t\t\ttry {\n\t\t\t\t\tconst files = (await readdir(dir)).filter((f) => f.endsWith(\".jsonl\"));\n\t\t\t\t\tdirFiles.push(files.map((f) => join(dir, f)));\n\t\t\t\t\ttotalFiles += files.length;\n\t\t\t\t} catch {\n\t\t\t\t\tdirFiles.push([]);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Process all files with progress tracking\n\t\t\tlet loaded = 0;\n\t\t\tconst sessions = await listSessionInfos(dirFiles.flat(), () => {\n\t\t\t\tloaded++;\n\t\t\t\tprogress?.(loaded, totalFiles);\n\t\t\t});\n\n\t\t\tsessions.sort((a, b) => b.modified.getTime() - a.modified.getTime());\n\t\t\treturn sessions;\n\t\t} catch {\n\t\t\treturn [];\n\t\t}\n\t}\n}\n"]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { FileEntry } from "./session-manager.ts";
|
|
2
|
+
/** A user/assistant message's visible text and activity time. */
|
|
3
|
+
export type VisibleMessage = {
|
|
4
|
+
readonly text: string;
|
|
5
|
+
readonly role: "user" | "assistant";
|
|
6
|
+
readonly time: number | undefined;
|
|
7
|
+
};
|
|
8
|
+
/** Deserialize one JSONL line. Malformed lines are skipped, matching full-file session loading. */
|
|
9
|
+
export declare function parseEntryLine(line: string): FileEntry | null;
|
|
10
|
+
/** The record's visible message, or null when it is not a user/assistant message. */
|
|
11
|
+
export declare function visibleMessage(entry: FileEntry): VisibleMessage | null;
|
|
12
|
+
/** The record's display name, or null when the record is not a session_info entry. */
|
|
13
|
+
export declare function sessionInfoName(entry: FileEntry): string | undefined | null;
|
|
14
|
+
//# sourceMappingURL=session-record.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-record.d.ts","sourceRoot":"","sources":["../../src/core/session-record.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD,iEAAiE;AACjE,MAAM,MAAM,cAAc,GAAG;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC,CAAC;AAEF,mGAAmG;AACnG,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAO7D;AAoBD,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,cAAc,GAAG,IAAI,CAStE;AAED,sFAAsF;AACtF,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAG3E"}
|