Private/ConvertTo-PSSingleQuoted.ps1

function ConvertTo-PSSingleQuoted {
    # Escape a value for safe embedding INSIDE a single-quoted PowerShell literal ('...').
    #
    # Used by the script/.wsb generators (Configure-PSADTForInstaller,
    # Update-PSADTUninstallLogic, Update-PSADTProcessesToClose, New-IntuneRequirementScript,
    # Test-Win32ToolkitProject) so untrusted winget/registry values placed into generated
    # code are treated as DATA, not code. Also fixes benign apostrophe breakage (e.g.
    # Publisher "O'Reilly"). See knowledge-base/07-security-review.md.
    [CmdletBinding()]
    [OutputType([string])]
    param([AllowNull()][AllowEmptyString()][string]$Value)
    if ([string]::IsNullOrEmpty($Value)) { return '' }
    return $Value.Replace("'", "''")
}