@sikka/hawa 0.46.1-next → 0.46.4-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.
Files changed (77) hide show
  1. package/dist/blocks/auth/index.js +23 -14
  2. package/dist/blocks/auth/index.mjs +4 -4
  3. package/dist/blocks/feedback/index.js +1 -1
  4. package/dist/blocks/feedback/index.mjs +5 -5
  5. package/dist/blocks/index.js +23 -14
  6. package/dist/blocks/index.mjs +2 -2
  7. package/dist/blocks/misc/index.js +23 -14
  8. package/dist/blocks/misc/index.mjs +5 -5
  9. package/dist/blocks/pricing/index.js +1 -1
  10. package/dist/blocks/pricing/index.mjs +4 -4
  11. package/dist/{chunk-QUC5EXTF.mjs → chunk-5CTMGPEF.mjs} +30 -21
  12. package/dist/{chunk-EHJXQQDP.mjs → chunk-5S5DR7KF.mjs} +1 -1
  13. package/dist/{chunk-HJVL6X7I.mjs → chunk-6SJUUJOV.mjs} +1 -1
  14. package/dist/{chunk-7O555VJR.mjs → chunk-6TG2PHZK.mjs} +1 -1
  15. package/dist/{chunk-U72MOMEK.mjs → chunk-C2UOOH4X.mjs} +1 -1
  16. package/dist/{chunk-FTETN5UE.mjs → chunk-EOH6A3GR.mjs} +24 -15
  17. package/dist/{chunk-6UOJKVIA.mjs → chunk-IFWYR5W2.mjs} +1 -1
  18. package/dist/{chunk-YXUHXKKK.mjs → chunk-JP2N5WKD.mjs} +1 -1
  19. package/dist/{chunk-R37QEYSB.mjs → chunk-NMW4GM4G.mjs} +1 -1
  20. package/dist/{chunk-CIMTNOLA.mjs → chunk-WUMDFBEK.mjs} +1 -1
  21. package/dist/colorPicker/index.js +1 -1
  22. package/dist/colorPicker/index.js.map +1 -1
  23. package/dist/colorPicker/index.mjs +1 -1
  24. package/dist/colorPicker/index.mjs.map +1 -1
  25. package/dist/combobox/index.js +1 -1
  26. package/dist/combobox/index.js.map +1 -1
  27. package/dist/combobox/index.mjs +1 -1
  28. package/dist/combobox/index.mjs.map +1 -1
  29. package/dist/dataTable/index.js +23 -14
  30. package/dist/dataTable/index.js.map +1 -1
  31. package/dist/dataTable/index.mjs +24 -15
  32. package/dist/dataTable/index.mjs.map +1 -1
  33. package/dist/elements/index.d.mts +2 -2
  34. package/dist/elements/index.d.ts +2 -2
  35. package/dist/elements/index.js +23 -14
  36. package/dist/elements/index.mjs +3 -3
  37. package/dist/index.d.mts +2 -2
  38. package/dist/index.d.ts +2 -2
  39. package/dist/index.js +23 -14
  40. package/dist/index.mjs +130 -121
  41. package/dist/input/index.d.mts +2 -2
  42. package/dist/input/index.d.ts +2 -2
  43. package/dist/input/index.js +23 -14
  44. package/dist/input/index.js.map +1 -1
  45. package/dist/input/index.mjs +24 -15
  46. package/dist/input/index.mjs.map +1 -1
  47. package/dist/layout/index.js +1 -1
  48. package/dist/layout/index.mjs +2 -2
  49. package/dist/passwordInput/index.js +23 -14
  50. package/dist/passwordInput/index.js.map +1 -1
  51. package/dist/passwordInput/index.mjs +34 -25
  52. package/dist/passwordInput/index.mjs.map +1 -1
  53. package/dist/phoneInput/index.js +1 -1
  54. package/dist/phoneInput/index.js.map +1 -1
  55. package/dist/phoneInput/index.mjs +1 -1
  56. package/dist/phoneInput/index.mjs.map +1 -1
  57. package/dist/select/index.js +1 -1
  58. package/dist/select/index.js.map +1 -1
  59. package/dist/select/index.mjs +1 -1
  60. package/dist/select/index.mjs.map +1 -1
  61. package/dist/simpleTable/index.js +1 -1
  62. package/dist/simpleTable/index.js.map +1 -1
  63. package/dist/simpleTable/index.mjs +1 -1
  64. package/dist/simpleTable/index.mjs.map +1 -1
  65. package/dist/skeleton/index.js +1 -1
  66. package/dist/skeleton/index.js.map +1 -1
  67. package/dist/skeleton/index.mjs +1 -1
  68. package/dist/skeleton/index.mjs.map +1 -1
  69. package/dist/stats/index.js +1 -1
  70. package/dist/stats/index.js.map +1 -1
  71. package/dist/stats/index.mjs +1 -1
  72. package/dist/stats/index.mjs.map +1 -1
  73. package/dist/textarea/index.js +1 -1
  74. package/dist/textarea/index.js.map +1 -1
  75. package/dist/textarea/index.mjs +1 -1
  76. package/dist/textarea/index.mjs.map +1 -1
  77. package/package.json +1 -1
