Private/Prompt/Get-BundledThemePath.ps1

function Get-BundledThemePath {
    <#
    .SYNOPSIS
        Returns the absolute path to one of the module's bundled oh-my-posh themes.
 
    .DESCRIPTION
        Single source of truth for the location of a bundled theme (Assets/Themes/<Name>.omp.json),
        reused by Enable-OhMyPosh, Initialize-PwshProfile, Get-OhMyPoshTheme, and Export-OhMyPoshTheme
        so the path is resolved one way. $PSScriptRoot here is Private/Prompt/, so '..\..' reaches the
        module root and 'Assets/Themes' the theme folder beneath it.
 
        The path is returned whether or not the file exists; callers decide how to handle a missing
        file (Enable-OhMyPosh falls back to oh-my-posh's own default; the Get/Export functions
        throw a clear error).
 
    .PARAMETER Name
        The bundled theme to resolve, without the .omp.json suffix (e.g. 'screwcity'). Defaults to
        'screwcity', the module's original theme. Run Get-BundledThemeName for the full list of
        bundled themes.
 
    .EXAMPLE
        $theme = Get-BundledThemePath
 
        Returns the path to the default 'screwcity' theme.
 
    .EXAMPLE
        $theme = Get-BundledThemePath -Name forestcity
 
        Returns the path to the 'forestcity' (Forest City) theme.
    #>

    [CmdletBinding()]
    param(
        [Parameter(Position = 0)]
        [string]$Name = 'screwcity'
    )

    Join-Path $PSScriptRoot '..' '..' 'Assets' 'Themes' "$Name.omp.json"
}