<script>
	export let x = 0;
	export let y = 0;

	function tap(node, callback) {
		function clickHandler(event) {
			callback({
				x: event.clientX,
				y: event.clientY
			});
		}

		node.addEventListener('click', clickHandler, false);

		return {
			destroy() {
				node.addEventListener('click', clickHandler, false);
			}
		};
	}
</script>

<button use:tap='{event => (x = event.x, y = event.y)}'>{x}, {y}</button>
