PSWriteText.psd1

@{
    # Script module or binary module file associated with this manifest.
    RootModule = 'PSWriteText.psm1'

    # Version number of this module.
    ModuleVersion = '1.0.0'

    # Supported PSEditions.
    CompatiblePSEditions = @('Desktop', 'Core')

    # ID used to uniquely identify this module.
    GUID = '5d7d7611-0ee0-4e7d-a370-e7232694bf76'

    # Author of this module.
    Author = 'Steve H.'

    # Company or vendor of this module.
    CompanyName = 'Steve H.'

    # Copyright statement for this module.
    Copyright = '(c) 2026 Steven Hsin.'

    # Description of the functionality provided by this module.
    Description = 'A lightweight PowerShell console formatting module with segmented colors, ANSI styles, Unicode-aware alignment, and logging.'

    # Minimum version of the PowerShell engine required by this module.
    PowerShellVersion = '5.1'

    # Functions to export from this module.
    FunctionsToExport = @(
        'Write-Text'
    )

    # Cmdlets to export from this module.
    CmdletsToExport = @()

    # Variables to export from this module.
    VariablesToExport = @()

    # Aliases to export from this module.
    AliasesToExport = @()

    # Private data passed to the module specified in RootModule/ModuleToProcess.
    PrivateData = @{
        PSData = @{
            # Tags applied to this module.
            Tags = @(
                'PowerShell',
                'Console',
                'Terminal',
                'ANSI',
                'Color',
                'Formatting',
                'Unicode',
                'Logging',
                'Windows',
                'PSEdition_Desktop',
                'PSEdition_Core'
            )

            # URI to the license for this module.
            LicenseUri = 'https://github.com/steveh8758/PSWriteText/blob/main/LICENSE.md'

            # URI to the main website for this project.
            ProjectUri = 'https://github.com/steveh8758/PSWriteText'

            # URI to an icon representing this module.
            # IconUri = ''

            # Release notes for this module.
            ReleaseNotes = @'
Initial release of PSWriteText.
 
Features:
- Segmented foreground colors.
- Per-segment background colors.
- ANSI styles including Bold, Dim, Italic, Underline, Reverse, Strike, Blink, and Hidden.
- Combined ANSI styles such as Bold+Underline.
- Best-effort Unicode-aware horizontal centering with graceful fallback when RawUI is unavailable.
- Validated, consistent timestamps and bounded console spacing helpers.
- Optional UTF-8 file logging with literal-path handling and up to 5 retries.
- WhatIf and Confirm support for log appends.
- Non-terminating log errors by default, silent IgnoreLogError, and opt-in ErrorAction Stop.
 
PSWriteText is derived from and extends PSWriteColor by EvotecIT.
'@


            # Indicates that the module requires explicit license acceptance.
            RequireLicenseAcceptance = $false

            # External module dependencies for this module.
            ExternalModuleDependencies = @()
        }
    }
}