- Added marginRight of 10px to the container holding the ActionIcon in MessageHeader.
- Also applied marginRight of 10px to the ActionIcon itself for consistent spacing.
- Moved store.ts and hooks.ts from views to reducers folder.
- Updated import paths for store in index.tsx and hooks.ts.
- Adjusted import paths for store in chatSlice.ts and inputSlice.ts.
- Improved code formatting in chatSlice.ts.
- Moved Icons.tsx from views to components/ChatIcons folder.
- Updated import path for Icons in InputMessage/index.tsx.
- Moved avatar_devchat.svg, avatar_spaceman.png, and avatar_user.svg from views to components/MessageHeader folder.
- Updated import paths for avatar images in MessageHeader/index.tsx.
- Moved chatSlice and inputSlice from views to reducers folder.
- Updated import paths for chatSlice and inputSlice in various files.
- Adjusted import paths for chatSlice and inputSlice in store.ts.
- Moved InputMessage and InputContexts from views to components folder.
- Updated import paths for InputMessage in ChatPanel.tsx.
- Adjusted import paths for inputSlice and chatSlice in InputMessage and InputContexts.
- Improved code formatting in InputMessage.tsx.
- Moved CodeBlock and CodeButtons from views to components folder.
- Updated import paths for CodeBlock in CurrentMessage.tsx and MessageContainer.tsx.
- Adjusted import path for CodeButtons in CodeBlock.
- Moved StopButton and RegenerationButton from views to components folder.
- Updated import paths for StopButton and RegenerationButton in ChatPanel.tsx.
- Adjusted import paths for chatSlice in StopButton and RegenerationButton.
- Improved code formatting in ChatPanel.tsx.
- Renamed and split the API key settings in package.json into DevChat and OpenAI specific keys.
- Updated the commands for setting API keys to handle OpenAI and DevChat keys separately.
- Modified the ApiKeyManager to handle and validate OpenAI and DevChat keys separately.
- Updated the status bar view to use the DevChat access key command.
- Adjusted the tests to reflect the new handling of API keys.
- Modified the API key validation logic to check for non-empty strings before validating.
- Updated the API key prefix from 'sk.' to 'sk-' in the ApiKeyManager and corresponding tests.
- Adjusted the test cases to reflect the new API key format.
- Improved error handling and validation in symbol definition and reference retrieval functions.
- Enhanced the logic for finding the smallest symbol definition that contains the target range.
- Updated the function descriptions to provide more detailed information about their purpose, input, output, and error handling.
- Added 'ref_line' to the output of the symbol reference retrieval function.
- Added a new array `tempFiles` to store the names of temporary files created during the execution of the `sendMessage` function.
- When a new temporary file is created, its name is added to the `tempFiles` array.
- After the message is sent, the function iterates over the `tempFiles` array and deletes each file.
- This ensures that only the temporary files created during the execution of the function are deleted.
- Added createTempFile and deleteTempFiles functions in sendMessage.ts.
- Modified sendMessage function to handle contextInfo field in the message.
- If the file name is not present in the context, a temporary file is created.
- The file name is inserted into the text field of the message.
- All temporary files created are deleted after the message is sent.
- Modified handleSendClick function in InputMessage.tsx to process and send the message to the extension.
- Modified startGenerating reducer in chatSlice.ts to send the message with contextInfo.
- Imported tempfile module to create a temporary file.
- Replaced the creation of 'test.txt' in the current directory with a temporary file.
- The temporary file is automatically deleted when it is closed, eliminating the need for manual deletion.
- Changed the type hinting for the 'pipcmd' parameter in 'pip_cmd_run' and 'pip_cmd_with_retries' functions.
- The 'pipcmd' parameter now accepts any type, not just list of strings.
- Removed unnecessary if-else condition for errorInstall.
- Moved devchatCommandEnv extraction outside the if-else block.
- Added condition to check if devchatCommandEnv exists before updating configuration and setting devchatStatus.
- Added else block to handle case when devchatCommandEnv is undefined.
- Added a function to check if the symbol at a given index is the correct symbol.
- Adjusted the getSymbolPosition function to use the new check function.
- Enhanced the findSymbolInWorkspace function to handle more edge cases.
- Added more logging for better debugging and traceability.
- Split the SelectContextAction into two separate actions: SelectTextAction and SelectBlockAction.
- Updated the ActionManager to register these new actions.
- SelectTextAction retrieves the selected text in the active document.
- SelectBlockAction retrieves the entire block of code in the active document, such as a function, when a part of it is selected.
- Added CurrentDocumentAction and SelectContextAction to ActionManager.
- Created new files for CurrentDocumentAction and SelectContextAction.
- CurrentDocumentAction retrieves the current active document.
- SelectContextAction retrieves the selected information in the current document.
- Added new imports and removed unused ones in both classes.
- Refactored findSymbolInWorkspace function in SymbolDefAction to include symbol line and file.
- Added checks for absolute path for symbol file in handlerAction method of SymbolDefAction.
- Updated args in SymbolDefAction constructor to include line and file.
- Made getSymbolPosition function in SymbolRefAction exportable and updated its usage in SymbolDefAction.
- Minor changes in SymbolRefAction to improve code readability and efficiency.
- Added null checks before processing reference locations and symbols.
- Ensured that symbol children are processed only if they exist.
- Added a check to continue the loop if a symbol is not found.
- Removed unused import 'selectResponsed' from chatSlice.
- Replaced 'selecHasDone' with 'selectResponsed' for better clarity.
- Removed unnecessary condition check for 'hasDone' in useEffect.
- Added 'responsed' as a dependency in useEffect to trigger update when response is received.
- Added a check to ensure the messageHash equals the firstMessageHash before updating.
- This prevents unnecessary updates and ensures the correct message is targeted for deletion.
- Extracted RegenerationButton and StopButton components from ChatPanel into separate files.
- Removed unused imports and state from ChatPanel.
- Updated ChatPanel to use the new button components.