#!/bin/bash -e fatal() { echo "Fatal: $*" 1>&2; exit 1; } usage() { cat</dev/null || fatal "curl not found" command -v sha256sum >/dev/null || fatal "sha256sum not found" while IFS=' ' read -r HASH SRC; do local DST=".vendor/$(basename $SRC)" _vendor_get_verify "$SRC" "$DST" "$HASH" case "$DST" in *.js) cat "$DST" >> vendor.js ;; *.css) cat "$DST" >> vendor.css ;; esac done < <(_vendor_files) sha256sum vendor.js sha256sum vendor.css } _tailwind() { # tailwindcss v3.1.6 OPTS="$@" command -v tailwindcss >/dev/null || fatal "tailwindcss not found" [ -e "tailwind.input.css" ] || fatal "tailwind.input.css not found" [ -e "tailwind.config.js" ] || fatal "tailwind.config.js not found" tailwindcss $OPTS --minify -i tailwind.input.css -o tailwind.css } main() { cd $(dirname $(realpath $0)) case $1 in ""|-h|--help|help) usage;; all) _vendor; _tailwind;; vendor) _vendor;; tailwind) shift; _tailwind $@;; *) fatal "unrecognized command: $1";; esac } main "$@"