- Update the command to check Conda version to use 'conda' instead of 'conda2'
- Modify the command to install Conda to properly handle paths and arguments
- Add error handling when deleting the existing Conda installation directory
- Update the downloadFile function to resolve with an empty string if the downloaded file is empty or incomplete
- Added a case for "#settings" in MessageMarkdown component to handle settings command.
- Included "#settings" in the list of custom anchors.
- Replaced the settings button in ChatStore with a link to settings.
- In app_install.ts, modified the for loop to iterate 4 times instead of 3.
- Added a new parameter 'otherSource' to the installPackage function in package_install.ts.
- If 'otherSource' is provided, it is used as the source for package installation.
- Added logging for the command executed in installPackage function.
- Wrapped the contextMenusNode and commandMenusNode with ScrollArea.Autosize for better UX.
- Set the maximum height of the ScrollArea to 240 and scroll type to 'always'.
- This change ensures that the menus are scrollable and do not exceed a certain height.
- Reduced the minimum width of the chat panel from 310 to 300 for better layout.
- Adjusted the width of the chat panel to match the chatPanelWidth variable, improving consistency.
- Added a new chipStyle object to define custom styles for Chip components.
- Applied the new chipStyle to the Chip components used for selecting the chat model.
- The new style improves the visual consistency with the rest of the VSCode UI.
- Removed the interval that was set to fetch settings every 3 seconds in ChatPanel.tsx.
- This interval was unnecessary and has been removed to improve performance.
- Also, cleaned up the useEffect hook by removing the interval start and stop calls.
- Imported Chip from '@mantine/core' for better UI representation.
- Adjusted minimum width and bottom position of the chat panel for better layout.
- Replaced Radio.Group with Chip.Group for selecting chat model, improving user interaction.
- Removed unnecessary Flex container wrapping the chat model selection.
- Refactored InputContexts component to use Drawer for better UX.
- Added an Indicator to show the number of contexts in the InputMessage component.
- Added an ActionIcon to open the Drawer containing the contexts.
- Removed unused imports from InputMessage and ChatPanel components.
- Adjusted the zIndex of the 'scroll to bottom' ActionIcon in ChatPanel.
- Simplified the Accordion.Panel in InputContexts by removing unnecessary ScrollArea.
- Adjusted the styling of the pre tag in InputContexts for better readability.
- Updated the response text trimming logic in getUndefinedSymbols function in contextRefDefs.ts.
- Now the function correctly extracts the JSON content from the response text.
- Removed the interval that was set to fetch settings every 3 seconds in ChatPanel.tsx.
- This interval was unnecessary and has been removed to improve performance.
- Also, cleaned up the useEffect hook by removing the interval start and stop calls.
- Added explanations for the /code, /commit_message, and /release_note commands in MessageMarkdown/index.tsx.
- Updated the helpMessage function in ChatStore.ts to include the explanations for the new commands.
- Updated the list of available commands in ChatStore.ts to reflect the changes.
- Imported 'useTimeout' hook from '@mantine/hooks' in InputMessage/index.tsx.
- Added a setTimeout function in the handleSendMessage function in InputMessage/index.tsx to scroll to the bottom after clearing the input field.
- Imported 'RootStore' from './RootStore' in ChatStore.ts.
- Added a new property 'rootStore' of type 'RootStore' in ChatStore.ts.
- Created a new action 'setRootStore' in ChatStore.ts to set the value of 'rootStore'.
- Updated the 'RootStore' definition in RootStore.ts to include 'ChatStore' as a property.
- Called 'chat.setRootStore(rootStore)' in RootStore.ts to pass the rootStore instance to ChatStore.
- Registered a new handler for 'featureToggles' messages in ChatPanel.tsx to update the features based on the received value.
- Added a new property 'features' of type 'object' in ChatStore.ts to store the feature toggles.
- Updated the 'helpMessage' function in ChatStore.ts to conditionally include the '/ask-code' workflow based on the 'ask-code' feature toggle.
- Added a version check for the devchat-ask package in commands.ts.
- Updated appInstall function in app_install.ts to accept package version.
- Modified installAskCode function in install_askcode.ts to pass package version to appInstall.
- Updated installDevchat function in install_devchat.ts to pass empty string as package version to appInstall.
- Added a new utility function getPackageVersion in pip_package_version.ts to get the installed version of a package.
- Added feature toggles for beta commands in the package.json file.
- Implemented dynamic registration of commands based on feature toggles.
- Added error messages for users trying to access beta commands without the correct permissions.
- Updated the version of the devchat-ask package based on the feature toggles.
- Created a new featureToggle handler to manage feature toggles.
- Imported useInterval hook from '@mantine/hooks' in ChatPanel.tsx.
- Added a new function getSettings() in ChatPanel.tsx to fetch chat settings.
- Created a useInterval hook in ChatPanel.tsx to periodically call getSettings().
- Called getSettings() in the useEffect hook to fetch initial chat settings.
- Started and cleared the timer and interval in the useEffect hook to ensure they are properly managed on component mount and unmount.
- Registered a new handler for 'getSetting' messages in ChatPanel.tsx to update the chat model based on the received value.
- Updated the changeChatModel action in ChatStore.ts to remove the messageUtil.sendMessage call.
- Imported MessageHandler in updateConfig.ts.
- Updated getSetting function to send the fetched configuration value using MessageHandler.
- Registered an outgoing message for 'getSetting' command.
- Added getSetting function in updateConfig.ts to fetch configuration values.
- Registered getSetting in loadHandlers.ts.
- Updated the import statement in loadHandlers.ts to include getSetting.
- Imported additional components in ChatPanel.tsx for the chat model selection.
- Adjusted padding and height in ChatPanel.tsx to accommodate the new chat model selection.
- Added a radio group in ChatPanel.tsx for selecting the chat model.
- Added a new property 'chatModel' to the ChatStore model in ChatStore.ts.
- Added a new action 'changeChatModel' in ChatStore.ts to update the chat model.
- Imported additional components and icons in ChatPanel.tsx.
- Added a conditional button to the error message in ChatPanel.tsx that appears when the error message contains 'Insufficient balance'. This button directs the user to the official website to recharge.
- Added a new property 'rechargeSite' to the ChatStore model in ChatStore.ts.
- Imported updateSetting from './updateConfig' in loadHandlers.ts.
- Registered updateSetting in messageHandler.
- Created a new file updateConfig.ts to handle the updateSetting function.
- The updateSetting function updates the configuration based on the provided keys and value.
- Renamed 'width' prop to 'chatPanelWidth' in InputMessage component for clarity.
- Passed 'chatPanelWidth' prop to MessageList component to set its width.
- Added condition to wrap long lines in 'markdown' or 'text' language blocks in MessageMarkdown component.
- Applied 'breakStyles' to inline code blocks in MessageMarkdown component.
- Passed 'chatPanelWidth' to InputMessage component in ChatPanel page.
- Replaced 'Container' components with 'Box' in MessageList/index.tsx and ChatPanel.tsx for better layout control.
- Removed unnecessary 'width' prop from MessageList component and its usage in ChatPanel.tsx.
- Simplified the structure of MessageList by removing the 'props' parameter and its related code.
- Adjusted the layout of the 'Box' component in MessageList/index.tsx to accommodate the removal of the 'width' prop.
- Added a new 'help' command to the command menu in InputStore.ts.
- Modified the behavior of the 'Enter' and 'Tab' keys in InputMessage/index.tsx to display a help message when the 'help' command is selected.
- Refactored ChatStore.ts to include a new 'helpMessage' function that displays a help message.
- Removed redundant code in ChatStore.ts and reorganized the remaining code for better readability.
- Added buttons for setting OpenAI and DevChat keys in apiKeyMissedMessage function in historyMessagesBase.ts.
- Updated handleButton function in MessageMarkdown component to handle the new buttons' actions.
- Cleaned up formatting and removed unused code in historyMessagesBase.ts.
- Added observer from 'mobx-react-lite' and useMst from '@/views/stores/RootStore' to MessageMarkdown.
- Imported Message from '@/views/stores/ChatStore' and messageUtil from '@/util/MessageUtil' to MessageMarkdown.
- Added handleExplain and handleButton functions to MessageMarkdown to handle button clicks and anchor clicks.
- Updated button and anchor components in MessageMarkdown to use the new handleButton and handleExplain functions.
- Added useEffect hook in ChatPanel to handle scroll to bottom when chat.scrollBottom changes.
- Added scrollBottom property and goScrollBottom action to ChatStore.
- Extracted Markdown rendering logic from MessageBody into a new MessageMarkdown component.
- Moved CodeButtons component into the new MessageMarkdown directory.
- Updated MessageBody to use the new MessageMarkdown component.
- Added value attributes to buttons in the initial bot message in ChatStore.
- Corrected indentation in package.json for DevChat.PythonVirtualEnv.
- Added 'rehype-raw' to dependencies in package.json.
- Imported 'rehype-raw' in MessageBody component and added it to ReactMarkdown as a rehypePlugin.
- Enhanced initial bot message in ChatStore with additional information and buttons.
- Removed useEffect hook in MessageList that was adding initial messages.
- Added logic in ChatStore to add initial messages when messages length is 0.
- Refactored CurrentMessage component to destructure properties from chat.
- Added useEffect hooks to handle message generation and updating in CurrentMessage.
- Updated MessageList to use useEffect to add initial messages to chat.
- Removed unused 'key' prop from MessageAvatar component.
- Converted MessageBody component to use observer from mobx-react-lite.
- Added 'messageText' and 'messageType' to MessageBody props interface.
- Removed extra line breaks in MessageBody component.
- Expanded MessageAvatar props to include avatarType, copyMessage, messageContexts, and deleteHash.
- Updated MessageAvatar to use new props instead of item prop.
- Updated MessageList to pass new props to MessageAvatar.
- Refactored deleteMessage function in ChatStore to accept messageHash instead of item.
- Updated setContexts function in InputStore to accept IChatContext array.
- Renamed CodeBlock component to MessageBody for better clarity.
- Updated all references of CodeBlock to MessageBody in the codebase.
- Moved CodeBlock related files to MessageBody directory.