#!/bin/bash

change_version() {
	npm version --no-git-tag-version "$VERSION"

	sed -i '3d' package.json
	sed -i '3s|^|\t"version": "'$VERSION'",\n|' package.json
}

HEAD="$(git show -s --pretty=%d HEAD)"

echo $HEAD

VERSION="$(echo "$HEAD" | cut -d ',' -f2 | sed "s/-\([[:digit:]]\)/\.\1/g" | sed "s/[^[:digit:].]//g")"

echo "head version: $VERSION"

if [ -z "${VERSION}" ]; then
	PACKAGE=$(<package.json)
	VERSION=$(echo "$PACKAGE" | grep "version\":" | head -1 | cut -d ":" -f 2 | sed "s/[{, }, \", ',[:space:]]//g";)
fi

echo "package version: $VERSION"

if [ "$1" == "major" -o "$1" == "minor" -o "$1" == "patch" -o $? -ne 0 ]; then
  get_next_version $1
fi

echo "senior-ci version: $VERSION"

VERSION_HYPHEN=$(echo "v$VERSION" | sed "s/\.\([[:digit:]]\)/-\1/g")

git ls-remote --heads origin | grep -E "refs/heads/hotfix/${VERSION_HYPHEN}/$" >/dev/null

if [[ "$?" -eq "0" ]]; then
    echo "[CI] Já tem um hotfix para gerar a versão $VERSION, iremos considerrar a próxima"

  get_next_version $1 $VERSION

	VERSION_HYPHEN = $(echo "v$VERSION" | sed "s/\.\([[:digit:]]\)/-\1/g");
fi

echo -e "[CI] Version $VERSION_HYPHEN will be created\n"
