#!/bin/bash

# variables
ID="automate-click"
BRANCH="master"

# check dependencies
MISSING_REQ=0
for req in mktemp wget unzip zip grep cut date;do
	type $req >/dev/null 2>&1 || { echo >&2 "Missing dependency: $req"; MISSING_REQ=1; }
done
[ $MISSING_REQ -ne 0 ] && { echo "Aborting because of missing dependency"; exit 1; }

# create tmp storage
ZIPFILE=$(mktemp)
EXTRDIR=$(mktemp -d)

# download latest source
wget -q --show-progress "https://github.com/igorlogius/$ID/archive/$BRANCH.zip" -O $ZIPFILE

# extract without paths and README and example_config.json
unzip -j $ZIPFILE -d $EXTRDIR -x "*/README" "*/example_config.json"

# re-pack as xpi (zip) without paths and extended file attributes 
XPI="$ID-$(grep '"version"' $EXTRDIR/manifest.json |cut -d'"' -f4)-$(date '+%F_%H-%M').xpi" 
zip -X -j $XPI $EXTRDIR/*

# remove tmp storage
rm -f $EXTRDIR/* && rmdir $EXTRDIR/

# show content of xpi
unzip -l $XPI

echo "Homepage:  https://addons.mozilla.org/en-US/firefox/addon/$ID"

# conditional export of artifact name for github release workflow 
[ -z ${GITHUB_ENV+x} ] || { echo "ARTNAME=$XPI" >> $GITHUB_ENV; }