import { useListItem } from "@floating-ui/react";
import clsx from "clsx";
import { useSelect, SelectSelectionProps, Option } from ".";
export const departments = [
{ value: "38", label: "Isère" },
{ value: "74", label: "Haute-Savoie" },
{ value: "73", label: "Savoie" },
];
export const townsByDepartment = {
"38": [
{ value: "grenoble", label: "Grenoble" },
{ value: "meylan", label: "Meylan" },
{ value: "voreppe", label: "Voreppe" },
],
"73": [
{ value: "chambery", label: "Chambéry" },
{ value: "albertville", label: "Albertville" },
],
"74": [
{ value: "annecy", label: "Annecy" },
{ value: "annemasse", label: "Annemasse" },
{ value: "avoriaz", label: "Avoriaz" },
],
};
export const options = [
{ value: "abbeville", label: "Abbeville" },
{ value: "agde", label: "Agde" },
{ value: "agen", label: "Agen" },
{ value: "aixenprovence", label: "Aix-en-Provence" },
{ value: "ajaccio", label: "Ajaccio" },
{ value: "albi", label: "Albi" },
{ value: "alencon", label: "Alençon" },
{ value: "amiens", label: "Amiens" },
{ value: "angers", label: "Angers" },
{ value: "angouleme", label: "Angoulême" },
{ value: "annonay", label: "Annonay" },
{ value: "antibes", label: "Antibes" },
{ value: "arcachon", label: "Arcachon" },
{ value: "arles", label: "Arles" },
{ value: "arras", label: "Arras" },
{ value: "asnieres-sur-seine", label: "Asnières-sur-Seine" },
{ value: "aubagne", label: "Aubagne" },
{ value: "aubervilliers", label: "Aubervilliers" },
{ value: "aulnay-sous-bois", label: "Aulnay-sous-Bois" },
{ value: "avignon", label: "Avignon" },
{ value: "avranches", label: "Avranches" },
{ value: "avoriaz", label: "Avoriaz" },
{ value: "avray", label: "Avray" },
];
export function SelectOptionComponent({ icon, label }: StarOption) {
const { activeIndex, selectedIndex, getItemProps, handleSelect } = useSelect();
const { ref, index } = useListItem({ label });
const isActive = activeIndex === index;
const isSelected = selectedIndex === index;
return (
);
}
export type StarOption = Option & {
icon: string;
};
export function SelectSelectionComponent({ label, icon }: SelectSelectionProps) {
return label ? (
) : (
?
);
}