diff --git a/VS Code/src/extension.ts b/VS Code/src/extension.ts index e124d27..536f789 100644 --- a/VS Code/src/extension.ts +++ b/VS Code/src/extension.ts @@ -301,10 +301,10 @@ export class CodeMindMapPanel { case 'saveMindMap': const saveUri = await vscode.window.showSaveDialog({ filters: { - 'Text files': ['txt'] + 'JSON files': ['json'] }, title: 'Save Mind Map As', - defaultUri: CodeMindMapPanel._lastSavePath || vscode.Uri.file('CodeMindMap.txt') + defaultUri: CodeMindMapPanel._lastSavePath || vscode.Uri.file('CodeMindMap.json') }); if (saveUri) { @@ -337,11 +337,11 @@ export class CodeMindMapPanel { case 'loadMindMap': const openUri = await vscode.window.showOpenDialog({ filters: { - 'Text files': ['txt'] + 'Mind Map files': ['json', 'txt'] }, title: 'Load Mind Map', canSelectMany: false, - defaultUri: CodeMindMapPanel._lastSavePath || vscode.Uri.file('CodeMindMap.txt') + defaultUri: CodeMindMapPanel._lastSavePath || vscode.Uri.file('CodeMindMap.json') }); if (openUri && openUri[0]) { @@ -1040,7 +1040,7 @@ export class CodeMindMapPanel { window.exportData = function() { if (!mind) return { success: false, error: 'Mind map not initialized' }; try { - return mind.getDataString(); + return JSON.stringify(JSON.parse(mind.getDataString()), null, 2); } catch (e) { console.error('Error exporting data:', e); return { success: false, error: e.message }; diff --git a/VS Code/webpack.dev.config.js b/VS Code/webpack.dev.config.js index da1340d..ac16790 100644 --- a/VS Code/webpack.dev.config.js +++ b/VS Code/webpack.dev.config.js @@ -1,4 +1,5 @@ const path = require('path'); +const CopyWebpackPlugin = require('copy-webpack-plugin'); module.exports = { mode: 'development', @@ -35,5 +36,15 @@ module.exports = { devtool: 'source-map', optimization: { minimize: false // Keep readable for debugging - } + }, + plugins: [ + new CopyWebpackPlugin({ + patterns: [ + { + from: 'MindElixir/MindElixir.js', + to: 'MindElixir/MindElixir.js' + } + ] + }) + ] }; diff --git a/Visual Studio/CodeMindMap/CodeMindMapHtml.cs b/Visual Studio/CodeMindMap/CodeMindMapHtml.cs index d87b75a..337fbd8 100644 --- a/Visual Studio/CodeMindMap/CodeMindMapHtml.cs +++ b/Visual Studio/CodeMindMap/CodeMindMapHtml.cs @@ -307,7 +307,7 @@ function initMindMap() { window.exportData = function() { if (!mind) return { success: false, error: ""Mind map not initialized"" }; try { - return mind.getDataString(); + return JSON.stringify(JSON.parse(mind.getDataString()), null, 2); } catch (e) { console.error(""Error exporting data:"", e); return { success: false, error: e.message }; diff --git a/Visual Studio/CodeMindMap/MindMapToolWindowControl.xaml.cs b/Visual Studio/CodeMindMap/MindMapToolWindowControl.xaml.cs index 85df098..114860b 100644 --- a/Visual Studio/CodeMindMap/MindMapToolWindowControl.xaml.cs +++ b/Visual Studio/CodeMindMap/MindMapToolWindowControl.xaml.cs @@ -744,8 +744,8 @@ private async void SaveDataClick(object sender, RoutedEventArgs eventArgs) Microsoft.Win32.SaveFileDialog dialog = new Microsoft.Win32.SaveFileDialog { FileName = SolutionMindMapData.DefaultDataFileName, - DefaultExt = ".txt", - Filter = "Text documents (.txt)|*.txt", + DefaultExt = ".json", + Filter = "JSON files (.json)|*.json", InitialDirectory = InitialFileDialogDir, Title = SaveDataButton.ToolTip.ToString() }; @@ -828,8 +828,8 @@ private async void LoadDataClick(object sender, RoutedEventArgs eventArgs) var dialog = new Microsoft.Win32.OpenFileDialog { FileName = SolutionMindMapData.DefaultDataFileName, - DefaultExt = ".txt", - Filter = "Text documents (.txt)|*.txt", + DefaultExt = ".json", + Filter = "Mind Map files (.json, .txt)|*.json;*.txt", InitialDirectory = InitialFileDialogDir, Title = LoadDataButton.ToolTip.ToString() }; diff --git a/Visual Studio/CodeMindMap/SolutionMindMapData.cs b/Visual Studio/CodeMindMap/SolutionMindMapData.cs index 99caf1b..05350b2 100644 --- a/Visual Studio/CodeMindMap/SolutionMindMapData.cs +++ b/Visual Studio/CodeMindMap/SolutionMindMapData.cs @@ -34,7 +34,7 @@ public SolutionMindMapData(string id, string solutionFilePath, string appDataFol } } - public const string DefaultDataFileName = "CodeMindMap.txt"; + public const string DefaultDataFileName = "CodeMindMap.json"; public string Id { get; set; } public string SolutionFilePath { get; set; }