@sikka/hawa 0.48.0-next → 0.49.0-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 (303) hide show
  1. package/dist/accordion/index.js +3 -28
  2. package/dist/accordion/index.js.map +1 -1
  3. package/dist/accordion/index.mjs +3 -28
  4. package/dist/accordion/index.mjs.map +1 -1
  5. package/dist/alert/index.js +53 -98
  6. package/dist/alert/index.js.map +1 -1
  7. package/dist/alert/index.mjs +53 -98
  8. package/dist/alert/index.mjs.map +1 -1
  9. package/dist/appLayout/index.d.mts +2 -0
  10. package/dist/appLayout/index.d.ts +2 -0
  11. package/dist/appLayout/index.js +263 -409
  12. package/dist/appLayout/index.js.map +1 -1
  13. package/dist/appLayout/index.mjs +263 -409
  14. package/dist/appLayout/index.mjs.map +1 -1
  15. package/dist/appMenubar/index.js +15 -20
  16. package/dist/appMenubar/index.js.map +1 -1
  17. package/dist/appMenubar/index.mjs +15 -20
  18. package/dist/appMenubar/index.mjs.map +1 -1
  19. package/dist/appTabs/index.js +28 -37
  20. package/dist/appTabs/index.js.map +1 -1
  21. package/dist/appTabs/index.mjs +28 -37
  22. package/dist/appTabs/index.mjs.map +1 -1
  23. package/dist/appTopbar/index.js +125 -173
  24. package/dist/appTopbar/index.js.map +1 -1
  25. package/dist/appTopbar/index.mjs +125 -173
  26. package/dist/appTopbar/index.mjs.map +1 -1
  27. package/dist/avatar/index.js.map +1 -1
  28. package/dist/avatar/index.mjs.map +1 -1
  29. package/dist/backToTop/index.js +50 -82
  30. package/dist/backToTop/index.js.map +1 -1
  31. package/dist/backToTop/index.mjs +50 -82
  32. package/dist/backToTop/index.mjs.map +1 -1
  33. package/dist/badge/index.d.mts +1 -1
  34. package/dist/badge/index.d.ts +1 -1
  35. package/dist/badge/index.js +2 -18
  36. package/dist/badge/index.js.map +1 -1
  37. package/dist/badge/index.mjs +2 -18
  38. package/dist/badge/index.mjs.map +1 -1
  39. package/dist/blocks/auth/index.d.mts +1 -0
  40. package/dist/blocks/auth/index.d.ts +1 -0
  41. package/dist/blocks/auth/index.js +539 -792
  42. package/dist/blocks/auth/index.mjs +433 -604
  43. package/dist/blocks/feedback/index.js +214 -375
  44. package/dist/blocks/feedback/index.mjs +12 -25
  45. package/dist/blocks/index.d.mts +1 -0
  46. package/dist/blocks/index.d.ts +1 -0
  47. package/dist/blocks/index.js +940 -1445
  48. package/dist/blocks/index.mjs +469 -615
  49. package/dist/blocks/misc/index.js +136 -251
  50. package/dist/blocks/misc/index.mjs +29 -54
  51. package/dist/blocks/pricing/index.js +220 -397
  52. package/dist/blocks/pricing/index.mjs +63 -134
  53. package/dist/breadcrumb/index.js +1 -5
  54. package/dist/breadcrumb/index.js.map +1 -1
  55. package/dist/breadcrumb/index.mjs +1 -5
  56. package/dist/breadcrumb/index.mjs.map +1 -1
  57. package/dist/button/index.js +50 -82
  58. package/dist/button/index.js.map +1 -1
  59. package/dist/button/index.mjs +50 -82
  60. package/dist/button/index.mjs.map +1 -1
  61. package/dist/calendar/index.js +50 -82
  62. package/dist/calendar/index.js.map +1 -1
  63. package/dist/calendar/index.mjs +50 -82
  64. package/dist/calendar/index.mjs.map +1 -1
  65. package/dist/card/index.js +7 -35
  66. package/dist/card/index.js.map +1 -1
  67. package/dist/card/index.mjs +7 -35
  68. package/dist/card/index.mjs.map +1 -1
  69. package/dist/carousel/index.js +15 -27
  70. package/dist/carousel/index.js.map +1 -1
  71. package/dist/carousel/index.mjs +15 -27
  72. package/dist/carousel/index.mjs.map +1 -1
  73. package/dist/checkbox/index.js +2 -13
  74. package/dist/checkbox/index.js.map +1 -1
  75. package/dist/checkbox/index.mjs +2 -13
  76. package/dist/checkbox/index.mjs.map +1 -1
  77. package/dist/chip/index.js +2 -16
  78. package/dist/chip/index.js.map +1 -1
  79. package/dist/chip/index.mjs +2 -16
  80. package/dist/chip/index.mjs.map +1 -1
  81. package/dist/{chunk-WUMDFBEK.mjs → chunk-3CHFVHTW.mjs} +43 -54
  82. package/dist/{chunk-2LUXOXAL.mjs → chunk-5SQBJRWE.mjs} +3 -9
  83. package/dist/{chunk-C2UOOH4X.mjs → chunk-B53SP2WZ.mjs} +3 -17
  84. package/dist/chunk-GHGWQVTM.mjs +150 -0
  85. package/dist/{chunk-5S5DR7KF.mjs → chunk-I23ONEDJ.mjs} +2 -10
  86. package/dist/{chunk-JFWD2ICY.mjs → chunk-JT7R3L5O.mjs} +54 -62
  87. package/dist/{chunk-6SJUUJOV.mjs → chunk-KDGJZPWK.mjs} +295 -574
  88. package/dist/{chunk-AWJSHOYU.mjs → chunk-KSJGXQTE.mjs} +1 -1
  89. package/dist/{chunk-NMW4GM4G.mjs → chunk-SE2JMXYG.mjs} +104 -144
  90. package/dist/{chunk-GBLWUEYN.mjs → chunk-ULRL4WI6.mjs} +176 -256
  91. package/dist/{chunk-IFWYR5W2.mjs → chunk-VUELRPUL.mjs} +57 -117
  92. package/dist/{chunk-WL7C2A5D.mjs → chunk-WQR4XZGL.mjs} +8 -15
  93. package/dist/codeBlock/index.js +50 -82
  94. package/dist/codeBlock/index.js.map +1 -1
  95. package/dist/codeBlock/index.mjs +50 -82
  96. package/dist/codeBlock/index.mjs.map +1 -1
  97. package/dist/colorPicker/index.js +21 -33
  98. package/dist/colorPicker/index.js.map +1 -1
  99. package/dist/colorPicker/index.mjs +22 -37
  100. package/dist/colorPicker/index.mjs.map +1 -1
  101. package/dist/combobox/index.d.mts +1 -1
  102. package/dist/combobox/index.d.ts +1 -1
  103. package/dist/combobox/index.js +141 -223
  104. package/dist/combobox/index.js.map +1 -1
  105. package/dist/combobox/index.mjs +141 -223
  106. package/dist/combobox/index.mjs.map +1 -1
  107. package/dist/command/index.d.mts +1 -1
  108. package/dist/command/index.d.ts +1 -1
  109. package/dist/command/index.js +129 -212
  110. package/dist/command/index.js.map +1 -1
  111. package/dist/command/index.mjs +129 -212
  112. package/dist/command/index.mjs.map +1 -1
  113. package/dist/dataTable/index.js +254 -394
  114. package/dist/dataTable/index.js.map +1 -1
  115. package/dist/dataTable/index.mjs +254 -394
  116. package/dist/dataTable/index.mjs.map +1 -1
  117. package/dist/datePicker/index.js +64 -105
  118. package/dist/datePicker/index.js.map +1 -1
  119. package/dist/datePicker/index.mjs +64 -105
  120. package/dist/datePicker/index.mjs.map +1 -1
  121. package/dist/destroyableCard/index.js +8 -39
  122. package/dist/destroyableCard/index.js.map +1 -1
  123. package/dist/destroyableCard/index.mjs +8 -39
  124. package/dist/destroyableCard/index.mjs.map +1 -1
  125. package/dist/dialog/index.js +70 -122
  126. package/dist/dialog/index.js.map +1 -1
  127. package/dist/dialog/index.mjs +70 -122
  128. package/dist/dialog/index.mjs.map +1 -1
  129. package/dist/docsLayout/index.js +169 -358
  130. package/dist/docsLayout/index.js.map +1 -1
  131. package/dist/docsLayout/index.mjs +169 -358
  132. package/dist/docsLayout/index.mjs.map +1 -1
  133. package/dist/docsSidebar/index.js +9 -16
  134. package/dist/docsSidebar/index.js.map +1 -1
  135. package/dist/docsSidebar/index.mjs +9 -16
  136. package/dist/docsSidebar/index.mjs.map +1 -1
  137. package/dist/dropdownMenu/index.js +124 -164
  138. package/dist/dropdownMenu/index.js.map +1 -1
  139. package/dist/dropdownMenu/index.mjs +124 -164
  140. package/dist/dropdownMenu/index.mjs.map +1 -1
  141. package/dist/elements/index.d.mts +3 -3
  142. package/dist/elements/index.d.ts +3 -3
  143. package/dist/elements/index.js +841 -1505
  144. package/dist/elements/index.mjs +381 -718
  145. package/dist/fileDropzone/index.js +60 -159
  146. package/dist/fileDropzone/index.js.map +1 -1
  147. package/dist/fileDropzone/index.mjs +60 -159
  148. package/dist/fileDropzone/index.mjs.map +1 -1
  149. package/dist/glow/index.js +4 -16
  150. package/dist/glow/index.js.map +1 -1
  151. package/dist/glow/index.mjs +4 -16
  152. package/dist/glow/index.mjs.map +1 -1
  153. package/dist/hooks/index.d.mts +1 -5
  154. package/dist/hooks/index.d.ts +1 -5
  155. package/dist/hooks/index.js +11 -24
  156. package/dist/hooks/index.mjs +2 -2
  157. package/dist/{index-B0aJcA6d.d.ts → index-BgNycocQ.d.mts} +2 -2
  158. package/dist/{index-B0aJcA6d.d.mts → index-BgNycocQ.d.ts} +2 -2
  159. package/dist/index.css +1 -6
  160. package/dist/index.d.mts +7 -8
  161. package/dist/index.d.ts +7 -8
  162. package/dist/index.js +1549 -2512
  163. package/dist/index.mjs +1550 -2516
  164. package/dist/input/index.js +20 -29
  165. package/dist/input/index.js.map +1 -1
  166. package/dist/input/index.mjs +20 -29
  167. package/dist/input/index.mjs.map +1 -1
  168. package/dist/interfaceSettings/index.js +122 -163
  169. package/dist/interfaceSettings/index.js.map +1 -1
  170. package/dist/interfaceSettings/index.mjs +122 -163
  171. package/dist/interfaceSettings/index.mjs.map +1 -1
  172. package/dist/label/index.js +19 -26
  173. package/dist/label/index.js.map +1 -1
  174. package/dist/label/index.mjs +19 -26
  175. package/dist/label/index.mjs.map +1 -1
  176. package/dist/layout/index.d.mts +2 -0
  177. package/dist/layout/index.d.ts +2 -0
  178. package/dist/layout/index.js +434 -790
  179. package/dist/layout/index.mjs +143 -243
  180. package/dist/loading/index.js +30 -53
  181. package/dist/loading/index.js.map +1 -1
  182. package/dist/loading/index.mjs +30 -53
  183. package/dist/loading/index.mjs.map +1 -1
  184. package/dist/logos/index.js +66 -191
  185. package/dist/logos/index.js.map +1 -1
  186. package/dist/logos/index.mjs +66 -191
  187. package/dist/logos/index.mjs.map +1 -1
  188. package/dist/navbar/index.js +1 -4
  189. package/dist/navbar/index.js.map +1 -1
  190. package/dist/navbar/index.mjs +1 -4
  191. package/dist/navbar/index.mjs.map +1 -1
  192. package/dist/navigationMenu/index.js +14 -22
  193. package/dist/navigationMenu/index.js.map +1 -1
  194. package/dist/navigationMenu/index.mjs +14 -22
  195. package/dist/navigationMenu/index.mjs.map +1 -1
  196. package/dist/pagination/index.js +1 -5
  197. package/dist/pagination/index.js.map +1 -1
  198. package/dist/pagination/index.mjs +1 -5
  199. package/dist/pagination/index.mjs.map +1 -1
  200. package/dist/passwordInput/index.js +36 -65
  201. package/dist/passwordInput/index.js.map +1 -1
  202. package/dist/passwordInput/index.mjs +36 -65
  203. package/dist/passwordInput/index.mjs.map +1 -1
  204. package/dist/phoneInput/index.js +20 -29
  205. package/dist/phoneInput/index.js.map +1 -1
  206. package/dist/phoneInput/index.mjs +20 -29
  207. package/dist/phoneInput/index.mjs.map +1 -1
  208. package/dist/pinInput/index.js +14 -16
  209. package/dist/pinInput/index.js.map +1 -1
  210. package/dist/pinInput/index.mjs +14 -16
  211. package/dist/pinInput/index.mjs.map +1 -1
  212. package/dist/popover/index.js +14 -24
  213. package/dist/popover/index.js.map +1 -1
  214. package/dist/popover/index.mjs +14 -24
  215. package/dist/popover/index.mjs.map +1 -1
  216. package/dist/progress/index.js +19 -26
  217. package/dist/progress/index.js.map +1 -1
  218. package/dist/progress/index.mjs +19 -26
  219. package/dist/progress/index.mjs.map +1 -1
  220. package/dist/progressCircle/index.js +67 -71
  221. package/dist/progressCircle/index.js.map +1 -1
  222. package/dist/progressCircle/index.mjs +67 -71
  223. package/dist/progressCircle/index.mjs.map +1 -1
  224. package/dist/radio/index.js +122 -163
  225. package/dist/radio/index.js.map +1 -1
  226. package/dist/radio/index.mjs +122 -163
  227. package/dist/radio/index.mjs.map +1 -1
  228. package/dist/scrollArea/index.js.map +1 -1
  229. package/dist/scrollArea/index.mjs.map +1 -1
  230. package/dist/scrollIndicator/index.js +1 -4
  231. package/dist/scrollIndicator/index.js.map +1 -1
  232. package/dist/scrollIndicator/index.mjs +1 -4
  233. package/dist/scrollIndicator/index.mjs.map +1 -1
  234. package/dist/select/index.js +20 -29
  235. package/dist/select/index.js.map +1 -1
  236. package/dist/select/index.mjs +20 -29
  237. package/dist/select/index.mjs.map +1 -1
  238. package/dist/separator/index.js.map +1 -1
  239. package/dist/separator/index.mjs.map +1 -1
  240. package/dist/sheet/index.js +42 -53
  241. package/dist/sheet/index.js.map +1 -1
  242. package/dist/sheet/index.mjs +42 -53
  243. package/dist/sheet/index.mjs.map +1 -1
  244. package/dist/sidebar/index.js +66 -133
  245. package/dist/sidebar/index.js.map +1 -1
  246. package/dist/sidebar/index.mjs +66 -133
  247. package/dist/sidebar/index.mjs.map +1 -1
  248. package/dist/signature/index.js +19 -26
  249. package/dist/signature/index.js.map +1 -1
  250. package/dist/signature/index.mjs +19 -26
  251. package/dist/signature/index.mjs.map +1 -1
  252. package/dist/simpleTable/index.js +50 -81
  253. package/dist/simpleTable/index.js.map +1 -1
  254. package/dist/simpleTable/index.mjs +50 -81
  255. package/dist/simpleTable/index.mjs.map +1 -1
  256. package/dist/skeleton/index.js.map +1 -1
  257. package/dist/skeleton/index.mjs.map +1 -1
  258. package/dist/slider/index.js.map +1 -1
  259. package/dist/slider/index.mjs.map +1 -1
  260. package/dist/sonner/index.js.map +1 -1
  261. package/dist/sonner/index.mjs.map +1 -1
  262. package/dist/sortButton/index.js +50 -82
  263. package/dist/sortButton/index.js.map +1 -1
  264. package/dist/sortButton/index.mjs +50 -82
  265. package/dist/sortButton/index.mjs.map +1 -1
  266. package/dist/splitButton/index.js +214 -294
  267. package/dist/splitButton/index.js.map +1 -1
  268. package/dist/splitButton/index.mjs +214 -294
  269. package/dist/splitButton/index.mjs.map +1 -1
  270. package/dist/stats/index.js +7 -35
  271. package/dist/stats/index.js.map +1 -1
  272. package/dist/stats/index.mjs +7 -35
  273. package/dist/stats/index.mjs.map +1 -1
  274. package/dist/switch/index.js +24 -34
  275. package/dist/switch/index.js.map +1 -1
  276. package/dist/switch/index.mjs +24 -34
  277. package/dist/switch/index.mjs.map +1 -1
  278. package/dist/table/index.js +27 -29
  279. package/dist/table/index.js.map +1 -1
  280. package/dist/table/index.mjs +27 -29
  281. package/dist/table/index.mjs.map +1 -1
  282. package/dist/tabs/index.js +54 -76
  283. package/dist/tabs/index.js.map +1 -1
  284. package/dist/tabs/index.mjs +54 -76
  285. package/dist/tabs/index.mjs.map +1 -1
  286. package/dist/textarea/index.js +21 -38
  287. package/dist/textarea/index.js.map +1 -1
  288. package/dist/textarea/index.mjs +21 -38
  289. package/dist/textarea/index.mjs.map +1 -1
  290. package/dist/toast/index.js +2 -10
  291. package/dist/toast/index.js.map +1 -1
  292. package/dist/toast/index.mjs +2 -10
  293. package/dist/toast/index.mjs.map +1 -1
  294. package/dist/toaster/index.js +3 -16
  295. package/dist/toaster/index.js.map +1 -1
  296. package/dist/toaster/index.mjs +3 -16
  297. package/dist/toaster/index.mjs.map +1 -1
  298. package/dist/tooltip/index.js +19 -26
  299. package/dist/tooltip/index.js.map +1 -1
  300. package/dist/tooltip/index.mjs +19 -26
  301. package/dist/tooltip/index.mjs.map +1 -1
  302. package/package.json +12 -12
  303. package/dist/chunk-JP2N5WKD.mjs +0 -190
