@machina.ai/cell-cli 1.36.0-rc1 → 1.38.1-rc2
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/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/package.json +4 -4
- package/dist/src/acp/acpClient.js +297 -32
- package/dist/src/acp/acpClient.js.map +1 -1
- package/dist/src/acp/acpClient.test.js +419 -19
- package/dist/src/acp/acpClient.test.js.map +1 -1
- package/dist/src/acp/acpResume.test.js +8 -0
- package/dist/src/acp/acpResume.test.js.map +1 -1
- package/dist/src/acp/commandHandler.js +4 -0
- package/dist/src/acp/commandHandler.js.map +1 -1
- package/dist/src/acp/commandHandler.test.js +4 -0
- package/dist/src/acp/commandHandler.test.js.map +1 -1
- package/dist/src/acp/commands/about.d.ts +11 -0
- package/dist/src/acp/commands/about.js +53 -0
- package/dist/src/acp/commands/about.js.map +1 -0
- package/dist/src/acp/commands/extensions.js +1 -1
- package/dist/src/acp/commands/extensions.js.map +1 -1
- package/dist/src/acp/commands/help.d.ts +14 -0
- package/dist/src/acp/commands/help.js +35 -0
- package/dist/src/acp/commands/help.js.map +1 -0
- package/dist/src/acp/commands/help.test.d.ts +6 -0
- package/dist/src/acp/commands/help.test.js +40 -0
- package/dist/src/acp/commands/help.test.js.map +1 -0
- package/dist/src/acp/commands/restore.js +2 -2
- package/dist/src/acp/commands/restore.js.map +1 -1
- package/dist/src/commands/extensions/new.js +1 -1
- package/dist/src/commands/extensions/new.js.map +1 -1
- package/dist/src/commands/mcp/list.js +2 -2
- package/dist/src/commands/mcp/list.js.map +1 -1
- package/dist/src/commands/mcp.test.js +1 -1
- package/dist/src/commands/mcp.test.js.map +1 -1
- package/dist/src/commands/skills/list.js +5 -8
- package/dist/src/commands/skills/list.js.map +1 -1
- package/dist/src/commands/skills/list.test.js +17 -13
- package/dist/src/commands/skills/list.test.js.map +1 -1
- package/dist/src/config/config.js +22 -9
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +121 -36
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/extension-manager-permissions.test.js +1 -1
- package/dist/src/config/extension-manager-permissions.test.js.map +1 -1
- package/dist/src/config/extension-manager-themes.spec.js +1 -0
- package/dist/src/config/extension-manager-themes.spec.js.map +1 -1
- package/dist/src/config/extension-manager.test.js +1 -1
- package/dist/src/config/extension-manager.test.js.map +1 -1
- package/dist/src/config/extension.js +1 -1
- package/dist/src/config/extension.js.map +1 -1
- package/dist/src/config/extensions/github.js +1 -1
- package/dist/src/config/extensions/github.js.map +1 -1
- package/dist/src/config/footerItems.d.ts +4 -0
- package/dist/src/config/footerItems.js +12 -2
- package/dist/src/config/footerItems.js.map +1 -1
- package/dist/src/config/footerItems.test.js +129 -72
- package/dist/src/config/footerItems.test.js.map +1 -1
- package/dist/src/config/policy-engine.integration.test.js +1 -3
- package/dist/src/config/policy-engine.integration.test.js.map +1 -1
- package/dist/src/config/policy.d.ts +1 -1
- package/dist/src/config/policy.js +2 -2
- package/dist/src/config/policy.js.map +1 -1
- package/dist/src/config/settings.js +19 -3
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +272 -53
- package/dist/src/config/settingsSchema.js +262 -48
- package/dist/src/config/settingsSchema.js.map +1 -1
- package/dist/src/config/settingsSchema.test.js +22 -4
- package/dist/src/config/settingsSchema.test.js.map +1 -1
- package/dist/src/config/workspace-policy-cli.test.js +7 -7
- package/dist/src/config/workspace-policy-cli.test.js.map +1 -1
- package/dist/src/gemini.js +24 -7
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/gemini.test.js +74 -4
- package/dist/src/gemini.test.js.map +1 -1
- package/dist/src/gemini_cleanup.test.js +69 -4
- package/dist/src/gemini_cleanup.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/integration-tests/modelSteering.test.js +1 -1
- package/dist/src/integration-tests/modelSteering.test.js.map +1 -1
- package/dist/src/interactiveCli.js +4 -2
- package/dist/src/interactiveCli.js.map +1 -1
- package/dist/src/nonInteractiveCli.d.ts +1 -1
- package/dist/src/nonInteractiveCli.js +11 -2
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/nonInteractiveCli.test.js +4 -2
- package/dist/src/nonInteractiveCli.test.js.map +1 -1
- package/dist/src/nonInteractiveCliAgentSession.d.ts +16 -0
- package/dist/src/nonInteractiveCliAgentSession.js +484 -0
- package/dist/src/nonInteractiveCliAgentSession.js.map +1 -0
- package/dist/src/nonInteractiveCliAgentSession.test.js +1837 -0
- package/dist/src/nonInteractiveCliAgentSession.test.js.map +1 -0
- package/dist/src/services/BuiltinCommandLoader.js +4 -2
- package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
- package/dist/src/test-utils/mockCommandContext.js +1 -0
- package/dist/src/test-utils/mockCommandContext.js.map +1 -1
- package/dist/src/test-utils/mockConfig.js +16 -0
- package/dist/src/test-utils/mockConfig.js.map +1 -1
- package/dist/src/test-utils/mockSpinner.d.ts +6 -0
- package/dist/src/test-utils/mockSpinner.js +21 -0
- package/dist/src/test-utils/mockSpinner.js.map +1 -0
- package/dist/src/test-utils/render.d.ts +8 -1
- package/dist/src/test-utils/render.js +37 -11
- package/dist/src/test-utils/render.js.map +1 -1
- package/dist/src/ui/App.test.js +1 -1
- package/dist/src/ui/App.test.js.map +1 -1
- package/dist/src/ui/AppContainer.js +225 -99
- package/dist/src/ui/AppContainer.js.map +1 -1
- package/dist/src/ui/AppContainer.test.js +50 -38
- package/dist/src/ui/AppContainer.test.js.map +1 -1
- package/dist/src/ui/commands/chatCommand.js +15 -5
- package/dist/src/ui/commands/chatCommand.js.map +1 -1
- package/dist/src/ui/commands/clearCommand.js +3 -1
- package/dist/src/ui/commands/clearCommand.js.map +1 -1
- package/dist/src/ui/commands/directoryCommand.js +1 -1
- package/dist/src/ui/commands/directoryCommand.js.map +1 -1
- package/dist/src/ui/commands/extensionsCommand.js +22 -11
- package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
- package/dist/src/ui/commands/marketplaceCommand.d.ts +7 -0
- package/dist/src/ui/commands/marketplaceCommand.js +135 -0
- package/dist/src/ui/commands/marketplaceCommand.js.map +1 -0
- package/dist/src/ui/commands/mcpCommand.js +26 -7
- package/dist/src/ui/commands/mcpCommand.js.map +1 -1
- package/dist/src/ui/commands/mcpCommand.test.js +26 -0
- package/dist/src/ui/commands/mcpCommand.test.js.map +1 -1
- package/dist/src/ui/commands/planCommand.js +9 -0
- package/dist/src/ui/commands/planCommand.js.map +1 -1
- package/dist/src/ui/commands/planCommand.test.js +29 -0
- package/dist/src/ui/commands/planCommand.test.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/rewindCommand.js +3 -1
- package/dist/src/ui/commands/rewindCommand.js.map +1 -1
- package/dist/src/ui/commands/rewindCommand.test.js +1 -1
- package/dist/src/ui/commands/rewindCommand.test.js.map +1 -1
- package/dist/src/ui/commands/setupGithubCommand.js +5 -5
- package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
- package/dist/src/ui/commands/skillsCommand.js +11 -1
- package/dist/src/ui/commands/skillsCommand.js.map +1 -1
- package/dist/src/ui/commands/skillsCommand.test.js +1 -0
- package/dist/src/ui/commands/skillsCommand.test.js.map +1 -1
- package/dist/src/ui/commands/{shellsCommand.d.ts → tasksCommand.d.ts} +1 -1
- package/dist/src/ui/commands/{shellsCommand.js → tasksCommand.js} +6 -6
- package/dist/src/ui/commands/tasksCommand.js.map +1 -0
- package/dist/src/ui/commands/tasksCommand.test.js +30 -0
- package/dist/src/ui/commands/tasksCommand.test.js.map +1 -0
- package/dist/src/ui/commands/types.d.ts +9 -1
- package/dist/src/ui/components/AnsiOutput.js +7 -5
- package/dist/src/ui/components/AnsiOutput.js.map +1 -1
- package/dist/src/ui/components/AnsiOutput.test.js +13 -0
- package/dist/src/ui/components/AnsiOutput.test.js.map +1 -1
- package/dist/src/ui/components/AppHeader.js +11 -11
- package/dist/src/ui/components/AppHeader.js.map +1 -1
- package/dist/src/ui/components/AppHeader.test.js +6 -2
- package/dist/src/ui/components/AppHeader.test.js.map +1 -1
- package/dist/src/ui/components/AsciiArt.d.ts +6 -6
- package/dist/src/ui/components/AsciiArt.js +6 -6
- package/dist/src/ui/components/AskUserDialog.js +13 -13
- package/dist/src/ui/components/AskUserDialog.js.map +1 -1
- package/dist/src/ui/components/AskUserDialog.test.js +31 -0
- package/dist/src/ui/components/AskUserDialog.test.js.map +1 -1
- package/dist/src/ui/components/BackgroundTaskDisplay.d.ts +16 -0
- package/dist/src/ui/components/{BackgroundShellDisplay.js → BackgroundTaskDisplay.js} +12 -12
- package/dist/src/ui/components/BackgroundTaskDisplay.js.map +1 -0
- package/dist/src/ui/components/{BackgroundShellDisplay.test.js → BackgroundTaskDisplay.test.js} +26 -26
- package/dist/src/ui/components/BackgroundTaskDisplay.test.js.map +1 -0
- package/dist/src/ui/components/Composer.js +20 -208
- package/dist/src/ui/components/Composer.js.map +1 -1
- package/dist/src/ui/components/Composer.test.js +22 -17
- package/dist/src/ui/components/Composer.test.js.map +1 -1
- package/dist/src/ui/components/ContextSummaryDisplay.js +3 -1
- package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
- package/dist/src/ui/components/CopyModeWarning.js +3 -6
- package/dist/src/ui/components/CopyModeWarning.js.map +1 -1
- package/dist/src/ui/components/CopyModeWarning.test.js +7 -8
- package/dist/src/ui/components/CopyModeWarning.test.js.map +1 -1
- package/dist/src/ui/components/ExitPlanModeDialog.js +9 -0
- package/dist/src/ui/components/ExitPlanModeDialog.js.map +1 -1
- package/dist/src/ui/components/ExitPlanModeDialog.test.js +15 -3
- package/dist/src/ui/components/ExitPlanModeDialog.test.js.map +1 -1
- package/dist/src/ui/components/FolderTrustDialog.test.js +7 -8
- package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/Footer.js +36 -9
- package/dist/src/ui/components/Footer.js.map +1 -1
- package/dist/src/ui/components/Footer.test.js +85 -6
- package/dist/src/ui/components/Footer.test.js.map +1 -1
- package/dist/src/ui/components/FooterConfigDialog.js +1 -0
- package/dist/src/ui/components/FooterConfigDialog.js.map +1 -1
- package/dist/src/ui/components/FooterConfigDialog.test.js +1 -1
- package/dist/src/ui/components/Help.test.js +1 -1
- package/dist/src/ui/components/Help.test.js.map +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.d.ts +2 -0
- package/dist/src/ui/components/HistoryItemDisplay.js +14 -12
- package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.d.ts +10 -5
- package/dist/src/ui/components/InputPrompt.js +195 -90
- package/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.test.d.ts +12 -1
- package/dist/src/ui/components/InputPrompt.test.js +370 -160
- package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
- package/dist/src/ui/components/LoadingIndicator.js +1 -2
- package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
- package/dist/src/ui/components/LoadingIndicator.test.js +7 -0
- package/dist/src/ui/components/LoadingIndicator.test.js.map +1 -1
- package/dist/src/ui/components/MainContent.d.ts +1 -1
- package/dist/src/ui/components/MainContent.js +105 -34
- package/dist/src/ui/components/MainContent.js.map +1 -1
- package/dist/src/ui/components/MainContent.test.js +12 -9
- package/dist/src/ui/components/MainContent.test.js.map +1 -1
- package/dist/src/ui/components/MemoryUsageDisplay.d.ts +1 -0
- package/dist/src/ui/components/MemoryUsageDisplay.js +5 -2
- package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -1
- package/dist/src/ui/components/ModelDialog.js +50 -72
- package/dist/src/ui/components/ModelDialog.js.map +1 -1
- package/dist/src/ui/components/ModelDialog.test.js +1 -0
- package/dist/src/ui/components/ModelDialog.test.js.map +1 -1
- package/dist/src/ui/components/ModelQuotaDisplay.d.ts +18 -0
- package/dist/src/ui/components/ModelQuotaDisplay.js +104 -0
- package/dist/src/ui/components/ModelQuotaDisplay.js.map +1 -0
- package/dist/src/ui/components/ModelQuotaDisplay.test.d.ts +6 -0
- package/dist/src/ui/components/ModelQuotaDisplay.test.js +62 -0
- package/dist/src/ui/components/ModelQuotaDisplay.test.js.map +1 -0
- package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js +1 -1
- package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/ProgressBar.d.ts +13 -0
- package/dist/src/ui/components/ProgressBar.js +17 -0
- package/dist/src/ui/components/ProgressBar.js.map +1 -0
- package/dist/src/ui/components/ProgressBar.test.d.ts +6 -0
- package/dist/src/ui/components/ProgressBar.test.js +28 -0
- package/dist/src/ui/components/ProgressBar.test.js.map +1 -0
- package/dist/src/ui/components/StatsDisplay.d.ts +2 -2
- package/dist/src/ui/components/StatsDisplay.js +47 -128
- package/dist/src/ui/components/StatsDisplay.js.map +1 -1
- package/dist/src/ui/components/StatsDisplay.test.js +65 -136
- package/dist/src/ui/components/StatsDisplay.test.js.map +1 -1
- package/dist/src/ui/components/StatusDisplay.js +1 -1
- package/dist/src/ui/components/StatusDisplay.js.map +1 -1
- package/dist/src/ui/components/StatusDisplay.test.js +3 -3
- package/dist/src/ui/components/StatusDisplay.test.js.map +1 -1
- package/dist/src/ui/components/StatusRow.d.ts +32 -0
- package/dist/src/ui/components/StatusRow.js +180 -0
- package/dist/src/ui/components/StatusRow.js.map +1 -0
- package/dist/src/ui/components/StatusRow.test.d.ts +6 -0
- package/dist/src/ui/components/StatusRow.test.js +99 -0
- package/dist/src/ui/components/StatusRow.test.js.map +1 -0
- package/dist/src/ui/components/ToastDisplay.d.ts +2 -1
- package/dist/src/ui/components/ToastDisplay.js +7 -5
- package/dist/src/ui/components/ToastDisplay.js.map +1 -1
- package/dist/src/ui/components/ToastDisplay.test.js +34 -20
- package/dist/src/ui/components/ToastDisplay.test.js.map +1 -1
- package/dist/src/ui/components/ToolConfirmationQueue.js +24 -9
- package/dist/src/ui/components/ToolConfirmationQueue.js.map +1 -1
- package/dist/src/ui/components/ToolConfirmationQueue.test.js +4 -6
- package/dist/src/ui/components/ToolConfirmationQueue.test.js.map +1 -1
- package/dist/src/ui/components/UserIdentity.js +8 -5
- package/dist/src/ui/components/UserIdentity.js.map +1 -1
- package/dist/src/ui/components/messages/DenseToolMessage.d.ts +13 -0
- package/dist/src/ui/components/messages/DenseToolMessage.js +270 -0
- package/dist/src/ui/components/messages/DenseToolMessage.js.map +1 -0
- package/dist/src/ui/components/messages/DenseToolMessage.test.d.ts +6 -0
- package/dist/src/ui/components/messages/DenseToolMessage.test.js +383 -0
- package/dist/src/ui/components/messages/DenseToolMessage.test.js.map +1 -0
- package/dist/src/ui/components/messages/DiffRenderer.d.ts +18 -0
- package/dist/src/ui/components/messages/DiffRenderer.js +54 -34
- package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
- package/dist/src/ui/components/messages/DiffRenderer.test.js +12 -6
- package/dist/src/ui/components/messages/DiffRenderer.test.js.map +1 -1
- package/dist/src/ui/components/messages/InfoMessage.d.ts +1 -0
- package/dist/src/ui/components/messages/InfoMessage.js +2 -2
- package/dist/src/ui/components/messages/InfoMessage.js.map +1 -1
- package/dist/src/ui/components/messages/RedirectionConfirmation.test.js +1 -1
- package/dist/src/ui/components/messages/RedirectionConfirmation.test.js.map +1 -1
- package/dist/src/ui/components/messages/ShellToolMessage.test.js +44 -33
- package/dist/src/ui/components/messages/ShellToolMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/SubagentGroupDisplay.js +3 -2
- package/dist/src/ui/components/messages/SubagentGroupDisplay.js.map +1 -1
- package/dist/src/ui/components/messages/SubagentGroupDisplay.test.js +1 -1
- package/dist/src/ui/components/messages/SubagentGroupDisplay.test.js.map +1 -1
- package/dist/src/ui/components/messages/SubagentHistoryMessage.d.ts +13 -0
- package/dist/src/ui/components/messages/SubagentHistoryMessage.js +4 -0
- package/dist/src/ui/components/messages/SubagentHistoryMessage.js.map +1 -0
- package/dist/src/ui/components/messages/SubagentHistoryMessage.test.d.ts +6 -0
- package/dist/src/ui/components/messages/SubagentHistoryMessage.test.js +68 -0
- package/dist/src/ui/components/messages/SubagentHistoryMessage.test.js.map +1 -0
- package/dist/src/ui/components/messages/SubagentProgressDisplay.d.ts +2 -1
- package/dist/src/ui/components/messages/SubagentProgressDisplay.js +2 -2
- package/dist/src/ui/components/messages/SubagentProgressDisplay.js.map +1 -1
- package/dist/src/ui/components/messages/SubagentProgressDisplay.test.js +0 -4
- package/dist/src/ui/components/messages/SubagentProgressDisplay.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.d.ts +1 -0
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js +108 -70
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +40 -25
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolGroupMessage.compact.test.d.ts +6 -0
- package/dist/src/ui/components/messages/ToolGroupMessage.compact.test.js +147 -0
- package/dist/src/ui/components/messages/ToolGroupMessage.compact.test.js.map +1 -0
- package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +3 -0
- package/dist/src/ui/components/messages/ToolGroupMessage.js +219 -52
- package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolGroupMessage.test.js +55 -3
- package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolMessage.test.js +8 -7
- package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolOverflowConsistencyChecks.test.js +1 -1
- package/dist/src/ui/components/messages/ToolOverflowConsistencyChecks.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolResultDisplay.js +57 -15
- package/dist/src/ui/components/messages/ToolResultDisplay.js.map +1 -1
- package/dist/src/ui/components/messages/ToolResultDisplay.test.js +66 -3
- package/dist/src/ui/components/messages/ToolResultDisplay.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolResultDisplayOverflow.test.js +5 -4
- package/dist/src/ui/components/messages/ToolResultDisplayOverflow.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.js +3 -3
- package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.js.map +1 -1
- package/dist/src/ui/components/messages/TopicMessage.d.ts +15 -0
- package/dist/src/ui/components/messages/TopicMessage.js +56 -0
- package/dist/src/ui/components/messages/TopicMessage.js.map +1 -0
- package/dist/src/ui/components/messages/TopicMessage.test.d.ts +6 -0
- package/dist/src/ui/components/messages/TopicMessage.test.js +77 -0
- package/dist/src/ui/components/messages/TopicMessage.test.js.map +1 -0
- package/dist/src/ui/components/shared/MaxSizedBox.d.ts +1 -0
- package/dist/src/ui/components/shared/MaxSizedBox.js +10 -7
- package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
- package/dist/src/ui/components/shared/Scrollable.d.ts +3 -0
- package/dist/src/ui/components/shared/Scrollable.js +6 -2
- package/dist/src/ui/components/shared/Scrollable.js.map +1 -1
- package/dist/src/ui/components/shared/ScrollableList.d.ts +9 -12
- package/dist/src/ui/components/shared/ScrollableList.js +2 -2
- package/dist/src/ui/components/shared/ScrollableList.js.map +1 -1
- package/dist/src/ui/components/shared/VirtualizedList.d.ts +13 -1
- package/dist/src/ui/components/shared/VirtualizedList.js +148 -37
- package/dist/src/ui/components/shared/VirtualizedList.js.map +1 -1
- package/dist/src/ui/components/shared/VirtualizedList.test.js +1 -10
- package/dist/src/ui/components/shared/VirtualizedList.test.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.d.ts +1 -0
- package/dist/src/ui/components/shared/text-buffer.js +19 -21
- package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
- package/dist/src/ui/components/views/ExtensionDetails.d.ts +4 -1
- package/dist/src/ui/components/views/ExtensionDetails.js +14 -4
- package/dist/src/ui/components/views/ExtensionDetails.js.map +1 -1
- package/dist/src/ui/components/views/ExtensionDetails.test.js +25 -1
- package/dist/src/ui/components/views/ExtensionDetails.test.js.map +1 -1
- package/dist/src/ui/components/views/ExtensionRegistryView.js +19 -5
- package/dist/src/ui/components/views/ExtensionRegistryView.js.map +1 -1
- package/dist/src/ui/components/views/ExtensionRegistryView.test.js +38 -0
- package/dist/src/ui/components/views/ExtensionRegistryView.test.js.map +1 -1
- package/dist/src/ui/components/views/SkillsList.js +2 -1
- package/dist/src/ui/components/views/SkillsList.js.map +1 -1
- package/dist/src/ui/components/views/SkillsList.test.js +3 -1
- package/dist/src/ui/components/views/SkillsList.test.js.map +1 -1
- package/dist/src/ui/constants/tips.js +2 -2
- package/dist/src/ui/constants/tips.js.map +1 -1
- package/dist/src/ui/constants.d.ts +6 -0
- package/dist/src/ui/constants.js +15 -0
- package/dist/src/ui/constants.js.map +1 -1
- package/dist/src/ui/contexts/InputContext.d.ts +17 -0
- package/dist/src/ui/contexts/InputContext.js +15 -0
- package/dist/src/ui/contexts/InputContext.js.map +1 -0
- package/dist/src/ui/contexts/KeypressContext.js +1 -1
- package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.test.js +25 -1
- package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
- package/dist/src/ui/contexts/ScrollProvider.js +25 -3
- package/dist/src/ui/contexts/ScrollProvider.js.map +1 -1
- package/dist/src/ui/contexts/ScrollProvider.test.js +100 -0
- package/dist/src/ui/contexts/ScrollProvider.test.js.map +1 -1
- package/dist/src/ui/contexts/SessionContext.d.ts +2 -2
- package/dist/src/ui/contexts/SessionContext.js.map +1 -1
- package/dist/src/ui/contexts/ToolActionsContext.d.ts +6 -0
- package/dist/src/ui/contexts/ToolActionsContext.js +19 -11
- package/dist/src/ui/contexts/ToolActionsContext.js.map +1 -1
- package/dist/src/ui/contexts/ToolActionsContext.test.js +90 -7
- package/dist/src/ui/contexts/ToolActionsContext.test.js.map +1 -1
- package/dist/src/ui/contexts/UIActionsContext.d.ts +4 -3
- package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
- package/dist/src/ui/contexts/UIStateContext.d.ts +10 -16
- package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
- package/dist/src/ui/hooks/atCommandProcessor.test.js +2 -1
- package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
- package/dist/src/ui/hooks/atCommandProcessor_agents.test.js +2 -1
- package/dist/src/ui/hooks/atCommandProcessor_agents.test.js.map +1 -1
- package/dist/src/ui/hooks/shellReducer.d.ts +12 -10
- package/dist/src/ui/hooks/shellReducer.js +67 -37
- package/dist/src/ui/hooks/shellReducer.js.map +1 -1
- package/dist/src/ui/hooks/shellReducer.test.js +207 -36
- package/dist/src/ui/hooks/shellReducer.test.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.js +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.test.js +1 -1
- package/dist/src/ui/hooks/toolMapping.js +7 -0
- package/dist/src/ui/hooks/toolMapping.js.map +1 -1
- package/dist/src/ui/hooks/useAlternateBuffer.js +6 -1
- package/dist/src/ui/hooks/useAlternateBuffer.js.map +1 -1
- package/dist/src/ui/hooks/useAlternateBuffer.test.js +5 -0
- package/dist/src/ui/hooks/useAlternateBuffer.test.js.map +1 -1
- package/dist/src/ui/hooks/useAnimatedScrollbar.js +2 -2
- package/dist/src/ui/hooks/useAnimatedScrollbar.js.map +1 -1
- package/dist/src/ui/hooks/useAtCompletion.js +1 -1
- package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useBackgroundTaskManager.d.ts +22 -0
- package/dist/src/ui/hooks/useBackgroundTaskManager.js +58 -0
- package/dist/src/ui/hooks/useBackgroundTaskManager.js.map +1 -0
- package/dist/src/ui/hooks/{useBackgroundShellManager.test.js → useBackgroundTaskManager.test.js} +50 -50
- package/dist/src/ui/hooks/useBackgroundTaskManager.test.js.map +1 -0
- package/dist/src/ui/hooks/useBanner.d.ts +1 -0
- package/dist/src/ui/hooks/useBanner.js +16 -9
- package/dist/src/ui/hooks/useBanner.js.map +1 -1
- package/dist/src/ui/hooks/useBanner.test.js +7 -4
- package/dist/src/ui/hooks/useBanner.test.js.map +1 -1
- package/dist/src/ui/hooks/useBatchedScroll.js +2 -2
- package/dist/src/ui/hooks/useBatchedScroll.js.map +1 -1
- package/dist/src/ui/hooks/useCommandCompletion.d.ts +2 -1
- package/dist/src/ui/hooks/useCommandCompletion.js +13 -3
- package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useCommandCompletion.test.d.ts +1 -1
- package/dist/src/ui/hooks/useCommandCompletion.test.js +82 -6
- package/dist/src/ui/hooks/useCommandCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useComposerStatus.d.ts +21 -0
- package/dist/src/ui/hooks/useComposerStatus.js +78 -0
- package/dist/src/ui/hooks/useComposerStatus.js.map +1 -0
- package/dist/src/ui/hooks/useConsoleMessages.test.js +2 -2
- package/dist/src/ui/hooks/useConsoleMessages.test.js.map +1 -1
- package/dist/src/ui/hooks/useExecutionLifecycle.d.ts +28 -0
- package/dist/src/ui/hooks/{shellCommandProcessor.js → useExecutionLifecycle.js} +140 -58
- package/dist/src/ui/hooks/useExecutionLifecycle.js.map +1 -0
- package/dist/src/ui/hooks/useExecutionLifecycle.test.d.ts +6 -0
- package/dist/src/ui/hooks/{shellCommandProcessor.test.js → useExecutionLifecycle.test.js} +123 -81
- package/dist/src/ui/hooks/useExecutionLifecycle.test.js.map +1 -0
- package/dist/src/ui/hooks/useFolderTrust.js +1 -1
- package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
- package/dist/src/ui/hooks/useFolderTrust.test.js +1 -1
- package/dist/src/ui/hooks/useFolderTrust.test.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.d.ts +6 -6
- package/dist/src/ui/hooks/useGeminiStream.js +140 -38
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.test.js +176 -22
- package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
- package/dist/src/ui/hooks/useGitBranchName.js +2 -2
- package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.js +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.test.js +10 -0
- package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
- package/dist/src/ui/hooks/usePermissionsModifyTrust.js +2 -2
- package/dist/src/ui/hooks/usePermissionsModifyTrust.js.map +1 -1
- package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js +1 -1
- package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js.map +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.js +4 -2
- package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
- package/dist/src/ui/hooks/useSessionBrowser.d.ts +1 -1
- package/dist/src/ui/hooks/useSessionBrowser.js +2 -2
- package/dist/src/ui/hooks/useSessionBrowser.js.map +1 -1
- package/dist/src/ui/hooks/useSlashCompletion.d.ts +1 -1
- package/dist/src/ui/hooks/useSlashCompletion.js +37 -63
- package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useSlashCompletion.test.d.ts +1 -1
- package/dist/src/ui/hooks/useSlashCompletion.test.js +57 -47
- package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useToolScheduler.d.ts +2 -1
- package/dist/src/ui/hooks/useToolScheduler.js +55 -1
- package/dist/src/ui/hooks/useToolScheduler.js.map +1 -1
- package/dist/src/ui/hooks/useToolScheduler.test.js +107 -9
- package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
- package/dist/src/ui/key/keyBindings.d.ts +9 -1
- package/dist/src/ui/key/keyBindings.js +40 -3
- package/dist/src/ui/key/keyBindings.js.map +1 -1
- package/dist/src/ui/key/keyMatchers.test.js +12 -2
- package/dist/src/ui/key/keyMatchers.test.js.map +1 -1
- package/dist/src/ui/layouts/DefaultAppLayout.js +8 -6
- package/dist/src/ui/layouts/DefaultAppLayout.js.map +1 -1
- package/dist/src/ui/layouts/DefaultAppLayout.test.js +27 -22
- package/dist/src/ui/layouts/DefaultAppLayout.test.js.map +1 -1
- package/dist/src/ui/noninteractive/nonInteractiveUi.js +1 -1
- package/dist/src/ui/themes/builtin/dark/tokyonight-dark.d.ts +7 -0
- package/dist/src/ui/themes/builtin/dark/tokyonight-dark.js +147 -0
- package/dist/src/ui/themes/builtin/dark/tokyonight-dark.js.map +1 -0
- package/dist/src/ui/themes/theme-manager.js +2 -0
- package/dist/src/ui/themes/theme-manager.js.map +1 -1
- package/dist/src/ui/themes/theme.js +1 -1
- package/dist/src/ui/themes/theme.js.map +1 -1
- package/dist/src/ui/types.d.ts +10 -2
- package/dist/src/ui/types.js.map +1 -1
- package/dist/src/ui/utils/CodeColorizer.d.ts +1 -0
- package/dist/src/ui/utils/CodeColorizer.js +17 -18
- package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
- package/dist/src/ui/utils/ConsolePatcher.d.ts +1 -0
- package/dist/src/ui/utils/ConsolePatcher.js +12 -5
- package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
- package/dist/src/ui/utils/ConsolePatcher.test.d.ts +6 -0
- package/dist/src/ui/utils/ConsolePatcher.test.js +199 -0
- package/dist/src/ui/utils/ConsolePatcher.test.js.map +1 -0
- package/dist/src/ui/utils/TableRenderer.js +3 -3
- package/dist/src/ui/utils/TableRenderer.js.map +1 -1
- package/dist/src/ui/utils/borderStyles.d.ts +2 -2
- package/dist/src/ui/utils/borderStyles.js +2 -2
- package/dist/src/ui/utils/borderStyles.js.map +1 -1
- package/dist/src/ui/utils/directoryUtils.js +1 -1
- package/dist/src/ui/utils/directoryUtils.js.map +1 -1
- package/dist/src/ui/utils/fileUtils.d.ts +10 -0
- package/dist/src/ui/utils/fileUtils.js +17 -0
- package/dist/src/ui/utils/fileUtils.js.map +1 -0
- package/dist/src/ui/utils/terminalCapabilityManager.d.ts +1 -0
- package/dist/src/ui/utils/terminalCapabilityManager.js +8 -0
- package/dist/src/ui/utils/terminalCapabilityManager.js.map +1 -1
- package/dist/src/ui/utils/terminalCapabilityManager.test.js +38 -0
- package/dist/src/ui/utils/terminalCapabilityManager.test.js.map +1 -1
- package/dist/src/ui/utils/toolLayoutUtils.d.ts +1 -1
- package/dist/src/ui/utils/toolLayoutUtils.js +1 -1
- package/dist/src/ui/utils/ui-sizing.test.js +1 -0
- package/dist/src/ui/utils/ui-sizing.test.js.map +1 -1
- package/dist/src/ui/utils/updateCheck.d.ts +1 -0
- package/dist/src/ui/utils/updateCheck.js.map +1 -1
- package/dist/src/utils/activityLogger.js +16 -0
- package/dist/src/utils/activityLogger.js.map +1 -1
- package/dist/src/utils/cleanup.js +12 -5
- package/dist/src/utils/cleanup.js.map +1 -1
- package/dist/src/utils/commands.js +15 -0
- package/dist/src/utils/commands.js.map +1 -1
- package/dist/src/utils/commands.test.js +79 -0
- package/dist/src/utils/commands.test.js.map +1 -1
- package/dist/src/utils/envVarResolver.d.ts +5 -2
- package/dist/src/utils/envVarResolver.js +15 -6
- package/dist/src/utils/envVarResolver.js.map +1 -1
- package/dist/src/utils/envVarResolver.test.js +41 -24
- package/dist/src/utils/envVarResolver.test.js.map +1 -1
- package/dist/src/utils/errors.js +4 -4
- package/dist/src/utils/errors.js.map +1 -1
- package/dist/src/utils/events.d.ts +3 -1
- package/dist/src/utils/events.js +1 -0
- package/dist/src/utils/events.js.map +1 -1
- package/dist/src/utils/gitUtils.js +4 -4
- package/dist/src/utils/gitUtils.js.map +1 -1
- package/dist/src/utils/handleAutoUpdate.js +10 -3
- package/dist/src/utils/handleAutoUpdate.js.map +1 -1
- package/dist/src/utils/handleAutoUpdate.test.js +8 -2
- package/dist/src/utils/handleAutoUpdate.test.js.map +1 -1
- package/dist/src/utils/installationInfo.js +1 -1
- package/dist/src/utils/installationInfo.js.map +1 -1
- package/dist/src/utils/jsonoutput.js +1 -1
- package/dist/src/utils/jsonoutput.js.map +1 -1
- package/dist/src/utils/sandboxUtils.js +1 -1
- package/dist/src/utils/sandboxUtils.js.map +1 -1
- package/dist/src/utils/sessionCleanup.js +7 -30
- package/dist/src/utils/sessionCleanup.js.map +1 -1
- package/dist/src/utils/sessionCleanup.test.js +3 -0
- package/dist/src/utils/sessionCleanup.test.js.map +1 -1
- package/dist/src/utils/sessionUtils.js +1 -0
- package/dist/src/utils/sessionUtils.js.map +1 -1
- package/dist/src/utils/sessionUtils.test.js +179 -3
- package/dist/src/utils/sessionUtils.test.js.map +1 -1
- package/dist/src/utils/sessions.js +1 -1
- package/dist/src/utils/sessions.js.map +1 -1
- package/dist/src/utils/skillUtils.js +3 -1
- package/dist/src/utils/skillUtils.js.map +1 -1
- package/dist/src/utils/skillUtils.test.js +4 -6
- package/dist/src/utils/skillUtils.test.js.map +1 -1
- package/dist/src/utils/terminalNotifications.js +2 -4
- package/dist/src/utils/terminalNotifications.js.map +1 -1
- package/dist/src/utils/terminalNotifications.test.js +5 -3
- package/dist/src/utils/terminalNotifications.test.js.map +1 -1
- package/dist/src/utils/userStartupWarnings.js +2 -2
- package/dist/src/utils/userStartupWarnings.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/dist/src/ui/commands/shellsCommand.js.map +0 -1
- package/dist/src/ui/commands/shellsCommand.test.js +0 -29
- package/dist/src/ui/commands/shellsCommand.test.js.map +0 -1
- package/dist/src/ui/components/BackgroundShellDisplay.d.ts +0 -16
- package/dist/src/ui/components/BackgroundShellDisplay.js.map +0 -1
- package/dist/src/ui/components/BackgroundShellDisplay.test.js.map +0 -1
- package/dist/src/ui/hooks/shellCommandProcessor.d.ts +0 -28
- package/dist/src/ui/hooks/shellCommandProcessor.js.map +0 -1
- package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +0 -1
- package/dist/src/ui/hooks/useBackgroundShellManager.d.ts +0 -22
- package/dist/src/ui/hooks/useBackgroundShellManager.js +0 -58
- package/dist/src/ui/hooks/useBackgroundShellManager.js.map +0 -1
- package/dist/src/ui/hooks/useBackgroundShellManager.test.js.map +0 -1
- /package/dist/src/{ui/commands/shellsCommand.test.d.ts → nonInteractiveCliAgentSession.test.d.ts} +0 -0
- /package/dist/src/ui/{components/BackgroundShellDisplay.test.d.ts → commands/tasksCommand.test.d.ts} +0 -0
- /package/dist/src/ui/{hooks/shellCommandProcessor.test.d.ts → components/BackgroundTaskDisplay.test.d.ts} +0 -0
- /package/dist/src/ui/hooks/{useBackgroundShellManager.test.d.ts → useBackgroundTaskManager.test.d.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TopicMessage.js","sourceRoot":"","sources":["../../../../../src/ui/components/messages/TopicMessage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright 2026 Google LLC
|
|
5
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
6
|
+
*/
|
|
7
|
+
import { describe, it, expect, vi } from 'vitest';
|
|
8
|
+
import { TopicMessage } from './TopicMessage.js';
|
|
9
|
+
import { renderWithProviders } from '../../../test-utils/render.js';
|
|
10
|
+
import { TOPIC_PARAM_TITLE, TOPIC_PARAM_SUMMARY, TOPIC_PARAM_STRATEGIC_INTENT, CoreToolCallStatus, UPDATE_TOPIC_TOOL_NAME, } from '@google/gemini-cli-core';
|
|
11
|
+
describe('<TopicMessage />', () => {
|
|
12
|
+
const baseArgs = {
|
|
13
|
+
[TOPIC_PARAM_TITLE]: 'Test Topic',
|
|
14
|
+
[TOPIC_PARAM_STRATEGIC_INTENT]: 'This is the strategic intent.',
|
|
15
|
+
[TOPIC_PARAM_SUMMARY]: 'This is the detailed summary that should be expandable.',
|
|
16
|
+
};
|
|
17
|
+
const renderTopic = async (args, height, toolActions) => renderWithProviders(_jsx(TopicMessage, { args: args, terminalWidth: 80, availableTerminalHeight: height, callId: "test-topic", name: UPDATE_TOPIC_TOOL_NAME, description: "Updating topic", status: CoreToolCallStatus.Success, confirmationDetails: undefined, resultDisplay: undefined }), { toolActions, mouseEventsEnabled: true });
|
|
18
|
+
it('renders title and intent by default (collapsed)', async () => {
|
|
19
|
+
const { lastFrame } = await renderTopic(baseArgs, 40);
|
|
20
|
+
const frame = lastFrame();
|
|
21
|
+
expect(frame).toContain('Test Topic:');
|
|
22
|
+
expect(frame).toContain('This is the strategic intent.');
|
|
23
|
+
expect(frame).not.toContain('This is the detailed summary');
|
|
24
|
+
expect(frame).not.toContain('(ctrl+o to expand)');
|
|
25
|
+
});
|
|
26
|
+
it('renders summary when globally expanded (Ctrl+O)', async () => {
|
|
27
|
+
const { lastFrame } = await renderTopic(baseArgs, undefined);
|
|
28
|
+
const frame = lastFrame();
|
|
29
|
+
expect(frame).toContain('Test Topic:');
|
|
30
|
+
expect(frame).toContain('This is the strategic intent.');
|
|
31
|
+
expect(frame).toContain('This is the detailed summary');
|
|
32
|
+
expect(frame).not.toContain('(ctrl+o to collapse)');
|
|
33
|
+
});
|
|
34
|
+
it('renders summary when selectively expanded via context', async () => {
|
|
35
|
+
const isExpanded = vi.fn((id) => id === 'test-topic');
|
|
36
|
+
const { lastFrame } = await renderTopic(baseArgs, 40, { isExpanded });
|
|
37
|
+
const frame = lastFrame();
|
|
38
|
+
expect(frame).toContain('Test Topic:');
|
|
39
|
+
expect(frame).toContain('This is the detailed summary');
|
|
40
|
+
expect(frame).not.toContain('(ctrl+o to collapse)');
|
|
41
|
+
});
|
|
42
|
+
it('calls toggleExpansion when clicked', async () => {
|
|
43
|
+
const toggleExpansion = vi.fn();
|
|
44
|
+
const { simulateClick } = await renderTopic(baseArgs, 40, {
|
|
45
|
+
toggleExpansion,
|
|
46
|
+
});
|
|
47
|
+
// In renderWithProviders, the component is wrapped in a Box with terminalWidth.
|
|
48
|
+
// The TopicMessage has marginLeft={2}.
|
|
49
|
+
// So col 5 should definitely hit the text content.
|
|
50
|
+
// row 1 is the first line of the TopicMessage.
|
|
51
|
+
await simulateClick(5, 1);
|
|
52
|
+
expect(toggleExpansion).toHaveBeenCalledWith('test-topic');
|
|
53
|
+
});
|
|
54
|
+
it('falls back to summary if strategic_intent is missing', async () => {
|
|
55
|
+
const args = {
|
|
56
|
+
[TOPIC_PARAM_TITLE]: 'Test Topic',
|
|
57
|
+
[TOPIC_PARAM_SUMMARY]: 'Only summary is present.',
|
|
58
|
+
};
|
|
59
|
+
const { lastFrame } = await renderTopic(args, 40);
|
|
60
|
+
const frame = lastFrame();
|
|
61
|
+
expect(frame).toContain('Test Topic:');
|
|
62
|
+
expect(frame).toContain('Only summary is present.');
|
|
63
|
+
expect(frame).not.toContain('(ctrl+o to expand)');
|
|
64
|
+
});
|
|
65
|
+
it('renders only strategic_intent if summary is missing', async () => {
|
|
66
|
+
const args = {
|
|
67
|
+
[TOPIC_PARAM_TITLE]: 'Test Topic',
|
|
68
|
+
[TOPIC_PARAM_STRATEGIC_INTENT]: 'Only intent is present.',
|
|
69
|
+
};
|
|
70
|
+
const { lastFrame } = await renderTopic(args, 40);
|
|
71
|
+
const frame = lastFrame();
|
|
72
|
+
expect(frame).toContain('Test Topic:');
|
|
73
|
+
expect(frame).toContain('Only intent is present.');
|
|
74
|
+
expect(frame).not.toContain('(ctrl+o to expand)');
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
//# sourceMappingURL=TopicMessage.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TopicMessage.test.js","sourceRoot":"","sources":["../../../../../src/ui/components/messages/TopicMessage.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -16,10 +16,13 @@ export const MINIMUM_MAX_HEIGHT = 2;
|
|
|
16
16
|
* A React component that constrains the size of its children and provides
|
|
17
17
|
* content-aware truncation when the content exceeds the specified `maxHeight`.
|
|
18
18
|
*/
|
|
19
|
-
export const MaxSizedBox = ({ children, maxWidth, maxHeight, overflowDirection = 'top', additionalHiddenLinesCount = 0, }) => {
|
|
19
|
+
export const MaxSizedBox = ({ children, maxWidth, maxHeight, overflowDirection = 'top', additionalHiddenLinesCount = 0, paddingX = 0, }) => {
|
|
20
20
|
const id = useId();
|
|
21
21
|
const { addOverflowingId, removeOverflowingId } = useOverflowActions() || {};
|
|
22
22
|
const observerRef = useRef(null);
|
|
23
|
+
useEffect(() => () => {
|
|
24
|
+
observerRef.current?.disconnect();
|
|
25
|
+
}, []);
|
|
23
26
|
const [contentHeight, setContentHeight] = useState(0);
|
|
24
27
|
const onRefChange = useCallback((node) => {
|
|
25
28
|
if (observerRef.current) {
|
|
@@ -63,14 +66,14 @@ export const MaxSizedBox = ({ children, maxWidth, maxHeight, overflowDirection =
|
|
|
63
66
|
useEffect(() => () => {
|
|
64
67
|
removeOverflowingId?.(id);
|
|
65
68
|
}, [id, removeOverflowingId]);
|
|
66
|
-
if (effectiveMaxHeight === undefined) {
|
|
69
|
+
if (effectiveMaxHeight === undefined && totalHiddenLines === 0) {
|
|
67
70
|
return (_jsx(Box, { flexDirection: "column", width: maxWidth, children: children }));
|
|
68
71
|
}
|
|
69
72
|
const offset = hiddenLinesCount > 0 && overflowDirection === 'top' ? -hiddenLinesCount : 0;
|
|
70
|
-
return (_jsxs(Box, { flexDirection: "column", width: maxWidth, maxHeight: effectiveMaxHeight, flexShrink: 0, children: [totalHiddenLines > 0 && overflowDirection === 'top' && (_jsx(Text, { color: theme.text.secondary, wrap: "truncate", children: isNarrow
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
return (_jsxs(Box, { flexDirection: "column", width: maxWidth, maxHeight: effectiveMaxHeight, flexShrink: 0, children: [totalHiddenLines > 0 && overflowDirection === 'top' && (_jsx(Box, { paddingX: paddingX, children: _jsx(Text, { color: theme.text.secondary, wrap: "truncate", children: isNarrow
|
|
74
|
+
? `... ${totalHiddenLines} hidden (${showMoreKey}) ...`
|
|
75
|
+
: `... first ${totalHiddenLines} line${totalHiddenLines === 1 ? '' : 's'} hidden (${showMoreKey} to show) ...` }) })), _jsx(Box, { flexDirection: "column", overflow: "hidden", flexGrow: 0, maxHeight: isOverflowing ? visibleContentHeight : undefined, children: _jsx(Box, { flexDirection: "column", ref: onRefChange, flexShrink: 0, marginTop: offset, children: children }) }), totalHiddenLines > 0 && overflowDirection === 'bottom' && (_jsx(Box, { paddingX: paddingX, children: _jsx(Text, { color: theme.text.secondary, wrap: "truncate", children: isNarrow
|
|
76
|
+
? `... ${totalHiddenLines} hidden (${showMoreKey}) ...`
|
|
77
|
+
: `... last ${totalHiddenLines} line${totalHiddenLines === 1 ? '' : 's'} hidden (${showMoreKey} to show) ...` }) }))] }));
|
|
75
78
|
};
|
|
76
79
|
//# sourceMappingURL=MaxSizedBox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaxSizedBox.js","sourceRoot":"","sources":["../../../../../src/ui/components/shared/MaxSizedBox.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAmB,MAAM,KAAK,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"MaxSizedBox.js","sourceRoot":"","sources":["../../../../../src/ui/components/shared/MaxSizedBox.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAmB,MAAM,KAAK,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAWpC;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAA+B,CAAC,EACtD,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,iBAAiB,GAAG,KAAK,EACzB,0BAA0B,GAAG,CAAC,EAC9B,QAAQ,GAAG,CAAC,GACb,EAAE,EAAE;IACH,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACnB,MAAM,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,GAAG,kBAAkB,EAAE,IAAI,EAAE,CAAC;IAC7E,MAAM,WAAW,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAExD,SAAS,CACP,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;IACpC,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEtD,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,IAAuB,EAAE,EAAE;QAC1B,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACjC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAC7B,CAAC;QAED,IAAI,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,KAAK,EAAE,CAAC;oBACV,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvB,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;QACjC,CAAC;IACH,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,MAAM,kBAAkB,GACtB,SAAS,KAAK,SAAS;QACrB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;QACrD,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,aAAa,GACjB,CAAC,kBAAkB,KAAK,SAAS,IAAI,aAAa,GAAG,kBAAkB,CAAC;QACxE,0BAA0B,GAAG,CAAC,CAAC;IAEjC,yEAAyE;IACzE,MAAM,oBAAoB,GACxB,aAAa,IAAI,kBAAkB,KAAK,SAAS;QAC/C,CAAC,CAAC,kBAAkB,GAAG,CAAC;QACxB,CAAC,CAAC,kBAAkB,CAAC;IAEzB,MAAM,gBAAgB,GACpB,oBAAoB,KAAK,SAAS;QAChC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,GAAG,oBAAoB,CAAC;QACnD,CAAC,CAAC,CAAC,CAAC;IAER,MAAM,gBAAgB,GAAG,gBAAgB,GAAG,0BAA0B,CAAC;IAEvE,MAAM,QAAQ,GAAG,QAAQ,KAAK,SAAS,IAAI,aAAa,CAAC,QAAQ,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAE3D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;YACzB,gBAAgB,EAAE,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,mBAAmB,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,EAAE,CAAC,EAAE,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAElE,SAAS,CACP,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,mBAAmB,EAAE,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC,EACD,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAC1B,CAAC;IAEF,IAAI,kBAAkB,KAAK,SAAS,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;QAC/D,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,KAAK,EAAE,QAAQ,YACxC,QAAQ,GACL,CACP,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GACV,gBAAgB,GAAG,CAAC,IAAI,iBAAiB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9E,OAAO,CACL,MAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,kBAAkB,EAC7B,UAAU,EAAE,CAAC,aAEZ,gBAAgB,GAAG,CAAC,IAAI,iBAAiB,KAAK,KAAK,IAAI,CACtD,KAAC,GAAG,IAAC,QAAQ,EAAE,QAAQ,YACrB,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAC,UAAU,YAC/C,QAAQ;wBACP,CAAC,CAAC,OAAO,gBAAgB,YAAY,WAAW,OAAO;wBACvD,CAAC,CAAC,aAAa,gBAAgB,QAAQ,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,WAAW,eAAe,GAC3G,GACH,CACP,EACD,KAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,QAAQ,EAAC,QAAQ,EACjB,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,YAE3D,KAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,CAAC,EACb,SAAS,EAAE,MAAM,YAEhB,QAAQ,GACL,GACF,EACL,gBAAgB,GAAG,CAAC,IAAI,iBAAiB,KAAK,QAAQ,IAAI,CACzD,KAAC,GAAG,IAAC,QAAQ,EAAE,QAAQ,YACrB,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAC,UAAU,YAC/C,QAAQ;wBACP,CAAC,CAAC,OAAO,gBAAgB,YAAY,WAAW,OAAO;wBACvD,CAAC,CAAC,YAAY,gBAAgB,QAAQ,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,WAAW,eAAe,GAC1G,GACH,CACP,IACG,CACP,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -14,6 +14,9 @@ interface ScrollableProps {
|
|
|
14
14
|
scrollToBottom?: boolean;
|
|
15
15
|
flexGrow?: number;
|
|
16
16
|
reportOverflow?: boolean;
|
|
17
|
+
overflowToBackbuffer?: boolean;
|
|
18
|
+
scrollbar?: boolean;
|
|
19
|
+
stableScrollback?: boolean;
|
|
17
20
|
}
|
|
18
21
|
export declare const Scrollable: React.FC<ScrollableProps>;
|
|
19
22
|
export {};
|
|
@@ -8,7 +8,7 @@ import { useBatchedScroll } from '../../hooks/useBatchedScroll.js';
|
|
|
8
8
|
import { Command } from '../../key/keyMatchers.js';
|
|
9
9
|
import { useOverflowActions } from '../../contexts/OverflowContext.js';
|
|
10
10
|
import { useKeyMatchers } from '../../hooks/useKeyMatchers.js';
|
|
11
|
-
export const Scrollable = ({ children, width, height, maxWidth, maxHeight, hasFocus, scrollToBottom, flexGrow, reportOverflow = false, }) => {
|
|
11
|
+
export const Scrollable = ({ children, width, height, maxWidth, maxHeight, hasFocus, scrollToBottom, flexGrow, reportOverflow = false, overflowToBackbuffer, scrollbar = true, stableScrollback, }) => {
|
|
12
12
|
const keyMatchers = useKeyMatchers();
|
|
13
13
|
const [scrollTop, setScrollTop] = useState(0);
|
|
14
14
|
const viewportRef = useRef(null);
|
|
@@ -46,6 +46,10 @@ export const Scrollable = ({ children, width, height, maxWidth, maxHeight, hasFo
|
|
|
46
46
|
}, [id, overflowActions]);
|
|
47
47
|
const viewportObserverRef = useRef(null);
|
|
48
48
|
const contentObserverRef = useRef(null);
|
|
49
|
+
useEffect(() => () => {
|
|
50
|
+
viewportObserverRef.current?.disconnect();
|
|
51
|
+
contentObserverRef.current?.disconnect();
|
|
52
|
+
}, []);
|
|
49
53
|
const viewportRefCallback = useCallback((node) => {
|
|
50
54
|
viewportObserverRef.current?.disconnect();
|
|
51
55
|
viewportRef.current = node;
|
|
@@ -156,6 +160,6 @@ export const Scrollable = ({ children, width, height, maxWidth, maxHeight, hasFo
|
|
|
156
160
|
flashScrollbar,
|
|
157
161
|
}), [getScrollState, scrollByWithAnimation, hasFocusCallback, flashScrollbar]);
|
|
158
162
|
useScrollable(scrollableEntry, true);
|
|
159
|
-
return (_jsx(Box, { ref: viewportRefCallback, maxHeight: maxHeight, width: width ?? maxWidth, height: height, flexDirection: "column", overflowY: "scroll", overflowX: "hidden", scrollTop: scrollTop, flexGrow: flexGrow, scrollbarThumbColor: scrollbarColor, children: _jsx(Box, { ref: contentRefCallback, flexShrink: 0, paddingRight: 1, flexDirection: "column", children: children }) }));
|
|
163
|
+
return (_jsx(Box, { ref: viewportRefCallback, maxHeight: maxHeight, width: width ?? maxWidth, height: height, flexDirection: "column", overflowY: "scroll", overflowX: "hidden", scrollTop: scrollTop, flexGrow: flexGrow, scrollbarThumbColor: scrollbarColor, overflowToBackbuffer: overflowToBackbuffer, scrollbar: scrollbar, stableScrollback: stableScrollback, children: _jsx(Box, { ref: contentRefCallback, flexShrink: 0, paddingRight: 1, flexDirection: "column", children: children }) }));
|
|
160
164
|
};
|
|
161
165
|
//# sourceMappingURL=Scrollable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scrollable.js","sourceRoot":"","sources":["../../../../../src/ui/components/shared/Scrollable.tsx"],"names":[],"mappings":";AAOA,OAAO,EACL,QAAQ,EACR,MAAM,EACN,WAAW,EACX,OAAO,EACP,eAAe,EACf,SAAS,EACT,KAAK,GACN,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,GAAG,EAAE,cAAc,EAAmB,MAAM,KAAK,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAY,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"Scrollable.js","sourceRoot":"","sources":["../../../../../src/ui/components/shared/Scrollable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,21 +4,18 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import type React from 'react';
|
|
7
|
-
import { type VirtualizedListRef } from './VirtualizedList.js';
|
|
8
|
-
type VirtualizedListProps<T> = {
|
|
9
|
-
data: T[];
|
|
10
|
-
renderItem: (info: {
|
|
11
|
-
item: T;
|
|
12
|
-
index: number;
|
|
13
|
-
}) => React.ReactElement;
|
|
14
|
-
estimatedItemHeight: (index: number) => number;
|
|
15
|
-
keyExtractor: (item: T, index: number) => string;
|
|
16
|
-
initialScrollIndex?: number;
|
|
17
|
-
initialScrollOffsetInIndex?: number;
|
|
18
|
-
};
|
|
7
|
+
import { type VirtualizedListRef, type VirtualizedListProps } from './VirtualizedList.js';
|
|
19
8
|
interface ScrollableListProps<T> extends VirtualizedListProps<T> {
|
|
20
9
|
hasFocus: boolean;
|
|
21
10
|
width?: string | number;
|
|
11
|
+
scrollbar?: boolean;
|
|
12
|
+
stableScrollback?: boolean;
|
|
13
|
+
copyModeEnabled?: boolean;
|
|
14
|
+
isStatic?: boolean;
|
|
15
|
+
fixedItemHeight?: boolean;
|
|
16
|
+
targetScrollIndex?: number;
|
|
17
|
+
containerHeight?: number;
|
|
18
|
+
scrollbarThumbColor?: string;
|
|
22
19
|
}
|
|
23
20
|
export type ScrollableListRef<T> = VirtualizedListRef<T>;
|
|
24
21
|
declare const ScrollableListWithForwardRef: <T>(props: ScrollableListProps<T> & {
|
|
@@ -15,7 +15,7 @@ import { useKeyMatchers } from '../../hooks/useKeyMatchers.js';
|
|
|
15
15
|
const ANIMATION_FRAME_DURATION_MS = 33;
|
|
16
16
|
function ScrollableList(props, ref) {
|
|
17
17
|
const keyMatchers = useKeyMatchers();
|
|
18
|
-
const { hasFocus, width } = props;
|
|
18
|
+
const { hasFocus, width, scrollbar = true, stableScrollback } = props;
|
|
19
19
|
const virtualizedListRef = useRef(null);
|
|
20
20
|
const containerRef = useRef(null);
|
|
21
21
|
useImperativeHandle(ref, () => ({
|
|
@@ -159,7 +159,7 @@ function ScrollableList(props, ref) {
|
|
|
159
159
|
smoothScrollTo,
|
|
160
160
|
]);
|
|
161
161
|
useScrollable(scrollableEntry, true);
|
|
162
|
-
return (_jsx(Box, { ref: containerRef, flexGrow: 1, flexDirection: "column",
|
|
162
|
+
return (_jsx(Box, { ref: containerRef, flexGrow: 1, flexDirection: "column", width: width, children: _jsx(VirtualizedList, { ref: virtualizedListRef, ...props, scrollbar: scrollbar, scrollbarThumbColor: scrollbarColor, stableScrollback: stableScrollback }) }));
|
|
163
163
|
}
|
|
164
164
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
165
165
|
const ScrollableListWithForwardRef = forwardRef(ScrollableList);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollableList.js","sourceRoot":"","sources":["../../../../../src/ui/components/shared/ScrollableList.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EACL,MAAM,EACN,UAAU,EACV,mBAAmB,EACnB,WAAW,EACX,OAAO,EACP,eAAe,GAChB,MAAM,OAAO,CAAC;AAEf,OAAO,EACL,eAAe,
|
|
1
|
+
{"version":3,"file":"ScrollableList.js","sourceRoot":"","sources":["../../../../../src/ui/components/shared/ScrollableList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type React from 'react';
|
|
7
7
|
export declare const SCROLL_TO_ITEM_END: number;
|
|
8
|
-
type VirtualizedListProps<T> = {
|
|
8
|
+
export type VirtualizedListProps<T> = {
|
|
9
9
|
data: T[];
|
|
10
10
|
renderItem: (info: {
|
|
11
11
|
item: T;
|
|
@@ -15,7 +15,19 @@ type VirtualizedListProps<T> = {
|
|
|
15
15
|
keyExtractor: (item: T, index: number) => string;
|
|
16
16
|
initialScrollIndex?: number;
|
|
17
17
|
initialScrollOffsetInIndex?: number;
|
|
18
|
+
targetScrollIndex?: number;
|
|
19
|
+
backgroundColor?: string;
|
|
18
20
|
scrollbarThumbColor?: string;
|
|
21
|
+
renderStatic?: boolean;
|
|
22
|
+
isStatic?: boolean;
|
|
23
|
+
isStaticItem?: (item: T, index: number) => boolean;
|
|
24
|
+
width?: number | string;
|
|
25
|
+
overflowToBackbuffer?: boolean;
|
|
26
|
+
scrollbar?: boolean;
|
|
27
|
+
stableScrollback?: boolean;
|
|
28
|
+
copyModeEnabled?: boolean;
|
|
29
|
+
fixedItemHeight?: boolean;
|
|
30
|
+
containerHeight?: number;
|
|
19
31
|
};
|
|
20
32
|
export type VirtualizedListRef<T> = {
|
|
21
33
|
scrollBy: (delta: number) => void;
|