en-US/about_tcs.utils.help.txt

TOPIC
    about_tcs.utils

SHORT DESCRIPTION
    Scaffolding and utility functions for building tcs-style PowerShell modules.

LONG DESCRIPTION
    tcs.utils generates new modules, functions and Pester tests that follow the
    standard used across the TheCodeSaiyan PowerShell suite, and contains a few
    helpers for working with module source.

    Generators
        New-ModuleCustomTemplate Creates a module folder: psm1, manifest
                                   (requires tcs.core 0.3.0+), Config.ps1,
                                   README.md, .gitignore and folders.
        New-FunctionTemplate Creates function scripts with help and the
                                   tcs.core telemetry pattern.
        New-PesterCustomTests Creates Pester 5 tests that import the
                                   module the tests belong to.
        New-FunctionsFromSwagger Creates API wrapper functions from a
                                   Swagger/OpenAPI JSON file.

    Module utilities
        Convert-ModuleNameAndReferences Copies and renames a module.
        Export-ModuleToFlatTextAndManifest Exports a module to one text
                                              file and a JSON manifest.
        Import-ModuleFromFlatTextAndManifest Recreates the module from them.

    String utilities
        Edit-StringAtLine, Get-LeadingSpaceCount

    Windows only
        Get-MsiSequence reads sequences, files and custom actions from an MSI
        file or extracts it (Windows Installer COM and msiexec.exe).

    Generated modules never write into their own module folder when they are
    imported. Settings live in the user's settings folder managed by tcs.core
    (see Get-ModuleConfig and Set-ModuleConfig).

    Telemetry
        tcs.utils sends anonymous usage events through tcs.core
        (Invoke-TelemetryCollection) when it is imported and when each
        exported command starts and ends: command name, duration, success,
        exception type, PowerShell and OS version and a random installation
        ID. No user, machine, path or error text is sent. Turn it off with
        Set-ModuleConfig -ModuleName tcs.utils -Telemetry $false or by setting
        the TCS_TELEMETRY_OPTOUT environment variable to 1.

EXAMPLES
    New-ModuleCustomTemplate -Names 'tcs.example' -Path ./modules
    New-FunctionTemplate -Name 'Get-Example' -Path ./modules/tcs.example/Public
    New-PesterCustomTests -Source ./modules/tcs.example/Public

SEE ALSO
    about_tcs.core
    https://github.com/ntatschner/TheCodeSaiyan-PowerShell-tcs.utils

KEYWORDS
    tcs
    scaffolding
    module template