node_modules:
	npm install

.PHONY: watch
watch: node_modules
	npm start

clean:
	rm -rf dist/
	rm -f sha512sums

.PHONY: build
build: prod
prod: node_modules clean
	@echo Building with parcel
	NODE_DEV=production ./node_modules/.bin/parcel build --out-dir dist/app --public-url /app/ src/index.hbs
	NODE_ENV=production ./node_modules/.bin/parcel build --out-dir dist src/lost.html src/error.html

	@echo Generate checksums
	find ./dist/ -exec sha512sum {} + | awk -F \. '{ if($$4 != "map") print $$0}' | awk -F \/ '{ if($$3 == "lost.html") {} else if ($$3 == "error.html") {} else print $$0}' > sha512sums

	@echo Creating tarball
	tar -czf lateinicus-web.tar.gz dist/

dev: node_modules clean
	@echo Building with parcel
	NODE_ENV=development ./node_modules/.bin/parcel build --out-dir dist/app --public-url /app/ --no-autoinstall src/index.hbs
	NODE_ENV=development ./node_modules/.bin/parcel build --out-dir dist --no-autoinstall src/lost.html src/error.html

	chmod 604 -R dist/app/*
	chmod 604 dist/error.html dist/lost.html
	chmod 705 dist dist/app