@@ -600,7 +600,7 @@ declare const TabsTrigger: React.ForwardRefExoticComponent<Omit<TabsPrimitive.Ta
600
600
  } & React.RefAttributes<HTMLButtonElement>>;
601
601
  declare const TabsContent: React.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
602
602
 
603
- type TextFieldTypes = React__default.InputHTMLAttributes<HTMLInputElement> & {
603
+ type InputFieldProps = React__default.InputHTMLAttributes<HTMLInputElement> & {
604
604
  isLoading?: boolean;
605
605
  isLoadingError?: boolean;
606
606
  containerClassName?: string;
@@ -990,4 +990,4 @@ type PhoneMockupProps = {
990
990
  };
991
991
  declare const PhoneMockup: React__default.FC<PhoneMockupProps>;
992
992
 
993
- export { Accordion, AccordionContent, AccordionItem, type AccordionItemProps, AccordionRoot, AccordionTrigger, Alert, AppCommand, AppStores, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, type BreadcrumbItemProps, Button, type ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, Checkbox, ChipTypes, CodeBlock, ColorPicker, Combobox, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, type CommandInputProps, CommandItem, CommandList, CommandSeparator, CommandShortcut, Count, DataTable, DestroyableCard, Dialog, DialogBody, DialogCarousel, DialogCarouselContent, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPortal, DialogStep, DialogSteps, DialogTitle, DialogTrigger, FileDropzone, FileUploader, FullCommand, type FullCommandItem, Input, InterfaceSettings, LabelProps, Loading, Logos, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneMockup, PinInput, PinInputGroup, PinInputRoot, PinInputSeperator, PinInputSlot, Popover, PopoverContent, PopoverPortal, PopoverRoot, PopoverTrigger, Progress, ProgressCircle, ScrollArea, ScrollBar, ScrollIndicator, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, SimpleTable, Skeleton, Slider, SortButton, StandardNavigationMenuItem, StopPropagationWrapper, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, type TextFieldTypes, Textarea, type TextareaProps, Toaster, ToasterToastProps, Tooltip, buttonVariants, navigationMenuTriggerStyle };
993
+ export { Accordion, AccordionContent, AccordionItem, type AccordionItemProps, AccordionRoot, AccordionTrigger, Alert, AppCommand, AppStores, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, type BreadcrumbItemProps, Button, type ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, Checkbox, ChipTypes, CodeBlock, ColorPicker, Combobox, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, type CommandInputProps, CommandItem, CommandList, CommandSeparator, CommandShortcut, Count, DataTable, DestroyableCard, Dialog, DialogBody, DialogCarousel, DialogCarouselContent, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPortal, DialogStep, DialogSteps, DialogTitle, DialogTrigger, FileDropzone, FileUploader, FullCommand, type FullCommandItem, Input, type InputFieldProps, InterfaceSettings, LabelProps, Loading, Logos, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneMockup, PinInput, PinInputGroup, PinInputRoot, PinInputSeperator, PinInputSlot, Popover, PopoverContent, PopoverPortal, PopoverRoot, PopoverTrigger, Progress, ProgressCircle, ScrollArea, ScrollBar, ScrollIndicator, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, SimpleTable, Skeleton, Slider, SortButton, StandardNavigationMenuItem, StopPropagationWrapper, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, type TextareaProps, Toaster, ToasterToastProps, Tooltip, buttonVariants, navigationMenuTriggerStyle };
@@ -600,7 +600,7 @@ declare const TabsTrigger: React.ForwardRefExoticComponent<Omit<TabsPrimitive.Ta
600
600
  } & React.RefAttributes<HTMLButtonElement>>;
601
601
  declare const TabsContent: React.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
602
602
 
603
- type TextFieldTypes = React__default.InputHTMLAttributes<HTMLInputElement> & {
603
+ type InputFieldProps = React__default.InputHTMLAttributes<HTMLInputElement> & {
604
604
  isLoading?: boolean;
605
605
  isLoadingError?: boolean;
606
606
  containerClassName?: string;
@@ -990,4 +990,4 @@ type PhoneMockupProps = {
990
990
  };
991
991
  declare const PhoneMockup: React__default.FC<PhoneMockupProps>;
992
992
 
993
- export { Accordion, AccordionContent, AccordionItem, type AccordionItemProps, AccordionRoot, AccordionTrigger, Alert, AppCommand, AppStores, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, type BreadcrumbItemProps, Button, type ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, Checkbox, ChipTypes, CodeBlock, ColorPicker, Combobox, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, type CommandInputProps, CommandItem, CommandList, CommandSeparator, CommandShortcut, Count, DataTable, DestroyableCard, Dialog, DialogBody, DialogCarousel, DialogCarouselContent, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPortal, DialogStep, DialogSteps, DialogTitle, DialogTrigger, FileDropzone, FileUploader, FullCommand, type FullCommandItem, Input, InterfaceSettings, LabelProps, Loading, Logos, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneMockup, PinInput, PinInputGroup, PinInputRoot, PinInputSeperator, PinInputSlot, Popover, PopoverContent, PopoverPortal, PopoverRoot, PopoverTrigger, Progress, ProgressCircle, ScrollArea, ScrollBar, ScrollIndicator, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, SimpleTable, Skeleton, Slider, SortButton, StandardNavigationMenuItem, StopPropagationWrapper, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, type TextFieldTypes, Textarea, type TextareaProps, Toaster, ToasterToastProps, Tooltip, buttonVariants, navigationMenuTriggerStyle };
993
+ export { Accordion, AccordionContent, AccordionItem, type AccordionItemProps, AccordionRoot, AccordionTrigger, Alert, AppCommand, AppStores, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, type BreadcrumbItemProps, Button, type ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, Checkbox, ChipTypes, CodeBlock, ColorPicker, Combobox, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, type CommandInputProps, CommandItem, CommandList, CommandSeparator, CommandShortcut, Count, DataTable, DestroyableCard, Dialog, DialogBody, DialogCarousel, DialogCarouselContent, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPortal, DialogStep, DialogSteps, DialogTitle, DialogTrigger, FileDropzone, FileUploader, FullCommand, type FullCommandItem, Input, type InputFieldProps, InterfaceSettings, LabelProps, Loading, Logos, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneMockup, PinInput, PinInputGroup, PinInputRoot, PinInputSeperator, PinInputSlot, Popover, PopoverContent, PopoverPortal, PopoverRoot, PopoverTrigger, Progress, ProgressCircle, ScrollArea, ScrollBar, ScrollIndicator, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, SimpleTable, Skeleton, Slider, SortButton, StandardNavigationMenuItem, StopPropagationWrapper, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, type TextareaProps, Toaster, ToasterToastProps, Tooltip, buttonVariants, navigationMenuTriggerStyle };
@@ -616,7 +616,7 @@ function Skeleton({
616
616
  };
617
617
  const styledAs = {
618
618
  div: "",
619
- input: "!h-[38px] !w-full"
619
+ input: "hawa-h-[40px] hawa-w-full"
620
620
  };
621
621
  return /* @__PURE__ */ import_react3.default.createElement(
622
622
  "div",
@@ -2991,6 +2991,7 @@ var Input = (0, import_react11.forwardRef)(
2991
2991
  ...props
2992
2992
  }, ref) => {
2993
2993
  var _a;
2994
+ const [value, setValue] = (0, import_react11.useState)(props.value || "");
2994
2995
  let marginStyles = {
2995
2996
  none: "hawa-mb-0",
2996
2997
  normal: "hawa-mb-3",
@@ -3006,6 +3007,7 @@ var Input = (0, import_react11.forwardRef)(
3006
3007
  let defaultInputStyle = "hawa-block hawa-w-full hawa-rounded hawa-border hawa-transition-all hawa-bg-background hawa-p-3 hawa-text-sm placeholder:hawa-text-muted-foreground";
3007
3008
  const handleChange = (e) => {
3008
3009
  let newValue = e.target.value;
3010
+ setValue(newValue);
3009
3011
  if (props.prefixText) {
3010
3012
  if (newValue.length < props.prefixText.length) {
3011
3013
  newValue = props.prefixText;
@@ -3017,10 +3019,24 @@ var Input = (0, import_react11.forwardRef)(
3017
3019
  }
3018
3020
  }
3019
3021
  if (props.onChange) {
3020
- const newEvent = { ...e, target: { ...e.target, value: newValue } };
3021
- props.onChange(newEvent);
3022
+ if (props.type === "number" && props.maxLength) {
3023
+ let v = newValue.replace(/[^0-9]/g, "").slice(0, props.maxLength);
3024
+ const newEvent = { ...e, target: { ...e.target, value: v } };
3025
+ setValue(v);
3026
+ props.onChange(newEvent);
3027
+ } else {
3028
+ const newEvent = { ...e, target: { ...e.target, value: newValue } };
3029
+ setValue(newValue);
3030
+ props.onChange(newEvent);
3031
+ }
3022
3032
  }
3023
3033
  };
3034
+ const handleKeyDown = (e) => {
3035
+ if (props.type === "number" && ["e", "E", "+", "-", "."].includes(e.key)) {
3036
+ e.preventDefault();
3037
+ }
3038
+ props.onKeyDown && props.onKeyDown(e);
3039
+ };
3024
3040
  return /* @__PURE__ */ import_react11.default.createElement(
3025
3041
  "div",
3026
3042
  {
@@ -3033,16 +3049,7 @@ var Input = (0, import_react11.forwardRef)(
3033
3049
  )
3034
3050
  },
3035
3051
  props.label && /* @__PURE__ */ import_react11.default.createElement(Label2, { ...labelProps }, props.label),
3036
- /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-flex hawa-flex-row hawa-w-full hawa-items-center" }, props.outsidePrefix && /* @__PURE__ */ import_react11.default.createElement(
3037
- "span",
3038
- {
3039
- className: cn(
3040
- "hawa-me-2 hawa-opacity-90",
3041
- !forceHideHelperText && "hawa-mb-2"
3042
- )
3043
- },
3044
- props.outsidePrefix
3045
- ), props.isLoading ? /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-pb-2 hawa-w-full" }, /* @__PURE__ */ import_react11.default.createElement(Skeleton, { className: "hawa-h-[40px] hawa-w-full" })) : props.isLoadingError ? /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-pb-2 hawa-w-full" }, /* @__PURE__ */ import_react11.default.createElement(
3052
+ /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-flex hawa-flex-row hawa-w-full hawa-items-center" }, props.outsidePrefix && /* @__PURE__ */ import_react11.default.createElement("span", { className: cn("hawa-me-2 hawa-opacity-90", !forceHideHelperText && "hawa-mb-2") }, props.outsidePrefix), props.isLoading ? /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-pb-2 hawa-w-full" }, /* @__PURE__ */ import_react11.default.createElement(Skeleton, { as: "input" })) : props.isLoadingError ? /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-pb-2 hawa-w-full" }, /* @__PURE__ */ import_react11.default.createElement(
3046
3053
  Skeleton,
3047
3054
  {
3048
3055
  animation: "none",
@@ -3089,13 +3096,15 @@ var Input = (0, import_react11.forwardRef)(
3089
3096
  required: true,
3090
3097
  dir: props.dir,
3091
3098
  type: props.type,
3092
- value: props.value,
3099
+ value: props.value || value,
3093
3100
  onChange: handleChange,
3101
+ onKeyDown: handleKeyDown,
3094
3102
  autoComplete: props.autoComplete,
3095
3103
  defaultValue: props.defaultValue,
3096
3104
  placeholder,
3097
3105
  disabled: props.disabled || preview,
3098
3106
  style: { height: 40 },
3107
+ maxLength: props.maxLength,
3099
3108
  ...inputProps,
3100
3109
  className: cn(
3101
3110
  defaultInputStyle,
@@ -26,7 +26,7 @@ import {
26
26
  TabsList,
27
27
  TabsTrigger,
28
28
  Textarea
29
- } from "../chunk-QUC5EXTF.mjs";
29
+ } from "../chunk-5CTMGPEF.mjs";
30
30
  import {
31
31
  useClipboard
32
32
  } from "../chunk-WL7C2A5D.mjs";
@@ -41,7 +41,7 @@ import {
41
41
  SheetPortal,
42
42
  SheetTitle,
43
43
  SheetTrigger
44
- } from "../chunk-CIMTNOLA.mjs";
44
+ } from "../chunk-WUMDFBEK.mjs";
45
45
  import {
46
46
  Button,
47
47
  Card,
@@ -81,7 +81,7 @@ import {
81
81
  buttonVariants,
82
82
  calculateLuminance,
83
83
  cn
84
- } from "../chunk-HJVL6X7I.mjs";
84
+ } from "../chunk-6SJUUJOV.mjs";
85
85
  import {
86
86
  __require
87
87
  } from "../chunk-2LUXOXAL.mjs";
package/dist/index.d.mts CHANGED
@@ -784,7 +784,7 @@ declare const TabsTrigger: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.
784
784
  } & React$1.RefAttributes<HTMLButtonElement>>;
785
785
  declare const TabsContent: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
786
786
 
787
- type TextFieldTypes = React__default.InputHTMLAttributes<HTMLInputElement> & {
787
+ type InputFieldProps = React__default.InputHTMLAttributes<HTMLInputElement> & {
788
788
  isLoading?: boolean;
789
789
  isLoadingError?: boolean;
790
790
  containerClassName?: string;
@@ -2324,4 +2324,4 @@ declare function useViewportSize(): {
2324
2324
  height: number;
2325
2325
  };
2326
2326
 
2327
- export { Accordion, AccordionContent, AccordionItem, type AccordionItemProps, AccordionRoot, AccordionTrigger, ActionCard, AdCard, Alert, Announcement, AppCommand, AppLanding, AppLayout, type AppSidebarItemProps, AppStores, AppTabs, AppTopbar, AuthButtons, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, type BreadcrumbItemProps, 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, type CommandInputProps, CommandItem, CommandList, CommandSeparator, CommandShortcut, ComparingPlans, ContactForm, type ContentRect, 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, DropdownMenuRadio, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FeedbackEmoji, FeedbackForm, FeedbackRating, FileDropzone, FileUploader, FullCommand, type FullCommandItem, HorizontalPricing, type Hotkey, type HotkeyItem, type HotkeyItemOptions, Input, InterfaceSettings, ItemCard, type KeyboardModifiers, 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, Navbar, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem$1 as NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger, NavigationMenuViewport, NewPasswordForm, NoPermission, NotFound, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneInput, type PhoneInputProps, PhoneMockup, PinInput, PinInputGroup, PinInputRoot, PinInputSeperator, PinInputSlot, Popover, PopoverContent, PopoverPortal, PopoverRoot, 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, StandardNavigationMenuItem, Stats, StopPropagationWrapper, type SubItem$1 as SubItem, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Testimonial, type TextFieldTypes, Textarea, type TextareaProps, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, type ToasterToastProps, Tooltip, Usage, type UseFocusWithinOptions, type UseMediaQueryOptions, UserReferralSource, buttonVariants, getHotkeyHandler, getHotkeyMatcher, navigationMenuTriggerStyle, parseHotkey, reducer, toast, useBreakpoint, useClickOutside, useClipboard, useDialogCarousel, useFocusWithin, useIsomorphicEffect, useMeasureDirty, useMediaQuery, useMultiStepDialog, useShortcuts, useTabs, useToast, useViewportSize, useWindowEvent, useWindowSize };
2327
+ export { Accordion, AccordionContent, AccordionItem, type AccordionItemProps, AccordionRoot, AccordionTrigger, ActionCard, AdCard, Alert, Announcement, AppCommand, AppLanding, AppLayout, type AppSidebarItemProps, AppStores, AppTabs, AppTopbar, AuthButtons, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, type BreadcrumbItemProps, 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, type CommandInputProps, CommandItem, CommandList, CommandSeparator, CommandShortcut, ComparingPlans, ContactForm, type ContentRect, 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, DropdownMenuRadio, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FeedbackEmoji, FeedbackForm, FeedbackRating, FileDropzone, FileUploader, FullCommand, type FullCommandItem, HorizontalPricing, type Hotkey, type HotkeyItem, type HotkeyItemOptions, Input, type InputFieldProps, InterfaceSettings, ItemCard, type KeyboardModifiers, 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, Navbar, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem$1 as NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger, NavigationMenuViewport, NewPasswordForm, NoPermission, NotFound, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneInput, type PhoneInputProps, PhoneMockup, PinInput, PinInputGroup, PinInputRoot, PinInputSeperator, PinInputSlot, Popover, PopoverContent, PopoverPortal, PopoverRoot, 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, StandardNavigationMenuItem, 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, type ToasterToastProps, Tooltip, Usage, type UseFocusWithinOptions, type UseMediaQueryOptions, UserReferralSource, buttonVariants, getHotkeyHandler, getHotkeyMatcher, navigationMenuTriggerStyle, parseHotkey, reducer, toast, useBreakpoint, useClickOutside, useClipboard, useDialogCarousel, useFocusWithin, useIsomorphicEffect, useMeasureDirty, useMediaQuery, useMultiStepDialog, useShortcuts, useTabs, useToast, useViewportSize, useWindowEvent, useWindowSize };
package/dist/index.d.ts CHANGED
@@ -784,7 +784,7 @@ declare const TabsTrigger: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.
784
784
  } & React$1.RefAttributes<HTMLButtonElement>>;
785
785
  declare const TabsContent: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
786
786
 
787
- type TextFieldTypes = React__default.InputHTMLAttributes<HTMLInputElement> & {
787
+ type InputFieldProps = React__default.InputHTMLAttributes<HTMLInputElement> & {
788
788
  isLoading?: boolean;
789
789
  isLoadingError?: boolean;
790
790
  containerClassName?: string;
@@ -2324,4 +2324,4 @@ declare function useViewportSize(): {
2324
2324
  height: number;
2325
2325
  };
2326
2326
 
2327
- export { Accordion, AccordionContent, AccordionItem, type AccordionItemProps, AccordionRoot, AccordionTrigger, ActionCard, AdCard, Alert, Announcement, AppCommand, AppLanding, AppLayout, type AppSidebarItemProps, AppStores, AppTabs, AppTopbar, AuthButtons, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, type BreadcrumbItemProps, 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, type CommandInputProps, CommandItem, CommandList, CommandSeparator, CommandShortcut, ComparingPlans, ContactForm, type ContentRect, 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, DropdownMenuRadio, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FeedbackEmoji, FeedbackForm, FeedbackRating, FileDropzone, FileUploader, FullCommand, type FullCommandItem, HorizontalPricing, type Hotkey, type HotkeyItem, type HotkeyItemOptions, Input, InterfaceSettings, ItemCard, type KeyboardModifiers, 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, Navbar, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem$1 as NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger, NavigationMenuViewport, NewPasswordForm, NoPermission, NotFound, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneInput, type PhoneInputProps, PhoneMockup, PinInput, PinInputGroup, PinInputRoot, PinInputSeperator, PinInputSlot, Popover, PopoverContent, PopoverPortal, PopoverRoot, 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, StandardNavigationMenuItem, Stats, StopPropagationWrapper, type SubItem$1 as SubItem, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Testimonial, type TextFieldTypes, Textarea, type TextareaProps, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, type ToasterToastProps, Tooltip, Usage, type UseFocusWithinOptions, type UseMediaQueryOptions, UserReferralSource, buttonVariants, getHotkeyHandler, getHotkeyMatcher, navigationMenuTriggerStyle, parseHotkey, reducer, toast, useBreakpoint, useClickOutside, useClipboard, useDialogCarousel, useFocusWithin, useIsomorphicEffect, useMeasureDirty, useMediaQuery, useMultiStepDialog, useShortcuts, useTabs, useToast, useViewportSize, useWindowEvent, useWindowSize };
2327
+ export { Accordion, AccordionContent, AccordionItem, type AccordionItemProps, AccordionRoot, AccordionTrigger, ActionCard, AdCard, Alert, Announcement, AppCommand, AppLanding, AppLayout, type AppSidebarItemProps, AppStores, AppTabs, AppTopbar, AuthButtons, Avatar, BackToTop, Badge, BadgedComponent, Breadcrumb, type BreadcrumbItemProps, 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, type CommandInputProps, CommandItem, CommandList, CommandSeparator, CommandShortcut, ComparingPlans, ContactForm, type ContentRect, 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, DropdownMenuRadio, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuRoot, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FeedbackEmoji, FeedbackForm, FeedbackRating, FileDropzone, FileUploader, FullCommand, type FullCommandItem, HorizontalPricing, type Hotkey, type HotkeyItem, type HotkeyItemOptions, Input, type InputFieldProps, InterfaceSettings, ItemCard, type KeyboardModifiers, 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, Navbar, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem$1 as NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger, NavigationMenuViewport, NewPasswordForm, NoPermission, NotFound, Pagination, PasswordInput, PasswordStrengthIndicator, PhoneInput, type PhoneInputProps, PhoneMockup, PinInput, PinInputGroup, PinInputRoot, PinInputSeperator, PinInputSlot, Popover, PopoverContent, PopoverPortal, PopoverRoot, 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, StandardNavigationMenuItem, 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, type ToasterToastProps, Tooltip, Usage, type UseFocusWithinOptions, type UseMediaQueryOptions, UserReferralSource, buttonVariants, getHotkeyHandler, getHotkeyMatcher, navigationMenuTriggerStyle, parseHotkey, reducer, toast, useBreakpoint, useClickOutside, useClipboard, useDialogCarousel, useFocusWithin, useIsomorphicEffect, useMeasureDirty, useMediaQuery, useMultiStepDialog, useShortcuts, useTabs, useToast, useViewportSize, useWindowEvent, useWindowSize };
package/dist/index.js CHANGED
@@ -691,7 +691,7 @@ function Skeleton({
691
691
  };
692
692
  const styledAs = {
693
693
  div: "",
694
- input: "!h-[38px] !w-full"
694
+ input: "hawa-h-[40px] hawa-w-full"
695
695
  };
696
696
  return /* @__PURE__ */ import_react3.default.createElement(
697
697
  "div",
@@ -3066,6 +3066,7 @@ var Input = (0, import_react11.forwardRef)(
3066
3066
  ...props
3067
3067
  }, ref) => {
3068
3068
  var _a;
3069
+ const [value, setValue] = (0, import_react11.useState)(props.value || "");
3069
3070
  let marginStyles = {
3070
3071
  none: "hawa-mb-0",
3071
3072
  normal: "hawa-mb-3",
@@ -3081,6 +3082,7 @@ var Input = (0, import_react11.forwardRef)(
3081
3082
  let defaultInputStyle = "hawa-block hawa-w-full hawa-rounded hawa-border hawa-transition-all hawa-bg-background hawa-p-3 hawa-text-sm placeholder:hawa-text-muted-foreground";
3082
3083
  const handleChange = (e) => {
3083
3084
  let newValue = e.target.value;
3085
+ setValue(newValue);
3084
3086
  if (props.prefixText) {
3085
3087
  if (newValue.length < props.prefixText.length) {
3086
3088
  newValue = props.prefixText;
@@ -3092,10 +3094,24 @@ var Input = (0, import_react11.forwardRef)(
3092
3094
  }
3093
3095
  }
3094
3096
  if (props.onChange) {
3095
- const newEvent = { ...e, target: { ...e.target, value: newValue } };
3096
- props.onChange(newEvent);
3097
+ if (props.type === "number" && props.maxLength) {
3098
+ let v = newValue.replace(/[^0-9]/g, "").slice(0, props.maxLength);
3099
+ const newEvent = { ...e, target: { ...e.target, value: v } };
3100
+ setValue(v);
3101
+ props.onChange(newEvent);
3102
+ } else {
3103
+ const newEvent = { ...e, target: { ...e.target, value: newValue } };
3104
+ setValue(newValue);
3105
+ props.onChange(newEvent);
3106
+ }
3097
3107
  }
3098
3108
  };
3109
+ const handleKeyDown = (e) => {
3110
+ if (props.type === "number" && ["e", "E", "+", "-", "."].includes(e.key)) {
3111
+ e.preventDefault();
3112
+ }
3113
+ props.onKeyDown && props.onKeyDown(e);
3114
+ };
3099
3115
  return /* @__PURE__ */ import_react11.default.createElement(
3100
3116
  "div",
3101
3117
  {
@@ -3108,16 +3124,7 @@ var Input = (0, import_react11.forwardRef)(
3108
3124
  )
3109
3125
  },
3110
3126
  props.label && /* @__PURE__ */ import_react11.default.createElement(Label2, { ...labelProps }, props.label),
3111
- /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-flex hawa-flex-row hawa-w-full hawa-items-center" }, props.outsidePrefix && /* @__PURE__ */ import_react11.default.createElement(
3112
- "span",
3113
- {
3114
- className: cn(
3115
- "hawa-me-2 hawa-opacity-90",
3116
- !forceHideHelperText && "hawa-mb-2"
3117
- )
3118
- },
3119
- props.outsidePrefix
3120
- ), props.isLoading ? /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-pb-2 hawa-w-full" }, /* @__PURE__ */ import_react11.default.createElement(Skeleton, { className: "hawa-h-[40px] hawa-w-full" })) : props.isLoadingError ? /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-pb-2 hawa-w-full" }, /* @__PURE__ */ import_react11.default.createElement(
3127
+ /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-flex hawa-flex-row hawa-w-full hawa-items-center" }, props.outsidePrefix && /* @__PURE__ */ import_react11.default.createElement("span", { className: cn("hawa-me-2 hawa-opacity-90", !forceHideHelperText && "hawa-mb-2") }, props.outsidePrefix), props.isLoading ? /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-pb-2 hawa-w-full" }, /* @__PURE__ */ import_react11.default.createElement(Skeleton, { as: "input" })) : props.isLoadingError ? /* @__PURE__ */ import_react11.default.createElement("div", { className: "hawa-pb-2 hawa-w-full" }, /* @__PURE__ */ import_react11.default.createElement(
3121
3128
  Skeleton,
3122
3129
  {
3123
3130
  animation: "none",
@@ -3164,13 +3171,15 @@ var Input = (0, import_react11.forwardRef)(
3164
3171
  required: true,
3165
3172
  dir: props.dir,
3166
3173
  type: props.type,
3167
- value: props.value,
3174
+ value: props.value || value,
3168
3175
  onChange: handleChange,
3176
+ onKeyDown: handleKeyDown,
3169
3177
  autoComplete: props.autoComplete,
3170
3178
  defaultValue: props.defaultValue,
3171
3179
  placeholder,
3172
3180
  disabled: props.disabled || preview,
3173
3181
  style: { height: 40 },
3182
+ maxLength: props.maxLength,
3174
3183
  ...inputProps,
3175
3184
  className: cn(
3176
3185
  defaultInputStyle,