Private/Get-BridgeNameFromUri.ps1

function Get-BridgeNameFromUri {
    [CmdletBinding()]
    <#
    .SYNOPSIS
    Αναγνωρίζει το όνομα γέφυρας από URI εικόνας.

    .DESCRIPTION
    Η Get-BridgeNameFromUri αναλύει το URI μιας εικόνας και επιστρέφει
    το αναγνωριστικό της γέφυρας (π.χ. Ποσειδωνία ή Ισθμία).

    .PARAMETER ImageUri
    Η διεύθυνση URI της εικόνας προς ανάλυση.

    .OUTPUTS
    [string] - Το όνομα της γέφυρας ('Ισθμία', 'Ποσειδωνία' ή 'Άγνωστη').

    .EXAMPLE
    Get-BridgeNameFromUri -ImageUri 'https://example.com/image-bridge-posidonia.jpg'
    # Returns: 'Ποσειδωνία'

    .EXAMPLE
    Get-BridgeNameFromUri -ImageUri 'https://example.com/bridge-isthmia-status.png'
    # Returns: 'Ισθμία'

    .NOTES
    Χρησιμοποιεί case-insensitive regex matching για αναγνώριση ονόματος.
    Επιστρέφει 'Άγνωστη' αν δεν αναγνωριστεί η γέφυρα.
    #>
    [OutputType([string])]
    param (
        [Parameter(Mandatory)]
        [ValidateScript({ [Uri]::IsWellFormedUriString($_, [UriKind]::Absolute) })]
        [string]$ImageUri
    )
    switch -Regex ($ImageUri.ToLowerInvariant()) {
        'isthmia' { return 'Ισθμία' }
        'posidonia' { return 'Ποσειδωνία' }
        default {
            $writeBridgeLogSplat = @{
                Stage   = 'Ανάλυση'
                Message = "⚠️ Δεν αναγνωρίστηκε η γέφυρα στο URI: $ImageUri"
            }
            Write-BridgeLog @writeBridgeLogSplat
            return 'Άγνωστη'
        }
    }
}