From 5c6a219953b313156b5873b1f3fb32272e57a5a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20K=C5=82ys?= Date: Thu, 29 Oct 2026 08:45:45 +0100 Subject: [PATCH 1/8] Handle report section toggles without inline event attributes --- Public/New-HTMLSection.ps1 | 7 ++++--- Resources/JS/HideSection.js | 19 +++++++++++++++++++ Tests/New-HTMLIssueFixes.Tests.ps1 | 14 ++++++++++++++ 3 files changed, 37 insertions(+), 3 deletions(-) diff --git a/Public/New-HTMLSection.ps1 b/Public/New-HTMLSection.ps1 index 5e13813e..bed27925 100644 --- a/Public/New-HTMLSection.ps1 +++ b/Public/New-HTMLSection.ps1 @@ -29,6 +29,7 @@ function New-HTMLSection { .PARAMETER CanCollapse Indicates whether the section can be collapsed. + Show and Hide controls use script event listeners so they work in nonce-based embedded reports. .PARAMETER IsHidden Indicates whether the section is initially hidden. @@ -316,8 +317,8 @@ function New-HTMLSection { New-HTMLTag -Tag 'div' -Attributes @{ class = $StyleSheetsConfiguration.SectionText } { New-HTMLAnchor -Name $HeaderText -Text "$HeaderText " -Style $HeaderStyle " " # this adds hard space - New-HTMLAnchor -Id "show_$AnchorName" -Href 'javascript:void(0)' -OnClick "show('$AnchorName'); " -Style $ShowStyle -Text '(Show)' - New-HTMLAnchor -Id "hide_$AnchorName" -Href 'javascript:void(0)' -OnClick "hide('$AnchorName'); " -Style $HideStyle -Text '(Hide)' + New-HTMLTag -Tag 'a' -Attributes @{ id = "show_$AnchorName"; href = 'javascript:void(0)'; 'data-pswritehtml-section' = $AnchorName; 'data-pswritehtml-section-action' = 'show'; 'aria-controls' = $AnchorName; style = $ShowStyle } { '(Show)' } + New-HTMLTag -Tag 'a' -Attributes @{ id = "hide_$AnchorName"; href = 'javascript:void(0)'; 'data-pswritehtml-section' = $AnchorName; 'data-pswritehtml-section-action' = 'hide'; 'aria-controls' = $AnchorName; style = $HideStyle } { '(Hide)' } } } New-HTMLTag -Tag 'div' -Attributes @{ name = $AnchorName; class = $ClassName; id = $AnchorName; style = $HiddenDivStyle } -Value { @@ -334,4 +335,4 @@ function New-HTMLSection { Register-ArgumentCompleter -CommandName New-HTMLSection -ParameterName HeaderTextColor -ScriptBlock $Script:ScriptBlockColors Register-ArgumentCompleter -CommandName New-HTMLSection -ParameterName HeaderBackGroundColor -ScriptBlock $Script:ScriptBlockColors -Register-ArgumentCompleter -CommandName New-HTMLSection -ParameterName BackgroundColor -ScriptBlock $Script:ScriptBlockColors \ No newline at end of file +Register-ArgumentCompleter -CommandName New-HTMLSection -ParameterName BackgroundColor -ScriptBlock $Script:ScriptBlockColors diff --git a/Resources/JS/HideSection.js b/Resources/JS/HideSection.js index a0180802..b7615fc7 100644 --- a/Resources/JS/HideSection.js +++ b/Resources/JS/HideSection.js @@ -1,3 +1,22 @@ +(function () { + // Inline event attributes are blocked when a report is hosted with a script nonce. + // Delegate events so controls also work when sections are added after this script loads. + if (document.pswritehtmlSectionTogglesBound) return; + document.pswritehtmlSectionTogglesBound = true; + document.addEventListener('click', function (event) { + var target = event.target; + if (target && target.nodeType !== 1) target = target.parentElement; + var control = target && target.closest ? target.closest('[data-pswritehtml-section-action]') : null; + if (!control) return; + var section = control.getAttribute('data-pswritehtml-section'); + var action = control.getAttribute('data-pswritehtml-section-action'); + if (!section || !document.getElementById(section) || (action !== 'show' && action !== 'hide')) return; + event.preventDefault(); + if (action === 'show') show(section); + else hide(section); + }); +})(); + function show(obj) { document.getElementById(obj).style.display = 'block'; document.getElementById("hide_" + obj).style.display = ''; diff --git a/Tests/New-HTMLIssueFixes.Tests.ps1 b/Tests/New-HTMLIssueFixes.Tests.ps1 index f9dd43b4..eaa0c611 100644 --- a/Tests/New-HTMLIssueFixes.Tests.ps1 +++ b/Tests/New-HTMLIssueFixes.Tests.ps1 @@ -3,6 +3,20 @@ BeforeAll { } Describe 'Issue-oriented HTML fixes' { + It 'renders section controls without inline event handlers for nonce-based viewers' { + $FilePath = Join-Path $TestDrive 'section-events.html' + New-HTML -FilePath $FilePath { + New-HTMLSection -HeaderText 'Closed section' -CanCollapse -Collapsed { New-HTMLText -Text 'Closed content' } + New-HTMLSection -HeaderText 'Open section' -CanCollapse { New-HTMLText -Text 'Open content' } + } + $content = Get-Content -LiteralPath $FilePath -Raw + $content | Should -Match 'data-pswritehtml-section-action="show"' + $content | Should -Match 'data-pswritehtml-section-action="hide"' + $content | Should -Not -Match 'onclick="(?:show|hide)\(' + $content | Should -Match 'Closed content' + $content | Should -Match 'Open content' + } + It 'renders table cell alignment, header borders, custom footer, column widths, row grouping hide, and SearchBuilder button language' { $FilePath = Join-Path $TestDrive 'table-issue-fixes.html' $Data = @( From 737fb1d00443ac80a341460ef5aebb0fce7b6d5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20K=C5=82ys?= Date: Thu, 29 Oct 2026 08:54:13 +0100 Subject: [PATCH 2/8] Deliver section toggle handlers in Online reports --- Private/Parameters.Configuration.ps1 | 6 +----- Tests/New-HTMLIssueFixes.Tests.ps1 | 7 +++++-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Private/Parameters.Configuration.ps1 b/Private/Parameters.Configuration.ps1 index d53046fd..febfe148 100644 --- a/Private/Parameters.Configuration.ps1 +++ b/Private/Parameters.Configuration.ps1 @@ -1384,12 +1384,8 @@ HideSection = [ordered] @{ Comment = 'Hide Section Code' Internal = $true - Header = @{ - JSLink = "$($ConfigurationURL)/JS/hideSection.min.js" - JS = "$PSScriptRoot\..\Resources\JS\hideSection.js" - } HeaderAlways = [ordered] @{ - #JS = "$PSScriptRoot\..\Resources\JS\hideSection.js" + JS = "$PSScriptRoot\..\Resources\JS\hideSection.js" CssInline = [ordered] @{ '.sectionHide' = @{ # fixes problem with hiding section that are collapsing left/right 'width' = 'auto' diff --git a/Tests/New-HTMLIssueFixes.Tests.ps1 b/Tests/New-HTMLIssueFixes.Tests.ps1 index eaa0c611..8dee57c6 100644 --- a/Tests/New-HTMLIssueFixes.Tests.ps1 +++ b/Tests/New-HTMLIssueFixes.Tests.ps1 @@ -3,9 +3,10 @@ BeforeAll { } Describe 'Issue-oriented HTML fixes' { - It 'renders section controls without inline event handlers for nonce-based viewers' { + It 'renders section controls without inline event handlers for nonce-based viewers (Online=)' -TestCases @(@{ Online = $false }, @{ Online = $true }) { + param($Online) $FilePath = Join-Path $TestDrive 'section-events.html' - New-HTML -FilePath $FilePath { + New-HTML -FilePath $FilePath -Online:$Online { New-HTMLSection -HeaderText 'Closed section' -CanCollapse -Collapsed { New-HTMLText -Text 'Closed content' } New-HTMLSection -HeaderText 'Open section' -CanCollapse { New-HTMLText -Text 'Open content' } } @@ -13,6 +14,8 @@ Describe 'Issue-oriented HTML fixes' { $content | Should -Match 'data-pswritehtml-section-action="show"' $content | Should -Match 'data-pswritehtml-section-action="hide"' $content | Should -Not -Match 'onclick="(?:show|hide)\(' + $content | Should -Match 'document.addEventListener\(''click''' + $content | Should -Not -Match 'src="[^"]*/hideSection.min.js' $content | Should -Match 'Closed content' $content | Should -Match 'Open content' } From 2d2a1d7181fe533cabe13e9760692cd72eb1d96e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 29 Oct 2026 07:58:46 +0000 Subject: [PATCH 3/8] chore: regenerate psd1 --- PSWriteHTML.psd1 | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/PSWriteHTML.psd1 b/PSWriteHTML.psd1 index 056683a9..95c6c4f6 100644 --- a/PSWriteHTML.psd1 +++ b/PSWriteHTML.psd1 @@ -22,8 +22,7 @@ RequiredModules = @(@{ Guid = 'ee272aa8-baaa-4edf-9f45-b6d6f7d844fe' ModuleName = 'PSSharedGoods' - ModuleVersion = '0.0.312' + ModuleVersion = '0.0.313' }) RootModule = 'PSWriteHTML.psm1' - ScriptsToProcess = @() } From 40320049edb207c56eca512c02f8a48d564d9208 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20K=C5=82ys?= Date: Thu, 29 Oct 2026 09:09:08 +0100 Subject: [PATCH 4/8] Use the PowerShell bundled with the Ubuntu runner --- .github/workflows/ci.yml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5c6823b9..c2ac003d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -135,12 +135,8 @@ jobs: name: psd1 path: . - - name: Install PowerShell - run: | - curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - - curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/microsoft.list - sudo apt-get update - sudo apt-get install -y powershell + - name: Verify runner PowerShell + run: pwsh --version - name: Install PowerShell modules run: | From 63dc6f24c9f388f05b29097eb934f0817836de63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20K=C5=82ys?= Date: Thu, 29 Oct 2026 09:20:11 +0100 Subject: [PATCH 5/8] Select the current Evotec module signing certificate --- Build/Build-Module.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Build/Build-Module.ps1 b/Build/Build-Module.ps1 index 56a906f6..5b7365ed 100644 --- a/Build/Build-Module.ps1 +++ b/Build/Build-Module.ps1 @@ -93,7 +93,7 @@ Build-Module -ModuleName 'PSWriteHTML' { SignModule = $SignModule MergeModuleOnBuild = $true MergeFunctionsFromApprovedModules = $true - CertificateThumbprint = '483292C9E317AA13B07BB7A96AE9D1A5ED9E7703' + CertificateThumbprint = '92E95FB58EFFA6A4A75E77A33CDD6BFE6DD30F1A' RefreshPSD1Only = $env:RefreshPSD1Only -eq 'true' } From d30f8777b94604b63048cf9a007bf73510d3b50f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20K=C5=82ys?= Date: Thu, 29 Oct 2026 10:03:10 +0100 Subject: [PATCH 6/8] Match the section script filename on case-sensitive filesystems --- Private/Parameters.Configuration.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Private/Parameters.Configuration.ps1 b/Private/Parameters.Configuration.ps1 index febfe148..811121cc 100644 --- a/Private/Parameters.Configuration.ps1 +++ b/Private/Parameters.Configuration.ps1 @@ -1385,7 +1385,7 @@ Comment = 'Hide Section Code' Internal = $true HeaderAlways = [ordered] @{ - JS = "$PSScriptRoot\..\Resources\JS\hideSection.js" + JS = "$PSScriptRoot\..\Resources\JS\HideSection.js" CssInline = [ordered] @{ '.sectionHide' = @{ # fixes problem with hiding section that are collapsing left/right 'width' = 'auto' From af0f252af492aca37a2dbcdf4eea261ff3a75b89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20K=C5=82ys?= Date: Thu, 29 Oct 2026 12:11:49 +0100 Subject: [PATCH 7/8] Make table word breaking work in the first column --- CHANGELOG.MD | 2349 ++++++++++++++-------------- Public/New-HTMLTable.ps1 | 7 +- Tests/New-HTMLIssueFixes.Tests.ps1 | 12 + 3 files changed, 1194 insertions(+), 1174 deletions(-) diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 13f3ef8a..4d2feaac 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,1173 +1,1178 @@ -## Changelog - -`PSWriteHTML` undergoes changes that hopefully will make it more versalite, consistent and better. -Unfortunetly some code is very old, some code doesn't serve it's purpose anymore, and requires heavy changes that may have an impact on already deployed code. -Please make sure to read changes before updating, as we're undergoing some breaking changes. - -## 1.36.0 -### What's new -- Improvements to null handlings in New-HTMLTable - -**Full Changelog**: https://github.com/EvotecIT/PSWriteHTML/compare/v1.35.0...v1.36.0 - -## 1.33.0 -### What's Changed -- Improve Gages by @PrzemyslawKlys in https://github.com/EvotecIT/PSWriteHTML/pull/498 - - adds new features to gages - - closes #472 adding ability to define sectors in absolute values - - added lots of other options - - added more examples - -**Full Changelog**: https://github.com/EvotecIT/PSWriteHTML/compare/v1.32.0...v1.33.0 - -## 1.32.0 -### What's Changed -- Refactor New-HTMLTable.ps1 to enhance table by @PrzemyslawKlys in https://github.com/EvotecIT/PSWriteHTML/pull/497 - - Fixes `ScrollX` wrap issues - - Changes ToggleView to `Switch to ScrollX` or `Switch to Responsive` when enabled - - When using online mode the infocard, responsive wrap and datatables switch are now CDN hosted - -## 1.31.0 -### What's Changed -* Improve InfoCard by @PrzemyslawKlys in https://github.com/EvotecIT/PSWriteHTML/pull/495 - -**Full Changelog**: https://github.com/EvotecIT/PSWriteHTML/compare/v1.30.0...v1.31.0 - -## 1.30.0 - -### What's Changed -- Added `New-HTMLDate` -- Added `Height` to `New-HTMLPanel` for better control -- Update `JustGage JS library` version to 1.7.0 -- Allow setting `Width` in `New-HTMLTable` - resolves [#469](https://github.com/EvotecIT/PSWriteHTML/issues/469) - -## 1.29.0 -### What's Changed -- improve `New-HTML` to allow Minify/Format when not saving to file - -## 1.28.0 -### What's Changed -- fixed Get-HTMLLogos missing `$LogoPath` by @Binomimus in https://github.com/EvotecIT/PSWriteHTML/pull/466 -- Improve Get-ImageFile to not throw errors when having issues with internet connection -- Improves `New-HTMLSectionScrolling` and `New-HTMLSectionScrollingItem` to allow for nesting -- Improve `New-HTMLTable` Transpose to process it a bit later so some other settings can be applied to data first - -## New Contributors -* @Binomimus made their first contribution in https://github.com/EvotecIT/PSWriteHTML/pull/466 - -## 1.27.0 -### What's Changed -- Improve `New-HTML` utf-8 and lang properties for proper HTML specification -- Fixes [Linking Diagram with Tables by using New-DiagramEvent is currently broke #449](https://github.com/EvotecIT/PSWriteHTML/issues/449) -* Fix case-sensitivity for ChangeLog in readme.md by @cksapp in https://github.com/EvotecIT/PSWriteHTML/pull/447 - -### New Contributors -* @cksapp made their first contribution in https://github.com/EvotecIT/PSWriteHTML/pull/447 - -**Full Changelog**: https://github.com/EvotecIT/PSWriteHTML/compare/v1.26.0...v1.27.0 - -## 1.26.0 - 2024.07.06 -* Added help to all PowerShell functions lacking it. by @neztach in https://github.com/EvotecIT/PSWriteHTML/pull/446 - -### New Contributors -* @neztach made their first contribution in https://github.com/EvotecIT/PSWriteHTML/pull/446 - -## 1.25.0 - 2024.07.02 -- Improved filtering for `New-HTMLDiagram` - -## 1.24.0 - 2024.07.01 -- Added `EnableFilteringButton` to `New-HTMLDiagram` which allows to filter only on press of a button -- Improved filtering performance in `New-HTMLDiagram` - -## 1.23.0 - 2024.07.01 -- Renamed `EnableSearch` to `EnableFiltering` in `New-HTMLDiagram` -- Renamed `MinimumSearchChars` to `MinimumFilteringChars` in `New-HTMLDiagram` - -## 1.22.0 - 2024.07.01 -- `New-HTMLImage` issue with SVG images [#398](https://github.com/EvotecIT/PSWriteHTML/issues/398) - tnx @matt555 -- `New-HTMLDiagram` has new parameters `EnableSearch` and `MinimumSearchChars` which allows adding a search/limit to display only nodes that match search -- Updated VisNetwork/VisTimeline to 9.1.9 - -## 1.21.0 - 2024.06.29 -- Changed behavior of `Transpose` in `New-HTMLTable` / `Out-HtmlView` -- Added `TransposeLegacy` to `New-HTMLTable` / `Out-HtmlView` to keep old behavior -- Added `TransposeName` to `New-HTMLTable` / `Out-HtmlView` to allow for custom name (default is `Object 0`, `Object 1`, `Object 2`) -- Added `TransposeProperty` to `New-HTMLTable` / `Out-HtmlView` to allow for transposing on unique value from specific property (ex. ServerName) -- Added `Out-HtmlView` additional options `PrettifyObject, PrettifyObjectSeparator, PrettifyObjectDateTimeFormat` - -Those changes resolve: [#316](https://github.com/EvotecIT/PSWriteHTML/issues/316) - -```powershell -$Object = @( - [PSCustomObject] @{ - Test = 5 - Ello = 'Motto' - Hello = 'Totto' - } - [PSCustomObject] @{ - Test = 5 - Ello = 'Motto' - Hello = 'Totto' - } - [PSCustomObject] @{ - Test = 5 - Ello = 'Motto' - Hello = 'Totto' - } - [PSCustomObject] @{ - Test = 5 - Ello = 'Motto' - Hello = 'Totto' - } - [PSCustomObject] @{ - Test = 5 - Ello = 'Motto' - Hello = 'Totto' - } - [PSCustomObject] @{ - Test = 3 - Ello = 'Lotto' - Hello = 'Totto' - } -) - - -$Object | Out-HtmlView -Transpose -TransposeName 'Test ' -Filtering - -New-HTML -TitleText $Title -Online -FilePath $PSScriptRoot\Example-TableTranspose01.html { - New-HTMLTable -DataTable $Object -Filtering -Transpose -} -ShowHTML -``` - -## 1.20.0 - 2024.06.27 -- Added to `EmailTable` / `New-HTMLTable` additional options `PrettifyObject, PrettifyObjectSeparator, PrettifyObjectDateTimeFormat` -- Added to `New-HTMLTableOption` additional options `PrettifyObject, PrettifyObjectSeparator, PrettifyObjectDateTimeFormat` - -Those options above allow object to be translated to more readable format when using properties that are arrays or when wanting different datetime format -It basically does to HTML version what normally is doable in JavaScript DataStore. - -## 1.19.0 - 2024.06.09 -- Dropping IE support -- Fixes `New-HTMLTable` when using `DataStore` `JavaScript` for new lines -- Fixes `New-HTMLTable` when using `DataStore` `JavaScript` when replacing `\r\n` [#439](https://github.com/EvotecIT/PSWriteHTML/issues/439) tnx @matt555 -- `New-HTMLCalendar` works now by default in 24h format - -## 1.18.0 - 2024.05.10 -- Improved `New-HTML` and `New-HTMLPage` by allowing `Title` to be used in `New-HTMLPage`. -By default Title from `New-HTML` is used, but if title is set in `New-HTMLPage` it will be used instead for coresponsing page. -Title will still be used for the first page. -- Improved `EmailBody` `Parameter` parameter to be able to handle nulls -- Some cleanup -- Fixes `New-ChartDonut` colors - -## 1.17.0 - 2024.01.15 -- Fixes `New-HTMLChart` when used inside `New-HTMLTabPanel` [#429](https://github.com/EvotecIT/PSWriteHTML/issues/429) - -## 1.16.0 - 2024.01.15 -- Improves `New-HTMLNavTop` for HomeLink - -## 1.15.0 - 2024.01.03 -- Fixes `New-ChartSpark` when using which would be ignored - -## 1.14.0 - 17.12.2023 -- Added support for all charts `New-ChartDesign` -- Gradient support in charts no longer uses `Inverse Colors` by default and can be set by `New-ChartDesign` -- Speed improvements for `New-HTMLTable` when using `DataStore` `JavaScript` -- Should fix `Powershell ScriptBlock Logging` slowdown when using `New-HTMLTable` with `DataStore` `JavaScript` -- Fixes `New-HTMLTabPanel` orientation - -## 1.12.0 - 12.11.2023 -- Improvement to `New-HTMLTableStyle` for color handling which would potentially generate wrong CSS code -- Improvement to error handling which should show stack trace in case of error (last 5 lines) - -## 1.11.0 - 15.10.2023 -- Fix for `New-HTMLNavTop` not respecting links to differnent extension such as ASXP - -## 1.10.0 -- Fix for `Online` when using percentage bar - -## 1.9.0 -- Add support for conditions for percentage in table `New-TablePercentageBar` / `New-TablePercentageBarCondition` -- Added `New-HTMLMermeidChart` - work in progress / not fully functional - -## 1.8.0 -- Fixes problem with encoding in `New-HTMLMarkdown` -- Fixes problem with `EnableTOC` switch in `New-HTMLMarkdown` - -## 1.7.0 -- Add `TargetName` to `New-HTMLCalendar` - -## 1.6.0 -- Add `New-HTMLMarkdown` command - -## 1.4.0 -- Add `UrlTarget` to `New-HTMLCalendar` allowing for greater link control (for example iFrame) - -## 1.3.0 -- Fixes internal CSS issues after fix to `Add-HTMLStyle` -- Improve `New-HTMLFrame` adding `Name` -- Rename `New-TreeNode` to `New-HTMLTreeNode` *BREAKING CHANGE* -- Improve `New-HTMLTreeNode` options -- Improve `New-HTMLTree` - -## 1.2.0 -- Fixes `Add-HTMLStyle` when using links - -## 1.1.0 -- Improve `New-HTMLCarousel` (WIP) - -## 1.0.192 -- Fixes `PSWriteHTML` published module -- Adds tests before publishing to prevent similar issue - -## 1.0.0 -- This release is first release of PSWriteHTML that is considered stable. It's been in development for over 2 years, but it's time to say it's stable. -- Add columnVisibility button to `New-HTMLTable` - -```powershell -$DataTable = @( - [PSCustomObject] @{ 'Test.1' = 'Name'; 'Test 2 Another' = 'Name2'; 'Test..3' = 'Name3'; "Da't'es" = $Date; 'Numbers' = $Int; Enum = $Enum; EnumFruit = $EnumFruit; Bool = $false } - [PSCustomObject] @{ 'Test.1' = 'Name'; 'Test 2 Another' = 'Name2'; 'Test..3' = 'Name3'; "Da't'es" = $Date2; 'Numbers' = $Int; Enum = $Enum; EnumFruit = $EnumFruit; Bool = $false } - [PSCustomObject] @{ 'Test.1' = 'Przemysłąw'; 'Test 2 Another' = 'Name2'; 'Test..3' = 'Name3'; "Da't'es" = $Date3; 'Numbers' = $Int; Enum = $Enum; EnumFruit = $EnumFruit; Bool = $false } - [PSCustomObject] @{ 'Test.1' = 'Kłys'; 'Test 2 Another' = 'Name2'; 'Test..3' = 'Name3'; "Da't'es" = $Date2; 'Numbers' = $Int; Enum = $Enum; EnumFruit = $EnumFruit; Bool = $false } -) - -#$DataTable = Get-Process | Select-Object -First 30 - -New-HTML -TitleText 'Title' -Online -FilePath $PSScriptRoot\Example-TableColumnVisibility.html -ShowHTML { - New-HTMLTable -DataTable $DataTable -Filtering -Buttons columnVisibility, csvHtml5, excelHtml5, pageLength, searchBuilder -} -``` - -- Improve CSV output (UTF8 with BOM) -- Added new options for `New-TableButtonCSV` -- Improve `New-TableButton*` with a few more options -- Added European Union to `New-HTMLMap` -- Added `New-HTMLWizardColor` - allows setting colors for `New-HTMLWizard` (globally) -- Added `New-HTMLTabPanelColor` - allows setting colors for `New-HTMLTabPanel` (globally) -- Fixed `New-HTMLWizard` themes -- Added `New-HTMLTabPanel` themes -- Updated handful of libraries - -## 0.0.191 - 2023.07.04 -- Fix to support PowerShell 7.4 - -## 0.0.190 - 2023.06.11 -- Rename CSS to JS fixing wrong name -- Fix Color for `New-ChartPie`, `New-ChartRadial` -- Jquery 3.6.3 to 3.7.0 -- Forces use of UTF8 for `Add-HTMLScript`, `Add-HTMLStyle` to fix issues with non-ASCII characters on PS 5.1 -- Fixes issue with `New-HTMLTable` sorting buttons in offline mode -- Remove not needed functions -- Removed images for DataTables as no longer nessecary - -## 0.0.189 - 2023.05.26 -- Fixes AlphabetSearch - -## 0.0.188 - 2023.05.08 -- Fix for null handling values in `New-HTMLTable` when using `AllProperties` (real fix in dependant PSSharedGoods) - -## 0.0.187 - 2023.05.08 -- Adds ability to save **HTML** as **ASPX** (just an extension, not actual ASPX file) including pages with navigation. This provides an easy way to run PSWriteHTML in SharePoint Online - -## 0.0.186 - 2023.04.23 -- Fixes `New-HTMLSectionStyle` when used with `New-HTMLMap` -- Improves `New-HTMLMap` with actual configuration features: `New-MapArea`,`New-MapLegendOption`, `New-MapLegendSlice`, `New-MapPlot` - -## 0.0.185 - 2023.04.20 -- Improves SearchBuilder in `New-HTMLTable` [#361](https://github.com/EvotecIT/PSWriteHTML/issues/361) -- Update DataTable libraries and related plugins - -## 0.0.184 - 2023.03.29 -- Fixes `New-HTMLPage` that would overwrite pages with same name. - -## 0.0.183 -- Fixes `AlphabetSearch` being used in `New-HTMLTable` when it shouldn't be used. [#351](https://github.com/EvotecIT/PSWriteHTML/issues/351) - -## 0.0.182 - 2023.02.02 -- Update libraries: - - FullCalendar -- [Fixes Divergent behavior in Ubuntu container (Github Actions)](https://github.com/EvotecIT/PSWriteHTML/issues/370) - -## 0.0.181 -- Update libraries: - - DataTables and related plugins/extensions - - OrgCharts - - FullCalendar - - Jquery - - ApexCharts - - Vis-Timeline - - EasyQRCode - - SmartWizard - - JustGage - - Accordion - - FancyTree - - SmartTabs -- [Fixes HTMLChart lines & bars colors #364](https://github.com/EvotecIT/PSWriteHTML/issues/364) - -## 0.0.180 - 2022.10.25 -- Added `listYear` to `New-HTMLCalendar` that can be used as part of HeaderLeft, HeaderCenter and HeaderRight and InitialView -- Add warning for Add-HTMLScript, Add-HTMLStyle if file doesn't exists. This can be useful when antivirus randomly removes files from module and not tell you about it. -- Update FullCalendar 5.11.3 -- Update JQuery 3.6.0 -- Update JustGage 1.5.1 - -## 0.0.179 - 2022.10.03 -- Improvements for EmailLayoutRow/EmailLayoutColumn - still WIP - -## 0.0.178 - 2022.10.03 -- Add `Height` to EmailLayoutRow - still WIP. Please consider EmailLayout, EmailLayoutRow and EmailLayoutColumn as experimental and subject to change. - -## 0.0.177 - 2022.08.18 -- Fixes `New-HTMLTable` when used with `ArrayJoin` from `New-HTMLTableOption` when DataStore is `HTML` and `GenericList` is used. - -## 0.0.176 - 2022.07.30 -- Fixes Descending order in Tables [#329](https://github.com/EvotecIT/PSWriteHTML/issues/329) - tnx BaTarrY - -## 0.0.175 - 2022.07.08 -- Update moment.js to 2.29.4 (from 2.29.2) to fix security issue - -## 0.0.174 - 2022.05.20 - - Fixes an issue with charts if user used `$Events` variable in their code [#70](https://github.com/EvotecIT/PSWinReporting/issues/70) - -## 0.0.173 - 2022.04.09 - - Update dependencies - - FullCalendar 5.11.0 - - Moment 2.29.2 - - DataTables 1.11.5 and all plugins - - Vis-network 9.1.2 - - Vis-TimeLine 7.5.1 - - ApexCharts 3.35.0 - - Fixes `New-ChartLine doesn't work properly if there's only one` [#314](https://github.com/EvotecIT/PSWriteHTML/issues/314) - -## 0.0.172 - 2022.03.15 - - `New-HTMLHierarchicalTree` added `AutoSize` [Feature/add tree view autosize #313](https://github.com/EvotecIT/PSWriteHTML/pull/313) - tnx RussPitcher - -## 0.0.171 - 2022.03.02 - - Fixes problem with Comparing objects in `New-HTMLTable` and `Out-HTMLView` -## 0.0.170 - 2022.02.14 - - Fixes [ChartLine -Color only affects lines, not labels/numbers](https://github.com/EvotecIT/PSWriteHTML/issues/310) - -## 0.0.169 - 2022.02.13 - - Added `FlattenObject` and `FlattenDepth` parameter to `New-HTMLTable` - - Added `FlattenObject` and `FlattenDepth` parameter to `Out-HtmlView` - - Added `CompareNames` parameter to `New-HTMLTable/Out-HTMLView` for usage in `-Compare` - - Fixes `New-HTMLTable/Out-HTMLView -Compare` for more complicated object, with support for `FlattenObject` and `FlattenDepth` which allows to compare advanced objects - - Fixes `New-HTMLTable/Out-HTMLView -Compare` for IncludeProperty, ExcludeProperty - -## 0.0.168 - 2022.01.31 - - Fixes problem with `Inline` image functionality in `New-HTMLImage` - -## 0.0.167 - 2022.01.28 - - Fixes `New-TableHeader` when FontSize is not set. [#306](https://github.com/EvotecIT/PSWriteHTML/issues/306) - -## 0.0.166 - 2022.01.25 - - Small improvements for New-HTMLTag to catch errors, to not prevent other part of HTML to be displayed -## 0.0.165 - 2022.01.24 - - Added new functionality which is Work in Progress and requires improvements. - - Added `New-HTMLSummary` - - Added `New-HTMLSummaryItem` - - Added `New-HTMLSummaryData` - - Fixed critical bug with files being created in temporary folder unnessesarily. - - Added `New-TableLanguage` to be able to translate tables. -## 0.0.164 - - Improvements (I forgot what I did) -## 0.0.163 - 2021.12.06 - - Fixes `New-TableConditionGroup` where it would set FontSize to 0 when not used -## 0.0.162 - 2021.12.03 - - Fixes `New-TableContent` where it would set FontSize to 0 when not used - - Some documentation updates -## 0.0.161 - 2021.11.29 - - Fixes `FuzzySearch` when multiple tables are involved -## 0.0.160 - 2021.11.28 - - Added `FuzzySearch`,`FuzzySearchSmartToggle` to `New-HTMLTable` - - Added `FuzzySearch`,`FuzzySearchSmartToggle` to `Out-HTMLView` - - Fixed `New-TableAlphabetSearch` beign ignored if `AlphabetSearch` switch is not used -## 0.0.159 - 2021.11.26 - - Fixes `New-ChartLegend` case-senitivity issue [#283](https://github.com/EvotecIT/PSWriteHTML/issues/283) - - Added `Margin` to `New-HTMLSection` - - Added `New-HTMLFrame` - - Added some inline HELP for some commands. Please help where you can. -## 0.0.158 - 2021.07.24 - - 📦 Added support in `New-HTMLTable` to handle null values better - - 🐛 Fixed bug in `Out-HTMLView` which would skip displaying data in some cases -## 0.0.157 - 2021.07.24 - - 📦 Added support in `New-HTMLTable` for array of arrays (useful in case of using $Hashtable.Values that have arrays nested as values) -## 0.0.156 - 2021.07.12 - - 💡 Forced `FontAwesome` icons to be lowercase just in case user (aka me) decides to use uppercase for tabs/wizard/toasts and wonder why it doesn't work -## 0.0.155 - 2021.06.27 - - ☑ Added basic Email Templating (experimental). `EmailLayout`, `EmailLayoutRow`, `EmailLayoutColumn` -## 0.0.154 - 2021.06.22 - - 🐛 Fixes `New-HTMLTable` search builder when using offline mode. [#246](https://github.com/EvotecIT/PSWriteHTML/issues/246) -## 0.0.153 - 2021.06.20 - - 🐛 Fixes `New-ChartDesign` (typo) [#244](https://github.com/EvotecIT/PSWriteHTML/pull/244) - tnnx JSwanson-HoB - - ↗ Updated `ApexCharts` to 3.27.0 - - ↗ Updated `DataTables` to 1.10.25 along with plugins/extensions -## 0.0.152 - 2021.06.05 - - 🐛 Fixes `New-HTMLTable` when using `DefaultSortOrder` [#241](https://github.com/EvotecIT/PSWriteHTML/issues/241) - tnx Jason Rush - - ☑ Improved `New-HTMLTable` to be able to multi-sort [#241](https://github.com/EvotecIT/PSWriteHTML/issues/241) - tnx Jason Rush -## 0.0.151 - 2021.05.31 - - 🐛 Fixes `New-HTMLTableCondition` when using `ROW` switch and when the column doesn't exists - - 🐛 Fixes `New-HTMLTableCondition` when given column name is different case when datastore is `JavaScript` -## 0.0.150 - 2021.05.30 - - Public release, please keep in mind using Navigation/Pages is not yet recommended as changes will follow -## 0.0.150-Alpha04 (prerelease) - 2021.05.30 - - ☑ Added `SimpleFontIcons` library - - 🐛 Fixed `New-HTMLImage/EmailImage` height/width to work correctly in outlook when defining size - - ☑ Added `New-TableButtonSearchBuilder` - - ℹ `New-HTMLTable` by default uses button `SearchBuilder` which should be better fit, location wise, then using `SearchBuilder` switch -## 0.0.150-Alpha03 (prerelease) - 2021.05.19 - - 🐛 Fixed `New-HTMLTabStyle` - - ☑ BackgroundColor doesn't go out of borders anymore - - ☑ Renamed parametrer BorderBackgroundColor to BorderColor -## 0.0.150-Alpha01 (prerelease) - 2021.05.07 - - 🐛 Fixes timeline charts (broken earlier in the preview) - - 🐛 Decimals in `New-ChartPie` should now work correctly -## 0.0.150-Alpha01 (prerelease) - 2021.05.05 - - 🐛 Fixes for charts when using multiple 0 next to each other -## 0.0.149-Alpha9 (prerelease) - 2021.05.04 - - 🐛 Fixes to `ChartLegend` - - ☑ Added `New-ChartRadialOptons` - work in progress/not functional - - ☑ Added `New-ChartDesign` - work in progress/not functional - - ☑ Added `New-CarouselStyle` - place holder/not functional -## 0.0.149-Alpha8 (prerelease) - 2021.04.22 - - 🐛 Fixes issue with `FontsAwesome` in offline mode after recent upgrade - - 💡 Improved spark charts -## 0.0.149-Alpha7 (prerelease) - 2021.04.19 - - 💡 Improved `New-HTMLChart` -## 0.0.149-Alpha6 (prerelease) - 2021.04.19 - - ☑ Added two or more separate y-axis to a line charts [#153](https://github.com/EvotecIT/PSWriteHTML/issues/153) - - ☑ Added ability to mix line charts and bar charts - - 💡 Improved `New-ChartDataLabel` - - ☑ Added `New-ChartMarker` - - 💡 Improved `New-ChartLine` -## 0.0.149-Alpha5 (prerelease) - 2021.04.18 - - Libraries - - 🔨 Upgraded `Apex Charts` from 3.26.0 to 3.26.1 -## 0.0.149-Alpha4 (prerelease) - 2021.04.16 - - 🐛 Fixes issues where `Title` of `New-HTMLTable` wouldn't be used for buttons in certain circumstances -## 0.0.149-Alpha3 (prerelease) - 2021.04.16 - - Added more properties for `New-CalendarEvent` and some help content - - Libraries - - 🔨 Upgraded `FullCalendar` from 5.5.1 to 5.6.0 -## 0.0.149-Alpha3 (prerelease) - 2021.04.16 - - Added ability to control menu items width in top navigation -## 0.0.149-Alpha2 (prerelease) - 2021.04.15 - - Padding for logo in navigation changed -## 0.0.149-Alpha1 (prerelease) - 2021.04.15 - - Added **Navigation** - this is highly experimental and requires a lot more work. Please don't use it in production because it can change daily. - - `New-HTMLNav` - navigation option 1 can be used with: - - `New-NavItem` - - `New-NavLink` with nesting - - `New-HTMLNavFloat` - navigation option 2 can be used with: - - `New-NavFloatWidget` - - `New-NavFloatWidgetItem` - - `New-HTMLNavTop` - navigation option 3 can be used with: - - `New-NavTopMenu` - - `New-NavLink` - - ➕ Added multiple new icons for `Fonts Awesome` - - 🐛 Fixed `New-TableEvent`. It would not display 0 records if there are no matching records - - 🐛 Fixed `New-ChartAxisX` usage in `New-HTMLChart` [#225](https://github.com/EvotecIT/PSWriteHTML/issues/225) - - Libraries - - 🔨 Upgraded `FontsAwesome` from 5.15.1 to 5.15.3 - - 🔨 Upgraded `JustGage` from 1.4.1 to 1.4.2 - - 📦 Added `Material Design Iconic Font` 2.2.0 required by some features until replaced later on -## 0.0.148 - 2021.04.02 - - 🐛 Conditional formatting/groups should now work correctly in Internet Explorer - had to downgrade some JS capabilities -## 0.0.147 - 2021.04.01 - - 💥 **Potentially breaking change**: due to changes in some defaults things could move around - for example legend may not always start at the bottom, it shouldn't affect crucial parts tho - - 💡 Improved `New-ChartPie`,`New-ChartRadial`,`New-ChartLine`, `New-ChartBar` to convert $null or empty string as 0 - - 💡 Improved `New-ChartAxisY` with more parameters and now works within `Bar Charts` - - 📦 Added back `New-ChartSpark` (I've removed it before for some reason) - - 💡 Improved `New-ChartLegend` with more parameters - - 💡 Improved `Title*` options in `New-HTMLChart` - - 📦 Added `Subtitle*` options in `New-HTMLChart` -## 0.0.146 - 2021.03.23 - - ☑ Improves `New-TableConditionGroup` - - ☑ Added `Row` switch -## 0.0.145 - 2021.03.20 - - ☑ Improves `New-TableCondition` - - ☑ Added missing `ne` condtion (not equals) - - ☑ Added `ReverseCondition` parameter which allows `ConditionValue` compared to `ColumnValue`, rather then default `ColumnValue` to `ConditionValue`. - - ☑ Added condition `in` and `notin` -## 0.0.144 - 2021.03.20 - - ☑ Improves `New-TableCondition` and `New-TableConditionGroup` with styles when condition FAILS - - ☑ This allows for example `New-TableCondition -Name 'BoolAsString' -Value $true -BackgroundColor Yellow -Color Green -Operator eq -ComparisonType string -Inline -FailBackgroundColor Green` -## 0.0.143 - 2021.03.18 - - ☑ Improves `New-TableCondition` by detecting non-existing column names - - ☑ Improves `New-TableConditionGroup` by adding logic operator NONE - - ☑ Fixes `New-TableConditionGroup` with `Inline` switch -## 0.0.142 - 2021.03.17 - - ☑ Improves `New-HTMLText` URL Link markdown parsing [#216](https://github.com/EvotecIT/PSWriteHTML/pull/216) - thank you **Alan Longstaff** -## 0.0.141 - 2021.03.17 - - ☑ Added `IncludeProperty`/`ExcludeProperty` to `New-HTMLTable`/`Out-HTMLView` for easy excluding properties we don't need - - ☑ Example `Get-Process | Out-HtmlView -ExcludeProperty Name -First 3` -## 0.0.140 - 2021.03.17 - - ☑ Changed `New-TableCondition` parameter name from `CaseInsensitive` to `CaseSensitive` - - ☑ This means by default conditions of strings are not case sensitive -## 0.0.139 - 2021.03.16 - - ☑ Improved `Out-HTMLView` -## 0.0.138 - 2021.03.16 - - ☑ Added alias for `New-HTMLTableOption` - - ☑ Forces `Table` within `EmailBody` to respect `font-size` and other style options given to EmailBody -## 0.0.137 - 2021.03.16 - - ☑ Fix for timeline charts not working due to date conversion - - ☑ Fix for chart events (I don't know how i test things) - - ☑ Library - - ☑ Upgrade ApexCharts from `3.22` to `3.26` - - ☑ Upgrade VisNetwork from `9.0.3` to `9.0.4` -## 0.0.136 - 2021.03.14 - - ☑ Fixed - Values with decimals do not auto-find within html table when clicking on charts/pies [#209](https://github.com/EvotecIT/PSWriteHTML/issues/209) - - ☑ Table Conditioning - highly improved table conditions. This requires some documentation/blog post - - ☑ Added `New-TableCondtionGroup` - - ☑ Improved `New-TableCondition` - - ☑ **Let's hope I didn't break anything** - - ☑ Added ability to configure ArrayJoin/ArrayJoinString for DataStore HTML using `New-HTMLTableOption` - - ☑ Added `New-HTMLMap` experimental cmdlet - - ☑ Due to that cmdlet size have become larger - - ☑ Library - - ☑ Updated DataTables `1.10.21` to `1.10.24` - - ☑ Updated MomentJS to `2.29.1` -## 0.0.135 - 2021.03.07 - - ☑ Added ability to create plugins for `PSWriteHTML` -> Example: [PSWriteHTML.Maps](https://github.com/EvotecIT/PSWriteHTML.Maps) - - ☑ Keep in mind that module is not required as the functionality is part of the PSWriteHTML module anyways - it's just an example on how to do it yourself - - ☑ Removed `Adobe` icon from `FontsAwesome (Brands)` - - ☑ Library - - ☑ Updated `VisNetwork` from `9.0.2` to `9.0.3` - - ☑ Added `Width` parameter to `New-HTMLSection` which allows `New-HTMLSection -Width 30%` or similar - - ☑ Added `Title` field in New-DiagramNode - - ☑ Improves ability to provide basic HTML in Label/Title in `New-DiagramNode` -## 0.0.134 - 2021.03.05 - - ☑ Fixes wrong register argument completer for `New-HTMLTextBox` - - ☑ Fixes SearchPane not completly visible [#193](https://github.com/EvotecIT/PSWriteHTML/issues/193) -## 0.0.133 - 2021.03.04 - - ☑ Library - - ☑ Updated DataTables ColReorder 1.5.2 -> 1.5.3 - - ☑ Updated DataTables FixedColumns 3.3.1 -> 3.3.2 - - ☑ Updated DataTables FixedHeader 3.1.7 -> 3.1.8 - - ☑ Updated DataTables 1.10.22 -> 1.10.23 - - ☑ Updated DataTables KeyTable 2.5.3 -> 2.6.0 - - ☑ Updated DataTables Responsive 2.2.6 -> 2.2.7 - - ☑ Added `DataTables SearchBuilder` 1.0.1 - - ☑ Updated DataTables SearchPanes 1.2.1 -> 1.2.2 - - ☑ Updated FancyTree `2.33` -> `2.38` - - ☑ Updated JustGage `1.4.0` -> `1.4.1` - - ☑ Updated FullCalendar `5.1.0 -> 5.5.1` - - ☑ Added DataTables Search Alphabet `1.0.0 with personal PR` - - ☑ Updated `OrgChart` from `2.2.0` to `3.1.0`, `3.1.1` - - ☑ Updated `VisData` from `7.1.1` to `7.1.2` - - ☑ Updated `VisNetwork` from `8.5.5` to `9.0.2` - - ☑ Updated `VisTimeline` from `7.4.2` to `7.4.6` - - ☑ Updated `EasyQrCode` from `4.3.0` to `4.3.2` - - ☑ Added `DataTables Select` -> `1.3.1` - - ☑ Added ability `OverwriteDOM` in `New-HTMLTable` to provide granular option how options are visually positioned - - ☑ Added ability `SearchBuilder` in `New-HTMLTable` for multi-condition search - - ☑ Added ability `SearchHighlight` in `New-HTMLTable` - - ☑ Added ability `AlphabetSearch` in `New-HTMLTable` - - ☑ Fixes `New-ChartLegend` hex colors but most likely all other cmdlets where more than one HEX based color was used - - ☑ Added `HeaderTextSize` to `New-HTMLSection` - - ☑ Added `New-TablePercentageBar` for `New-HTMLTable` - - ☑ Added `New-ChartEvent` - - ☑ Fixed `New-HTMLTable -DataStore JavaScript` when dollar ($) is used within column name or content - - ☑ Improved `New-HTMLTableOption` added `ArrayJoin`,`ArrayJoinString` - - ☑ Fixed `New-HTMLTable` export to excel would only export visible columns. Exports all again - - ☑ Improved some CDN handling -## 0.0.132 - 2021.02.02 - - ☑ Fixed `Format/Minify` error message when `PSParseHTML` is not installed. - - ☑ Fixed Table headers pushed to the left when using ScrollX with Tabs [#191](https://github.com/EvotecIT/PSWriteHTML/issues/191) -## 0.0.131 - 2021.01.29 - - ☑ New-HTMLTable AjaxJSON fixed - [#189](https://github.com/EvotecIT/PSWriteHTML/issues/189) -## 0.0.130 - 2021.01.16 - - ☑ Update `New-HTMLTableStyle` with more options and functionality -## 0.0.129 - 2021.01.11 - - ☑ Update `New-HTMLText` regex for urls - tnx chrisdent! -## 0.0.128 - 2021.01.09 - - ☑ Fixed Export to Excel deletes all commas [#182](https://github.com/EvotecIT/PSWriteHTML/issues/182) -## 0.0.127 - 2021.01.06 - - ☑ Reverted ApexCharts to 3.22 from 3.23 (offline version) -## 0.0.126 - 2021.01.06 - - ☑ Reverted ApexCharts to 3.22 from 3.23 - - ☑ During tab switch it would sometimes fail to display charts properly - reported to apex [#2137](https://github.com/apexcharts/apexcharts.js/issues/2137) -## 0.0.125 - 2021.01.02 - - ☑ Easy QR Code update `4.2.1` to `4.3.0` -## 0.0.124 - 2021.01.02 - - ☑ Added `New-HTMLQRCode` to provide HTML based QR codes -## 0.0.123 - 2020.12.23 - - ☑ **Potentially Breaking Changes** - - ☑ Removed custom Headings (H1,H2,H3,H4,H5,H6) -> `New-HTMLHeading` still works just using defaults - - ☑ It was totally inconsistent between H1-H6, probably needs new CSS for those later on that will be consistent and inline with other code - - ☑ Removed H7 heading totally - it got there by some copy paste from internet - - ☑ Removed custom Horizontal Line (HR) -> `New-HTMLHorizonalLine` still works just using defaults - - ☑ Not looking good, the default one looks better, more consitent but may need some work in the future - - ☑ `New-HTMLLogo` is now marked as obsolete. It was there from day one but it's not really customizable. New way will be given sometime in the future - - ☑ It still works, CSS code is only added when it's used - - ☑ Removed custom link highlights CSS. Not sure if it was ever used, hopefully not. May come back in future in better form - - ☑ When `EmailBody` is used it will no longer put `JavaScript` or `CSS` inside HTML for advanced features such as DataTables, or anything that used to be there - - ☑ This is to make sure EMAIL HTML is as small as possbile - - ☑ JavaScript in emails won't work in 90% of cases and it would just add to the junk in HTML - - ☑ However if EmailBody is used within `Email` and `AttachSelf` is used it will generate same HTML using full JS/CSS code - - ☑ This ensures that self attach should work as it used to, at the same time providing small HTML in email - - ☑ JavaScript/CSS is now marked as safe for email or normal HTML reports/pages. What that means some CSS/JS is marked only as being added to Email or vice versa. - - ☑ **Improvements to CSS** - - ☑ The goal of PSWriteHTML is to get into state where only really nessecary code is added. Less CSS is now included by default - - ☑ Hopefully there are no major problems from those changes - - ☑ The default margin for all elements should be `5px`, however when used within email it will be set to `0px` - - [ ] This mainly is important for Images/Text/Headings but all other html objects such as tables and so on, also are supposed to have `5px` margin - - ☑ It would seem `Roboto Condensed` or other fonts defined in font-family across code were never used and defaults were kicking in - - ☑ I've now fixed it so `Roboto Condensed` is used when `Online` mode - - ☑ In `Offline` mode it will still go back to `Sans-Serif` (usually `Arial`) - - ☑ I've removed other `font-families` from multiple CSS files to make it visually consistent - - [ ] May need to be revisited if `Roboto Condensed` is best choice - - ☑ Update to `FontsAwesome` from 5.14 to 5.15.1 - - ☑ Update to `FontsAwesome` to work offline - - ☑ Unfortunetly this means 500KB file size in CSS module size and output HTML file is 500KB bigger - - ☑ I'm skipping including of TTF/SVG/EOT types as WOFF and WOFF2 should be enough for modern browsers - - ☑ **Other changes** - - ☑ Changed Tables `row height` to fit more data - - ☑ Changed Tables `noscript` version (email + no javascript) to fit more how DataTables looks like - - ☑ Improved HTMLTable with `Simplify` switch positioning - - ☑ `New-HTML` added parameter `AddComment` - by default comments are not added to code now - - ☑ Added `link` preloading for styles - not sure if it will help but why not - - ☑ Fix for `New-DiagramOptionsLinks` setting lenght which would have resultant html error - - ☑ `EmailTextBox` renamed to `New-HTMLTextBox`. `EmailTextBox` added as alias to that command - - ☑ Added `Format` and `Minify` switches to `New-HTML` and `EmailBody`. Those will only be working if [PSParseHTML](https://github.com/EvotecIT/PSParseHTML) is installed. - - [ ] `PSParseHTML` is not installed by default and you need to install it separatly `Install-Module PSParseHTML`. There is no intention of bundling it at this moment. - - [ ] **Known issue**: Removes comment required for `Internet Explorer` javascript to not prompt when using as local file - - ☑ Improved `New-HTMLTimelineItem` generated HTML when no color is used - - ☑ Added `Enable-HTMLFeature` to bring JS/CSS even if it's not used - - ☑ `Calendars` & `DataTables` & `Diagrams` should now resize/fit properly on Global Tab change - - ☑ `Calendars` & `DataTables` & `Diagrams` are now resize/fit properly on Wizard Step Change - - ☑ `Calendars` & `DataTables` & `Diagrams` are now resize/fit properly on Tab Panel Tab Change - - ☑ Tracks all `tables` with `Fixed Headers`/`Footers` and `disables`/`enables` them on `tab switch`/`wizard step` switch / `tab panel` switch - - ☑ **Diagram Changes** - - ☑ `New-DiagramLink` - added `SmoothType`, `SmoothForceDirection` and `SmoothRoundness` - - ☑ `New-DiagramLink` - fixed `FontAlign` which was using wrong `validateset`. - - ☑ `Diagrams` should now fit properly upon changing tabs. It used to hide outside of screen. - - ☑ **Library updates** - - ☑ Update of `Apex Charts` to 3.23.0 - - ☑ Update of `VisJS` to 8.5.5 -## 0.0.122 - 2020.11.18 - - ☑ Added `New-ChartDataLabel` currently supported in `New-ChartTimeLine` only - - ☑ Improvements `New-ChartTimeLine` - added by Splaxi [#170](https://github.com/EvotecIT/PSWriteHTML/pull/170) - Thank you (WIP) - - ☑ Added `New-ChartToolTip` currently supported in `New-ChartTimeLine` only - added by Splaxi [#170](https://github.com/EvotecIT/PSWriteHTML/pull/170) - Thank you (WIP) - - ☑ Improvements `New-ChartAxisY` - - ☑ Added parameter for `EmailBody`,`New-HTMLText`, `New-HTMLSpanStyle` - `LineHeight`. This allows for controling line height. -## 0.0.121 - 2020.11.15 - - ☑ Added `Accordion` (alpha) - - ☑ `New-HTMLAccordion` - - ☑ `New-AccordionItem` - - ☑ Fix for `New-HTMLDiagram` to disable loader if physics is disabled, as diagram wouldn't load, and loader is not nessecary - - ☑ Fix for `New-HTMLDiagram` to load icons properly in Chrome, IE still requires press - - [ ] VisNetwork update from `8.5.2` to `8.5.3` -## 0.0.120 - 2020.11.07 - - ☑ Fixes partially `New-HTMLTable -FixedFooter` issue [#166](https://github.com/EvotecIT/PSWriteHTML/issues/166) - - ☑ ApexChart update 3.20 to 3.20.1 - - ☑ VisNetwork update 8.4.1 to 8.5.2 - - ☑ VisTimeLine update 7.3.7 to 7.4.2 -## 0.0.119 - 2020.10.28 - - ☑ Added ability to use nested lists in `New-HTMLList`,`EmailList` -## 0.0.118 - 2020.10.27 - - ☑ Improvements to tab switching very fast which could cause an error [#126 DATATABLE warning - Cannot reinitialize DataTable](https://github.com/EvotecIT/PSWriteHTML/issues/126) - - [ ] Added UseDefaultCredential for `EmailServer` -## 0.0.117 - 2020.10.25 - - ☑ Fix for issue when Charts are used with Diagrams - - ☑ `ApexCharts` update to 3.22 from 3.20.2 - - ☑ `Vis.js` update to 8.4.1 from 8.3.2 - - ☑ Small update to `New-HTMLList` with `Reversed` parameter - - ☑ Fix for missing responsive button for `New-HTMLTable` - - ☑ Updates to offline `DataTables` library -## 0.0.116 - 2020.10.21 - - ☑ Charts improvement for `Flex` usage (doesn't require `Panel` anymore for positioning) -## 0.0.115 - 2020.10.21 - - ☑ Updates to DataStore Javascript -## 0.0.114 - 2020.10.20 - - ☑ Small fix to `New-HTMLTable` with DataStore `JavaScript` -## 0.0.113 - 2020.10.19 - - ☑ `New-HTMLTable` - changes/improvements/adds - - ☑ Reworked JS/CSS loading for DataTables. It should now load less JS/CSS code by default making HTML smaller and more readable especially if not using all features - - [ ] Some more work in this area is required. Small breaking change was introduced - - ☑ **Breaking Change** - Renamed `DisableColumnReorder` to `EnableColumnReorder` - - [ ] The reason for this is that the functionality is most likely used by very few people if at all - - [ ] This, in turn, allows me to load JS/CSS for ColumnReordering only when someone requests for this functionality - - ☑ Added `EnableRowReorder` - - ☑ Added `EnableKeys` (excel like movement) to `New-HTMLTable`. Probably could add more options for this via nested `New-TableXXX` - - ☑ Added `PagingLength` to `New-HTMLTable`. This improves `PagingOptions` / `DisablePaging`. - - If user doesn't set Paging Length it will use defaults - - If user doesn't set Paging Options it will use default `@(15, 25, 50, 100)` - - If user doesn't set Paging Length, but sets different Paging Options such as `@(5,10,15)`, initial paging length will be set to lowest value `5` - - If user sets paging options and sets paging length it will set as requested - - ☑ Added `EnableScroller` to `New-HTMLTable`. This improves `ScrollY`. It allows to load data as it appears rather than loading everything. Should be plenty useful in JavaScript DataStore for large datasets - - [ ] Enabling Scroller doesn't require ScrollY enablement, but it will use ScrollSizeY default 500px. You can change it tho. - - ☑ Added `EnableAutoFill` to `New-HTMLTable` - - ☑ Improved `New-HTMLTable` to load only required CSS/JS (hopefully nothing will be broken) - - ☑ Updated `Out-HTMLView` with all new and old parameters to keep it synced with same the features as `New-HTMLTable` - hopefully, I didn't break anything - - ☑ Updated some `DataTables` JS/CSS versions - - [ ] `New-HTMLTableOption` allows now to define `BoolAsString`, `NumberAsString` and `DateTimeFormat` - - [ ] This only works in `JavaScript` and `AjaxJSON` datastore. - - [ ] This allows one to better control how they want their bools, numbers, and DateTime displayed - - [ ] For example: `New-HTMLTableOption -DateTimeFormat "yyyy-MM-dd HH:mm:ss" -BoolAsString` - - [ ] It will make sure all dates are converted to their string representation as requested - - [ ] Default DateTime is `yyyy-MM-dd HH:mm:ss` - - [ ] This is possible thanks to `ConvertTo-JsonLiteral` which is my own implementation of `ConvertTo-JSON` - - ☑ Navigation Functionality (WIP) - - ☑ Added `New-HTMLNav` command (WIP) - - ☑ Added `New-HTMLNavLink` command (WIP) - - ☑ Wizard Functionality - - ☑ Added `New-HTMLWizard` - - ☑ Added `New-HTMLWizardStep` - - ☑ Other - - ☑ Changed `New-HTMLText` to add `5px` margin. Hopefully things are not affected. - - ☑ Added `New-HTMLTabPanel` - additional way to define tabs - - ☑ Updated `JustGate` from 1.3.5 to 1.4.0 - - ☑ Updated `EnlighterJs` from 3.0 to 3.4.0 - - ☑ Small updates to `New-HTMLCodeBlock` - - ☑ Fix for `New-HTMLChart` broken `Title` parameter - - ☑ `New-HTMLList` and `New-HTMLListItem` updated with `FontSize` -## 0.0.112 - 2020.10.06 - - Fixed issue with x2 PDF Export button - [If ScrollY is selected the pdf button is doubled then #154](https://github.com/EvotecIT/PSWriteHTML/issues/154) - tnx Jekastr - - Better handling of empty data in `New-HTMLTable` -## 0.0.111 - 2020.10.05 - - Added `New-HTMLOrgChart` (WIP) - - Added `New-OrgChartNode` (WIP) -## 0.0.110 - 2020.09.29 - - Fix for `New-HTMLImage` messed up height with width -## 0.0.109 - 2020.09.28 - - If no author is provided meta is not added - - `EmailText` `size` parameter supports the usual settings as described below - - Removed `EmailText` and added it as an alias to `New-HTMLText` which does the same thing - - Renamed `EmailHTML` to `Add-HTML`, added `EmailHTML` as alias - this allows to inline any code wherever it's used - - Added `EmailImage` as alias to `New-HTMLImage` - - Added `Inline` switch to `New-HTMLImage (EmailImage)` which embeddes given url/file image directly into HTML - - Improved `New-HTMLImage/EmailImage` - - Prevents errors `New-HTMLTable` if null is passed as the first element in DataTable (skips processing) -## 0.0.108 - 2020.09.23 - - Added escaping regex for string comparison during `New-TableEvent` -## 0.0.107 - 2020.09.23 - - Fix for Table Redraw/Calendar Redraw when tab switching/section collapsing -## 0.0.106 - 2020.09.23 - - Fix for `New-TableEvent` not working properly for column id different than `1` - - Improvements to `New-TableEvent` introducing Source/Target columns with Source Column Names support -## 0.0.105 - 2020.09.23 - - Improved `New-HTMLTable` - removed page button if `DisablePaging` or `ScrollY` is selected - - Updated PSD1 to a better version - - Fix for `New-HTMLTable` always forcing to HTML if not global option was used -## 0.0.104 - 2020.09.14 - - Added `notlike`/`notcontains` operators to `New-TableCondition` - - Fixed `like/notcontains` operators for JavaScript datasource in `New-TableCondition` -## 0.0.103 - 2020.09.13 - - Fix for wrong custom CSS placement -## 0.0.102 - 2020.09.13 - - **Updates** - - Fix for `New-DiagramEvent` to work while `FontIcons` are used - - Some improvements to `New-HTMLPanel` to better positioning Diagrams - - Added Loading Bar to `New-HTMLDiagram`. You can disable it using the `DisableLoader` switch. -## 0.0.101 - 2020.09.12 - - **Updates** - - ☑ Added `Transpose` to `New-HTMLTable`/`Out-HtmlView` -## 0.0.100 - 2020.09.12 - - **Library updates** - - Update to `Apex Charts` from 3.20.0 to 3.20.1 - - **Updates** - - ☑ Fix long-lasting issue with loading `FontIcons` in diagrams. Should be visible now. - - ☑ Support for nested hashtables `ConvertTo-CascadingStyleSheets` - - ☑ Fix/workaround for IE11 issue with section not showing any data, broken in 0.0.99 -## 0.0.99 - 2020.09.07 - - **Notes** - - ☑ `UTF8` will be set by default for `HTML`. `Email` will pick content encoding from `HTML` - - ☑ It was already set for `HTML` for `charset` so just making sure it's all the same - - ☑ Encoding parameter for `EmailOption` and `Email` are DEPRECATED - - ☑ Whatever you set there doesn't matter - it will always be set to `UTF8`. From my tests setting it to anything else messes up display in some clients - - ☑ While not really breaking change, just thought I would make sure people are aware - - ☑ The reason is HTML was always `UTF8` and setting it up on transport level to `Unicode` or other encodings would break things - - ☑ In outlook it wouldn't matter as it would fix it, but in other clients such as Thunderbird it would go nuts - - **Library updates** - - Update to `vis-network` from 8.2.1 to 8.3.2 - - **New/Non-Breaking** - - ☑ Added aliases for `New-HTMLTableOption` - - ☑ Fixes for Request Configuration for Sections and Panels - - ☑ Fixes meta tags for HTML4/HTML5 - - ☑ Addeed **NoClosing** parameter to `New-HTMLTag` - - ☑ Improvements to `Section` Hiding horizontally and vertically - - ☑ Improvements to diagram resizing when section resizes - should be no need to resize diagram anymore -## 0.0.98 - 2020.08.30 - - **New/Non-Breaking** - - ☑ Added `DataStoreID` to `New-HTMLTable` for use with `DataStore = JavaScript` - - ☑ This allows multiple tables to use the same data. Useful if you want to present the same data in different tables across a single HTML file. - - ☑ Fixes for JavaScript datastore and conditional formatting -## 0.0.97 - 2020.08.29 - - **Breaking changes** - - ☑ Diagrams - - ☑ New-DiagramLink - - [ ] `ArrowsToEnabled` -> `nullable bool` replaced with `switch` - - [ ] `ArrowsMiddleEnabled` -> `nullable bool` replaced with `switch` - - [ ] `ArrowsFromEnabled` -> `nullable bool` replaced with `switch` - - [ ] `ArrowStrikethrough` -> `nullable bool` replaced with `switch` - - [ ] `Chosen` -> `nullable bool` replaced with `switch` - - [ ] `FontSize` -> `int` replaced with `object` - check notes in `0.95` - - [ ] `FontStrokeWidth` -> `int` replaced with `object` - check notes in `0.95` - - **New/Non-Breaking** - - ☑ New-DiagramNode - - [ ] Exposed `ArrowsToEnabled`, `ArrowsMiddleEnabled`, `ArrowsFromEnabled` - - ☑ Update to Diagram Height accepting multiple size values - - ☑ This allows for `New-HTMLDiagram -Height 'calc(100vh - 50px)'` which fills whole screen (within section) - - ☑ Or this `New-HTMLDiagram -Height 'calc(100vh - 50px)' -Width '50vw'` although not that useful, as flex fixes most of it - - ☑ Updates `New-DiagramOptionsPhysics` - exposed a bunch of new options plus help - - ☑ Updates `New-DiagramOptionsLayout` - added some help and new options - - **Updated library** - - ☑ `Vis-network` to 8.2.1 -## 0.0.96 - 2020.08.28 - - ☑ It seems SearchPanes from DataTables conflict with `New-HTMLDiagram` - - ☑ Separated that library to be added only on demand -## 0.0.95 - 2020.08.27 - - **Notes** - - I'm reworking CSS model in which PSWriteHTML works allowing for more consistent design and more customization options. This means some breaking changes will happen soon enough. - - FontSize will be reworked for most commands (as I get to them) to take `[int]` input but also `[string]` input - - If `[int]` is provided it assumes size given in `px`. If text is provided it takes it as is. - - If `15` this means `15px` - - If `15px` this means `15px` - - If `15pt` this means `15pt` - - If `'15'` this means `15px` as it will convert to `[int]` first - - Anything else will be treated as is meaning you know what you are doing - - **Breaking changes** - - ☑ Default Font Size for everything is `8pt`. This includes: - - ☑ Tabs used to have `15px`. Now by default `8pt`. You will need `New-HTMLTabOption -FontSize '15px'` or `New-HTMLTabOption -FontSize 15` to set default fontsize for Tabs to it's old value (along with other customizations if needed) - - ☑ Inputs for Tables (Filtering) having static `8pt` - - **Improvements** - - ☑ `New-HTMLMain` - allows customizing font size, font type, background color, and text color globally - this will overwrite defaults as described above - - ☑ Fix TempFilePath for `Email` to work correctly on MacOS/Linux - tnx roberttoups [#146](https://github.com/EvotecIT/PSWriteHTML/pull/146) - - ☑ Auto-wrapping of Tabs is enabled - can be disabled via `New-HTMLTabOption` - - ☑ Bunch of options to control wrapping/direction of tabs via `New-HTMLTabOption` - - ☑ Ability to define `RowElements` in `New-HTMLTabOption` to force number of tabs per row - - ☑ Fixed BackgroundColor for `New-HTMLTabOption` - - ☑ Removed `default.css` in favor of native powershell css - - ☑ `New-HTMLTable` warning - `Hiding footer while filtering is requested without specifying FilteringLocation to Top or Both` - - ☑ Fixed broken `Tab` switching in **Internet Explorer 11** - - ☑ Added basic support for `SearchPane` within `New-HTMLTable` - - ☑ Fixed broken `Tables` refresh on `Tabs` when using named `Tables` - - ☑ Fixed `New-HTMLTable`/`Out-HTMLView` with `-AllProperties` displaying wrong properties for IDictionary objects - - ☑ Fixed `New-HTMLTable` properly displaying string/int and other data if passed as a single value - - ☑ Fixed `New-HTMLTable` properly display ordered dictionary, array of strings, array of singular objects, PSCustomObject with 1 column - - ☑ Fixed `New-HTMLTable` properly displaying column name as `Name` in PowerShell 5.1 when used with int/string - - ☑ Fixed `New-HTMLText` font size was ignored. Also now supports 15, 15px, 15pt as described in notes. - - ☑ Resolves peformance issues by adding new parameter `DataStore` for `New-HTMLTable` to use with large tables - - **Added cmdlets** - - ☑ `New-HTMLTableStyle` - - ☑ `New-HTMLTableOption` - added to provide `DataStore` parameter which globally sets required store, may be used for other things in future - - ☑ `New-ChartTimeLine` - added basic support for TimeLine Charts - - **Renamed cmdlets** (non-breaking change via aliases) - - ☑ `New-HTMLTabOption` -> `New-HTMLTabStyle` - - ☑ `New-HTMLSectionOption` -> `New-HTMLSectionStyle` - - **Library updates** - - `DataTables` and all related libraries - - `JQuery` to 3.5.1 - - `ApexCharts` updated from 3.18.2 to 3.20 - - `FontAwesome` updated from 5.13 to 5.14 -## 0.0.94 - 2020.08.18 - - Public - - ☑ Added `New-TableEvent` for `New-HTMLTable` **experimental** -## 0.0.93 - 2020.08.16 - - Public - - Fixes - - ☑ Fix for `New-HTMLTabOption` switch "-SelectorColor" sets the color permanently [#128](https://github.com/EvotecIT/PSWriteHTML/issues/128) - - ☑ Fix for `InvokeHTMLTags` in `New-HTMLTable` - replacement of (`&` to `&`) and (` ` to ``) - - ☑ Before it would try to change from `' ` to `` which is wrong. Hopefully, nothing will be broken after that - - Improvements - - ☑ Choosing colors should be easier (wildcard added before and after) - - ☑ Make it optional for `New-HTMLTab` to force TextTransform (uses global) - - ☑ `New-HTMLSection`/`New-HTMLPanel` were updated to support additional options - - New - - ☑ Added `ConvertTo-CascadingStyleSheets` - converts hashtable into CSS - - ☑ Added `New-HTMLSectionOption` - **experimental** - - ☑ Added `New-HTMLPanelOption` - **experimental** - - ☑ Added `AnchorName` for sections and panels - - ☑ Added `New-HTMLAnchor/New-HTMLLink` - - Internal - - ☑ Support internally for `Custom Header CSS`, `Custom Footer CSS` -## 0.0.92 - 2020.08.08 - - Fixes `New-HierarchicalTreeNode` not recognized in latest modules [#141](https://github.com/EvotecIT/PSWriteHTML/issues/141) -## 0.0.91 - 2020.08.03 - - Refreshing release - fix for Remove-EmptyValue -## 0.0.90 - 2020.07.27 - - Added `New-TableColumnOption` for `New-HTMLTable` - tnx zsoch [#138](https://github.com/EvotecIT/PSWriteHTML/pull/138) - - Removed dead/old `FullCalendar` js code - - Updated `JustGage` to 1.3.5 -## 0.0.89 - 2020.07.23 - - Fix for Tooltips in FullCalendar 5.1 - tnx smasterson [#137](https://github.com/EvotecIT/PSWriteHTML/pull/137) -## 0.0.88 - 2020.07.21 - - Updated `New-HTMLCalendar` with more options for `InitialView` parameter - tnx smasterson [#135](https://github.com/EvotecIT/PSWriteHTML/pull/135) -## 0.0.87 - 2020.07.20 - - Updated FullCalendar library to 5.1 from 4.3 - - `New-HTMLCalendar`- removed `plugins` parameter (no longer required) - - `New-HTMLCalendar` - removed `WeekNumbersWithinDays` (no longer required) - - `New-HTMLCalendar` - added `InitialView` parameter - - Fixed Tabs switching with multiple tables on each tab fails [#134](https://github.com/EvotecIT/PSWriteHTML/issues/134) - - Fixed Tabs switching with calendars [#133](https://github.com/EvotecIT/PSWriteHTML/issues/133) -## 0.0.86 - 2020.07.14 - - Fix for missing `Get-TemporaryDirectory` during merge - damn nested ASTTokens - - Module is now signed (hopefully that doesn't break anything) -## 0.0.85 - 2020.06.27 - - Update `New-HTMLSpanStyle` with some protection for errors - - Fix from PSSCriptAnalyzer - The Variable 'Event' is an automatic variable that is built into PowerShell, assigning to it might have undesired side effects. If the assignment is not by design, please use a different name. -## 0.0.84 - 2020.06.11 - - `Colors` autocompleter should be now a bit smarter - - Added `Online` to `EmailBody` - - `EmailBody` can be used separately now to generate HTML in case someone would like to use it with their own Send Email - - Say .. using `Mailozaurr` (new PowerShell module) - - `Email` has `OutputHTML` parameter which can send email but also output HTML for whatever reason - -## 0.0.83 - 2020.05.27 - - Fix for `New-HTMLMain` and junk code showing up in HTML - -## 0.0.82 - 2020.04.23 - - `New-HTMLTable` added ability to define Title which will be used as the filename when exporting - - If no Title is defined title is used from `New-HTML` - - If no Title is provided name of button will be used (default) - - `New-TableButtonXXX` also have `Title` field which allows different naming for buttons - -## 0.0.81 - 2020.04.18 - - `New-HTMLDiagram` keeps expanding without height bug fixed ([#113](https://github.com/EvotecIT/PSWriteHTML/issues/113)) with huge help from Thomaash - -## 0.0.80 - 2020.04.13 - - **DEPRECATED**: `UseJavaScriptLinks` and `UseCssLinks` for `New-HTML`. Use `Online` switch instead. - - Updated Vis.JS to 7.5.2 - - Updated FontAwesome to 5.13 and hopefully made it available offline - - Updated ApexCharts to 3.18.1 - - Changed default for Email to Offline. Use `Online` switch to minimize content. - - `New-HTMLTable` -HideButtons added [#114](https://github.com/EvotecIT/PSWriteHTML/issues/114) - -## 0.0.79 - 2020.03.24 - - Typo fixes for Suppress - - Added `AutoSize` parameter for `New-HTMLTable`/`EmailTable` - - `Out-HtmlView` switched to `Offline` mode by default. Added `Online` switch. - - Considering same approach to New-HTML (by default it's offline, but naming convention `UseJavaScriptLinks` and `UseCssLinks` is a bit weird) - -## 0.0.77 - 2020.03.04 - - Updates to New-HTMLStatusItem [#111](https://github.com/EvotecIT/PSWriteHTML/pull/111) - tnx jimmy58663 - - Support for FontAwesome, More colors and Hex. - - Fixes to New-HTMLHeading color property being empty - -## 0.0.76 - 2020.02.07 - - Added -PreventShowHTML to Out-HtmlView for quick use with Path. - -## 0.0.75 - 2020.02.07 - - Improvment for very long words in New-HTMLTable and New-TableContent using WordBreak parameter - issue [#107](https://github.com/EvotecIT/PSWriteHTML/issues/107) - -## 0.0.74 - 2020.01.26 - - Improvements to speed Targetted DataTable recalc for tabs and sections - pull [#105](https://github.com/EvotecIT/PSWriteHTML/pull/105) / issue [#101](https://github.com/EvotecIT/PSWriteHTML/issues/101) - tnx opustecnica - -## 0.0.73 - 2020.01.20 - - Fix for Out-HtmlView erroring out if Table was not given (or null) - -## 0.0.72 - 2020.01.13 - - Removed unused CSS - - Fix for Out-HtmlView buttons missing PageLength - - Added FavIcon to New-HTML [#99](https://github.com/EvotecIT/PSWriteHTML/issues/99) / [#102](https://github.com/EvotecIT/PSWriteHTML/pull/102) - tnx xlrod - - Updates to New-TableConditionalFormatting for IE 11 support [#100](https://github.com/EvotecIT/PSWriteHTML/pull/100) - tnx opustecnica - - Updates to Search via RegularExpressions [#100](https://github.com/EvotecIT/PSWriteHTML/pull/100) - tnx opustecnica - -## 0.0.71 - 2019.12.26 - - Fix for New-HTMLSection -JustifyContent missing in Invisible - - Added option to disable the "Properties" row in `Out-HTMLView -SkipProperties` for **Compare** feature (tnx **AdrianDeller**) ([#91](https://github.com/EvotecIT/PSWriteHTML/issues/91) / [#96](https://github.com/EvotecIT/PSWriteHTML/pull/96)) - - Added New-HTMLHeader, New-HTMLMain, New-HTMLFooter - -## 0.0.70 - 2019.12.19 - - Library update - - JQuery to 3.4.1 - - ApexCharts to 3.11.1, and set a static version (instead of the latest) - - Added New-HTMLTree, New-TreeNode (basic preview) - - Added New-HTMLHeader, New-HTMLFooter, New-HTMLMain allowing adding content before Tabs or after all content. ([#74](https://github.com/EvotecIT/PSWriteHTML/issues/74)) - -## 0.0.69 - 2019.12.10 - - Fix for EmailList [#90](https://github.com/EvotecIT/PSWriteHTML/pull/90) - tnx natosullivan - - Added New-HTMLGage, New-GageSector - -## 0.0.68 - 2019.12.07 - - Library update - - Vis-Network to 6.4.6 - - Diagrams now work in Internet Explorer (yay!) - - Add Tab border customization and Tab header background color (tnx xlrod!) [#87](https://github.com/EvotecIT/PSWriteHTML/pull/87) - - ☑ New-HTMLTabOption -SlimTabs -SelectorColor Blue **-BorderRadius 25px** **-BorderBackgroundColor LightBlue** - - Added Tests so basic stuff is tested for regression (it's very basic) - - Added alias for New-TableConditon (TableCondition) - -## 0.0.67 - 2019.11.26 - - Save-HTML improvment to save to temp file if saving fails (tnx xlrod!) ([#81](https://github.com/EvotecIT/PSWriteHTML/issues/81) / [#86](https://github.com/EvotecIT/PSWriteHTML/pull/86)) - - Fix for New-HTMLTable (Convert-ImagesToBinary) on PS 6/7 - -## 0.0.66 - 2019.11.25 - - Added JustifyContent to New-HTMLSection (thx xlrod!) ([#79](https://github.com/EvotecIT/PSWriteHTML/issues/79) / [#85](https://github.com/EvotecIT/PSWriteHTML/pull/85)) - -## 0.0.65 - 2019.11.23 - - Fix for Hashtable/OrderedDictionary display in New-HTMLTable/Out-HTMLView - -## 0.0.64 - 2019.11.21 - - Added TextTransform for New-HTMLTab (thx xlrod!) - -## 0.0.63 - 2019.11.17 - - Fix for WhatIf in Email affecting other places. It should only affect sending emails. - -## 0.0.62 - 2019.11.12 - - IE doesn't require approving running scripts anymore! (tnx orzfly) - -## 0.0.61 - 2019.11.11 - - New colors (tnx Ferdi), along with the ability to use #HEX as color codes - - Emailimo integrated into PSWriteHTML - - PSSharedGoods is no longer a dependency - - The way it works is that during development it still is dependency, but during publish it gets merged into one package using PSPublishModule - -## 0.0.60 - 2019.11.05 - - Fix for IE 11 support of collapsable sections - - Fix for nested, invisible sections not working properly -## 0.0.59 - 2019.10.29 - - Library update - - DataTables upgrade to Nightly (1.10.21-dev) due to broken Table Conditioning. Works with IE as well. -## 0.0.58 - 2019.10.28 - - Library update - - Vis-Network to 6.3.0 (known issue - IE not working) - - DataTables downgrade to 1.10.12 for IE to work - - Fix for IE 11 support of Tabs - - Fix for IE 11 support of Tables (Out-HTMLView/New-HTMLTable) - - Fix for Section that starts as Collapsed [#47](https://github.com/EvotecIT/PSWriteHTML/issues/47) - - It's a heavy fix, meaning it can have perf impact on display - may need changes - - Added New-TableRowGrouping - - Allows grouping within New-HTMLTable -## 0.0.57 - 2019.10.13 - [Blog post about release](https://evotec.xyz/nested-tabs-diagram-updates-diagram-events-calendar-object-and-more-in-pswritehtml/) - - Changes to Tabs - - Fix for missing comma in Tabs - - Fix for Tab Selector Color not being applied after changing to Nested Tabs - - Fix for Tab Selector not being Active by default - - Changes to Tables - - Updated Table Row size to 20px from 27px - - Renamed New-HTMLTable*commands to New-Table* to better reflect what they deliver (and those don't deliver HTML) - - Old commands still available as aliases - - Added **Calendar** - - Added New-HTMLCalendar - - Added New-CalendarEvent - - Added **HierarchicalTreeView** - very basic implementation. Not sure it will stick as Diagrams have that option as well **Requires feedback** - - Added New-HTMLHierarchicalTreeView - - Added New-HierarchicalTreeNode - - Changes to **Diagrams** - - Updated Visjs to 6.1.1 (local version), linked version is always the newest - - Added New-DiagramEvent for linking Tables with Diagrams - - Fix for Diagram Size - - Fix for using diagram defaults (smaller size), should work better now - -## 0.0.55 - 2019.09.29 - - Fix for Underlined space when using -Collapsable [#51](https://github.com/EvotecIT/PSWriteHTML/issues/51) - Thanks Tuxhedoh - - Fix for Stacked Charts [#59](https://github.com/EvotecIT/PSWriteHTML/issues/59) - Thanks for reporting colin-hall - - Fix for Section -Invisible switch - - Fix for Section impacting charts positioning - - Added BackgroundImage,BackgroundImageSize for New-HTMLDiagram (doesn't work for Export) - - Added Nested Tabs - -## 0.0.54 - 2019.09.29 - [Blog Post about release](https://evotec.xyz/easy-way-to-create-diagrams-using-powershell-and-pswritehtml/) - - **Support for Diagrams** - - Font Awesome updated to 5.11.2 - - Enlighter updated to 3.0 - - **Dashimo** integrated to **PSWriteHTML** as aliases - -## 0.0.53 - 2019.09.19 - - Bugfix chart inverse colors [#42](https://github.com/EvotecIT/PSWriteHTML/issues/42) - Thanks Ferdi Weiner - -## 0.0.52 - 2019.09.07 - - Library updates: - - ApexCharts update 3.8.5 - - ☑ New-HTMLChart - - ☑ Removed Positioning parameter - - ☑ Added New-ChartPie - - ☑ Added New-ChartRadial - - ☑ Added New-ChartDonut - - ☑ Added few parameters to New-HTMLChart - -## 0.0.51 - 2019.09.05 - - ☑ New-HTMLCode - - ☑ Added some formatting of whitespaces for code - -## 0.0.50 - 2019.08.30 - - ☑ Add-TableContent - - [ ] Fix for a typo on LE (tnx gregwold) - -## 0.0.49 - 2019.08.25 - [Blog post about release](https://evotec.xyz/comparing-two-or-more-objects-visually-in-powershell-cross-platform/) - - ☑ Save-HTML - - [ ] Moved some warnings to Verbose - - [ ] Fixed weird message - - ☑ New-HTMLTable, Out-HTMLView - - [ ] Added AllProperties switch - - [ ] Added Compare/Replacements - -## 0.0.48 - 2019.08.11 - - I don't know. Got confused about what was changed :-p - -## 0.0.47 - 2019.08.04 - - ☑ Fix for LOGO in PowerShell Core - - ☑ New-HTMLTable - - ☑ Added ImmediatelyShowHiddenDetails switch - Responsive has the ability to display the details that it has hidden in a variety of different ways. Its default is to allow the end-user to toggle the display by clicking on a row and showing the information in a DataTables child row. At times it can be useful not to require end-user interaction to display the hidden data in a responsive manner, which can be done with the childRowImmediate display type. - - ☑ Fix for New-HTML wrong positioning in certain conditions - bug introduced in 0.0.46 - - ☑ Fix for Table Simplify with margins - -## 0.0.46 - 2019.08.04 - [Blog post about release](https://evotec.xyz/working-with-html-in-powershell-just-got-better/) - - ☑ New-HTMLMessage - Removed as not ready, useless - - ☑ New-HTMLTable - - [ ] Disable Paging when amount of objects to display is lower then PagingOptions - - [ ] Added DataTableID for special use cases - - ☑ New-HTMLTableContent - Added with plenty of new features - - [ ] New HTMLTableConditionalFormatting - Added inline parameter - -## 0.0.45 - 2019.07.09 - - ☑ New-HTMLTable - - [ ] Added $PriorityProperties parameter - it works also on ScrollX and other types of places contrary to ResponsivePriorityProperties which only works on Responsive Table - - [ ] It was moved from Out-HtmlView - - ☑ Out-HTMLView - - [ ] Updated with all features from New-HTMLTable as it's useful to use it for fast output - -## 0.0.44 - 2019.07.08 - - ☑ New-HTMLTable - - [ ] Small improvement when no data provided - - ☑ New-HTMLTableCondition - - [ ] Supports contains now - PR by Adam Cook (codamok) - - [ ] Removed ColorSchemes - removal of ReportHTML old code - -## 0.0.43 - 2019.07.01 - - ☑ New-HTMLTable - - [ ] Fix for ScrollX with low amount of columns - -## 0.0.42 - 2019.07.01 - - ☑ New-HTMLTableConditionalFormatting - - [ ] Fix for Powershell Core, where conditional formatting wouldn't show up - -## 0.0.41 - 2019.06.30 - - ☑ New-HTMLTableHeader - removing need for AddRow switch - - [ ] If used with only Title it will assume AddRow - - [ ] If used with Names it will assume merging - - [ ] If used with Names without Title it will assume styling - - [ ] Left AddRow for compatibility reasons, may remove it in future - -## 0.0.40 - 2019.06.29 - [Blog post about release](https://evotec.xyz/all-your-html-tables-are-belong-to-us/) - - ☑ New-HTMLTable features - - ☑ FixedHeader/FixedFooter options - - ☑ Scrolling - - ScrollX, - - ScrollY, ScrollSizeY - - FreezeColumnsLeft, FreezeColumnsRight - - ☑ ResponsivePriorityOrder, ResponsivePriorityOrderIndex - - ☑ New-HTMLTableHeader - **new command** - - ☑ Merging header, styling header, adding header row - -## 0.0.39 - 2019.06.20 - - Fix for DefaultSortColumn - - Fix for DefaultSortOrder when set to descending - -## 0.0.38 - 2019.06.17 - [Blog post about release](http://evotec.xyz/dashimo-pswritehtml-charting-icons-and-few-other-changes) - - Added support for Bar Charts/Line Charts - - Added support for icons in tabs - - Added support for controlling tabs - - Fixes for tables in multiple places - - Ability to control buttons behavior - - Many many more, it's a big release - -## 0.0.34 - 2019.06.02 - - Fix for New-HTMLListItem to support multiple Texts - -## 0.0.33 - 2019.05.28 - - New-HTMLTable - Sorting ordered for DateTime - PR by Ferdi Weiner (ferwe) +## Changelog + +`PSWriteHTML` undergoes changes that hopefully will make it more versalite, consistent and better. +Unfortunetly some code is very old, some code doesn't serve it's purpose anymore, and requires heavy changes that may have an impact on already deployed code. +Please make sure to read changes before updating, as we're undergoing some breaking changes. + +## Unreleased + +- Keep section Show/Hide controls working in embedded reports with nonce-based script policies, for Online and offline reports. +- Apply table word breaking through valid CSS and allow the first column to wrap when WordBreak is selected. + +## 1.36.0 +### What's new +- Improvements to null handlings in New-HTMLTable + +**Full Changelog**: https://github.com/EvotecIT/PSWriteHTML/compare/v1.35.0...v1.36.0 + +## 1.33.0 +### What's Changed +- Improve Gages by @PrzemyslawKlys in https://github.com/EvotecIT/PSWriteHTML/pull/498 + - adds new features to gages + - closes #472 adding ability to define sectors in absolute values + - added lots of other options + - added more examples + +**Full Changelog**: https://github.com/EvotecIT/PSWriteHTML/compare/v1.32.0...v1.33.0 + +## 1.32.0 +### What's Changed +- Refactor New-HTMLTable.ps1 to enhance table by @PrzemyslawKlys in https://github.com/EvotecIT/PSWriteHTML/pull/497 + - Fixes `ScrollX` wrap issues + - Changes ToggleView to `Switch to ScrollX` or `Switch to Responsive` when enabled + - When using online mode the infocard, responsive wrap and datatables switch are now CDN hosted + +## 1.31.0 +### What's Changed +* Improve InfoCard by @PrzemyslawKlys in https://github.com/EvotecIT/PSWriteHTML/pull/495 + +**Full Changelog**: https://github.com/EvotecIT/PSWriteHTML/compare/v1.30.0...v1.31.0 + +## 1.30.0 + +### What's Changed +- Added `New-HTMLDate` +- Added `Height` to `New-HTMLPanel` for better control +- Update `JustGage JS library` version to 1.7.0 +- Allow setting `Width` in `New-HTMLTable` - resolves [#469](https://github.com/EvotecIT/PSWriteHTML/issues/469) + +## 1.29.0 +### What's Changed +- improve `New-HTML` to allow Minify/Format when not saving to file + +## 1.28.0 +### What's Changed +- fixed Get-HTMLLogos missing `$LogoPath` by @Binomimus in https://github.com/EvotecIT/PSWriteHTML/pull/466 +- Improve Get-ImageFile to not throw errors when having issues with internet connection +- Improves `New-HTMLSectionScrolling` and `New-HTMLSectionScrollingItem` to allow for nesting +- Improve `New-HTMLTable` Transpose to process it a bit later so some other settings can be applied to data first + +## New Contributors +* @Binomimus made their first contribution in https://github.com/EvotecIT/PSWriteHTML/pull/466 + +## 1.27.0 +### What's Changed +- Improve `New-HTML` utf-8 and lang properties for proper HTML specification +- Fixes [Linking Diagram with Tables by using New-DiagramEvent is currently broke #449](https://github.com/EvotecIT/PSWriteHTML/issues/449) +* Fix case-sensitivity for ChangeLog in readme.md by @cksapp in https://github.com/EvotecIT/PSWriteHTML/pull/447 + +### New Contributors +* @cksapp made their first contribution in https://github.com/EvotecIT/PSWriteHTML/pull/447 + +**Full Changelog**: https://github.com/EvotecIT/PSWriteHTML/compare/v1.26.0...v1.27.0 + +## 1.26.0 - 2024.07.06 +* Added help to all PowerShell functions lacking it. by @neztach in https://github.com/EvotecIT/PSWriteHTML/pull/446 + +### New Contributors +* @neztach made their first contribution in https://github.com/EvotecIT/PSWriteHTML/pull/446 + +## 1.25.0 - 2024.07.02 +- Improved filtering for `New-HTMLDiagram` + +## 1.24.0 - 2024.07.01 +- Added `EnableFilteringButton` to `New-HTMLDiagram` which allows to filter only on press of a button +- Improved filtering performance in `New-HTMLDiagram` + +## 1.23.0 - 2024.07.01 +- Renamed `EnableSearch` to `EnableFiltering` in `New-HTMLDiagram` +- Renamed `MinimumSearchChars` to `MinimumFilteringChars` in `New-HTMLDiagram` + +## 1.22.0 - 2024.07.01 +- `New-HTMLImage` issue with SVG images [#398](https://github.com/EvotecIT/PSWriteHTML/issues/398) - tnx @matt555 +- `New-HTMLDiagram` has new parameters `EnableSearch` and `MinimumSearchChars` which allows adding a search/limit to display only nodes that match search +- Updated VisNetwork/VisTimeline to 9.1.9 + +## 1.21.0 - 2024.06.29 +- Changed behavior of `Transpose` in `New-HTMLTable` / `Out-HtmlView` +- Added `TransposeLegacy` to `New-HTMLTable` / `Out-HtmlView` to keep old behavior +- Added `TransposeName` to `New-HTMLTable` / `Out-HtmlView` to allow for custom name (default is `Object 0`, `Object 1`, `Object 2`) +- Added `TransposeProperty` to `New-HTMLTable` / `Out-HtmlView` to allow for transposing on unique value from specific property (ex. ServerName) +- Added `Out-HtmlView` additional options `PrettifyObject, PrettifyObjectSeparator, PrettifyObjectDateTimeFormat` + +Those changes resolve: [#316](https://github.com/EvotecIT/PSWriteHTML/issues/316) + +```powershell +$Object = @( + [PSCustomObject] @{ + Test = 5 + Ello = 'Motto' + Hello = 'Totto' + } + [PSCustomObject] @{ + Test = 5 + Ello = 'Motto' + Hello = 'Totto' + } + [PSCustomObject] @{ + Test = 5 + Ello = 'Motto' + Hello = 'Totto' + } + [PSCustomObject] @{ + Test = 5 + Ello = 'Motto' + Hello = 'Totto' + } + [PSCustomObject] @{ + Test = 5 + Ello = 'Motto' + Hello = 'Totto' + } + [PSCustomObject] @{ + Test = 3 + Ello = 'Lotto' + Hello = 'Totto' + } +) + + +$Object | Out-HtmlView -Transpose -TransposeName 'Test ' -Filtering + +New-HTML -TitleText $Title -Online -FilePath $PSScriptRoot\Example-TableTranspose01.html { + New-HTMLTable -DataTable $Object -Filtering -Transpose +} -ShowHTML +``` + +## 1.20.0 - 2024.06.27 +- Added to `EmailTable` / `New-HTMLTable` additional options `PrettifyObject, PrettifyObjectSeparator, PrettifyObjectDateTimeFormat` +- Added to `New-HTMLTableOption` additional options `PrettifyObject, PrettifyObjectSeparator, PrettifyObjectDateTimeFormat` + +Those options above allow object to be translated to more readable format when using properties that are arrays or when wanting different datetime format +It basically does to HTML version what normally is doable in JavaScript DataStore. + +## 1.19.0 - 2024.06.09 +- Dropping IE support +- Fixes `New-HTMLTable` when using `DataStore` `JavaScript` for new lines +- Fixes `New-HTMLTable` when using `DataStore` `JavaScript` when replacing `\r\n` [#439](https://github.com/EvotecIT/PSWriteHTML/issues/439) tnx @matt555 +- `New-HTMLCalendar` works now by default in 24h format + +## 1.18.0 - 2024.05.10 +- Improved `New-HTML` and `New-HTMLPage` by allowing `Title` to be used in `New-HTMLPage`. +By default Title from `New-HTML` is used, but if title is set in `New-HTMLPage` it will be used instead for coresponsing page. +Title will still be used for the first page. +- Improved `EmailBody` `Parameter` parameter to be able to handle nulls +- Some cleanup +- Fixes `New-ChartDonut` colors + +## 1.17.0 - 2024.01.15 +- Fixes `New-HTMLChart` when used inside `New-HTMLTabPanel` [#429](https://github.com/EvotecIT/PSWriteHTML/issues/429) + +## 1.16.0 - 2024.01.15 +- Improves `New-HTMLNavTop` for HomeLink + +## 1.15.0 - 2024.01.03 +- Fixes `New-ChartSpark` when using which would be ignored + +## 1.14.0 - 17.12.2023 +- Added support for all charts `New-ChartDesign` +- Gradient support in charts no longer uses `Inverse Colors` by default and can be set by `New-ChartDesign` +- Speed improvements for `New-HTMLTable` when using `DataStore` `JavaScript` +- Should fix `Powershell ScriptBlock Logging` slowdown when using `New-HTMLTable` with `DataStore` `JavaScript` +- Fixes `New-HTMLTabPanel` orientation + +## 1.12.0 - 12.11.2023 +- Improvement to `New-HTMLTableStyle` for color handling which would potentially generate wrong CSS code +- Improvement to error handling which should show stack trace in case of error (last 5 lines) + +## 1.11.0 - 15.10.2023 +- Fix for `New-HTMLNavTop` not respecting links to differnent extension such as ASXP + +## 1.10.0 +- Fix for `Online` when using percentage bar + +## 1.9.0 +- Add support for conditions for percentage in table `New-TablePercentageBar` / `New-TablePercentageBarCondition` +- Added `New-HTMLMermeidChart` - work in progress / not fully functional + +## 1.8.0 +- Fixes problem with encoding in `New-HTMLMarkdown` +- Fixes problem with `EnableTOC` switch in `New-HTMLMarkdown` + +## 1.7.0 +- Add `TargetName` to `New-HTMLCalendar` + +## 1.6.0 +- Add `New-HTMLMarkdown` command + +## 1.4.0 +- Add `UrlTarget` to `New-HTMLCalendar` allowing for greater link control (for example iFrame) + +## 1.3.0 +- Fixes internal CSS issues after fix to `Add-HTMLStyle` +- Improve `New-HTMLFrame` adding `Name` +- Rename `New-TreeNode` to `New-HTMLTreeNode` *BREAKING CHANGE* +- Improve `New-HTMLTreeNode` options +- Improve `New-HTMLTree` + +## 1.2.0 +- Fixes `Add-HTMLStyle` when using links + +## 1.1.0 +- Improve `New-HTMLCarousel` (WIP) + +## 1.0.192 +- Fixes `PSWriteHTML` published module +- Adds tests before publishing to prevent similar issue + +## 1.0.0 +- This release is first release of PSWriteHTML that is considered stable. It's been in development for over 2 years, but it's time to say it's stable. +- Add columnVisibility button to `New-HTMLTable` + +```powershell +$DataTable = @( + [PSCustomObject] @{ 'Test.1' = 'Name'; 'Test 2 Another' = 'Name2'; 'Test..3' = 'Name3'; "Da't'es" = $Date; 'Numbers' = $Int; Enum = $Enum; EnumFruit = $EnumFruit; Bool = $false } + [PSCustomObject] @{ 'Test.1' = 'Name'; 'Test 2 Another' = 'Name2'; 'Test..3' = 'Name3'; "Da't'es" = $Date2; 'Numbers' = $Int; Enum = $Enum; EnumFruit = $EnumFruit; Bool = $false } + [PSCustomObject] @{ 'Test.1' = 'Przemysłąw'; 'Test 2 Another' = 'Name2'; 'Test..3' = 'Name3'; "Da't'es" = $Date3; 'Numbers' = $Int; Enum = $Enum; EnumFruit = $EnumFruit; Bool = $false } + [PSCustomObject] @{ 'Test.1' = 'Kłys'; 'Test 2 Another' = 'Name2'; 'Test..3' = 'Name3'; "Da't'es" = $Date2; 'Numbers' = $Int; Enum = $Enum; EnumFruit = $EnumFruit; Bool = $false } +) + +#$DataTable = Get-Process | Select-Object -First 30 + +New-HTML -TitleText 'Title' -Online -FilePath $PSScriptRoot\Example-TableColumnVisibility.html -ShowHTML { + New-HTMLTable -DataTable $DataTable -Filtering -Buttons columnVisibility, csvHtml5, excelHtml5, pageLength, searchBuilder +} +``` + +- Improve CSV output (UTF8 with BOM) +- Added new options for `New-TableButtonCSV` +- Improve `New-TableButton*` with a few more options +- Added European Union to `New-HTMLMap` +- Added `New-HTMLWizardColor` - allows setting colors for `New-HTMLWizard` (globally) +- Added `New-HTMLTabPanelColor` - allows setting colors for `New-HTMLTabPanel` (globally) +- Fixed `New-HTMLWizard` themes +- Added `New-HTMLTabPanel` themes +- Updated handful of libraries + +## 0.0.191 - 2023.07.04 +- Fix to support PowerShell 7.4 + +## 0.0.190 - 2023.06.11 +- Rename CSS to JS fixing wrong name +- Fix Color for `New-ChartPie`, `New-ChartRadial` +- Jquery 3.6.3 to 3.7.0 +- Forces use of UTF8 for `Add-HTMLScript`, `Add-HTMLStyle` to fix issues with non-ASCII characters on PS 5.1 +- Fixes issue with `New-HTMLTable` sorting buttons in offline mode +- Remove not needed functions +- Removed images for DataTables as no longer nessecary + +## 0.0.189 - 2023.05.26 +- Fixes AlphabetSearch + +## 0.0.188 - 2023.05.08 +- Fix for null handling values in `New-HTMLTable` when using `AllProperties` (real fix in dependant PSSharedGoods) + +## 0.0.187 - 2023.05.08 +- Adds ability to save **HTML** as **ASPX** (just an extension, not actual ASPX file) including pages with navigation. This provides an easy way to run PSWriteHTML in SharePoint Online + +## 0.0.186 - 2023.04.23 +- Fixes `New-HTMLSectionStyle` when used with `New-HTMLMap` +- Improves `New-HTMLMap` with actual configuration features: `New-MapArea`,`New-MapLegendOption`, `New-MapLegendSlice`, `New-MapPlot` + +## 0.0.185 - 2023.04.20 +- Improves SearchBuilder in `New-HTMLTable` [#361](https://github.com/EvotecIT/PSWriteHTML/issues/361) +- Update DataTable libraries and related plugins + +## 0.0.184 - 2023.03.29 +- Fixes `New-HTMLPage` that would overwrite pages with same name. + +## 0.0.183 +- Fixes `AlphabetSearch` being used in `New-HTMLTable` when it shouldn't be used. [#351](https://github.com/EvotecIT/PSWriteHTML/issues/351) + +## 0.0.182 - 2023.02.02 +- Update libraries: + - FullCalendar +- [Fixes Divergent behavior in Ubuntu container (Github Actions)](https://github.com/EvotecIT/PSWriteHTML/issues/370) + +## 0.0.181 +- Update libraries: + - DataTables and related plugins/extensions + - OrgCharts + - FullCalendar + - Jquery + - ApexCharts + - Vis-Timeline + - EasyQRCode + - SmartWizard + - JustGage + - Accordion + - FancyTree + - SmartTabs +- [Fixes HTMLChart lines & bars colors #364](https://github.com/EvotecIT/PSWriteHTML/issues/364) + +## 0.0.180 - 2022.10.25 +- Added `listYear` to `New-HTMLCalendar` that can be used as part of HeaderLeft, HeaderCenter and HeaderRight and InitialView +- Add warning for Add-HTMLScript, Add-HTMLStyle if file doesn't exists. This can be useful when antivirus randomly removes files from module and not tell you about it. +- Update FullCalendar 5.11.3 +- Update JQuery 3.6.0 +- Update JustGage 1.5.1 + +## 0.0.179 - 2022.10.03 +- Improvements for EmailLayoutRow/EmailLayoutColumn - still WIP + +## 0.0.178 - 2022.10.03 +- Add `Height` to EmailLayoutRow - still WIP. Please consider EmailLayout, EmailLayoutRow and EmailLayoutColumn as experimental and subject to change. + +## 0.0.177 - 2022.08.18 +- Fixes `New-HTMLTable` when used with `ArrayJoin` from `New-HTMLTableOption` when DataStore is `HTML` and `GenericList` is used. + +## 0.0.176 - 2022.07.30 +- Fixes Descending order in Tables [#329](https://github.com/EvotecIT/PSWriteHTML/issues/329) - tnx BaTarrY + +## 0.0.175 - 2022.07.08 +- Update moment.js to 2.29.4 (from 2.29.2) to fix security issue + +## 0.0.174 - 2022.05.20 + - Fixes an issue with charts if user used `$Events` variable in their code [#70](https://github.com/EvotecIT/PSWinReporting/issues/70) + +## 0.0.173 - 2022.04.09 + - Update dependencies + - FullCalendar 5.11.0 + - Moment 2.29.2 + - DataTables 1.11.5 and all plugins + - Vis-network 9.1.2 + - Vis-TimeLine 7.5.1 + - ApexCharts 3.35.0 + - Fixes `New-ChartLine doesn't work properly if there's only one` [#314](https://github.com/EvotecIT/PSWriteHTML/issues/314) + +## 0.0.172 - 2022.03.15 + - `New-HTMLHierarchicalTree` added `AutoSize` [Feature/add tree view autosize #313](https://github.com/EvotecIT/PSWriteHTML/pull/313) - tnx RussPitcher + +## 0.0.171 - 2022.03.02 + - Fixes problem with Comparing objects in `New-HTMLTable` and `Out-HTMLView` +## 0.0.170 - 2022.02.14 + - Fixes [ChartLine -Color only affects lines, not labels/numbers](https://github.com/EvotecIT/PSWriteHTML/issues/310) + +## 0.0.169 - 2022.02.13 + - Added `FlattenObject` and `FlattenDepth` parameter to `New-HTMLTable` + - Added `FlattenObject` and `FlattenDepth` parameter to `Out-HtmlView` + - Added `CompareNames` parameter to `New-HTMLTable/Out-HTMLView` for usage in `-Compare` + - Fixes `New-HTMLTable/Out-HTMLView -Compare` for more complicated object, with support for `FlattenObject` and `FlattenDepth` which allows to compare advanced objects + - Fixes `New-HTMLTable/Out-HTMLView -Compare` for IncludeProperty, ExcludeProperty + +## 0.0.168 - 2022.01.31 + - Fixes problem with `Inline` image functionality in `New-HTMLImage` + +## 0.0.167 - 2022.01.28 + - Fixes `New-TableHeader` when FontSize is not set. [#306](https://github.com/EvotecIT/PSWriteHTML/issues/306) + +## 0.0.166 - 2022.01.25 + - Small improvements for New-HTMLTag to catch errors, to not prevent other part of HTML to be displayed +## 0.0.165 - 2022.01.24 + - Added new functionality which is Work in Progress and requires improvements. + - Added `New-HTMLSummary` + - Added `New-HTMLSummaryItem` + - Added `New-HTMLSummaryData` + - Fixed critical bug with files being created in temporary folder unnessesarily. + - Added `New-TableLanguage` to be able to translate tables. +## 0.0.164 + - Improvements (I forgot what I did) +## 0.0.163 - 2021.12.06 + - Fixes `New-TableConditionGroup` where it would set FontSize to 0 when not used +## 0.0.162 - 2021.12.03 + - Fixes `New-TableContent` where it would set FontSize to 0 when not used + - Some documentation updates +## 0.0.161 - 2021.11.29 + - Fixes `FuzzySearch` when multiple tables are involved +## 0.0.160 - 2021.11.28 + - Added `FuzzySearch`,`FuzzySearchSmartToggle` to `New-HTMLTable` + - Added `FuzzySearch`,`FuzzySearchSmartToggle` to `Out-HTMLView` + - Fixed `New-TableAlphabetSearch` beign ignored if `AlphabetSearch` switch is not used +## 0.0.159 - 2021.11.26 + - Fixes `New-ChartLegend` case-senitivity issue [#283](https://github.com/EvotecIT/PSWriteHTML/issues/283) + - Added `Margin` to `New-HTMLSection` + - Added `New-HTMLFrame` + - Added some inline HELP for some commands. Please help where you can. +## 0.0.158 - 2021.07.24 + - 📦 Added support in `New-HTMLTable` to handle null values better + - 🐛 Fixed bug in `Out-HTMLView` which would skip displaying data in some cases +## 0.0.157 - 2021.07.24 + - 📦 Added support in `New-HTMLTable` for array of arrays (useful in case of using $Hashtable.Values that have arrays nested as values) +## 0.0.156 - 2021.07.12 + - 💡 Forced `FontAwesome` icons to be lowercase just in case user (aka me) decides to use uppercase for tabs/wizard/toasts and wonder why it doesn't work +## 0.0.155 - 2021.06.27 + - ☑ Added basic Email Templating (experimental). `EmailLayout`, `EmailLayoutRow`, `EmailLayoutColumn` +## 0.0.154 - 2021.06.22 + - 🐛 Fixes `New-HTMLTable` search builder when using offline mode. [#246](https://github.com/EvotecIT/PSWriteHTML/issues/246) +## 0.0.153 - 2021.06.20 + - 🐛 Fixes `New-ChartDesign` (typo) [#244](https://github.com/EvotecIT/PSWriteHTML/pull/244) - tnnx JSwanson-HoB + - ↗ Updated `ApexCharts` to 3.27.0 + - ↗ Updated `DataTables` to 1.10.25 along with plugins/extensions +## 0.0.152 - 2021.06.05 + - 🐛 Fixes `New-HTMLTable` when using `DefaultSortOrder` [#241](https://github.com/EvotecIT/PSWriteHTML/issues/241) - tnx Jason Rush + - ☑ Improved `New-HTMLTable` to be able to multi-sort [#241](https://github.com/EvotecIT/PSWriteHTML/issues/241) - tnx Jason Rush +## 0.0.151 - 2021.05.31 + - 🐛 Fixes `New-HTMLTableCondition` when using `ROW` switch and when the column doesn't exists + - 🐛 Fixes `New-HTMLTableCondition` when given column name is different case when datastore is `JavaScript` +## 0.0.150 - 2021.05.30 + - Public release, please keep in mind using Navigation/Pages is not yet recommended as changes will follow +## 0.0.150-Alpha04 (prerelease) - 2021.05.30 + - ☑ Added `SimpleFontIcons` library + - 🐛 Fixed `New-HTMLImage/EmailImage` height/width to work correctly in outlook when defining size + - ☑ Added `New-TableButtonSearchBuilder` + - ℹ `New-HTMLTable` by default uses button `SearchBuilder` which should be better fit, location wise, then using `SearchBuilder` switch +## 0.0.150-Alpha03 (prerelease) - 2021.05.19 + - 🐛 Fixed `New-HTMLTabStyle` + - ☑ BackgroundColor doesn't go out of borders anymore + - ☑ Renamed parametrer BorderBackgroundColor to BorderColor +## 0.0.150-Alpha01 (prerelease) - 2021.05.07 + - 🐛 Fixes timeline charts (broken earlier in the preview) + - 🐛 Decimals in `New-ChartPie` should now work correctly +## 0.0.150-Alpha01 (prerelease) - 2021.05.05 + - 🐛 Fixes for charts when using multiple 0 next to each other +## 0.0.149-Alpha9 (prerelease) - 2021.05.04 + - 🐛 Fixes to `ChartLegend` + - ☑ Added `New-ChartRadialOptons` - work in progress/not functional + - ☑ Added `New-ChartDesign` - work in progress/not functional + - ☑ Added `New-CarouselStyle` - place holder/not functional +## 0.0.149-Alpha8 (prerelease) - 2021.04.22 + - 🐛 Fixes issue with `FontsAwesome` in offline mode after recent upgrade + - 💡 Improved spark charts +## 0.0.149-Alpha7 (prerelease) - 2021.04.19 + - 💡 Improved `New-HTMLChart` +## 0.0.149-Alpha6 (prerelease) - 2021.04.19 + - ☑ Added two or more separate y-axis to a line charts [#153](https://github.com/EvotecIT/PSWriteHTML/issues/153) + - ☑ Added ability to mix line charts and bar charts + - 💡 Improved `New-ChartDataLabel` + - ☑ Added `New-ChartMarker` + - 💡 Improved `New-ChartLine` +## 0.0.149-Alpha5 (prerelease) - 2021.04.18 + - Libraries + - 🔨 Upgraded `Apex Charts` from 3.26.0 to 3.26.1 +## 0.0.149-Alpha4 (prerelease) - 2021.04.16 + - 🐛 Fixes issues where `Title` of `New-HTMLTable` wouldn't be used for buttons in certain circumstances +## 0.0.149-Alpha3 (prerelease) - 2021.04.16 + - Added more properties for `New-CalendarEvent` and some help content + - Libraries + - 🔨 Upgraded `FullCalendar` from 5.5.1 to 5.6.0 +## 0.0.149-Alpha3 (prerelease) - 2021.04.16 + - Added ability to control menu items width in top navigation +## 0.0.149-Alpha2 (prerelease) - 2021.04.15 + - Padding for logo in navigation changed +## 0.0.149-Alpha1 (prerelease) - 2021.04.15 + - Added **Navigation** - this is highly experimental and requires a lot more work. Please don't use it in production because it can change daily. + - `New-HTMLNav` - navigation option 1 can be used with: + - `New-NavItem` + - `New-NavLink` with nesting + - `New-HTMLNavFloat` - navigation option 2 can be used with: + - `New-NavFloatWidget` + - `New-NavFloatWidgetItem` + - `New-HTMLNavTop` - navigation option 3 can be used with: + - `New-NavTopMenu` + - `New-NavLink` + - ➕ Added multiple new icons for `Fonts Awesome` + - 🐛 Fixed `New-TableEvent`. It would not display 0 records if there are no matching records + - 🐛 Fixed `New-ChartAxisX` usage in `New-HTMLChart` [#225](https://github.com/EvotecIT/PSWriteHTML/issues/225) + - Libraries + - 🔨 Upgraded `FontsAwesome` from 5.15.1 to 5.15.3 + - 🔨 Upgraded `JustGage` from 1.4.1 to 1.4.2 + - 📦 Added `Material Design Iconic Font` 2.2.0 required by some features until replaced later on +## 0.0.148 - 2021.04.02 + - 🐛 Conditional formatting/groups should now work correctly in Internet Explorer - had to downgrade some JS capabilities +## 0.0.147 - 2021.04.01 + - 💥 **Potentially breaking change**: due to changes in some defaults things could move around - for example legend may not always start at the bottom, it shouldn't affect crucial parts tho + - 💡 Improved `New-ChartPie`,`New-ChartRadial`,`New-ChartLine`, `New-ChartBar` to convert $null or empty string as 0 + - 💡 Improved `New-ChartAxisY` with more parameters and now works within `Bar Charts` + - 📦 Added back `New-ChartSpark` (I've removed it before for some reason) + - 💡 Improved `New-ChartLegend` with more parameters + - 💡 Improved `Title*` options in `New-HTMLChart` + - 📦 Added `Subtitle*` options in `New-HTMLChart` +## 0.0.146 - 2021.03.23 + - ☑ Improves `New-TableConditionGroup` + - ☑ Added `Row` switch +## 0.0.145 - 2021.03.20 + - ☑ Improves `New-TableCondition` + - ☑ Added missing `ne` condtion (not equals) + - ☑ Added `ReverseCondition` parameter which allows `ConditionValue` compared to `ColumnValue`, rather then default `ColumnValue` to `ConditionValue`. + - ☑ Added condition `in` and `notin` +## 0.0.144 - 2021.03.20 + - ☑ Improves `New-TableCondition` and `New-TableConditionGroup` with styles when condition FAILS + - ☑ This allows for example `New-TableCondition -Name 'BoolAsString' -Value $true -BackgroundColor Yellow -Color Green -Operator eq -ComparisonType string -Inline -FailBackgroundColor Green` +## 0.0.143 - 2021.03.18 + - ☑ Improves `New-TableCondition` by detecting non-existing column names + - ☑ Improves `New-TableConditionGroup` by adding logic operator NONE + - ☑ Fixes `New-TableConditionGroup` with `Inline` switch +## 0.0.142 - 2021.03.17 + - ☑ Improves `New-HTMLText` URL Link markdown parsing [#216](https://github.com/EvotecIT/PSWriteHTML/pull/216) - thank you **Alan Longstaff** +## 0.0.141 - 2021.03.17 + - ☑ Added `IncludeProperty`/`ExcludeProperty` to `New-HTMLTable`/`Out-HTMLView` for easy excluding properties we don't need + - ☑ Example `Get-Process | Out-HtmlView -ExcludeProperty Name -First 3` +## 0.0.140 - 2021.03.17 + - ☑ Changed `New-TableCondition` parameter name from `CaseInsensitive` to `CaseSensitive` + - ☑ This means by default conditions of strings are not case sensitive +## 0.0.139 - 2021.03.16 + - ☑ Improved `Out-HTMLView` +## 0.0.138 - 2021.03.16 + - ☑ Added alias for `New-HTMLTableOption` + - ☑ Forces `Table` within `EmailBody` to respect `font-size` and other style options given to EmailBody +## 0.0.137 - 2021.03.16 + - ☑ Fix for timeline charts not working due to date conversion + - ☑ Fix for chart events (I don't know how i test things) + - ☑ Library + - ☑ Upgrade ApexCharts from `3.22` to `3.26` + - ☑ Upgrade VisNetwork from `9.0.3` to `9.0.4` +## 0.0.136 - 2021.03.14 + - ☑ Fixed - Values with decimals do not auto-find within html table when clicking on charts/pies [#209](https://github.com/EvotecIT/PSWriteHTML/issues/209) + - ☑ Table Conditioning - highly improved table conditions. This requires some documentation/blog post + - ☑ Added `New-TableCondtionGroup` + - ☑ Improved `New-TableCondition` + - ☑ **Let's hope I didn't break anything** + - ☑ Added ability to configure ArrayJoin/ArrayJoinString for DataStore HTML using `New-HTMLTableOption` + - ☑ Added `New-HTMLMap` experimental cmdlet + - ☑ Due to that cmdlet size have become larger + - ☑ Library + - ☑ Updated DataTables `1.10.21` to `1.10.24` + - ☑ Updated MomentJS to `2.29.1` +## 0.0.135 - 2021.03.07 + - ☑ Added ability to create plugins for `PSWriteHTML` -> Example: [PSWriteHTML.Maps](https://github.com/EvotecIT/PSWriteHTML.Maps) + - ☑ Keep in mind that module is not required as the functionality is part of the PSWriteHTML module anyways - it's just an example on how to do it yourself + - ☑ Removed `Adobe` icon from `FontsAwesome (Brands)` + - ☑ Library + - ☑ Updated `VisNetwork` from `9.0.2` to `9.0.3` + - ☑ Added `Width` parameter to `New-HTMLSection` which allows `New-HTMLSection -Width 30%` or similar + - ☑ Added `Title` field in New-DiagramNode + - ☑ Improves ability to provide basic HTML in Label/Title in `New-DiagramNode` +## 0.0.134 - 2021.03.05 + - ☑ Fixes wrong register argument completer for `New-HTMLTextBox` + - ☑ Fixes SearchPane not completly visible [#193](https://github.com/EvotecIT/PSWriteHTML/issues/193) +## 0.0.133 - 2021.03.04 + - ☑ Library + - ☑ Updated DataTables ColReorder 1.5.2 -> 1.5.3 + - ☑ Updated DataTables FixedColumns 3.3.1 -> 3.3.2 + - ☑ Updated DataTables FixedHeader 3.1.7 -> 3.1.8 + - ☑ Updated DataTables 1.10.22 -> 1.10.23 + - ☑ Updated DataTables KeyTable 2.5.3 -> 2.6.0 + - ☑ Updated DataTables Responsive 2.2.6 -> 2.2.7 + - ☑ Added `DataTables SearchBuilder` 1.0.1 + - ☑ Updated DataTables SearchPanes 1.2.1 -> 1.2.2 + - ☑ Updated FancyTree `2.33` -> `2.38` + - ☑ Updated JustGage `1.4.0` -> `1.4.1` + - ☑ Updated FullCalendar `5.1.0 -> 5.5.1` + - ☑ Added DataTables Search Alphabet `1.0.0 with personal PR` + - ☑ Updated `OrgChart` from `2.2.0` to `3.1.0`, `3.1.1` + - ☑ Updated `VisData` from `7.1.1` to `7.1.2` + - ☑ Updated `VisNetwork` from `8.5.5` to `9.0.2` + - ☑ Updated `VisTimeline` from `7.4.2` to `7.4.6` + - ☑ Updated `EasyQrCode` from `4.3.0` to `4.3.2` + - ☑ Added `DataTables Select` -> `1.3.1` + - ☑ Added ability `OverwriteDOM` in `New-HTMLTable` to provide granular option how options are visually positioned + - ☑ Added ability `SearchBuilder` in `New-HTMLTable` for multi-condition search + - ☑ Added ability `SearchHighlight` in `New-HTMLTable` + - ☑ Added ability `AlphabetSearch` in `New-HTMLTable` + - ☑ Fixes `New-ChartLegend` hex colors but most likely all other cmdlets where more than one HEX based color was used + - ☑ Added `HeaderTextSize` to `New-HTMLSection` + - ☑ Added `New-TablePercentageBar` for `New-HTMLTable` + - ☑ Added `New-ChartEvent` + - ☑ Fixed `New-HTMLTable -DataStore JavaScript` when dollar ($) is used within column name or content + - ☑ Improved `New-HTMLTableOption` added `ArrayJoin`,`ArrayJoinString` + - ☑ Fixed `New-HTMLTable` export to excel would only export visible columns. Exports all again + - ☑ Improved some CDN handling +## 0.0.132 - 2021.02.02 + - ☑ Fixed `Format/Minify` error message when `PSParseHTML` is not installed. + - ☑ Fixed Table headers pushed to the left when using ScrollX with Tabs [#191](https://github.com/EvotecIT/PSWriteHTML/issues/191) +## 0.0.131 - 2021.01.29 + - ☑ New-HTMLTable AjaxJSON fixed - [#189](https://github.com/EvotecIT/PSWriteHTML/issues/189) +## 0.0.130 - 2021.01.16 + - ☑ Update `New-HTMLTableStyle` with more options and functionality +## 0.0.129 - 2021.01.11 + - ☑ Update `New-HTMLText` regex for urls - tnx chrisdent! +## 0.0.128 - 2021.01.09 + - ☑ Fixed Export to Excel deletes all commas [#182](https://github.com/EvotecIT/PSWriteHTML/issues/182) +## 0.0.127 - 2021.01.06 + - ☑ Reverted ApexCharts to 3.22 from 3.23 (offline version) +## 0.0.126 - 2021.01.06 + - ☑ Reverted ApexCharts to 3.22 from 3.23 + - ☑ During tab switch it would sometimes fail to display charts properly - reported to apex [#2137](https://github.com/apexcharts/apexcharts.js/issues/2137) +## 0.0.125 - 2021.01.02 + - ☑ Easy QR Code update `4.2.1` to `4.3.0` +## 0.0.124 - 2021.01.02 + - ☑ Added `New-HTMLQRCode` to provide HTML based QR codes +## 0.0.123 - 2020.12.23 + - ☑ **Potentially Breaking Changes** + - ☑ Removed custom Headings (H1,H2,H3,H4,H5,H6) -> `New-HTMLHeading` still works just using defaults + - ☑ It was totally inconsistent between H1-H6, probably needs new CSS for those later on that will be consistent and inline with other code + - ☑ Removed H7 heading totally - it got there by some copy paste from internet + - ☑ Removed custom Horizontal Line (HR) -> `New-HTMLHorizonalLine` still works just using defaults + - ☑ Not looking good, the default one looks better, more consitent but may need some work in the future + - ☑ `New-HTMLLogo` is now marked as obsolete. It was there from day one but it's not really customizable. New way will be given sometime in the future + - ☑ It still works, CSS code is only added when it's used + - ☑ Removed custom link highlights CSS. Not sure if it was ever used, hopefully not. May come back in future in better form + - ☑ When `EmailBody` is used it will no longer put `JavaScript` or `CSS` inside HTML for advanced features such as DataTables, or anything that used to be there + - ☑ This is to make sure EMAIL HTML is as small as possbile + - ☑ JavaScript in emails won't work in 90% of cases and it would just add to the junk in HTML + - ☑ However if EmailBody is used within `Email` and `AttachSelf` is used it will generate same HTML using full JS/CSS code + - ☑ This ensures that self attach should work as it used to, at the same time providing small HTML in email + - ☑ JavaScript/CSS is now marked as safe for email or normal HTML reports/pages. What that means some CSS/JS is marked only as being added to Email or vice versa. + - ☑ **Improvements to CSS** + - ☑ The goal of PSWriteHTML is to get into state where only really nessecary code is added. Less CSS is now included by default + - ☑ Hopefully there are no major problems from those changes + - ☑ The default margin for all elements should be `5px`, however when used within email it will be set to `0px` + - [ ] This mainly is important for Images/Text/Headings but all other html objects such as tables and so on, also are supposed to have `5px` margin + - ☑ It would seem `Roboto Condensed` or other fonts defined in font-family across code were never used and defaults were kicking in + - ☑ I've now fixed it so `Roboto Condensed` is used when `Online` mode + - ☑ In `Offline` mode it will still go back to `Sans-Serif` (usually `Arial`) + - ☑ I've removed other `font-families` from multiple CSS files to make it visually consistent + - [ ] May need to be revisited if `Roboto Condensed` is best choice + - ☑ Update to `FontsAwesome` from 5.14 to 5.15.1 + - ☑ Update to `FontsAwesome` to work offline + - ☑ Unfortunetly this means 500KB file size in CSS module size and output HTML file is 500KB bigger + - ☑ I'm skipping including of TTF/SVG/EOT types as WOFF and WOFF2 should be enough for modern browsers + - ☑ **Other changes** + - ☑ Changed Tables `row height` to fit more data + - ☑ Changed Tables `noscript` version (email + no javascript) to fit more how DataTables looks like + - ☑ Improved HTMLTable with `Simplify` switch positioning + - ☑ `New-HTML` added parameter `AddComment` - by default comments are not added to code now + - ☑ Added `link` preloading for styles - not sure if it will help but why not + - ☑ Fix for `New-DiagramOptionsLinks` setting lenght which would have resultant html error + - ☑ `EmailTextBox` renamed to `New-HTMLTextBox`. `EmailTextBox` added as alias to that command + - ☑ Added `Format` and `Minify` switches to `New-HTML` and `EmailBody`. Those will only be working if [PSParseHTML](https://github.com/EvotecIT/PSParseHTML) is installed. + - [ ] `PSParseHTML` is not installed by default and you need to install it separatly `Install-Module PSParseHTML`. There is no intention of bundling it at this moment. + - [ ] **Known issue**: Removes comment required for `Internet Explorer` javascript to not prompt when using as local file + - ☑ Improved `New-HTMLTimelineItem` generated HTML when no color is used + - ☑ Added `Enable-HTMLFeature` to bring JS/CSS even if it's not used + - ☑ `Calendars` & `DataTables` & `Diagrams` should now resize/fit properly on Global Tab change + - ☑ `Calendars` & `DataTables` & `Diagrams` are now resize/fit properly on Wizard Step Change + - ☑ `Calendars` & `DataTables` & `Diagrams` are now resize/fit properly on Tab Panel Tab Change + - ☑ Tracks all `tables` with `Fixed Headers`/`Footers` and `disables`/`enables` them on `tab switch`/`wizard step` switch / `tab panel` switch + - ☑ **Diagram Changes** + - ☑ `New-DiagramLink` - added `SmoothType`, `SmoothForceDirection` and `SmoothRoundness` + - ☑ `New-DiagramLink` - fixed `FontAlign` which was using wrong `validateset`. + - ☑ `Diagrams` should now fit properly upon changing tabs. It used to hide outside of screen. + - ☑ **Library updates** + - ☑ Update of `Apex Charts` to 3.23.0 + - ☑ Update of `VisJS` to 8.5.5 +## 0.0.122 - 2020.11.18 + - ☑ Added `New-ChartDataLabel` currently supported in `New-ChartTimeLine` only + - ☑ Improvements `New-ChartTimeLine` - added by Splaxi [#170](https://github.com/EvotecIT/PSWriteHTML/pull/170) - Thank you (WIP) + - ☑ Added `New-ChartToolTip` currently supported in `New-ChartTimeLine` only - added by Splaxi [#170](https://github.com/EvotecIT/PSWriteHTML/pull/170) - Thank you (WIP) + - ☑ Improvements `New-ChartAxisY` + - ☑ Added parameter for `EmailBody`,`New-HTMLText`, `New-HTMLSpanStyle` - `LineHeight`. This allows for controling line height. +## 0.0.121 - 2020.11.15 + - ☑ Added `Accordion` (alpha) + - ☑ `New-HTMLAccordion` + - ☑ `New-AccordionItem` + - ☑ Fix for `New-HTMLDiagram` to disable loader if physics is disabled, as diagram wouldn't load, and loader is not nessecary + - ☑ Fix for `New-HTMLDiagram` to load icons properly in Chrome, IE still requires press + - [ ] VisNetwork update from `8.5.2` to `8.5.3` +## 0.0.120 - 2020.11.07 + - ☑ Fixes partially `New-HTMLTable -FixedFooter` issue [#166](https://github.com/EvotecIT/PSWriteHTML/issues/166) + - ☑ ApexChart update 3.20 to 3.20.1 + - ☑ VisNetwork update 8.4.1 to 8.5.2 + - ☑ VisTimeLine update 7.3.7 to 7.4.2 +## 0.0.119 - 2020.10.28 + - ☑ Added ability to use nested lists in `New-HTMLList`,`EmailList` +## 0.0.118 - 2020.10.27 + - ☑ Improvements to tab switching very fast which could cause an error [#126 DATATABLE warning - Cannot reinitialize DataTable](https://github.com/EvotecIT/PSWriteHTML/issues/126) + - [ ] Added UseDefaultCredential for `EmailServer` +## 0.0.117 - 2020.10.25 + - ☑ Fix for issue when Charts are used with Diagrams + - ☑ `ApexCharts` update to 3.22 from 3.20.2 + - ☑ `Vis.js` update to 8.4.1 from 8.3.2 + - ☑ Small update to `New-HTMLList` with `Reversed` parameter + - ☑ Fix for missing responsive button for `New-HTMLTable` + - ☑ Updates to offline `DataTables` library +## 0.0.116 - 2020.10.21 + - ☑ Charts improvement for `Flex` usage (doesn't require `Panel` anymore for positioning) +## 0.0.115 - 2020.10.21 + - ☑ Updates to DataStore Javascript +## 0.0.114 - 2020.10.20 + - ☑ Small fix to `New-HTMLTable` with DataStore `JavaScript` +## 0.0.113 - 2020.10.19 + - ☑ `New-HTMLTable` - changes/improvements/adds + - ☑ Reworked JS/CSS loading for DataTables. It should now load less JS/CSS code by default making HTML smaller and more readable especially if not using all features + - [ ] Some more work in this area is required. Small breaking change was introduced + - ☑ **Breaking Change** - Renamed `DisableColumnReorder` to `EnableColumnReorder` + - [ ] The reason for this is that the functionality is most likely used by very few people if at all + - [ ] This, in turn, allows me to load JS/CSS for ColumnReordering only when someone requests for this functionality + - ☑ Added `EnableRowReorder` + - ☑ Added `EnableKeys` (excel like movement) to `New-HTMLTable`. Probably could add more options for this via nested `New-TableXXX` + - ☑ Added `PagingLength` to `New-HTMLTable`. This improves `PagingOptions` / `DisablePaging`. + - If user doesn't set Paging Length it will use defaults + - If user doesn't set Paging Options it will use default `@(15, 25, 50, 100)` + - If user doesn't set Paging Length, but sets different Paging Options such as `@(5,10,15)`, initial paging length will be set to lowest value `5` + - If user sets paging options and sets paging length it will set as requested + - ☑ Added `EnableScroller` to `New-HTMLTable`. This improves `ScrollY`. It allows to load data as it appears rather than loading everything. Should be plenty useful in JavaScript DataStore for large datasets + - [ ] Enabling Scroller doesn't require ScrollY enablement, but it will use ScrollSizeY default 500px. You can change it tho. + - ☑ Added `EnableAutoFill` to `New-HTMLTable` + - ☑ Improved `New-HTMLTable` to load only required CSS/JS (hopefully nothing will be broken) + - ☑ Updated `Out-HTMLView` with all new and old parameters to keep it synced with same the features as `New-HTMLTable` - hopefully, I didn't break anything + - ☑ Updated some `DataTables` JS/CSS versions + - [ ] `New-HTMLTableOption` allows now to define `BoolAsString`, `NumberAsString` and `DateTimeFormat` + - [ ] This only works in `JavaScript` and `AjaxJSON` datastore. + - [ ] This allows one to better control how they want their bools, numbers, and DateTime displayed + - [ ] For example: `New-HTMLTableOption -DateTimeFormat "yyyy-MM-dd HH:mm:ss" -BoolAsString` + - [ ] It will make sure all dates are converted to their string representation as requested + - [ ] Default DateTime is `yyyy-MM-dd HH:mm:ss` + - [ ] This is possible thanks to `ConvertTo-JsonLiteral` which is my own implementation of `ConvertTo-JSON` + - ☑ Navigation Functionality (WIP) + - ☑ Added `New-HTMLNav` command (WIP) + - ☑ Added `New-HTMLNavLink` command (WIP) + - ☑ Wizard Functionality + - ☑ Added `New-HTMLWizard` + - ☑ Added `New-HTMLWizardStep` + - ☑ Other + - ☑ Changed `New-HTMLText` to add `5px` margin. Hopefully things are not affected. + - ☑ Added `New-HTMLTabPanel` - additional way to define tabs + - ☑ Updated `JustGate` from 1.3.5 to 1.4.0 + - ☑ Updated `EnlighterJs` from 3.0 to 3.4.0 + - ☑ Small updates to `New-HTMLCodeBlock` + - ☑ Fix for `New-HTMLChart` broken `Title` parameter + - ☑ `New-HTMLList` and `New-HTMLListItem` updated with `FontSize` +## 0.0.112 - 2020.10.06 + - Fixed issue with x2 PDF Export button - [If ScrollY is selected the pdf button is doubled then #154](https://github.com/EvotecIT/PSWriteHTML/issues/154) - tnx Jekastr + - Better handling of empty data in `New-HTMLTable` +## 0.0.111 - 2020.10.05 + - Added `New-HTMLOrgChart` (WIP) + - Added `New-OrgChartNode` (WIP) +## 0.0.110 - 2020.09.29 + - Fix for `New-HTMLImage` messed up height with width +## 0.0.109 - 2020.09.28 + - If no author is provided meta is not added + - `EmailText` `size` parameter supports the usual settings as described below + - Removed `EmailText` and added it as an alias to `New-HTMLText` which does the same thing + - Renamed `EmailHTML` to `Add-HTML`, added `EmailHTML` as alias - this allows to inline any code wherever it's used + - Added `EmailImage` as alias to `New-HTMLImage` + - Added `Inline` switch to `New-HTMLImage (EmailImage)` which embeddes given url/file image directly into HTML + - Improved `New-HTMLImage/EmailImage` + - Prevents errors `New-HTMLTable` if null is passed as the first element in DataTable (skips processing) +## 0.0.108 - 2020.09.23 + - Added escaping regex for string comparison during `New-TableEvent` +## 0.0.107 - 2020.09.23 + - Fix for Table Redraw/Calendar Redraw when tab switching/section collapsing +## 0.0.106 - 2020.09.23 + - Fix for `New-TableEvent` not working properly for column id different than `1` + - Improvements to `New-TableEvent` introducing Source/Target columns with Source Column Names support +## 0.0.105 - 2020.09.23 + - Improved `New-HTMLTable` - removed page button if `DisablePaging` or `ScrollY` is selected + - Updated PSD1 to a better version + - Fix for `New-HTMLTable` always forcing to HTML if not global option was used +## 0.0.104 - 2020.09.14 + - Added `notlike`/`notcontains` operators to `New-TableCondition` + - Fixed `like/notcontains` operators for JavaScript datasource in `New-TableCondition` +## 0.0.103 - 2020.09.13 + - Fix for wrong custom CSS placement +## 0.0.102 - 2020.09.13 + - **Updates** + - Fix for `New-DiagramEvent` to work while `FontIcons` are used + - Some improvements to `New-HTMLPanel` to better positioning Diagrams + - Added Loading Bar to `New-HTMLDiagram`. You can disable it using the `DisableLoader` switch. +## 0.0.101 - 2020.09.12 + - **Updates** + - ☑ Added `Transpose` to `New-HTMLTable`/`Out-HtmlView` +## 0.0.100 - 2020.09.12 + - **Library updates** + - Update to `Apex Charts` from 3.20.0 to 3.20.1 + - **Updates** + - ☑ Fix long-lasting issue with loading `FontIcons` in diagrams. Should be visible now. + - ☑ Support for nested hashtables `ConvertTo-CascadingStyleSheets` + - ☑ Fix/workaround for IE11 issue with section not showing any data, broken in 0.0.99 +## 0.0.99 - 2020.09.07 + - **Notes** + - ☑ `UTF8` will be set by default for `HTML`. `Email` will pick content encoding from `HTML` + - ☑ It was already set for `HTML` for `charset` so just making sure it's all the same + - ☑ Encoding parameter for `EmailOption` and `Email` are DEPRECATED + - ☑ Whatever you set there doesn't matter - it will always be set to `UTF8`. From my tests setting it to anything else messes up display in some clients + - ☑ While not really breaking change, just thought I would make sure people are aware + - ☑ The reason is HTML was always `UTF8` and setting it up on transport level to `Unicode` or other encodings would break things + - ☑ In outlook it wouldn't matter as it would fix it, but in other clients such as Thunderbird it would go nuts + - **Library updates** + - Update to `vis-network` from 8.2.1 to 8.3.2 + - **New/Non-Breaking** + - ☑ Added aliases for `New-HTMLTableOption` + - ☑ Fixes for Request Configuration for Sections and Panels + - ☑ Fixes meta tags for HTML4/HTML5 + - ☑ Addeed **NoClosing** parameter to `New-HTMLTag` + - ☑ Improvements to `Section` Hiding horizontally and vertically + - ☑ Improvements to diagram resizing when section resizes - should be no need to resize diagram anymore +## 0.0.98 - 2020.08.30 + - **New/Non-Breaking** + - ☑ Added `DataStoreID` to `New-HTMLTable` for use with `DataStore = JavaScript` + - ☑ This allows multiple tables to use the same data. Useful if you want to present the same data in different tables across a single HTML file. + - ☑ Fixes for JavaScript datastore and conditional formatting +## 0.0.97 - 2020.08.29 + - **Breaking changes** + - ☑ Diagrams + - ☑ New-DiagramLink + - [ ] `ArrowsToEnabled` -> `nullable bool` replaced with `switch` + - [ ] `ArrowsMiddleEnabled` -> `nullable bool` replaced with `switch` + - [ ] `ArrowsFromEnabled` -> `nullable bool` replaced with `switch` + - [ ] `ArrowStrikethrough` -> `nullable bool` replaced with `switch` + - [ ] `Chosen` -> `nullable bool` replaced with `switch` + - [ ] `FontSize` -> `int` replaced with `object` - check notes in `0.95` + - [ ] `FontStrokeWidth` -> `int` replaced with `object` - check notes in `0.95` + - **New/Non-Breaking** + - ☑ New-DiagramNode + - [ ] Exposed `ArrowsToEnabled`, `ArrowsMiddleEnabled`, `ArrowsFromEnabled` + - ☑ Update to Diagram Height accepting multiple size values + - ☑ This allows for `New-HTMLDiagram -Height 'calc(100vh - 50px)'` which fills whole screen (within section) + - ☑ Or this `New-HTMLDiagram -Height 'calc(100vh - 50px)' -Width '50vw'` although not that useful, as flex fixes most of it + - ☑ Updates `New-DiagramOptionsPhysics` - exposed a bunch of new options plus help + - ☑ Updates `New-DiagramOptionsLayout` - added some help and new options + - **Updated library** + - ☑ `Vis-network` to 8.2.1 +## 0.0.96 - 2020.08.28 + - ☑ It seems SearchPanes from DataTables conflict with `New-HTMLDiagram` + - ☑ Separated that library to be added only on demand +## 0.0.95 - 2020.08.27 + - **Notes** + - I'm reworking CSS model in which PSWriteHTML works allowing for more consistent design and more customization options. This means some breaking changes will happen soon enough. + - FontSize will be reworked for most commands (as I get to them) to take `[int]` input but also `[string]` input + - If `[int]` is provided it assumes size given in `px`. If text is provided it takes it as is. + - If `15` this means `15px` + - If `15px` this means `15px` + - If `15pt` this means `15pt` + - If `'15'` this means `15px` as it will convert to `[int]` first + - Anything else will be treated as is meaning you know what you are doing + - **Breaking changes** + - ☑ Default Font Size for everything is `8pt`. This includes: + - ☑ Tabs used to have `15px`. Now by default `8pt`. You will need `New-HTMLTabOption -FontSize '15px'` or `New-HTMLTabOption -FontSize 15` to set default fontsize for Tabs to it's old value (along with other customizations if needed) + - ☑ Inputs for Tables (Filtering) having static `8pt` + - **Improvements** + - ☑ `New-HTMLMain` - allows customizing font size, font type, background color, and text color globally - this will overwrite defaults as described above + - ☑ Fix TempFilePath for `Email` to work correctly on MacOS/Linux - tnx roberttoups [#146](https://github.com/EvotecIT/PSWriteHTML/pull/146) + - ☑ Auto-wrapping of Tabs is enabled - can be disabled via `New-HTMLTabOption` + - ☑ Bunch of options to control wrapping/direction of tabs via `New-HTMLTabOption` + - ☑ Ability to define `RowElements` in `New-HTMLTabOption` to force number of tabs per row + - ☑ Fixed BackgroundColor for `New-HTMLTabOption` + - ☑ Removed `default.css` in favor of native powershell css + - ☑ `New-HTMLTable` warning - `Hiding footer while filtering is requested without specifying FilteringLocation to Top or Both` + - ☑ Fixed broken `Tab` switching in **Internet Explorer 11** + - ☑ Added basic support for `SearchPane` within `New-HTMLTable` + - ☑ Fixed broken `Tables` refresh on `Tabs` when using named `Tables` + - ☑ Fixed `New-HTMLTable`/`Out-HTMLView` with `-AllProperties` displaying wrong properties for IDictionary objects + - ☑ Fixed `New-HTMLTable` properly displaying string/int and other data if passed as a single value + - ☑ Fixed `New-HTMLTable` properly display ordered dictionary, array of strings, array of singular objects, PSCustomObject with 1 column + - ☑ Fixed `New-HTMLTable` properly displaying column name as `Name` in PowerShell 5.1 when used with int/string + - ☑ Fixed `New-HTMLText` font size was ignored. Also now supports 15, 15px, 15pt as described in notes. + - ☑ Resolves peformance issues by adding new parameter `DataStore` for `New-HTMLTable` to use with large tables + - **Added cmdlets** + - ☑ `New-HTMLTableStyle` + - ☑ `New-HTMLTableOption` - added to provide `DataStore` parameter which globally sets required store, may be used for other things in future + - ☑ `New-ChartTimeLine` - added basic support for TimeLine Charts + - **Renamed cmdlets** (non-breaking change via aliases) + - ☑ `New-HTMLTabOption` -> `New-HTMLTabStyle` + - ☑ `New-HTMLSectionOption` -> `New-HTMLSectionStyle` + - **Library updates** + - `DataTables` and all related libraries + - `JQuery` to 3.5.1 + - `ApexCharts` updated from 3.18.2 to 3.20 + - `FontAwesome` updated from 5.13 to 5.14 +## 0.0.94 - 2020.08.18 + - Public + - ☑ Added `New-TableEvent` for `New-HTMLTable` **experimental** +## 0.0.93 - 2020.08.16 + - Public + - Fixes + - ☑ Fix for `New-HTMLTabOption` switch "-SelectorColor" sets the color permanently [#128](https://github.com/EvotecIT/PSWriteHTML/issues/128) + - ☑ Fix for `InvokeHTMLTags` in `New-HTMLTable` - replacement of (`&` to `&`) and (` ` to ``) + - ☑ Before it would try to change from `' ` to `` which is wrong. Hopefully, nothing will be broken after that + - Improvements + - ☑ Choosing colors should be easier (wildcard added before and after) + - ☑ Make it optional for `New-HTMLTab` to force TextTransform (uses global) + - ☑ `New-HTMLSection`/`New-HTMLPanel` were updated to support additional options + - New + - ☑ Added `ConvertTo-CascadingStyleSheets` - converts hashtable into CSS + - ☑ Added `New-HTMLSectionOption` - **experimental** + - ☑ Added `New-HTMLPanelOption` - **experimental** + - ☑ Added `AnchorName` for sections and panels + - ☑ Added `New-HTMLAnchor/New-HTMLLink` + - Internal + - ☑ Support internally for `Custom Header CSS`, `Custom Footer CSS` +## 0.0.92 - 2020.08.08 + - Fixes `New-HierarchicalTreeNode` not recognized in latest modules [#141](https://github.com/EvotecIT/PSWriteHTML/issues/141) +## 0.0.91 - 2020.08.03 + - Refreshing release - fix for Remove-EmptyValue +## 0.0.90 - 2020.07.27 + - Added `New-TableColumnOption` for `New-HTMLTable` - tnx zsoch [#138](https://github.com/EvotecIT/PSWriteHTML/pull/138) + - Removed dead/old `FullCalendar` js code + - Updated `JustGage` to 1.3.5 +## 0.0.89 - 2020.07.23 + - Fix for Tooltips in FullCalendar 5.1 - tnx smasterson [#137](https://github.com/EvotecIT/PSWriteHTML/pull/137) +## 0.0.88 - 2020.07.21 + - Updated `New-HTMLCalendar` with more options for `InitialView` parameter - tnx smasterson [#135](https://github.com/EvotecIT/PSWriteHTML/pull/135) +## 0.0.87 - 2020.07.20 + - Updated FullCalendar library to 5.1 from 4.3 + - `New-HTMLCalendar`- removed `plugins` parameter (no longer required) + - `New-HTMLCalendar` - removed `WeekNumbersWithinDays` (no longer required) + - `New-HTMLCalendar` - added `InitialView` parameter + - Fixed Tabs switching with multiple tables on each tab fails [#134](https://github.com/EvotecIT/PSWriteHTML/issues/134) + - Fixed Tabs switching with calendars [#133](https://github.com/EvotecIT/PSWriteHTML/issues/133) +## 0.0.86 - 2020.07.14 + - Fix for missing `Get-TemporaryDirectory` during merge - damn nested ASTTokens + - Module is now signed (hopefully that doesn't break anything) +## 0.0.85 - 2020.06.27 + - Update `New-HTMLSpanStyle` with some protection for errors + - Fix from PSSCriptAnalyzer - The Variable 'Event' is an automatic variable that is built into PowerShell, assigning to it might have undesired side effects. If the assignment is not by design, please use a different name. +## 0.0.84 - 2020.06.11 + - `Colors` autocompleter should be now a bit smarter + - Added `Online` to `EmailBody` + - `EmailBody` can be used separately now to generate HTML in case someone would like to use it with their own Send Email + - Say .. using `Mailozaurr` (new PowerShell module) + - `Email` has `OutputHTML` parameter which can send email but also output HTML for whatever reason + +## 0.0.83 - 2020.05.27 + - Fix for `New-HTMLMain` and junk code showing up in HTML + +## 0.0.82 - 2020.04.23 + - `New-HTMLTable` added ability to define Title which will be used as the filename when exporting + - If no Title is defined title is used from `New-HTML` + - If no Title is provided name of button will be used (default) + - `New-TableButtonXXX` also have `Title` field which allows different naming for buttons + +## 0.0.81 - 2020.04.18 + - `New-HTMLDiagram` keeps expanding without height bug fixed ([#113](https://github.com/EvotecIT/PSWriteHTML/issues/113)) with huge help from Thomaash + +## 0.0.80 - 2020.04.13 + - **DEPRECATED**: `UseJavaScriptLinks` and `UseCssLinks` for `New-HTML`. Use `Online` switch instead. + - Updated Vis.JS to 7.5.2 + - Updated FontAwesome to 5.13 and hopefully made it available offline + - Updated ApexCharts to 3.18.1 + - Changed default for Email to Offline. Use `Online` switch to minimize content. + - `New-HTMLTable` -HideButtons added [#114](https://github.com/EvotecIT/PSWriteHTML/issues/114) + +## 0.0.79 - 2020.03.24 + - Typo fixes for Suppress + - Added `AutoSize` parameter for `New-HTMLTable`/`EmailTable` + - `Out-HtmlView` switched to `Offline` mode by default. Added `Online` switch. + - Considering same approach to New-HTML (by default it's offline, but naming convention `UseJavaScriptLinks` and `UseCssLinks` is a bit weird) + +## 0.0.77 - 2020.03.04 + - Updates to New-HTMLStatusItem [#111](https://github.com/EvotecIT/PSWriteHTML/pull/111) - tnx jimmy58663 + - Support for FontAwesome, More colors and Hex. + - Fixes to New-HTMLHeading color property being empty + +## 0.0.76 - 2020.02.07 + - Added -PreventShowHTML to Out-HtmlView for quick use with Path. + +## 0.0.75 - 2020.02.07 + - Improvment for very long words in New-HTMLTable and New-TableContent using WordBreak parameter - issue [#107](https://github.com/EvotecIT/PSWriteHTML/issues/107) + +## 0.0.74 - 2020.01.26 + - Improvements to speed Targetted DataTable recalc for tabs and sections - pull [#105](https://github.com/EvotecIT/PSWriteHTML/pull/105) / issue [#101](https://github.com/EvotecIT/PSWriteHTML/issues/101) - tnx opustecnica + +## 0.0.73 - 2020.01.20 + - Fix for Out-HtmlView erroring out if Table was not given (or null) + +## 0.0.72 - 2020.01.13 + - Removed unused CSS + - Fix for Out-HtmlView buttons missing PageLength + - Added FavIcon to New-HTML [#99](https://github.com/EvotecIT/PSWriteHTML/issues/99) / [#102](https://github.com/EvotecIT/PSWriteHTML/pull/102) - tnx xlrod + - Updates to New-TableConditionalFormatting for IE 11 support [#100](https://github.com/EvotecIT/PSWriteHTML/pull/100) - tnx opustecnica + - Updates to Search via RegularExpressions [#100](https://github.com/EvotecIT/PSWriteHTML/pull/100) - tnx opustecnica + +## 0.0.71 - 2019.12.26 + - Fix for New-HTMLSection -JustifyContent missing in Invisible + - Added option to disable the "Properties" row in `Out-HTMLView -SkipProperties` for **Compare** feature (tnx **AdrianDeller**) ([#91](https://github.com/EvotecIT/PSWriteHTML/issues/91) / [#96](https://github.com/EvotecIT/PSWriteHTML/pull/96)) + - Added New-HTMLHeader, New-HTMLMain, New-HTMLFooter + +## 0.0.70 - 2019.12.19 + - Library update + - JQuery to 3.4.1 + - ApexCharts to 3.11.1, and set a static version (instead of the latest) + - Added New-HTMLTree, New-TreeNode (basic preview) + - Added New-HTMLHeader, New-HTMLFooter, New-HTMLMain allowing adding content before Tabs or after all content. ([#74](https://github.com/EvotecIT/PSWriteHTML/issues/74)) + +## 0.0.69 - 2019.12.10 + - Fix for EmailList [#90](https://github.com/EvotecIT/PSWriteHTML/pull/90) - tnx natosullivan + - Added New-HTMLGage, New-GageSector + +## 0.0.68 - 2019.12.07 + - Library update + - Vis-Network to 6.4.6 + - Diagrams now work in Internet Explorer (yay!) + - Add Tab border customization and Tab header background color (tnx xlrod!) [#87](https://github.com/EvotecIT/PSWriteHTML/pull/87) + - ☑ New-HTMLTabOption -SlimTabs -SelectorColor Blue **-BorderRadius 25px** **-BorderBackgroundColor LightBlue** + - Added Tests so basic stuff is tested for regression (it's very basic) + - Added alias for New-TableConditon (TableCondition) + +## 0.0.67 - 2019.11.26 + - Save-HTML improvment to save to temp file if saving fails (tnx xlrod!) ([#81](https://github.com/EvotecIT/PSWriteHTML/issues/81) / [#86](https://github.com/EvotecIT/PSWriteHTML/pull/86)) + - Fix for New-HTMLTable (Convert-ImagesToBinary) on PS 6/7 + +## 0.0.66 - 2019.11.25 + - Added JustifyContent to New-HTMLSection (thx xlrod!) ([#79](https://github.com/EvotecIT/PSWriteHTML/issues/79) / [#85](https://github.com/EvotecIT/PSWriteHTML/pull/85)) + +## 0.0.65 - 2019.11.23 + - Fix for Hashtable/OrderedDictionary display in New-HTMLTable/Out-HTMLView + +## 0.0.64 - 2019.11.21 + - Added TextTransform for New-HTMLTab (thx xlrod!) + +## 0.0.63 - 2019.11.17 + - Fix for WhatIf in Email affecting other places. It should only affect sending emails. + +## 0.0.62 - 2019.11.12 + - IE doesn't require approving running scripts anymore! (tnx orzfly) + +## 0.0.61 - 2019.11.11 + - New colors (tnx Ferdi), along with the ability to use #HEX as color codes + - Emailimo integrated into PSWriteHTML + - PSSharedGoods is no longer a dependency + - The way it works is that during development it still is dependency, but during publish it gets merged into one package using PSPublishModule + +## 0.0.60 - 2019.11.05 + - Fix for IE 11 support of collapsable sections + - Fix for nested, invisible sections not working properly +## 0.0.59 - 2019.10.29 + - Library update + - DataTables upgrade to Nightly (1.10.21-dev) due to broken Table Conditioning. Works with IE as well. +## 0.0.58 - 2019.10.28 + - Library update + - Vis-Network to 6.3.0 (known issue - IE not working) + - DataTables downgrade to 1.10.12 for IE to work + - Fix for IE 11 support of Tabs + - Fix for IE 11 support of Tables (Out-HTMLView/New-HTMLTable) + - Fix for Section that starts as Collapsed [#47](https://github.com/EvotecIT/PSWriteHTML/issues/47) + - It's a heavy fix, meaning it can have perf impact on display - may need changes + - Added New-TableRowGrouping + - Allows grouping within New-HTMLTable +## 0.0.57 - 2019.10.13 - [Blog post about release](https://evotec.xyz/nested-tabs-diagram-updates-diagram-events-calendar-object-and-more-in-pswritehtml/) + - Changes to Tabs + - Fix for missing comma in Tabs + - Fix for Tab Selector Color not being applied after changing to Nested Tabs + - Fix for Tab Selector not being Active by default + - Changes to Tables + - Updated Table Row size to 20px from 27px + - Renamed New-HTMLTable*commands to New-Table* to better reflect what they deliver (and those don't deliver HTML) + - Old commands still available as aliases + - Added **Calendar** + - Added New-HTMLCalendar + - Added New-CalendarEvent + - Added **HierarchicalTreeView** - very basic implementation. Not sure it will stick as Diagrams have that option as well **Requires feedback** + - Added New-HTMLHierarchicalTreeView + - Added New-HierarchicalTreeNode + - Changes to **Diagrams** + - Updated Visjs to 6.1.1 (local version), linked version is always the newest + - Added New-DiagramEvent for linking Tables with Diagrams + - Fix for Diagram Size + - Fix for using diagram defaults (smaller size), should work better now + +## 0.0.55 - 2019.09.29 + - Fix for Underlined space when using -Collapsable [#51](https://github.com/EvotecIT/PSWriteHTML/issues/51) - Thanks Tuxhedoh + - Fix for Stacked Charts [#59](https://github.com/EvotecIT/PSWriteHTML/issues/59) - Thanks for reporting colin-hall + - Fix for Section -Invisible switch + - Fix for Section impacting charts positioning + - Added BackgroundImage,BackgroundImageSize for New-HTMLDiagram (doesn't work for Export) + - Added Nested Tabs + +## 0.0.54 - 2019.09.29 - [Blog Post about release](https://evotec.xyz/easy-way-to-create-diagrams-using-powershell-and-pswritehtml/) + - **Support for Diagrams** + - Font Awesome updated to 5.11.2 + - Enlighter updated to 3.0 + - **Dashimo** integrated to **PSWriteHTML** as aliases + +## 0.0.53 - 2019.09.19 + - Bugfix chart inverse colors [#42](https://github.com/EvotecIT/PSWriteHTML/issues/42) - Thanks Ferdi Weiner + +## 0.0.52 - 2019.09.07 + - Library updates: + - ApexCharts update 3.8.5 + - ☑ New-HTMLChart + - ☑ Removed Positioning parameter + - ☑ Added New-ChartPie + - ☑ Added New-ChartRadial + - ☑ Added New-ChartDonut + - ☑ Added few parameters to New-HTMLChart + +## 0.0.51 - 2019.09.05 + - ☑ New-HTMLCode + - ☑ Added some formatting of whitespaces for code + +## 0.0.50 - 2019.08.30 + - ☑ Add-TableContent + - [ ] Fix for a typo on LE (tnx gregwold) + +## 0.0.49 - 2019.08.25 - [Blog post about release](https://evotec.xyz/comparing-two-or-more-objects-visually-in-powershell-cross-platform/) + - ☑ Save-HTML + - [ ] Moved some warnings to Verbose + - [ ] Fixed weird message + - ☑ New-HTMLTable, Out-HTMLView + - [ ] Added AllProperties switch + - [ ] Added Compare/Replacements + +## 0.0.48 - 2019.08.11 + - I don't know. Got confused about what was changed :-p + +## 0.0.47 - 2019.08.04 + - ☑ Fix for LOGO in PowerShell Core + - ☑ New-HTMLTable + - ☑ Added ImmediatelyShowHiddenDetails switch - Responsive has the ability to display the details that it has hidden in a variety of different ways. Its default is to allow the end-user to toggle the display by clicking on a row and showing the information in a DataTables child row. At times it can be useful not to require end-user interaction to display the hidden data in a responsive manner, which can be done with the childRowImmediate display type. + - ☑ Fix for New-HTML wrong positioning in certain conditions - bug introduced in 0.0.46 + - ☑ Fix for Table Simplify with margins + +## 0.0.46 - 2019.08.04 - [Blog post about release](https://evotec.xyz/working-with-html-in-powershell-just-got-better/) + - ☑ New-HTMLMessage - Removed as not ready, useless + - ☑ New-HTMLTable + - [ ] Disable Paging when amount of objects to display is lower then PagingOptions + - [ ] Added DataTableID for special use cases + - ☑ New-HTMLTableContent - Added with plenty of new features + - [ ] New HTMLTableConditionalFormatting - Added inline parameter + +## 0.0.45 - 2019.07.09 + - ☑ New-HTMLTable + - [ ] Added $PriorityProperties parameter - it works also on ScrollX and other types of places contrary to ResponsivePriorityProperties which only works on Responsive Table + - [ ] It was moved from Out-HtmlView + - ☑ Out-HTMLView + - [ ] Updated with all features from New-HTMLTable as it's useful to use it for fast output + +## 0.0.44 - 2019.07.08 + - ☑ New-HTMLTable + - [ ] Small improvement when no data provided + - ☑ New-HTMLTableCondition + - [ ] Supports contains now - PR by Adam Cook (codamok) + - [ ] Removed ColorSchemes - removal of ReportHTML old code + +## 0.0.43 - 2019.07.01 + - ☑ New-HTMLTable + - [ ] Fix for ScrollX with low amount of columns + +## 0.0.42 - 2019.07.01 + - ☑ New-HTMLTableConditionalFormatting + - [ ] Fix for Powershell Core, where conditional formatting wouldn't show up + +## 0.0.41 - 2019.06.30 + - ☑ New-HTMLTableHeader - removing need for AddRow switch + - [ ] If used with only Title it will assume AddRow + - [ ] If used with Names it will assume merging + - [ ] If used with Names without Title it will assume styling + - [ ] Left AddRow for compatibility reasons, may remove it in future + +## 0.0.40 - 2019.06.29 - [Blog post about release](https://evotec.xyz/all-your-html-tables-are-belong-to-us/) + - ☑ New-HTMLTable features + - ☑ FixedHeader/FixedFooter options + - ☑ Scrolling + - ScrollX, + - ScrollY, ScrollSizeY + - FreezeColumnsLeft, FreezeColumnsRight + - ☑ ResponsivePriorityOrder, ResponsivePriorityOrderIndex + - ☑ New-HTMLTableHeader - **new command** + - ☑ Merging header, styling header, adding header row + +## 0.0.39 - 2019.06.20 + - Fix for DefaultSortColumn + - Fix for DefaultSortOrder when set to descending + +## 0.0.38 - 2019.06.17 - [Blog post about release](http://evotec.xyz/dashimo-pswritehtml-charting-icons-and-few-other-changes) + - Added support for Bar Charts/Line Charts + - Added support for icons in tabs + - Added support for controlling tabs + - Fixes for tables in multiple places + - Ability to control buttons behavior + - Many many more, it's a big release + +## 0.0.34 - 2019.06.02 + - Fix for New-HTMLListItem to support multiple Texts + +## 0.0.33 - 2019.05.28 + - New-HTMLTable - Sorting ordered for DateTime - PR by Ferdi Weiner (ferwe) - Removed New-HTMLChart temporary as it will be rebuilt \ No newline at end of file diff --git a/Public/New-HTMLTable.ps1 b/Public/New-HTMLTable.ps1 index 476f4481..35b59dbf 100644 --- a/Public/New-HTMLTable.ps1 +++ b/Public/New-HTMLTable.ps1 @@ -193,7 +193,7 @@ Enables regular expression search. .PARAMETER WordBreak - Enables word breaking in the table. + Wraps cell text using the selected word-breaking style, including the first column. .PARAMETER AutoSize Automatically sizes the table. @@ -1527,7 +1527,10 @@ if ($WordBreak -ne 'normal') { New-HTMLTag -Tag 'style' { - ConvertTo-LimitedCSS -ClassName 'td' -ID $TableAttributes.id -Attributes @{ 'word-break' = $WordBreak } -Group + ConvertTo-LimitedCSS -ClassName 'td' -ID $TableAttributes.id -Attributes @{ + 'word-break' = $WordBreak + 'white-space' = 'normal' + } } } diff --git a/Tests/New-HTMLIssueFixes.Tests.ps1 b/Tests/New-HTMLIssueFixes.Tests.ps1 index 8dee57c6..3010c66c 100644 --- a/Tests/New-HTMLIssueFixes.Tests.ps1 +++ b/Tests/New-HTMLIssueFixes.Tests.ps1 @@ -3,6 +3,18 @@ BeforeAll { } Describe 'Issue-oriented HTML fixes' { + It 'emits usable wrapping CSS for long values in the first table column' { + $filePath = Join-Path $TestDrive 'word-break.html' + New-HTML -FilePath $filePath -Online { + New-HTMLTable -DataTable @([pscustomobject] @{ Device = 'LongDeviceNameWithoutSpaces'; State = 'Review' }) -DataTableID 'wrapTable' -WordBreak break-word + } + $content = Get-Content -LiteralPath $filePath -Raw + $content | Should -Not -Match '