#!/bin/bash

# Copyright: 2023 Virtuozzo International GmbH

# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at

# http://www.apache.org/licenses/LICENSE-2.0

# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.



[ -n "${PATHMANIPLIB_VERSION:-}" ] && return 0;
PATHMANIPLIB_VERSION="0.1";

function relativeName() {
    local path=$(readlink -f "$1") dir=$(readlink -f "$2") c;
    while [[ -n ${dir} ]]; do
        c=${dir%%/*};
        dir=${dir##"${c}"*(/)};
        [[ ${path%%/*} = "${c}" ]] && { path=${path##"${c}"*(/)}; } || { path=..${path:+/}${path}; }
    done
    echo "${path:-.}";
}

function basename() {
    local path=$1 suf=$2;

    [[ -z ${path} ]] && { echo; return; }
    path=${path%%*(/)};
    path=${path##*/};
    [[ ${suf} != "${path}" ]] && path=${path%"${suf}"};
    echo "${path:-/}";
}

function dirname() {
    local path=$1;

    [[ -z ${path} ]] && {
        echo .;
        return;
    }

    path=${path%%*(/)};
    [[ ${path:-/} != */* ]] && path=.;
    path=${path%/*};
    path=${path%%*(/)};
    echo "${path:-/}"
}