@@ -53,16 +53,7 @@ function cn(...inputs) {
53
53
  // elements/chip/Chip.tsx
54
54
  var import_react = __toESM(require("react"));
55
55
  var Chip = import_react.default.forwardRef(
56
- ({
57
- label,
58
- size = "normal",
59
- icon,
60
- color,
61
- radius = "inherit",
62
- dot,
63
- dotStatus = "none",
64
- ...rest
65
- }, ref) => {
56
+ ({ label, size = "normal", icon, color, radius = "inherit", dot, dotStatus = "none", ...rest }, ref) => {
66
57
  let defaultStyles = "hawa-flex hawa-flex-row hawa-w-fit hawa-gap-1 hawa-items-center hawa-px-2.5 hawa-py-1 hawa-font-bold ";
67
58
  let radiusStyles = {
68
59
  inherit: " hawa-rounded",
@@ -109,12 +100,7 @@ var Chip = import_react.default.forwardRef(
109
100
  rest.className
110
101
  )
111
102
  },
112
- dot && /* @__PURE__ */ import_react.default.createElement(
113
- "span",
114
- {
115
- className: cn(dotStyles[size], dotStatusStyles[dotStatus])
116
- }
117
- ),
103
+ dot && /* @__PURE__ */ import_react.default.createElement("span", { className: cn(dotStyles[size], dotStatusStyles[dotStatus]) }),
118
104
  icon && icon,
119
105
  label
120
106
  );
@@ -224,18 +210,7 @@ var Accordion = React4.forwardRef(
224
210
  triggerclassNames
225
211
  )
226
212
  },
227
- /* @__PURE__ */ React4.createElement(
228
- "span",
229
- {
230
- className: cn(
231
- "hawa-flex hawa-flex-row",
232
- item.chip && "hawa-gap-2"
233
- )
234
- },
235
- item.trigger,
236
- " ",
237
- item.chip && /* @__PURE__ */ React4.createElement(Chip, { ...item.chip })
238
- )
213
+ /* @__PURE__ */ React4.createElement("span", { className: cn("hawa-flex hawa-flex-row", item.chip && "hawa-gap-2") }, item.trigger, " ", item.chip && /* @__PURE__ */ React4.createElement(Chip, { ...item.chip }))
239
214
  ),
240
215
  /* @__PURE__ */ React4.createElement(
241
216
  AccordionContent,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../elements/accordion/index.ts","../../elements/accordion/Accordion.tsx","../../util/index.ts","../../elements/chip/Chip.tsx","../../elements/accordion/AccordionContent.tsx","../../elements/accordion/AccordionTrigger.tsx","../../elements/accordion/AccordionItem.tsx","../../elements/accordion/AccordionRoot.tsx"],"sourcesContent":["export * from \"./Accordion\";\nexport * from \"./AccordionItem\";\nexport * from \"./AccordionTrigger\";\nexport * from \"./AccordionRoot\";\nexport * from \"./AccordionContent\";\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nimport { Chip, ChipTypes } from \"../chip\";\nimport { AccordionContent } from \"./AccordionContent\";\nimport { AccordionTrigger } from \"./AccordionTrigger\";\n\nexport type AccordionItemProps = {\n trigger: React.ReactNode;\n content: React.ReactNode;\n disabled?: boolean;\n chip?: ChipTypes;\n};\n\ntype AccordionProps = {\n items: AccordionItemProps[];\n itemClassNames?: string;\n triggerclassNames?: string;\n contentclassNames?: string;\n className?: string;\n design?: \"default\" | \"separated\";\n type: \"single\" | \"multiple\";\n collapsible?: boolean;\n};\n\nconst Accordion = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Root>,\n AccordionProps\n>(\n (\n {\n items,\n design = \"default\",\n itemClassNames,\n triggerclassNames,\n contentclassNames,\n className,\n ...props\n },\n ref,\n ) => (\n <AccordionPrimitive.Root type={props.type} collapsible>\n <div\n className={cn(\"hawa-flex hawa-flex-col\", {\n \"hawa-gap-4\": design === \"separated\",\n \"hawa-gap-0\": design === \"default\",\n })}\n >\n {items.map((item, index) => (\n <AccordionPrimitive.Item\n disabled={item.disabled || false}\n className={cn(itemClassNames, \"hawa-rounded\")}\n key={index}\n value={`item-${index}`}\n >\n <AccordionTrigger\n disabled={item.disabled || false}\n className={cn(\n \"hawa-transition-all hawa-text-start\",\n design === \"separated\"\n ? \"hawa-rounded data-[state=open]:hawa-rounded-b-none\"\n : {\n \"hawa-rounded-t\": index === 0,\n \"data-[state=closed]:hawa-rounded-b\":\n index === items.length - 1,\n },\n triggerclassNames,\n )}\n >\n <span\n className={cn(\n \"hawa-flex hawa-flex-row\",\n item.chip && \"hawa-gap-2\",\n )}\n >\n {item.trigger} {item.chip && <Chip {...item.chip} />}\n </span>\n </AccordionTrigger>\n <AccordionContent\n aria-disabled={item.disabled || false}\n className={cn(\n \"hawa-border hawa-transition-all\",\n design === \"separated\"\n ? \"hawa-rounded data-[state=open]:hawa-rounded-t-none\"\n : {\n \"data-[state=open]:hawa-rounded-b\":\n index === items.length - 1,\n },\n contentclassNames,\n )}\n >\n {item.content}\n </AccordionContent>\n </AccordionPrimitive.Item>\n ))}\n </div>\n </AccordionPrimitive.Root>\n ),\n);\n\nAccordion.displayName = \"Accordion\";\n\nexport { Accordion };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\ntype Palette = {\n name: string;\n colors: {\n [key: number]: string;\n };\n};\ntype Rgb = {\n r: number;\n g: number;\n b: number;\n};\nfunction hexToRgb(hex: string): Rgb | null {\n const sanitizedHex = hex.replaceAll(\"##\", \"#\");\n const colorParts = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(\n sanitizedHex\n );\n\n if (!colorParts) {\n return null;\n }\n\n const [, r, g, b] = colorParts;\n\n return {\n r: parseInt(r, 16),\n g: parseInt(g, 16),\n b: parseInt(b, 16)\n } as Rgb;\n}\n\nfunction rgbToHex(r: number, g: number, b: number): string {\n const toHex = (c: number) => `0${c.toString(16)}`.slice(-2);\n return `#${toHex(r)}${toHex(g)}${toHex(b)}`;\n}\n\nexport function getTextColor(color: string): \"#FFF\" | \"#333\" {\n const rgbColor = hexToRgb(color);\n\n if (!rgbColor) {\n return \"#333\";\n }\n\n const { r, g, b } = rgbColor;\n const luma = 0.2126 * r + 0.7152 * g + 0.0722 * b;\n\n return luma < 120 ? \"#FFF\" : \"#333\";\n}\n\nfunction lighten(hex: string, intensity: number): string {\n const color = hexToRgb(`#${hex}`);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r + (255 - color.r) * intensity);\n const g = Math.round(color.g + (255 - color.g) * intensity);\n const b = Math.round(color.b + (255 - color.b) * intensity);\n\n return rgbToHex(r, g, b);\n}\n\nfunction darken(hex: string, intensity: number): string {\n const color = hexToRgb(hex);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r * intensity);\n const g = Math.round(color.g * intensity);\n const b = Math.round(color.b * intensity);\n\n return rgbToHex(r, g, b);\n}\nconst parseColor = (color: any) => {\n if (color.startsWith(\"#\")) {\n // Convert hex to RGB\n let r = parseInt(color.slice(1, 3), 16);\n let g = parseInt(color.slice(3, 5), 16);\n let b = parseInt(color.slice(5, 7), 16);\n return [r, g, b];\n } else if (color.startsWith(\"rgb\")) {\n // Extract RGB values from rgb() format\n return color.match(/\\d+/g).map(Number);\n }\n // Default to white if format is unrecognized\n return [255, 255, 255];\n};\nexport const calculateLuminance = (color: any) => {\n const [r, g, b] = parseColor(color)?.map((c: any) => {\n c /= 255;\n return c <= 0.03928 ? c / 12.92 : ((c + 0.055) / 1.055) ** 2.4;\n });\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n};\n\nfunction getPallette(baseColor: string): Palette {\n const name = baseColor;\n\n const response: Palette = {\n name,\n colors: {\n 500: `#${baseColor}`.replace(\"##\", \"#\")\n }\n };\n\n const intensityMap: {\n [key: number]: number;\n } = {\n 50: 0.95,\n 100: 0.9,\n 200: 0.75,\n 300: 0.6,\n 400: 0.3,\n 600: 0.9,\n 700: 0.75,\n 800: 0.6,\n 900: 0.49\n };\n\n [50, 100, 200, 300, 400].forEach((level) => {\n response.colors[level] = lighten(baseColor, intensityMap[level]);\n });\n [600, 700, 800, 900].forEach((level) => {\n response.colors[level] = darken(baseColor, intensityMap[level]);\n });\n\n return response as Palette;\n}\n\nexport { getPallette };\n\n// const hexToRgb = (hex) => {\n// let d = hex?.split(\"#\")[1];\n// var aRgbHex = d?.match(/.{1,2}/g);\n// var aRgb = [\n// parseInt(aRgbHex[0], 16),\n// parseInt(aRgbHex[1], 16),\n// parseInt(aRgbHex[2], 16)\n// ];\n// return aRgb;\n// };\n// const getTextColor = (backColor) => {\n// let rgbArray = hexToRgb(backColor);\n// if (rgbArray[0] * 0.299 + rgbArray[1] * 0.587 + rgbArray[2] * 0.114 > 186) {\n// return \"#000000\";\n// } else {\n// return \"#ffffff\";\n// }\n// };\n// const replaceAt = function (string, index, replacement) {\n// // if (replacement == \"\" || replacement == \" \") {\n// // return (\n// // string.substring(0, index) +\n// // string.substring(index + replacement.length )\n// // );\n// // }\n// const replaced = string.substring(0, index) + replacement + string.substring(index + 1)\n// return replaced\n// };\n\n// export { hexToRgb, getTextColor, replaceAt };\n","import React from \"react\";\n\nimport { cn } from \"@util/index\";\n\nimport { RadiusType } from \"@_types/commonTypes\";\n\nexport type ChipColors =\n | \"green\"\n | \"blue\"\n | \"red\"\n | \"yellow\"\n | \"orange\"\n | \"purple\"\n | \"cyan\"\n | \"hyper\"\n | \"oceanic\";\n\nexport type ChipTypes = React.HTMLAttributes<HTMLSpanElement> & {\n /** The text inside the chip */\n label: string;\n /** The small icon before the chip label */\n icon?: JSX.Element;\n /** The color of the chip, must be a tailwind color */\n color?: ChipColors;\n /** The size of the chip */\n size?: \"small\" | \"normal\" | \"large\";\n /** Enable/Disable the dot before the label of the chip */\n dot?: boolean;\n /** Red/Green dot next to the label of the chip indicating online/offline or available/unavailable */\n dotStatus?: \"available\" | \"unavailable\" | \"none\";\n radius?: RadiusType;\n};\n\nexport const Chip = React.forwardRef<HTMLSpanElement, ChipTypes>(\n (\n {\n label,\n size = \"normal\",\n icon,\n color,\n radius = \"inherit\",\n dot,\n dotStatus = \"none\",\n ...rest\n },\n ref,\n ) => {\n let defaultStyles =\n \"hawa-flex hawa-flex-row hawa-w-fit hawa-gap-1 hawa-items-center hawa-px-2.5 hawa-py-1 hawa-font-bold \";\n let radiusStyles = {\n inherit: \" hawa-rounded\",\n full: \"hawa-rounded-full\",\n none: \"hawa-rounded-none\",\n };\n let sizeStyles = {\n small:\n \"hawa-h-[15px] hawa-leading-4 hawa-px-0 hawa-py-0 hawa-text-[9px] hawa-gap-0.5 \",\n normal: \"hawa-h-fit hawa-text-xs\",\n large: \"hawa-text-base\",\n };\n let dotStyles = {\n small: \"hawa-flex hawa-h-1 hawa-w-1 hawa-rounded-full\",\n normal: \"hawa-flex hawa-h-2 hawa-w-2 hawa-rounded-full\",\n large: \"hawa-flex hawa-h-3 hawa-w-3 hawa-rounded-full\",\n };\n let dotStatusStyles = {\n none: \"hawa-bg-gray-500 dark:hawa-bg-gray-800\",\n available: \"hawa-bg-green-500\",\n unavailable: \"hawa-bg-red-500\",\n };\n let colorStyles: any = {\n green:\n \"hawa-bg-green-200 hawa-text-green-700 dark:hawa-bg-green-700 dark:hawa-text-green-200\",\n blue: \"hawa-bg-blue-200 hawa-text-blue-700 dark:hawa-bg-blue-700 dark:hawa-text-blue-100\",\n red: \"hawa-bg-red-200 hawa-text-red-700 dark:hawa-bg-red-700 dark:hawa-text-red-100\",\n yellow:\n \"hawa-bg-yellow-200 hawa-text-yellow-700 dark:hawa-bg-yellow-600 dark:hawa-text-black\",\n orange:\n \"hawa-bg-orange-200 hawa-text-orange-700 dark:hawa-bg-orange-700 dark:hawa-text-orange-100\",\n purple:\n \"hawa-bg-purple-200 hawa-text-purple-700 dark:hawa-bg-purple-700 dark:hawa-text-purple-100\",\n cyan: \"hawa-bg-cyan-200 hawa-text-cyan-700 dark:hawa-bg-cyan-700 dark:hawa-text-cyan-100\",\n hyper:\n \"hawa-text-white dark:hawa-text-black hawa-bg-gradient-to-tl hawa-from-pink-500 hawa-via-red-500 hawa-to-yellow-500 \",\n oceanic:\n \"hawa-text-white dark:hawa-text-black hawa-bg-gradient-to-bl hawa-from-green-300 hawa-via-blue-500 hawa-to-purple-600\",\n };\n if (label) {\n return (\n <span\n {...rest}\n ref={ref}\n className={cn(\n defaultStyles,\n sizeStyles[size],\n radiusStyles[radius],\n color ? colorStyles[color] : \"hawa-border hawa-bg-none\",\n rest.className,\n )}\n >\n {dot && (\n <span\n className={cn(dotStyles[size], dotStatusStyles[dotStatus])}\n ></span>\n )}\n {icon && icon}\n {label}\n </span>\n );\n } else {\n return (\n <span\n {...rest}\n ref={ref}\n className={cn(\n \"hawa-h-2 hawa-w-2 hawa-rounded-full\",\n color ? colorStyles[color] : \"hawa-border hawa-bg-none\",\n )}\n ></span>\n );\n }\n },\n);\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionContent = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Content> & {\n unstyled?: boolean;\n }\n>(({ className, children, ...props }, ref) => (\n <AccordionPrimitive.Content\n ref={ref}\n className={\n !props.unstyled\n ? cn(\n \"hawa-overflow-hidden hawa-text-sm hawa-transition-all data-[state=closed]:hawa-animate-accordion-up data-[state=open]:hawa-animate-accordion-down\",\n className,\n )\n : className\n }\n {...props}\n >\n <div className=\"hawa-bg-background hawa-p-4\">{children}</div>\n </AccordionPrimitive.Content>\n));\nAccordionContent.displayName = AccordionPrimitive.Content.displayName;\n\nexport { AccordionContent };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionTrigger = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Trigger> & {\n unstyled?: boolean;\n hideArrow?: boolean;\n }\n>(({ className, children, ...props }, ref) => (\n <AccordionPrimitive.Header className=\"hawa-flex\">\n <AccordionPrimitive.Trigger\n ref={ref}\n className={\n !props.unstyled\n ? cn(\n \"hawa-flex hawa-flex-1 hawa-items-center hawa-justify-between hawa-bg-muted/50 hawa-p-4 hawa-font-medium hawa-transition-all [&[data-state=open]>svg]:hawa-rotate-180\",\n props.disabled\n ? \"hawa-bg-muted/30 hawa-text-muted-foreground/50\"\n : \"hover:hawa-bg-muted\",\n className,\n )\n : className\n }\n {...props}\n >\n {children}\n {!props.hideArrow && (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"hawa-icon hawa-shrink-0 hawa-transition-transform hawa-duration-200\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n )}\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n));\n\nAccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;\n\nexport { AccordionTrigger };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionItem = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <AccordionPrimitive.Item ref={ref} className={cn(className)} {...props} />\n));\n\nAccordionItem.displayName = \"AccordionItem\";\n\nexport { AccordionItem };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\n\nconst AccordionRoot = AccordionPrimitive.Root;\nexport { AccordionRoot };\n"],"mappings":"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","names":["React","AccordionPrimitive","React","React","React","AccordionPrimitive","React","AccordionPrimitive","AccordionPrimitive"]}
