# shellcheck shell=dash

___x_cmd_snap___whichpkg_(){
    x_=""
    local pkgmgr="$1"
    local name="$2"
    [ -n "$name" ] || N=snap M="Please provide the command name" log:ret:64

    local fp="$___X_CMD_PKG_SNAPLIST_FILE"
    [ -f "$fp" ] || {
        ___x_cmd pkg update_check || return $?
        [ -f "$fp" ] || N=snap M="Snap package list file not found -> $fp" log:ret:1
    }

    local sep="$___X_CMD_UNSEENCHAR_011"
    local pkgname=""; local l=""
    while read -r l; do
        tmpstr="${l#"${name}${sep}"}"
        [ "$tmpstr" != "$l" ] || continue
        pkgname="${tmpstr%%"${sep}"*}"
        case "$pkgmgr" in
            apt)    tmpstr="${tmpstr#*"${sep}"}"
                    x_="${tmpstr%%"${sep}"*}"
                    x_="${x_:-"$pkgname"}"
                    ;;
            pkg|*)  x_="$pkgname" ;;
        esac
        return 0
    done < "$fp"
    return 1
}
