#!/usr/bin/env bash

if [[ -z ${BUILDTYPE} ]]; then
  echo "! BUILDTYPE must be set to lib or app"
  exit 101
fi

export VERSION=$1
export NAME=$2
export TEMPLATE=$3

# export TEMPDEST=${BUILDTEMP}/${BUILDTYPE}/release/${VERSION}/${NAME}
# export BUILDDIR=${BUILDTEMP}/${BUILDTYPE}/build/${VERSION}/${NAME}

export TEMPDEST=${BUILDTEMP}/${VERSION}
export BUILDDIR=${BUILDTEMP}/.temp

if [[ -d ${BUILDDIR} ]]; then
  rm -rf "${BUILDDIR}"
fi

if [[ -z "${TEMPLATE}" ]]; then
  export TEMPLATE=default
fi

if [[ ! -d ${TOOLROOT}/templates/app ]]; then
  echo "! No installed templates. Use nobj-build-update to fetch them."
  exit 133
fi

if [[ ! -d ${TOOLROOT}/templates/app/${TEMPLATE} ]]; then
  echo "! Template ${TEMPLATE} not found, valid templates are:"
  ls -1 "${TOOLROOT}/templates/app/"
  exit 240
fi

echo "------------"
echo "- ${BUILDTYPE} ${NAME}, version ${VERSION}, template ${TEMPLATE}"
echo "- TOOLROOT ..... ${TOOLROOT}"
echo "- SOURCEROOT ... ${SOURCEROOT}"
echo "- TargetPath ... ${TEMPDEST}"
echo "- Cloud Path ... ${CLOUDDEST}"
echo "------------"

if [ -d "$TEMPDEST" ]; then
  rm -rf "$TEMPDEST"
fi

echo "- Creating Destination $TEMPDEST"
mkdir -p "$TEMPDEST" || exit 1

# 2022 - do not touch if not exist ... good idea?
# touch "$TEMPDEST/${BUILDTYPE}.js"
# touch "$TEMPDEST/${BUILDTYPE}.css"
# touch "$TEMPDEST/${BUILDTYPE}.html"

if [[ -d "${BUILDDIR}" ]]; then
  rm -rf "${BUILDDIR}"
fi

echo "- Creating Build Dir ${BUILDDIR}"
mkdir -p "${BUILDDIR}" || exit 3