1
+ {"version":3,"sources":["../../elements/accordion/index.ts","../../elements/accordion/Accordion.tsx","../../util/index.ts","../../elements/chip/Chip.tsx","../../elements/accordion/AccordionContent.tsx","../../elements/accordion/AccordionTrigger.tsx","../../elements/accordion/AccordionItem.tsx","../../elements/accordion/AccordionRoot.tsx"],"sourcesContent":["export * from \"./Accordion\";\nexport * from \"./AccordionItem\";\nexport * from \"./AccordionTrigger\";\nexport * from \"./AccordionRoot\";\nexport * from \"./AccordionContent\";\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nimport { Chip, ChipTypes } from \"../chip\";\nimport { AccordionContent } from \"./AccordionContent\";\nimport { AccordionTrigger } from \"./AccordionTrigger\";\n\nexport type AccordionItemProps = {\n trigger: React.ReactNode;\n content: React.ReactNode;\n disabled?: boolean;\n chip?: ChipTypes;\n};\n\ntype AccordionProps = {\n items: AccordionItemProps[];\n itemClassNames?: string;\n triggerclassNames?: string;\n contentclassNames?: string;\n className?: string;\n design?: \"default\" | \"separated\";\n type: \"single\" | \"multiple\";\n collapsible?: boolean;\n};\n\nconst Accordion = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Root>,\n AccordionProps\n>(\n (\n {\n items,\n design = \"default\",\n itemClassNames,\n triggerclassNames,\n contentclassNames,\n className,\n ...props\n },\n ref,\n ) => (\n <AccordionPrimitive.Root type={props.type} collapsible>\n <div\n className={cn(\"hawa-flex hawa-flex-col\", {\n \"hawa-gap-4\": design === \"separated\",\n \"hawa-gap-0\": design === \"default\",\n })}\n >\n {items.map((item, index) => (\n <AccordionPrimitive.Item\n disabled={item.disabled || false}\n className={cn(itemClassNames, \"hawa-rounded\")}\n key={index}\n value={`item-${index}`}\n >\n <AccordionTrigger\n disabled={item.disabled || false}\n className={cn(\n \"hawa-transition-all hawa-text-start\",\n design === \"separated\"\n ? \"hawa-rounded data-[state=open]:hawa-rounded-b-none\"\n : {\n \"hawa-rounded-t\": index === 0,\n \"data-[state=closed]:hawa-rounded-b\": index === items.length - 1,\n },\n triggerclassNames,\n )}\n >\n <span className={cn(\"hawa-flex hawa-flex-row\", item.chip && \"hawa-gap-2\")}>\n {item.trigger} {item.chip && <Chip {...item.chip} />}\n </span>\n </AccordionTrigger>\n <AccordionContent\n aria-disabled={item.disabled || false}\n className={cn(\n \"hawa-border hawa-transition-all\",\n design === \"separated\"\n ? \"hawa-rounded data-[state=open]:hawa-rounded-t-none\"\n : {\n \"data-[state=open]:hawa-rounded-b\": index === items.length - 1,\n },\n contentclassNames,\n )}\n >\n {item.content}\n </AccordionContent>\n </AccordionPrimitive.Item>\n ))}\n </div>\n </AccordionPrimitive.Root>\n ),\n);\n\nAccordion.displayName = \"Accordion\";\n\nexport { Accordion };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\ntype Palette = {\n name: string;\n colors: {\n [key: number]: string;\n };\n};\ntype Rgb = {\n r: number;\n g: number;\n b: number;\n};\nfunction hexToRgb(hex: string): Rgb | null {\n const sanitizedHex = hex.replaceAll(\"##\", \"#\");\n const colorParts = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(sanitizedHex);\n\n if (!colorParts) {\n return null;\n }\n\n const [, r, g, b] = colorParts;\n\n return {\n r: parseInt(r, 16),\n g: parseInt(g, 16),\n b: parseInt(b, 16),\n } as Rgb;\n}\n\nfunction rgbToHex(r: number, g: number, b: number): string {\n const toHex = (c: number) => `0${c.toString(16)}`.slice(-2);\n return `#${toHex(r)}${toHex(g)}${toHex(b)}`;\n}\n\nexport function getTextColor(color: string): \"#FFF\" | \"#333\" {\n const rgbColor = hexToRgb(color);\n\n if (!rgbColor) {\n return \"#333\";\n }\n\n const { r, g, b } = rgbColor;\n const luma = 0.2126 * r + 0.7152 * g + 0.0722 * b;\n\n return luma < 120 ? \"#FFF\" : \"#333\";\n}\n\nfunction lighten(hex: string, intensity: number): string {\n const color = hexToRgb(`#${hex}`);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r + (255 - color.r) * intensity);\n const g = Math.round(color.g + (255 - color.g) * intensity);\n const b = Math.round(color.b + (255 - color.b) * intensity);\n\n return rgbToHex(r, g, b);\n}\n\nfunction darken(hex: string, intensity: number): string {\n const color = hexToRgb(hex);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r * intensity);\n const g = Math.round(color.g * intensity);\n const b = Math.round(color.b * intensity);\n\n return rgbToHex(r, g, b);\n}\nconst parseColor = (color: any) => {\n if (color.startsWith(\"#\")) {\n // Convert hex to RGB\n let r = parseInt(color.slice(1, 3), 16);\n let g = parseInt(color.slice(3, 5), 16);\n let b = parseInt(color.slice(5, 7), 16);\n return [r, g, b];\n } else if (color.startsWith(\"rgb\")) {\n // Extract RGB values from rgb() format\n return color.match(/\\d+/g).map(Number);\n }\n // Default to white if format is unrecognized\n return [255, 255, 255];\n};\nexport const calculateLuminance = (color: any) => {\n const [r, g, b] = parseColor(color)?.map((c: any) => {\n c /= 255;\n return c <= 0.03928 ? c / 12.92 : ((c + 0.055) / 1.055) ** 2.4;\n });\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n};\n\nfunction getPallette(baseColor: string): Palette {\n const name = baseColor;\n\n const response: Palette = {\n name,\n colors: {\n 500: `#${baseColor}`.replace(\"##\", \"#\"),\n },\n };\n\n const intensityMap: {\n [key: number]: number;\n } = {\n 50: 0.95,\n 100: 0.9,\n 200: 0.75,\n 300: 0.6,\n 400: 0.3,\n 600: 0.9,\n 700: 0.75,\n 800: 0.6,\n 900: 0.49,\n };\n\n [50, 100, 200, 300, 400].forEach((level) => {\n response.colors[level] = lighten(baseColor, intensityMap[level]);\n });\n [600, 700, 800, 900].forEach((level) => {\n response.colors[level] = darken(baseColor, intensityMap[level]);\n });\n\n return response as Palette;\n}\n\nexport { getPallette };\n\n// const hexToRgb = (hex) => {\n// let d = hex?.split(\"#\")[1];\n// var aRgbHex = d?.match(/.{1,2}/g);\n// var aRgb = [\n// parseInt(aRgbHex[0], 16),\n// parseInt(aRgbHex[1], 16),\n// parseInt(aRgbHex[2], 16)\n// ];\n// return aRgb;\n// };\n// const getTextColor = (backColor) => {\n// let rgbArray = hexToRgb(backColor);\n// if (rgbArray[0] * 0.299 + rgbArray[1] * 0.587 + rgbArray[2] * 0.114 > 186) {\n// return \"#000000\";\n// } else {\n// return \"#ffffff\";\n// }\n// };\n// const replaceAt = function (string, index, replacement) {\n// // if (replacement == \"\" || replacement == \" \") {\n// // return (\n// // string.substring(0, index) +\n// // string.substring(index + replacement.length )\n// // );\n// // }\n// const replaced = string.substring(0, index) + replacement + string.substring(index + 1)\n// return replaced\n// };\n\n// export { hexToRgb, getTextColor, replaceAt };\n","import React from \"react\";\n\nimport { cn } from \"@util/index\";\n\nimport { RadiusType } from \"@_types/commonTypes\";\n\nexport type ChipColors =\n | \"green\"\n | \"blue\"\n | \"red\"\n | \"yellow\"\n | \"orange\"\n | \"purple\"\n | \"cyan\"\n | \"hyper\"\n | \"oceanic\";\n\nexport type ChipTypes = React.HTMLAttributes<HTMLSpanElement> & {\n /** The text inside the chip */\n label: string;\n /** The small icon before the chip label */\n icon?: JSX.Element;\n /** The color of the chip, must be a tailwind color */\n color?: ChipColors;\n /** The size of the chip */\n size?: \"small\" | \"normal\" | \"large\";\n /** Enable/Disable the dot before the label of the chip */\n dot?: boolean;\n /** Red/Green dot next to the label of the chip indicating online/offline or available/unavailable */\n dotStatus?: \"available\" | \"unavailable\" | \"none\";\n radius?: RadiusType;\n};\n\nexport const Chip = React.forwardRef<HTMLSpanElement, ChipTypes>(\n (\n { label, size = \"normal\", icon, color, radius = \"inherit\", dot, dotStatus = \"none\", ...rest },\n ref,\n ) => {\n let defaultStyles =\n \"hawa-flex hawa-flex-row hawa-w-fit hawa-gap-1 hawa-items-center hawa-px-2.5 hawa-py-1 hawa-font-bold \";\n let radiusStyles = {\n inherit: \" hawa-rounded\",\n full: \"hawa-rounded-full\",\n none: \"hawa-rounded-none\",\n };\n let sizeStyles = {\n small: \"hawa-h-[15px] hawa-leading-4 hawa-px-0 hawa-py-0 hawa-text-[9px] hawa-gap-0.5 \",\n normal: \"hawa-h-fit hawa-text-xs\",\n large: \"hawa-text-base\",\n };\n let dotStyles = {\n small: \"hawa-flex hawa-h-1 hawa-w-1 hawa-rounded-full\",\n normal: \"hawa-flex hawa-h-2 hawa-w-2 hawa-rounded-full\",\n large: \"hawa-flex hawa-h-3 hawa-w-3 hawa-rounded-full\",\n };\n let dotStatusStyles = {\n none: \"hawa-bg-gray-500 dark:hawa-bg-gray-800\",\n available: \"hawa-bg-green-500\",\n unavailable: \"hawa-bg-red-500\",\n };\n let colorStyles: any = {\n green:\n \"hawa-bg-green-200 hawa-text-green-700 dark:hawa-bg-green-700 dark:hawa-text-green-200\",\n blue: \"hawa-bg-blue-200 hawa-text-blue-700 dark:hawa-bg-blue-700 dark:hawa-text-blue-100\",\n red: \"hawa-bg-red-200 hawa-text-red-700 dark:hawa-bg-red-700 dark:hawa-text-red-100\",\n yellow:\n \"hawa-bg-yellow-200 hawa-text-yellow-700 dark:hawa-bg-yellow-600 dark:hawa-text-black\",\n orange:\n \"hawa-bg-orange-200 hawa-text-orange-700 dark:hawa-bg-orange-700 dark:hawa-text-orange-100\",\n purple:\n \"hawa-bg-purple-200 hawa-text-purple-700 dark:hawa-bg-purple-700 dark:hawa-text-purple-100\",\n cyan: \"hawa-bg-cyan-200 hawa-text-cyan-700 dark:hawa-bg-cyan-700 dark:hawa-text-cyan-100\",\n hyper:\n \"hawa-text-white dark:hawa-text-black hawa-bg-gradient-to-tl hawa-from-pink-500 hawa-via-red-500 hawa-to-yellow-500 \",\n oceanic:\n \"hawa-text-white dark:hawa-text-black hawa-bg-gradient-to-bl hawa-from-green-300 hawa-via-blue-500 hawa-to-purple-600\",\n };\n if (label) {\n return (\n <span\n {...rest}\n ref={ref}\n className={cn(\n defaultStyles,\n sizeStyles[size],\n radiusStyles[radius],\n color ? colorStyles[color] : \"hawa-border hawa-bg-none\",\n rest.className,\n )}\n >\n {dot && <span className={cn(dotStyles[size], dotStatusStyles[dotStatus])}></span>}\n {icon && icon}\n {label}\n </span>\n );\n } else {\n return (\n <span\n {...rest}\n ref={ref}\n className={cn(\n \"hawa-h-2 hawa-w-2 hawa-rounded-full\",\n color ? colorStyles[color] : \"hawa-border hawa-bg-none\",\n )}\n ></span>\n );\n }\n },\n);\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionContent = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Content> & {\n unstyled?: boolean;\n }\n>(({ className, children, ...props }, ref) => (\n <AccordionPrimitive.Content\n ref={ref}\n className={\n !props.unstyled\n ? cn(\n \"hawa-overflow-hidden hawa-text-sm hawa-transition-all data-[state=closed]:hawa-animate-accordion-up data-[state=open]:hawa-animate-accordion-down\",\n className,\n )\n : className\n }\n {...props}\n >\n <div className=\"hawa-bg-background hawa-p-4\">{children}</div>\n </AccordionPrimitive.Content>\n));\nAccordionContent.displayName = AccordionPrimitive.Content.displayName;\n\nexport { AccordionContent };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionTrigger = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Trigger> & {\n unstyled?: boolean;\n hideArrow?: boolean;\n }\n>(({ className, children, ...props }, ref) => (\n <AccordionPrimitive.Header className=\"hawa-flex\">\n <AccordionPrimitive.Trigger\n ref={ref}\n className={\n !props.unstyled\n ? cn(\n \"hawa-flex hawa-flex-1 hawa-items-center hawa-justify-between hawa-bg-muted/50 hawa-p-4 hawa-font-medium hawa-transition-all [&[data-state=open]>svg]:hawa-rotate-180\",\n props.disabled\n ? \"hawa-bg-muted/30 hawa-text-muted-foreground/50\"\n : \"hover:hawa-bg-muted\",\n className,\n )\n : className\n }\n {...props}\n >\n {children}\n {!props.hideArrow && (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"hawa-icon hawa-shrink-0 hawa-transition-transform hawa-duration-200\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n )}\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n));\n\nAccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;\n\nexport { AccordionTrigger };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionItem = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <AccordionPrimitive.Item ref={ref} className={cn(className)} {...props} />\n));\n\nAccordionItem.displayName = \"AccordionItem\";\n\nexport { AccordionItem };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\n\nconst AccordionRoot = AccordionPrimitive.Root;\nexport { AccordionRoot };\n"],"mappings":"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","names":["React","AccordionPrimitive","React","React","React","AccordionPrimitive","React","AccordionPrimitive","AccordionPrimitive"]}
@@ -14,16 +14,7 @@ function cn(...inputs) {
14
14
  // elements/chip/Chip.tsx
15
15
  import React from "react";
16
16
  var Chip = React.forwardRef(
17
- ({
18
- label,
19
- size = "normal",
20
- icon,
21
- color,
22
- radius = "inherit",
23
- dot,
24
- dotStatus = "none",
25
- ...rest
26
- }, ref) => {
17
+ ({ label, size = "normal", icon, color, radius = "inherit", dot, dotStatus = "none", ...rest }, ref) => {
27
18
  let defaultStyles = "hawa-flex hawa-flex-row hawa-w-fit hawa-gap-1 hawa-items-center hawa-px-2.5 hawa-py-1 hawa-font-bold ";
28
19
  let radiusStyles = {
29
20
  inherit: " hawa-rounded",
@@ -70,12 +61,7 @@ var Chip = React.forwardRef(
70
61
  rest.className
71
62
  )
72
63
  },
73
- dot && /* @__PURE__ */ React.createElement(
74
- "span",
75
- {
76
- className: cn(dotStyles[size], dotStatusStyles[dotStatus])
77
- }
78
- ),
64
+ dot && /* @__PURE__ */ React.createElement("span", { className: cn(dotStyles[size], dotStatusStyles[dotStatus]) }),
79
65
  icon && icon,
80
66
  label
81
67
  );
@@ -185,18 +171,7 @@ var Accordion = React4.forwardRef(
185
171
  triggerclassNames
186
172
  )
187
173
  },
188
- /* @__PURE__ */ React4.createElement(
189
- "span",
190
- {
191
- className: cn(
192
- "hawa-flex hawa-flex-row",
193
- item.chip && "hawa-gap-2"
194
- )
195
- },
196
- item.trigger,
197
- " ",
198
- item.chip && /* @__PURE__ */ React4.createElement(Chip, { ...item.chip })
199
- )
174
+ /* @__PURE__ */ React4.createElement("span", { className: cn("hawa-flex hawa-flex-row", item.chip && "hawa-gap-2") }, item.trigger, " ", item.chip && /* @__PURE__ */ React4.createElement(Chip, { ...item.chip }))
200
175
  ),
201
176
  /* @__PURE__ */ React4.createElement(
202
177
  AccordionContent,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../elements/accordion/Accordion.tsx","../../util/index.ts","../../elements/chip/Chip.tsx","../../elements/accordion/AccordionContent.tsx","../../elements/accordion/AccordionTrigger.tsx","../../elements/accordion/AccordionItem.tsx","../../elements/accordion/AccordionRoot.tsx"],"sourcesContent":["import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nimport { Chip, ChipTypes } from \"../chip\";\nimport { AccordionContent } from \"./AccordionContent\";\nimport { AccordionTrigger } from \"./AccordionTrigger\";\n\nexport type AccordionItemProps = {\n trigger: React.ReactNode;\n content: React.ReactNode;\n disabled?: boolean;\n chip?: ChipTypes;\n};\n\ntype AccordionProps = {\n items: AccordionItemProps[];\n itemClassNames?: string;\n triggerclassNames?: string;\n contentclassNames?: string;\n className?: string;\n design?: \"default\" | \"separated\";\n type: \"single\" | \"multiple\";\n collapsible?: boolean;\n};\n\nconst Accordion = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Root>,\n AccordionProps\n>(\n (\n {\n items,\n design = \"default\",\n itemClassNames,\n triggerclassNames,\n contentclassNames,\n className,\n ...props\n },\n ref,\n ) => (\n <AccordionPrimitive.Root type={props.type} collapsible>\n <div\n className={cn(\"hawa-flex hawa-flex-col\", {\n \"hawa-gap-4\": design === \"separated\",\n \"hawa-gap-0\": design === \"default\",\n })}\n >\n {items.map((item, index) => (\n <AccordionPrimitive.Item\n disabled={item.disabled || false}\n className={cn(itemClassNames, \"hawa-rounded\")}\n key={index}\n value={`item-${index}`}\n >\n <AccordionTrigger\n disabled={item.disabled || false}\n className={cn(\n \"hawa-transition-all hawa-text-start\",\n design === \"separated\"\n ? \"hawa-rounded data-[state=open]:hawa-rounded-b-none\"\n : {\n \"hawa-rounded-t\": index === 0,\n \"data-[state=closed]:hawa-rounded-b\":\n index === items.length - 1,\n },\n triggerclassNames,\n )}\n >\n <span\n className={cn(\n \"hawa-flex hawa-flex-row\",\n item.chip && \"hawa-gap-2\",\n )}\n >\n {item.trigger} {item.chip && <Chip {...item.chip} />}\n </span>\n </AccordionTrigger>\n <AccordionContent\n aria-disabled={item.disabled || false}\n className={cn(\n \"hawa-border hawa-transition-all\",\n design === \"separated\"\n ? \"hawa-rounded data-[state=open]:hawa-rounded-t-none\"\n : {\n \"data-[state=open]:hawa-rounded-b\":\n index === items.length - 1,\n },\n contentclassNames,\n )}\n >\n {item.content}\n </AccordionContent>\n </AccordionPrimitive.Item>\n ))}\n </div>\n </AccordionPrimitive.Root>\n ),\n);\n\nAccordion.displayName = \"Accordion\";\n\nexport { Accordion };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\ntype Palette = {\n name: string;\n colors: {\n [key: number]: string;\n };\n};\ntype Rgb = {\n r: number;\n g: number;\n b: number;\n};\nfunction hexToRgb(hex: string): Rgb | null {\n const sanitizedHex = hex.replaceAll(\"##\", \"#\");\n const colorParts = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(\n sanitizedHex\n );\n\n if (!colorParts) {\n return null;\n }\n\n const [, r, g, b] = colorParts;\n\n return {\n r: parseInt(r, 16),\n g: parseInt(g, 16),\n b: parseInt(b, 16)\n } as Rgb;\n}\n\nfunction rgbToHex(r: number, g: number, b: number): string {\n const toHex = (c: number) => `0${c.toString(16)}`.slice(-2);\n return `#${toHex(r)}${toHex(g)}${toHex(b)}`;\n}\n\nexport function getTextColor(color: string): \"#FFF\" | \"#333\" {\n const rgbColor = hexToRgb(color);\n\n if (!rgbColor) {\n return \"#333\";\n }\n\n const { r, g, b } = rgbColor;\n const luma = 0.2126 * r + 0.7152 * g + 0.0722 * b;\n\n return luma < 120 ? \"#FFF\" : \"#333\";\n}\n\nfunction lighten(hex: string, intensity: number): string {\n const color = hexToRgb(`#${hex}`);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r + (255 - color.r) * intensity);\n const g = Math.round(color.g + (255 - color.g) * intensity);\n const b = Math.round(color.b + (255 - color.b) * intensity);\n\n return rgbToHex(r, g, b);\n}\n\nfunction darken(hex: string, intensity: number): string {\n const color = hexToRgb(hex);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r * intensity);\n const g = Math.round(color.g * intensity);\n const b = Math.round(color.b * intensity);\n\n return rgbToHex(r, g, b);\n}\nconst parseColor = (color: any) => {\n if (color.startsWith(\"#\")) {\n // Convert hex to RGB\n let r = parseInt(color.slice(1, 3), 16);\n let g = parseInt(color.slice(3, 5), 16);\n let b = parseInt(color.slice(5, 7), 16);\n return [r, g, b];\n } else if (color.startsWith(\"rgb\")) {\n // Extract RGB values from rgb() format\n return color.match(/\\d+/g).map(Number);\n }\n // Default to white if format is unrecognized\n return [255, 255, 255];\n};\nexport const calculateLuminance = (color: any) => {\n const [r, g, b] = parseColor(color)?.map((c: any) => {\n c /= 255;\n return c <= 0.03928 ? c / 12.92 : ((c + 0.055) / 1.055) ** 2.4;\n });\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n};\n\nfunction getPallette(baseColor: string): Palette {\n const name = baseColor;\n\n const response: Palette = {\n name,\n colors: {\n 500: `#${baseColor}`.replace(\"##\", \"#\")\n }\n };\n\n const intensityMap: {\n [key: number]: number;\n } = {\n 50: 0.95,\n 100: 0.9,\n 200: 0.75,\n 300: 0.6,\n 400: 0.3,\n 600: 0.9,\n 700: 0.75,\n 800: 0.6,\n 900: 0.49\n };\n\n [50, 100, 200, 300, 400].forEach((level) => {\n response.colors[level] = lighten(baseColor, intensityMap[level]);\n });\n [600, 700, 800, 900].forEach((level) => {\n response.colors[level] = darken(baseColor, intensityMap[level]);\n });\n\n return response as Palette;\n}\n\nexport { getPallette };\n\n// const hexToRgb = (hex) => {\n// let d = hex?.split(\"#\")[1];\n// var aRgbHex = d?.match(/.{1,2}/g);\n// var aRgb = [\n// parseInt(aRgbHex[0], 16),\n// parseInt(aRgbHex[1], 16),\n// parseInt(aRgbHex[2], 16)\n// ];\n// return aRgb;\n// };\n// const getTextColor = (backColor) => {\n// let rgbArray = hexToRgb(backColor);\n// if (rgbArray[0] * 0.299 + rgbArray[1] * 0.587 + rgbArray[2] * 0.114 > 186) {\n// return \"#000000\";\n// } else {\n// return \"#ffffff\";\n// }\n// };\n// const replaceAt = function (string, index, replacement) {\n// // if (replacement == \"\" || replacement == \" \") {\n// // return (\n// // string.substring(0, index) +\n// // string.substring(index + replacement.length )\n// // );\n// // }\n// const replaced = string.substring(0, index) + replacement + string.substring(index + 1)\n// return replaced\n// };\n\n// export { hexToRgb, getTextColor, replaceAt };\n","import React from \"react\";\n\nimport { cn } from \"@util/index\";\n\nimport { RadiusType } from \"@_types/commonTypes\";\n\nexport type ChipColors =\n | \"green\"\n | \"blue\"\n | \"red\"\n | \"yellow\"\n | \"orange\"\n | \"purple\"\n | \"cyan\"\n | \"hyper\"\n | \"oceanic\";\n\nexport type ChipTypes = React.HTMLAttributes<HTMLSpanElement> & {\n /** The text inside the chip */\n label: string;\n /** The small icon before the chip label */\n icon?: JSX.Element;\n /** The color of the chip, must be a tailwind color */\n color?: ChipColors;\n /** The size of the chip */\n size?: \"small\" | \"normal\" | \"large\";\n /** Enable/Disable the dot before the label of the chip */\n dot?: boolean;\n /** Red/Green dot next to the label of the chip indicating online/offline or available/unavailable */\n dotStatus?: \"available\" | \"unavailable\" | \"none\";\n radius?: RadiusType;\n};\n\nexport const Chip = React.forwardRef<HTMLSpanElement, ChipTypes>(\n (\n {\n label,\n size = \"normal\",\n icon,\n color,\n radius = \"inherit\",\n dot,\n dotStatus = \"none\",\n ...rest\n },\n ref,\n ) => {\n let defaultStyles =\n \"hawa-flex hawa-flex-row hawa-w-fit hawa-gap-1 hawa-items-center hawa-px-2.5 hawa-py-1 hawa-font-bold \";\n let radiusStyles = {\n inherit: \" hawa-rounded\",\n full: \"hawa-rounded-full\",\n none: \"hawa-rounded-none\",\n };\n let sizeStyles = {\n small:\n \"hawa-h-[15px] hawa-leading-4 hawa-px-0 hawa-py-0 hawa-text-[9px] hawa-gap-0.5 \",\n normal: \"hawa-h-fit hawa-text-xs\",\n large: \"hawa-text-base\",\n };\n let dotStyles = {\n small: \"hawa-flex hawa-h-1 hawa-w-1 hawa-rounded-full\",\n normal: \"hawa-flex hawa-h-2 hawa-w-2 hawa-rounded-full\",\n large: \"hawa-flex hawa-h-3 hawa-w-3 hawa-rounded-full\",\n };\n let dotStatusStyles = {\n none: \"hawa-bg-gray-500 dark:hawa-bg-gray-800\",\n available: \"hawa-bg-green-500\",\n unavailable: \"hawa-bg-red-500\",\n };\n let colorStyles: any = {\n green:\n \"hawa-bg-green-200 hawa-text-green-700 dark:hawa-bg-green-700 dark:hawa-text-green-200\",\n blue: \"hawa-bg-blue-200 hawa-text-blue-700 dark:hawa-bg-blue-700 dark:hawa-text-blue-100\",\n red: \"hawa-bg-red-200 hawa-text-red-700 dark:hawa-bg-red-700 dark:hawa-text-red-100\",\n yellow:\n \"hawa-bg-yellow-200 hawa-text-yellow-700 dark:hawa-bg-yellow-600 dark:hawa-text-black\",\n orange:\n \"hawa-bg-orange-200 hawa-text-orange-700 dark:hawa-bg-orange-700 dark:hawa-text-orange-100\",\n purple:\n \"hawa-bg-purple-200 hawa-text-purple-700 dark:hawa-bg-purple-700 dark:hawa-text-purple-100\",\n cyan: \"hawa-bg-cyan-200 hawa-text-cyan-700 dark:hawa-bg-cyan-700 dark:hawa-text-cyan-100\",\n hyper:\n \"hawa-text-white dark:hawa-text-black hawa-bg-gradient-to-tl hawa-from-pink-500 hawa-via-red-500 hawa-to-yellow-500 \",\n oceanic:\n \"hawa-text-white dark:hawa-text-black hawa-bg-gradient-to-bl hawa-from-green-300 hawa-via-blue-500 hawa-to-purple-600\",\n };\n if (label) {\n return (\n <span\n {...rest}\n ref={ref}\n className={cn(\n defaultStyles,\n sizeStyles[size],\n radiusStyles[radius],\n color ? colorStyles[color] : \"hawa-border hawa-bg-none\",\n rest.className,\n )}\n >\n {dot && (\n <span\n className={cn(dotStyles[size], dotStatusStyles[dotStatus])}\n ></span>\n )}\n {icon && icon}\n {label}\n </span>\n );\n } else {\n return (\n <span\n {...rest}\n ref={ref}\n className={cn(\n \"hawa-h-2 hawa-w-2 hawa-rounded-full\",\n color ? colorStyles[color] : \"hawa-border hawa-bg-none\",\n )}\n ></span>\n );\n }\n },\n);\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionContent = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Content> & {\n unstyled?: boolean;\n }\n>(({ className, children, ...props }, ref) => (\n <AccordionPrimitive.Content\n ref={ref}\n className={\n !props.unstyled\n ? cn(\n \"hawa-overflow-hidden hawa-text-sm hawa-transition-all data-[state=closed]:hawa-animate-accordion-up data-[state=open]:hawa-animate-accordion-down\",\n className,\n )\n : className\n }\n {...props}\n >\n <div className=\"hawa-bg-background hawa-p-4\">{children}</div>\n </AccordionPrimitive.Content>\n));\nAccordionContent.displayName = AccordionPrimitive.Content.displayName;\n\nexport { AccordionContent };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionTrigger = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Trigger> & {\n unstyled?: boolean;\n hideArrow?: boolean;\n }\n>(({ className, children, ...props }, ref) => (\n <AccordionPrimitive.Header className=\"hawa-flex\">\n <AccordionPrimitive.Trigger\n ref={ref}\n className={\n !props.unstyled\n ? cn(\n \"hawa-flex hawa-flex-1 hawa-items-center hawa-justify-between hawa-bg-muted/50 hawa-p-4 hawa-font-medium hawa-transition-all [&[data-state=open]>svg]:hawa-rotate-180\",\n props.disabled\n ? \"hawa-bg-muted/30 hawa-text-muted-foreground/50\"\n : \"hover:hawa-bg-muted\",\n className,\n )\n : className\n }\n {...props}\n >\n {children}\n {!props.hideArrow && (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"hawa-icon hawa-shrink-0 hawa-transition-transform hawa-duration-200\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n )}\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n));\n\nAccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;\n\nexport { AccordionTrigger };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionItem = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <AccordionPrimitive.Item ref={ref} className={cn(className)} {...props} />\n));\n\nAccordionItem.displayName = \"AccordionItem\";\n\nexport { AccordionItem };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\n\nconst AccordionRoot = AccordionPrimitive.Root;\nexport { AccordionRoot };\n"],"mappings":"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","names":["React","AccordionPrimitive","React","React","AccordionPrimitive","React","AccordionPrimitive","AccordionPrimitive"]}
