@skybin-tech/nebula-ui 0.0.1

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 (145) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -0
  3. package/dist/cjs/components/Button/Button.cjs +37 -0
  4. package/dist/cjs/components/Button/Button.cjs.map +1 -0
  5. package/dist/cjs/components/Form/Checkbox.cjs +145 -0
  6. package/dist/cjs/components/Form/Checkbox.cjs.map +1 -0
  7. package/dist/cjs/components/Form/Form.cjs +93 -0
  8. package/dist/cjs/components/Form/Form.cjs.map +1 -0
  9. package/dist/cjs/components/Form/Radio.cjs +178 -0
  10. package/dist/cjs/components/Form/Radio.cjs.map +1 -0
  11. package/dist/cjs/components/Form/Select.cjs +168 -0
  12. package/dist/cjs/components/Form/Select.cjs.map +1 -0
  13. package/dist/cjs/components/Form/Switch.cjs +125 -0
  14. package/dist/cjs/components/Form/Switch.cjs.map +1 -0
  15. package/dist/cjs/components/Form/TextArea.cjs +168 -0
  16. package/dist/cjs/components/Form/TextArea.cjs.map +1 -0
  17. package/dist/cjs/components/Form/TextBox.cjs +211 -0
  18. package/dist/cjs/components/Form/TextBox.cjs.map +1 -0
  19. package/dist/cjs/components/Form/context.cjs +131 -0
  20. package/dist/cjs/components/Form/context.cjs.map +1 -0
  21. package/dist/cjs/components/Form/hooks.cjs +36 -0
  22. package/dist/cjs/components/Form/hooks.cjs.map +1 -0
  23. package/dist/cjs/components/Input/Input.cjs +44 -0
  24. package/dist/cjs/components/Input/Input.cjs.map +1 -0
  25. package/dist/cjs/components/ui/checkbox.cjs +45 -0
  26. package/dist/cjs/components/ui/checkbox.cjs.map +1 -0
  27. package/dist/cjs/components/ui/input.cjs +41 -0
  28. package/dist/cjs/components/ui/input.cjs.map +1 -0
  29. package/dist/cjs/components/ui/label.cjs +38 -0
  30. package/dist/cjs/components/ui/label.cjs.map +1 -0
  31. package/dist/cjs/components/ui/radio-group.cjs +53 -0
  32. package/dist/cjs/components/ui/radio-group.cjs.map +1 -0
  33. package/dist/cjs/components/ui/select.cjs +144 -0
  34. package/dist/cjs/components/ui/select.cjs.map +1 -0
  35. package/dist/cjs/components/ui/switch.cjs +45 -0
  36. package/dist/cjs/components/ui/switch.cjs.map +1 -0
  37. package/dist/cjs/components/ui/textarea.cjs +38 -0
  38. package/dist/cjs/components/ui/textarea.cjs.map +1 -0
  39. package/dist/cjs/hooks/useDebounce.cjs +17 -0
  40. package/dist/cjs/hooks/useDebounce.cjs.map +1 -0
  41. package/dist/cjs/hooks/useToggle.cjs +12 -0
  42. package/dist/cjs/hooks/useToggle.cjs.map +1 -0
  43. package/dist/cjs/index.cjs +65 -0
  44. package/dist/cjs/index.cjs.map +1 -0
  45. package/dist/cjs/nebula-ui.css +212 -0
  46. package/dist/cjs/utils/cn.cjs +9 -0
  47. package/dist/cjs/utils/cn.cjs.map +1 -0
  48. package/dist/components/Button/Button.d.ts +18 -0
  49. package/dist/components/Button/Button.d.ts.map +1 -0
  50. package/dist/components/Button/Button.js +37 -0
  51. package/dist/components/Button/Button.js.map +1 -0
  52. package/dist/components/Button/index.d.ts +3 -0
  53. package/dist/components/Button/index.d.ts.map +1 -0
  54. package/dist/components/Form/Checkbox.d.ts +32 -0
  55. package/dist/components/Form/Checkbox.d.ts.map +1 -0
  56. package/dist/components/Form/Checkbox.js +145 -0
  57. package/dist/components/Form/Checkbox.js.map +1 -0
  58. package/dist/components/Form/Form.d.ts +62 -0
  59. package/dist/components/Form/Form.d.ts.map +1 -0
  60. package/dist/components/Form/Form.js +93 -0
  61. package/dist/components/Form/Form.js.map +1 -0
  62. package/dist/components/Form/Radio.d.ts +80 -0
  63. package/dist/components/Form/Radio.d.ts.map +1 -0
  64. package/dist/components/Form/Radio.js +178 -0
  65. package/dist/components/Form/Radio.js.map +1 -0
  66. package/dist/components/Form/Select.d.ts +75 -0
  67. package/dist/components/Form/Select.d.ts.map +1 -0
  68. package/dist/components/Form/Select.js +168 -0
  69. package/dist/components/Form/Select.js.map +1 -0
  70. package/dist/components/Form/Switch.d.ts +34 -0
  71. package/dist/components/Form/Switch.d.ts.map +1 -0
  72. package/dist/components/Form/Switch.js +125 -0
  73. package/dist/components/Form/Switch.js.map +1 -0
  74. package/dist/components/Form/TextArea.d.ts +47 -0
  75. package/dist/components/Form/TextArea.d.ts.map +1 -0
  76. package/dist/components/Form/TextArea.js +168 -0
  77. package/dist/components/Form/TextArea.js.map +1 -0
  78. package/dist/components/Form/TextBox.d.ts +61 -0
  79. package/dist/components/Form/TextBox.d.ts.map +1 -0
  80. package/dist/components/Form/TextBox.js +211 -0
  81. package/dist/components/Form/TextBox.js.map +1 -0
  82. package/dist/components/Form/context.d.ts +107 -0
  83. package/dist/components/Form/context.d.ts.map +1 -0
  84. package/dist/components/Form/context.js +131 -0
  85. package/dist/components/Form/context.js.map +1 -0
  86. package/dist/components/Form/hooks.d.ts +21 -0
  87. package/dist/components/Form/hooks.d.ts.map +1 -0
  88. package/dist/components/Form/hooks.js +36 -0
  89. package/dist/components/Form/hooks.js.map +1 -0
  90. package/dist/components/Form/index.d.ts +18 -0
  91. package/dist/components/Form/index.d.ts.map +1 -0
  92. package/dist/components/Input/Input.d.ts +18 -0
  93. package/dist/components/Input/Input.d.ts.map +1 -0
  94. package/dist/components/Input/Input.js +44 -0
  95. package/dist/components/Input/Input.js.map +1 -0
  96. package/dist/components/Input/index.d.ts +3 -0
  97. package/dist/components/Input/index.d.ts.map +1 -0
  98. package/dist/components/ui/checkbox.d.ts +5 -0
  99. package/dist/components/ui/checkbox.d.ts.map +1 -0
  100. package/dist/components/ui/checkbox.js +28 -0
  101. package/dist/components/ui/checkbox.js.map +1 -0
  102. package/dist/components/ui/index.d.ts +16 -0
  103. package/dist/components/ui/index.d.ts.map +1 -0
  104. package/dist/components/ui/input.d.ts +11 -0
  105. package/dist/components/ui/input.d.ts.map +1 -0
  106. package/dist/components/ui/input.js +24 -0
  107. package/dist/components/ui/input.js.map +1 -0
  108. package/dist/components/ui/label.d.ts +6 -0
  109. package/dist/components/ui/label.d.ts.map +1 -0
  110. package/dist/components/ui/label.js +21 -0
  111. package/dist/components/ui/label.js.map +1 -0
  112. package/dist/components/ui/radio-group.d.ts +6 -0
  113. package/dist/components/ui/radio-group.d.ts.map +1 -0
  114. package/dist/components/ui/radio-group.js +36 -0
  115. package/dist/components/ui/radio-group.js.map +1 -0
  116. package/dist/components/ui/select.d.ts +14 -0
  117. package/dist/components/ui/select.d.ts.map +1 -0
  118. package/dist/components/ui/select.js +127 -0
  119. package/dist/components/ui/select.js.map +1 -0
  120. package/dist/components/ui/switch.d.ts +5 -0
  121. package/dist/components/ui/switch.d.ts.map +1 -0
  122. package/dist/components/ui/switch.js +28 -0
  123. package/dist/components/ui/switch.js.map +1 -0
  124. package/dist/components/ui/textarea.d.ts +11 -0
  125. package/dist/components/ui/textarea.d.ts.map +1 -0
  126. package/dist/components/ui/textarea.js +21 -0
  127. package/dist/components/ui/textarea.js.map +1 -0
  128. package/dist/hooks/useDebounce.d.ts +8 -0
  129. package/dist/hooks/useDebounce.d.ts.map +1 -0
  130. package/dist/hooks/useDebounce.js +17 -0
  131. package/dist/hooks/useDebounce.js.map +1 -0
  132. package/dist/hooks/useToggle.d.ts +7 -0
  133. package/dist/hooks/useToggle.d.ts.map +1 -0
  134. package/dist/hooks/useToggle.js +12 -0
  135. package/dist/hooks/useToggle.js.map +1 -0
  136. package/dist/index.d.ts +13 -0
  137. package/dist/index.d.ts.map +1 -0
  138. package/dist/index.js +62 -0
  139. package/dist/index.js.map +1 -0
  140. package/dist/nebula-ui.css +212 -0
  141. package/dist/utils/cn.d.ts +7 -0
  142. package/dist/utils/cn.d.ts.map +1 -0
  143. package/dist/utils/cn.js +9 -0
  144. package/dist/utils/cn.js.map +1 -0
  145. package/package.json +201 -0
