summaryrefslogtreecommitdiff
path: root/apps/web/src/preview/components/cursors.ts
blob: f04dbef0fa0a63564e058bce74da80475a50de99 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function svgCursor({
	svg,
	hotspotX,
	hotspotY,
}: {
	svg: string;
	hotspotX: number;
	hotspotY: number;
}): string {
	return `url("data:image/svg+xml,${encodeURIComponent(svg)}") ${hotspotX} ${hotspotY}, crosshair`;
}

/** Hotspot is at the nib tip, which is where anchor points land. */
export const PEN_CURSOR = svgCursor({
	svg: `<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none">
  <path d="M 1 1 L 5 2 L 13 10 L 10 13 L 2 5 Z" fill="white" stroke="#111" stroke-width="1" stroke-linejoin="round"/>
  <path d="M 1 1 L 5 2 L 2 5 Z" fill="#111"/>
</svg>`,
	hotspotX: 1,
	hotspotY: 1,
});