public/formatting/New-SpectreChartItem.ps1
using module "..\..\private\models\SpectreChartItem.psm1" using module "..\..\private\completions\Completers.psm1" using namespace Spectre.Console <# .SYNOPSIS Creates a new SpectreChartItem object. .DESCRIPTION The New-SpectreChartItem function creates a new SpectreChartItem object with the specified label, value, and color for use in Format-SpectreBarChart and Format-SpectreBreakdownChart. .PARAMETER Label The label for the chart item. .PARAMETER Value The value for the chart item. .PARAMETER Color The color for the chart item. Must be a valid Spectre color as name, hex or a Spectre.Console.Color object. .EXAMPLE $data = @() $data += New-SpectreChartItem -Label "Sales" -Value 1000 -Color "green" $data += New-SpectreChartItem -Label "Expenses" -Value 500 -Color "#ff0000" $data += New-SpectreChartItem -Label "Profit" -Value 420 -Color ([Spectre.Console.Color]::Blue) Write-SpectreHost "`nGenerate a bar chart`n" $data | Format-SpectreBarChart Write-SpectreHost "`nGenerate a breakdown chart`n" $data | Format-SpectreBreakdownChart #> function New-SpectreChartItem { [Reflection.AssemblyMetadata("title", "New-SpectreChartItem")] param ( [Parameter(Mandatory)] [string]$Label, [Parameter(Mandatory)] [double]$Value, [Parameter(Mandatory)] [ColorTransformationAttribute()] [ArgumentCompletionsSpectreColors()] [Color]$Color ) return [SpectreChartItem]::new($Label, $Value, $Color) } |