BOOTSTRAP_VERSION   := 4.5.1
JQUERY_VERSION      := 3.5.1
FONTAWESOME_VERSION := 5.15.4
POPPER_VERSION      := 1.16.1

STATIC := assets/static

.PHONY: all build-amd build-arm run clean update-assets
all:
	go build -ldflags "-w -s" -o frontend

build-amd:
	GOARCH=amd64 go build -ldflags "-w -s" -o frontend

build-arm:
	GOARCH=arm64 go build -ldflags "-w -s" -o frontend

run: 
	go build -ldflags "-w -s" -o frontend
	./frontend --servers="CR1<2602:f72e:a::1>,CR2<2602:f72e:a::2>" --proxy_port=8179 --protocol-filter=bgp

clean:
	rm -rf ./frontend

update-assets:
	mkdir -p $(STATIC)/bootstrap/css $(STATIC)/bootstrap/js
	mkdir -p $(STATIC)/jquery
	mkdir -p $(STATIC)/fontawesome/css $(STATIC)/fontawesome/webfonts
	curl -fL https://cdn.jsdelivr.net/npm/bootstrap@$(BOOTSTRAP_VERSION)/dist/css/bootstrap.min.css     -o $(STATIC)/bootstrap/css/bootstrap.min.css
	curl -fL https://cdn.jsdelivr.net/npm/bootstrap@$(BOOTSTRAP_VERSION)/dist/css/bootstrap.min.css.map -o $(STATIC)/bootstrap/css/bootstrap.min.css.map
	curl -fL https://cdn.jsdelivr.net/npm/bootstrap@$(BOOTSTRAP_VERSION)/dist/js/bootstrap.min.js      -o $(STATIC)/bootstrap/js/bootstrap.min.js
	curl -fL https://cdn.jsdelivr.net/npm/bootstrap@$(BOOTSTRAP_VERSION)/dist/js/bootstrap.min.js.map  -o $(STATIC)/bootstrap/js/bootstrap.min.js.map
	curl -fL https://cdn.jsdelivr.net/npm/jquery@$(JQUERY_VERSION)/dist/jquery.min.js                  -o $(STATIC)/jquery/jquery.min.js
	mkdir -p $(STATIC)/popper
	curl -fL https://cdn.jsdelivr.net/npm/popper.js@$(POPPER_VERSION)/dist/umd/popper.min.js            -o $(STATIC)/popper/popper.min.js
	curl -fL https://cdn.jsdelivr.net/npm/popper.js@$(POPPER_VERSION)/dist/umd/popper.min.js.map        -o $(STATIC)/popper/popper.min.js.map
	curl -fL https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@$(FONTAWESOME_VERSION)/css/all.min.css -o $(STATIC)/fontawesome/css/all.min.css
	curl -fL https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@$(FONTAWESOME_VERSION)/webfonts/fa-brands-400.woff2  -o $(STATIC)/fontawesome/webfonts/fa-brands-400.woff2
	curl -fL https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@$(FONTAWESOME_VERSION)/webfonts/fa-brands-400.woff   -o $(STATIC)/fontawesome/webfonts/fa-brands-400.woff
	curl -fL https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@$(FONTAWESOME_VERSION)/webfonts/fa-regular-400.woff2 -o $(STATIC)/fontawesome/webfonts/fa-regular-400.woff2
	curl -fL https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@$(FONTAWESOME_VERSION)/webfonts/fa-regular-400.woff  -o $(STATIC)/fontawesome/webfonts/fa-regular-400.woff
	curl -fL https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@$(FONTAWESOME_VERSION)/webfonts/fa-solid-900.woff2   -o $(STATIC)/fontawesome/webfonts/fa-solid-900.woff2
	curl -fL https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@$(FONTAWESOME_VERSION)/webfonts/fa-solid-900.woff    -o $(STATIC)/fontawesome/webfonts/fa-solid-900.woff