@umsai/ums-code 0.3.0-v2 → 0.6.0-v1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/package.json +6 -6
- package/dist/src/{zed-integration → acp-integration}/acp.d.ts +13 -0
- package/dist/src/{zed-integration → acp-integration}/acp.js +32 -0
- package/dist/src/acp-integration/acp.js.map +1 -0
- package/dist/src/acp-integration/acpAgent.d.ts +10 -0
- package/dist/src/acp-integration/acpAgent.js +264 -0
- package/dist/src/acp-integration/acpAgent.js.map +1 -0
- package/dist/src/{zed-integration → acp-integration}/schema.d.ts +2235 -905
- package/dist/src/{zed-integration → acp-integration}/schema.js +100 -2
- package/dist/src/acp-integration/schema.js.map +1 -0
- package/dist/src/{zed-integration/fileSystemService.d.ts → acp-integration/service/filesystem.d.ts} +1 -1
- package/dist/src/{zed-integration/fileSystemService.js → acp-integration/service/filesystem.js} +14 -1
- package/dist/src/acp-integration/service/filesystem.js.map +1 -0
- package/dist/src/{ui/hooks/useQuotaAndFallback.test.d.ts → acp-integration/service/filesystem.test.d.ts} +1 -1
- package/dist/src/acp-integration/service/filesystem.test.js +39 -0
- package/dist/src/acp-integration/service/filesystem.test.js.map +1 -0
- package/dist/src/acp-integration/session/HistoryReplayer.d.ts +51 -0
- package/dist/src/acp-integration/session/HistoryReplayer.js +164 -0
- package/dist/src/acp-integration/session/HistoryReplayer.js.map +1 -0
- package/dist/src/acp-integration/session/HistoryReplayer.test.d.ts +6 -0
- package/dist/src/acp-integration/session/HistoryReplayer.test.js +374 -0
- package/dist/src/acp-integration/session/HistoryReplayer.test.js.map +1 -0
- package/dist/src/acp-integration/session/Session.d.ts +61 -0
- package/dist/src/acp-integration/session/Session.js +839 -0
- package/dist/src/acp-integration/session/Session.js.map +1 -0
- package/dist/src/acp-integration/session/SubAgentTracker.d.ts +51 -0
- package/dist/src/acp-integration/session/SubAgentTracker.js +257 -0
- package/dist/src/acp-integration/session/SubAgentTracker.js.map +1 -0
- package/dist/src/acp-integration/session/SubAgentTracker.test.d.ts +6 -0
- package/dist/src/acp-integration/session/SubAgentTracker.test.js +369 -0
- package/dist/src/acp-integration/session/SubAgentTracker.test.js.map +1 -0
- package/dist/src/acp-integration/session/emitters/BaseEmitter.d.ts +27 -0
- package/dist/src/acp-integration/session/emitters/BaseEmitter.js +34 -0
- package/dist/src/acp-integration/session/emitters/BaseEmitter.js.map +1 -0
- package/dist/src/acp-integration/session/emitters/MessageEmitter.d.ts +41 -0
- package/dist/src/acp-integration/session/emitters/MessageEmitter.js +77 -0
- package/dist/src/acp-integration/session/emitters/MessageEmitter.js.map +1 -0
- package/dist/src/acp-integration/session/emitters/MessageEmitter.test.d.ts +6 -0
- package/dist/src/acp-integration/session/emitters/MessageEmitter.test.js +174 -0
- package/dist/src/acp-integration/session/emitters/MessageEmitter.test.js.map +1 -0
- package/dist/src/acp-integration/session/emitters/PlanEmitter.d.ts +39 -0
- package/dist/src/acp-integration/session/emitters/PlanEmitter.js +83 -0
- package/dist/src/acp-integration/session/emitters/PlanEmitter.js.map +1 -0
- package/dist/src/acp-integration/session/emitters/PlanEmitter.test.d.ts +6 -0
- package/dist/src/acp-integration/session/emitters/PlanEmitter.test.js +176 -0
- package/dist/src/acp-integration/session/emitters/PlanEmitter.test.js.map +1 -0
- package/dist/src/acp-integration/session/emitters/ToolCallEmitter.d.ts +80 -0
- package/dist/src/acp-integration/session/emitters/ToolCallEmitter.js +248 -0
- package/dist/src/acp-integration/session/emitters/ToolCallEmitter.js.map +1 -0
- package/dist/src/acp-integration/session/emitters/ToolCallEmitter.test.d.ts +6 -0
- package/dist/src/acp-integration/session/emitters/ToolCallEmitter.test.js +561 -0
- package/dist/src/acp-integration/session/emitters/ToolCallEmitter.test.js.map +1 -0
- package/dist/src/acp-integration/session/emitters/index.d.ts +9 -0
- package/dist/src/acp-integration/session/emitters/index.js +10 -0
- package/dist/src/acp-integration/session/emitters/index.js.map +1 -0
- package/dist/src/acp-integration/session/index.d.ts +24 -0
- package/dist/src/acp-integration/session/index.js +16 -0
- package/dist/src/acp-integration/session/index.js.map +1 -0
- package/dist/src/acp-integration/session/types.d.ts +71 -0
- package/dist/src/acp-integration/session/types.js +7 -0
- package/dist/src/acp-integration/session/types.js.map +1 -0
- package/dist/src/commandMode.d.ts +11 -0
- package/dist/src/commandMode.js +238 -0
- package/dist/src/commandMode.js.map +1 -0
- package/dist/src/config/auth.d.ts +1 -0
- package/dist/src/config/auth.js +29 -0
- package/dist/src/config/auth.js.map +1 -1
- package/dist/src/config/config.d.ts +19 -3
- package/dist/src/config/config.js +175 -24
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/extension.js +0 -2
- package/dist/src/config/extension.js.map +1 -1
- package/dist/src/config/extensions/update.test.js +9 -0
- package/dist/src/config/extensions/update.test.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +53 -2
- package/dist/src/config/settingsSchema.js +46 -2
- package/dist/src/config/settingsSchema.js.map +1 -1
- package/dist/src/core/auth.d.ts +1 -1
- package/dist/src/core/auth.js +3 -2
- package/dist/src/core/auth.js.map +1 -1
- package/dist/src/core/initializer.js +3 -0
- package/dist/src/core/initializer.js.map +1 -1
- package/dist/src/gemini.js +75 -35
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/gemini.test.js +37 -4
- package/dist/src/gemini.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +3 -3
- package/dist/src/generated/git-commit.js +3 -3
- package/dist/src/i18n/index.d.ts +10 -2
- package/dist/src/i18n/index.js +26 -1
- package/dist/src/i18n/index.js.map +1 -1
- package/dist/src/i18n/languages.d.ts +20 -0
- package/dist/src/i18n/languages.js +36 -0
- package/dist/src/i18n/languages.js.map +1 -0
- package/dist/src/i18n/locales/de.js +1073 -0
- package/dist/src/i18n/locales/en.js +121 -175
- package/dist/src/i18n/locales/ru.js +1095 -0
- package/dist/src/i18n/locales/zh.js +52 -174
- package/dist/src/nonInteractive/control/ControlDispatcher.d.ts +24 -1
- package/dist/src/nonInteractive/control/ControlDispatcher.js +46 -17
- package/dist/src/nonInteractive/control/ControlDispatcher.js.map +1 -1
- package/dist/src/nonInteractive/control/ControlService.d.ts +2 -1
- package/dist/src/nonInteractive/control/ControlService.js +22 -37
- package/dist/src/nonInteractive/control/ControlService.js.map +1 -1
- package/dist/src/nonInteractive/control/controllers/baseController.d.ts +2 -1
- package/dist/src/nonInteractive/control/controllers/baseController.js +38 -5
- package/dist/src/nonInteractive/control/controllers/baseController.js.map +1 -1
- package/dist/src/nonInteractive/control/controllers/permissionController.d.ts +1 -22
- package/dist/src/nonInteractive/control/controllers/permissionController.js +38 -38
- package/dist/src/nonInteractive/control/controllers/permissionController.js.map +1 -1
- package/dist/src/nonInteractive/control/controllers/sdkMcpController.d.ts +54 -0
- package/dist/src/nonInteractive/control/controllers/sdkMcpController.js +84 -0
- package/dist/src/nonInteractive/control/controllers/sdkMcpController.js.map +1 -0
- package/dist/src/nonInteractive/control/controllers/systemController.d.ts +16 -6
- package/dist/src/nonInteractive/control/controllers/systemController.js +184 -44
- package/dist/src/nonInteractive/control/controllers/systemController.js.map +1 -1
- package/dist/src/nonInteractive/control/types/serviceAPIs.d.ts +1 -16
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.d.ts +11 -0
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.js +64 -5
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.js.map +1 -1
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.test.js +40 -0
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.test.js.map +1 -1
- package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.test.js +50 -0
- package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.test.js.map +1 -1
- package/dist/src/nonInteractive/session.d.ts +0 -16
- package/dist/src/nonInteractive/session.js +317 -321
- package/dist/src/nonInteractive/session.js.map +1 -1
- package/dist/src/nonInteractive/session.test.js +6 -0
- package/dist/src/nonInteractive/session.test.js.map +1 -1
- package/dist/src/nonInteractive/types.d.ts +57 -3
- package/dist/src/nonInteractive/types.js +0 -1
- package/dist/src/nonInteractive/types.js.map +1 -1
- package/dist/src/nonInteractiveCli.js +121 -56
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/nonInteractiveCliCommands.d.ts +48 -9
- package/dist/src/nonInteractiveCliCommands.js +180 -64
- package/dist/src/nonInteractiveCliCommands.js.map +1 -1
- package/dist/src/nonInteractiveCliCommands.test.d.ts +6 -0
- package/dist/src/nonInteractiveCliCommands.test.js +157 -0
- package/dist/src/nonInteractiveCliCommands.test.js.map +1 -0
- package/dist/src/services/BuiltinCommandLoader.js +7 -6
- package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
- package/dist/src/services/BuiltinCommandLoader.test.js +0 -3
- package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
- package/dist/src/services/McpPromptLoader.js +4 -2
- package/dist/src/services/McpPromptLoader.js.map +1 -1
- package/dist/src/services/McpPromptLoader.test.js +1 -1
- package/dist/src/services/McpPromptLoader.test.js.map +1 -1
- package/dist/src/test-utils/mockCommandContext.js +11 -2
- package/dist/src/test-utils/mockCommandContext.js.map +1 -1
- package/dist/src/ui/AppContainer.js +62 -56
- package/dist/src/ui/AppContainer.js.map +1 -1
- package/dist/src/ui/AppContainer.test.js +0 -46
- package/dist/src/ui/AppContainer.test.js.map +1 -1
- package/dist/src/ui/auth/AuthDialog.test.js +4 -4
- package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
- package/dist/src/ui/auth/useAuth.js +31 -4
- package/dist/src/ui/auth/useAuth.js.map +1 -1
- package/dist/src/ui/commands/approvalModeCommand.js +53 -4
- package/dist/src/ui/commands/approvalModeCommand.js.map +1 -1
- package/dist/src/ui/commands/approvalModeCommand.test.js +72 -10
- package/dist/src/ui/commands/approvalModeCommand.test.js.map +1 -1
- package/dist/src/ui/commands/clearCommand.js +22 -10
- package/dist/src/ui/commands/clearCommand.js.map +1 -1
- package/dist/src/ui/commands/compressCommand.js +86 -16
- package/dist/src/ui/commands/compressCommand.js.map +1 -1
- package/dist/src/ui/commands/languageCommand.d.ts +6 -1
- package/dist/src/ui/commands/languageCommand.js +162 -183
- package/dist/src/ui/commands/languageCommand.js.map +1 -1
- package/dist/src/ui/commands/languageCommand.test.d.ts +6 -0
- package/dist/src/ui/commands/languageCommand.test.js +558 -0
- package/dist/src/ui/commands/languageCommand.test.js.map +1 -0
- package/dist/src/ui/commands/modelCommand.js +4 -2
- package/dist/src/ui/commands/modelCommand.js.map +1 -1
- package/dist/src/ui/commands/quitCommand.d.ts +0 -1
- package/dist/src/ui/commands/quitCommand.js +0 -27
- package/dist/src/ui/commands/quitCommand.js.map +1 -1
- package/dist/src/ui/commands/restoreCommand.js +1 -1
- package/dist/src/ui/commands/restoreCommand.js.map +1 -1
- package/dist/src/ui/commands/resumeCommand.d.ts +7 -0
- package/dist/src/ui/commands/resumeCommand.js +19 -0
- package/dist/src/ui/commands/resumeCommand.js.map +1 -0
- package/dist/src/ui/commands/resumeCommand.test.d.ts +6 -0
- package/dist/src/ui/commands/resumeCommand.test.js +32 -0
- package/dist/src/ui/commands/resumeCommand.test.js.map +1 -0
- package/dist/src/ui/commands/reviewCommand.d.ts +9 -0
- package/dist/src/ui/commands/reviewCommand.js +2046 -0
- package/dist/src/ui/commands/reviewCommand.js.map +1 -0
- package/dist/src/ui/commands/reviewCommand.test.js +600 -0
- package/dist/src/ui/commands/reviewCommand.test.js.map +1 -0
- package/dist/src/ui/commands/setupGithubCommand.js +11 -10
- package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
- package/dist/src/ui/commands/setupGithubCommand.test.js +14 -14
- package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -1
- package/dist/src/ui/commands/summaryCommand.js +129 -42
- package/dist/src/ui/commands/summaryCommand.js.map +1 -1
- package/dist/src/ui/commands/types.d.ts +24 -10
- package/dist/src/ui/commands/types.js.map +1 -1
- package/dist/src/ui/commands/ums/unittestCommand.d.ts +9 -0
- package/dist/src/ui/commands/ums/unittestCommand.js +387 -0
- package/dist/src/ui/commands/ums/unittestCommand.js.map +1 -0
- package/dist/src/ui/components/Composer.test.js +1 -2
- package/dist/src/ui/components/Composer.test.js.map +1 -1
- package/dist/src/ui/components/ContextUsageDisplay.d.ts +3 -2
- package/dist/src/ui/components/ContextUsageDisplay.js +8 -2
- package/dist/src/ui/components/ContextUsageDisplay.js.map +1 -1
- package/dist/src/ui/components/DialogManager.js +7 -23
- package/dist/src/ui/components/DialogManager.js.map +1 -1
- package/dist/src/ui/components/Footer.js +2 -3
- package/dist/src/ui/components/Footer.js.map +1 -1
- package/dist/src/ui/components/Help.js +13 -2
- package/dist/src/ui/components/Help.js.map +1 -1
- package/dist/src/ui/components/Help.test.js +6 -0
- package/dist/src/ui/components/Help.test.js.map +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.js +3 -1
- package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.test.js +5 -2
- package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.js +6 -4
- package/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/dist/src/ui/components/ModelDialog.d.ts +3 -1
- package/dist/src/ui/components/ModelDialog.js +25 -5
- package/dist/src/ui/components/ModelDialog.js.map +1 -1
- package/dist/src/ui/components/OpenAIKeyPrompt.d.ts +3 -0
- package/dist/src/ui/components/OpenAIKeyPrompt.js +1 -0
- package/dist/src/ui/components/OpenAIKeyPrompt.js.map +1 -1
- package/dist/src/ui/components/PermissionsModifyTrustDialog.js +1 -1
- package/dist/src/ui/components/PermissionsModifyTrustDialog.js.map +1 -1
- package/dist/src/ui/components/SessionPicker.d.ts +18 -0
- package/dist/src/ui/components/SessionPicker.js +69 -0
- package/dist/src/ui/components/SessionPicker.js.map +1 -0
- package/dist/src/ui/components/SessionSummaryDisplay.js +14 -2
- package/dist/src/ui/components/SessionSummaryDisplay.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.test.js +2 -2
- package/dist/src/ui/components/StandaloneSessionPicker.d.ts +10 -0
- package/dist/src/ui/components/StandaloneSessionPicker.js +78 -0
- package/dist/src/ui/components/StandaloneSessionPicker.js.map +1 -0
- package/dist/src/ui/components/StandaloneSessionPicker.test.d.ts +6 -0
- package/dist/src/ui/components/StandaloneSessionPicker.test.js +410 -0
- package/dist/src/ui/components/StandaloneSessionPicker.test.js.map +1 -0
- package/dist/src/ui/components/SuggestionsDisplay.js +3 -2
- package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
- package/dist/src/ui/components/messages/GeminiThoughtMessage.d.ts +18 -0
- package/dist/src/ui/components/messages/GeminiThoughtMessage.js +14 -0
- package/dist/src/ui/components/messages/GeminiThoughtMessage.js.map +1 -0
- package/dist/src/ui/components/messages/GeminiThoughtMessageContent.d.ts +18 -0
- package/dist/src/ui/components/messages/GeminiThoughtMessageContent.js +14 -0
- package/dist/src/ui/components/messages/GeminiThoughtMessageContent.js.map +1 -0
- package/dist/src/ui/components/subagents/manage/AgentEditStep.js +4 -1
- package/dist/src/ui/components/subagents/manage/AgentEditStep.js.map +1 -1
- package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js +2 -2
- package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js.map +1 -1
- package/dist/src/ui/components/ums/UMSKeyPrompt.d.ts +1 -1
- package/dist/src/ui/components/ums/UMSKeyPrompt.js +24 -4
- package/dist/src/ui/components/ums/UMSKeyPrompt.js.map +1 -1
- package/dist/src/ui/components/ums/umsStartupWarnings.d.ts +6 -0
- package/dist/src/ui/components/ums/umsStartupWarnings.js +47 -0
- package/dist/src/ui/components/ums/umsStartupWarnings.js.map +1 -0
- package/dist/src/ui/contexts/SessionContext.d.ts +2 -0
- package/dist/src/ui/contexts/SessionContext.js +18 -10
- package/dist/src/ui/contexts/SessionContext.js.map +1 -1
- package/dist/src/ui/contexts/UIActionsContext.d.ts +3 -1
- package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
- package/dist/src/ui/contexts/UIStateContext.d.ts +3 -11
- package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +3 -8
- package/dist/src/ui/hooks/slashCommandProcessor.js +77 -101
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/useAttentionNotifications.d.ts +3 -1
- package/dist/src/ui/hooks/useAttentionNotifications.js +10 -5
- package/dist/src/ui/hooks/useAttentionNotifications.js.map +1 -1
- package/dist/src/ui/hooks/useAttentionNotifications.test.js +39 -2
- package/dist/src/ui/hooks/useAttentionNotifications.test.js.map +1 -1
- package/dist/src/ui/hooks/useDialogClose.d.ts +0 -3
- package/dist/src/ui/hooks/useDialogClose.js +0 -2
- package/dist/src/ui/hooks/useDialogClose.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.js +87 -12
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.test.js +11 -6
- package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
- package/dist/src/ui/hooks/useLogger.d.ts +1 -1
- package/dist/src/ui/hooks/useLogger.js +6 -3
- package/dist/src/ui/hooks/useLogger.js.map +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.js +12 -136
- package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
- package/dist/src/ui/hooks/useQwenAuth.test.js +1 -1
- package/dist/src/ui/hooks/useQwenAuth.test.js.map +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.js +2 -2
- package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
- package/dist/src/ui/hooks/useResumeCommand.d.ts +20 -0
- package/dist/src/ui/hooks/useResumeCommand.js +49 -0
- package/dist/src/ui/hooks/useResumeCommand.js.map +1 -0
- package/dist/src/ui/hooks/useResumeCommand.test.d.ts +6 -0
- package/dist/src/ui/hooks/useResumeCommand.test.js +144 -0
- package/dist/src/ui/hooks/useResumeCommand.test.js.map +1 -0
- package/dist/src/ui/hooks/useSessionPicker.d.ts +36 -0
- package/dist/src/ui/hooks/useSessionPicker.js +189 -0
- package/dist/src/ui/hooks/useSessionPicker.js.map +1 -0
- package/dist/src/ui/hooks/useSlashCompletion.js +9 -1
- package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useSlashCompletion.test.js +36 -31
- package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useToolScheduler.test.js +2 -1
- package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
- package/dist/src/ui/models/availableModels.d.ts +9 -2
- package/dist/src/ui/models/availableModels.js +32 -35
- package/dist/src/ui/models/availableModels.js.map +1 -1
- package/dist/src/ui/noninteractive/nonInteractiveUi.js +0 -1
- package/dist/src/ui/noninteractive/nonInteractiveUi.js.map +1 -1
- package/dist/src/ui/types.d.ts +9 -14
- package/dist/src/ui/types.js +0 -1
- package/dist/src/ui/types.js.map +1 -1
- package/dist/src/ui/utils/InlineMarkdownRenderer.d.ts +1 -0
- package/dist/src/ui/utils/InlineMarkdownRenderer.js +2 -2
- package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
- package/dist/src/ui/utils/MarkdownDisplay.d.ts +1 -0
- package/dist/src/ui/utils/MarkdownDisplay.js +13 -13
- package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
- package/dist/src/ui/utils/formatters.d.ts +6 -0
- package/dist/src/ui/utils/formatters.js +31 -0
- package/dist/src/ui/utils/formatters.js.map +1 -1
- package/dist/src/ui/utils/formatters.test.js +51 -2
- package/dist/src/ui/utils/formatters.test.js.map +1 -1
- package/dist/src/ui/utils/resumeHistoryUtils.d.ts +19 -0
- package/dist/src/ui/utils/resumeHistoryUtils.js +267 -0
- package/dist/src/ui/utils/resumeHistoryUtils.js.map +1 -0
- package/dist/src/ui/utils/resumeHistoryUtils.test.d.ts +6 -0
- package/dist/src/ui/utils/resumeHistoryUtils.test.js +253 -0
- package/dist/src/ui/utils/resumeHistoryUtils.test.js.map +1 -0
- package/dist/src/ui/utils/sessionPickerUtils.d.ts +30 -0
- package/dist/src/ui/utils/sessionPickerUtils.js +41 -0
- package/dist/src/ui/utils/sessionPickerUtils.js.map +1 -0
- package/dist/src/ui/utils/sessionPickerUtils.test.d.ts +6 -0
- package/dist/src/ui/utils/sessionPickerUtils.test.js +38 -0
- package/dist/src/ui/utils/sessionPickerUtils.test.js.map +1 -0
- package/dist/src/utils/attentionNotification.d.ts +1 -0
- package/dist/src/utils/attentionNotification.js +4 -0
- package/dist/src/utils/attentionNotification.js.map +1 -1
- package/dist/src/utils/errors.d.ts +1 -1
- package/dist/src/utils/errors.js +14 -3
- package/dist/src/utils/errors.js.map +1 -1
- package/dist/src/utils/errors.test.js +43 -1
- package/dist/src/utils/errors.test.js.map +1 -1
- package/dist/src/utils/gitUtils.js +25 -8
- package/dist/src/utils/gitUtils.js.map +1 -1
- package/dist/src/utils/gitUtils.test.js +59 -0
- package/dist/src/utils/gitUtils.test.js.map +1 -1
- package/dist/src/utils/nonInteractiveHelpers.d.ts +3 -1
- package/dist/src/utils/nonInteractiveHelpers.js +14 -15
- package/dist/src/utils/nonInteractiveHelpers.js.map +1 -1
- package/dist/src/utils/nonInteractiveHelpers.test.js +36 -21
- package/dist/src/utils/nonInteractiveHelpers.test.js.map +1 -1
- package/dist/src/utils/relaunch.js +2 -2
- package/dist/src/utils/relaunch.js.map +1 -1
- package/dist/src/utils/relaunch.test.js +5 -5
- package/dist/src/utils/relaunch.test.js.map +1 -1
- package/dist/src/utils/systemInfo.js +2 -1
- package/dist/src/utils/systemInfo.js.map +1 -1
- package/dist/src/validateNonInterActiveAuth.js +10 -1
- package/dist/src/validateNonInterActiveAuth.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/dist/src/nonInteractive/control/controllers/mcpController.d.ts +0 -42
- package/dist/src/nonInteractive/control/controllers/mcpController.js +0 -205
- package/dist/src/nonInteractive/control/controllers/mcpController.js.map +0 -1
- package/dist/src/ui/commands/chatCommand.d.ts +0 -9
- package/dist/src/ui/commands/chatCommand.js +0 -351
- package/dist/src/ui/commands/chatCommand.js.map +0 -1
- package/dist/src/ui/commands/corgiCommand.d.ts +0 -7
- package/dist/src/ui/commands/corgiCommand.js +0 -16
- package/dist/src/ui/commands/corgiCommand.js.map +0 -1
- package/dist/src/ui/components/ProQuotaDialog.d.ts +0 -13
- package/dist/src/ui/components/ProQuotaDialog.js +0 -24
- package/dist/src/ui/components/ProQuotaDialog.js.map +0 -1
- package/dist/src/ui/components/ProQuotaDialog.test.js +0 -58
- package/dist/src/ui/components/ProQuotaDialog.test.js.map +0 -1
- package/dist/src/ui/components/QuitConfirmationDialog.d.ts +0 -17
- package/dist/src/ui/components/QuitConfirmationDialog.js +0 -49
- package/dist/src/ui/components/QuitConfirmationDialog.js.map +0 -1
- package/dist/src/ui/hooks/usePromptCompletion.d.ts +0 -23
- package/dist/src/ui/hooks/usePromptCompletion.js +0 -177
- package/dist/src/ui/hooks/usePromptCompletion.js.map +0 -1
- package/dist/src/ui/hooks/useQuitConfirmation.d.ts +0 -14
- package/dist/src/ui/hooks/useQuitConfirmation.js +0 -36
- package/dist/src/ui/hooks/useQuitConfirmation.js.map +0 -1
- package/dist/src/ui/hooks/useQuotaAndFallback.d.ts +0 -21
- package/dist/src/ui/hooks/useQuotaAndFallback.js +0 -122
- package/dist/src/ui/hooks/useQuotaAndFallback.js.map +0 -1
- package/dist/src/ui/hooks/useQuotaAndFallback.test.js +0 -269
- package/dist/src/ui/hooks/useQuotaAndFallback.test.js.map +0 -1
- package/dist/src/zed-integration/acp.js.map +0 -1
- package/dist/src/zed-integration/fileSystemService.js.map +0 -1
- package/dist/src/zed-integration/schema.js.map +0 -1
- package/dist/src/zed-integration/zedIntegration.d.ts +0 -17
- package/dist/src/zed-integration/zedIntegration.js +0 -1135
- package/dist/src/zed-integration/zedIntegration.js.map +0 -1
- /package/dist/src/ui/{components/ProQuotaDialog.test.d.ts → commands/reviewCommand.test.d.ts} +0 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { useState, useRef, useCallback, useEffect, useMemo } from 'react';
|
|
7
|
-
import { GeminiEventType as ServerGeminiEventType, getErrorMessage, isNodeError, MessageSenderType, logUserPrompt, GitService, UnauthorizedError, UserPromptEvent,
|
|
7
|
+
import { GeminiEventType as ServerGeminiEventType, getErrorMessage, isNodeError, MessageSenderType, logUserPrompt, GitService, UnauthorizedError, UserPromptEvent, logConversationFinishedEvent, ConversationFinishedEvent, ApprovalMode, parseAndFormatApiError, promptIdContext, ToolConfirmationOutcome, logApiCancel, ApiCancelEvent, trackUserQueryEvent, trackTaskStatusEvent, trackToolCallStatusEvent, } from '@umsai/ums-code-core';
|
|
8
8
|
import { FinishReason } from '@google/genai';
|
|
9
9
|
import { StreamingState, MessageType, ToolCallStatus } from '../types.js';
|
|
10
10
|
import { isAtCommand, isSlashCommand } from '../utils/commandUtils.js';
|
|
@@ -46,9 +46,9 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
46
46
|
const [thought, setThought] = useState(null);
|
|
47
47
|
const [pendingHistoryItem, pendingHistoryItemRef, setPendingHistoryItem] = useStateAndRef(null);
|
|
48
48
|
const processedMemoryToolsRef = useRef(new Set());
|
|
49
|
-
const { startNewPrompt, getPromptCount } = useSessionStats();
|
|
49
|
+
const { startNewPrompt, getPromptCount, stats: sessionStates, } = useSessionStats();
|
|
50
50
|
const storage = config.storage;
|
|
51
|
-
const logger = useLogger(storage);
|
|
51
|
+
const logger = useLogger(storage, sessionStates.sessionId);
|
|
52
52
|
const gitService = useMemo(() => {
|
|
53
53
|
if (!config.getProjectRoot()) {
|
|
54
54
|
return;
|
|
@@ -292,6 +292,68 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
292
292
|
}
|
|
293
293
|
return newGeminiMessageBuffer;
|
|
294
294
|
}, [addItem, pendingHistoryItemRef, setPendingHistoryItem]);
|
|
295
|
+
const mergeThought = useCallback((incoming) => {
|
|
296
|
+
setThought((prev) => {
|
|
297
|
+
if (!prev) {
|
|
298
|
+
return incoming;
|
|
299
|
+
}
|
|
300
|
+
const subject = incoming.subject || prev.subject;
|
|
301
|
+
const description = `${prev.description ?? ''}${incoming.description ?? ''}`;
|
|
302
|
+
return { subject, description };
|
|
303
|
+
});
|
|
304
|
+
}, [setThought]);
|
|
305
|
+
const handleThoughtEvent = useCallback((eventValue, currentThoughtBuffer, userMessageTimestamp) => {
|
|
306
|
+
if (turnCancelledRef.current) {
|
|
307
|
+
return '';
|
|
308
|
+
}
|
|
309
|
+
// Extract the description text from the thought summary
|
|
310
|
+
const thoughtText = eventValue.description ?? '';
|
|
311
|
+
if (!thoughtText) {
|
|
312
|
+
return currentThoughtBuffer;
|
|
313
|
+
}
|
|
314
|
+
let newThoughtBuffer = currentThoughtBuffer + thoughtText;
|
|
315
|
+
const pendingType = pendingHistoryItemRef.current?.type;
|
|
316
|
+
const isPendingThought = pendingType === 'gemini_thought' ||
|
|
317
|
+
pendingType === 'gemini_thought_content';
|
|
318
|
+
// If we're not already showing a thought, start a new one
|
|
319
|
+
if (!isPendingThought) {
|
|
320
|
+
// If there's a pending non-thought item, finalize it first
|
|
321
|
+
if (pendingHistoryItemRef.current) {
|
|
322
|
+
addItem(pendingHistoryItemRef.current, userMessageTimestamp);
|
|
323
|
+
}
|
|
324
|
+
setPendingHistoryItem({ type: 'gemini_thought', text: '' });
|
|
325
|
+
}
|
|
326
|
+
// Split large thought messages for better rendering performance (same rationale
|
|
327
|
+
// as regular content streaming). This helps avoid terminal flicker caused by
|
|
328
|
+
// constantly re-rendering an ever-growing "pending" block.
|
|
329
|
+
const splitPoint = findLastSafeSplitPoint(newThoughtBuffer);
|
|
330
|
+
const nextPendingType = isPendingThought && pendingType === 'gemini_thought_content'
|
|
331
|
+
? 'gemini_thought_content'
|
|
332
|
+
: 'gemini_thought';
|
|
333
|
+
if (splitPoint === newThoughtBuffer.length) {
|
|
334
|
+
// Update the existing thought message with accumulated content
|
|
335
|
+
setPendingHistoryItem({
|
|
336
|
+
type: nextPendingType,
|
|
337
|
+
text: newThoughtBuffer,
|
|
338
|
+
});
|
|
339
|
+
}
|
|
340
|
+
else {
|
|
341
|
+
const beforeText = newThoughtBuffer.substring(0, splitPoint);
|
|
342
|
+
const afterText = newThoughtBuffer.substring(splitPoint);
|
|
343
|
+
addItem({
|
|
344
|
+
type: nextPendingType,
|
|
345
|
+
text: beforeText,
|
|
346
|
+
}, userMessageTimestamp);
|
|
347
|
+
setPendingHistoryItem({
|
|
348
|
+
type: 'gemini_thought_content',
|
|
349
|
+
text: afterText,
|
|
350
|
+
});
|
|
351
|
+
newThoughtBuffer = afterText;
|
|
352
|
+
}
|
|
353
|
+
// Also update the thought state for the loading indicator
|
|
354
|
+
mergeThought(eventValue);
|
|
355
|
+
return newThoughtBuffer;
|
|
356
|
+
}, [addItem, pendingHistoryItemRef, setPendingHistoryItem, mergeThought]);
|
|
295
357
|
const handleUserCancelledEvent = useCallback((userMessageTimestamp) => {
|
|
296
358
|
if (turnCancelledRef.current) {
|
|
297
359
|
return;
|
|
@@ -325,7 +387,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
325
387
|
}
|
|
326
388
|
addItem({
|
|
327
389
|
type: MessageType.ERROR,
|
|
328
|
-
text: parseAndFormatApiError(eventValue.error, config.getContentGeneratorConfig()?.authType
|
|
390
|
+
text: parseAndFormatApiError(eventValue.error, config.getContentGeneratorConfig()?.authType),
|
|
329
391
|
}, userMessageTimestamp);
|
|
330
392
|
setThought(null); // Reset thought when there's an error
|
|
331
393
|
}, [addItem, pendingHistoryItemRef, setPendingHistoryItem, config, setThought]);
|
|
@@ -358,6 +420,8 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
358
420
|
[FinishReason.MALFORMED_FUNCTION_CALL]: 'Response stopped due to malformed function call.',
|
|
359
421
|
[FinishReason.IMAGE_SAFETY]: 'Response stopped due to image safety violations.',
|
|
360
422
|
[FinishReason.UNEXPECTED_TOOL_CALL]: 'Response stopped due to unexpected tool call.',
|
|
423
|
+
[FinishReason.IMAGE_PROHIBITED_CONTENT]: 'Response stopped due to image prohibited content.',
|
|
424
|
+
[FinishReason.NO_IMAGE]: 'Response stopped due to no image.',
|
|
361
425
|
};
|
|
362
426
|
const message = finishReasonMessages[finishReason];
|
|
363
427
|
if (message) {
|
|
@@ -417,12 +481,20 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
417
481
|
}, [handleLoopDetectionConfirmation]);
|
|
418
482
|
const processGeminiStreamEvents = useCallback(async (stream, userMessageTimestamp, signal, model, sessionId) => {
|
|
419
483
|
let geminiMessageBuffer = '';
|
|
484
|
+
let thoughtBuffer = '';
|
|
420
485
|
const toolCallRequests = [];
|
|
421
486
|
// 事件处理
|
|
422
487
|
for await (const event of stream) {
|
|
423
488
|
switch (event.type) {
|
|
424
489
|
case ServerGeminiEventType.Thought:
|
|
425
|
-
|
|
490
|
+
// If the thought has a subject, it's a discrete status update rather than
|
|
491
|
+
// a streamed textual thought, so we update the thought state directly.
|
|
492
|
+
if (event.value.subject) {
|
|
493
|
+
setThought(event.value);
|
|
494
|
+
}
|
|
495
|
+
else {
|
|
496
|
+
thoughtBuffer = handleThoughtEvent(event.value, thoughtBuffer, userMessageTimestamp);
|
|
497
|
+
}
|
|
426
498
|
break;
|
|
427
499
|
case ServerGeminiEventType.Content:
|
|
428
500
|
geminiMessageBuffer = handleContentEvent(event.value, geminiMessageBuffer, userMessageTimestamp);
|
|
@@ -499,6 +571,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
499
571
|
return StreamProcessingStatus.Completed;
|
|
500
572
|
}, [
|
|
501
573
|
handleContentEvent,
|
|
574
|
+
handleThoughtEvent,
|
|
502
575
|
handleUserCancelledEvent,
|
|
503
576
|
handleErrorEvent,
|
|
504
577
|
scheduleToolCalls,
|
|
@@ -507,6 +580,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
507
580
|
handleMaxSessionTurnsEvent,
|
|
508
581
|
handleSessionTokenLimitExceededEvent,
|
|
509
582
|
handleCitationEvent,
|
|
583
|
+
setThought,
|
|
510
584
|
]);
|
|
511
585
|
const submitQuery = useCallback(async (query, options, prompt_id) => {
|
|
512
586
|
// Prevent concurrent executions of submitQuery, but allow continuations
|
|
@@ -547,20 +621,21 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
547
621
|
}
|
|
548
622
|
const finalQueryToSend = queryToSend;
|
|
549
623
|
if (!options?.isContinuation) {
|
|
624
|
+
// trigger new prompt event for session stats in CLI
|
|
625
|
+
startNewPrompt();
|
|
626
|
+
// log user prompt event for telemetry, only text prompts for now
|
|
550
627
|
if (typeof queryToSend === 'string') {
|
|
551
|
-
|
|
552
|
-
const promptText = queryToSend;
|
|
553
|
-
logUserPrompt(config, new UserPromptEvent(promptText.length, prompt_id, config.getContentGeneratorConfig()?.authType, promptText));
|
|
628
|
+
logUserPrompt(config, new UserPromptEvent(queryToSend.length, prompt_id, config.getContentGeneratorConfig()?.authType, queryToSend));
|
|
554
629
|
}
|
|
555
|
-
|
|
556
|
-
setThought(null);
|
|
630
|
+
// Reset thought when starting a new prompt
|
|
631
|
+
setThought(null);
|
|
557
632
|
}
|
|
558
633
|
setIsResponding(true);
|
|
559
634
|
setInitError(null);
|
|
560
635
|
// 发送用户输入事件埋点
|
|
561
636
|
trackUserQueryEvent(config.getSessionId());
|
|
562
637
|
try {
|
|
563
|
-
const stream = geminiClient.sendMessageStream(finalQueryToSend, abortSignal, prompt_id);
|
|
638
|
+
const stream = geminiClient.sendMessageStream(finalQueryToSend, abortSignal, prompt_id, options);
|
|
564
639
|
const processingStatus = await processGeminiStreamEvents(stream, userMessageTimestamp, abortSignal, config.getModel(), config.getSessionId());
|
|
565
640
|
// 用户取消事件
|
|
566
641
|
if (processingStatus === StreamProcessingStatus.UserCancelled) {
|
|
@@ -595,7 +670,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
595
670
|
else if (!isNodeError(error) || error.name !== 'AbortError') {
|
|
596
671
|
addItem({
|
|
597
672
|
type: MessageType.ERROR,
|
|
598
|
-
text: parseAndFormatApiError(getErrorMessage(error) || 'Unknown error', config.getContentGeneratorConfig()?.authType
|
|
673
|
+
text: parseAndFormatApiError(getErrorMessage(error) || 'Unknown error', config.getContentGeneratorConfig()?.authType),
|
|
599
674
|
}, userMessageTimestamp);
|
|
600
675
|
}
|
|
601
676
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGeminiStream.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useGeminiStream.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useGeminiStream.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useGeminiStream.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAa1E,OAAO,EACL,eAAe,IAAI,qBAAqB,EACxC,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,eAAe,EACf,4BAA4B,EAC5B,yBAAyB,EACzB,YAAY,EACZ,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAiC,YAAY,EAAE,MAAM,eAAe,CAAC;AAO5E,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EACL,qBAAqB,EACrB,YAAY,IAAI,4BAA4B,GAK7C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,IAAK,sBAIJ;AAJD,WAAK,sBAAsB;IACzB,6EAAS,CAAA;IACT,qFAAa,CAAA;IACb,qEAAK,CAAA;AACP,CAAC,EAJI,sBAAsB,KAAtB,sBAAsB,QAI1B;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;AAE3D,SAAS,aAAa,CAAC,QAAwB;IAC7C,MAAM,OAAO,GAAG,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,CAAC;IACpD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,YAA0B,EAC1B,OAAsB,EACtB,OAA2C,EAC3C,MAAc,EACd,QAAwB,EACxB,cAAyC,EACzC,kBAEiD,EACjD,eAAwB,EACxB,kBAAgD,EAChD,WAAoC,EACpC,oBAAyC,EACzC,2BAAoC,EACpC,8BAA6E,EAC7E,aAAyB,EACzB,cAA0B,EAC1B,yBAAkC,EAClC,oBAA8C,EAC9C,aAAqB,EACrB,cAAsB,EACtB,sBAIE,EACF,cAAwB,EACxB,EAAE;IACF,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAChE,MAAM,kBAAkB,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;IAChE,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,oBAAoB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IACjE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAwB,IAAI,CAAC,CAAC;IACpE,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,GACtE,cAAc,CAA8B,IAAI,CAAC,CAAC;IACpD,MAAM,uBAAuB,GAAG,MAAM,CAAc,IAAI,GAAG,EAAE,CAAC,CAAC;IAC/D,MAAM,EACJ,cAAc,EACd,cAAc,EACd,KAAK,EAAE,aAAa,GACrB,GAAG,eAAe,EAAE,CAAC;IACtB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE;QAC9B,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QACD,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtB,MAAM,CAAC,SAAS,EAAE,iBAAiB,EAAE,oBAAoB,CAAC,GACxD,qBAAqB,CACnB,KAAK,EAAE,+BAA+B,EAAE,EAAE;QACxC,iFAAiF;QACjF,IAAI,+BAA+B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,iEAAiE;YACjE,OAAO,CACL,4BAA4B,CAC1B,+BAAoD,CACrD,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YAEF,kEAAkE;YAClE,MAAM,oBAAoB,CACxB,+BAAoD,CACrD,CAAC;QACJ,CAAC;IACH,CAAC,EACD,MAAM,EACN,kBAAkB,EAClB,aAAa,CACd,CAAC;IAEJ,MAAM,2BAA2B,GAAG,OAAO,CACzC,GAAG,EAAE,CACH,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,EACxE,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,MAAM,kBAAkB,GAAG,SAAS,EAAE,IAAI,CACxC,CAAC,EAAE,EAAE,EAAE,CACL,EAAE,CAAC,MAAM,KAAK,WAAW,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,mBAAmB,CACvE,CAAC;QACF,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAQ,kBAAuC,CAAC,GAAG,CAAC;QACtD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,CACJ,gCAAgC,EAChC,mCAAmC,EACpC,GAAG,QAAQ,CAEF,IAAI,CAAC,CAAC;IAEhB,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,IAAmB,EAAE,EAAE;QACvD,eAAe,CAAC,IAAI,CAAC,CAAC;QACtB,MAAM,IAAI,CAAC;QACX,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,wBAAwB,CACvE,OAAO,EACP,qBAAqB,EACrB,MAAM,EACN,cAAc,EACd,MAAM,EACN,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,cAAc,CACf,CAAC;IAEF,MAAM,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,GAAG,mBAAmB,CACtE,MAAM,EACN,OAAO,EACP,yBAAyB,EACzB,sBAAsB,CACvB,CAAC;IACF,MAAM,WAAW,GAAG,gBAAgB,IAAI,eAAe,CAAC;IAExD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAExC,SAAS;IACT,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;QAClC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,mBAAmB,CAAC,EAAE,CAAC;YAC9D,OAAO,cAAc,CAAC,sBAAsB,CAAC;QAC/C,CAAC;QACD,IACE,YAAY;YACZ,SAAS,CAAC,IAAI,CACZ,CAAC,EAAE,EAAE,EAAE,CACL,EAAE,CAAC,MAAM,KAAK,WAAW;gBACzB,EAAE,CAAC,MAAM,KAAK,WAAW;gBACzB,EAAE,CAAC,MAAM,KAAK,YAAY;gBAC1B,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS;oBACvB,EAAE,CAAC,MAAM,KAAK,OAAO;oBACrB,EAAE,CAAC,MAAM,KAAK,WAAW,CAAC;oBAC1B,CAAE,EAA0D;yBACzD,yBAAyB,CAAC,CAClC,EACD,CAAC;YACD,OAAO,cAAc,CAAC,UAAU,CAAC;QACnC,CAAC;QACD,OAAO,cAAc,CAAC,IAAI,CAAC;IAC7B,CAAC,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;IAE9B,SAAS,CAAC,GAAG,EAAE;QACb,IACE,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,IAAI;YAC9C,cAAc,KAAK,cAAc,CAAC,IAAI,EACtC,CAAC;YACD,MAAM,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAChD,CAAC,IAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CACtD,CAAC;YAEF,MAAM,SAAS,GACb,oBAAoB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,oBAAoB,CAAC;YAE1E,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBAClB,4BAA4B,CAC1B,MAAM,EACN,IAAI,yBAAyB,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,SAAS,CAAC,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtC,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC5C,IAAI,cAAc,KAAK,cAAc,CAAC,UAAU,EAAE,CAAC;YACjD,OAAO;QACT,CAAC;QACD,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QACD,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;QAChC,oBAAoB,CAAC,OAAO,GAAG,KAAK,CAAC;QACrC,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;QAEpC,uBAAuB;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,UAAU,GAAG,cAAc,EAAE,CAAC;QACxE,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAC1C,MAAM,CAAC,QAAQ,EAAE,EACjB,SAAS,EACT,MAAM,CAAC,yBAAyB,EAAE,EAAE,QAAQ,CAC7C,CAAC;QACF,YAAY,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAExC,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;YAClC,OAAO,CAAC,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,CACL;YACE,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,IAAI,EAAE,oBAAoB;SAC3B,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;QACF,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC5B,cAAc,EAAE,CAAC;QACjB,eAAe,CAAC,KAAK,CAAC,CAAC;QACvB,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC,EAAE;QACD,cAAc;QACd,OAAO;QACP,qBAAqB;QACrB,cAAc;QACd,qBAAqB;QACrB,oBAAoB;QACpB,MAAM;QACN,cAAc;KACf,CAAC,CAAC;IAEH,WAAW,CACT,CAAC,GAAG,EAAE,EAAE;QACN,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,cAAc,EAAE,CAAC;YAC7C,oBAAoB,EAAE,CAAC;QACzB,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,cAAc,KAAK,cAAc,CAAC,UAAU,EAAE,CAC3D,CAAC;IAEF,MAAM,qBAAqB,GAAG,WAAW,CACvC,KAAK,EACH,KAAoB,EACpB,oBAA4B,EAC5B,WAAwB,EACxB,SAAiB,EAIhB,EAAE;QACH,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QACrD,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3D,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QACrD,CAAC;QAED,IAAI,wBAAwB,GAAyB,IAAI,CAAC;QAE1D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAClC,cAAc,CAAC,gBAAgB,YAAY,GAAG,CAAC,CAAC;YAChD,MAAM,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YAE/D,gCAAgC;YAChC,MAAM,kBAAkB,GAAG,cAAc,CAAC,YAAY,CAAC;gBACrD,CAAC,CAAC,MAAM,kBAAkB,CAAC,YAAY,CAAC;gBACxC,CAAC,CAAC,KAAK,CAAC;YAEV,IAAI,kBAAkB,EAAE,CAAC;gBACvB,QAAQ,kBAAkB,CAAC,IAAI,EAAE,CAAC;oBAChC,KAAK,eAAe,CAAC,CAAC,CAAC;wBACrB,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAAC;wBAClD,MAAM,eAAe,GAAwB;4BAC3C,MAAM,EAAE,GAAG,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;4BAC1E,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,QAAQ;4BACd,iBAAiB,EAAE,IAAI;4BACvB,SAAS;yBACV,CAAC;wBACF,OAAO;wBACP,iBAAiB,CAAC,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC,CAAC;wBAClD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;oBACrD,CAAC;oBACD,KAAK,eAAe,CAAC,CAAC,CAAC;wBACrB,wBAAwB,GAAG,kBAAkB,CAAC,OAAO,CAAC;wBAEtD,OAAO;4BACL,WAAW,EAAE,wBAAwB;4BACrC,aAAa,EAAE,IAAI;yBACpB,CAAC;oBACJ,CAAC;oBACD,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;oBACrD,CAAC;oBACD,OAAO,CAAC,CAAC,CAAC;wBACR,MAAM,WAAW,GAAU,kBAAkB,CAAC;wBAC9C,MAAM,IAAI,KAAK,CACb,wCAAwC,WAAW,EAAE,CACtD,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,eAAe,IAAI,kBAAkB,CAAC,YAAY,EAAE,WAAW,CAAC,EAAE,CAAC;gBACrE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YACrD,CAAC;YAED,qDAAqD;YACrD,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC9B,MAAM,eAAe,GAAG,MAAM,eAAe,CAAC;oBAC5C,KAAK,EAAE,YAAY;oBACnB,MAAM;oBACN,OAAO;oBACP,cAAc;oBACd,SAAS,EAAE,oBAAoB;oBAC/B,MAAM,EAAE,WAAW;iBACpB,CAAC,CAAC;gBAEH,sDAAsD;gBACtD,OAAO,CACL,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,EAC9C,oBAAoB,CACrB,CAAC;gBAEF,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;oBACnC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;gBACrD,CAAC;gBACD,wBAAwB,GAAG,eAAe,CAAC,cAAc,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,OAAO,CACL,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,EAC9C,oBAAoB,CACrB,CAAC;gBACF,wBAAwB,GAAG,YAAY,CAAC;YAC1C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,+DAA+D;YAC/D,wBAAwB,GAAG,KAAK,CAAC;QACnC,CAAC;QAED,IAAI,wBAAwB,KAAK,IAAI,EAAE,CAAC;YACtC,cAAc,CACZ,2DAA2D,CAC5D,CAAC;YACF,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACxE,CAAC,EACD;QACE,MAAM;QACN,OAAO;QACP,cAAc;QACd,kBAAkB;QAClB,kBAAkB;QAClB,MAAM;QACN,eAAe;QACf,iBAAiB;KAClB,CACF,CAAC;IAEF,gCAAgC;IAEhC,MAAM,kBAAkB,GAAG,WAAW,CACpC,CACE,UAAiC,EACjC,0BAAkC,EAClC,oBAA4B,EACpB,EAAE;QACV,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,4DAA4D;YAC5D,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,sBAAsB,GAAG,0BAA0B,GAAG,UAAU,CAAC;QACrE,IACE,qBAAqB,CAAC,OAAO,EAAE,IAAI,KAAK,QAAQ;YAChD,qBAAqB,CAAC,OAAO,EAAE,IAAI,KAAK,gBAAgB,EACxD,CAAC;YACD,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;gBAClC,OAAO,CAAC,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;YAC/D,CAAC;YACD,qBAAqB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACpD,sBAAsB,GAAG,UAAU,CAAC;QACtC,CAAC;QACD,kEAAkE;QAClE,8DAA8D;QAC9D,MAAM,UAAU,GAAG,sBAAsB,CAAC,sBAAsB,CAAC,CAAC;QAClE,IAAI,UAAU,KAAK,sBAAsB,CAAC,MAAM,EAAE,CAAC;YACjD,uDAAuD;YACvD,qBAAqB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC/B,IAAI,EAAE,IAAI,EAAE,IAAmC;gBAC/C,IAAI,EAAE,sBAAsB;aAC7B,CAAC,CAAC,CAAC;QACN,CAAC;aAAM,CAAC;YACN,+DAA+D;YAC/D,2EAA2E;YAC3E,0EAA0E;YAC1E,wEAAwE;YACxE,+EAA+E;YAC/E,8EAA8E;YAC9E,8EAA8E;YAC9E,0DAA0D;YAC1D,MAAM,UAAU,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;YACnE,MAAM,SAAS,GAAG,sBAAsB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAC/D,OAAO,CACL;gBACE,IAAI,EAAE,qBAAqB,CAAC,OAAO,EAAE,IAEjB;gBACpB,IAAI,EAAE,UAAU;aACjB,EACD,oBAAoB,CACrB,CAAC;YACF,qBAAqB,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;YACnE,sBAAsB,GAAG,SAAS,CAAC;QACrC,CAAC;QACD,OAAO,sBAAsB,CAAC;IAChC,CAAC,EACD,CAAC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,CACxD,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,QAAwB,EAAE,EAAE;QAC3B,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE;YAClB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;YACjD,MAAM,WAAW,GAAG,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,GAAG,QAAQ,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;YAC7E,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,kBAAkB,GAAG,WAAW,CACpC,CACE,UAA0B,EAC1B,oBAA4B,EAC5B,oBAA4B,EACpB,EAAE;QACV,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,wDAAwD;QACxD,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,oBAAoB,CAAC;QAC9B,CAAC;QAED,IAAI,gBAAgB,GAAG,oBAAoB,GAAG,WAAW,CAAC;QAE1D,MAAM,WAAW,GAAG,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC;QACxD,MAAM,gBAAgB,GACpB,WAAW,KAAK,gBAAgB;YAChC,WAAW,KAAK,wBAAwB,CAAC;QAE3C,0DAA0D;QAC1D,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,2DAA2D;YAC3D,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;gBAClC,OAAO,CAAC,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;YAC/D,CAAC;YACD,qBAAqB,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,gFAAgF;QAChF,6EAA6E;QAC7E,2DAA2D;QAC3D,MAAM,UAAU,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;QAC5D,MAAM,eAAe,GACnB,gBAAgB,IAAI,WAAW,KAAK,wBAAwB;YAC1D,CAAC,CAAC,wBAAwB;YAC1B,CAAC,CAAC,gBAAgB,CAAC;QAEvB,IAAI,UAAU,KAAK,gBAAgB,CAAC,MAAM,EAAE,CAAC;YAC3C,+DAA+D;YAC/D,qBAAqB,CAAC;gBACpB,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,gBAAgB;aACvB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;YAC7D,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACzD,OAAO,CACL;gBACE,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,UAAU;aACjB,EACD,oBAAoB,CACrB,CAAC;YACF,qBAAqB,CAAC;gBACpB,IAAI,EAAE,wBAAwB;gBAC9B,IAAI,EAAE,SAAS;aAChB,CAAC,CAAC;YACH,gBAAgB,GAAG,SAAS,CAAC;QAC/B,CAAC;QAED,0DAA0D;QAC1D,YAAY,CAAC,UAAU,CAAC,CAAC;QAEzB,OAAO,gBAAgB,CAAC;IAC1B,CAAC,EACD,CAAC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,YAAY,CAAC,CACtE,CAAC;IAEF,MAAM,wBAAwB,GAAG,WAAW,CAC1C,CAAC,oBAA4B,EAAE,EAAE;QAC/B,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,qBAAqB,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACxD,MAAM,YAAY,GAAG,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAC1D,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,OAAO;oBACtC,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,UAAU;oBACzC,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS;oBACtC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,EAAE;oBAC9C,CAAC,CAAC,IAAI,CACX,CAAC;gBACF,MAAM,WAAW,GAAyB;oBACxC,GAAG,qBAAqB,CAAC,OAAO;oBAChC,KAAK,EAAE,YAAY;iBACpB,CAAC;gBACF,OAAO,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;YAC/D,CAAC;YACD,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,CACL,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,6BAA6B,EAAE,EAC/D,oBAAoB,CACrB,CAAC;QACF,eAAe,CAAC,KAAK,CAAC,CAAC;QACvB,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,kCAAkC;IACtD,CAAC,EACD,CAAC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,UAAU,CAAC,CACpE,CAAC;IAEF,MAAM,gBAAgB,GAAG,WAAW,CAClC,CAAC,UAAiC,EAAE,oBAA4B,EAAE,EAAE;QAClE,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;YAClC,OAAO,CAAC,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;YAC7D,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,CACL;YACE,IAAI,EAAE,WAAW,CAAC,KAAK;YACvB,IAAI,EAAE,sBAAsB,CAC1B,UAAU,CAAC,KAAK,EAChB,MAAM,CAAC,yBAAyB,EAAE,EAAE,QAAQ,CAC7C;SACF,EACD,oBAAoB,CACrB,CAAC;QACF,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,sCAAsC;IAC1D,CAAC,EACD,CAAC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,EAAE,UAAU,CAAC,CAC5E,CAAC;IAEF,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,IAAY,EAAE,oBAA4B,EAAE,EAAE;QAC7C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;YAClC,OAAO,CAAC,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;YAC7D,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,oBAAoB,CAAC,CAAC;IAClE,CAAC,EACD,CAAC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,QAAQ,CAAC,CAClE,CAAC;IAEF,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,KAAgC,EAAE,oBAA4B,EAAE,EAAE;QACjE,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QACxC,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,MAAM,oBAAoB,GAA6C;YACrE,CAAC,YAAY,CAAC,yBAAyB,CAAC,EAAE,SAAS;YACnD,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,SAAS;YAC9B,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,yCAAyC;YACpE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,yCAAyC;YAChE,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,4CAA4C;YACvE,CAAC,YAAY,CAAC,QAAQ,CAAC,EACrB,+CAA+C;YACjD,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,0CAA0C;YACpE,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAC/B,6CAA6C;YAC/C,CAAC,YAAY,CAAC,IAAI,CAAC,EACjB,wEAAwE;YAC1E,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,qCAAqC;YAC3D,CAAC,YAAY,CAAC,uBAAuB,CAAC,EACpC,kDAAkD;YACpD,CAAC,YAAY,CAAC,YAAY,CAAC,EACzB,kDAAkD;YACpD,CAAC,YAAY,CAAC,oBAAoB,CAAC,EACjC,+CAA+C;YACjD,CAAC,YAAY,CAAC,wBAAwB,CAAC,EACrC,mDAAmD;YACrD,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,mCAAmC;SAC7D,CAAC;QAEF,MAAM,OAAO,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;QACnD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CACL;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO,OAAO,EAAE;aACvB,EACD,oBAAoB,CACrB,CAAC;QACJ,CAAC;IACH,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,MAAM,0BAA0B,GAAG,WAAW,CAC5C,CACE,UAAoD,EACpD,oBAA4B,EAC5B,EAAE;QACF,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;YAClC,OAAO,CAAC,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;YAC7D,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,OAAO,CACZ;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EACF,qEAAqE,MAAM,CAAC,QAAQ,EAAE,IAAI;gBAC1F,0EAA0E;gBAC1E,GAAG,UAAU,EAAE,kBAAkB,IAAI,SAAS,MAAM;gBACpD,GAAG,UAAU,EAAE,aAAa,IAAI,SAAS,WAAW;SACvD,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;IACJ,CAAC,EACD,CAAC,OAAO,EAAE,MAAM,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,CAChE,CAAC;IAEF,MAAM,0BAA0B,GAAG,WAAW,CAC5C,GAAG,EAAE,CACH,OAAO,CACL;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EACF,wDAAwD,MAAM,CAAC,kBAAkB,EAAE,IAAI;YACvF,qDAAqD;KACxD,EACD,IAAI,CAAC,GAAG,EAAE,CACX,EACH,CAAC,OAAO,EAAE,MAAM,CAAC,CAClB,CAAC;IAEF,MAAM,oCAAoC,GAAG,WAAW,CACtD,CAAC,KAAgE,EAAE,EAAE,CACnE,OAAO,CACL;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EACF,oCAAoC,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,aAAa,KAAK,CAAC,KAAK,CAAC,cAAc,EAAE,aAAa;YAC9H,iBAAiB;YACjB,gDAAgD;YAChD,sFAAsF;YACtF,kEAAkE;KACrE,EACD,IAAI,CAAC,GAAG,EAAE,CACX,EACH,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,MAAM,+BAA+B,GAAG,WAAW,CACjD,CAAC,MAA6C,EAAE,EAAE;QAChD,mCAAmC,CAAC,IAAI,CAAC,CAAC;QAE1C,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACvC,MAAM,CAAC,eAAe,EAAE,CAAC,uBAAuB,EAAE,CAAC,iBAAiB,EAAE,CAAC;YACvE,OAAO,CACL;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,mFAAmF;aAC1F,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CACL;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,mIAAmI;aAC1I,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;QACJ,CAAC;IACH,CAAC,EACD,CAAC,MAAM,EAAE,OAAO,CAAC,CAClB,CAAC;IAEF,MAAM,uBAAuB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/C,2EAA2E;QAC3E,mCAAmC,CAAC;YAClC,UAAU,EAAE,+BAA+B;SAC5C,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAEtC,MAAM,yBAAyB,GAAG,WAAW,CAC3C,KAAK,EACH,MAAkC,EAClC,oBAA4B,EAC5B,MAAmB,EACnB,KAAa,EACb,SAAiB,EACgB,EAAE;QACnC,IAAI,mBAAmB,GAAG,EAAE,CAAC;QAC7B,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,MAAM,gBAAgB,GAA0B,EAAE,CAAC;QACnD,OAAO;QACP,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACjC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,qBAAqB,CAAC,OAAO;oBAChC,0EAA0E;oBAC1E,uEAAuE;oBACvE,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;wBACxB,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC1B,CAAC;yBAAM,CAAC;wBACN,aAAa,GAAG,kBAAkB,CAChC,KAAK,CAAC,KAAK,EACX,aAAa,EACb,oBAAoB,CACrB,CAAC;oBACJ,CAAC;oBACD,MAAM;gBACR,KAAK,qBAAqB,CAAC,OAAO;oBAChC,mBAAmB,GAAG,kBAAkB,CACtC,KAAK,CAAC,KAAK,EACX,mBAAmB,EACnB,oBAAoB,CACrB,CAAC;oBACF,MAAM;gBACR,KAAK,qBAAqB,CAAC,eAAe;oBACxC,SAAS;oBACT,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACnC,MAAM;gBACR,KAAK,qBAAqB,CAAC,aAAa;oBACtC,SAAS;oBACT,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,wBAAwB,CAAC,oBAAoB,CAAC,CAAC;oBAC/C,MAAM;gBACR,KAAK,qBAAqB,CAAC,KAAK;oBAC9B,OAAO;oBACP,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;oBACpD,MAAM;gBACR,KAAK,qBAAqB,CAAC,cAAc;oBACvC,UAAU;oBACV,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,0BAA0B,CAAC,KAAK,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;oBAC9D,MAAM;gBACR,KAAK,qBAAqB,CAAC,oBAAoB,CAAC;gBAChD,KAAK,qBAAqB,CAAC,gBAAgB;oBACzC,aAAa;oBACb,cAAc;oBACd,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,MAAM;gBACR,KAAK,qBAAqB,CAAC,eAAe;oBACxC,aAAa;oBACb,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,0BAA0B,EAAE,CAAC;oBAC7B,MAAM;gBACR,KAAK,qBAAqB,CAAC,yBAAyB;oBAClD,eAAe;oBACf,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,oCAAoC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAClD,MAAM;gBACR,KAAK,qBAAqB,CAAC,QAAQ;oBACjC,OAAO;oBACP,IAAG,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,YAAY,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,YAAY,CAAC,UAAU,EAAC,CAAC;wBAC7F,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACrD,CAAC;oBAED,mBAAmB,CACjB,KAAkC,EAClC,oBAAoB,CACrB,CAAC;oBACF,MAAM;gBACR,KAAK,qBAAqB,CAAC,QAAQ;oBACjC,mBAAmB,CAAC,KAAK,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;oBACvD,MAAM;gBACR,KAAK,qBAAqB,CAAC,YAAY;oBACrC,kEAAkE;oBAClE,iDAAiD;oBACjD,QAAQ;oBACR,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC;oBAC/B,MAAM;gBACR,KAAK,qBAAqB,CAAC,KAAK;oBAC9B,mCAAmC;oBACnC,OAAO;oBACP,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,MAAM;gBACR,OAAO,CAAC,CAAC,CAAC;oBACR,kCAAkC;oBAClC,MAAM,WAAW,GAAU,KAAK,CAAC;oBACjC,OAAO,WAAW,CAAC;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO;YACP,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,sBAAsB,CAAC,SAAS,CAAC;IAC1C,CAAC,EACD;QACE,kBAAkB;QAClB,kBAAkB;QAClB,wBAAwB;QACxB,gBAAgB;QAChB,iBAAiB;QACjB,0BAA0B;QAC1B,mBAAmB;QACnB,0BAA0B;QAC1B,oCAAoC;QACpC,mBAAmB;QACnB,UAAU;KACX,CACF,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAC7B,KAAK,EACH,KAAoB,EACpB,OAAqC,EACrC,SAAkB,EAClB,EAAE;QACF,wEAAwE;QACxE,2DAA2D;QAC3D,IAAI,oBAAoB,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,IACE,CAAC,cAAc,KAAK,cAAc,CAAC,UAAU;YAC3C,cAAc,KAAK,cAAc,CAAC,sBAAsB,CAAC;YAC3D,CAAC,OAAO,EAAE,cAAc;YAExB,OAAO;QAET,+CAA+C;QAC/C,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpC,MAAM,oBAAoB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAExC,wEAAwE;QACxE,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;YAC7B,8BAA8B,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QAED,kBAAkB,CAAC,OAAO,GAAG,IAAI,eAAe,EAAE,CAAC;QACnD,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC;QACtD,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;QAEjC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,UAAU,GAAG,cAAc,EAAE,CAAC;QACpE,CAAC;QAED,OAAO,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;YAC/C,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,MAAM,qBAAqB,CAChE,KAAK,EACL,oBAAoB,EACpB,WAAW,EACX,SAAU,CACX,CAAC;YAEF,IAAI,CAAC,aAAa,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBAC3C,oBAAoB,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrC,OAAO;YACT,CAAC;YAED,mCAAmC;YACnC,aAAa;YACb,MAAM,kBAAkB,GAAG,MAAM,kBAAkB,CACjD,WAAW,EACX,oBAAoB,EACpB,OAAO,EAAE,cAAc,IAAI,KAAK,CACjC,CAAC;YAEF,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,CAAC;gBACtC,oBAAoB,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrC,OAAO;YACT,CAAC;YAED,MAAM,gBAAgB,GAAG,WAAW,CAAC;YAErC,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;gBAC7B,oDAAoD;gBACpD,cAAc,EAAE,CAAC;gBAEjB,iEAAiE;gBACjE,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;oBACpC,aAAa,CACX,MAAM,EACN,IAAI,eAAe,CACjB,WAAW,CAAC,MAAM,EAClB,SAAS,EACT,MAAM,CAAC,yBAAyB,EAAE,EAAE,QAAQ,EAC5C,WAAW,CACZ,CACF,CAAC;gBACJ,CAAC;gBAED,2CAA2C;gBAC3C,UAAU,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;YAED,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,YAAY,CAAC,IAAI,CAAC,CAAC;YAEnB,aAAa;YACb,mBAAmB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;YAE3C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,YAAY,CAAC,iBAAiB,CAC3C,gBAAgB,EAChB,WAAW,EACX,SAAU,EACV,OAAO,CACR,CAAC;gBACF,MAAM,gBAAgB,GAAG,MAAM,yBAAyB,CACtD,MAAM,EACN,oBAAoB,EACpB,WAAW,EACX,MAAM,CAAC,QAAQ,EAAE,EACjB,MAAM,CAAC,YAAY,EAAE,CACtB,CAAC;gBAEF,SAAS;gBACT,IAAI,gBAAgB,KAAK,sBAAsB,CAAC,aAAa,EAAE,CAAC;oBAC9D,0DAA0D;oBAC1D,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;wBACrC,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;oBAC5D,CAAC,CAAC,CAAC;oBACH,oBAAoB,CAAC,OAAO,GAAG,KAAK,CAAC;oBACrC,OAAO;gBACT,CAAC;gBAED,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;oBAClC,OAAO,CAAC,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;oBAC7D,qBAAqB,CAAC,IAAI,CAAC,CAAC;gBAC9B,CAAC;gBACD,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;oBAC5B,eAAe,CAAC,OAAO,GAAG,KAAK,CAAC;oBAChC,uBAAuB,EAAE,CAAC;gBAC5B,CAAC;gBAED,0DAA0D;gBAC1D,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACrC,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;gBAC5D,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,0DAA0D;gBAC1D,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACrC,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;gBAC5D,CAAC,CAAC,CAAC;gBAEH,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;oBACvC,WAAW,CAAC,qCAAqC,CAAC,CAAC;gBACrD,CAAC;qBAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAC9D,OAAO,CACL;wBACE,IAAI,EAAE,WAAW,CAAC,KAAK;wBACvB,IAAI,EAAE,sBAAsB,CAC1B,eAAe,CAAC,KAAK,CAAC,IAAI,eAAe,EACzC,MAAM,CAAC,yBAAyB,EAAE,EAAE,QAAQ,CAC7C;qBACF,EACD,oBAAoB,CACrB,CAAC;gBACJ,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,eAAe,CAAC,KAAK,CAAC,CAAC;gBACvB,oBAAoB,CAAC,OAAO,GAAG,KAAK,CAAC;YACvC,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,EACD;QACE,cAAc;QACd,8BAA8B;QAC9B,qBAAqB;QACrB,yBAAyB;QACzB,qBAAqB;QACrB,OAAO;QACP,qBAAqB;QACrB,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,MAAM;QACN,cAAc;QACd,cAAc;QACd,uBAAuB;QACvB,kBAAkB;QAClB,oBAAoB;KACrB,CACF,CAAC;IAEF,MAAM,wBAAwB,GAAG,WAAW,CAC1C,KAAK,EAAE,eAA6B,EAAE,EAAE;QACtC,wEAAwE;QACxE,IACE,eAAe,KAAK,YAAY,CAAC,IAAI;YACrC,eAAe,KAAK,YAAY,CAAC,SAAS,EAC1C,CAAC;YACD,IAAI,qBAAqB,GAAG,SAAS,CAAC,MAAM,CAC1C,CAAC,IAAI,EAAkC,EAAE,CACvC,IAAI,CAAC,MAAM,KAAK,mBAAmB,CACtC,CAAC;YAEF,oEAAoE;YACpE,IAAI,eAAe,KAAK,YAAY,CAAC,SAAS,EAAE,CAAC;gBAC/C,qBAAqB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5D,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CACvC,CAAC;YACJ,CAAC;YAED,6DAA6D;YAC7D,KAAK,MAAM,IAAI,IAAI,qBAAqB,EAAE,CAAC;gBACzC,IAAI,IAAI,CAAC,mBAAmB,EAAE,SAAS,EAAE,CAAC;oBACxC,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,CACtC,uBAAuB,CAAC,WAAW,CACpC,CAAC;oBACJ,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CACX,oCAAoC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAC1D,KAAK,CACN,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,MAAM,oBAAoB,GAAG,WAAW,CACtC,KAAK,EAAE,+BAAkD,EAAE,EAAE;QAC3D,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,MAAM,8BAA8B,GAClC,+BAA+B,CAAC,MAAM,CACpC,CACE,EAAmB,EACwC,EAAE;YAC7D,MAAM,eAAe,GACnB,EAAE,CAAC,MAAM,KAAK,SAAS;gBACvB,EAAE,CAAC,MAAM,KAAK,OAAO;gBACrB,EAAE,CAAC,MAAM,KAAK,WAAW,CAAC;YAE5B,YAAY;YACZ,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,wBAAwB,GAAG,EAEL,CAAC;gBAE7B,SAAS;gBACT,IAAG,EAAE,CAAC,MAAM,KAAK,OAAO,EAAC,CAAC;oBACxB,QAAQ;oBACR,wBAAwB,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,YAAY,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;oBACpI,6HAA6H;gBAC/H,CAAC;qBAAK,CAAC;oBACL,WAAW;oBACX,wBAAwB,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,YAAY,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;oBACnG,wEAAwE;gBAC1E,CAAC;gBAED,OAAO,CACL,wBAAwB,CAAC,QAAQ,EAAE,aAAa,KAAK,SAAS,CAC/D,CAAC;YACJ,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CACF,CAAC;QAEJ,gEAAgE;QAChE,MAAM,WAAW,GAAG,8BAA8B,CAAC,MAAM,CACvD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CACnC,CAAC;QACF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,oBAAoB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,4EAA4E;QAC5E,MAAM,wBAAwB,GAAG,8BAA8B,CAAC,MAAM,CACpE,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa;YAChC,CAAC,CAAC,MAAM,KAAK,SAAS;YACtB,CAAC,uBAAuB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CACzD,CAAC;QAEF,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,kDAAkD;YAClD,KAAK,oBAAoB,EAAE,CAAC;YAC5B,uEAAuE;YACvE,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CACrC,uBAAuB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CACtD,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,8BAA8B,CAAC,MAAM,CACvD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CACpC,CAAC;QAEF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,sEAAsE;QACtE,MAAM,iBAAiB,GAAG,WAAW,CAAC,KAAK,CACzC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,WAAW,CAClC,CAAC;QAEF,IAAI,iBAAiB,EAAE,CAAC;YACtB,IAAI,YAAY,EAAE,CAAC;gBACjB,gEAAgE;gBAChE,+CAA+C;gBAC/C,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CACvC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAC9C,CAAC;gBACF,YAAY,CAAC,UAAU,CAAC;oBACtB,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,aAAa;iBACrB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,wBAAwB,GAAG,WAAW,CAAC,GAAG,CAC9C,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CACtC,CAAC;YACF,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,MAAM,eAAe,GAAW,WAAW,CAAC,OAAO,CACjD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAC9C,CAAC;QACF,MAAM,wBAAwB,GAAG,WAAW,CAAC,GAAG,CAC9C,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CACtC,CAAC;QAEF,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAChC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CACzC,CAAC;QAEF,oBAAoB,CAAC,wBAAwB,CAAC,CAAC;QAE/C,0DAA0D;QAC1D,IAAI,2BAA2B,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;QAED,WAAW,CACT,eAAe,EACf;YACE,cAAc,EAAE,IAAI;SACrB,EACD,UAAU,CAAC,CAAC,CAAC,CACd,CAAC;IACJ,CAAC,EACD;QACE,YAAY;QACZ,WAAW;QACX,oBAAoB;QACpB,YAAY;QACZ,oBAAoB;QACpB,2BAA2B;KAC5B,CACF,CAAC;IAEF,MAAM,mBAAmB,GAAG,OAAO,CACjC,GAAG,EAAE,CACH,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAAC,MAAM,CACtD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CACrC,EACH,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAClD,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,uBAAuB,GAAG,KAAK,IAAI,EAAE;YACzC,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE,EAAE,CAAC;gBACtC,OAAO;YACT,CAAC;YACD,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAC1C,CAAC,QAAQ,EAAE,EAAE,CACX,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC1C,QAAQ,CAAC,MAAM,KAAK,mBAAmB,CAC1C,CAAC;YAEF,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,aAAa,GAAG,OAAO,CAAC,4BAA4B,EAAE,CAAC;gBAE7D,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACrD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACnD,cAAc,CACZ,0CAA0C,eAAe,CAAC,KAAK,CAAC,EAAE,CACnE,CAAC;wBACF,OAAO;oBACT,CAAC;gBACH,CAAC;gBAED,KAAK,MAAM,QAAQ,IAAI,mBAAmB,EAAE,CAAC;oBAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAW,CAAC;oBAC9D,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,cAAc,CACZ,2DAA2D,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CACnF,CAAC;wBACF,SAAS;oBACX,CAAC;oBAED,IAAI,CAAC;wBACH,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,cAAc,CACZ,4FAA4F,QAAQ,iDAAiD,CACtJ,CAAC;4BACF,SAAS;wBACX,CAAC;wBAED,IAAI,UAA8B,CAAC;wBACnC,IAAI,CAAC;4BACH,UAAU,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAC9C,gBAAgB,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CACxC,CAAC;wBACJ,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,cAAc,CACZ,kCAAkC,eAAe,CAAC,KAAK,CAAC,qCAAqC,CAC9F,CAAC;wBACJ,CAAC;wBAED,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,UAAU,GAAG,MAAM,UAAU,CAAC,oBAAoB,EAAE,CAAC;wBACvD,CAAC;wBAED,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,cAAc,CACZ,iCAAiC,QAAQ,+GAA+G,CACzJ,CAAC;4BACF,SAAS;wBACX,CAAC;wBAED,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE;6BACzB,WAAW,EAAE;6BACb,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;6BAClB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;wBACvB,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;wBACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;wBACzC,MAAM,4BAA4B,GAAG,GAAG,SAAS,IAAI,QAAQ,IAAI,QAAQ,OAAO,CAAC;wBACjF,MAAM,aAAa,GAAG,MAAM,YAAY,EAAE,UAAU,EAAE,CAAC;wBACvD,MAAM,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAC5C,aAAa,EACb,4BAA4B,CAC7B,CAAC;wBAEF,MAAM,EAAE,CAAC,SAAS,CAChB,4BAA4B,EAC5B,IAAI,CAAC,SAAS,CACZ;4BACE,OAAO;4BACP,aAAa;4BACb,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI;gCAC3B,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI;6BAC5B;4BACD,UAAU;4BACV,QAAQ;yBACT,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;oBACJ,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,cAAc,CACZ,mCAAmC,QAAQ,KAAK,eAAe,CAC7D,KAAK,CACN,oEAAoE,CACtE,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QACF,uBAAuB,EAAE,CAAC;IAC5B,CAAC,EAAE;QACD,SAAS;QACT,MAAM;QACN,cAAc;QACd,UAAU;QACV,OAAO;QACP,YAAY;QACZ,OAAO;KACR,CAAC,CAAC;IAEH,OAAO;QACL,cAAc;QACd,WAAW;QACX,SAAS;QACT,mBAAmB;QACnB,OAAO;QACP,oBAAoB;QACpB,gBAAgB,EAAE,SAAS;QAC3B,wBAAwB;QACxB,WAAW;QACX,gCAAgC;KACjC,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -7,30 +7,35 @@ import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
|
7
7
|
import { renderHook, act } from '@testing-library/react';
|
|
8
8
|
import { useLoadingIndicator } from './useLoadingIndicator.js';
|
|
9
9
|
import { StreamingState } from '../types.js';
|
|
10
|
-
import {
|
|
10
|
+
import { PHRASE_CHANGE_INTERVAL_MS } from './usePhraseCycler.js';
|
|
11
|
+
import * as i18n from '../../i18n/index.js';
|
|
12
|
+
const MOCK_WITTY_PHRASES = ['Phrase 1', 'Phrase 2', 'Phrase 3'];
|
|
11
13
|
describe('useLoadingIndicator', () => {
|
|
12
14
|
beforeEach(() => {
|
|
13
15
|
vi.useFakeTimers();
|
|
16
|
+
vi.spyOn(i18n, 'ta').mockReturnValue(MOCK_WITTY_PHRASES);
|
|
17
|
+
vi.spyOn(i18n, 't').mockImplementation((key) => key);
|
|
14
18
|
});
|
|
15
19
|
afterEach(() => {
|
|
16
20
|
vi.useRealTimers(); // Restore real timers after each test
|
|
17
21
|
act(() => vi.runOnlyPendingTimers);
|
|
22
|
+
vi.restoreAllMocks();
|
|
18
23
|
});
|
|
19
24
|
it('should initialize with default values when Idle', () => {
|
|
20
25
|
const { result } = renderHook(() => useLoadingIndicator(StreamingState.Idle));
|
|
21
26
|
expect(result.current.elapsedTime).toBe(0);
|
|
22
|
-
expect(
|
|
27
|
+
expect(MOCK_WITTY_PHRASES).toContain(result.current.currentLoadingPhrase);
|
|
23
28
|
});
|
|
24
29
|
it('should reflect values when Responding', async () => {
|
|
25
30
|
const { result } = renderHook(() => useLoadingIndicator(StreamingState.Responding));
|
|
26
31
|
// Initial state before timers advance
|
|
27
32
|
expect(result.current.elapsedTime).toBe(0);
|
|
28
|
-
expect(
|
|
33
|
+
expect(MOCK_WITTY_PHRASES).toContain(result.current.currentLoadingPhrase);
|
|
29
34
|
await act(async () => {
|
|
30
35
|
await vi.advanceTimersByTimeAsync(PHRASE_CHANGE_INTERVAL_MS + 1);
|
|
31
36
|
});
|
|
32
37
|
// Phrase should cycle if PHRASE_CHANGE_INTERVAL_MS has passed
|
|
33
|
-
expect(
|
|
38
|
+
expect(MOCK_WITTY_PHRASES).toContain(result.current.currentLoadingPhrase);
|
|
34
39
|
});
|
|
35
40
|
it('should show waiting phrase and retain elapsedTime when WaitingForConfirmation', async () => {
|
|
36
41
|
const { result, rerender } = renderHook(({ streamingState }) => useLoadingIndicator(streamingState), { initialProps: { streamingState: StreamingState.Responding } });
|
|
@@ -64,7 +69,7 @@ describe('useLoadingIndicator', () => {
|
|
|
64
69
|
rerender({ streamingState: StreamingState.Responding });
|
|
65
70
|
});
|
|
66
71
|
expect(result.current.elapsedTime).toBe(0); // Should reset
|
|
67
|
-
expect(
|
|
72
|
+
expect(MOCK_WITTY_PHRASES).toContain(result.current.currentLoadingPhrase);
|
|
68
73
|
await act(async () => {
|
|
69
74
|
await vi.advanceTimersByTimeAsync(1000);
|
|
70
75
|
});
|
|
@@ -80,7 +85,7 @@ describe('useLoadingIndicator', () => {
|
|
|
80
85
|
rerender({ streamingState: StreamingState.Idle });
|
|
81
86
|
});
|
|
82
87
|
expect(result.current.elapsedTime).toBe(0);
|
|
83
|
-
expect(
|
|
88
|
+
expect(MOCK_WITTY_PHRASES).toContain(result.current.currentLoadingPhrase);
|
|
84
89
|
// Timer should not advance
|
|
85
90
|
await act(async () => {
|
|
86
91
|
await vi.advanceTimersByTimeAsync(2000);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLoadingIndicator.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useLoadingIndicator.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,
|
|
1
|
+
{"version":3,"file":"useLoadingIndicator.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useLoadingIndicator.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,13 +4,16 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { useState, useEffect } from 'react';
|
|
7
|
-
import {
|
|
7
|
+
import { Logger } from '@umsai/ums-code-core';
|
|
8
8
|
/**
|
|
9
9
|
* Hook to manage the logger instance.
|
|
10
10
|
*/
|
|
11
|
-
export const useLogger = (storage) => {
|
|
11
|
+
export const useLogger = (storage, sessionId) => {
|
|
12
12
|
const [logger, setLogger] = useState(null);
|
|
13
13
|
useEffect(() => {
|
|
14
|
+
if (!sessionId) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
14
17
|
const newLogger = new Logger(sessionId, storage);
|
|
15
18
|
/**
|
|
16
19
|
* Start async initialization, no need to await. Using await slows down the
|
|
@@ -23,7 +26,7 @@ export const useLogger = (storage) => {
|
|
|
23
26
|
setLogger(newLogger);
|
|
24
27
|
})
|
|
25
28
|
.catch(() => { });
|
|
26
|
-
}, [storage]);
|
|
29
|
+
}, [storage, sessionId]);
|
|
27
30
|
return logger;
|
|
28
31
|
};
|
|
29
32
|
//# sourceMappingURL=useLogger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLogger.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useLogger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useLogger.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useLogger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAgB,EAAE,SAAiB,EAAE,EAAE;IAC/D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAE1D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACjD;;;;WAIG;QACH,SAAS;aACN,UAAU,EAAE;aACZ,IAAI,CAAC,GAAG,EAAE;YACT,SAAS,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IAEzB,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
|
|
@@ -4,138 +4,8 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { useState, useEffect, useRef, useMemo } from 'react';
|
|
7
|
-
import { t } from '../../i18n/index.js';
|
|
8
|
-
export const WITTY_LOADING_PHRASES = [
|
|
9
|
-
"I'm Feeling Lucky",
|
|
10
|
-
'Shipping awesomeness... ',
|
|
11
|
-
'Painting the serifs back on...',
|
|
12
|
-
'Navigating the slime mold...',
|
|
13
|
-
'Consulting the digital spirits...',
|
|
14
|
-
'Reticulating splines...',
|
|
15
|
-
'Warming up the AI hamsters...',
|
|
16
|
-
'Asking the magic conch shell...',
|
|
17
|
-
'Generating witty retort...',
|
|
18
|
-
'Polishing the algorithms...',
|
|
19
|
-
"Don't rush perfection (or my code)...",
|
|
20
|
-
'Brewing fresh bytes...',
|
|
21
|
-
'Counting electrons...',
|
|
22
|
-
'Engaging cognitive processors...',
|
|
23
|
-
'Checking for syntax errors in the universe...',
|
|
24
|
-
'One moment, optimizing humor...',
|
|
25
|
-
'Shuffling punchlines...',
|
|
26
|
-
'Untangling neural nets...',
|
|
27
|
-
'Compiling brilliance...',
|
|
28
|
-
'Loading wit.exe...',
|
|
29
|
-
'Summoning the cloud of wisdom...',
|
|
30
|
-
'Preparing a witty response...',
|
|
31
|
-
"Just a sec, I'm debugging reality...",
|
|
32
|
-
'Confuzzling the options...',
|
|
33
|
-
'Tuning the cosmic frequencies...',
|
|
34
|
-
'Crafting a response worthy of your patience...',
|
|
35
|
-
'Compiling the 1s and 0s...',
|
|
36
|
-
'Resolving dependencies... and existential crises...',
|
|
37
|
-
'Defragmenting memories... both RAM and personal...',
|
|
38
|
-
'Rebooting the humor module...',
|
|
39
|
-
'Caching the essentials (mostly cat memes)...',
|
|
40
|
-
'Optimizing for ludicrous speed',
|
|
41
|
-
"Swapping bits... don't tell the bytes...",
|
|
42
|
-
'Garbage collecting... be right back...',
|
|
43
|
-
'Assembling the interwebs...',
|
|
44
|
-
'Converting coffee into code...',
|
|
45
|
-
'Updating the syntax for reality...',
|
|
46
|
-
'Rewiring the synapses...',
|
|
47
|
-
'Looking for a misplaced semicolon...',
|
|
48
|
-
"Greasin' the cogs of the machine...",
|
|
49
|
-
'Pre-heating the servers...',
|
|
50
|
-
'Calibrating the flux capacitor...',
|
|
51
|
-
'Engaging the improbability drive...',
|
|
52
|
-
'Channeling the Force...',
|
|
53
|
-
'Aligning the stars for optimal response...',
|
|
54
|
-
'So say we all...',
|
|
55
|
-
'Loading the next great idea...',
|
|
56
|
-
"Just a moment, I'm in the zone...",
|
|
57
|
-
'Preparing to dazzle you with brilliance...',
|
|
58
|
-
"Just a tick, I'm polishing my wit...",
|
|
59
|
-
"Hold tight, I'm crafting a masterpiece...",
|
|
60
|
-
"Just a jiffy, I'm debugging the universe...",
|
|
61
|
-
"Just a moment, I'm aligning the pixels...",
|
|
62
|
-
"Just a sec, I'm optimizing the humor...",
|
|
63
|
-
"Just a moment, I'm tuning the algorithms...",
|
|
64
|
-
'Warp speed engaged...',
|
|
65
|
-
'Mining for more Dilithium crystals...',
|
|
66
|
-
"Don't panic...",
|
|
67
|
-
'Following the white rabbit...',
|
|
68
|
-
'The truth is in here... somewhere...',
|
|
69
|
-
'Blowing on the cartridge...',
|
|
70
|
-
'Loading... Do a barrel roll!',
|
|
71
|
-
'Waiting for the respawn...',
|
|
72
|
-
'Finishing the Kessel Run in less than 12 parsecs...',
|
|
73
|
-
"The cake is not a lie, it's just still loading...",
|
|
74
|
-
'Fiddling with the character creation screen...',
|
|
75
|
-
"Just a moment, I'm finding the right meme...",
|
|
76
|
-
"Pressing 'A' to continue...",
|
|
77
|
-
'Herding digital cats...',
|
|
78
|
-
'Polishing the pixels...',
|
|
79
|
-
'Finding a suitable loading screen pun...',
|
|
80
|
-
'Distracting you with this witty phrase...',
|
|
81
|
-
'Almost there... probably...',
|
|
82
|
-
'Our hamsters are working as fast as they can...',
|
|
83
|
-
'Giving Cloudy a pat on the head...',
|
|
84
|
-
'Petting the cat...',
|
|
85
|
-
'Rickrolling my boss...',
|
|
86
|
-
'Never gonna give you up, never gonna let you down...',
|
|
87
|
-
'Slapping the bass...',
|
|
88
|
-
'Tasting the snozberries...',
|
|
89
|
-
"I'm going the distance, I'm going for speed...",
|
|
90
|
-
'Is this the real life? Is this just fantasy?...',
|
|
91
|
-
"I've got a good feeling about this...",
|
|
92
|
-
'Poking the bear...',
|
|
93
|
-
'Doing research on the latest memes...',
|
|
94
|
-
'Figuring out how to make this more witty...',
|
|
95
|
-
'Hmmm... let me think...',
|
|
96
|
-
'What do you call a fish with no eyes? A fsh...',
|
|
97
|
-
'Why did the computer go to therapy? It had too many bytes...',
|
|
98
|
-
"Why don't programmers like nature? It has too many bugs...",
|
|
99
|
-
'Why do programmers prefer dark mode? Because light attracts bugs...',
|
|
100
|
-
'Why did the developer go broke? Because they used up all their cache...',
|
|
101
|
-
"What can you do with a broken pencil? Nothing, it's pointless...",
|
|
102
|
-
'Applying percussive maintenance...',
|
|
103
|
-
'Searching for the correct USB orientation...',
|
|
104
|
-
'Ensuring the magic smoke stays inside the wires...',
|
|
105
|
-
'Rewriting in Rust for no particular reason...',
|
|
106
|
-
'Trying to exit Vim...',
|
|
107
|
-
'Spinning up the hamster wheel...',
|
|
108
|
-
"That's not a bug, it's an undocumented feature...",
|
|
109
|
-
'Engage.',
|
|
110
|
-
"I'll be back... with an answer.",
|
|
111
|
-
'My other process is a TARDIS...',
|
|
112
|
-
'Communing with the machine spirit...',
|
|
113
|
-
'Letting the thoughts marinate...',
|
|
114
|
-
'Just remembered where I put my keys...',
|
|
115
|
-
'Pondering the orb...',
|
|
116
|
-
"I've seen things you people wouldn't believe... like a user who reads loading messages.",
|
|
117
|
-
'Initiating thoughtful gaze...',
|
|
118
|
-
"What's a computer's favorite snack? Microchips.",
|
|
119
|
-
"Why do Java developers wear glasses? Because they don't C#.",
|
|
120
|
-
'Charging the laser... pew pew!',
|
|
121
|
-
'Dividing by zero... just kidding!',
|
|
122
|
-
'Looking for an adult superviso... I mean, processing.',
|
|
123
|
-
'Making it go beep boop.',
|
|
124
|
-
'Buffering... because even AIs need a moment.',
|
|
125
|
-
'Entangling quantum particles for a faster response...',
|
|
126
|
-
'Polishing the chrome... on the algorithms.',
|
|
127
|
-
'Are you not entertained? (Working on it!)',
|
|
128
|
-
'Summoning the code gremlins... to help, of course.',
|
|
129
|
-
'Just waiting for the dial-up tone to finish...',
|
|
130
|
-
'Recalibrating the humor-o-meter.',
|
|
131
|
-
'My other loading screen is even funnier.',
|
|
132
|
-
"Pretty sure there's a cat walking on the keyboard somewhere...",
|
|
133
|
-
'Enhancing... Enhancing... Still loading.',
|
|
134
|
-
"It's not a bug, it's a feature... of this loading screen.",
|
|
135
|
-
'Have you tried turning it off and on again? (The loading screen, not me.)',
|
|
136
|
-
'Constructing additional pylons...',
|
|
137
|
-
'New line? That’s Ctrl+J.',
|
|
138
|
-
];
|
|
7
|
+
import { t, ta } from '../../i18n/index.js';
|
|
8
|
+
export const WITTY_LOADING_PHRASES = ["I'm Feeling Lucky"];
|
|
139
9
|
export const PHRASE_CHANGE_INTERVAL_MS = 15000;
|
|
140
10
|
/**
|
|
141
11
|
* Custom hook to manage cycling through loading phrases.
|
|
@@ -144,10 +14,16 @@ export const PHRASE_CHANGE_INTERVAL_MS = 15000;
|
|
|
144
14
|
* @returns The current loading phrase.
|
|
145
15
|
*/
|
|
146
16
|
export const usePhraseCycler = (isActive, isWaiting, customPhrases) => {
|
|
147
|
-
//
|
|
148
|
-
const loadingPhrases = useMemo(() =>
|
|
149
|
-
|
|
150
|
-
|
|
17
|
+
// Get phrases from translations if available
|
|
18
|
+
const loadingPhrases = useMemo(() => {
|
|
19
|
+
if (customPhrases && customPhrases.length > 0) {
|
|
20
|
+
return customPhrases;
|
|
21
|
+
}
|
|
22
|
+
const translatedPhrases = ta('WITTY_LOADING_PHRASES');
|
|
23
|
+
return translatedPhrases.length > 0
|
|
24
|
+
? translatedPhrases
|
|
25
|
+
: WITTY_LOADING_PHRASES;
|
|
26
|
+
}, [customPhrases]);
|
|
151
27
|
const [currentLoadingPhrase, setCurrentLoadingPhrase] = useState(loadingPhrases[0]);
|
|
152
28
|
const phraseIntervalRef = useRef(null);
|
|
153
29
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePhraseCycler.js","sourceRoot":"","sources":["../../../../src/ui/hooks/usePhraseCycler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"usePhraseCycler.js","sourceRoot":"","sources":["../../../../src/ui/hooks/usePhraseCycler.ts"],"names":[],"mappings":"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"}
|