1
+ {"version":3,"sources":["../../elements/accordion/Accordion.tsx","../../util/index.ts","../../elements/chip/Chip.tsx","../../elements/accordion/AccordionContent.tsx","../../elements/accordion/AccordionTrigger.tsx","../../elements/accordion/AccordionItem.tsx","../../elements/accordion/AccordionRoot.tsx"],"sourcesContent":["import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nimport { Chip, ChipTypes } from \"../chip\";\nimport { AccordionContent } from \"./AccordionContent\";\nimport { AccordionTrigger } from \"./AccordionTrigger\";\n\nexport type AccordionItemProps = {\n trigger: React.ReactNode;\n content: React.ReactNode;\n disabled?: boolean;\n chip?: ChipTypes;\n};\n\ntype AccordionProps = {\n items: AccordionItemProps[];\n itemClassNames?: string;\n triggerclassNames?: string;\n contentclassNames?: string;\n className?: string;\n design?: \"default\" | \"separated\";\n type: \"single\" | \"multiple\";\n collapsible?: boolean;\n};\n\nconst Accordion = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Root>,\n AccordionProps\n>(\n (\n {\n items,\n design = \"default\",\n itemClassNames,\n triggerclassNames,\n contentclassNames,\n className,\n ...props\n },\n ref,\n ) => (\n <AccordionPrimitive.Root type={props.type} collapsible>\n <div\n className={cn(\"hawa-flex hawa-flex-col\", {\n \"hawa-gap-4\": design === \"separated\",\n \"hawa-gap-0\": design === \"default\",\n })}\n >\n {items.map((item, index) => (\n <AccordionPrimitive.Item\n disabled={item.disabled || false}\n className={cn(itemClassNames, \"hawa-rounded\")}\n key={index}\n value={`item-${index}`}\n >\n <AccordionTrigger\n disabled={item.disabled || false}\n className={cn(\n \"hawa-transition-all hawa-text-start\",\n design === \"separated\"\n ? \"hawa-rounded data-[state=open]:hawa-rounded-b-none\"\n : {\n \"hawa-rounded-t\": index === 0,\n \"data-[state=closed]:hawa-rounded-b\": index === items.length - 1,\n },\n triggerclassNames,\n )}\n >\n <span className={cn(\"hawa-flex hawa-flex-row\", item.chip && \"hawa-gap-2\")}>\n {item.trigger} {item.chip && <Chip {...item.chip} />}\n </span>\n </AccordionTrigger>\n <AccordionContent\n aria-disabled={item.disabled || false}\n className={cn(\n \"hawa-border hawa-transition-all\",\n design === \"separated\"\n ? \"hawa-rounded data-[state=open]:hawa-rounded-t-none\"\n : {\n \"data-[state=open]:hawa-rounded-b\": index === items.length - 1,\n },\n contentclassNames,\n )}\n >\n {item.content}\n </AccordionContent>\n </AccordionPrimitive.Item>\n ))}\n </div>\n </AccordionPrimitive.Root>\n ),\n);\n\nAccordion.displayName = \"Accordion\";\n\nexport { Accordion };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\ntype Palette = {\n name: string;\n colors: {\n [key: number]: string;\n };\n};\ntype Rgb = {\n r: number;\n g: number;\n b: number;\n};\nfunction hexToRgb(hex: string): Rgb | null {\n const sanitizedHex = hex.replaceAll(\"##\", \"#\");\n const colorParts = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(sanitizedHex);\n\n if (!colorParts) {\n return null;\n }\n\n const [, r, g, b] = colorParts;\n\n return {\n r: parseInt(r, 16),\n g: parseInt(g, 16),\n b: parseInt(b, 16),\n } as Rgb;\n}\n\nfunction rgbToHex(r: number, g: number, b: number): string {\n const toHex = (c: number) => `0${c.toString(16)}`.slice(-2);\n return `#${toHex(r)}${toHex(g)}${toHex(b)}`;\n}\n\nexport function getTextColor(color: string): \"#FFF\" | \"#333\" {\n const rgbColor = hexToRgb(color);\n\n if (!rgbColor) {\n return \"#333\";\n }\n\n const { r, g, b } = rgbColor;\n const luma = 0.2126 * r + 0.7152 * g + 0.0722 * b;\n\n return luma < 120 ? \"#FFF\" : \"#333\";\n}\n\nfunction lighten(hex: string, intensity: number): string {\n const color = hexToRgb(`#${hex}`);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r + (255 - color.r) * intensity);\n const g = Math.round(color.g + (255 - color.g) * intensity);\n const b = Math.round(color.b + (255 - color.b) * intensity);\n\n return rgbToHex(r, g, b);\n}\n\nfunction darken(hex: string, intensity: number): string {\n const color = hexToRgb(hex);\n\n if (!color) {\n return \"\";\n }\n\n const r = Math.round(color.r * intensity);\n const g = Math.round(color.g * intensity);\n const b = Math.round(color.b * intensity);\n\n return rgbToHex(r, g, b);\n}\nconst parseColor = (color: any) => {\n if (color.startsWith(\"#\")) {\n // Convert hex to RGB\n let r = parseInt(color.slice(1, 3), 16);\n let g = parseInt(color.slice(3, 5), 16);\n let b = parseInt(color.slice(5, 7), 16);\n return [r, g, b];\n } else if (color.startsWith(\"rgb\")) {\n // Extract RGB values from rgb() format\n return color.match(/\\d+/g).map(Number);\n }\n // Default to white if format is unrecognized\n return [255, 255, 255];\n};\nexport const calculateLuminance = (color: any) => {\n const [r, g, b] = parseColor(color)?.map((c: any) => {\n c /= 255;\n return c <= 0.03928 ? c / 12.92 : ((c + 0.055) / 1.055) ** 2.4;\n });\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n};\n\nfunction getPallette(baseColor: string): Palette {\n const name = baseColor;\n\n const response: Palette = {\n name,\n colors: {\n 500: `#${baseColor}`.replace(\"##\", \"#\"),\n },\n };\n\n const intensityMap: {\n [key: number]: number;\n } = {\n 50: 0.95,\n 100: 0.9,\n 200: 0.75,\n 300: 0.6,\n 400: 0.3,\n 600: 0.9,\n 700: 0.75,\n 800: 0.6,\n 900: 0.49,\n };\n\n [50, 100, 200, 300, 400].forEach((level) => {\n response.colors[level] = lighten(baseColor, intensityMap[level]);\n });\n [600, 700, 800, 900].forEach((level) => {\n response.colors[level] = darken(baseColor, intensityMap[level]);\n });\n\n return response as Palette;\n}\n\nexport { getPallette };\n\n// const hexToRgb = (hex) => {\n// let d = hex?.split(\"#\")[1];\n// var aRgbHex = d?.match(/.{1,2}/g);\n// var aRgb = [\n// parseInt(aRgbHex[0], 16),\n// parseInt(aRgbHex[1], 16),\n// parseInt(aRgbHex[2], 16)\n// ];\n// return aRgb;\n// };\n// const getTextColor = (backColor) => {\n// let rgbArray = hexToRgb(backColor);\n// if (rgbArray[0] * 0.299 + rgbArray[1] * 0.587 + rgbArray[2] * 0.114 > 186) {\n// return \"#000000\";\n// } else {\n// return \"#ffffff\";\n// }\n// };\n// const replaceAt = function (string, index, replacement) {\n// // if (replacement == \"\" || replacement == \" \") {\n// // return (\n// // string.substring(0, index) +\n// // string.substring(index + replacement.length )\n// // );\n// // }\n// const replaced = string.substring(0, index) + replacement + string.substring(index + 1)\n// return replaced\n// };\n\n// export { hexToRgb, getTextColor, replaceAt };\n","import React from \"react\";\n\nimport { cn } from \"@util/index\";\n\nimport { RadiusType } from \"@_types/commonTypes\";\n\nexport type ChipColors =\n | \"green\"\n | \"blue\"\n | \"red\"\n | \"yellow\"\n | \"orange\"\n | \"purple\"\n | \"cyan\"\n | \"hyper\"\n | \"oceanic\";\n\nexport type ChipTypes = React.HTMLAttributes<HTMLSpanElement> & {\n /** The text inside the chip */\n label: string;\n /** The small icon before the chip label */\n icon?: JSX.Element;\n /** The color of the chip, must be a tailwind color */\n color?: ChipColors;\n /** The size of the chip */\n size?: \"small\" | \"normal\" | \"large\";\n /** Enable/Disable the dot before the label of the chip */\n dot?: boolean;\n /** Red/Green dot next to the label of the chip indicating online/offline or available/unavailable */\n dotStatus?: \"available\" | \"unavailable\" | \"none\";\n radius?: RadiusType;\n};\n\nexport const Chip = React.forwardRef<HTMLSpanElement, ChipTypes>(\n (\n { label, size = \"normal\", icon, color, radius = \"inherit\", dot, dotStatus = \"none\", ...rest },\n ref,\n ) => {\n let defaultStyles =\n \"hawa-flex hawa-flex-row hawa-w-fit hawa-gap-1 hawa-items-center hawa-px-2.5 hawa-py-1 hawa-font-bold \";\n let radiusStyles = {\n inherit: \" hawa-rounded\",\n full: \"hawa-rounded-full\",\n none: \"hawa-rounded-none\",\n };\n let sizeStyles = {\n small: \"hawa-h-[15px] hawa-leading-4 hawa-px-0 hawa-py-0 hawa-text-[9px] hawa-gap-0.5 \",\n normal: \"hawa-h-fit hawa-text-xs\",\n large: \"hawa-text-base\",\n };\n let dotStyles = {\n small: \"hawa-flex hawa-h-1 hawa-w-1 hawa-rounded-full\",\n normal: \"hawa-flex hawa-h-2 hawa-w-2 hawa-rounded-full\",\n large: \"hawa-flex hawa-h-3 hawa-w-3 hawa-rounded-full\",\n };\n let dotStatusStyles = {\n none: \"hawa-bg-gray-500 dark:hawa-bg-gray-800\",\n available: \"hawa-bg-green-500\",\n unavailable: \"hawa-bg-red-500\",\n };\n let colorStyles: any = {\n green:\n \"hawa-bg-green-200 hawa-text-green-700 dark:hawa-bg-green-700 dark:hawa-text-green-200\",\n blue: \"hawa-bg-blue-200 hawa-text-blue-700 dark:hawa-bg-blue-700 dark:hawa-text-blue-100\",\n red: \"hawa-bg-red-200 hawa-text-red-700 dark:hawa-bg-red-700 dark:hawa-text-red-100\",\n yellow:\n \"hawa-bg-yellow-200 hawa-text-yellow-700 dark:hawa-bg-yellow-600 dark:hawa-text-black\",\n orange:\n \"hawa-bg-orange-200 hawa-text-orange-700 dark:hawa-bg-orange-700 dark:hawa-text-orange-100\",\n purple:\n \"hawa-bg-purple-200 hawa-text-purple-700 dark:hawa-bg-purple-700 dark:hawa-text-purple-100\",\n cyan: \"hawa-bg-cyan-200 hawa-text-cyan-700 dark:hawa-bg-cyan-700 dark:hawa-text-cyan-100\",\n hyper:\n \"hawa-text-white dark:hawa-text-black hawa-bg-gradient-to-tl hawa-from-pink-500 hawa-via-red-500 hawa-to-yellow-500 \",\n oceanic:\n \"hawa-text-white dark:hawa-text-black hawa-bg-gradient-to-bl hawa-from-green-300 hawa-via-blue-500 hawa-to-purple-600\",\n };\n if (label) {\n return (\n <span\n {...rest}\n ref={ref}\n className={cn(\n defaultStyles,\n sizeStyles[size],\n radiusStyles[radius],\n color ? colorStyles[color] : \"hawa-border hawa-bg-none\",\n rest.className,\n )}\n >\n {dot && <span className={cn(dotStyles[size], dotStatusStyles[dotStatus])}></span>}\n {icon && icon}\n {label}\n </span>\n );\n } else {\n return (\n <span\n {...rest}\n ref={ref}\n className={cn(\n \"hawa-h-2 hawa-w-2 hawa-rounded-full\",\n color ? colorStyles[color] : \"hawa-border hawa-bg-none\",\n )}\n ></span>\n );\n }\n },\n);\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionContent = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Content> & {\n unstyled?: boolean;\n }\n>(({ className, children, ...props }, ref) => (\n <AccordionPrimitive.Content\n ref={ref}\n className={\n !props.unstyled\n ? cn(\n \"hawa-overflow-hidden hawa-text-sm hawa-transition-all data-[state=closed]:hawa-animate-accordion-up data-[state=open]:hawa-animate-accordion-down\",\n className,\n )\n : className\n }\n {...props}\n >\n <div className=\"hawa-bg-background hawa-p-4\">{children}</div>\n </AccordionPrimitive.Content>\n));\nAccordionContent.displayName = AccordionPrimitive.Content.displayName;\n\nexport { AccordionContent };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionTrigger = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Trigger> & {\n unstyled?: boolean;\n hideArrow?: boolean;\n }\n>(({ className, children, ...props }, ref) => (\n <AccordionPrimitive.Header className=\"hawa-flex\">\n <AccordionPrimitive.Trigger\n ref={ref}\n className={\n !props.unstyled\n ? cn(\n \"hawa-flex hawa-flex-1 hawa-items-center hawa-justify-between hawa-bg-muted/50 hawa-p-4 hawa-font-medium hawa-transition-all [&[data-state=open]>svg]:hawa-rotate-180\",\n props.disabled\n ? \"hawa-bg-muted/30 hawa-text-muted-foreground/50\"\n : \"hover:hawa-bg-muted\",\n className,\n )\n : className\n }\n {...props}\n >\n {children}\n {!props.hideArrow && (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className=\"hawa-icon hawa-shrink-0 hawa-transition-transform hawa-duration-200\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n )}\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n));\n\nAccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;\n\nexport { AccordionTrigger };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\nimport { cn } from \"@util/index\";\n\nconst AccordionItem = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <AccordionPrimitive.Item ref={ref} className={cn(className)} {...props} />\n));\n\nAccordionItem.displayName = \"AccordionItem\";\n\nexport { AccordionItem };\n","import * as React from \"react\";\n\nimport * as AccordionPrimitive from \"@radix-ui/react-accordion\";\n\nconst AccordionRoot = AccordionPrimitive.Root;\nexport { AccordionRoot };\n"],"mappings":";;;AAAA,YAAYA,YAAW;AAEvB,YAAYC,yBAAwB;;;ACFpC,SAAS,YAA6B;AACtC,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;;;ACLA,OAAO,WAAW;AAiCX,IAAM,OAAO,MAAM;AAAA,EACxB,CACE,EAAE,OAAO,OAAO,UAAU,MAAM,OAAO,SAAS,WAAW,KAAK,YAAY,QAAQ,GAAG,KAAK,GAC5F,QACG;AACH,QAAI,gBACF;AACF,QAAI,eAAe;AAAA,MACjB,SAAS;AAAA,MACT,MAAM;AAAA,MACN,MAAM;AAAA,IACR;AACA,QAAI,aAAa;AAAA,MACf,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,IACT;AACA,QAAI,YAAY;AAAA,MACd,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO;AAAA,IACT;AACA,QAAI,kBAAkB;AAAA,MACpB,MAAM;AAAA,MACN,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AACA,QAAI,cAAmB;AAAA,MACrB,OACE;AAAA,MACF,MAAM;AAAA,MACN,KAAK;AAAA,MACL,QACE;AAAA,MACF,QACE;AAAA,MACF,QACE;AAAA,MACF,MAAM;AAAA,MACN,OACE;AAAA,MACF,SACE;AAAA,IACJ;AACA,QAAI,OAAO;AACT,aACE;AAAA,QAAC;AAAA;AAAA,UACE,GAAG;AAAA,UACJ;AAAA,UACA,WAAW;AAAA,YACT;AAAA,YACA,WAAW,IAAI;AAAA,YACf,aAAa,MAAM;AAAA,YACnB,QAAQ,YAAY,KAAK,IAAI;AAAA,YAC7B,KAAK;AAAA,UACP;AAAA;AAAA,QAEC,OAAO,oCAAC,UAAK,WAAW,GAAG,UAAU,IAAI,GAAG,gBAAgB,SAAS,CAAC,GAAG;AAAA,QACzE,QAAQ;AAAA,QACR;AAAA,MACH;AAAA,IAEJ,OAAO;AACL,aACE;AAAA,QAAC;AAAA;AAAA,UACE,GAAG;AAAA,UACJ;AAAA,UACA,WAAW;AAAA,YACT;AAAA,YACA,QAAQ,YAAY,KAAK,IAAI;AAAA,UAC/B;AAAA;AAAA,MACD;AAAA,IAEL;AAAA,EACF;AACF;;;AC5GA,YAAYC,YAAW;AAEvB,YAAY,wBAAwB;AAGpC,IAAM,mBAAyB,kBAK7B,CAAC,EAAE,WAAW,UAAU,GAAG,MAAM,GAAG,QACpC;AAAA,EAAoB;AAAA,EAAnB;AAAA,IACC;AAAA,IACA,WACE,CAAC,MAAM,WACH;AAAA,MACE;AAAA,MACA;AAAA,IACF,IACA;AAAA,IAEL,GAAG;AAAA;AAAA,EAEJ,qCAAC,SAAI,WAAU,iCAA+B,QAAS;AACzD,CACD;AACD,iBAAiB,cAAiC,2BAAQ;;;AC1B1D,YAAYC,YAAW;AAEvB,YAAYC,yBAAwB;AAGpC,IAAM,mBAAyB,kBAM7B,CAAC,EAAE,WAAW,UAAU,GAAG,MAAM,GAAG,QACpC,qCAAoB,4BAAnB,EAA0B,WAAU,eACnC;AAAA,EAAoB;AAAA,EAAnB;AAAA,IACC;AAAA,IACA,WACE,CAAC,MAAM,WACH;AAAA,MACE;AAAA,MACA,MAAM,WACF,mDACA;AAAA,MACJ;AAAA,IACF,IACA;AAAA,IAEL,GAAG;AAAA;AAAA,EAEH;AAAA,EACA,CAAC,MAAM,aACN;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,OAAM;AAAA,MACN,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,QAAO;AAAA,MACP,aAAY;AAAA,MACZ,eAAc;AAAA,MACd,gBAAe;AAAA,MACf,WAAU;AAAA;AAAA,IAEV,qCAAC,UAAK,GAAE,gBAAe;AAAA,EACzB;AAEJ,CACF,CACD;AAED,iBAAiB,cAAiC,4BAAQ;;;AJtB1D,IAAM,YAAkB;AAAA,EAItB,CACE;AAAA,IACE;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,GACA,QAEA,qCAAoB,0BAAnB,EAAwB,MAAM,MAAM,MAAM,aAAW,QACpD;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,2BAA2B;AAAA,QACvC,cAAc,WAAW;AAAA,QACzB,cAAc,WAAW;AAAA,MAC3B,CAAC;AAAA;AAAA,IAEA,MAAM,IAAI,CAAC,MAAM,UAChB;AAAA,MAAoB;AAAA,MAAnB;AAAA,QACC,UAAU,KAAK,YAAY;AAAA,QAC3B,WAAW,GAAG,gBAAgB,cAAc;AAAA,QAC5C,KAAK;AAAA,QACL,OAAO,QAAQ,KAAK;AAAA;AAAA,MAEpB;AAAA,QAAC;AAAA;AAAA,UACC,UAAU,KAAK,YAAY;AAAA,UAC3B,WAAW;AAAA,YACT;AAAA,YACA,WAAW,cACP,uDACA;AAAA,cACE,kBAAkB,UAAU;AAAA,cAC5B,sCAAsC,UAAU,MAAM,SAAS;AAAA,YACjE;AAAA,YACJ;AAAA,UACF;AAAA;AAAA,QAEA,qCAAC,UAAK,WAAW,GAAG,2BAA2B,KAAK,QAAQ,YAAY,KACrE,KAAK,SAAQ,KAAE,KAAK,QAAQ,qCAAC,QAAM,GAAG,KAAK,MAAM,CACpD;AAAA,MACF;AAAA,MACA;AAAA,QAAC;AAAA;AAAA,UACC,iBAAe,KAAK,YAAY;AAAA,UAChC,WAAW;AAAA,YACT;AAAA,YACA,WAAW,cACP,uDACA;AAAA,cACE,oCAAoC,UAAU,MAAM,SAAS;AAAA,YAC/D;AAAA,YACJ;AAAA,UACF;AAAA;AAAA,QAEC,KAAK;AAAA,MACR;AAAA,IACF,CACD;AAAA,EACH,CACF;AAEJ;AAEA,UAAU,cAAc;;;AK/FxB,YAAYC,YAAW;AAEvB,YAAYC,yBAAwB;AAGpC,IAAM,gBAAsB,kBAG1B,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,QAC1B,qCAAoB,0BAAnB,EAAwB,KAAU,WAAW,GAAG,SAAS,GAAI,GAAG,OAAO,CACzE;AAED,cAAc,cAAc;;;ACV5B,YAAYC,yBAAwB;AAEpC,IAAM,gBAAmC;","names":["React","AccordionPrimitive","React","React","AccordionPrimitive","React","AccordionPrimitive","AccordionPrimitive"]}
@@ -51,9 +51,7 @@ var import_class_variance_authority = require("class-variance-authority");
51
51
 
