#!/usr/bin/env bash

#source ~/.dotfiles/nfrc.sh

cmd="fuzzel --minimal-lines --dmenu --hide-prompt"
exitnode=$(tailscale status --json | jq .ExitNodeStatus)

action=1
[ "$exitnode" = "null" ] && action=0

#action=$(printf "Connect exit node\nDisconnect" | $cmd --index)


case "$action" in
	0)
		echo '{"text": "connecting...", "class":"action"}'
		items=$(tailscale status | grep "exit node" | grep -v "offline" | awk '{print $2  " (" $1 ")"}')
		
		endpoint=$(echo -e "$items" | $cmd)
		[ -z "$endpoint" ] && exit
		tailscale set --exit-node="${endpoint% *}"
		tailscale up
		;; 
	1)
		echo '{"text": "disconnecting...", "class": "action"}'
		tailscale set --exit-node=
		tailscale up
		;; 
esac
