diff --git a/FormDesigner/frmMain.cs b/FormDesigner/frmMain.cs index e474097..7aedb2a 100644 --- a/FormDesigner/frmMain.cs +++ b/FormDesigner/frmMain.cs @@ -47,6 +47,16 @@ public frmMain(ILanguage language, string designerFile, string codeFile, EventGe try { Initialize(eventGenerationType); + + if (!File.Exists(designerFile)) + { + File.WriteAllText(designerFile, string.Empty); + } + + if (!File.Exists(codeFile)) + { + File.WriteAllText(codeFile, string.Empty); + } } catch (Exception ex) { diff --git a/HostInjection/PoshToolsServer.cs b/HostInjection/PoshToolsServer.cs index a56a3da..ad8f366 100644 --- a/HostInjection/PoshToolsServer.cs +++ b/HostInjection/PoshToolsServer.cs @@ -226,24 +226,12 @@ public void OpenPsScriptPad(string fileName) public void ShowWinFormDesigner(string designerFileName, string codeFileName) { var assemblyBasePath = Path.GetDirectoryName(GetType().Assembly.Location); - var designer = Path.Combine(assemblyBasePath, "..", "PowerShellProTools", "FormDesigner", "PSScriptPad.exe"); - - var process = new Process(); - process.StartInfo = new ProcessStartInfo(); - process.StartInfo.FileName = designer; - process.StartInfo.Arguments = $"-c=\"{codeFileName}\" -d=\"{designerFileName}\""; - process.Start(); - } - - public void ShowWpfFormDesigner(string codeFileName) - { - var assemblyBasePath = Path.GetDirectoryName(GetType().Assembly.Location); - var designer = Path.Combine(assemblyBasePath, "..", "PowerShellProTools", "FormDesigner", "PSScriptPad.exe"); + var designer = Path.Combine(assemblyBasePath, "..", "PowerShellProTools", "FormDesigner", "WinFormDesigner.exe"); var process = new Process(); process.StartInfo = new ProcessStartInfo(); process.StartInfo.FileName = designer; - process.StartInfo.Arguments = $"-c=\"{codeFileName}\""; + process.StartInfo.Arguments = $"-c \"{codeFileName}\" -d \"{designerFileName}\""; process.Start(); } diff --git a/PowerShellToolsPro.Cmdlets/PowerShellProTools.psd1 b/PowerShellToolsPro.Cmdlets/PowerShellProTools.psd1 index 2395279..33fc5c2 100644 --- a/PowerShellToolsPro.Cmdlets/PowerShellProTools.psd1 +++ b/PowerShellToolsPro.Cmdlets/PowerShellProTools.psd1 @@ -3,7 +3,7 @@ # # Generated by: Ironman Software, LLC # -# Generated on: 7/2/2024 +# Generated on: 7/3/2024 # @{ @@ -18,7 +18,7 @@ ModuleVersion = '2024.3.0' # CompatiblePSEditions = @() # ID used to uniquely identify this module -GUID = '47c09e3f-5e87-4d71-aea0-1a0e95f2ccbc' +GUID = 'a1c11aea-84ef-4f8f-a278-0b828fbf1851' # Author of this module Author = 'Ironman Software, LLC' diff --git a/PowerShellToolsPro.Cmdlets/build.ps1 b/PowerShellToolsPro.Cmdlets/build.ps1 index fb5c140..b1c8dc3 100644 --- a/PowerShellToolsPro.Cmdlets/build.ps1 +++ b/PowerShellToolsPro.Cmdlets/build.ps1 @@ -21,11 +21,11 @@ New-Item -ItemType directory $FormDesigner Copy-Item -Path (Join-Path $PSScriptRoot 'PowerShellProTools.psm1') -Destination $OutputDirectory -$PSScriptPad = (Join-Path $PSScriptRoot '..\FormDesigner.Host\bin\x64\Release\PSScriptPad.exe') -if (-not (Test-Path $PSScriptPad)) { - $PSScriptPad = (Join-Path $PSScriptRoot '..\FormDesigner.Host\bin\Release\PSScriptPad.exe') +$WinFormDesigner = (Join-Path $PSScriptRoot '..\WinFormDesigner\bin\x64\Release\WinFormDesigner.exe') +if (-not (Test-Path $WinFormDesigner)) { + $WinFormDesigner = (Join-Path $PSScriptRoot '..\WinFormDesigner\bin\Release\WinFormDesigner.exe') } -Copy-Item -Path $PSScriptPad -Destination $FormDesigner +Copy-Item -Path $WinFormDesigner -Destination $FormDesigner if ($ENV:APPVEYOR) { Copy-Item -Path (Join-Path $PSScriptRoot "bin\Any CPU\$Configuration\netstandard2.0\publish\*") -Destination $OutputDirectory -Recurse diff --git a/WinFormDesigner/FodyWeavers.xml b/WinFormDesigner/FodyWeavers.xml new file mode 100644 index 0000000..c9f4903 --- /dev/null +++ b/WinFormDesigner/FodyWeavers.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/WinFormDesigner/FodyWeavers.xsd b/WinFormDesigner/FodyWeavers.xsd new file mode 100644 index 0000000..ff119f7 --- /dev/null +++ b/WinFormDesigner/FodyWeavers.xsd @@ -0,0 +1,141 @@ + + + + + + + + + + + + A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks + + + + + A list of assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks. + + + + + A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with line breaks + + + + + A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with line breaks. + + + + + A list of unmanaged 32 bit assembly names to include, delimited with line breaks. + + + + + A list of unmanaged 64 bit assembly names to include, delimited with line breaks. + + + + + The order of preloaded assemblies, delimited with line breaks. + + + + + + This will copy embedded files to disk before loading them into memory. This is helpful for some scenarios that expected an assembly to be loaded from a physical file. + + + + + Controls if .pdbs for reference assemblies are also embedded. + + + + + Controls if runtime assemblies are also embedded. + + + + + Controls whether the runtime assemblies are embedded with their full path or only with their assembly name. + + + + + Embedded assemblies are compressed by default, and uncompressed when they are loaded. You can turn compression off with this option. + + + + + As part of Costura, embedded assemblies are no longer included as part of the build. This cleanup can be turned off. + + + + + Costura by default will load as part of the module initialization. This flag disables that behavior. Make sure you call CosturaUtility.Initialize() somewhere in your code. + + + + + Costura will by default use assemblies with a name like 'resources.dll' as a satellite resource and prepend the output path. This flag disables that behavior. + + + + + A list of assembly names to exclude from the default action of "embed all Copy Local references", delimited with | + + + + + A list of assembly names to include from the default action of "embed all Copy Local references", delimited with |. + + + + + A list of runtime assembly names to exclude from the default action of "embed all Copy Local references", delimited with | + + + + + A list of runtime assembly names to include from the default action of "embed all Copy Local references", delimited with |. + + + + + A list of unmanaged 32 bit assembly names to include, delimited with |. + + + + + A list of unmanaged 64 bit assembly names to include, delimited with |. + + + + + The order of preloaded assemblies, delimited with |. + + + + + + + + 'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed. + + + + + A comma-separated list of error codes that can be safely ignored in assembly verification. + + + + + 'false' to turn off automatic generation of the XML Schema file. + + + + + \ No newline at end of file diff --git a/WinFormDesigner/Save.ico b/WinFormDesigner/Save.ico new file mode 100644 index 0000000..45abfd6 Binary files /dev/null and b/WinFormDesigner/Save.ico differ diff --git a/WinFormDesigner/Save.png b/WinFormDesigner/Save.png new file mode 100644 index 0000000..33d3bb0 Binary files /dev/null and b/WinFormDesigner/Save.png differ diff --git a/WinFormDesigner/WinFormDesigner.Designer.cs b/WinFormDesigner/WinFormDesigner.Designer.cs index 2a7ac29..ab4bc52 100644 --- a/WinFormDesigner/WinFormDesigner.Designer.cs +++ b/WinFormDesigner/WinFormDesigner.Designer.cs @@ -37,7 +37,6 @@ private void InitializeComponent() this.btnSave = new System.Windows.Forms.ToolStripButton(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); - this.splitContainer1.Panel2.SuspendLayout(); this.splitContainer1.SuspendLayout(); this.tabControl1.SuspendLayout(); this.toolStrip1.SuspendLayout(); @@ -45,16 +44,13 @@ private void InitializeComponent() // // splitContainer1 // - this,splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; this.splitContainer1.Location = new System.Drawing.Point(0, 0); this.splitContainer1.Name = "splitContainer1"; // // splitContainer1.Panel1 // this.splitContainer1.Panel1.Controls.Add(this.tabControl1); - // - // splitContainer1.Panel2 - // this.splitContainer1.Size = new System.Drawing.Size(800, 450); this.splitContainer1.SplitterDistance = 266; this.splitContainer1.TabIndex = 0; @@ -92,11 +88,12 @@ private void InitializeComponent() // // toolStrip1 // + this.toolStrip1.Dock = System.Windows.Forms.DockStyle.Bottom; this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.btnSave}); - this.toolStrip1.Location = new System.Drawing.Point(0, 0); + this.toolStrip1.Location = new System.Drawing.Point(0, 425); this.toolStrip1.Name = "toolStrip1"; - this.toolStrip1.Size = new System.Drawing.Size(530, 25); + this.toolStrip1.Size = new System.Drawing.Size(800, 25); this.toolStrip1.TabIndex = 0; this.toolStrip1.Text = "toolStrip1"; // @@ -121,14 +118,13 @@ private void InitializeComponent() this.Text = "Windows Forms Designer"; this.Load += new System.EventHandler(this.frmWinFormDesigner_Load); this.splitContainer1.Panel1.ResumeLayout(false); - this.splitContainer1.Panel2.ResumeLayout(false); - this.splitContainer1.Panel2.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); this.splitContainer1.ResumeLayout(false); this.tabControl1.ResumeLayout(false); this.toolStrip1.ResumeLayout(false); this.toolStrip1.PerformLayout(); this.ResumeLayout(false); + this.PerformLayout(); } diff --git a/WinFormDesigner/WinFormDesigner.cs b/WinFormDesigner/WinFormDesigner.cs index 80714aa..7f3a24b 100644 --- a/WinFormDesigner/WinFormDesigner.cs +++ b/WinFormDesigner/WinFormDesigner.cs @@ -9,7 +9,7 @@ namespace WinFormDesigner public partial class frmWinFormDesigner : Form { private frmMain mainForm; - private bool dirty = false; + private bool dirty; public frmWinFormDesigner() { diff --git a/WinFormDesigner/WinFormDesigner.csproj b/WinFormDesigner/WinFormDesigner.csproj index 5a0c07f..9acf02e 100644 --- a/WinFormDesigner/WinFormDesigner.csproj +++ b/WinFormDesigner/WinFormDesigner.csproj @@ -1,5 +1,6 @@  + Debug @@ -12,6 +13,8 @@ 512 true true + + AnyCPU @@ -36,30 +39,162 @@ ..\packages\CommandLineParser.2.9.1\lib\net461\CommandLine.dll + + ..\packages\Costura.Fody.5.7.0\lib\netstandard1.0\Costura.dll + + + ..\packages\Microsoft.Win32.Primitives.4.3.0\lib\net46\Microsoft.Win32.Primitives.dll + True + True + + + ..\packages\System.AppContext.4.3.0\lib\net463\System.AppContext.dll + True + True + ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\packages\System.Console.4.3.0\lib\net46\System.Console.dll + True + True + + + ..\packages\System.Diagnostics.DiagnosticSource.4.3.0\lib\net46\System.Diagnostics.DiagnosticSource.dll + + + ..\packages\System.Diagnostics.Tracing.4.3.0\lib\net462\System.Diagnostics.Tracing.dll + True + True + + + ..\packages\System.Globalization.Calendars.4.3.0\lib\net46\System.Globalization.Calendars.dll + True + True + + + ..\packages\System.IO.4.3.0\lib\net462\System.IO.dll + True + True + + + ..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll + True + True + + + + ..\packages\System.IO.Compression.ZipFile.4.3.0\lib\net46\System.IO.Compression.ZipFile.dll + True + True + + + ..\packages\System.IO.FileSystem.4.3.0\lib\net46\System.IO.FileSystem.dll + True + True + + + ..\packages\System.IO.FileSystem.Primitives.4.3.0\lib\net46\System.IO.FileSystem.Primitives.dll + True + True + + + ..\packages\System.Linq.4.3.0\lib\net463\System.Linq.dll + True + True + + + ..\packages\System.Linq.Expressions.4.3.0\lib\net463\System.Linq.Expressions.dll + True + True + ..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll + + ..\packages\System.Net.Http.4.3.0\lib\net46\System.Net.Http.dll + True + True + + + ..\packages\System.Net.Sockets.4.3.0\lib\net46\System.Net.Sockets.dll + True + True + ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + + ..\packages\System.Reflection.4.3.0\lib\net462\System.Reflection.dll + True + True + + + ..\packages\System.Runtime.4.3.0\lib\net462\System.Runtime.dll + True + True + ..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + ..\packages\System.Runtime.Extensions.4.3.0\lib\net462\System.Runtime.Extensions.dll + True + True + + + ..\packages\System.Runtime.InteropServices.4.3.0\lib\net463\System.Runtime.InteropServices.dll + True + True + + + ..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll + True + True + + + ..\packages\System.Security.Cryptography.Algorithms.4.3.0\lib\net463\System.Security.Cryptography.Algorithms.dll + True + True + + + ..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll + True + True + + + ..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll + True + True + + + ..\packages\System.Security.Cryptography.X509Certificates.4.3.0\lib\net461\System.Security.Cryptography.X509Certificates.dll + True + True + + + ..\packages\System.Text.RegularExpressions.4.3.0\lib\net463\System.Text.RegularExpressions.dll + True + True + - + + ..\packages\System.Xml.ReaderWriter.4.3.0\lib\net46\System.Xml.ReaderWriter.dll + True + True + @@ -102,5 +237,18 @@ FormDesigner.Common + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + \ No newline at end of file diff --git a/WinFormDesigner/WinFormDesigner.resx b/WinFormDesigner/WinFormDesigner.resx index 0e66a24..f1c7a99 100644 --- a/WinFormDesigner/WinFormDesigner.resx +++ b/WinFormDesigner/WinFormDesigner.resx @@ -124,16 +124,9 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG - YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 - 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw - bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc - VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 - c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 - Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo - mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ - kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D - TgDQASA1MVpwzwAAAABJRU5ErkJggg== + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAB+SURBVDhPY6AOiNn5gCF2138i8UeG6N0OUJ1QAJKI3i4J + xshsdAw2YLc/Q/SuV0BLnaC6gYAUA0B0zI5ghuidn6C6gYBUA2BsOKCqATG7HoH52DBIjqABxGLsBuzc + AGQfxYtBanAaAFYAtQEXhqkZNQDNANIyEwSD9FAOGBgAVFUuBnmaCx8AAAAASUVORK5CYII= diff --git a/WinFormDesigner/packages.config b/WinFormDesigner/packages.config index 77b2d5b..fdc4959 100644 --- a/WinFormDesigner/packages.config +++ b/WinFormDesigner/packages.config @@ -1,8 +1,56 @@  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/WinFormDesigner/version.txt b/WinFormDesigner/version.txt new file mode 100644 index 0000000..ce9bbeb --- /dev/null +++ b/WinFormDesigner/version.txt @@ -0,0 +1 @@ +2024.7.0 \ No newline at end of file diff --git a/vscode/powershellprotools/.vscode/tasks.json b/vscode/powershellprotools/.vscode/tasks.json index 1104c29..892e7a8 100644 --- a/vscode/powershellprotools/.vscode/tasks.json +++ b/vscode/powershellprotools/.vscode/tasks.json @@ -37,16 +37,6 @@ ], "label": "Build Cmdlets", "problemMatcher": [] - }, - { - "type": "shell", - "command": ".\\out\\windows\\PowerShellProTools.Host.exe", - "args": [ - "--pipe-name", - "test" - ], - "label": "Start Test Server", - "problemMatcher": [] } ] } \ No newline at end of file diff --git a/vscode/powershellprotools/package-lock.json b/vscode/powershellprotools/package-lock.json index 045dff5..7f71c13 100644 --- a/vscode/powershellprotools/package-lock.json +++ b/vscode/powershellprotools/package-lock.json @@ -1,12 +1,12 @@ { "name": "powershellprotools", - "version": "2023.12.2", + "version": "2024.7.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "powershellprotools", - "version": "2023.12.2", + "version": "2024.7.0", "dependencies": { "cheerio": "^1.0.0-rc.2", "extract-zip": "^2.0.1", @@ -31,36 +31,37 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dev": true, "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.7", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -79,9 +80,9 @@ "devOptional": true }, "node_modules/@types/vscode": { - "version": "1.85.0", - "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.85.0.tgz", - "integrity": "sha512-CF/RBon/GXwdfmnjZj0WTUMZN5H6YITOfBCP4iEZlOtVQXuzw6t7Le7+cR+7JzdMrnlm7Mfp49Oj2TuSXIWo3g==", + "version": "1.90.0", + "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.90.0.tgz", + "integrity": "sha512-oT+ZJL7qHS9Z8bs0+WKf/kQ27qWYR3trsXpq46YDjFqBsMLG4ygGGjPaJ2tyrH0wJzjOEmDyg9PDJBBhWg9pkQ==", "dev": true }, "node_modules/@types/yauzl": { @@ -264,9 +265,9 @@ } }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", "dependencies": { "ms": "2.1.2" }, @@ -713,6 +714,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -739,9 +741,9 @@ } }, "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dev": true, "dependencies": { "function-bind": "^1.1.2" @@ -777,6 +779,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, "dependencies": { "once": "^1.3.0", @@ -790,12 +793,15 @@ "dev": true }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", "dev": true, "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -973,6 +979,12 @@ "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==" }, + "node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "dev": true + }, "node_modules/pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -1234,30 +1246,31 @@ }, "dependencies": { "@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dev": true, "requires": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" } }, "@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "dev": true }, "@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "dev": true, "requires": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.7", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" } }, "@types/mocha": { @@ -1273,9 +1286,9 @@ "devOptional": true }, "@types/vscode": { - "version": "1.85.0", - "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.85.0.tgz", - "integrity": "sha512-CF/RBon/GXwdfmnjZj0WTUMZN5H6YITOfBCP4iEZlOtVQXuzw6t7Le7+cR+7JzdMrnlm7Mfp49Oj2TuSXIWo3g==", + "version": "1.90.0", + "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.90.0.tgz", + "integrity": "sha512-oT+ZJL7qHS9Z8bs0+WKf/kQ27qWYR3trsXpq46YDjFqBsMLG4ygGGjPaJ2tyrH0wJzjOEmDyg9PDJBBhWg9pkQ==", "dev": true }, "@types/yauzl": { @@ -1425,9 +1438,9 @@ "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" }, "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", "requires": { "ms": "2.1.2" } @@ -1716,9 +1729,9 @@ "dev": true }, "hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dev": true, "requires": { "function-bind": "^1.1.2" @@ -1757,12 +1770,12 @@ "dev": true }, "is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", "dev": true, "requires": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" } }, "js-tokens": { @@ -1898,6 +1911,12 @@ "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==" }, + "picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "dev": true + }, "pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", diff --git a/vscode/powershellprotools/package.json b/vscode/powershellprotools/package.json index bc54c02..94e26bf 100644 --- a/vscode/powershellprotools/package.json +++ b/vscode/powershellprotools/package.json @@ -870,20 +870,13 @@ "preview": false, "icon": "poshtools.png", "qna": "marketplace", - "homepage": "https://ironmansoftware.com/powershell-pro-tools-for-visual-studio-code", + "homepage": "https://github.com/ironmansoftware/powershell-pro-tools", "bugs": { - "url": "https://github.com/ironmansoftware/issues" + "url": "https://github.com/ironmansoftware/powershell-pro-tools" }, - "badges": [ - { - "url": "https://img.shields.io/badge/Trial-14%20Days-green", - "href": "https://ironmansoftware.com/trial/powershell-pro-tools", - "description": "14-day trial of PowerShell Pro Tools" - } - ], + "badges": [], "keywords": [ "powershell", - "windowsforms", - "wpf" + "windowsforms" ] } \ No newline at end of file diff --git a/vscode/powershellprotools/src/commands/formsDesigner.ts b/vscode/powershellprotools/src/commands/formsDesigner.ts index 5962541..4c6b4dd 100644 --- a/vscode/powershellprotools/src/commands/formsDesigner.ts +++ b/vscode/powershellprotools/src/commands/formsDesigner.ts @@ -4,7 +4,7 @@ import { Container } from '../container'; async function LaunchEditor(context: vscode.ExtensionContext) { if (vscode.window.activeTextEditor == null) { - vscode.window.showErrorMessage("Open a PS1 or XAML file to edit with the form designer before running this command."); + vscode.window.showErrorMessage("Open a PS1 file to edit with the form designer before running this command."); return; } @@ -17,11 +17,8 @@ async function LaunchEditor(context: vscode.ExtensionContext) { vscode.window.setStatusBarMessage("Starting form designer...", 3000); await Container.PowerShellService.ShowFormDesigner(codeFilePath, designerFilePath); } - else if (fsPath.endsWith(".xaml")) { - await Container.PowerShellService.ShowWpfFormDesigner(codeFilePath); - } else { - vscode.window.showErrorMessage("Open a PS1 or XAML file to edit with the form designer before running this command."); + vscode.window.showErrorMessage("Open a PS1 file to edit with the form designer before running this command."); } } diff --git a/vscode/refactoring-ideas.md b/vscode/refactoring-ideas.md deleted file mode 100644 index c2b8043..0000000 --- a/vscode/refactoring-ideas.md +++ /dev/null @@ -1,19 +0,0 @@ -- Convert New-Object to new() syntax -- Convert Where-Object to where() syntax -- Convert function to advanced function -- Global Rename -- Convert ForEach-Object to foreach - -- Rearrange Elements: https://www.jetbrains.com/help/resharper/Coding_Assistance__Moving_Code_Elements.html#applicable-cases - - Move parameters on commands - - Move parameters in param blocks - - Move arguments in method calls - -- Change Brace Style - -# Code Generation - -- Generate parameter ?? -- -- Insert PSReadline History -- Generate function from .NET method \ No newline at end of file diff --git a/vscode/release-notes.md b/vscode/release-notes.md deleted file mode 100644 index 6e14750..0000000 --- a/vscode/release-notes.md +++ /dev/null @@ -1,8 +0,0 @@ -# 2021.9.0 - -- Fixed an issue where updating modules would not work properly -- Fixed an issue where packaging scripts would not locate modules properly -- Added support for switching .NET SDK versions in the package.psd1 -- Fixed an MSBuild warning that was shown while packaging on Windows -- Added support for embedding additional XAML files into a package -- Fixed an issue where .NET Core 5.0 would not produce correct PowerShell executables \ No newline at end of file diff --git a/vscode/vscode.build.ps1 b/vscode/vscode.build.ps1 index dc2eaf9..74b6194 100644 --- a/vscode/vscode.build.ps1 +++ b/vscode/vscode.build.ps1 @@ -31,14 +31,14 @@ task Init { } } -task BuildPSScriptPad { +task BuildWinFormDesigner { $instance = Get-VSSetupInstance -All -Prerelease | Select-VSSetupInstance -Require 'Microsoft.Component.MSBuild' -Latest $installDir = $instance.installationPath Write-Host "Visual Studio is found at $installDir" $msBuild = $installDir + '\MSBuild\Current\Bin\MSBuild.exe' - Push-Location (Join-Path $RootDir ".\..\..\FormDesigner.Host") - & $msBuild -property:Configuration=Release .\PSScriptPad.csproj + Push-Location (Join-Path $RootDir ".\..\..\WinFormDesigner") + & $msBuild -property:Configuration=Release .\WinFormDesigner.csproj Pop-Location } @@ -60,7 +60,7 @@ task BuildExtension { $ErrorActionPreference = 'SilentlyContinue' npm install -g npm npm install -g typescript@latest - npm install -g vsce + npm install -g @vscode/vsce npm install vsce package @@ -70,7 +70,7 @@ task BuildExtension { Pop-Location } -task Build BuildHost, BuildPSScriptPad, BuildCmdlets, BuildExtension +task Build BuildHost, BuildWinFormDesigner, BuildCmdlets, BuildExtension task . Init, Clean, Build