import { useNavigate } from "@solidjs/router";
import { ArrowDownLeft, ArrowUpRight, Plus, Scan } from "lucide-solid";
import { createSignal, JSX, onCleanup, onMount, Show } from "solid-js";
import { Circle } from "~/components";
import { useI18n } from "~/i18n/context";
function FabMenuItem(props: {
onClick: () => void;
disabled?: boolean;
children: JSX.Element;
}) {
return (
);
}
export function FabMenu(props: {
setOpen: (open: boolean) => void;
children: JSX.Element;
right?: boolean;
left?: boolean;
}) {
let navRef: HTMLElement;
const handleClickOutside = (e: MouseEvent) => {
if (e.target instanceof Element && !navRef.contains(e.target)) {
e.stopPropagation();
props.setOpen(false);
}
};
onMount(() => {
document.body.addEventListener("click", handleClickOutside);
});
onCleanup(() => {
document.body.removeEventListener("click", handleClickOutside);
});
return (
);
}
export function Fab(props: { onSearch: () => void; onScan: () => void }) {
const [open, setOpen] = createSignal(false);
const navigate = useNavigate();
const i18n = useI18n();
return (
<>