@chekinapp/ui 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +211 -52
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +29 -1
- package/dist/index.d.ts +29 -1
- package/dist/index.js +208 -50
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -2332,6 +2332,34 @@ declare const AirbnbInput: React$1.ForwardRefExoticComponent<React$1.InputHTMLAt
|
|
|
2332
2332
|
renderErrorMessage?: boolean;
|
|
2333
2333
|
} & React$1.RefAttributes<HTMLInputElement>>;
|
|
2334
2334
|
|
|
2335
|
+
type PhoneFieldOption = {
|
|
2336
|
+
value: string;
|
|
2337
|
+
label: string;
|
|
2338
|
+
disabled?: boolean;
|
|
2339
|
+
};
|
|
2340
|
+
type PhoneFieldValue = {
|
|
2341
|
+
code: string;
|
|
2342
|
+
number: string;
|
|
2343
|
+
};
|
|
2344
|
+
type PhoneFieldProps = {
|
|
2345
|
+
variant?: 'default' | 'airbnb';
|
|
2346
|
+
label: string;
|
|
2347
|
+
topLabel?: string;
|
|
2348
|
+
value?: PhoneFieldValue | null;
|
|
2349
|
+
onChange: (value: PhoneFieldValue) => void;
|
|
2350
|
+
options: PhoneFieldOption[];
|
|
2351
|
+
placeholder?: string;
|
|
2352
|
+
disabled?: boolean;
|
|
2353
|
+
error?: string;
|
|
2354
|
+
className?: string;
|
|
2355
|
+
name?: string;
|
|
2356
|
+
codeName?: string;
|
|
2357
|
+
numberName?: string;
|
|
2358
|
+
mobileTitle?: string;
|
|
2359
|
+
codePlaceholder?: string;
|
|
2360
|
+
};
|
|
2361
|
+
declare function PhoneField({ variant, label, topLabel, value, onChange, options, placeholder, disabled, error, className, name, codeName, numberName, mobileTitle, codePlaceholder, }: PhoneFieldProps): react_jsx_runtime.JSX.Element;
|
|
2362
|
+
|
|
2335
2363
|
type SelectValue = string | number;
|
|
2336
2364
|
type SelectRenderTriggerProps<T = undefined, V extends SelectValue = string, L extends string | number | React$1.ReactNode = string> = {
|
|
2337
2365
|
id: string;
|
|
@@ -2415,4 +2443,4 @@ declare const SearchableSelect: SearchableSelectComponent;
|
|
|
2415
2443
|
|
|
2416
2444
|
declare function cn(...inputs: ClassValue[]): string;
|
|
2417
2445
|
|
|
2418
|
-
export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, AccordionTrigger, type AccordionTriggerProps, AirbnbInput, type AirbnbInputProps, AirbnbSearchInput, AirbnbSelect, type AirbnbSelectProps, AlertBox, type AlertBoxProps, AlertSize, AlertSizes, AlertType, AlertTypes, AudioPlayer, type AudioPlayerProps, Avatar, type AvatarProps, Badge, type BadgeProps, BaseCheckbox, type BaseCheckboxProps, BetaBadge, type BetaBadgeProps, BookmarkTabsList, type BookmarkTabsListProps, BookmarkTabsTrigger, type BookmarkTabsTriggerProps, BoxOptionSelector, type BoxOptionSelectorProps, type BoxOptionSelectorSwitchProps, Breadcrumb, type BreadcrumbProps, type BreadcrumbType, Breadcrumbs, type BreadcrumbsProps, Button, ButtonGroup, type ButtonGroupProps, ButtonGroupText, type ButtonGroupTextProps, type ButtonProps, type ButtonStatuses, ButtonsGroupLabel, type ButtonsGroupLabelProps, Calendar, type CalendarProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type ChannelOption, ChannelSelector, type ChannelSelectorProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxOption, type CheckboxProps, CommingSoonBadge, type CommingSoonBadgeProps, ConfirmationDialog, type ConfirmationDialogProps, CopyIcon, type CopyIconProps, CopyLinkButton, type CopyLinkButtonProps, type CustomIconEntry, DataTable, type DataTableProps, DatePicker, type DatePickerProps, DefaultSelectTrigger, type DefaultSelectTriggerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DialogVisuallyHidden, DividingSubsection, DownloadEntryFormsButton, type DownloadEntryFormsButtonProps, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownButton, type DropdownButtonProps, DropdownMenu, DropdownMenuContent, type DropdownMenuContentSide, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuSeparator, DropdownMenuTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptySectionPlaceholder, type EmptySectionPlaceholderProps, EmptyTitle, ErrorMessage, type ErrorMessageProps, ExternalLink, type ExternalLinkProps, FeatureCard, type FeatureCardProps, FieldTrigger, type FieldTriggerProps, FileInputButton, type FileInputButtonProps, FormBox, Content as FormBoxContent, type FormBoxContentProps, Header as FormBoxHeader, type FormBoxHeaderProps, Root as FormBoxRoot, type FormBoxRootProps, SubHeader as FormBoxSubHeader, type FormBoxSubHeaderProps, FramedIcon, type FramedIconProps, FreeTextField, type FreeTextFieldProps, GridItems, type GridItemsProps, type GuestVerificationStatus, HALO_ICON_STATUS, HaloIcon, type HaloIconProps, HelpTooltip, type HelpTooltipProps, IVStatusBadge, type IVStatusBadgeProps, IV_BADGE_STATUS, Icon$1 as Icon, IconButton, type IconButtonProps, type IconEntry, type IconNames, type IconProps, IconRegistry, IconsDropdown, type IconsDropdownProps, Image, ImageFullScreenView, type ImageFullScreenViewProps, type ImageProps, InfoBox, type InfoBoxProps, Input, InputOTP, InputOTPGroup, type InputOTPProps, InputOTPSeparator, InputOTPSlot, type InputProps, LABEL_PLACEMENT, Label, type LabelProps, LargeModal, type LargeModalProps, LearnMoreButton, type LearnMoreButtonProps, Link, type LinkProps, Loader, type LoaderProps, LoadingBar, type LoadingBarProps, type LucideIconEntry, METRIC_CARD_VARIANTS, MetricCard, type MetricCardProps, Modal, ModalButton, ModalLoader, type ModalLoaderProps, type ModalProps, OverlayLoader, type OverlayLoaderProps, PageLoader, type PageLoaderProps, Pagination, type PaginationProps, type PaginationVariant, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, Radio, RadioGroup, RadioGroupItem, type RadioOption, type RadioProps, RadioWithBorder, RatingProgress, type RatingProgressProps, RatingRadioGroup, type RatingRadioGroupProps, RatingStars, type RatingStarsProps, RegistryIcon, RotateIcon, type RotateIconProps, ScrollArea, type ScrollAreaProps, ScrollBar, type ScrollBarProps, SearchButton, type SearchButtonProps, SearchInput, type SearchInputProps, SearchableSelect, type SearchableSelectProps, type SearchableSelectValue, Section, type SectionProps, SectionTag, SectionTagColors, type SectionTagProps, Select, SelectContent, type SelectForwardType, SelectGroup, SelectItem, SelectLabel, type SelectOption, SelectPortal, type SelectProps, SelectRoot, SelectSeparator, SelectTrigger, SelectValue$1 as SelectValue, SelectorButton, type SelectorButtonProps, type SelectorOption, Selectors, type SelectorsProps, Separator, type SeparatorProps, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIcon, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, type SkeletonProps, SmallGridSingleItem, type SmallGridSingleItemProps, SortingAction, type SortingActionProps, type SortingActionValue, type SortingByVariant, StatusBadge, type StatusBadgeProps, type StatusBadgeVariant, StatusBox, type StatusBoxProps, StatusButton, type StatusButtonProps, Stepper, type StepperProps, SubSection, SubSectionSize, Switch, SwitchBlocks, type SwitchBlocksOption, type SwitchBlocksProps, SwitchGroup, type SwitchGroupProps, type SwitchOption, type SwitchProps, TASK_VARIANTS, TabbedSection, type TabbedSectionProps, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TablePlaceholder, type TablePlaceholderProps, TableRow, Tabs, TabsContent, TabsList, type TabsListProps, TabsTrigger, type TabsTriggerProps, TaskCard, type TaskCardProps, TextField, type TextFieldProps, Textarea, type TextareaProps, ThreeDotsLoader, type ThreeDotsLoaderProps, ToggleGroup, ToggleGroupItem, Toggles, type TogglesForwardType, type TogglesProps, Tooltip, TooltipContent, type TooltipContentProps, type TooltipProps, TooltipProvider, TooltipRoot, type TooltipRootProps, TooltipRootWrapper, TooltipTrigger, type UiKitLocale, UploadedFilesList, type UploadedFilesListProps, VideoPlayer, type VideoPlayerProps, WideButton, type WideButtonProps, badgeVariants, bookmarkTabsListVariants, bookmarkTabsTriggerVariants, buttonGroupVariants, buttonVariants, calendarClassNames, cn, emptyMediaVariants, getSidebarState, inputVariants, labelVariants, sectionTagVariants, switchThumbVariants, switchVariants, tabsListVariants, tabsTriggerVariants, toggleVariants, uiKitI18nResources, uiKitTranslations, useRadioOptions, useSidebar, useSidebarMenuButton, useSidebarSafe, useUpdateToast };
|
|
2446
|
+
export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, AccordionTrigger, type AccordionTriggerProps, AirbnbInput, type AirbnbInputProps, AirbnbSearchInput, AirbnbSelect, type AirbnbSelectProps, AlertBox, type AlertBoxProps, AlertSize, AlertSizes, AlertType, AlertTypes, AudioPlayer, type AudioPlayerProps, Avatar, type AvatarProps, Badge, type BadgeProps, BaseCheckbox, type BaseCheckboxProps, BetaBadge, type BetaBadgeProps, BookmarkTabsList, type BookmarkTabsListProps, BookmarkTabsTrigger, type BookmarkTabsTriggerProps, BoxOptionSelector, type BoxOptionSelectorProps, type BoxOptionSelectorSwitchProps, Breadcrumb, type BreadcrumbProps, type BreadcrumbType, Breadcrumbs, type BreadcrumbsProps, Button, ButtonGroup, type ButtonGroupProps, ButtonGroupText, type ButtonGroupTextProps, type ButtonProps, type ButtonStatuses, ButtonsGroupLabel, type ButtonsGroupLabelProps, Calendar, type CalendarProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type ChannelOption, ChannelSelector, type ChannelSelectorProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxOption, type CheckboxProps, CommingSoonBadge, type CommingSoonBadgeProps, ConfirmationDialog, type ConfirmationDialogProps, CopyIcon, type CopyIconProps, CopyLinkButton, type CopyLinkButtonProps, type CustomIconEntry, DataTable, type DataTableProps, DatePicker, type DatePickerProps, DefaultSelectTrigger, type DefaultSelectTriggerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DialogVisuallyHidden, DividingSubsection, DownloadEntryFormsButton, type DownloadEntryFormsButtonProps, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownButton, type DropdownButtonProps, DropdownMenu, DropdownMenuContent, type DropdownMenuContentSide, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuSeparator, DropdownMenuTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptySectionPlaceholder, type EmptySectionPlaceholderProps, EmptyTitle, ErrorMessage, type ErrorMessageProps, ExternalLink, type ExternalLinkProps, FeatureCard, type FeatureCardProps, FieldTrigger, type FieldTriggerProps, FileInputButton, type FileInputButtonProps, FormBox, Content as FormBoxContent, type FormBoxContentProps, Header as FormBoxHeader, type FormBoxHeaderProps, Root as FormBoxRoot, type FormBoxRootProps, SubHeader as FormBoxSubHeader, type FormBoxSubHeaderProps, FramedIcon, type FramedIconProps, FreeTextField, type FreeTextFieldProps, GridItems, type GridItemsProps, type GuestVerificationStatus, HALO_ICON_STATUS, HaloIcon, type HaloIconProps, HelpTooltip, type HelpTooltipProps, IVStatusBadge, type IVStatusBadgeProps, IV_BADGE_STATUS, Icon$1 as Icon, IconButton, type IconButtonProps, type IconEntry, type IconNames, type IconProps, IconRegistry, IconsDropdown, type IconsDropdownProps, Image, ImageFullScreenView, type ImageFullScreenViewProps, type ImageProps, InfoBox, type InfoBoxProps, Input, InputOTP, InputOTPGroup, type InputOTPProps, InputOTPSeparator, InputOTPSlot, type InputProps, LABEL_PLACEMENT, Label, type LabelProps, LargeModal, type LargeModalProps, LearnMoreButton, type LearnMoreButtonProps, Link, type LinkProps, Loader, type LoaderProps, LoadingBar, type LoadingBarProps, type LucideIconEntry, METRIC_CARD_VARIANTS, MetricCard, type MetricCardProps, Modal, ModalButton, ModalLoader, type ModalLoaderProps, type ModalProps, OverlayLoader, type OverlayLoaderProps, PageLoader, type PageLoaderProps, Pagination, type PaginationProps, type PaginationVariant, PhoneField, type PhoneFieldOption, type PhoneFieldProps, type PhoneFieldValue, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, Radio, RadioGroup, RadioGroupItem, type RadioOption, type RadioProps, RadioWithBorder, RatingProgress, type RatingProgressProps, RatingRadioGroup, type RatingRadioGroupProps, RatingStars, type RatingStarsProps, RegistryIcon, RotateIcon, type RotateIconProps, ScrollArea, type ScrollAreaProps, ScrollBar, type ScrollBarProps, SearchButton, type SearchButtonProps, SearchInput, type SearchInputProps, SearchableSelect, type SearchableSelectProps, type SearchableSelectValue, Section, type SectionProps, SectionTag, SectionTagColors, type SectionTagProps, Select, SelectContent, type SelectForwardType, SelectGroup, SelectItem, SelectLabel, type SelectOption, SelectPortal, type SelectProps, SelectRoot, SelectSeparator, SelectTrigger, SelectValue$1 as SelectValue, SelectorButton, type SelectorButtonProps, type SelectorOption, Selectors, type SelectorsProps, Separator, type SeparatorProps, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIcon, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, type SkeletonProps, SmallGridSingleItem, type SmallGridSingleItemProps, SortingAction, type SortingActionProps, type SortingActionValue, type SortingByVariant, StatusBadge, type StatusBadgeProps, type StatusBadgeVariant, StatusBox, type StatusBoxProps, StatusButton, type StatusButtonProps, Stepper, type StepperProps, SubSection, SubSectionSize, Switch, SwitchBlocks, type SwitchBlocksOption, type SwitchBlocksProps, SwitchGroup, type SwitchGroupProps, type SwitchOption, type SwitchProps, TASK_VARIANTS, TabbedSection, type TabbedSectionProps, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TablePlaceholder, type TablePlaceholderProps, TableRow, Tabs, TabsContent, TabsList, type TabsListProps, TabsTrigger, type TabsTriggerProps, TaskCard, type TaskCardProps, TextField, type TextFieldProps, Textarea, type TextareaProps, ThreeDotsLoader, type ThreeDotsLoaderProps, ToggleGroup, ToggleGroupItem, Toggles, type TogglesForwardType, type TogglesProps, Tooltip, TooltipContent, type TooltipContentProps, type TooltipProps, TooltipProvider, TooltipRoot, type TooltipRootProps, TooltipRootWrapper, TooltipTrigger, type UiKitLocale, UploadedFilesList, type UploadedFilesListProps, VideoPlayer, type VideoPlayerProps, WideButton, type WideButtonProps, badgeVariants, bookmarkTabsListVariants, bookmarkTabsTriggerVariants, buttonGroupVariants, buttonVariants, calendarClassNames, cn, emptyMediaVariants, getSidebarState, inputVariants, labelVariants, sectionTagVariants, switchThumbVariants, switchVariants, tabsListVariants, tabsTriggerVariants, toggleVariants, uiKitI18nResources, uiKitTranslations, useRadioOptions, useSidebar, useSidebarMenuButton, useSidebarSafe, useUpdateToast };
|
package/dist/index.d.ts
CHANGED
|
@@ -2332,6 +2332,34 @@ declare const AirbnbInput: React$1.ForwardRefExoticComponent<React$1.InputHTMLAt
|
|
|
2332
2332
|
renderErrorMessage?: boolean;
|
|
2333
2333
|
} & React$1.RefAttributes<HTMLInputElement>>;
|
|
2334
2334
|
|
|
2335
|
+
type PhoneFieldOption = {
|
|
2336
|
+
value: string;
|
|
2337
|
+
label: string;
|
|
2338
|
+
disabled?: boolean;
|
|
2339
|
+
};
|
|
2340
|
+
type PhoneFieldValue = {
|
|
2341
|
+
code: string;
|
|
2342
|
+
number: string;
|
|
2343
|
+
};
|
|
2344
|
+
type PhoneFieldProps = {
|
|
2345
|
+
variant?: 'default' | 'airbnb';
|
|
2346
|
+
label: string;
|
|
2347
|
+
topLabel?: string;
|
|
2348
|
+
value?: PhoneFieldValue | null;
|
|
2349
|
+
onChange: (value: PhoneFieldValue) => void;
|
|
2350
|
+
options: PhoneFieldOption[];
|
|
2351
|
+
placeholder?: string;
|
|
2352
|
+
disabled?: boolean;
|
|
2353
|
+
error?: string;
|
|
2354
|
+
className?: string;
|
|
2355
|
+
name?: string;
|
|
2356
|
+
codeName?: string;
|
|
2357
|
+
numberName?: string;
|
|
2358
|
+
mobileTitle?: string;
|
|
2359
|
+
codePlaceholder?: string;
|
|
2360
|
+
};
|
|
2361
|
+
declare function PhoneField({ variant, label, topLabel, value, onChange, options, placeholder, disabled, error, className, name, codeName, numberName, mobileTitle, codePlaceholder, }: PhoneFieldProps): react_jsx_runtime.JSX.Element;
|
|
2362
|
+
|
|
2335
2363
|
type SelectValue = string | number;
|
|
2336
2364
|
type SelectRenderTriggerProps<T = undefined, V extends SelectValue = string, L extends string | number | React$1.ReactNode = string> = {
|
|
2337
2365
|
id: string;
|
|
@@ -2415,4 +2443,4 @@ declare const SearchableSelect: SearchableSelectComponent;
|
|
|
2415
2443
|
|
|
2416
2444
|
declare function cn(...inputs: ClassValue[]): string;
|
|
2417
2445
|
|
|
2418
|
-
export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, AccordionTrigger, type AccordionTriggerProps, AirbnbInput, type AirbnbInputProps, AirbnbSearchInput, AirbnbSelect, type AirbnbSelectProps, AlertBox, type AlertBoxProps, AlertSize, AlertSizes, AlertType, AlertTypes, AudioPlayer, type AudioPlayerProps, Avatar, type AvatarProps, Badge, type BadgeProps, BaseCheckbox, type BaseCheckboxProps, BetaBadge, type BetaBadgeProps, BookmarkTabsList, type BookmarkTabsListProps, BookmarkTabsTrigger, type BookmarkTabsTriggerProps, BoxOptionSelector, type BoxOptionSelectorProps, type BoxOptionSelectorSwitchProps, Breadcrumb, type BreadcrumbProps, type BreadcrumbType, Breadcrumbs, type BreadcrumbsProps, Button, ButtonGroup, type ButtonGroupProps, ButtonGroupText, type ButtonGroupTextProps, type ButtonProps, type ButtonStatuses, ButtonsGroupLabel, type ButtonsGroupLabelProps, Calendar, type CalendarProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type ChannelOption, ChannelSelector, type ChannelSelectorProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxOption, type CheckboxProps, CommingSoonBadge, type CommingSoonBadgeProps, ConfirmationDialog, type ConfirmationDialogProps, CopyIcon, type CopyIconProps, CopyLinkButton, type CopyLinkButtonProps, type CustomIconEntry, DataTable, type DataTableProps, DatePicker, type DatePickerProps, DefaultSelectTrigger, type DefaultSelectTriggerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DialogVisuallyHidden, DividingSubsection, DownloadEntryFormsButton, type DownloadEntryFormsButtonProps, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownButton, type DropdownButtonProps, DropdownMenu, DropdownMenuContent, type DropdownMenuContentSide, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuSeparator, DropdownMenuTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptySectionPlaceholder, type EmptySectionPlaceholderProps, EmptyTitle, ErrorMessage, type ErrorMessageProps, ExternalLink, type ExternalLinkProps, FeatureCard, type FeatureCardProps, FieldTrigger, type FieldTriggerProps, FileInputButton, type FileInputButtonProps, FormBox, Content as FormBoxContent, type FormBoxContentProps, Header as FormBoxHeader, type FormBoxHeaderProps, Root as FormBoxRoot, type FormBoxRootProps, SubHeader as FormBoxSubHeader, type FormBoxSubHeaderProps, FramedIcon, type FramedIconProps, FreeTextField, type FreeTextFieldProps, GridItems, type GridItemsProps, type GuestVerificationStatus, HALO_ICON_STATUS, HaloIcon, type HaloIconProps, HelpTooltip, type HelpTooltipProps, IVStatusBadge, type IVStatusBadgeProps, IV_BADGE_STATUS, Icon$1 as Icon, IconButton, type IconButtonProps, type IconEntry, type IconNames, type IconProps, IconRegistry, IconsDropdown, type IconsDropdownProps, Image, ImageFullScreenView, type ImageFullScreenViewProps, type ImageProps, InfoBox, type InfoBoxProps, Input, InputOTP, InputOTPGroup, type InputOTPProps, InputOTPSeparator, InputOTPSlot, type InputProps, LABEL_PLACEMENT, Label, type LabelProps, LargeModal, type LargeModalProps, LearnMoreButton, type LearnMoreButtonProps, Link, type LinkProps, Loader, type LoaderProps, LoadingBar, type LoadingBarProps, type LucideIconEntry, METRIC_CARD_VARIANTS, MetricCard, type MetricCardProps, Modal, ModalButton, ModalLoader, type ModalLoaderProps, type ModalProps, OverlayLoader, type OverlayLoaderProps, PageLoader, type PageLoaderProps, Pagination, type PaginationProps, type PaginationVariant, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, Radio, RadioGroup, RadioGroupItem, type RadioOption, type RadioProps, RadioWithBorder, RatingProgress, type RatingProgressProps, RatingRadioGroup, type RatingRadioGroupProps, RatingStars, type RatingStarsProps, RegistryIcon, RotateIcon, type RotateIconProps, ScrollArea, type ScrollAreaProps, ScrollBar, type ScrollBarProps, SearchButton, type SearchButtonProps, SearchInput, type SearchInputProps, SearchableSelect, type SearchableSelectProps, type SearchableSelectValue, Section, type SectionProps, SectionTag, SectionTagColors, type SectionTagProps, Select, SelectContent, type SelectForwardType, SelectGroup, SelectItem, SelectLabel, type SelectOption, SelectPortal, type SelectProps, SelectRoot, SelectSeparator, SelectTrigger, SelectValue$1 as SelectValue, SelectorButton, type SelectorButtonProps, type SelectorOption, Selectors, type SelectorsProps, Separator, type SeparatorProps, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIcon, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, type SkeletonProps, SmallGridSingleItem, type SmallGridSingleItemProps, SortingAction, type SortingActionProps, type SortingActionValue, type SortingByVariant, StatusBadge, type StatusBadgeProps, type StatusBadgeVariant, StatusBox, type StatusBoxProps, StatusButton, type StatusButtonProps, Stepper, type StepperProps, SubSection, SubSectionSize, Switch, SwitchBlocks, type SwitchBlocksOption, type SwitchBlocksProps, SwitchGroup, type SwitchGroupProps, type SwitchOption, type SwitchProps, TASK_VARIANTS, TabbedSection, type TabbedSectionProps, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TablePlaceholder, type TablePlaceholderProps, TableRow, Tabs, TabsContent, TabsList, type TabsListProps, TabsTrigger, type TabsTriggerProps, TaskCard, type TaskCardProps, TextField, type TextFieldProps, Textarea, type TextareaProps, ThreeDotsLoader, type ThreeDotsLoaderProps, ToggleGroup, ToggleGroupItem, Toggles, type TogglesForwardType, type TogglesProps, Tooltip, TooltipContent, type TooltipContentProps, type TooltipProps, TooltipProvider, TooltipRoot, type TooltipRootProps, TooltipRootWrapper, TooltipTrigger, type UiKitLocale, UploadedFilesList, type UploadedFilesListProps, VideoPlayer, type VideoPlayerProps, WideButton, type WideButtonProps, badgeVariants, bookmarkTabsListVariants, bookmarkTabsTriggerVariants, buttonGroupVariants, buttonVariants, calendarClassNames, cn, emptyMediaVariants, getSidebarState, inputVariants, labelVariants, sectionTagVariants, switchThumbVariants, switchVariants, tabsListVariants, tabsTriggerVariants, toggleVariants, uiKitI18nResources, uiKitTranslations, useRadioOptions, useSidebar, useSidebarMenuButton, useSidebarSafe, useUpdateToast };
|
|
2446
|
+
export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, AccordionTrigger, type AccordionTriggerProps, AirbnbInput, type AirbnbInputProps, AirbnbSearchInput, AirbnbSelect, type AirbnbSelectProps, AlertBox, type AlertBoxProps, AlertSize, AlertSizes, AlertType, AlertTypes, AudioPlayer, type AudioPlayerProps, Avatar, type AvatarProps, Badge, type BadgeProps, BaseCheckbox, type BaseCheckboxProps, BetaBadge, type BetaBadgeProps, BookmarkTabsList, type BookmarkTabsListProps, BookmarkTabsTrigger, type BookmarkTabsTriggerProps, BoxOptionSelector, type BoxOptionSelectorProps, type BoxOptionSelectorSwitchProps, Breadcrumb, type BreadcrumbProps, type BreadcrumbType, Breadcrumbs, type BreadcrumbsProps, Button, ButtonGroup, type ButtonGroupProps, ButtonGroupText, type ButtonGroupTextProps, type ButtonProps, type ButtonStatuses, ButtonsGroupLabel, type ButtonsGroupLabelProps, Calendar, type CalendarProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type ChannelOption, ChannelSelector, type ChannelSelectorProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxOption, type CheckboxProps, CommingSoonBadge, type CommingSoonBadgeProps, ConfirmationDialog, type ConfirmationDialogProps, CopyIcon, type CopyIconProps, CopyLinkButton, type CopyLinkButtonProps, type CustomIconEntry, DataTable, type DataTableProps, DatePicker, type DatePickerProps, DefaultSelectTrigger, type DefaultSelectTriggerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DialogVisuallyHidden, DividingSubsection, DownloadEntryFormsButton, type DownloadEntryFormsButtonProps, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownButton, type DropdownButtonProps, DropdownMenu, DropdownMenuContent, type DropdownMenuContentSide, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuSeparator, DropdownMenuTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptySectionPlaceholder, type EmptySectionPlaceholderProps, EmptyTitle, ErrorMessage, type ErrorMessageProps, ExternalLink, type ExternalLinkProps, FeatureCard, type FeatureCardProps, FieldTrigger, type FieldTriggerProps, FileInputButton, type FileInputButtonProps, FormBox, Content as FormBoxContent, type FormBoxContentProps, Header as FormBoxHeader, type FormBoxHeaderProps, Root as FormBoxRoot, type FormBoxRootProps, SubHeader as FormBoxSubHeader, type FormBoxSubHeaderProps, FramedIcon, type FramedIconProps, FreeTextField, type FreeTextFieldProps, GridItems, type GridItemsProps, type GuestVerificationStatus, HALO_ICON_STATUS, HaloIcon, type HaloIconProps, HelpTooltip, type HelpTooltipProps, IVStatusBadge, type IVStatusBadgeProps, IV_BADGE_STATUS, Icon$1 as Icon, IconButton, type IconButtonProps, type IconEntry, type IconNames, type IconProps, IconRegistry, IconsDropdown, type IconsDropdownProps, Image, ImageFullScreenView, type ImageFullScreenViewProps, type ImageProps, InfoBox, type InfoBoxProps, Input, InputOTP, InputOTPGroup, type InputOTPProps, InputOTPSeparator, InputOTPSlot, type InputProps, LABEL_PLACEMENT, Label, type LabelProps, LargeModal, type LargeModalProps, LearnMoreButton, type LearnMoreButtonProps, Link, type LinkProps, Loader, type LoaderProps, LoadingBar, type LoadingBarProps, type LucideIconEntry, METRIC_CARD_VARIANTS, MetricCard, type MetricCardProps, Modal, ModalButton, ModalLoader, type ModalLoaderProps, type ModalProps, OverlayLoader, type OverlayLoaderProps, PageLoader, type PageLoaderProps, Pagination, type PaginationProps, type PaginationVariant, PhoneField, type PhoneFieldOption, type PhoneFieldProps, type PhoneFieldValue, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, Radio, RadioGroup, RadioGroupItem, type RadioOption, type RadioProps, RadioWithBorder, RatingProgress, type RatingProgressProps, RatingRadioGroup, type RatingRadioGroupProps, RatingStars, type RatingStarsProps, RegistryIcon, RotateIcon, type RotateIconProps, ScrollArea, type ScrollAreaProps, ScrollBar, type ScrollBarProps, SearchButton, type SearchButtonProps, SearchInput, type SearchInputProps, SearchableSelect, type SearchableSelectProps, type SearchableSelectValue, Section, type SectionProps, SectionTag, SectionTagColors, type SectionTagProps, Select, SelectContent, type SelectForwardType, SelectGroup, SelectItem, SelectLabel, type SelectOption, SelectPortal, type SelectProps, SelectRoot, SelectSeparator, SelectTrigger, SelectValue$1 as SelectValue, SelectorButton, type SelectorButtonProps, type SelectorOption, Selectors, type SelectorsProps, Separator, type SeparatorProps, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIcon, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, type SkeletonProps, SmallGridSingleItem, type SmallGridSingleItemProps, SortingAction, type SortingActionProps, type SortingActionValue, type SortingByVariant, StatusBadge, type StatusBadgeProps, type StatusBadgeVariant, StatusBox, type StatusBoxProps, StatusButton, type StatusButtonProps, Stepper, type StepperProps, SubSection, SubSectionSize, Switch, SwitchBlocks, type SwitchBlocksOption, type SwitchBlocksProps, SwitchGroup, type SwitchGroupProps, type SwitchOption, type SwitchProps, TASK_VARIANTS, TabbedSection, type TabbedSectionProps, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TablePlaceholder, type TablePlaceholderProps, TableRow, Tabs, TabsContent, TabsList, type TabsListProps, TabsTrigger, type TabsTriggerProps, TaskCard, type TaskCardProps, TextField, type TextFieldProps, Textarea, type TextareaProps, ThreeDotsLoader, type ThreeDotsLoaderProps, ToggleGroup, ToggleGroupItem, Toggles, type TogglesForwardType, type TogglesProps, Tooltip, TooltipContent, type TooltipContentProps, type TooltipProps, TooltipProvider, TooltipRoot, type TooltipRootProps, TooltipRootWrapper, TooltipTrigger, type UiKitLocale, UploadedFilesList, type UploadedFilesListProps, VideoPlayer, type VideoPlayerProps, WideButton, type WideButtonProps, badgeVariants, bookmarkTabsListVariants, bookmarkTabsTriggerVariants, buttonGroupVariants, buttonVariants, calendarClassNames, cn, emptyMediaVariants, getSidebarState, inputVariants, labelVariants, sectionTagVariants, switchThumbVariants, switchVariants, tabsListVariants, tabsTriggerVariants, toggleVariants, uiKitI18nResources, uiKitTranslations, useRadioOptions, useSidebar, useSidebarMenuButton, useSidebarSafe, useUpdateToast };
|
package/dist/index.js
CHANGED
|
@@ -9126,6 +9126,10 @@ var AirbnbInput = React31.forwardRef(
|
|
|
9126
9126
|
);
|
|
9127
9127
|
AirbnbInput.displayName = "Input";
|
|
9128
9128
|
|
|
9129
|
+
// src/airbnb/phone-field/PhoneField.tsx
|
|
9130
|
+
import * as React37 from "react";
|
|
9131
|
+
import { ChevronDown as ChevronDown2 } from "lucide-react";
|
|
9132
|
+
|
|
9129
9133
|
// src/airbnb/select/Select.tsx
|
|
9130
9134
|
import * as React36 from "react";
|
|
9131
9135
|
|
|
@@ -10190,17 +10194,170 @@ function AirbnbSelect({
|
|
|
10190
10194
|
] });
|
|
10191
10195
|
}
|
|
10192
10196
|
|
|
10197
|
+
// src/airbnb/phone-field/PhoneField.tsx
|
|
10198
|
+
import { jsx as jsx129, jsxs as jsxs83 } from "react/jsx-runtime";
|
|
10199
|
+
function PhoneField({
|
|
10200
|
+
variant = "default",
|
|
10201
|
+
label,
|
|
10202
|
+
topLabel,
|
|
10203
|
+
value,
|
|
10204
|
+
onChange,
|
|
10205
|
+
options,
|
|
10206
|
+
placeholder = "Phone number",
|
|
10207
|
+
disabled,
|
|
10208
|
+
error,
|
|
10209
|
+
className,
|
|
10210
|
+
name,
|
|
10211
|
+
codeName,
|
|
10212
|
+
numberName,
|
|
10213
|
+
mobileTitle,
|
|
10214
|
+
codePlaceholder = "+00"
|
|
10215
|
+
}) {
|
|
10216
|
+
const inputId = React37.useId();
|
|
10217
|
+
const codeOptions = React37.useMemo(
|
|
10218
|
+
() => options.map((option) => ({
|
|
10219
|
+
value: option.value,
|
|
10220
|
+
label: option.label,
|
|
10221
|
+
disabled: option.disabled
|
|
10222
|
+
})),
|
|
10223
|
+
[options]
|
|
10224
|
+
);
|
|
10225
|
+
const selectedCodeOption = React37.useMemo(
|
|
10226
|
+
() => codeOptions.find((option) => option.value === value?.code) ?? null,
|
|
10227
|
+
[codeOptions, value?.code]
|
|
10228
|
+
);
|
|
10229
|
+
const combinedValue = value?.code || value?.number ? `${value?.code ?? ""}${value?.number ?? ""}` : "";
|
|
10230
|
+
return /* @__PURE__ */ jsxs83("div", { className: cn("w-full max-w-[480px]", className), children: [
|
|
10231
|
+
name && /* @__PURE__ */ jsx129("input", { type: "hidden", name, value: combinedValue, disabled }),
|
|
10232
|
+
codeName && /* @__PURE__ */ jsx129(
|
|
10233
|
+
"input",
|
|
10234
|
+
{
|
|
10235
|
+
type: "hidden",
|
|
10236
|
+
name: codeName,
|
|
10237
|
+
value: value?.code ?? "",
|
|
10238
|
+
disabled
|
|
10239
|
+
}
|
|
10240
|
+
),
|
|
10241
|
+
numberName && /* @__PURE__ */ jsx129(
|
|
10242
|
+
"input",
|
|
10243
|
+
{
|
|
10244
|
+
type: "hidden",
|
|
10245
|
+
name: numberName,
|
|
10246
|
+
value: value?.number ?? "",
|
|
10247
|
+
disabled
|
|
10248
|
+
}
|
|
10249
|
+
),
|
|
10250
|
+
topLabel && /* @__PURE__ */ jsx129(
|
|
10251
|
+
"label",
|
|
10252
|
+
{
|
|
10253
|
+
htmlFor: inputId,
|
|
10254
|
+
className: "mb-3 block text-[16px] font-medium leading-5 text-[#1F1F1B]",
|
|
10255
|
+
children: topLabel
|
|
10256
|
+
}
|
|
10257
|
+
),
|
|
10258
|
+
/* @__PURE__ */ jsxs83("div", { className: "flex items-stretch", children: [
|
|
10259
|
+
/* @__PURE__ */ jsx129(
|
|
10260
|
+
AirbnbSelect,
|
|
10261
|
+
{
|
|
10262
|
+
variant,
|
|
10263
|
+
options: codeOptions,
|
|
10264
|
+
value: selectedCodeOption,
|
|
10265
|
+
onChange: (option) => onChange({
|
|
10266
|
+
code: String(option.value),
|
|
10267
|
+
number: value?.number ?? ""
|
|
10268
|
+
}),
|
|
10269
|
+
label: `${label} country code`,
|
|
10270
|
+
placeholder: codePlaceholder,
|
|
10271
|
+
disabled,
|
|
10272
|
+
className: "max-w-none shrink-0 basis-[96px]",
|
|
10273
|
+
mobileTitle: mobileTitle ?? "Select country code",
|
|
10274
|
+
dropdownClassName: "right-auto w-[280px]",
|
|
10275
|
+
getValueLabel: (option) => String(option.value),
|
|
10276
|
+
renderTrigger: ({
|
|
10277
|
+
id,
|
|
10278
|
+
open,
|
|
10279
|
+
variant: selectVariant,
|
|
10280
|
+
disabled: triggerDisabled,
|
|
10281
|
+
listboxId,
|
|
10282
|
+
triggerRef,
|
|
10283
|
+
onClick,
|
|
10284
|
+
onKeyDown,
|
|
10285
|
+
valueLabel
|
|
10286
|
+
}) => /* @__PURE__ */ jsxs83(
|
|
10287
|
+
"button",
|
|
10288
|
+
{
|
|
10289
|
+
id,
|
|
10290
|
+
ref: triggerRef,
|
|
10291
|
+
type: "button",
|
|
10292
|
+
"aria-label": `${label} country code`,
|
|
10293
|
+
"aria-haspopup": "listbox",
|
|
10294
|
+
"aria-expanded": open,
|
|
10295
|
+
"aria-controls": listboxId,
|
|
10296
|
+
disabled: triggerDisabled,
|
|
10297
|
+
onClick,
|
|
10298
|
+
onKeyDown,
|
|
10299
|
+
className: cn(
|
|
10300
|
+
"flex w-full items-center justify-center gap-2 border border-r-0 text-[16px] font-medium leading-6 transition-colors focus-visible:outline-none",
|
|
10301
|
+
selectVariant === "airbnb" ? "h-full min-h-[60px] rounded-l-[16px] rounded-r-none px-4 focus-visible:ring-2 focus-visible:ring-[#1F1F1B] focus-visible:ring-offset-2" : "min-h-[48px] rounded-l-[10px] rounded-r-none px-3.5 focus-visible:border-[#315EFB]",
|
|
10302
|
+
error ? "border-[var(--status-danger)] bg-[#F2F2F2] text-[var(--status-danger)]" : selectVariant === "airbnb" ? "border-[#8C8C8C] bg-[#F4F4F2] text-[#1F1F1B]" : "border-[#A8A8A4] bg-white text-[#1F1F1B]",
|
|
10303
|
+
triggerDisabled ? "cursor-not-allowed opacity-50" : "cursor-pointer"
|
|
10304
|
+
),
|
|
10305
|
+
children: [
|
|
10306
|
+
/* @__PURE__ */ jsx129("span", { children: valueLabel ?? codePlaceholder }),
|
|
10307
|
+
/* @__PURE__ */ jsx129(
|
|
10308
|
+
ChevronDown2,
|
|
10309
|
+
{
|
|
10310
|
+
className: cn("h-5 w-5 transition-transform", open ? "rotate-180" : ""),
|
|
10311
|
+
strokeWidth: 2
|
|
10312
|
+
}
|
|
10313
|
+
)
|
|
10314
|
+
]
|
|
10315
|
+
}
|
|
10316
|
+
)
|
|
10317
|
+
}
|
|
10318
|
+
),
|
|
10319
|
+
/* @__PURE__ */ jsx129(
|
|
10320
|
+
AirbnbInput,
|
|
10321
|
+
{
|
|
10322
|
+
id: inputId,
|
|
10323
|
+
variant,
|
|
10324
|
+
type: "tel",
|
|
10325
|
+
inputMode: "tel",
|
|
10326
|
+
label,
|
|
10327
|
+
helperText: placeholder,
|
|
10328
|
+
value: value?.number ?? "",
|
|
10329
|
+
placeholder,
|
|
10330
|
+
disabled,
|
|
10331
|
+
error,
|
|
10332
|
+
renderErrorMessage: false,
|
|
10333
|
+
wrapperClassName: "min-w-0 flex-1",
|
|
10334
|
+
fieldClassName: cn(
|
|
10335
|
+
variant === "airbnb" ? "min-h-[60px] rounded-l-none rounded-r-[16px] border-l-0" : "rounded-l-none rounded-r-[10px] border-l-0"
|
|
10336
|
+
),
|
|
10337
|
+
contentClassName: cn(variant === "airbnb" ? "h-[40px] py-2" : "h-[48px]"),
|
|
10338
|
+
inputClassName: "text-[16px] leading-7",
|
|
10339
|
+
onChange: (event) => onChange({
|
|
10340
|
+
code: value?.code ?? "",
|
|
10341
|
+
number: event.target.value
|
|
10342
|
+
})
|
|
10343
|
+
}
|
|
10344
|
+
)
|
|
10345
|
+
] }),
|
|
10346
|
+
error && /* @__PURE__ */ jsx129(FieldErrorMessage, { message: error })
|
|
10347
|
+
] });
|
|
10348
|
+
}
|
|
10349
|
+
|
|
10193
10350
|
// src/airbnb/search-input/SearchInput.tsx
|
|
10194
|
-
import * as
|
|
10351
|
+
import * as React38 from "react";
|
|
10195
10352
|
import { useTranslation as useTranslation22 } from "react-i18next";
|
|
10196
10353
|
import { Search as Search3, X as X8 } from "lucide-react";
|
|
10197
|
-
import { jsx as
|
|
10198
|
-
var AirbnbSearchInput =
|
|
10354
|
+
import { jsx as jsx130, jsxs as jsxs84 } from "react/jsx-runtime";
|
|
10355
|
+
var AirbnbSearchInput = React38.forwardRef(({ onReset, placeholder, wrapperClassName, ...props }, ref) => {
|
|
10199
10356
|
const { t } = useTranslation22();
|
|
10200
10357
|
const placeholderText = placeholder || t("search_property") + "...";
|
|
10201
|
-
return /* @__PURE__ */
|
|
10202
|
-
/* @__PURE__ */
|
|
10203
|
-
/* @__PURE__ */
|
|
10358
|
+
return /* @__PURE__ */ jsxs84("div", { className: cn("input-wrapper relative", wrapperClassName), children: [
|
|
10359
|
+
/* @__PURE__ */ jsx130(Search3, { className: "absolute left-4 top-1/2 h-5 w-5 -translate-y-1/2 transform text-[#9696B9]" }),
|
|
10360
|
+
/* @__PURE__ */ jsx130(
|
|
10204
10361
|
"input",
|
|
10205
10362
|
{
|
|
10206
10363
|
...props,
|
|
@@ -10219,13 +10376,13 @@ var AirbnbSearchInput = React37.forwardRef(({ onReset, placeholder, wrapperClass
|
|
|
10219
10376
|
)
|
|
10220
10377
|
}
|
|
10221
10378
|
),
|
|
10222
|
-
onReset && /* @__PURE__ */
|
|
10379
|
+
onReset && /* @__PURE__ */ jsx130(
|
|
10223
10380
|
Button,
|
|
10224
10381
|
{
|
|
10225
10382
|
variant: "ghost",
|
|
10226
10383
|
onClick: onReset,
|
|
10227
10384
|
className: "absolute right-0 top-1/2 h-5 w-5 -translate-y-1/2 transform text-[#9696B9]",
|
|
10228
|
-
children: /* @__PURE__ */
|
|
10385
|
+
children: /* @__PURE__ */ jsx130(X8, { className: "h-5 w-5" })
|
|
10229
10386
|
}
|
|
10230
10387
|
)
|
|
10231
10388
|
] });
|
|
@@ -10233,10 +10390,10 @@ var AirbnbSearchInput = React37.forwardRef(({ onReset, placeholder, wrapperClass
|
|
|
10233
10390
|
AirbnbSearchInput.displayName = "SearchInput";
|
|
10234
10391
|
|
|
10235
10392
|
// src/searchable-select/SearchableSelect.tsx
|
|
10236
|
-
import * as
|
|
10237
|
-
import { ChevronDown as
|
|
10393
|
+
import * as React39 from "react";
|
|
10394
|
+
import { ChevronDown as ChevronDown3, Search as Search4 } from "lucide-react";
|
|
10238
10395
|
import { useVirtualizer } from "@tanstack/react-virtual";
|
|
10239
|
-
import { jsx as
|
|
10396
|
+
import { jsx as jsx131, jsxs as jsxs85 } from "react/jsx-runtime";
|
|
10240
10397
|
var ROW_HEIGHT = 48;
|
|
10241
10398
|
var DESKTOP_LIST_HEIGHT = 280;
|
|
10242
10399
|
var MOBILE_LIST_HEIGHT = 420;
|
|
@@ -10273,13 +10430,13 @@ var SearchableSelectInternal = ({
|
|
|
10273
10430
|
loadingMessage
|
|
10274
10431
|
}, ref) => {
|
|
10275
10432
|
const { isMatch: isMobile } = useScreenResize(DEVICE.mobileXL);
|
|
10276
|
-
const reactId =
|
|
10277
|
-
const [open, setOpen] =
|
|
10278
|
-
const [internalSearchValue, setInternalSearchValue] =
|
|
10279
|
-
const [highlightedIndex, setHighlightedIndex] =
|
|
10280
|
-
const containerRef =
|
|
10281
|
-
const triggerRef =
|
|
10282
|
-
const inputRef =
|
|
10433
|
+
const reactId = React39.useId();
|
|
10434
|
+
const [open, setOpen] = React39.useState(false);
|
|
10435
|
+
const [internalSearchValue, setInternalSearchValue] = React39.useState("");
|
|
10436
|
+
const [highlightedIndex, setHighlightedIndex] = React39.useState(-1);
|
|
10437
|
+
const containerRef = React39.useRef(null);
|
|
10438
|
+
const triggerRef = React39.useRef(null);
|
|
10439
|
+
const inputRef = React39.useRef(null);
|
|
10283
10440
|
const listboxId = `${reactId}-listbox`;
|
|
10284
10441
|
const labelId = `${reactId}-label`;
|
|
10285
10442
|
const valueId = `${reactId}-value`;
|
|
@@ -10288,13 +10445,13 @@ var SearchableSelectInternal = ({
|
|
|
10288
10445
|
const searchInputId = `${reactId}-search`;
|
|
10289
10446
|
const effectiveSearchValue = searchValue ?? internalSearchValue;
|
|
10290
10447
|
const shouldFilterLocally = !onSearchChange && filterOption !== null;
|
|
10291
|
-
const visibleOptions =
|
|
10448
|
+
const visibleOptions = React39.useMemo(() => {
|
|
10292
10449
|
if (!shouldFilterLocally || !effectiveSearchValue) {
|
|
10293
10450
|
return options;
|
|
10294
10451
|
}
|
|
10295
10452
|
return options.filter((option) => filterOption(option, effectiveSearchValue));
|
|
10296
10453
|
}, [effectiveSearchValue, filterOption, options, shouldFilterLocally]);
|
|
10297
|
-
const selectedIndex =
|
|
10454
|
+
const selectedIndex = React39.useMemo(
|
|
10298
10455
|
() => visibleOptions.findIndex((option) => option.value === value?.value),
|
|
10299
10456
|
[value?.value, visibleOptions]
|
|
10300
10457
|
);
|
|
@@ -10303,7 +10460,7 @@ var SearchableSelectInternal = ({
|
|
|
10303
10460
|
const describedBy = error && !hideErrorMessage ? errorId : void 0;
|
|
10304
10461
|
const activeOptionId = highlightedIndex >= 0 ? getOptionId(reactId, highlightedIndex) : void 0;
|
|
10305
10462
|
useOutsideClick(containerRef, open && !isMobile ? () => closeSelect() : null);
|
|
10306
|
-
|
|
10463
|
+
React39.useEffect(() => {
|
|
10307
10464
|
if (!open) return;
|
|
10308
10465
|
const frameId = window.requestAnimationFrame(() => {
|
|
10309
10466
|
inputRef.current?.focus();
|
|
@@ -10312,7 +10469,7 @@ var SearchableSelectInternal = ({
|
|
|
10312
10469
|
window.cancelAnimationFrame(frameId);
|
|
10313
10470
|
};
|
|
10314
10471
|
}, [open]);
|
|
10315
|
-
|
|
10472
|
+
React39.useEffect(() => {
|
|
10316
10473
|
if (!open) {
|
|
10317
10474
|
setHighlightedIndex(-1);
|
|
10318
10475
|
return;
|
|
@@ -10387,7 +10544,7 @@ var SearchableSelectInternal = ({
|
|
|
10387
10544
|
}
|
|
10388
10545
|
}
|
|
10389
10546
|
}
|
|
10390
|
-
const content = /* @__PURE__ */
|
|
10547
|
+
const content = /* @__PURE__ */ jsx131(
|
|
10391
10548
|
SearchableSelectContent,
|
|
10392
10549
|
{
|
|
10393
10550
|
inputId: searchInputId,
|
|
@@ -10414,10 +10571,10 @@ var SearchableSelectInternal = ({
|
|
|
10414
10571
|
onOptionHover: setHighlightedIndex
|
|
10415
10572
|
}
|
|
10416
10573
|
);
|
|
10417
|
-
|
|
10418
|
-
return /* @__PURE__ */
|
|
10419
|
-
name && /* @__PURE__ */
|
|
10420
|
-
/* @__PURE__ */
|
|
10574
|
+
React39.useImperativeHandle(ref, () => triggerRef.current, []);
|
|
10575
|
+
return /* @__PURE__ */ jsxs85("div", { ref: containerRef, className: cn("relative w-full max-w-[480px]", className), children: [
|
|
10576
|
+
name && /* @__PURE__ */ jsx131("input", { type: "hidden", name, value: value ? String(value.value) : "" }),
|
|
10577
|
+
/* @__PURE__ */ jsx131(
|
|
10421
10578
|
FieldTrigger,
|
|
10422
10579
|
{
|
|
10423
10580
|
id: `${reactId}-trigger`,
|
|
@@ -10447,8 +10604,8 @@ var SearchableSelectInternal = ({
|
|
|
10447
10604
|
openSelect();
|
|
10448
10605
|
},
|
|
10449
10606
|
onKeyDown: handleTriggerKeyDown,
|
|
10450
|
-
trailingAdornment: /* @__PURE__ */
|
|
10451
|
-
|
|
10607
|
+
trailingAdornment: /* @__PURE__ */ jsx131(
|
|
10608
|
+
ChevronDown3,
|
|
10452
10609
|
{
|
|
10453
10610
|
className: cn(
|
|
10454
10611
|
"h-6 w-6 text-[#1F1F1B] transition-transform",
|
|
@@ -10458,7 +10615,7 @@ var SearchableSelectInternal = ({
|
|
|
10458
10615
|
)
|
|
10459
10616
|
}
|
|
10460
10617
|
),
|
|
10461
|
-
isMobile ? /* @__PURE__ */
|
|
10618
|
+
isMobile ? /* @__PURE__ */ jsx131(
|
|
10462
10619
|
Drawer,
|
|
10463
10620
|
{
|
|
10464
10621
|
open,
|
|
@@ -10469,13 +10626,13 @@ var SearchableSelectInternal = ({
|
|
|
10469
10626
|
}
|
|
10470
10627
|
closeSelect();
|
|
10471
10628
|
},
|
|
10472
|
-
children: /* @__PURE__ */
|
|
10473
|
-
/* @__PURE__ */
|
|
10474
|
-
/* @__PURE__ */
|
|
10475
|
-
/* @__PURE__ */
|
|
10629
|
+
children: /* @__PURE__ */ jsxs85(DrawerContent, { onClose: closeSelect, lockScroll: false, children: [
|
|
10630
|
+
/* @__PURE__ */ jsx131(DrawerTitle, { className: "sr-only", children: mobileTitle ?? label }),
|
|
10631
|
+
/* @__PURE__ */ jsx131(DrawerDescription, { className: "sr-only", children: label }),
|
|
10632
|
+
/* @__PURE__ */ jsx131("div", { className: "px-5 pb-5 pt-1", children: content })
|
|
10476
10633
|
] })
|
|
10477
10634
|
}
|
|
10478
|
-
) : open ? /* @__PURE__ */
|
|
10635
|
+
) : open ? /* @__PURE__ */ jsx131(
|
|
10479
10636
|
"div",
|
|
10480
10637
|
{
|
|
10481
10638
|
className: cn(
|
|
@@ -10487,7 +10644,7 @@ var SearchableSelectInternal = ({
|
|
|
10487
10644
|
) : null
|
|
10488
10645
|
] });
|
|
10489
10646
|
};
|
|
10490
|
-
var SearchableSelect =
|
|
10647
|
+
var SearchableSelect = React39.forwardRef(
|
|
10491
10648
|
SearchableSelectInternal
|
|
10492
10649
|
);
|
|
10493
10650
|
function SearchableSelectContent({
|
|
@@ -10514,9 +10671,9 @@ function SearchableSelectContent({
|
|
|
10514
10671
|
onOptionClick,
|
|
10515
10672
|
onOptionHover
|
|
10516
10673
|
}) {
|
|
10517
|
-
const listRef =
|
|
10518
|
-
const lastLoadMoreOptionsLengthRef =
|
|
10519
|
-
const previousHighlightedIndexRef =
|
|
10674
|
+
const listRef = React39.useRef(null);
|
|
10675
|
+
const lastLoadMoreOptionsLengthRef = React39.useRef(null);
|
|
10676
|
+
const previousHighlightedIndexRef = React39.useRef(highlightedIndex);
|
|
10520
10677
|
const rowCount = options.length + (loading && options.length > 0 ? 1 : 0);
|
|
10521
10678
|
const virtualizer = useVirtualizer({
|
|
10522
10679
|
count: rowCount,
|
|
@@ -10527,7 +10684,7 @@ function SearchableSelectContent({
|
|
|
10527
10684
|
const virtualItems = virtualizer.getVirtualItems();
|
|
10528
10685
|
const emptyMessage = noOptionsMessage?.() ?? "No matches found";
|
|
10529
10686
|
const loadingText = loadingMessage?.() ?? "Loading...";
|
|
10530
|
-
|
|
10687
|
+
React39.useEffect(() => {
|
|
10531
10688
|
const lastItem = virtualItems[virtualItems.length - 1];
|
|
10532
10689
|
const shouldLoadMore = !!lastItem && hasNextPage && !loading && lastItem.index >= options.length - LOAD_MORE_THRESHOLD;
|
|
10533
10690
|
if (shouldLoadMore && lastLoadMoreOptionsLengthRef.current !== options.length) {
|
|
@@ -10535,23 +10692,23 @@ function SearchableSelectContent({
|
|
|
10535
10692
|
onLoadMore?.();
|
|
10536
10693
|
}
|
|
10537
10694
|
}, [hasNextPage, loading, onLoadMore, options.length, virtualItems]);
|
|
10538
|
-
|
|
10695
|
+
React39.useEffect(() => {
|
|
10539
10696
|
const hasHighlightedIndexChanged = previousHighlightedIndexRef.current !== highlightedIndex;
|
|
10540
10697
|
previousHighlightedIndexRef.current = highlightedIndex;
|
|
10541
10698
|
if (highlightedIndex >= 0 && hasHighlightedIndexChanged) {
|
|
10542
10699
|
virtualizer.scrollToIndex(highlightedIndex, { align: "auto" });
|
|
10543
10700
|
}
|
|
10544
10701
|
}, [highlightedIndex, virtualizer]);
|
|
10545
|
-
return /* @__PURE__ */
|
|
10546
|
-
/* @__PURE__ */
|
|
10547
|
-
/* @__PURE__ */
|
|
10702
|
+
return /* @__PURE__ */ jsxs85("div", { className: "p-2", children: [
|
|
10703
|
+
/* @__PURE__ */ jsxs85("div", { className: "relative mb-2", children: [
|
|
10704
|
+
/* @__PURE__ */ jsx131(
|
|
10548
10705
|
Search4,
|
|
10549
10706
|
{
|
|
10550
10707
|
"aria-hidden": "true",
|
|
10551
10708
|
className: "absolute left-4 top-1/2 h-5 w-5 -translate-y-1/2 text-[#9696B9]"
|
|
10552
10709
|
}
|
|
10553
10710
|
),
|
|
10554
|
-
/* @__PURE__ */
|
|
10711
|
+
/* @__PURE__ */ jsx131(
|
|
10555
10712
|
"input",
|
|
10556
10713
|
{
|
|
10557
10714
|
id: inputId,
|
|
@@ -10570,7 +10727,7 @@ function SearchableSelectContent({
|
|
|
10570
10727
|
}
|
|
10571
10728
|
)
|
|
10572
10729
|
] }),
|
|
10573
|
-
loading && options.length === 0 ? /* @__PURE__ */
|
|
10730
|
+
loading && options.length === 0 ? /* @__PURE__ */ jsx131("div", { className: "px-4 py-5 text-center text-base leading-6 text-[#6C6C6C]", children: loadingText }) : options.length === 0 ? /* @__PURE__ */ jsx131("div", { className: "px-4 py-5 text-center text-base leading-6 text-[#6C6C6C]", children: emptyMessage }) : /* @__PURE__ */ jsx131(
|
|
10574
10731
|
"div",
|
|
10575
10732
|
{
|
|
10576
10733
|
id: listboxId,
|
|
@@ -10579,7 +10736,7 @@ function SearchableSelectContent({
|
|
|
10579
10736
|
"aria-labelledby": labelId,
|
|
10580
10737
|
className: cn("overflow-y-auto outline-none", menuClassName),
|
|
10581
10738
|
style: { height: Math.min(height, rowCount * ROW_HEIGHT) },
|
|
10582
|
-
children: /* @__PURE__ */
|
|
10739
|
+
children: /* @__PURE__ */ jsx131(
|
|
10583
10740
|
"div",
|
|
10584
10741
|
{
|
|
10585
10742
|
className: "relative w-full",
|
|
@@ -10587,7 +10744,7 @@ function SearchableSelectContent({
|
|
|
10587
10744
|
children: virtualItems.map((virtualItem) => {
|
|
10588
10745
|
const option = options[virtualItem.index];
|
|
10589
10746
|
if (!option) {
|
|
10590
|
-
return /* @__PURE__ */
|
|
10747
|
+
return /* @__PURE__ */ jsx131(
|
|
10591
10748
|
"div",
|
|
10592
10749
|
{
|
|
10593
10750
|
className: "absolute left-0 top-0 flex w-full items-center px-4 text-base leading-6 text-[#6C6C6C]",
|
|
@@ -10602,7 +10759,7 @@ function SearchableSelectContent({
|
|
|
10602
10759
|
}
|
|
10603
10760
|
const isSelected = value?.value === option.value;
|
|
10604
10761
|
const isHighlighted = virtualItem.index === highlightedIndex;
|
|
10605
|
-
return /* @__PURE__ */
|
|
10762
|
+
return /* @__PURE__ */ jsx131(
|
|
10606
10763
|
"button",
|
|
10607
10764
|
{
|
|
10608
10765
|
id: getOptionId(idPrefix, virtualItem.index),
|
|
@@ -10624,7 +10781,7 @@ function SearchableSelectContent({
|
|
|
10624
10781
|
height: `${virtualItem.size}px`,
|
|
10625
10782
|
transform: `translateY(${virtualItem.start}px)`
|
|
10626
10783
|
},
|
|
10627
|
-
children: /* @__PURE__ */
|
|
10784
|
+
children: /* @__PURE__ */ jsx131("span", { className: "truncate text-center", children: String(option.label) })
|
|
10628
10785
|
},
|
|
10629
10786
|
`${String(option.value)}-${virtualItem.index}`
|
|
10630
10787
|
);
|
|
@@ -10779,6 +10936,7 @@ export {
|
|
|
10779
10936
|
OverlayLoader,
|
|
10780
10937
|
PageLoader,
|
|
10781
10938
|
Pagination,
|
|
10939
|
+
PhoneField,
|
|
10782
10940
|
Popover,
|
|
10783
10941
|
PopoverAnchor,
|
|
10784
10942
|
PopoverClose,
|