@@ -0,0 +1,36 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { Root as Root2, Item as Item2, Indicator } from "../../node_modules/@radix-ui/react-radio-group/dist/index.js";
4
+ import { cn } from "../../utils/cn.js";
5
+ import Circle from "../../node_modules/lucide-react/dist/esm/icons/circle.js";
6
+ const RadioGroup = React.forwardRef(({ className, ...props }, ref) => {
7
+ return /* @__PURE__ */ jsx(
8
+ Root2,
9
+ {
10
+ className: cn("grid gap-2", className),
11
+ ...props,
12
+ ref
13
+ }
14
+ );
15
+ });
16
+ RadioGroup.displayName = Root2.displayName;
17
+ const RadioGroupItem = React.forwardRef(({ className, ...props }, ref) => {
18
+ return /* @__PURE__ */ jsx(
19
+ Item2,
20
+ {
21
+ ref,
22
+ className: cn(
23
+ "aspect-square h-4 w-4 rounded-full border border-primary text-primary ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
24
+ className
25
+ ),
26
+ ...props,
27
+ children: /* @__PURE__ */ jsx(Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ jsx(Circle, { className: "h-2.5 w-2.5 fill-current text-current" }) })
28
+ }
29
+ );
30
+ });
31
+ RadioGroupItem.displayName = Item2.displayName;
32
+ export {
33
+ RadioGroup,
34
+ RadioGroupItem
35
+ };
36
+ //# sourceMappingURL=radio-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-group.js","sources":["../../../src/components/ui/radio-group.tsx"],"sourcesContent":["/**\r\n * shadcn/ui RadioGroup component\r\n * @see https://ui.shadcn.com/docs/components/radio-group\r\n * \r\n * DO NOT MODIFY THIS FILE - It is generated from shadcn/ui\r\n * For customizations, create wrapper components instead.\r\n */\r\n\"use client\"\r\n\r\nimport * as React from \"react\"\r\nimport * as RadioGroupPrimitive from \"@radix-ui/react-radio-group\"\r\nimport { Circle } from \"lucide-react\"\r\n\r\nimport { cn } from \"../../utils/cn\"\r\n\r\nconst RadioGroup = React.forwardRef<\r\n React.ElementRef<typeof RadioGroupPrimitive.Root>,\r\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>\r\n>(({ className, ...props }, ref) => {\r\n return (\r\n <RadioGroupPrimitive.Root\r\n className={cn(\"grid gap-2\", className)}\r\n {...props}\r\n ref={ref}\r\n />\r\n )\r\n})\r\nRadioGroup.displayName = RadioGroupPrimitive.Root.displayName\r\n\r\nconst RadioGroupItem = React.forwardRef<\r\n React.ElementRef<typeof RadioGroupPrimitive.Item>,\r\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>\r\n>(({ className, ...props }, ref) => {\r\n return (\r\n <RadioGroupPrimitive.Item\r\n ref={ref}\r\n className={cn(\r\n \"aspect-square h-4 w-4 rounded-full border border-primary text-primary ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <RadioGroupPrimitive.Indicator className=\"flex items-center justify-center\">\r\n <Circle className=\"h-2.5 w-2.5 fill-current text-current\" />\r\n </RadioGroupPrimitive.Indicator>\r\n </RadioGroupPrimitive.Item>\r\n )\r\n})\r\nRadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName\r\n\r\nexport { RadioGroup, RadioGroupItem }\r\n"],"names":["RadioGroupPrimitive.Root","RadioGroupPrimitive.Item","RadioGroupPrimitive.Indicator"],"mappings":";;;;;AAeA,MAAM,aAAa,MAAM,WAGvB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAAQ;AAClC,SACE;AAAA,IAACA;AAAAA,IAAA;AAAA,MACC,WAAW,GAAG,cAAc,SAAS;AAAA,MACpC,GAAG;AAAA,MACJ;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;AACD,WAAW,cAAcA,MAAyB;AAElD,MAAM,iBAAiB,MAAM,WAG3B,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAAQ;AAClC,SACE;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC;AAAA,MACA,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAED,GAAG;AAAA,MAEJ,UAAA,oBAACC,WAAA,EAA8B,WAAU,oCACvC,UAAA,oBAAC,QAAA,EAAO,WAAU,wCAAA,CAAwC,EAAA,CAC5D;AAAA,IAAA;AAAA,EAAA;AAGN,CAAC;AACD,eAAe,cAAcD,MAAyB;"}
@@ -0,0 +1,14 @@
1
+ import * as React from "react";
2
+ import * as SelectPrimitive from "@radix-ui/react-select";
3
+ declare const Select: React.FC<SelectPrimitive.SelectProps>;
4
+ declare const SelectGroup: React.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & React.RefAttributes<HTMLDivElement>>;
5
+ declare const SelectValue: React.ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & React.RefAttributes<HTMLSpanElement>>;
6
+ declare const SelectTrigger: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
7
+ declare const SelectScrollUpButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollUpButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
8
+ declare const SelectScrollDownButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollDownButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
9
+ declare const SelectContent: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
10
+ declare const SelectLabel: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
11
+ declare const SelectItem: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
12
+ declare const SelectSeparator: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
13
+ export { Select, SelectGroup, SelectValue, SelectTrigger, SelectContent, SelectLabel, SelectItem, SelectSeparator, SelectScrollUpButton, SelectScrollDownButton, };
14
+ //# sourceMappingURL=select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/components/ui/select.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AAKzD,QAAA,MAAM,MAAM,uCAAuB,CAAA;AAEnC,QAAA,MAAM,WAAW,yGAAwB,CAAA;AAEzC,QAAA,MAAM,WAAW,0GAAwB,CAAA;AAEzC,QAAA,MAAM,aAAa,oKAiBjB,CAAA;AAGF,QAAA,MAAM,oBAAoB,qKAcxB,CAAA;AAGF,QAAA,MAAM,sBAAsB,uKAc1B,CAAA;AAIF,QAAA,MAAM,aAAa,8JA6BjB,CAAA;AAGF,QAAA,MAAM,WAAW,4JASf,CAAA;AAGF,QAAA,MAAM,UAAU,2JAoBd,CAAA;AAGF,QAAA,MAAM,eAAe,gKASnB,CAAA;AAGF,OAAO,EACL,MAAM,EACN,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,sBAAsB,GACvB,CAAA"}
@@ -0,0 +1,127 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { Root as Root2, Group, Value, Portal, Content as Content2, Viewport, Item, ItemIndicator, ItemText, Label, Separator, Trigger, Icon, ScrollUpButton, ScrollDownButton } from "../../node_modules/@radix-ui/react-select/dist/index.js";
4
+ import { cn } from "../../utils/cn.js";
5
+ import Check from "../../node_modules/lucide-react/dist/esm/icons/check.js";
6
+ import ChevronDown from "../../node_modules/lucide-react/dist/esm/icons/chevron-down.js";
7
+ import ChevronUp from "../../node_modules/lucide-react/dist/esm/icons/chevron-up.js";
8
+ const Select = Root2;
9
+ const SelectGroup = Group;
10
+ const SelectValue = Value;
11
+ const SelectTrigger = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
12
+ Trigger,
13
+ {
14
+ ref,
15
+ className: cn(
16
+ "flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",
17
+ className
18
+ ),
19
+ ...props,
20
+ children: [
21
+ children,
22
+ /* @__PURE__ */ jsx(Icon, { asChild: true, children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4 opacity-50" }) })
23
+ ]
24
+ }
25
+ ));
26
+ SelectTrigger.displayName = Trigger.displayName;
27
+ const SelectScrollUpButton = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
28
+ ScrollUpButton,
29
+ {
30
+ ref,
31
+ className: cn(
32
+ "flex cursor-default items-center justify-center py-1",
33
+ className
34
+ ),
35
+ ...props,
36
+ children: /* @__PURE__ */ jsx(ChevronUp, { className: "h-4 w-4" })
37
+ }
38
+ ));
39
+ SelectScrollUpButton.displayName = ScrollUpButton.displayName;
40
+ const SelectScrollDownButton = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
41
+ ScrollDownButton,
42
+ {
43
+ ref,
44
+ className: cn(
45
+ "flex cursor-default items-center justify-center py-1",
46
+ className
47
+ ),
48
+ ...props,
49
+ children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4" })
50
+ }
51
+ ));
52
+ SelectScrollDownButton.displayName = ScrollDownButton.displayName;
53
+ const SelectContent = React.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsxs(
54
+ Content2,
55
+ {
56
+ ref,
57
+ className: cn(
58
+ "relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
59
+ position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
60
+ className
61
+ ),
62
+ position,
63
+ ...props,
64
+ children: [
65
+ /* @__PURE__ */ jsx(SelectScrollUpButton, {}),
66
+ /* @__PURE__ */ jsx(
67
+ Viewport,
68
+ {
69
+ className: cn(
70
+ "p-1",
71
+ position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"
72
+ ),
73
+ children
74
+ }
75
+ ),
76
+ /* @__PURE__ */ jsx(SelectScrollDownButton, {})
77
+ ]
78
+ }
79
+ ) }));
80
+ SelectContent.displayName = Content2.displayName;
81
+ const SelectLabel = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
82
+ Label,
83
+ {
84
+ ref,
85
+ className: cn("py-1.5 pl-8 pr-2 text-sm font-semibold", className),
86
+ ...props
87
+ }
88
+ ));
89
+ SelectLabel.displayName = Label.displayName;
90
+ const SelectItem = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
91
+ Item,
92
+ {
93
+ ref,
94
+ className: cn(
95
+ "relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
96
+ className
97
+ ),
98
+ ...props,
99
+ children: [
100
+ /* @__PURE__ */ jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(ItemIndicator, { children: /* @__PURE__ */ jsx(Check, { className: "h-4 w-4" }) }) }),
101
+ /* @__PURE__ */ jsx(ItemText, { children })
102
+ ]
103
+ }
104
+ ));
105
+ SelectItem.displayName = Item.displayName;
106
+ const SelectSeparator = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
107
+ Separator,
108
+ {
109
+ ref,
110
+ className: cn("-mx-1 my-1 h-px bg-muted", className),
111
+ ...props
112
+ }
113
+ ));
114
+ SelectSeparator.displayName = Separator.displayName;
115
+ export {
116
+ Select,
117
+ SelectContent,
118
+ SelectGroup,
119
+ SelectItem,
120
+ SelectLabel,
121
+ SelectScrollDownButton,
122
+ SelectScrollUpButton,
123
+ SelectSeparator,
124
+ SelectTrigger,
125
+ SelectValue
126
+ };
127
+ //# sourceMappingURL=select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.js","sources":["../../../src/components/ui/select.tsx"],"sourcesContent":["/**\r\n * shadcn/ui Select component\r\n * @see https://ui.shadcn.com/docs/components/select\r\n * \r\n * DO NOT MODIFY THIS FILE - It is generated from shadcn/ui\r\n * For customizations, create wrapper components instead.\r\n */\r\n\"use client\"\r\n\r\nimport * as React from \"react\"\r\nimport * as SelectPrimitive from \"@radix-ui/react-select\"\r\nimport { Check, ChevronDown, ChevronUp } from \"lucide-react\"\r\n\r\nimport { cn } from \"../../utils/cn\"\r\n\r\nconst Select = SelectPrimitive.Root\r\n\r\nconst SelectGroup = SelectPrimitive.Group\r\n\r\nconst SelectValue = SelectPrimitive.Value\r\n\r\nconst SelectTrigger = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Trigger>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\r\n>(({ className, children, ...props }, ref) => (\r\n <SelectPrimitive.Trigger\r\n ref={ref}\r\n className={cn(\r\n \"flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <SelectPrimitive.Icon asChild>\r\n <ChevronDown className=\"h-4 w-4 opacity-50\" />\r\n </SelectPrimitive.Icon>\r\n </SelectPrimitive.Trigger>\r\n))\r\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName\r\n\r\nconst SelectScrollUpButton = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.ScrollUpButton>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\r\n>(({ className, ...props }, ref) => (\r\n <SelectPrimitive.ScrollUpButton\r\n ref={ref}\r\n className={cn(\r\n \"flex cursor-default items-center justify-center py-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <ChevronUp className=\"h-4 w-4\" />\r\n </SelectPrimitive.ScrollUpButton>\r\n))\r\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName\r\n\r\nconst SelectScrollDownButton = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.ScrollDownButton>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\r\n>(({ className, ...props }, ref) => (\r\n <SelectPrimitive.ScrollDownButton\r\n ref={ref}\r\n className={cn(\r\n \"flex cursor-default items-center justify-center py-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <ChevronDown className=\"h-4 w-4\" />\r\n </SelectPrimitive.ScrollDownButton>\r\n))\r\nSelectScrollDownButton.displayName =\r\n SelectPrimitive.ScrollDownButton.displayName\r\n\r\nconst SelectContent = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\r\n>(({ className, children, position = \"popper\", ...props }, ref) => (\r\n <SelectPrimitive.Portal>\r\n <SelectPrimitive.Content\r\n ref={ref}\r\n className={cn(\r\n \"relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\r\n position === \"popper\" &&\r\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\r\n className\r\n )}\r\n position={position}\r\n {...props}\r\n >\r\n <SelectScrollUpButton />\r\n <SelectPrimitive.Viewport\r\n className={cn(\r\n \"p-1\",\r\n position === \"popper\" &&\r\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]\"\r\n )}\r\n >\r\n {children}\r\n </SelectPrimitive.Viewport>\r\n <SelectScrollDownButton />\r\n </SelectPrimitive.Content>\r\n </SelectPrimitive.Portal>\r\n))\r\nSelectContent.displayName = SelectPrimitive.Content.displayName\r\n\r\nconst SelectLabel = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Label>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\r\n>(({ className, ...props }, ref) => (\r\n <SelectPrimitive.Label\r\n ref={ref}\r\n className={cn(\"py-1.5 pl-8 pr-2 text-sm font-semibold\", className)}\r\n {...props}\r\n />\r\n))\r\nSelectLabel.displayName = SelectPrimitive.Label.displayName\r\n\r\nconst SelectItem = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Item>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\r\n>(({ className, children, ...props }, ref) => (\r\n <SelectPrimitive.Item\r\n ref={ref}\r\n className={cn(\r\n \"relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\r\n <SelectPrimitive.ItemIndicator>\r\n <Check className=\"h-4 w-4\" />\r\n </SelectPrimitive.ItemIndicator>\r\n </span>\r\n\r\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\r\n </SelectPrimitive.Item>\r\n))\r\nSelectItem.displayName = SelectPrimitive.Item.displayName\r\n\r\nconst SelectSeparator = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Separator>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\r\n>(({ className, ...props }, ref) => (\r\n <SelectPrimitive.Separator\r\n ref={ref}\r\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\r\n {...props}\r\n />\r\n))\r\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName\r\n\r\nexport {\r\n Select,\r\n SelectGroup,\r\n SelectValue,\r\n SelectTrigger,\r\n SelectContent,\r\n SelectLabel,\r\n SelectItem,\r\n SelectSeparator,\r\n SelectScrollUpButton,\r\n SelectScrollDownButton,\r\n}\r\n"],"names":["SelectPrimitive.Root","SelectPrimitive.Group","SelectPrimitive.Value","SelectPrimitive.Trigger","SelectPrimitive.Icon","SelectPrimitive.ScrollUpButton","SelectPrimitive.ScrollDownButton","SelectPrimitive.Portal","SelectPrimitive.Content","SelectPrimitive.Viewport","SelectPrimitive.Label","SelectPrimitive.Item","SelectPrimitive.ItemIndicator","SelectPrimitive.ItemText","SelectPrimitive.Separator"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import * as React from "react";
2
+ import * as SwitchPrimitives from "@radix-ui/react-switch";
3
+ declare const Switch: React.ForwardRefExoticComponent<Omit<SwitchPrimitives.SwitchProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
4
+ export { Switch };
5
+ //# sourceMappingURL=switch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../src/components/ui/switch.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAA;AAI1D,QAAA,MAAM,MAAM,8JAkBV,CAAA;AAGF,OAAO,EAAE,MAAM,EAAE,CAAA"}
@@ -0,0 +1,28 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { Root, Thumb } from "../../node_modules/@radix-ui/react-switch/dist/index.js";
4
+ import { cn } from "../../utils/cn.js";
5
+ const Switch = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
6
+ Root,
7
+ {
8
+ className: cn(
9
+ "peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",
10
+ className
11
+ ),
12
+ ...props,
13
+ ref,
14
+ children: /* @__PURE__ */ jsx(
15
+ Thumb,
16
+ {
17
+ className: cn(
18
+ "pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0"
19
+ )
20
+ }
21
+ )
22
+ }
23
+ ));
24
+ Switch.displayName = Root.displayName;
25
+ export {
26
+ Switch
27
+ };
28
+ //# sourceMappingURL=switch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.js","sources":["../../../src/components/ui/switch.tsx"],"sourcesContent":["/**\r\n * shadcn/ui Switch component\r\n * @see https://ui.shadcn.com/docs/components/switch\r\n * \r\n * DO NOT MODIFY THIS FILE - It is generated from shadcn/ui\r\n * For customizations, create wrapper components instead.\r\n */\r\n\"use client\"\r\n\r\nimport * as React from \"react\"\r\nimport * as SwitchPrimitives from \"@radix-ui/react-switch\"\r\n\r\nimport { cn } from \"../../utils/cn\"\r\n\r\nconst Switch = React.forwardRef<\r\n React.ElementRef<typeof SwitchPrimitives.Root>,\r\n React.ComponentPropsWithoutRef<typeof SwitchPrimitives.Root>\r\n>(({ className, ...props }, ref) => (\r\n <SwitchPrimitives.Root\r\n className={cn(\r\n \"peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input\",\r\n className\r\n )}\r\n {...props}\r\n ref={ref}\r\n >\r\n <SwitchPrimitives.Thumb\r\n className={cn(\r\n \"pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0\"\r\n )}\r\n />\r\n </SwitchPrimitives.Root>\r\n))\r\nSwitch.displayName = SwitchPrimitives.Root.displayName\r\n\r\nexport { Switch }\r\n"],"names":["SwitchPrimitives.Root","SwitchPrimitives.Thumb"],"mappings":";;;;AAcA,MAAM,SAAS,MAAM,WAGnB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAC1B;AAAA,EAACA;AAAAA,EAAA;AAAA,IACC,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IAAA;AAAA,IAED,GAAG;AAAA,IACJ;AAAA,IAEA,UAAA;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,WAAW;AAAA,UACT;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EACF;AACF,CACD;AACD,OAAO,cAAcD,KAAsB;"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * shadcn/ui Textarea component
3
+ * @see https://ui.shadcn.com/docs/components/textarea
4
+ *
5
+ * DO NOT MODIFY THIS FILE - It is generated from shadcn/ui
6
+ * For customizations, create wrapper components instead.
7
+ */
8
+ import * as React from "react";
9
+ declare const Textarea: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement>, "ref"> & React.RefAttributes<HTMLTextAreaElement>>;
10
+ export { Textarea };
11
+ //# sourceMappingURL=textarea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textarea.d.ts","sourceRoot":"","sources":["../../../src/components/ui/textarea.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,QAAA,MAAM,QAAQ,0LAcZ,CAAA;AAGF,OAAO,EAAE,QAAQ,EAAE,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { cn } from "../../utils/cn.js";
4
+ const Textarea = React.forwardRef(({ className, ...props }, ref) => {
5
+ return /* @__PURE__ */ jsx(
6
+ "textarea",
7
+ {
8
+ className: cn(
9
+ "flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
10
+ className
11
+ ),
12
+ ref,
13
+ ...props
14
+ }
15
+ );
16
+ });
17
+ Textarea.displayName = "Textarea";
18
+ export {
19
+ Textarea
20
+ };
21
+ //# sourceMappingURL=textarea.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textarea.js","sources":["../../../src/components/ui/textarea.tsx"],"sourcesContent":["/**\r\n * shadcn/ui Textarea component\r\n * @see https://ui.shadcn.com/docs/components/textarea\r\n * \r\n * DO NOT MODIFY THIS FILE - It is generated from shadcn/ui\r\n * For customizations, create wrapper components instead.\r\n */\r\nimport * as React from \"react\"\r\n\r\nimport { cn } from \"../../utils/cn\"\r\n\r\nconst Textarea = React.forwardRef<\r\n HTMLTextAreaElement,\r\n React.ComponentProps<\"textarea\">\r\n>(({ className, ...props }, ref) => {\r\n return (\r\n <textarea\r\n className={cn(\r\n \"flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\r\n className\r\n )}\r\n ref={ref}\r\n {...props}\r\n />\r\n )\r\n})\r\nTextarea.displayName = \"Textarea\"\r\n\r\nexport { Textarea }\r\n"],"names":[],"mappings":";;;AAWA,MAAM,WAAW,MAAM,WAGrB,CAAC,EAAE,WAAW,GAAG,MAAA,GAAS,QAAQ;AAClC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MAAA;AAAA,MAEF;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV,CAAC;AACD,SAAS,cAAc;"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * A hook that debounces a value by a specified delay
3
+ * @param value - The value to debounce
4
+ * @param delay - The delay in milliseconds (default: 500)
5
+ * @returns The debounced value
6
+ */
7
+ export declare function useDebounce<T>(value: T, delay?: number): T;
8
+ //# sourceMappingURL=useDebounce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDebounce.d.ts","sourceRoot":"","sources":["../../src/hooks/useDebounce.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,SAAM,GAAG,CAAC,CAcvD"}
@@ -0,0 +1,17 @@
1
+ import { useState, useEffect } from "react";
2
+ function useDebounce(value, delay = 500) {
3
+ const [debouncedValue, setDebouncedValue] = useState(value);
4
+ useEffect(() => {
5
+ const timer = setTimeout(() => {
6
+ setDebouncedValue(value);
7
+ }, delay);
8
+ return () => {
9
+ clearTimeout(timer);
10
+ };
11
+ }, [value, delay]);
12
+ return debouncedValue;
13
+ }
14
+ export {
15
+ useDebounce
16
+ };
17
+ //# sourceMappingURL=useDebounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDebounce.js","sources":["../../src/hooks/useDebounce.ts"],"sourcesContent":["import { useState, useEffect } from \"react\";\r\n\r\n/**\r\n * A hook that debounces a value by a specified delay\r\n * @param value - The value to debounce\r\n * @param delay - The delay in milliseconds (default: 500)\r\n * @returns The debounced value\r\n */\r\nexport function useDebounce<T>(value: T, delay = 500): T {\r\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\r\n\r\n useEffect(() => {\r\n const timer = setTimeout(() => {\r\n setDebouncedValue(value);\r\n }, delay);\r\n\r\n return () => {\r\n clearTimeout(timer);\r\n };\r\n }, [value, delay]);\r\n\r\n return debouncedValue;\r\n}\r\n"],"names":[],"mappings":";AAQO,SAAS,YAAe,OAAU,QAAQ,KAAQ;AACvD,QAAM,CAAC,gBAAgB,iBAAiB,IAAI,SAAY,KAAK;AAE7D,YAAU,MAAM;AACd,UAAM,QAAQ,WAAW,MAAM;AAC7B,wBAAkB,KAAK;AAAA,IACzB,GAAG,KAAK;AAER,WAAO,MAAM;AACX,mBAAa,KAAK;AAAA,IACpB;AAAA,EACF,GAAG,CAAC,OAAO,KAAK,CAAC;AAEjB,SAAO;AACT;"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * A hook that returns a boolean state and a function to toggle it
3
+ * @param initialValue - The initial value of the toggle (default: false)
4
+ * @returns A tuple containing the current value and a toggle function
5
+ */
6
+ export declare function useToggle(initialValue?: boolean): [boolean, () => void];
7
+ //# sourceMappingURL=useToggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useToggle.d.ts","sourceRoot":"","sources":["../../src/hooks/useToggle.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,YAAY,UAAQ,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAQrE"}
@@ -0,0 +1,12 @@
1
+ import { useState, useCallback } from "react";
2
+ function useToggle(initialValue = false) {
3
+ const [value, setValue] = useState(initialValue);
4
+ const toggle = useCallback(() => {
5
+ setValue((prev) => !prev);
6
+ }, []);
7
+ return [value, toggle];
8
+ }
9
+ export {
10
+ useToggle
11
+ };
12
+ //# sourceMappingURL=useToggle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useToggle.js","sources":["../../src/hooks/useToggle.ts"],"sourcesContent":["import { useState, useCallback } from \"react\";\r\n\r\n/**\r\n * A hook that returns a boolean state and a function to toggle it\r\n * @param initialValue - The initial value of the toggle (default: false)\r\n * @returns A tuple containing the current value and a toggle function\r\n */\r\nexport function useToggle(initialValue = false): [boolean, () => void] {\r\n const [value, setValue] = useState(initialValue);\r\n\r\n const toggle = useCallback(() => {\r\n setValue((prev) => !prev);\r\n }, []);\r\n\r\n return [value, toggle];\r\n}\r\n"],"names":[],"mappings":";AAOO,SAAS,UAAU,eAAe,OAA8B;AACrE,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAS,YAAY;AAE/C,QAAM,SAAS,YAAY,MAAM;AAC/B,aAAS,CAAC,SAAS,CAAC,IAAI;AAAA,EAC1B,GAAG,CAAA,CAAE;AAEL,SAAO,CAAC,OAAO,MAAM;AACvB;"}
@@ -0,0 +1,13 @@
1
+ export { Button } from './components/Button';
2
+ export type { ButtonProps } from './components/Button';
3
+ export { Input } from './components/Input';
4
+ export type { InputProps } from './components/Input';
5
+ export { Input as ShadcnInput, Label as ShadcnLabel, Checkbox as ShadcnCheckbox, RadioGroup as ShadcnRadioGroup, RadioGroupItem as ShadcnRadioGroupItem, Switch as ShadcnSwitch, Select as ShadcnSelect, SelectGroup as ShadcnSelectGroup, SelectValue as ShadcnSelectValue, SelectTrigger as ShadcnSelectTrigger, SelectContent as ShadcnSelectContent, SelectLabel as ShadcnSelectLabel, SelectItem as ShadcnSelectItem, SelectSeparator as ShadcnSelectSeparator, Textarea as ShadcnTextarea, } from './components/ui';
6
+ export { Form, TextBox, TextArea, Select, Checkbox, RadioGroup, RadioItem, Switch, FormConfigContext, defaultFormConfig, buildZodSchemaFromRules, useFieldValidationRegistry, useFormConfig, useForm, useFormField, useFieldError, } from './components/Form';
7
+ export type { FormProps, TextBoxProps, TextAreaProps, SelectProps, SelectOption, CheckboxProps, RadioGroupProps, RadioItemProps, RadioOption, SwitchProps, FormConfig, FormContextValue, FieldValidationRules, FieldRegistration, } from './components/Form';
8
+ export { useToggle } from './hooks/useToggle';
9
+ export { useDebounce } from './hooks/useDebounce';
10
+ export { cn } from './utils/cn';
11
+ export { z } from 'zod';
12
+ export type { ZodType } from 'zod';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,EACL,KAAK,IAAI,WAAW,EACpB,KAAK,IAAI,WAAW,EACpB,QAAQ,IAAI,cAAc,EAC1B,UAAU,IAAI,gBAAgB,EAC9B,cAAc,IAAI,oBAAoB,EACtC,MAAM,IAAI,YAAY,EACtB,MAAM,IAAI,YAAY,EACtB,WAAW,IAAI,iBAAiB,EAChC,WAAW,IAAI,iBAAiB,EAChC,aAAa,IAAI,mBAAmB,EACpC,aAAa,IAAI,mBAAmB,EACpC,WAAW,IAAI,iBAAiB,EAChC,UAAU,IAAI,gBAAgB,EAC9B,eAAe,IAAI,qBAAqB,EACxC,QAAQ,IAAI,cAAc,GAC3B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,UAAU,EACV,SAAS,EACT,MAAM,EACN,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,0BAA0B,EAC1B,aAAa,EACb,OAAO,EACP,YAAY,EACZ,aAAa,GACd,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,SAAS,EACT,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,aAAa,EACb,eAAe,EACf,cAAc,EACd,WAAW,EACX,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAGhC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,YAAY,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,62 @@
1
+ import { useToggle } from "./hooks/useToggle.js";
2
+ import { useDebounce } from "./hooks/useDebounce.js";
3
+ import { cn } from "./utils/cn.js";
4
+ import { z } from "zod";
5
+ import { Button } from "./components/Button/Button.js";
6
+ import { Checkbox } from "./components/Form/Checkbox.js";
7
+ import { Form } from "./components/Form/Form.js";
8
+ import { FormConfigContext, buildZodSchemaFromRules, defaultFormConfig, useFieldValidationRegistry } from "./components/Form/context.js";
9
+ import { Input } from "./components/Input/Input.js";
10
+ import { RadioGroup, RadioItem } from "./components/Form/Radio.js";
11
+ import { Select } from "./components/Form/Select.js";
12
+ import { Checkbox as Checkbox2 } from "./components/ui/checkbox.js";
13
+ import { Input as Input2 } from "./components/ui/input.js";
14
+ import { Label } from "./components/ui/label.js";
15
+ import { RadioGroup as RadioGroup2, RadioGroupItem } from "./components/ui/radio-group.js";
16
+ import { Select as Select2, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue } from "./components/ui/select.js";
17
+ import { Switch } from "./components/ui/switch.js";
18
+ import { Textarea } from "./components/ui/textarea.js";
19
+ import { Switch as Switch2 } from "./components/Form/Switch.js";
20
+ import { TextArea } from "./components/Form/TextArea.js";
21
+ import { TextBox } from "./components/Form/TextBox.js";
22
+ import { useFieldError, useForm, useFormConfig, useFormField } from "./components/Form/hooks.js";
23
+ export {
24
+ Button,
25
+ Checkbox,
26
+ Form,
27
+ FormConfigContext,
28
+ Input,
29
+ RadioGroup,
30
+ RadioItem,
31
+ Select,
32
+ Checkbox2 as ShadcnCheckbox,
33
+ Input2 as ShadcnInput,
34
+ Label as ShadcnLabel,
35
+ RadioGroup2 as ShadcnRadioGroup,
36
+ RadioGroupItem as ShadcnRadioGroupItem,
37
+ Select2 as ShadcnSelect,
38
+ SelectContent as ShadcnSelectContent,
39
+ SelectGroup as ShadcnSelectGroup,
40
+ SelectItem as ShadcnSelectItem,
41
+ SelectLabel as ShadcnSelectLabel,
42
+ SelectSeparator as ShadcnSelectSeparator,
43
+ SelectTrigger as ShadcnSelectTrigger,
44
+ SelectValue as ShadcnSelectValue,
45
+ Switch as ShadcnSwitch,
46
+ Textarea as ShadcnTextarea,
47
+ Switch2 as Switch,
48
+ TextArea,
49
+ TextBox,
50
+ buildZodSchemaFromRules,
51
+ cn,
52
+ defaultFormConfig,
53
+ useDebounce,
54
+ useFieldError,
55
+ useFieldValidationRegistry,
56
+ useForm,
57
+ useFormConfig,
58
+ useFormField,
59
+ useToggle,
60
+ z
61
+ };
62
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}