#Use Vulcanize 1.0
VULCANIZE1=true
# The list of files we want to go into core.js, which is concat'd and
# minified. These files should be either present in the project, brought
# into third_party/bower_compoents via bower, or in node_modules.
CORE_SOURCE_FILES = third_party/bower_components/webcomponentsjs/webcomponents.min.js \
          ../res/js/common.js \
          res/js/status_utils.js

BOWER_DIR=third_party/bower_components

include ../kube/kube.mk

.PHONY: all
all: clean_webtools status

# Build the web assets in production mode.
.PHONY: web
web: webpack touch_elements core_js elements_html
	ln -sf ../../res res/imp/res
	npx webpack --mode=production

.PHONY: touch_elements
touch_elements:
	rm -f res/js/core.js
	touch elements.html

.PHONY: serve
serve:
	npm ci
	npx webpack-dev-server --mode=development --watch-poll

testgo:
	go test ./go/... -v

testjs:
	npx webpack --mode=development
	xvfb-run --auto-servernum --server-args "-screen 0 1280x1024x24" npx karma start --single-run

# Increase Node's heap size to accommodate for ts-node's higher memory usage.
NODE_MEMORY_LIMIT=4096

.PHONY: puppeteer-test
puppeteer-test:
	NODE_OPTIONS="--max-old-space-size=$(NODE_MEMORY_LIMIT)" npx mocha -r ts-node/register ./**/*_puppeteer_test.ts
	echo "results are found in ../puppeteer-tests/output"

.PHONY: puppeteer-test-debug
puppeteer-test-debug:
	NODE_OPTIONS="--max-old-space-size=$(NODE_MEMORY_LIMIT)" npx mocha -r ts-node/register ./**/*_puppeteer_test.ts --inspect-brk
	echo "results are found in ../puppeteer-tests/output"

status: web
	CGO_ENABLED=0 GOOS=linux go install -a ./go/status

release: status
	./build_release

run_docker: release
	docker run status

push: release pushk
	pushk --message="$(MESSAGE)" --use-temp-checkout status

# Build debug versions of core.js and elements.html.
.PHONY: debug
debug: clean_webtools debug_core_js debug_elements_html

include ../webtools/webtools.mk
include webpack/webpack.mk

.PHONY: build-frontend-ci
build-frontend-ci:
	# The below commands use //status/webpack/webpack.config.ts to build the code in //status/webpack.
	# In the future this should probably be updated to target //status/webpack.config.ts instead.
	cd webpack && npm ci
	cd webpack && npx webpack --mode=production
