# shellcheck shell=dash disable=2154
# TODO: future add type check

# X_envy_compile_kp=".theme.feature"
# X_envy_compile_perfix="XT"
# X_envy_compile_local=enable
# X_envy_compile_override=enable

___x_cmd_envy_compile(){
    local ymlfp="$1"
    local envfp="$2"

    local X_envy_compile_local="${X_envy_compile_local:-disable}"
    local X_envy_compile_override="${X_envy_compile_override:-enable}"
    local X_envy_compile_backup="${X_envy_compile_backup:-disable}"

    [ -f "$ymlfp" ] || N=envy M="Not found yml file" log:ret:64
    ___x_cmd ensurefp "$envfp"

    X_envy_compile_kp="${X_envy_compile_kp}"            \
    X_envy_compile_perfix="${X_envy_compile_perfix}"    \
    X_envy_compile_local="${X_envy_compile_local}"      \
    X_envy_compile_override="${X_envy_compile_override}" \
    X_envy_compile_backup="${X_envy_compile_backup}" \
    < "$ymlfp" ___x_cmd cawk \
        -f "$___X_CMD_ROOT_MOD/awk/lib/re.awk"      \
        -f "$___X_CMD_ROOT_MOD/awk/lib/j/json.awk"  \
        -f "$___X_CMD_ROOT_MOD/awk/lib/j/jiter.awk" \
        -f "$___X_CMD_ROOT_MOD/yml/lib/yutil.awk"   \
        -f "$___X_CMD_ROOT_MOD/yml/lib/ystr.awk"    \
        -f "$___X_CMD_ROOT_MOD/yml/lib/yparse.value.awk"    \
        -f "$___X_CMD_ROOT_MOD/yml/lib/yparse.json.awk"     \
        -f "$___X_CMD_ROOT_MOD/yml/lib/yparse.awk"          \
        -f "$___X_CMD_ROOT_MOD/envy/lib/awk/util.awk"       \
        -f "$___X_CMD_ROOT_MOD/envy/lib/awk/compile.awk" > "$envfp"

    [ -f "$envfp" ] || N=envy M="Expect to be file ==> $envfp" log:ret:1
}