52
52
  // elements/helperText/HelperText.tsx
53
53
  var import_react = __toESM(require("react"));
54
- var HelperText = ({
55
- helperText
56
- }) => /* @__PURE__ */ import_react.default.createElement(
54
+ var HelperText = ({ helperText }) => /* @__PURE__ */ import_react.default.createElement(
57
55
  "p",
58
56
  {
59
57
  className: cn(
@@ -104,38 +102,31 @@ var Tooltip = ({
104
102
  delayDuration = 300,
105
103
  ...props
106
104
  }) => {
107
- return /* @__PURE__ */ import_react2.default.createElement(
108
- TooltipPrimitive.TooltipProvider,
105
+ return /* @__PURE__ */ import_react2.default.createElement(TooltipPrimitive.TooltipProvider, { delayDuration, ...providerProps }, /* @__PURE__ */ import_react2.default.createElement(
106
+ TooltipPrimitive.Root,
109
107
  {
110
- delayDuration,
111
- ...providerProps
108
+ open: !disabled && open,
109
+ defaultOpen,
110
+ onOpenChange,
111
+ ...props
112
112
  },
113
+ /* @__PURE__ */ import_react2.default.createElement(TooltipPrimitive.Trigger, { ...triggerProps }, children),
113
114
  /* @__PURE__ */ import_react2.default.createElement(
114
- TooltipPrimitive.Root,
115
+ TooltipContent,
115
116
  {
116
- open: !disabled && open,
117
- defaultOpen,
118
- onOpenChange,
119
- ...props
117
+ size,
118
+ side,
119
+ align: "center",
120
+ ...contentProps,
121
+ style: {
122
+ ...contentProps == null ? void 0 : contentProps.style,
123
+ maxWidth: "var(--radix-tooltip-content-available-width)",
124
+ maxHeight: "var(--radix-tooltip-content-available-height)"
125
+ }
120
126
  },
121
- /* @__PURE__ */ import_react2.default.createElement(TooltipPrimitive.Trigger, { ...triggerProps }, children),
122
- /* @__PURE__ */ import_react2.default.createElement(
123
- TooltipContent,
124
- {
125
- size,
126
- side,
127
- align: "center",
128
- ...contentProps,
129
- style: {
130
- ...contentProps == null ? void 0 : contentProps.style,
131
- maxWidth: "var(--radix-tooltip-content-available-width)",
132
- maxHeight: "var(--radix-tooltip-content-available-height)"
133
- }
134
- },
135
- content
136
- )
127
+ content
137
128
  )
138
- );
129
+ ));
139
130
  };
140
131
 
141
132
  // elements/label/Label.tsx
@@ -212,57 +203,42 @@ var Loading = ({
212
203
  };
213
204
  switch (design.split("-")[0]) {
214
205
  case "dots":
215
- return /* @__PURE__ */ import_react3.default.createElement(
206
+ return /* @__PURE__ */ import_react3.default.createElement("div", { className: cn("hawa-flex hawa-flex-row hawa-gap-2", classNames == null ? void 0 : classNames.container) }, /* @__PURE__ */ import_react3.default.createElement(
216
207
  "div",
217
208
  {
218
209
  className: cn(
219
- "hawa-flex hawa-flex-row hawa-gap-2",
220
- classNames == null ? void 0 : classNames.container
210
+ "hawa-animate-bounce hawa-rounded-full hawa-delay-100 hawa-repeat-infinite",
211
+ size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
212
+ animationStyles[design.split("-")[1]],
213
+ color ? color : "hawa-bg-primary"
221
214
  )
222
- },
223
- /* @__PURE__ */ import_react3.default.createElement(
224
- "div",
225
- {
226
- className: cn(
227
- "hawa-animate-bounce hawa-rounded-full hawa-delay-100 hawa-repeat-infinite",
228
- size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
229
- animationStyles[design.split("-")[1]],
230
- color ? color : "hawa-bg-primary"
231
- )
232
- }
233
- ),
234
- /* @__PURE__ */ import_react3.default.createElement(
235
- "div",
236
- {
237
- className: cn(
238
- "hawa-animate-bounce hawa-rounded-full hawa-delay-200 hawa-repeat-infinite",
239
- size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
240
- animationStyles[design.split("-")[1]],
241
- color ? color : "hawa-bg-primary"
242
- )
243
- }
244
- ),
245
- /* @__PURE__ */ import_react3.default.createElement(
246
- "div",
247
- {
248
- className: cn(
249
- "hawa-animate-bounce hawa-rounded-full hawa-delay-300 hawa-repeat-infinite",
250
- size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
251
- animationStyles[design.split("-")[1]],
252
- color ? color : "hawa-bg-primary"
253
- )
254
- }
255
- )
256
- );
215
+ }
216
+ ), /* @__PURE__ */ import_react3.default.createElement(
217
+ "div",
218
+ {
219
+ className: cn(
220
+ "hawa-animate-bounce hawa-rounded-full hawa-delay-200 hawa-repeat-infinite",
221
+ size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
222
+ animationStyles[design.split("-")[1]],
223
+ color ? color : "hawa-bg-primary"
224
+ )
225
+ }
226
+ ), /* @__PURE__ */ import_react3.default.createElement(
227
+ "div",
228
+ {
229
+ className: cn(
230
+ "hawa-animate-bounce hawa-rounded-full hawa-delay-300 hawa-repeat-infinite",
231
+ size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
232
+ animationStyles[design.split("-")[1]],
233
+ color ? color : "hawa-bg-primary"
234
+ )
235
+ }
236
+ ));
257
237
  case "square":
258
238
  return /* @__PURE__ */ import_react3.default.createElement(
259
239
  "svg",
260
240
  {
261
- className: cn(
262
- "squircle-container",
263
- sizeStyles[size],
264
- classNames == null ? void 0 : classNames.container
265
- ),
241
+ className: cn("squircle-container", sizeStyles[size], classNames == null ? void 0 : classNames.container),
266
242
  viewBox: "0 0 35 35",
267
243
  height: "35",
268
244
  width: "35"
@@ -303,11 +279,7 @@ var Loading = ({
303
279
  height: "37",
304
280
  width: "37",
305
281
  preserveAspectRatio: "xMidYMid meet",
306
- className: cn(
307
- "squircle-container",
308
- sizeStyles[size],
309
- classNames == null ? void 0 : classNames.container
310
- )
282
+ className: cn("squircle-container", sizeStyles[size], classNames == null ? void 0 : classNames.container)
311
283
  },
312
284
  /* @__PURE__ */ import_react3.default.createElement(
313
285
  "path",
@@ -350,11 +322,7 @@ var Loading = ({
350
322
  viewBox: "0 0 40 40",
351
323
  height: "40",
352
324
  width: "40",
353
- className: cn(
354
- "circle-container",
355
- sizeStyles[size],
356
- classNames == null ? void 0 : classNames.container
357
- )
325
+ className: cn("circle-container", sizeStyles[size], classNames == null ? void 0 : classNames.container)
358
326
  },
359
327
  /* @__PURE__ */ import_react3.default.createElement(
360
328
  "circle",
@@ -585,20 +553,9 @@ var Alert = ({
585
553
  ), props.actions && /* @__PURE__ */ import_react4.default.createElement(
586
554
  "div",
587
555
  {
588
- className: cn(
589
- "hawa-mt-2 hawa-flex hawa-flex-row hawa-gap-2",
590
- classNames == null ? void 0 : classNames.actions
591
- )
556
+ className: cn("hawa-mt-2 hawa-flex hawa-flex-row hawa-gap-2", classNames == null ? void 0 : classNames.actions)
592
557
  },
593
- props.actions.map((act, index) => /* @__PURE__ */ import_react4.default.createElement(
594
- Button,
595
- {
596
- key: index,
597
- variant: act.variant,
598
- onClick: act.onClick()
599
- },
600
- act.label
601
- ))
558
+ props.actions.map((act, index) => /* @__PURE__ */ import_react4.default.createElement(Button, { key: index, variant: act.variant, onClick: act.onClick() }, act.label))
602
559
  ))),
603
560
  !props.persistent && /* @__PURE__ */ import_react4.default.createElement(
604
561
  "button",
@@ -620,9 +577,7 @@ var Alert = ({
620
577
  setClosed(true);
621
578
  setTimeout(() => {
622
579
  if (alertRef == null ? void 0 : alertRef.current) {
623
- alertRef == null ? void 0 : alertRef.current.removeChild(
624
- alertRef == null ? void 0 : alertRef.current.children[0]
625
- );
580
+ alertRef == null ? void 0 : alertRef.current.removeChild(alertRef == null ? void 0 : alertRef.current.children[0]);
626
581
  }
627
582
  }, 200);
628
583
  }