@sikka/hawa 0.19.6-next → 0.19.8-next
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.d.mts +8 -3
- package/dist/index.d.ts +8 -3
- package/dist/index.js +91 -54
- package/dist/index.mjs +87 -50
- package/package.json +15 -15
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React$1 from 'react';
|
|
2
|
-
import React__default, { FC, ChangeEvent, InputHTMLAttributes, ReactNode, PropsWithChildren, RefObject, useEffect } from 'react';
|
|
2
|
+
import React__default, { FC, ChangeEvent, FormEvent, InputHTMLAttributes, ReactNode, PropsWithChildren, RefObject, useEffect } from 'react';
|
|
3
3
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
4
4
|
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
5
5
|
import * as SwitchPrimitives from '@radix-ui/react-switch';
|
|
@@ -48,6 +48,7 @@ type AdCardTypes = {
|
|
|
48
48
|
handleCantHide?: () => void;
|
|
49
49
|
handleClick?: (e: React__default.MouseEvent) => void;
|
|
50
50
|
canHide: boolean;
|
|
51
|
+
className?: string;
|
|
51
52
|
};
|
|
52
53
|
declare const AdCard: FC<AdCardTypes>;
|
|
53
54
|
|
|
@@ -186,6 +187,7 @@ interface ItemCardTypes {
|
|
|
186
187
|
clickableImageActionText?: string;
|
|
187
188
|
/** The icon of the action button on the image of the card */
|
|
188
189
|
clickableImageActionIcon?: any;
|
|
190
|
+
className?: string;
|
|
189
191
|
}
|
|
190
192
|
declare const ItemCard: FC<ItemCardTypes>;
|
|
191
193
|
|
|
@@ -210,6 +212,7 @@ type PinInputTypes = {
|
|
|
210
212
|
getPins?: (pins: string[]) => void;
|
|
211
213
|
/** The small red text under the input field to show validation or a hint. */
|
|
212
214
|
helperText?: any;
|
|
215
|
+
inputProps?: React__default.InputHTMLAttributes<HTMLInputElement>;
|
|
213
216
|
};
|
|
214
217
|
declare const PinInput: FC<PinInputTypes>;
|
|
215
218
|
|
|
@@ -292,7 +295,7 @@ type ColorPickerTypes = {
|
|
|
292
295
|
/** The hex code for the color */
|
|
293
296
|
color?: any;
|
|
294
297
|
/** Fires everytime the color changes */
|
|
295
|
-
handleChange?: (e: ChangeEvent<HTMLInputElement>) => void;
|
|
298
|
+
handleChange?: (e: ChangeEvent<HTMLInputElement> | FormEvent<HTMLInputElement>) => void;
|
|
296
299
|
colorPickerClassNames?: string;
|
|
297
300
|
colorTextClassNames?: string;
|
|
298
301
|
colorPickerProps?: InputHTMLAttributes<HTMLInputElement>;
|
|
@@ -437,6 +440,7 @@ declare const DialogContent: React$1.ForwardRefExoticComponent<Omit<SheetPrimiti
|
|
|
437
440
|
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
438
441
|
declare const DialogCarouselContent: React$1.ForwardRefExoticComponent<Omit<SheetPrimitive.DialogContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
439
442
|
hideCloseButton?: boolean | undefined;
|
|
443
|
+
hidePrevButton?: boolean | undefined;
|
|
440
444
|
persist?: boolean | undefined;
|
|
441
445
|
onPrev?: (() => void) | undefined;
|
|
442
446
|
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -1840,6 +1844,7 @@ declare const useDialogCarousel: (options?: any) => {
|
|
|
1840
1844
|
emblaApi: embla_carousel_react.EmblaCarouselType | undefined;
|
|
1841
1845
|
nextStep: () => void;
|
|
1842
1846
|
prevStep: () => void;
|
|
1847
|
+
canScrollPrev: boolean;
|
|
1843
1848
|
};
|
|
1844
1849
|
|
|
1845
1850
|
declare const useMultiStepDialog: (initialStep: any, stepIds: any[], setOpenDialog: any) => {
|
|
@@ -1886,4 +1891,4 @@ declare function useTabs(initialTab?: string): {
|
|
|
1886
1891
|
handleTabChange: (index: any) => void;
|
|
1887
1892
|
};
|
|
1888
1893
|
|
|
1889
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionRoot, AccordionTrigger, ActionCard, AdCard, Alert, Announcement, AppLanding, AppLayout, AppSidebarItemProps, AppStores, AppTabs, AppTopbar, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, Button, ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CheckEmail, Checkbox, Chip, ChipColors, ChipTypes, CodeBlock, CodeConfirmation, ColorPicker, Combobox, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ComparingPlans, Copyrights, Count, DataTable, DestroyableCard, Dialog, DialogBody, DialogCarousel, DialogCarouselContent, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPortal, DialogStep, DialogSteps, DialogTitle, DialogTrigger, DocsLayout, DocsSidebar, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadio, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FeedbackEmoji, FeedbackForm, FeedbackRating, FileDropzone, FileUploader, HorizontalPricing, Input, InterfaceSettings, ItemCard, Label, LabelProps, LandingCard, LeadGenerator, LegalTexts, Loading, LoginForm, Logos, MenuItemType, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, NavMenuItem, Navbar, NavigationMenu, NavigationMenuLink, NewPasswordForm, NoPermission, NotFound, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneInput, PinInput, Popover, PopoverContent, PopoverTrigger, PricingCard, PricingPlans, Progress, ProgressCircle, Radio, RadioOptionsTypes, RegisterForm, ResetPasswordForm, ScrollArea, ScrollBar, ScrollIndicator, Select, SelectOptionProps, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, SidebarGroup, SidebarItem, SimpleTable, Skeleton, Slider, SortButton, SplitButton, Stats, StopPropagationWrapper, SubItem$1 as SubItem, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Testimonial, Textarea, TextareaProps, Toast$1 as Toast, ToastAction, ToastActionElement, ToastClose, ToastDescription, ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, Usage, UseFocusWithinOptions, UseMediaQueryOptions, UserReferralSource, buttonVariants, reducer, toast, useBreakpoint, useClipboard, useDialogCarousel, useFocusWithin, useIsomorphicEffect, useMediaQuery, useMultiStepDialog, useTabs, useToast, useWindowSize };
|
|
1894
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionRoot, AccordionTrigger, ActionCard, AdCard, Alert, Announcement, AppLanding, AppLayout, type AppSidebarItemProps, AppStores, AppTabs, AppTopbar, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, Button, type ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CheckEmail, Checkbox, Chip, type ChipColors, type ChipTypes, CodeBlock, CodeConfirmation, ColorPicker, Combobox, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ComparingPlans, Copyrights, Count, DataTable, DestroyableCard, Dialog, DialogBody, DialogCarousel, DialogCarouselContent, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPortal, DialogStep, DialogSteps, DialogTitle, DialogTrigger, DocsLayout, DocsSidebar, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadio, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FeedbackEmoji, FeedbackForm, FeedbackRating, FileDropzone, FileUploader, HorizontalPricing, Input, InterfaceSettings, ItemCard, Label, type LabelProps, LandingCard, LeadGenerator, LegalTexts, Loading, LoginForm, Logos, type MenuItemType, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, NavMenuItem, Navbar, NavigationMenu, NavigationMenuLink, NewPasswordForm, NoPermission, NotFound, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneInput, PinInput, Popover, PopoverContent, PopoverTrigger, PricingCard, PricingPlans, Progress, ProgressCircle, Radio, type RadioOptionsTypes, RegisterForm, ResetPasswordForm, ScrollArea, ScrollBar, ScrollIndicator, Select, type SelectOptionProps, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, SidebarGroup, SidebarItem, SimpleTable, Skeleton, Slider, SortButton, SplitButton, Stats, StopPropagationWrapper, type SubItem$1 as SubItem, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Testimonial, Textarea, type TextareaProps, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, Usage, type UseFocusWithinOptions, type UseMediaQueryOptions, UserReferralSource, buttonVariants, reducer, toast, useBreakpoint, useClipboard, useDialogCarousel, useFocusWithin, useIsomorphicEffect, useMediaQuery, useMultiStepDialog, useTabs, useToast, useWindowSize };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React$1 from 'react';
|
|
2
|
-
import React__default, { FC, ChangeEvent, InputHTMLAttributes, ReactNode, PropsWithChildren, RefObject, useEffect } from 'react';
|
|
2
|
+
import React__default, { FC, ChangeEvent, FormEvent, InputHTMLAttributes, ReactNode, PropsWithChildren, RefObject, useEffect } from 'react';
|
|
3
3
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
4
4
|
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
5
5
|
import * as SwitchPrimitives from '@radix-ui/react-switch';
|
|
@@ -48,6 +48,7 @@ type AdCardTypes = {
|
|
|
48
48
|
handleCantHide?: () => void;
|
|
49
49
|
handleClick?: (e: React__default.MouseEvent) => void;
|
|
50
50
|
canHide: boolean;
|
|
51
|
+
className?: string;
|
|
51
52
|
};
|
|
52
53
|
declare const AdCard: FC<AdCardTypes>;
|
|
53
54
|
|
|
@@ -186,6 +187,7 @@ interface ItemCardTypes {
|
|
|
186
187
|
clickableImageActionText?: string;
|
|
187
188
|
/** The icon of the action button on the image of the card */
|
|
188
189
|
clickableImageActionIcon?: any;
|
|
190
|
+
className?: string;
|
|
189
191
|
}
|
|
190
192
|
declare const ItemCard: FC<ItemCardTypes>;
|
|
191
193
|
|
|
@@ -210,6 +212,7 @@ type PinInputTypes = {
|
|
|
210
212
|
getPins?: (pins: string[]) => void;
|
|
211
213
|
/** The small red text under the input field to show validation or a hint. */
|
|
212
214
|
helperText?: any;
|
|
215
|
+
inputProps?: React__default.InputHTMLAttributes<HTMLInputElement>;
|
|
213
216
|
};
|
|
214
217
|
declare const PinInput: FC<PinInputTypes>;
|
|
215
218
|
|
|
@@ -292,7 +295,7 @@ type ColorPickerTypes = {
|
|
|
292
295
|
/** The hex code for the color */
|
|
293
296
|
color?: any;
|
|
294
297
|
/** Fires everytime the color changes */
|
|
295
|
-
handleChange?: (e: ChangeEvent<HTMLInputElement>) => void;
|
|
298
|
+
handleChange?: (e: ChangeEvent<HTMLInputElement> | FormEvent<HTMLInputElement>) => void;
|
|
296
299
|
colorPickerClassNames?: string;
|
|
297
300
|
colorTextClassNames?: string;
|
|
298
301
|
colorPickerProps?: InputHTMLAttributes<HTMLInputElement>;
|
|
@@ -437,6 +440,7 @@ declare const DialogContent: React$1.ForwardRefExoticComponent<Omit<SheetPrimiti
|
|
|
437
440
|
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
438
441
|
declare const DialogCarouselContent: React$1.ForwardRefExoticComponent<Omit<SheetPrimitive.DialogContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
439
442
|
hideCloseButton?: boolean | undefined;
|
|
443
|
+
hidePrevButton?: boolean | undefined;
|
|
440
444
|
persist?: boolean | undefined;
|
|
441
445
|
onPrev?: (() => void) | undefined;
|
|
442
446
|
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -1840,6 +1844,7 @@ declare const useDialogCarousel: (options?: any) => {
|
|
|
1840
1844
|
emblaApi: embla_carousel_react.EmblaCarouselType | undefined;
|
|
1841
1845
|
nextStep: () => void;
|
|
1842
1846
|
prevStep: () => void;
|
|
1847
|
+
canScrollPrev: boolean;
|
|
1843
1848
|
};
|
|
1844
1849
|
|
|
1845
1850
|
declare const useMultiStepDialog: (initialStep: any, stepIds: any[], setOpenDialog: any) => {
|
|
@@ -1886,4 +1891,4 @@ declare function useTabs(initialTab?: string): {
|
|
|
1886
1891
|
handleTabChange: (index: any) => void;
|
|
1887
1892
|
};
|
|
1888
1893
|
|
|
1889
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionRoot, AccordionTrigger, ActionCard, AdCard, Alert, Announcement, AppLanding, AppLayout, AppSidebarItemProps, AppStores, AppTabs, AppTopbar, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, Button, ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CheckEmail, Checkbox, Chip, ChipColors, ChipTypes, CodeBlock, CodeConfirmation, ColorPicker, Combobox, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ComparingPlans, Copyrights, Count, DataTable, DestroyableCard, Dialog, DialogBody, DialogCarousel, DialogCarouselContent, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPortal, DialogStep, DialogSteps, DialogTitle, DialogTrigger, DocsLayout, DocsSidebar, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadio, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FeedbackEmoji, FeedbackForm, FeedbackRating, FileDropzone, FileUploader, HorizontalPricing, Input, InterfaceSettings, ItemCard, Label, LabelProps, LandingCard, LeadGenerator, LegalTexts, Loading, LoginForm, Logos, MenuItemType, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, NavMenuItem, Navbar, NavigationMenu, NavigationMenuLink, NewPasswordForm, NoPermission, NotFound, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneInput, PinInput, Popover, PopoverContent, PopoverTrigger, PricingCard, PricingPlans, Progress, ProgressCircle, Radio, RadioOptionsTypes, RegisterForm, ResetPasswordForm, ScrollArea, ScrollBar, ScrollIndicator, Select, SelectOptionProps, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, SidebarGroup, SidebarItem, SimpleTable, Skeleton, Slider, SortButton, SplitButton, Stats, StopPropagationWrapper, SubItem$1 as SubItem, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Testimonial, Textarea, TextareaProps, Toast$1 as Toast, ToastAction, ToastActionElement, ToastClose, ToastDescription, ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, Usage, UseFocusWithinOptions, UseMediaQueryOptions, UserReferralSource, buttonVariants, reducer, toast, useBreakpoint, useClipboard, useDialogCarousel, useFocusWithin, useIsomorphicEffect, useMediaQuery, useMultiStepDialog, useTabs, useToast, useWindowSize };
|
|
1894
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionRoot, AccordionTrigger, ActionCard, AdCard, Alert, Announcement, AppLanding, AppLayout, type AppSidebarItemProps, AppStores, AppTabs, AppTopbar, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, Button, type ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CheckEmail, Checkbox, Chip, type ChipColors, type ChipTypes, CodeBlock, CodeConfirmation, ColorPicker, Combobox, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ComparingPlans, Copyrights, Count, DataTable, DestroyableCard, Dialog, DialogBody, DialogCarousel, DialogCarouselContent, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPortal, DialogStep, DialogSteps, DialogTitle, DialogTrigger, DocsLayout, DocsSidebar, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadio, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FeedbackEmoji, FeedbackForm, FeedbackRating, FileDropzone, FileUploader, HorizontalPricing, Input, InterfaceSettings, ItemCard, Label, type LabelProps, LandingCard, LeadGenerator, LegalTexts, Loading, LoginForm, Logos, type MenuItemType, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, NavMenuItem, Navbar, NavigationMenu, NavigationMenuLink, NewPasswordForm, NoPermission, NotFound, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneInput, PinInput, Popover, PopoverContent, PopoverTrigger, PricingCard, PricingPlans, Progress, ProgressCircle, Radio, type RadioOptionsTypes, RegisterForm, ResetPasswordForm, ScrollArea, ScrollBar, ScrollIndicator, Select, type SelectOptionProps, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, SidebarGroup, SidebarItem, SimpleTable, Skeleton, Slider, SortButton, SplitButton, Stats, StopPropagationWrapper, type SubItem$1 as SubItem, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Testimonial, Textarea, type TextareaProps, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, Usage, type UseFocusWithinOptions, type UseMediaQueryOptions, UserReferralSource, buttonVariants, reducer, toast, useBreakpoint, useClipboard, useDialogCarousel, useFocusWithin, useIsomorphicEffect, useMediaQuery, useMultiStepDialog, useTabs, useToast, useWindowSize };
|
package/dist/index.js
CHANGED
|
@@ -279,7 +279,10 @@ function cn(...inputs) {
|
|
|
279
279
|
|
|
280
280
|
// components/elements/cards/AdCard.tsx
|
|
281
281
|
var import_react2 = __toESM(require("react"));
|
|
282
|
-
var AdCard = ({
|
|
282
|
+
var AdCard = ({
|
|
283
|
+
orientation = "vertical",
|
|
284
|
+
...props
|
|
285
|
+
}) => {
|
|
283
286
|
const adRef = (0, import_react2.useRef)(null);
|
|
284
287
|
const [closed, setClosed] = (0, import_react2.useState)(false);
|
|
285
288
|
let duration = 0;
|
|
@@ -311,8 +314,7 @@ var AdCard = ({ orientation, ...props }) => {
|
|
|
311
314
|
return /* @__PURE__ */ import_react2.default.createElement("div", { ref: adRef }, /* @__PURE__ */ import_react2.default.createElement(
|
|
312
315
|
"div",
|
|
313
316
|
{
|
|
314
|
-
className: cn(cardStyles[orientation],
|
|
315
|
-
...props,
|
|
317
|
+
className: cn(cardStyles[orientation], props.className),
|
|
316
318
|
onClick: props.handleClick
|
|
317
319
|
},
|
|
318
320
|
/* @__PURE__ */ import_react2.default.createElement("div", { className: "hawa-flex hawa-aspect-square hawa-w-full hawa-max-w-fit hawa-items-start " }, /* @__PURE__ */ import_react2.default.createElement(
|
|
@@ -935,7 +937,7 @@ var DropdownMenuContent = React10.forwardRef(({ className, sideOffset = 4, ...pr
|
|
|
935
937
|
}
|
|
936
938
|
)));
|
|
937
939
|
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
938
|
-
var DropdownMenuItem = React10.forwardRef(({ className, inset, slug, ...props }, ref) => {
|
|
940
|
+
var DropdownMenuItem = React10.forwardRef(({ className, inset, badged, slug, ...props }, ref) => {
|
|
939
941
|
return /* @__PURE__ */ React10.createElement("a", { href: slug }, /* @__PURE__ */ React10.createElement(
|
|
940
942
|
DropdownMenuPrimitive.Item,
|
|
941
943
|
{
|
|
@@ -952,7 +954,7 @@ var DropdownMenuItem = React10.forwardRef(({ className, inset, slug, ...props },
|
|
|
952
954
|
/* @__PURE__ */ React10.createElement("div", { className: "hawa-flex hawa-flex-row hawa-items-center hawa-gap-2 " }, props.children),
|
|
953
955
|
props.end && props.end,
|
|
954
956
|
!props.end && props.shortcut && /* @__PURE__ */ React10.createElement(DropdownMenuShortcut, null, props.shortcut),
|
|
955
|
-
!props.end &&
|
|
957
|
+
!props.end && badged && /* @__PURE__ */ React10.createElement("div", { className: "hawa-h-3 hawa-w-3 hawa-bg-red-500 hawa-rounded-full" })
|
|
956
958
|
));
|
|
957
959
|
});
|
|
958
960
|
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
|
|
@@ -1202,7 +1204,7 @@ var DropdownMenuRadio = (props) => {
|
|
|
1202
1204
|
value: props.value,
|
|
1203
1205
|
onValueChange: props.onValueChange
|
|
1204
1206
|
},
|
|
1205
|
-
props.options.map((opt) => /* @__PURE__ */ React10.createElement(DropdownMenuRadioItem, { value: opt.value }, opt.label))
|
|
1207
|
+
props.options.map((opt, i) => /* @__PURE__ */ React10.createElement(DropdownMenuRadioItem, { key: i, value: opt.value }, opt.label))
|
|
1206
1208
|
)));
|
|
1207
1209
|
};
|
|
1208
1210
|
|
|
@@ -1263,15 +1265,15 @@ var ItemCard = ({
|
|
|
1263
1265
|
className: cn(
|
|
1264
1266
|
defaultStyle,
|
|
1265
1267
|
props.onCardClick && " hover:hawa-shadow-lg hawa-cursor-pointer",
|
|
1266
|
-
orientationStyles[orientation]
|
|
1268
|
+
orientationStyles[orientation],
|
|
1269
|
+
props.className
|
|
1267
1270
|
),
|
|
1268
1271
|
onClick: (e) => {
|
|
1269
1272
|
e.stopPropagation();
|
|
1270
1273
|
if (props.onCardClick) {
|
|
1271
1274
|
props.onCardClick(e);
|
|
1272
1275
|
}
|
|
1273
|
-
}
|
|
1274
|
-
...props
|
|
1276
|
+
}
|
|
1275
1277
|
},
|
|
1276
1278
|
cardImage && /* @__PURE__ */ import_react8.default.createElement("div", { className: "hawa-group hawa-relative hawa-overflow-clip" }, /* @__PURE__ */ import_react8.default.createElement(
|
|
1277
1279
|
"img",
|
|
@@ -1344,6 +1346,7 @@ var PinInput = ({
|
|
|
1344
1346
|
digits,
|
|
1345
1347
|
width = "normal",
|
|
1346
1348
|
getPins,
|
|
1349
|
+
inputProps,
|
|
1347
1350
|
...props
|
|
1348
1351
|
}) => {
|
|
1349
1352
|
const [pin, setPin] = (0, import_react10.useState)(Array.from(Array(digits)));
|
|
@@ -1402,7 +1405,7 @@ var PinInput = ({
|
|
|
1402
1405
|
onChange: (e) => handleChange(e, index),
|
|
1403
1406
|
onKeyDown: (e) => handleKeyDown(e, index),
|
|
1404
1407
|
onFocus: (e) => e.target.select(),
|
|
1405
|
-
...
|
|
1408
|
+
...inputProps
|
|
1406
1409
|
}
|
|
1407
1410
|
))
|
|
1408
1411
|
), /* @__PURE__ */ import_react10.default.createElement(
|
|
@@ -3846,16 +3849,11 @@ var ColorPicker = ({
|
|
|
3846
3849
|
let inputColor = inputElement.value;
|
|
3847
3850
|
if (inputColor[0] !== "#") {
|
|
3848
3851
|
inputColor = `#${inputColor}`;
|
|
3849
|
-
inputElement.value = inputColor;
|
|
3850
3852
|
}
|
|
3851
3853
|
const sanitizedInput = inputColor.replace(/[^a-fA-F0-9#]/g, "");
|
|
3852
|
-
if (sanitizedInput !== inputColor) {
|
|
3853
|
-
inputElement.value = sanitizedInput;
|
|
3854
|
-
}
|
|
3855
3854
|
setSelectedColor(sanitizedInput);
|
|
3856
3855
|
if (props.handleChange) {
|
|
3857
|
-
|
|
3858
|
-
inputElement.dispatchEvent(event);
|
|
3856
|
+
props.handleChange(e);
|
|
3859
3857
|
}
|
|
3860
3858
|
};
|
|
3861
3859
|
return /* @__PURE__ */ import_react15.default.createElement("div", { className: "hawa-flex hawa-flex-col hawa-w-full hawa-gap-2" }, props.label && /* @__PURE__ */ import_react15.default.createElement(Label2, { ...labelProps }, props.label), /* @__PURE__ */ import_react15.default.createElement("div", { dir: "ltr", className: "hawa-flex hawa-flex-row hawa-w-full" }, /* @__PURE__ */ import_react15.default.createElement(
|
|
@@ -3887,7 +3885,6 @@ var ColorPicker = ({
|
|
|
3887
3885
|
{
|
|
3888
3886
|
maxLength: 7,
|
|
3889
3887
|
type: "text",
|
|
3890
|
-
defaultValue: selectedColor || "#",
|
|
3891
3888
|
onInput: handleTextInputChange,
|
|
3892
3889
|
value: selectedColor,
|
|
3893
3890
|
className: cn(
|
|
@@ -4100,7 +4097,15 @@ var DialogContent = React26.forwardRef(({ className, children, persist, hideClos
|
|
|
4100
4097
|
)
|
|
4101
4098
|
)));
|
|
4102
4099
|
var DialogCarouselContent = React26.forwardRef(
|
|
4103
|
-
({
|
|
4100
|
+
({
|
|
4101
|
+
className,
|
|
4102
|
+
children,
|
|
4103
|
+
onPrev,
|
|
4104
|
+
persist,
|
|
4105
|
+
hideCloseButton,
|
|
4106
|
+
hidePrevButton,
|
|
4107
|
+
...props
|
|
4108
|
+
}, ref) => /* @__PURE__ */ React26.createElement(DialogPortal, null, /* @__PURE__ */ React26.createElement(DialogOverlay, null), /* @__PURE__ */ React26.createElement(
|
|
4104
4109
|
DialogPrimitive.Content,
|
|
4105
4110
|
{
|
|
4106
4111
|
onPointerDownOutside: (e) => {
|
|
@@ -4124,7 +4129,7 @@ var DialogCarouselContent = React26.forwardRef(
|
|
|
4124
4129
|
onPrev ? "hawa-justify-between" : "hawa-justify-end"
|
|
4125
4130
|
)
|
|
4126
4131
|
},
|
|
4127
|
-
|
|
4132
|
+
hidePrevButton ? /* @__PURE__ */ React26.createElement("div", null) : /* @__PURE__ */ React26.createElement(
|
|
4128
4133
|
"div",
|
|
4129
4134
|
{
|
|
4130
4135
|
onClick: onPrev,
|
|
@@ -4656,7 +4661,7 @@ var FileUploader = ({ handleFile, className }) => {
|
|
|
4656
4661
|
const fileUploaded = event.target.files[0];
|
|
4657
4662
|
handleFile(fileUploaded);
|
|
4658
4663
|
};
|
|
4659
|
-
return /* @__PURE__ */ import_react17.default.createElement("div", { className }, /* @__PURE__ */ import_react17.default.createElement("
|
|
4664
|
+
return /* @__PURE__ */ import_react17.default.createElement("div", { className }, /* @__PURE__ */ import_react17.default.createElement("div", { className: "hawa-h-full hawa-w-full", onClick: handleClick }), /* @__PURE__ */ import_react17.default.createElement(
|
|
4660
4665
|
"input",
|
|
4661
4666
|
{
|
|
4662
4667
|
type: "file",
|
|
@@ -4971,7 +4976,10 @@ var CodeBlock = ({
|
|
|
4971
4976
|
{
|
|
4972
4977
|
open: clipboard.copied,
|
|
4973
4978
|
side: "left",
|
|
4974
|
-
content: /* @__PURE__ */ import_react21.default.createElement("div", null, "Copied!")
|
|
4979
|
+
content: /* @__PURE__ */ import_react21.default.createElement("div", null, "Copied!"),
|
|
4980
|
+
triggerProps: {
|
|
4981
|
+
asChild: true
|
|
4982
|
+
}
|
|
4975
4983
|
},
|
|
4976
4984
|
/* @__PURE__ */ import_react21.default.createElement(
|
|
4977
4985
|
Button,
|
|
@@ -5736,7 +5744,14 @@ var Carousel = (props) => {
|
|
|
5736
5744
|
const length = import_react26.default.Children.count(items);
|
|
5737
5745
|
const canScrollNext = !!(emblaApi == null ? void 0 : emblaApi.canScrollNext());
|
|
5738
5746
|
const canScrollPrev = !!(emblaApi == null ? void 0 : emblaApi.canScrollPrev());
|
|
5739
|
-
return /* @__PURE__ */ import_react26.default.createElement("div", { className: " hawa-relative hawa-h-full" }, /* @__PURE__ */ import_react26.default.createElement("div", { className: "hawa-h-full hawa-overflow-hidden" }, /* @__PURE__ */ import_react26.default.createElement("div", { className: "hawa-h-full", ref: emblaRef }, /* @__PURE__ */ import_react26.default.createElement("div", { className: "hawa-h-full hawa-flex" }, items == null ? void 0 : items.map((item) => /* @__PURE__ */ import_react26.default.createElement(
|
|
5747
|
+
return /* @__PURE__ */ import_react26.default.createElement("div", { className: " hawa-relative hawa-h-full" }, /* @__PURE__ */ import_react26.default.createElement("div", { className: "hawa-h-full hawa-overflow-hidden" }, /* @__PURE__ */ import_react26.default.createElement("div", { className: "hawa-h-full", ref: emblaRef }, /* @__PURE__ */ import_react26.default.createElement("div", { className: "hawa-h-full hawa-flex" }, items == null ? void 0 : items.map((item, i) => /* @__PURE__ */ import_react26.default.createElement(
|
|
5748
|
+
"div",
|
|
5749
|
+
{
|
|
5750
|
+
key: i,
|
|
5751
|
+
className: "hawa-h-full hawa-justify-center hawa-flex hawa-items-center hawa-min-w-0 hawa-flex-[0_0_100%]"
|
|
5752
|
+
},
|
|
5753
|
+
item
|
|
5754
|
+
))))), /* @__PURE__ */ import_react26.default.createElement(
|
|
5740
5755
|
Dots,
|
|
5741
5756
|
{
|
|
5742
5757
|
itemsLength: length,
|
|
@@ -7366,7 +7381,7 @@ ProgressCircle.displayName = "ProgressCircle";
|
|
|
7366
7381
|
var React60 = __toESM(require("react"));
|
|
7367
7382
|
var NavigationMenuPrimitive = __toESM(require("@radix-ui/react-navigation-menu"));
|
|
7368
7383
|
var import_class_variance_authority4 = require("class-variance-authority");
|
|
7369
|
-
var NavigationMenuRoot = React60.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ React60.createElement(
|
|
7384
|
+
var NavigationMenuRoot = React60.forwardRef(({ className, children, viewportClassNames, ...props }, ref) => /* @__PURE__ */ React60.createElement(
|
|
7370
7385
|
NavigationMenuPrimitive.Root,
|
|
7371
7386
|
{
|
|
7372
7387
|
ref,
|
|
@@ -7378,7 +7393,7 @@ var NavigationMenuRoot = React60.forwardRef(({ className, children, ...props },
|
|
|
7378
7393
|
...props
|
|
7379
7394
|
},
|
|
7380
7395
|
children,
|
|
7381
|
-
/* @__PURE__ */ React60.createElement(NavigationMenuViewport, { className:
|
|
7396
|
+
/* @__PURE__ */ React60.createElement(NavigationMenuViewport, { className: viewportClassNames })
|
|
7382
7397
|
));
|
|
7383
7398
|
NavigationMenuRoot.displayName = NavigationMenuPrimitive.Root.displayName;
|
|
7384
7399
|
var NavigationMenuList = React60.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React60.createElement(
|
|
@@ -7477,14 +7492,17 @@ var NavigationMenuIndicator = React60.forwardRef(({ className, ...props }, ref)
|
|
|
7477
7492
|
/* @__PURE__ */ React60.createElement("div", { className: "hawa-relative hawa-top-[60%] hawa-h-2 hawa-w-2 hawa-rotate-45 hawa-rounded-tl-sm hawa-bg-border hawa-shadow-md" })
|
|
7478
7493
|
));
|
|
7479
7494
|
NavigationMenuIndicator.displayName = NavigationMenuPrimitive.Indicator.displayName;
|
|
7480
|
-
var NavigationMenu = (
|
|
7495
|
+
var NavigationMenu = ({
|
|
7496
|
+
viewportClassNames,
|
|
7497
|
+
...props
|
|
7498
|
+
}) => {
|
|
7481
7499
|
return /* @__PURE__ */ React60.createElement(
|
|
7482
7500
|
NavigationMenuRoot,
|
|
7483
7501
|
{
|
|
7484
7502
|
dir: props.direction,
|
|
7485
7503
|
delayDuration: 0,
|
|
7486
7504
|
className: props.rootClassNames,
|
|
7487
|
-
viewportClassNames
|
|
7505
|
+
viewportClassNames
|
|
7488
7506
|
},
|
|
7489
7507
|
/* @__PURE__ */ React60.createElement(NavigationMenuList, null, props.items.map((item, i) => /* @__PURE__ */ React60.createElement(NavigationMenuItem, { key: i }, item.content ? /* @__PURE__ */ React60.createElement(React60.Fragment, null, /* @__PURE__ */ React60.createElement(NavigationMenuTrigger, null, item.trigger), /* @__PURE__ */ React60.createElement(NavigationMenuContent, null, item.content)) : /* @__PURE__ */ React60.createElement(
|
|
7490
7508
|
NavigationMenuLink,
|
|
@@ -7945,7 +7963,7 @@ var Stats = ({
|
|
|
7945
7963
|
muted: "hawa-text-muted-foreground"
|
|
7946
7964
|
};
|
|
7947
7965
|
return /* @__PURE__ */ import_react39.default.createElement(Card, { ...props, clickable: Boolean(props.onClick) }, /* @__PURE__ */ import_react39.default.createElement("div", { className: "hawa-flex hawa-flex-row hawa-justify-between hawa-p-4 hawa-items-center" }, /* @__PURE__ */ import_react39.default.createElement(CardTitle, { className: "hawa-text-sm hawa-font-medium" }, label), icon && /* @__PURE__ */ import_react39.default.createElement("span", null, icon)), /* @__PURE__ */ import_react39.default.createElement(CardContent, { className: "hawa-transition-all" }, isLoading ? /* @__PURE__ */ import_react39.default.createElement(Skeleton, { className: "hawa-h-8 hawa-w-3/4" }) : /* @__PURE__ */ import_react39.default.createElement("div", { className: "hawa-text-2xl hawa-font-bold" }, number), helperText && /* @__PURE__ */ import_react39.default.createElement(
|
|
7948
|
-
"
|
|
7966
|
+
"div",
|
|
7949
7967
|
{
|
|
7950
7968
|
className: cn(
|
|
7951
7969
|
"hawa-my-0 hawa-text-xs hawa-transition-all hawa-text-start",
|
|
@@ -8206,9 +8224,10 @@ var Navbar = ({
|
|
|
8206
8224
|
}
|
|
8207
8225
|
},
|
|
8208
8226
|
logo
|
|
8209
|
-
)), /* @__PURE__ */ import_react41.default.createElement("div", { className: "hawa-hidden md:hawa-flex " }, (_a = props.menuItems) == null ? void 0 : _a.map((item) => /* @__PURE__ */ import_react41.default.createElement(
|
|
8227
|
+
)), /* @__PURE__ */ import_react41.default.createElement("div", { className: "hawa-hidden md:hawa-flex " }, (_a = props.menuItems) == null ? void 0 : _a.map((item, i) => /* @__PURE__ */ import_react41.default.createElement(
|
|
8210
8228
|
"div",
|
|
8211
8229
|
{
|
|
8230
|
+
key: i,
|
|
8212
8231
|
onClick: item.action,
|
|
8213
8232
|
className: "hawa-p-1.5 hawa-px-2 hawa-text-sm hawa-text-center hawa-rounded hawa-text-white hover:hawa-text-black hover:hawa-bg-gray-300 hawa-transition-all hawa-cursor-pointer"
|
|
8214
8233
|
},
|
|
@@ -8277,9 +8296,10 @@ var Navbar = ({
|
|
|
8277
8296
|
zIndex: -100
|
|
8278
8297
|
}
|
|
8279
8298
|
},
|
|
8280
|
-
(_b = props.menuItems) == null ? void 0 : _b.map((item) => /* @__PURE__ */ import_react41.default.createElement(
|
|
8299
|
+
(_b = props.menuItems) == null ? void 0 : _b.map((item, i) => /* @__PURE__ */ import_react41.default.createElement(
|
|
8281
8300
|
"div",
|
|
8282
8301
|
{
|
|
8302
|
+
key: i,
|
|
8283
8303
|
onClick: item.action,
|
|
8284
8304
|
className: "hawa-text-black hawa-p-2 hawa-px-10 hawa-text-center hawa-rounded hover:hawa-bg-gray-300 hawa-transition-all hawa-cursor-pointer"
|
|
8285
8305
|
},
|
|
@@ -8565,7 +8585,8 @@ var AppLayout = ({
|
|
|
8565
8585
|
{
|
|
8566
8586
|
side: "left",
|
|
8567
8587
|
delayDuration: 500,
|
|
8568
|
-
content: keepOpen ? ((_a = props.texts) == null ? void 0 : _a.collapseSidebar) || "Collapse Sidebar" : ((_b = props.texts) == null ? void 0 : _b.expandSidebar) || "Expand Sidebar"
|
|
8588
|
+
content: keepOpen ? ((_a = props.texts) == null ? void 0 : _a.collapseSidebar) || "Collapse Sidebar" : ((_b = props.texts) == null ? void 0 : _b.expandSidebar) || "Expand Sidebar",
|
|
8589
|
+
triggerProps: { asChild: true }
|
|
8569
8590
|
},
|
|
8570
8591
|
/* @__PURE__ */ import_react42.default.createElement(
|
|
8571
8592
|
Button,
|
|
@@ -8960,6 +8981,7 @@ var AppTabs = ({ tabs, ...props }) => {
|
|
|
8960
8981
|
return /* @__PURE__ */ import_react44.default.createElement(
|
|
8961
8982
|
AppSingleTab,
|
|
8962
8983
|
{
|
|
8984
|
+
key: index,
|
|
8963
8985
|
tab,
|
|
8964
8986
|
onClick: () => setSelectedIndex(index),
|
|
8965
8987
|
isSelected: selected
|
|
@@ -8971,6 +8993,7 @@ var AppSingleTab = ({ tab, ...props }) => {
|
|
|
8971
8993
|
return /* @__PURE__ */ import_react44.default.createElement(
|
|
8972
8994
|
"div",
|
|
8973
8995
|
{
|
|
8996
|
+
key: props.key,
|
|
8974
8997
|
onClick: props.onClick,
|
|
8975
8998
|
className: cn(
|
|
8976
8999
|
"hawa-p-4 hawa-py-2 hawa-flex hawa-flex-row hawa-gap-2 hawa-translate-y-[1.1px] hawa-text-sm hawa-rounded-t hawa-transition-all hawa-select-none hawa-z-10 ",
|
|
@@ -11136,6 +11159,7 @@ var import_react73 = require("react");
|
|
|
11136
11159
|
var import_react74 = require("react");
|
|
11137
11160
|
|
|
11138
11161
|
// components/hooks/useDialogCarousel.ts
|
|
11162
|
+
var import_react75 = require("react");
|
|
11139
11163
|
var import_embla_carousel_react2 = __toESM(require("embla-carousel-react"));
|
|
11140
11164
|
var import_embla_carousel_auto_height = __toESM(require("embla-carousel-auto-height"));
|
|
11141
11165
|
var useDialogCarousel = (options) => {
|
|
@@ -11143,6 +11167,12 @@ var useDialogCarousel = (options) => {
|
|
|
11143
11167
|
{ loop: false, watchDrag: false, startIndex: 0, ...options },
|
|
11144
11168
|
[(0, import_embla_carousel_auto_height.default)({ destroyHeight: "fit", active: true })]
|
|
11145
11169
|
);
|
|
11170
|
+
const [canScrollPrev, setCanScrollPrev] = (0, import_react75.useState)(false);
|
|
11171
|
+
const checkCanScrollPrev = () => {
|
|
11172
|
+
if (emblaApi) {
|
|
11173
|
+
setCanScrollPrev(emblaApi.canScrollPrev());
|
|
11174
|
+
}
|
|
11175
|
+
};
|
|
11146
11176
|
const nextStep = () => {
|
|
11147
11177
|
if (emblaApi) {
|
|
11148
11178
|
console.log("going to NEXT \u{1F449}");
|
|
@@ -11155,22 +11185,29 @@ var useDialogCarousel = (options) => {
|
|
|
11155
11185
|
emblaApi.scrollPrev();
|
|
11156
11186
|
}
|
|
11157
11187
|
};
|
|
11188
|
+
(0, import_react75.useEffect)(() => {
|
|
11189
|
+
checkCanScrollPrev();
|
|
11190
|
+
emblaApi && emblaApi.on("select", checkCanScrollPrev);
|
|
11191
|
+
return () => {
|
|
11192
|
+
emblaApi && emblaApi.off("select", checkCanScrollPrev);
|
|
11193
|
+
};
|
|
11194
|
+
}, [emblaApi]);
|
|
11158
11195
|
return {
|
|
11159
11196
|
emblaRef,
|
|
11160
11197
|
emblaApi,
|
|
11161
|
-
// currentStep,
|
|
11162
11198
|
nextStep,
|
|
11163
|
-
prevStep
|
|
11199
|
+
prevStep,
|
|
11200
|
+
canScrollPrev
|
|
11164
11201
|
};
|
|
11165
11202
|
};
|
|
11166
11203
|
|
|
11167
11204
|
// components/hooks/useDialogSteps.ts
|
|
11168
|
-
var
|
|
11205
|
+
var import_react76 = require("react");
|
|
11169
11206
|
var useMultiStepDialog = (initialStep, stepIds, setOpenDialog) => {
|
|
11170
|
-
const [currentStep, setCurrentStep] = (0,
|
|
11171
|
-
const [dialogHeight, setDialogHeight] = (0,
|
|
11172
|
-
const visibleStepRef = (0,
|
|
11173
|
-
(0,
|
|
11207
|
+
const [currentStep, setCurrentStep] = (0, import_react76.useState)(initialStep);
|
|
11208
|
+
const [dialogHeight, setDialogHeight] = (0, import_react76.useState)(null);
|
|
11209
|
+
const visibleStepRef = (0, import_react76.useRef)(null);
|
|
11210
|
+
(0, import_react76.useEffect)(() => {
|
|
11174
11211
|
if (visibleStepRef.current) {
|
|
11175
11212
|
setDialogHeight(visibleStepRef.current.offsetHeight);
|
|
11176
11213
|
}
|
|
@@ -11201,13 +11238,13 @@ var useMultiStepDialog = (initialStep, stepIds, setOpenDialog) => {
|
|
|
11201
11238
|
};
|
|
11202
11239
|
|
|
11203
11240
|
// components/hooks/useWindowSize.ts
|
|
11204
|
-
var
|
|
11241
|
+
var import_react77 = require("react");
|
|
11205
11242
|
var useWindowSize = () => {
|
|
11206
|
-
const [windowSize, setWindowSize] = (0,
|
|
11243
|
+
const [windowSize, setWindowSize] = (0, import_react77.useState)({
|
|
11207
11244
|
width: void 0,
|
|
11208
11245
|
height: void 0
|
|
11209
11246
|
});
|
|
11210
|
-
(0,
|
|
11247
|
+
(0, import_react77.useEffect)(() => {
|
|
11211
11248
|
function handleResize() {
|
|
11212
11249
|
setWindowSize({
|
|
11213
11250
|
width: window.innerWidth,
|
|
@@ -11222,7 +11259,7 @@ var useWindowSize = () => {
|
|
|
11222
11259
|
};
|
|
11223
11260
|
|
|
11224
11261
|
// components/hooks/useFocusWithin.ts
|
|
11225
|
-
var
|
|
11262
|
+
var import_react78 = require("react");
|
|
11226
11263
|
function containsRelatedTarget(event) {
|
|
11227
11264
|
if (event.currentTarget instanceof HTMLElement && event.relatedTarget instanceof HTMLElement) {
|
|
11228
11265
|
return event.currentTarget.contains(event.relatedTarget);
|
|
@@ -11233,9 +11270,9 @@ function useFocusWithin({
|
|
|
11233
11270
|
onBlur,
|
|
11234
11271
|
onFocus
|
|
11235
11272
|
} = {}) {
|
|
11236
|
-
const ref = (0,
|
|
11237
|
-
const [focused, _setFocused] = (0,
|
|
11238
|
-
const focusedRef = (0,
|
|
11273
|
+
const ref = (0, import_react78.useRef)(null);
|
|
11274
|
+
const [focused, _setFocused] = (0, import_react78.useState)(false);
|
|
11275
|
+
const focusedRef = (0, import_react78.useRef)(false);
|
|
11239
11276
|
const setFocused = (value) => {
|
|
11240
11277
|
_setFocused(value);
|
|
11241
11278
|
focusedRef.current = value;
|
|
@@ -11252,7 +11289,7 @@ function useFocusWithin({
|
|
|
11252
11289
|
onBlur == null ? void 0 : onBlur(event);
|
|
11253
11290
|
}
|
|
11254
11291
|
};
|
|
11255
|
-
(0,
|
|
11292
|
+
(0, import_react78.useEffect)(() => {
|
|
11256
11293
|
if (ref.current) {
|
|
11257
11294
|
ref.current.addEventListener("focusin", handleFocusIn);
|
|
11258
11295
|
ref.current.addEventListener("focusout", handleFocusOut);
|
|
@@ -11268,7 +11305,7 @@ function useFocusWithin({
|
|
|
11268
11305
|
}
|
|
11269
11306
|
|
|
11270
11307
|
// components/hooks/useMediaQuery.ts
|
|
11271
|
-
var
|
|
11308
|
+
var import_react79 = require("react");
|
|
11272
11309
|
function attachMediaListener(query, callback) {
|
|
11273
11310
|
try {
|
|
11274
11311
|
query.addEventListener("change", callback);
|
|
@@ -11290,11 +11327,11 @@ function getInitialValue(query, initialValue) {
|
|
|
11290
11327
|
function useMediaQuery(query, initialValue, { getInitialValueInEffect } = {
|
|
11291
11328
|
getInitialValueInEffect: true
|
|
11292
11329
|
}) {
|
|
11293
|
-
const [matches, setMatches] = (0,
|
|
11330
|
+
const [matches, setMatches] = (0, import_react79.useState)(
|
|
11294
11331
|
getInitialValueInEffect ? initialValue : getInitialValue(query, initialValue)
|
|
11295
11332
|
);
|
|
11296
|
-
const queryRef = (0,
|
|
11297
|
-
(0,
|
|
11333
|
+
const queryRef = (0, import_react79.useRef)();
|
|
11334
|
+
(0, import_react79.useEffect)(() => {
|
|
11298
11335
|
if ("matchMedia" in window) {
|
|
11299
11336
|
queryRef.current = window.matchMedia(query);
|
|
11300
11337
|
setMatches(queryRef.current.matches);
|
|
@@ -11309,16 +11346,16 @@ function useMediaQuery(query, initialValue, { getInitialValueInEffect } = {
|
|
|
11309
11346
|
}
|
|
11310
11347
|
|
|
11311
11348
|
// components/hooks/useScrollPosition.ts
|
|
11312
|
-
var
|
|
11349
|
+
var import_react80 = require("react");
|
|
11313
11350
|
|
|
11314
11351
|
// components/hooks/useTable.ts
|
|
11315
|
-
var
|
|
11352
|
+
var import_react81 = require("react");
|
|
11316
11353
|
|
|
11317
11354
|
// components/hooks/useTabs.ts
|
|
11318
|
-
var
|
|
11355
|
+
var import_react82 = require("react");
|
|
11319
11356
|
function useTabs(initialTab = "") {
|
|
11320
|
-
const [activeTab, setActiveTab] = (0,
|
|
11321
|
-
(0,
|
|
11357
|
+
const [activeTab, setActiveTab] = (0, import_react82.useState)(initialTab);
|
|
11358
|
+
(0, import_react82.useEffect)(() => {
|
|
11322
11359
|
const handleHashChange = () => {
|
|
11323
11360
|
const hash = window.location.hash.substring(1);
|
|
11324
11361
|
setActiveTab(hash || initialTab);
|
package/dist/index.mjs
CHANGED
|
@@ -46,7 +46,10 @@ function cn(...inputs) {
|
|
|
46
46
|
|
|
47
47
|
// components/elements/cards/AdCard.tsx
|
|
48
48
|
import React3, { useState as useState2, useEffect, useRef } from "react";
|
|
49
|
-
var AdCard = ({
|
|
49
|
+
var AdCard = ({
|
|
50
|
+
orientation = "vertical",
|
|
51
|
+
...props
|
|
52
|
+
}) => {
|
|
50
53
|
const adRef = useRef(null);
|
|
51
54
|
const [closed, setClosed] = useState2(false);
|
|
52
55
|
let duration = 0;
|
|
@@ -78,8 +81,7 @@ var AdCard = ({ orientation, ...props }) => {
|
|
|
78
81
|
return /* @__PURE__ */ React3.createElement("div", { ref: adRef }, /* @__PURE__ */ React3.createElement(
|
|
79
82
|
"div",
|
|
80
83
|
{
|
|
81
|
-
className: cn(cardStyles[orientation],
|
|
82
|
-
...props,
|
|
84
|
+
className: cn(cardStyles[orientation], props.className),
|
|
83
85
|
onClick: props.handleClick
|
|
84
86
|
},
|
|
85
87
|
/* @__PURE__ */ React3.createElement("div", { className: "hawa-flex hawa-aspect-square hawa-w-full hawa-max-w-fit hawa-items-start " }, /* @__PURE__ */ React3.createElement(
|
|
@@ -702,7 +704,7 @@ var DropdownMenuContent = React10.forwardRef(({ className, sideOffset = 4, ...pr
|
|
|
702
704
|
}
|
|
703
705
|
)));
|
|
704
706
|
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
705
|
-
var DropdownMenuItem = React10.forwardRef(({ className, inset, slug, ...props }, ref) => {
|
|
707
|
+
var DropdownMenuItem = React10.forwardRef(({ className, inset, badged, slug, ...props }, ref) => {
|
|
706
708
|
return /* @__PURE__ */ React10.createElement("a", { href: slug }, /* @__PURE__ */ React10.createElement(
|
|
707
709
|
DropdownMenuPrimitive.Item,
|
|
708
710
|
{
|
|
@@ -719,7 +721,7 @@ var DropdownMenuItem = React10.forwardRef(({ className, inset, slug, ...props },
|
|
|
719
721
|
/* @__PURE__ */ React10.createElement("div", { className: "hawa-flex hawa-flex-row hawa-items-center hawa-gap-2 " }, props.children),
|
|
720
722
|
props.end && props.end,
|
|
721
723
|
!props.end && props.shortcut && /* @__PURE__ */ React10.createElement(DropdownMenuShortcut, null, props.shortcut),
|
|
722
|
-
!props.end &&
|
|
724
|
+
!props.end && badged && /* @__PURE__ */ React10.createElement("div", { className: "hawa-h-3 hawa-w-3 hawa-bg-red-500 hawa-rounded-full" })
|
|
723
725
|
));
|
|
724
726
|
});
|
|
725
727
|
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
|
|
@@ -969,7 +971,7 @@ var DropdownMenuRadio = (props) => {
|
|
|
969
971
|
value: props.value,
|
|
970
972
|
onValueChange: props.onValueChange
|
|
971
973
|
},
|
|
972
|
-
props.options.map((opt) => /* @__PURE__ */ React10.createElement(DropdownMenuRadioItem, { value: opt.value }, opt.label))
|
|
974
|
+
props.options.map((opt, i) => /* @__PURE__ */ React10.createElement(DropdownMenuRadioItem, { key: i, value: opt.value }, opt.label))
|
|
973
975
|
)));
|
|
974
976
|
};
|
|
975
977
|
|
|
@@ -1030,15 +1032,15 @@ var ItemCard = ({
|
|
|
1030
1032
|
className: cn(
|
|
1031
1033
|
defaultStyle,
|
|
1032
1034
|
props.onCardClick && " hover:hawa-shadow-lg hawa-cursor-pointer",
|
|
1033
|
-
orientationStyles[orientation]
|
|
1035
|
+
orientationStyles[orientation],
|
|
1036
|
+
props.className
|
|
1034
1037
|
),
|
|
1035
1038
|
onClick: (e) => {
|
|
1036
1039
|
e.stopPropagation();
|
|
1037
1040
|
if (props.onCardClick) {
|
|
1038
1041
|
props.onCardClick(e);
|
|
1039
1042
|
}
|
|
1040
|
-
}
|
|
1041
|
-
...props
|
|
1043
|
+
}
|
|
1042
1044
|
},
|
|
1043
1045
|
cardImage && /* @__PURE__ */ React12.createElement("div", { className: "hawa-group hawa-relative hawa-overflow-clip" }, /* @__PURE__ */ React12.createElement(
|
|
1044
1046
|
"img",
|
|
@@ -1111,6 +1113,7 @@ var PinInput = ({
|
|
|
1111
1113
|
digits,
|
|
1112
1114
|
width = "normal",
|
|
1113
1115
|
getPins,
|
|
1116
|
+
inputProps,
|
|
1114
1117
|
...props
|
|
1115
1118
|
}) => {
|
|
1116
1119
|
const [pin, setPin] = useState4(Array.from(Array(digits)));
|
|
@@ -1169,7 +1172,7 @@ var PinInput = ({
|
|
|
1169
1172
|
onChange: (e) => handleChange(e, index),
|
|
1170
1173
|
onKeyDown: (e) => handleKeyDown(e, index),
|
|
1171
1174
|
onFocus: (e) => e.target.select(),
|
|
1172
|
-
...
|
|
1175
|
+
...inputProps
|
|
1173
1176
|
}
|
|
1174
1177
|
))
|
|
1175
1178
|
), /* @__PURE__ */ React14.createElement(
|
|
@@ -3616,16 +3619,11 @@ var ColorPicker = ({
|
|
|
3616
3619
|
let inputColor = inputElement.value;
|
|
3617
3620
|
if (inputColor[0] !== "#") {
|
|
3618
3621
|
inputColor = `#${inputColor}`;
|
|
3619
|
-
inputElement.value = inputColor;
|
|
3620
3622
|
}
|
|
3621
3623
|
const sanitizedInput = inputColor.replace(/[^a-fA-F0-9#]/g, "");
|
|
3622
|
-
if (sanitizedInput !== inputColor) {
|
|
3623
|
-
inputElement.value = sanitizedInput;
|
|
3624
|
-
}
|
|
3625
3624
|
setSelectedColor(sanitizedInput);
|
|
3626
3625
|
if (props.handleChange) {
|
|
3627
|
-
|
|
3628
|
-
inputElement.dispatchEvent(event);
|
|
3626
|
+
props.handleChange(e);
|
|
3629
3627
|
}
|
|
3630
3628
|
};
|
|
3631
3629
|
return /* @__PURE__ */ React24.createElement("div", { className: "hawa-flex hawa-flex-col hawa-w-full hawa-gap-2" }, props.label && /* @__PURE__ */ React24.createElement(Label2, { ...labelProps }, props.label), /* @__PURE__ */ React24.createElement("div", { dir: "ltr", className: "hawa-flex hawa-flex-row hawa-w-full" }, /* @__PURE__ */ React24.createElement(
|
|
@@ -3657,7 +3655,6 @@ var ColorPicker = ({
|
|
|
3657
3655
|
{
|
|
3658
3656
|
maxLength: 7,
|
|
3659
3657
|
type: "text",
|
|
3660
|
-
defaultValue: selectedColor || "#",
|
|
3661
3658
|
onInput: handleTextInputChange,
|
|
3662
3659
|
value: selectedColor,
|
|
3663
3660
|
className: cn(
|
|
@@ -3870,7 +3867,15 @@ var DialogContent = React26.forwardRef(({ className, children, persist, hideClos
|
|
|
3870
3867
|
)
|
|
3871
3868
|
)));
|
|
3872
3869
|
var DialogCarouselContent = React26.forwardRef(
|
|
3873
|
-
({
|
|
3870
|
+
({
|
|
3871
|
+
className,
|
|
3872
|
+
children,
|
|
3873
|
+
onPrev,
|
|
3874
|
+
persist,
|
|
3875
|
+
hideCloseButton,
|
|
3876
|
+
hidePrevButton,
|
|
3877
|
+
...props
|
|
3878
|
+
}, ref) => /* @__PURE__ */ React26.createElement(DialogPortal, null, /* @__PURE__ */ React26.createElement(DialogOverlay, null), /* @__PURE__ */ React26.createElement(
|
|
3874
3879
|
DialogPrimitive.Content,
|
|
3875
3880
|
{
|
|
3876
3881
|
onPointerDownOutside: (e) => {
|
|
@@ -3894,7 +3899,7 @@ var DialogCarouselContent = React26.forwardRef(
|
|
|
3894
3899
|
onPrev ? "hawa-justify-between" : "hawa-justify-end"
|
|
3895
3900
|
)
|
|
3896
3901
|
},
|
|
3897
|
-
|
|
3902
|
+
hidePrevButton ? /* @__PURE__ */ React26.createElement("div", null) : /* @__PURE__ */ React26.createElement(
|
|
3898
3903
|
"div",
|
|
3899
3904
|
{
|
|
3900
3905
|
onClick: onPrev,
|
|
@@ -4426,7 +4431,7 @@ var FileUploader = ({ handleFile, className }) => {
|
|
|
4426
4431
|
const fileUploaded = event.target.files[0];
|
|
4427
4432
|
handleFile(fileUploaded);
|
|
4428
4433
|
};
|
|
4429
|
-
return /* @__PURE__ */ React30.createElement("div", { className }, /* @__PURE__ */ React30.createElement("
|
|
4434
|
+
return /* @__PURE__ */ React30.createElement("div", { className }, /* @__PURE__ */ React30.createElement("div", { className: "hawa-h-full hawa-w-full", onClick: handleClick }), /* @__PURE__ */ React30.createElement(
|
|
4430
4435
|
"input",
|
|
4431
4436
|
{
|
|
4432
4437
|
type: "file",
|
|
@@ -4741,7 +4746,10 @@ var CodeBlock = ({
|
|
|
4741
4746
|
{
|
|
4742
4747
|
open: clipboard.copied,
|
|
4743
4748
|
side: "left",
|
|
4744
|
-
content: /* @__PURE__ */ React34.createElement("div", null, "Copied!")
|
|
4749
|
+
content: /* @__PURE__ */ React34.createElement("div", null, "Copied!"),
|
|
4750
|
+
triggerProps: {
|
|
4751
|
+
asChild: true
|
|
4752
|
+
}
|
|
4745
4753
|
},
|
|
4746
4754
|
/* @__PURE__ */ React34.createElement(
|
|
4747
4755
|
Button,
|
|
@@ -5506,7 +5514,14 @@ var Carousel = (props) => {
|
|
|
5506
5514
|
const length = React41.Children.count(items);
|
|
5507
5515
|
const canScrollNext = !!(emblaApi == null ? void 0 : emblaApi.canScrollNext());
|
|
5508
5516
|
const canScrollPrev = !!(emblaApi == null ? void 0 : emblaApi.canScrollPrev());
|
|
5509
|
-
return /* @__PURE__ */ React41.createElement("div", { className: " hawa-relative hawa-h-full" }, /* @__PURE__ */ React41.createElement("div", { className: "hawa-h-full hawa-overflow-hidden" }, /* @__PURE__ */ React41.createElement("div", { className: "hawa-h-full", ref: emblaRef }, /* @__PURE__ */ React41.createElement("div", { className: "hawa-h-full hawa-flex" }, items == null ? void 0 : items.map((item) => /* @__PURE__ */ React41.createElement(
|
|
5517
|
+
return /* @__PURE__ */ React41.createElement("div", { className: " hawa-relative hawa-h-full" }, /* @__PURE__ */ React41.createElement("div", { className: "hawa-h-full hawa-overflow-hidden" }, /* @__PURE__ */ React41.createElement("div", { className: "hawa-h-full", ref: emblaRef }, /* @__PURE__ */ React41.createElement("div", { className: "hawa-h-full hawa-flex" }, items == null ? void 0 : items.map((item, i) => /* @__PURE__ */ React41.createElement(
|
|
5518
|
+
"div",
|
|
5519
|
+
{
|
|
5520
|
+
key: i,
|
|
5521
|
+
className: "hawa-h-full hawa-justify-center hawa-flex hawa-items-center hawa-min-w-0 hawa-flex-[0_0_100%]"
|
|
5522
|
+
},
|
|
5523
|
+
item
|
|
5524
|
+
))))), /* @__PURE__ */ React41.createElement(
|
|
5510
5525
|
Dots,
|
|
5511
5526
|
{
|
|
5512
5527
|
itemsLength: length,
|
|
@@ -7148,7 +7163,7 @@ ProgressCircle.displayName = "ProgressCircle";
|
|
|
7148
7163
|
import * as React60 from "react";
|
|
7149
7164
|
import * as NavigationMenuPrimitive from "@radix-ui/react-navigation-menu";
|
|
7150
7165
|
import { cva as cva4 } from "class-variance-authority";
|
|
7151
|
-
var NavigationMenuRoot = React60.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ React60.createElement(
|
|
7166
|
+
var NavigationMenuRoot = React60.forwardRef(({ className, children, viewportClassNames, ...props }, ref) => /* @__PURE__ */ React60.createElement(
|
|
7152
7167
|
NavigationMenuPrimitive.Root,
|
|
7153
7168
|
{
|
|
7154
7169
|
ref,
|
|
@@ -7160,7 +7175,7 @@ var NavigationMenuRoot = React60.forwardRef(({ className, children, ...props },
|
|
|
7160
7175
|
...props
|
|
7161
7176
|
},
|
|
7162
7177
|
children,
|
|
7163
|
-
/* @__PURE__ */ React60.createElement(NavigationMenuViewport, { className:
|
|
7178
|
+
/* @__PURE__ */ React60.createElement(NavigationMenuViewport, { className: viewportClassNames })
|
|
7164
7179
|
));
|
|
7165
7180
|
NavigationMenuRoot.displayName = NavigationMenuPrimitive.Root.displayName;
|
|
7166
7181
|
var NavigationMenuList = React60.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React60.createElement(
|
|
@@ -7259,14 +7274,17 @@ var NavigationMenuIndicator = React60.forwardRef(({ className, ...props }, ref)
|
|
|
7259
7274
|
/* @__PURE__ */ React60.createElement("div", { className: "hawa-relative hawa-top-[60%] hawa-h-2 hawa-w-2 hawa-rotate-45 hawa-rounded-tl-sm hawa-bg-border hawa-shadow-md" })
|
|
7260
7275
|
));
|
|
7261
7276
|
NavigationMenuIndicator.displayName = NavigationMenuPrimitive.Indicator.displayName;
|
|
7262
|
-
var NavigationMenu = (
|
|
7277
|
+
var NavigationMenu = ({
|
|
7278
|
+
viewportClassNames,
|
|
7279
|
+
...props
|
|
7280
|
+
}) => {
|
|
7263
7281
|
return /* @__PURE__ */ React60.createElement(
|
|
7264
7282
|
NavigationMenuRoot,
|
|
7265
7283
|
{
|
|
7266
7284
|
dir: props.direction,
|
|
7267
7285
|
delayDuration: 0,
|
|
7268
7286
|
className: props.rootClassNames,
|
|
7269
|
-
viewportClassNames
|
|
7287
|
+
viewportClassNames
|
|
7270
7288
|
},
|
|
7271
7289
|
/* @__PURE__ */ React60.createElement(NavigationMenuList, null, props.items.map((item, i) => /* @__PURE__ */ React60.createElement(NavigationMenuItem, { key: i }, item.content ? /* @__PURE__ */ React60.createElement(React60.Fragment, null, /* @__PURE__ */ React60.createElement(NavigationMenuTrigger, null, item.trigger), /* @__PURE__ */ React60.createElement(NavigationMenuContent, null, item.content)) : /* @__PURE__ */ React60.createElement(
|
|
7272
7290
|
NavigationMenuLink,
|
|
@@ -7729,7 +7747,7 @@ var Stats = ({
|
|
|
7729
7747
|
muted: "hawa-text-muted-foreground"
|
|
7730
7748
|
};
|
|
7731
7749
|
return /* @__PURE__ */ React64.createElement(Card, { ...props, clickable: Boolean(props.onClick) }, /* @__PURE__ */ React64.createElement("div", { className: "hawa-flex hawa-flex-row hawa-justify-between hawa-p-4 hawa-items-center" }, /* @__PURE__ */ React64.createElement(CardTitle, { className: "hawa-text-sm hawa-font-medium" }, label), icon && /* @__PURE__ */ React64.createElement("span", null, icon)), /* @__PURE__ */ React64.createElement(CardContent, { className: "hawa-transition-all" }, isLoading ? /* @__PURE__ */ React64.createElement(Skeleton, { className: "hawa-h-8 hawa-w-3/4" }) : /* @__PURE__ */ React64.createElement("div", { className: "hawa-text-2xl hawa-font-bold" }, number), helperText && /* @__PURE__ */ React64.createElement(
|
|
7732
|
-
"
|
|
7750
|
+
"div",
|
|
7733
7751
|
{
|
|
7734
7752
|
className: cn(
|
|
7735
7753
|
"hawa-my-0 hawa-text-xs hawa-transition-all hawa-text-start",
|
|
@@ -7990,9 +8008,10 @@ var Navbar = ({
|
|
|
7990
8008
|
}
|
|
7991
8009
|
},
|
|
7992
8010
|
logo
|
|
7993
|
-
)), /* @__PURE__ */ React67.createElement("div", { className: "hawa-hidden md:hawa-flex " }, (_a = props.menuItems) == null ? void 0 : _a.map((item) => /* @__PURE__ */ React67.createElement(
|
|
8011
|
+
)), /* @__PURE__ */ React67.createElement("div", { className: "hawa-hidden md:hawa-flex " }, (_a = props.menuItems) == null ? void 0 : _a.map((item, i) => /* @__PURE__ */ React67.createElement(
|
|
7994
8012
|
"div",
|
|
7995
8013
|
{
|
|
8014
|
+
key: i,
|
|
7996
8015
|
onClick: item.action,
|
|
7997
8016
|
className: "hawa-p-1.5 hawa-px-2 hawa-text-sm hawa-text-center hawa-rounded hawa-text-white hover:hawa-text-black hover:hawa-bg-gray-300 hawa-transition-all hawa-cursor-pointer"
|
|
7998
8017
|
},
|
|
@@ -8061,9 +8080,10 @@ var Navbar = ({
|
|
|
8061
8080
|
zIndex: -100
|
|
8062
8081
|
}
|
|
8063
8082
|
},
|
|
8064
|
-
(_b = props.menuItems) == null ? void 0 : _b.map((item) => /* @__PURE__ */ React67.createElement(
|
|
8083
|
+
(_b = props.menuItems) == null ? void 0 : _b.map((item, i) => /* @__PURE__ */ React67.createElement(
|
|
8065
8084
|
"div",
|
|
8066
8085
|
{
|
|
8086
|
+
key: i,
|
|
8067
8087
|
onClick: item.action,
|
|
8068
8088
|
className: "hawa-text-black hawa-p-2 hawa-px-10 hawa-text-center hawa-rounded hover:hawa-bg-gray-300 hawa-transition-all hawa-cursor-pointer"
|
|
8069
8089
|
},
|
|
@@ -8349,7 +8369,8 @@ var AppLayout = ({
|
|
|
8349
8369
|
{
|
|
8350
8370
|
side: "left",
|
|
8351
8371
|
delayDuration: 500,
|
|
8352
|
-
content: keepOpen ? ((_a = props.texts) == null ? void 0 : _a.collapseSidebar) || "Collapse Sidebar" : ((_b = props.texts) == null ? void 0 : _b.expandSidebar) || "Expand Sidebar"
|
|
8372
|
+
content: keepOpen ? ((_a = props.texts) == null ? void 0 : _a.collapseSidebar) || "Collapse Sidebar" : ((_b = props.texts) == null ? void 0 : _b.expandSidebar) || "Expand Sidebar",
|
|
8373
|
+
triggerProps: { asChild: true }
|
|
8353
8374
|
},
|
|
8354
8375
|
/* @__PURE__ */ React68.createElement(
|
|
8355
8376
|
Button,
|
|
@@ -8744,6 +8765,7 @@ var AppTabs = ({ tabs, ...props }) => {
|
|
|
8744
8765
|
return /* @__PURE__ */ React71.createElement(
|
|
8745
8766
|
AppSingleTab,
|
|
8746
8767
|
{
|
|
8768
|
+
key: index,
|
|
8747
8769
|
tab,
|
|
8748
8770
|
onClick: () => setSelectedIndex(index),
|
|
8749
8771
|
isSelected: selected
|
|
@@ -8755,6 +8777,7 @@ var AppSingleTab = ({ tab, ...props }) => {
|
|
|
8755
8777
|
return /* @__PURE__ */ React71.createElement(
|
|
8756
8778
|
"div",
|
|
8757
8779
|
{
|
|
8780
|
+
key: props.key,
|
|
8758
8781
|
onClick: props.onClick,
|
|
8759
8782
|
className: cn(
|
|
8760
8783
|
"hawa-p-4 hawa-py-2 hawa-flex hawa-flex-row hawa-gap-2 hawa-translate-y-[1.1px] hawa-text-sm hawa-rounded-t hawa-transition-all hawa-select-none hawa-z-10 ",
|
|
@@ -10920,6 +10943,7 @@ import { useEffect as useEffect25, useRef as useRef14, useState as useState39 }
|
|
|
10920
10943
|
import { useState as useState40, useRef as useRef15 } from "react";
|
|
10921
10944
|
|
|
10922
10945
|
// components/hooks/useDialogCarousel.ts
|
|
10946
|
+
import { useEffect as useEffect26, useState as useState41 } from "react";
|
|
10923
10947
|
import useEmblaCarousel2 from "embla-carousel-react";
|
|
10924
10948
|
import AutoHeight from "embla-carousel-auto-height";
|
|
10925
10949
|
var useDialogCarousel = (options) => {
|
|
@@ -10927,6 +10951,12 @@ var useDialogCarousel = (options) => {
|
|
|
10927
10951
|
{ loop: false, watchDrag: false, startIndex: 0, ...options },
|
|
10928
10952
|
[AutoHeight({ destroyHeight: "fit", active: true })]
|
|
10929
10953
|
);
|
|
10954
|
+
const [canScrollPrev, setCanScrollPrev] = useState41(false);
|
|
10955
|
+
const checkCanScrollPrev = () => {
|
|
10956
|
+
if (emblaApi) {
|
|
10957
|
+
setCanScrollPrev(emblaApi.canScrollPrev());
|
|
10958
|
+
}
|
|
10959
|
+
};
|
|
10930
10960
|
const nextStep = () => {
|
|
10931
10961
|
if (emblaApi) {
|
|
10932
10962
|
console.log("going to NEXT \u{1F449}");
|
|
@@ -10939,22 +10969,29 @@ var useDialogCarousel = (options) => {
|
|
|
10939
10969
|
emblaApi.scrollPrev();
|
|
10940
10970
|
}
|
|
10941
10971
|
};
|
|
10972
|
+
useEffect26(() => {
|
|
10973
|
+
checkCanScrollPrev();
|
|
10974
|
+
emblaApi && emblaApi.on("select", checkCanScrollPrev);
|
|
10975
|
+
return () => {
|
|
10976
|
+
emblaApi && emblaApi.off("select", checkCanScrollPrev);
|
|
10977
|
+
};
|
|
10978
|
+
}, [emblaApi]);
|
|
10942
10979
|
return {
|
|
10943
10980
|
emblaRef,
|
|
10944
10981
|
emblaApi,
|
|
10945
|
-
// currentStep,
|
|
10946
10982
|
nextStep,
|
|
10947
|
-
prevStep
|
|
10983
|
+
prevStep,
|
|
10984
|
+
canScrollPrev
|
|
10948
10985
|
};
|
|
10949
10986
|
};
|
|
10950
10987
|
|
|
10951
10988
|
// components/hooks/useDialogSteps.ts
|
|
10952
|
-
import { useState as
|
|
10989
|
+
import { useState as useState42, useEffect as useEffect27, useRef as useRef16 } from "react";
|
|
10953
10990
|
var useMultiStepDialog = (initialStep, stepIds, setOpenDialog) => {
|
|
10954
|
-
const [currentStep, setCurrentStep] =
|
|
10955
|
-
const [dialogHeight, setDialogHeight] =
|
|
10991
|
+
const [currentStep, setCurrentStep] = useState42(initialStep);
|
|
10992
|
+
const [dialogHeight, setDialogHeight] = useState42(null);
|
|
10956
10993
|
const visibleStepRef = useRef16(null);
|
|
10957
|
-
|
|
10994
|
+
useEffect27(() => {
|
|
10958
10995
|
if (visibleStepRef.current) {
|
|
10959
10996
|
setDialogHeight(visibleStepRef.current.offsetHeight);
|
|
10960
10997
|
}
|
|
@@ -10985,13 +11022,13 @@ var useMultiStepDialog = (initialStep, stepIds, setOpenDialog) => {
|
|
|
10985
11022
|
};
|
|
10986
11023
|
|
|
10987
11024
|
// components/hooks/useWindowSize.ts
|
|
10988
|
-
import { useEffect as
|
|
11025
|
+
import { useEffect as useEffect28, useState as useState43 } from "react";
|
|
10989
11026
|
var useWindowSize = () => {
|
|
10990
|
-
const [windowSize, setWindowSize] =
|
|
11027
|
+
const [windowSize, setWindowSize] = useState43({
|
|
10991
11028
|
width: void 0,
|
|
10992
11029
|
height: void 0
|
|
10993
11030
|
});
|
|
10994
|
-
|
|
11031
|
+
useEffect28(() => {
|
|
10995
11032
|
function handleResize() {
|
|
10996
11033
|
setWindowSize({
|
|
10997
11034
|
width: window.innerWidth,
|
|
@@ -11006,7 +11043,7 @@ var useWindowSize = () => {
|
|
|
11006
11043
|
};
|
|
11007
11044
|
|
|
11008
11045
|
// components/hooks/useFocusWithin.ts
|
|
11009
|
-
import { useRef as useRef17, useState as
|
|
11046
|
+
import { useRef as useRef17, useState as useState44, useEffect as useEffect29 } from "react";
|
|
11010
11047
|
function containsRelatedTarget(event) {
|
|
11011
11048
|
if (event.currentTarget instanceof HTMLElement && event.relatedTarget instanceof HTMLElement) {
|
|
11012
11049
|
return event.currentTarget.contains(event.relatedTarget);
|
|
@@ -11018,7 +11055,7 @@ function useFocusWithin({
|
|
|
11018
11055
|
onFocus
|
|
11019
11056
|
} = {}) {
|
|
11020
11057
|
const ref = useRef17(null);
|
|
11021
|
-
const [focused, _setFocused] =
|
|
11058
|
+
const [focused, _setFocused] = useState44(false);
|
|
11022
11059
|
const focusedRef = useRef17(false);
|
|
11023
11060
|
const setFocused = (value) => {
|
|
11024
11061
|
_setFocused(value);
|
|
@@ -11036,7 +11073,7 @@ function useFocusWithin({
|
|
|
11036
11073
|
onBlur == null ? void 0 : onBlur(event);
|
|
11037
11074
|
}
|
|
11038
11075
|
};
|
|
11039
|
-
|
|
11076
|
+
useEffect29(() => {
|
|
11040
11077
|
if (ref.current) {
|
|
11041
11078
|
ref.current.addEventListener("focusin", handleFocusIn);
|
|
11042
11079
|
ref.current.addEventListener("focusout", handleFocusOut);
|
|
@@ -11052,7 +11089,7 @@ function useFocusWithin({
|
|
|
11052
11089
|
}
|
|
11053
11090
|
|
|
11054
11091
|
// components/hooks/useMediaQuery.ts
|
|
11055
|
-
import { useState as
|
|
11092
|
+
import { useState as useState45, useEffect as useEffect30, useRef as useRef18 } from "react";
|
|
11056
11093
|
function attachMediaListener(query, callback) {
|
|
11057
11094
|
try {
|
|
11058
11095
|
query.addEventListener("change", callback);
|
|
@@ -11074,11 +11111,11 @@ function getInitialValue(query, initialValue) {
|
|
|
11074
11111
|
function useMediaQuery(query, initialValue, { getInitialValueInEffect } = {
|
|
11075
11112
|
getInitialValueInEffect: true
|
|
11076
11113
|
}) {
|
|
11077
|
-
const [matches, setMatches] =
|
|
11114
|
+
const [matches, setMatches] = useState45(
|
|
11078
11115
|
getInitialValueInEffect ? initialValue : getInitialValue(query, initialValue)
|
|
11079
11116
|
);
|
|
11080
11117
|
const queryRef = useRef18();
|
|
11081
|
-
|
|
11118
|
+
useEffect30(() => {
|
|
11082
11119
|
if ("matchMedia" in window) {
|
|
11083
11120
|
queryRef.current = window.matchMedia(query);
|
|
11084
11121
|
setMatches(queryRef.current.matches);
|
|
@@ -11093,16 +11130,16 @@ function useMediaQuery(query, initialValue, { getInitialValueInEffect } = {
|
|
|
11093
11130
|
}
|
|
11094
11131
|
|
|
11095
11132
|
// components/hooks/useScrollPosition.ts
|
|
11096
|
-
import { useState as
|
|
11133
|
+
import { useState as useState46, useEffect as useEffect31 } from "react";
|
|
11097
11134
|
|
|
11098
11135
|
// components/hooks/useTable.ts
|
|
11099
|
-
import { useState as
|
|
11136
|
+
import { useState as useState47, useEffect as useEffect32 } from "react";
|
|
11100
11137
|
|
|
11101
11138
|
// components/hooks/useTabs.ts
|
|
11102
|
-
import { useEffect as
|
|
11139
|
+
import { useEffect as useEffect33, useState as useState48 } from "react";
|
|
11103
11140
|
function useTabs(initialTab = "") {
|
|
11104
|
-
const [activeTab, setActiveTab] =
|
|
11105
|
-
|
|
11141
|
+
const [activeTab, setActiveTab] = useState48(initialTab);
|
|
11142
|
+
useEffect33(() => {
|
|
11106
11143
|
const handleHashChange = () => {
|
|
11107
11144
|
const hash = window.location.hash.substring(1);
|
|
11108
11145
|
setActiveTab(hash || initialTab);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sikka/hawa",
|
|
3
|
-
"version": "0.19.
|
|
3
|
+
"version": "0.19.8-next",
|
|
4
4
|
"description": "Modern UI Kit made with Tailwind",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Sikka Software",
|
|
@@ -71,20 +71,20 @@
|
|
|
71
71
|
"@radix-ui/react-toast": "^1.1.5",
|
|
72
72
|
"@radix-ui/react-tooltip": "^1.0.7",
|
|
73
73
|
"@tanstack/react-table": "^8.10.7",
|
|
74
|
-
"@types/node": "^20.9.
|
|
75
|
-
"@types/react": "^18.2.
|
|
76
|
-
"@types/react-dom": "^18.2.
|
|
74
|
+
"@types/node": "^20.9.4",
|
|
75
|
+
"@types/react": "^18.2.38",
|
|
76
|
+
"@types/react-dom": "^18.2.17",
|
|
77
77
|
"class-variance-authority": "^0.7.0",
|
|
78
78
|
"clsx": "^2.0.0",
|
|
79
79
|
"cmdk": "^0.2.0",
|
|
80
80
|
"embla-carousel-auto-height": "^8.0.0-rc14",
|
|
81
81
|
"embla-carousel-react": "^8.0.0-rc14",
|
|
82
|
-
"eslint": "^8.
|
|
83
|
-
"eslint-config-next": "^14.0.
|
|
84
|
-
"libphonenumber-js": "^1.10.
|
|
85
|
-
"next": "^14.0.
|
|
82
|
+
"eslint": "^8.54.0",
|
|
83
|
+
"eslint-config-next": "^14.0.3",
|
|
84
|
+
"libphonenumber-js": "^1.10.50",
|
|
85
|
+
"next": "^14.0.3",
|
|
86
86
|
"next-themes": "^0.2.1",
|
|
87
|
-
"prism-react-renderer": "^2.
|
|
87
|
+
"prism-react-renderer": "^2.3.0",
|
|
88
88
|
"react": "18.2.0",
|
|
89
89
|
"react-dom": "18.2.0",
|
|
90
90
|
"react-dropzone": "^14.2.3",
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
},
|
|
97
97
|
"devDependencies": {
|
|
98
98
|
"@babel/preset-react": "^7.23.3",
|
|
99
|
-
"@sikka/alam": "^0.0.
|
|
99
|
+
"@sikka/alam": "^0.0.3",
|
|
100
100
|
"@storybook/addon-essentials": "^7.5.3",
|
|
101
101
|
"@storybook/addon-interactions": "^7.5.3",
|
|
102
102
|
"@storybook/addon-links": "^7.5.3",
|
|
@@ -108,8 +108,8 @@
|
|
|
108
108
|
"@storybook/testing-library": "^0.2.2",
|
|
109
109
|
"@storybook/theming": "^7.5.3",
|
|
110
110
|
"@testing-library/jest-dom": "^6.1.4",
|
|
111
|
-
"@testing-library/react": "^14.1.
|
|
112
|
-
"@types/jest": "^29.5.
|
|
111
|
+
"@testing-library/react": "^14.1.2",
|
|
112
|
+
"@types/jest": "^29.5.10",
|
|
113
113
|
"autoprefixer": "^10.4.16",
|
|
114
114
|
"eslint-plugin-storybook": "^0.6.15",
|
|
115
115
|
"jest": "^29.7.0",
|
|
@@ -118,12 +118,12 @@
|
|
|
118
118
|
"postcss": "^8.4.31",
|
|
119
119
|
"postcss-cli": "^10.1.0",
|
|
120
120
|
"postcss-import": "^15.1.0",
|
|
121
|
-
"recharts": "^2.
|
|
121
|
+
"recharts": "^2.10.1",
|
|
122
122
|
"storybook": "^7.5.3",
|
|
123
123
|
"storybook-dark-mode": "^3.0.1",
|
|
124
124
|
"tailwindcss": "^3.3.5",
|
|
125
125
|
"tailwindcss-animate": "^1.0.7",
|
|
126
|
-
"tsup": "^
|
|
127
|
-
"typescript": "^5.
|
|
126
|
+
"tsup": "^8.0.1",
|
|
127
|
+
"typescript": "^5.3.2"
|
|
128
128
|
}
|
|
129
129
|
}
|