@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
@@ -48,21 +48,15 @@ function useClickOutside(handler, events, nodes) {
48
48
  const { target } = event != null ? event : {};
49
49
  if (Array.isArray(nodes)) {
50
50
  const shouldIgnore = (target == null ? void 0 : target.hasAttribute("data-ignore-outside-clicks")) || !document.body.contains(target) && target.tagName !== "HTML";
51
- const shouldTrigger = nodes.every(
52
- (node) => !!node && !event.composedPath().includes(node)
53
- );
51
+ const shouldTrigger = nodes.every((node) => !!node && !event.composedPath().includes(node));
54
52
  shouldTrigger && !shouldIgnore && handler();
55
53
  } else if (ref.current && !ref.current.contains(target)) {
56
54
  handler();
57
55
  }
58
56
  };
59
- (events || DEFAULT_EVENTS).forEach(
60
- (fn) => document.addEventListener(fn, listener)
61
- );
57
+ (events || DEFAULT_EVENTS).forEach((fn) => document.addEventListener(fn, listener));
62
58
  return () => {
63
- (events || DEFAULT_EVENTS).forEach(
64
- (fn) => document.removeEventListener(fn, listener)
65
- );
59
+ (events || DEFAULT_EVENTS).forEach((fn) => document.removeEventListener(fn, listener));
66
60
  };
67
61
  }, [ref, handler, nodes]);
68
62
  return ref;
@@ -84,9 +78,7 @@ var import_class_variance_authority = require("class-variance-authority");
84
78
 
85
79
  // elements/helperText/HelperText.tsx
86
80
  var import_react2 = __toESM(require("react"));
87
- var HelperText = ({
88
- helperText
89
- }) => /* @__PURE__ */ import_react2.default.createElement(
81
+ var HelperText = ({ helperText }) => /* @__PURE__ */ import_react2.default.createElement(
90
82
  "p",
91
83
  {
92
84
  className: cn(
@@ -137,38 +129,31 @@ var Tooltip = ({
137
129
  delayDuration = 300,
138
130
  ...props
139
131
  }) => {
140
- return /* @__PURE__ */ import_react3.default.createElement(
141
- TooltipPrimitive.TooltipProvider,
132
+ return /* @__PURE__ */ import_react3.default.createElement(TooltipPrimitive.TooltipProvider, { delayDuration, ...providerProps }, /* @__PURE__ */ import_react3.default.createElement(
133
+ TooltipPrimitive.Root,
142
134
  {
143
- delayDuration,
144
- ...providerProps
135
+ open: !disabled && open,
136
+ defaultOpen,
137
+ onOpenChange,
138
+ ...props
145
139
  },
140
+ /* @__PURE__ */ import_react3.default.createElement(TooltipPrimitive.Trigger, { ...triggerProps }, children),
146
141
  /* @__PURE__ */ import_react3.default.createElement(
147
- TooltipPrimitive.Root,
142
+ TooltipContent,
148
143
  {
149
- open: !disabled && open,
150
- defaultOpen,
151
- onOpenChange,
152
- ...props
144
+ size,
145
+ side,
146
+ align: "center",
147
+ ...contentProps,
148
+ style: {
149
+ ...contentProps == null ? void 0 : contentProps.style,
150
+ maxWidth: "var(--radix-tooltip-content-available-width)",
151
+ maxHeight: "var(--radix-tooltip-content-available-height)"
152
+ }
153
153
  },
154
- /* @__PURE__ */ import_react3.default.createElement(TooltipPrimitive.Trigger, { ...triggerProps }, children),
155
- /* @__PURE__ */ import_react3.default.createElement(
156
- TooltipContent,
157
- {
158
- size,
159
- side,
160
- align: "center",
161
- ...contentProps,
162
- style: {
163
- ...contentProps == null ? void 0 : contentProps.style,
164
- maxWidth: "var(--radix-tooltip-content-available-width)",
165
- maxHeight: "var(--radix-tooltip-content-available-height)"
166
- }
167
- },
168
- content
169
- )
154
+ content
170
155
  )
171
- );
156
+ ));
172
157
  };
173
158
 
174
159
  // elements/label/Label.tsx
@@ -245,57 +230,42 @@ var Loading = ({
245
230
  };
246
231
  switch (design.split("-")[0]) {
247
232
  case "dots":
248
- return /* @__PURE__ */ import_react4.default.createElement(
233
+ return /* @__PURE__ */ import_react4.default.createElement("div", { className: cn("hawa-flex hawa-flex-row hawa-gap-2", classNames == null ? void 0 : classNames.container) }, /* @__PURE__ */ import_react4.default.createElement(
249
234
  "div",
250
235
  {
251
236
  className: cn(
252
- "hawa-flex hawa-flex-row hawa-gap-2",
253
- classNames == null ? void 0 : classNames.container
237
+ "hawa-animate-bounce hawa-rounded-full hawa-delay-100 hawa-repeat-infinite",
238
+ size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
239
+ animationStyles[design.split("-")[1]],
240
+ color ? color : "hawa-bg-primary"
254
241
  )
255
- },
256
- /* @__PURE__ */ import_react4.default.createElement(
257
- "div",
258
- {
259
- className: cn(
260
- "hawa-animate-bounce hawa-rounded-full hawa-delay-100 hawa-repeat-infinite",
261
- size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
262
- animationStyles[design.split("-")[1]],
263
- color ? color : "hawa-bg-primary"
264
- )
265
- }
266
- ),
267
- /* @__PURE__ */ import_react4.default.createElement(
268
- "div",
269
- {
270
- className: cn(
271
- "hawa-animate-bounce hawa-rounded-full hawa-delay-200 hawa-repeat-infinite",
272
- size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
273
- animationStyles[design.split("-")[1]],
274
- color ? color : "hawa-bg-primary"
275
- )
276
- }
277
- ),
278
- /* @__PURE__ */ import_react4.default.createElement(
279
- "div",
280
- {
281
- className: cn(
282
- "hawa-animate-bounce hawa-rounded-full hawa-delay-300 hawa-repeat-infinite",
283
- size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
284
- animationStyles[design.split("-")[1]],
285
- color ? color : "hawa-bg-primary"
286
- )
287
- }
288
- )
289
- );
242
+ }
243
+ ), /* @__PURE__ */ import_react4.default.createElement(
244
+ "div",
245
+ {
246
+ className: cn(
247
+ "hawa-animate-bounce hawa-rounded-full hawa-delay-200 hawa-repeat-infinite",
248
+ size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
249
+ animationStyles[design.split("-")[1]],
250
+ color ? color : "hawa-bg-primary"
251
+ )
252
+ }
253
+ ), /* @__PURE__ */ import_react4.default.createElement(
254
+ "div",
255
+ {
256
+ className: cn(
257
+ "hawa-animate-bounce hawa-rounded-full hawa-delay-300 hawa-repeat-infinite",
258
+ size === "button" ? "hawa-h-2 hawa-w-2" : sizeStyles[size],
259
+ animationStyles[design.split("-")[1]],
260
+ color ? color : "hawa-bg-primary"
261
+ )
262
+ }
263
+ ));
290
264
  case "square":
291
265
  return /* @__PURE__ */ import_react4.default.createElement(
292
266
  "svg",
293
267
  {
294
- className: cn(
295
- "squircle-container",
296
- sizeStyles[size],
297
- classNames == null ? void 0 : classNames.container
298
- ),
268
+ className: cn("squircle-container", sizeStyles[size], classNames == null ? void 0 : classNames.container),
299
269
  viewBox: "0 0 35 35",
300
270
  height: "35",
301
271
  width: "35"
@@ -336,11 +306,7 @@ var Loading = ({
336
306
  height: "37",
337
307
  width: "37",
338
308
  preserveAspectRatio: "xMidYMid meet",
339
- className: cn(
340
- "squircle-container",
341
- sizeStyles[size],
342
- classNames == null ? void 0 : classNames.container
343
- )
309
+ className: cn("squircle-container", sizeStyles[size], classNames == null ? void 0 : classNames.container)
344
310
  },
345
311
  /* @__PURE__ */ import_react4.default.createElement(
346
312
  "path",
@@ -383,11 +349,7 @@ var Loading = ({
383
349
  viewBox: "0 0 40 40",
384
350
  height: "40",
385
351
  width: "40",
386
- className: cn(
387
- "circle-container",
388
- sizeStyles[size],
389
- classNames == null ? void 0 : classNames.container
390
- )
352
+ className: cn("circle-container", sizeStyles[size], classNames == null ? void 0 : classNames.container)
391
353
  },
392
354
  /* @__PURE__ */ import_react4.default.createElement(
393
355
  "circle",
@@ -694,17 +656,11 @@ var DropdownMenuSeparator = React6.forwardRef(({ className, ...props }, ref) =>
694
656
  }
695
657
  ));
696
658
  DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
697
- var DropdownMenuShortcut = ({
698
- className,
699
- ...props
700
- }) => {
659
+ var DropdownMenuShortcut = ({ className, ...props }) => {
701
660
  return /* @__PURE__ */ React6.createElement(
702
661
  "span",
703
662
  {
704
- className: cn(
705
- "hawa-text-xs hawa-tracking-widest hawa-opacity-60",
706
- className
707
- ),
663
+ className: cn("hawa-text-xs hawa-tracking-widest hawa-opacity-60", className),
708
664
  ...props
709
665
  }
710
666
  );
@@ -741,178 +697,144 @@ var DropdownMenu = ({
741
697
  default: "hawa-px-2 hawa-py-3 ",
742
698
  sm: "hawa-text-xs hawa-px-1.5 hawa-py-1.5 "
743
699
  };
744
- let [values, setValues] = React6.useState(
745
- items.map((item) => item.currentOption)
746
- );
747
- return /* @__PURE__ */ React6.createElement(
748
- DropdownMenuRoot,
700
+ let [values, setValues] = React6.useState(items.map((item) => item.currentOption));
701
+ return /* @__PURE__ */ React6.createElement(DropdownMenuRoot, { onOpenChange, open, modal: false, dir: direction }, /* @__PURE__ */ React6.createElement(
702
+ DropdownMenuTrigger,
749
703
  {
750
- onOpenChange,
751
- open,
752
- modal: false,
753
- dir: direction
704
+ asChild: true,
705
+ className: cn(classNames == null ? void 0 : classNames.trigger, triggerClassname),
706
+ ...triggerProps
754
707
  },
755
- /* @__PURE__ */ React6.createElement(
756
- DropdownMenuTrigger,
757
- {
758
- asChild: true,
759
- className: cn(classNames == null ? void 0 : classNames.trigger, triggerClassname),
760
- ...triggerProps
761
- },
762
- trigger
763
- ),
764
- /* @__PURE__ */ React6.createElement(import_react5.Portal, null, /* @__PURE__ */ React6.createElement(
765
- DropdownMenuContent,
766
- {
767
- side,
768
- sideOffset,
769
- align,
770
- alignOffset,
771
- className: cn(
772
- className,
773
- classNames == null ? void 0 : classNames.content,
774
- widthStyles[width],
775
- "hawa-flex hawa-flex-col hawa-gap-1 hawa-overflow-y-auto"
776
- ),
777
- style: {
778
- maxHeight: "var(--radix-dropdown-menu-content-available-height)"
779
- },
780
- ...contentProps
708
+ trigger
709
+ ), /* @__PURE__ */ React6.createElement(import_react5.Portal, null, /* @__PURE__ */ React6.createElement(
710
+ DropdownMenuContent,
711
+ {
712
+ side,
713
+ sideOffset,
714
+ align,
715
+ alignOffset,
716
+ className: cn(
717
+ className,
718
+ classNames == null ? void 0 : classNames.content,
719
+ widthStyles[width],
720
+ "hawa-flex hawa-flex-col hawa-gap-1 hawa-overflow-y-auto"
721
+ ),
722
+ style: {
723
+ maxHeight: "var(--radix-dropdown-menu-content-available-height)"
781
724
  },
782
- header && header,
783
- items && items.map((item, index) => {
784
- var _a;
785
- const ItemLinkComponent = item.slug ? LinkComponent : "a";
786
- if (item.itemType === "separator") {
787
- return /* @__PURE__ */ React6.createElement(
788
- DropdownMenuSeparator,
789
- {
790
- key: index,
791
- className: classNames == null ? void 0 : classNames.separator
792
- }
793
- );
794
- } else if (item.itemType === "label") {
795
- return /* @__PURE__ */ React6.createElement(DropdownMenuLabel, { key: index }, item.label);
796
- } else if (item.itemType === "radio") {
797
- let dd = item.currentOption;
798
- return /* @__PURE__ */ React6.createElement(DropdownMenuSub, { key: index }, /* @__PURE__ */ React6.createElement(
799
- DropdownMenuSubTrigger,
800
- {
801
- dir: direction,
802
- className: cn(sizeStyles[size])
803
- },
804
- item.icon && item.icon,
805
- item.label && item.label
806
- ), /* @__PURE__ */ React6.createElement(DropdownMenuSubContent, null, /* @__PURE__ */ React6.createElement(
807
- DropdownMenuRadioGroup,
808
- {
809
- value: values[index],
810
- onValueChange: (e) => {
811
- let newValues = [...values];
812
- newValues[index] = e;
813
- setValues(newValues);
814
- console.log("changing to ", e);
815
- if (item.onOptionChange) {
816
- item.onOptionChange(e);
817
- }
725
+ ...contentProps
726
+ },
727
+ header && header,
728
+ items && items.map((item, index) => {
729
+ var _a;
730
+ const ItemLinkComponent = item.slug ? LinkComponent : "a";
731
+ if (item.itemType === "separator") {
732
+ return /* @__PURE__ */ React6.createElement(DropdownMenuSeparator, { key: index, className: classNames == null ? void 0 : classNames.separator });
733
+ } else if (item.itemType === "label") {
734
+ return /* @__PURE__ */ React6.createElement(DropdownMenuLabel, { key: index }, item.label);
735
+ } else if (item.itemType === "radio") {
736
+ let dd = item.currentOption;
737
+ return /* @__PURE__ */ React6.createElement(DropdownMenuSub, { key: index }, /* @__PURE__ */ React6.createElement(DropdownMenuSubTrigger, { dir: direction, className: cn(sizeStyles[size]) }, item.icon && item.icon, item.label && item.label), /* @__PURE__ */ React6.createElement(DropdownMenuSubContent, null, /* @__PURE__ */ React6.createElement(
738
+ DropdownMenuRadioGroup,
739
+ {
740
+ value: values[index],
741
+ onValueChange: (e) => {
742
+ let newValues = [...values];
743
+ newValues[index] = e;
744
+ setValues(newValues);
745
+ console.log("changing to ", e);
746
+ if (item.onOptionChange) {
747
+ item.onOptionChange(e);
818
748
  }
819
- },
820
- (_a = item.options) == null ? void 0 : _a.map((opt, i) => /* @__PURE__ */ React6.createElement(DropdownMenuRadioItem, { key: i, value: opt.value }, opt.label))
821
- )));
822
- } else if (item.itemType === "custom") {
823
- return /* @__PURE__ */ React6.createElement("div", { key: index }, item.content);
824
- } else {
825
- return item.subitems ? /* @__PURE__ */ React6.createElement(DropdownMenuSub, { key: index }, /* @__PURE__ */ React6.createElement(
826
- DropdownMenuSubTrigger,
827
- {
828
- dir: direction,
829
- className: cn(sizeStyles[size])
830
- },
831
- item.icon && item.icon,
832
- item.label && item.label
833
- ), /* @__PURE__ */ React6.createElement(import_react5.Portal, null, /* @__PURE__ */ React6.createElement(DropdownMenuSubContent, null, item.subitems.map((subitem, subIndex) => {
834
- const SubitemLinkComponent = subitem.slug ? LinkComponent : "a";
835
- return /* @__PURE__ */ React6.createElement(
836
- DropdownMenuItem,
837
- {
838
- key: subIndex,
839
- LinkComponent: SubitemLinkComponent,
840
- slug: subitem.slug,
841
- disabled: subitem.disabled,
842
- className: cn(
843
- sizeStyles[size],
844
- !item.icon && !item.label ? "hawa-px-0 hawa-py-0 focus:hawa-bg-transparent" : "focus:hawa-bg-accent"
845
- ),
846
- onMouseDown: (event) => {
847
- if (event.button === 1 || event.button === 0 && event.ctrlKey) {
848
- event.preventDefault();
849
- if (subitem.onMiddleClick) {
850
- subitem.onMiddleClick(item.value);
851
- }
852
- }
853
- },
854
- onSelect: () => {
855
- subitem.action && subitem.action();
856
- if (onItemSelect) {
857
- onItemSelect(subitem.value);
858
- }
859
- }
860
- },
861
- subitem.icon && subitem.icon,
862
- subitem.label && subitem.label
863
- );
864
- })))) : /* @__PURE__ */ React6.createElement(
749
+ }
750
+ },
751
+ (_a = item.options) == null ? void 0 : _a.map((opt, i) => /* @__PURE__ */ React6.createElement(DropdownMenuRadioItem, { key: i, value: opt.value }, opt.label))
752
+ )));
753
+ } else if (item.itemType === "custom") {
754
+ return /* @__PURE__ */ React6.createElement("div", { key: index }, item.content);
755
+ } else {
756
+ return item.subitems ? /* @__PURE__ */ React6.createElement(DropdownMenuSub, { key: index }, /* @__PURE__ */ React6.createElement(DropdownMenuSubTrigger, { dir: direction, className: cn(sizeStyles[size]) }, item.icon && item.icon, item.label && item.label), /* @__PURE__ */ React6.createElement(import_react5.Portal, null, /* @__PURE__ */ React6.createElement(DropdownMenuSubContent, null, item.subitems.map((subitem, subIndex) => {
757
+ const SubitemLinkComponent = subitem.slug ? LinkComponent : "a";
758
+ return /* @__PURE__ */ React6.createElement(
865
759
  DropdownMenuItem,
866
760
  {
867
- LinkComponent: ItemLinkComponent,
868
- slug: item.slug,
869
- key: index,
870
- disabled: item.disabled,
761
+ key: subIndex,
762
+ LinkComponent: SubitemLinkComponent,
763
+ slug: subitem.slug,
764
+ disabled: subitem.disabled,
765
+ className: cn(
766
+ sizeStyles[size],
767
+ !item.icon && !item.label ? "hawa-px-0 hawa-py-0 focus:hawa-bg-transparent" : "focus:hawa-bg-accent"
768
+ ),
871
769
  onMouseDown: (event) => {
872
770
  if (event.button === 1 || event.button === 0 && event.ctrlKey) {
873
771
  event.preventDefault();
874
- if (item.onMiddleClick) {
875
- item.onMiddleClick(item.value);
772
+ if (subitem.onMiddleClick) {
773
+ subitem.onMiddleClick(item.value);
876
774
  }
877
775
  }
878
776
  },
879
- onClick: (event) => {
880
- if (item.onClick) {
881
- item.onClick(item.value);
777
+ onSelect: () => {
778
+ subitem.action && subitem.action();
779
+ if (onItemSelect) {
780
+ onItemSelect(subitem.value);
882
781
  }
883
- },
884
- onSelect: (e) => {
885
- if (item.presist) {
886
- e.preventDefault();
782
+ }
783
+ },
784
+ subitem.icon && subitem.icon,
785
+ subitem.label && subitem.label
786
+ );
787
+ })))) : /* @__PURE__ */ React6.createElement(
788
+ DropdownMenuItem,
789
+ {
790
+ LinkComponent: ItemLinkComponent,
791
+ slug: item.slug,
792
+ key: index,
793
+ disabled: item.disabled,
794
+ onMouseDown: (event) => {
795
+ if (event.button === 1 || event.button === 0 && event.ctrlKey) {
796
+ event.preventDefault();
797
+ if (item.onMiddleClick) {
798
+ item.onMiddleClick(item.value);
887
799
  }
888
- if (item.action) {
889
- item.action();
890
- if (onItemSelect) {
891
- onItemSelect(item.value);
892
- }
893
- } else {
894
- if (onItemSelect) {
895
- onItemSelect(item.value);
896
- }
800
+ }
801
+ },
802
+ onClick: (event) => {
803
+ if (item.onClick) {
804
+ item.onClick(item.value);
805
+ }
806
+ },
807
+ onSelect: (e) => {
808
+ if (item.presist) {
809
+ e.preventDefault();
810
+ }
811
+ if (item.action) {
812
+ item.action();
813
+ if (onItemSelect) {
814
+ onItemSelect(item.value);
897
815
  }
898
- },
899
- end: item.end,
900
- shortcut: item.shortcut,
901
- badged: item.badged,
902
- className: cn(
903
- sizeStyles[size],
904
- !item.icon && !item.label ? "hawa-px-0 hawa-py-0 focus:hawa-bg-transparent" : "focus:hawa-bg-accent",
905
- item.presist && "focus:hawa-bg-transparent",
906
- classNames == null ? void 0 : classNames.item
907
- )
816
+ } else {
817
+ if (onItemSelect) {
818
+ onItemSelect(item.value);
819
+ }
820
+ }
908
821
  },
909
- item.icon && item.icon,
910
- item.label && item.label
911
- );
912
- }
913
- })
914
- ))
915
- );
822
+ end: item.end,
823
+ shortcut: item.shortcut,
824
+ badged: item.badged,
825
+ className: cn(
826
+ sizeStyles[size],
827
+ !item.icon && !item.label ? "hawa-px-0 hawa-py-0 focus:hawa-bg-transparent" : "focus:hawa-bg-accent",
828
+ item.presist && "focus:hawa-bg-transparent",
829
+ classNames == null ? void 0 : classNames.item
830
+ )
831
+ },
832
+ item.icon && item.icon,
833
+ item.label && item.label
834
+ );
835
+ }
836
+ })
837
+ )));
916
838
  };
917
839
 
918
840
  // icons/Emojis.tsx
@@ -952,16 +874,7 @@ var AccordionPrimitive = __toESM(require("@radix-ui/react-accordion"));
952
874
  // elements/chip/Chip.tsx
953
875
  var import_react9 = __toESM(require("react"));
954
876
  var Chip = import_react9.default.forwardRef(
955
- ({
956
- label,
957
- size = "normal",
958
- icon,
959
- color,
960
- radius = "inherit",
961
- dot,
962
- dotStatus = "none",
963
- ...rest
964
- }, ref) => {
877
+ ({ label, size = "normal", icon, color, radius = "inherit", dot, dotStatus = "none", ...rest }, ref) => {
965
878
  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 ";
966
879
  let radiusStyles = {
967
880
  inherit: " hawa-rounded",
@@ -1008,12 +921,7 @@ var Chip = import_react9.default.forwardRef(
1008
921
  rest.className
1009
922
  )
1010
923
  },
1011
- dot && /* @__PURE__ */ import_react9.default.createElement(
1012
- "span",
1013
- {
1014
- className: cn(dotStyles[size], dotStatusStyles[dotStatus])
1015
- }
1016
- ),
924
+ dot && /* @__PURE__ */ import_react9.default.createElement("span", { className: cn(dotStyles[size], dotStatusStyles[dotStatus]) }),
1017
925
  icon && icon,
1018
926
  label
1019
927
  );
@@ -1038,28 +946,19 @@ var Accordion = AccordionPrimitive.Root;
1038
946
  var triggerStyles = "hawa-flex hawa-flex-1 hawa-items-center hawa-duration-75 hawa-select-none hawa-cursor-pointer hawa-rounded hawa-justify-between hawa-p-2 hawa-px-3 hawa-font-medium hawa-transition-all [&[data-state=open]>svg]:hawa--rotate-90";
1039
947
  var AccordionItem = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React11.createElement(AccordionPrimitive.Item, { ref, className: cn(className), ...props }));
1040
948
  AccordionItem.displayName = "AccordionItem";
1041
- var AccordionTrigger = React11.forwardRef(({ className, showArrow, children, ...props }, ref) => /* @__PURE__ */ React11.createElement(AccordionPrimitive.Header, { className: "flex" }, /* @__PURE__ */ React11.createElement(
1042
- AccordionPrimitive.Trigger,
949
+ var AccordionTrigger = React11.forwardRef(({ className, showArrow, children, ...props }, ref) => /* @__PURE__ */ React11.createElement(AccordionPrimitive.Header, { className: "flex" }, /* @__PURE__ */ React11.createElement(AccordionPrimitive.Trigger, { ref, className: cn(triggerStyles, className), ...props }, children, showArrow && /* @__PURE__ */ React11.createElement(
950
+ "svg",
1043
951
  {
1044
- ref,
1045
- className: cn(triggerStyles, className),
1046
- ...props
952
+ "aria-label": "Chevron Right Icon",
953
+ stroke: "currentColor",
954
+ fill: "currentColor",
955
+ viewBox: "0 0 16 16",
956
+ height: "1em",
957
+ width: "1em",
958
+ className: "hawa-icon hawa-shrink-0 hawa-rotate-90 hawa-transition-transform hawa-duration-200"
1047
959
  },
1048
- children,
1049
- showArrow && /* @__PURE__ */ React11.createElement(
1050
- "svg",
1051
- {
1052
- "aria-label": "Chevron Right Icon",
1053
- stroke: "currentColor",
1054
- fill: "currentColor",
1055
- viewBox: "0 0 16 16",
1056
- height: "1em",
1057
- width: "1em",
1058
- className: "hawa-icon hawa-shrink-0 hawa-rotate-90 hawa-transition-transform hawa-duration-200"
1059
- },
1060
- /* @__PURE__ */ React11.createElement("path", { d: "M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z" })
1061
- )
1062
- )));
960
+ /* @__PURE__ */ React11.createElement("path", { d: "M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z" })
961
+ ))));
1063
962
  AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
1064
963
  var AccordionContent = React11.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ React11.createElement(
1065
964
  AccordionPrimitive.Content,
@@ -1113,111 +1012,78 @@ var SidebarGroup = ({
1113
1012
  ))
1114
1013
  )));
1115
1014
  };
1116
- var SidebarItem = ({
1117
- item,
1118
- onItemClick,
1119
- onSubItemClick,
1120
- direction,
1121
- isOpen = true,
1122
- LinkComponent,
1123
- ...props
1124
- }) => {
1015
+ var SidebarItem = ({ item, onItemClick, onSubItemClick, direction, isOpen = true, LinkComponent, ...props }) => {
1125
1016
  const getSelectedStyle = (value) => {
1126
1017
  return props.selectedItem === value ? "hawa-bg-primary/90 hawa-text-primary-foreground hawa-cursor-default" : "hover:hawa-bg-primary/10";
1127
1018
  };
1128
1019
  if (item.subitems) {
1129
- return /* @__PURE__ */ React11.createElement(
1130
- AccordionItem,
1020
+ return /* @__PURE__ */ React11.createElement(AccordionItem, { value: item.value, className: "hawa-overflow-x-clip", dir: direction }, /* @__PURE__ */ React11.createElement(
1021
+ AccordionTrigger,
1131
1022
  {
1132
- value: item.value,
1133
- className: "hawa-overflow-x-clip",
1134
- dir: direction
1023
+ className: cn(
1024
+ "hawa-w-full hawa-overflow-x-clip",
1025
+ props.selectedItem === item.value ? "hawa-cursor-default hawa-bg-primary hawa-text-primary-foreground" : "hawa-h-10 hover:hawa-bg-primary/10",
1026
+ item.subitems && item.subitems.some((subitem) => props.selectedItem === subitem.value) ? "hawa-bg-primary/80 hawa-text-primary-foreground hover:hawa-bg-primary/80" : ""
1027
+ ),
1028
+ showArrow: isOpen
1135
1029
  },
1136
1030
  /* @__PURE__ */ React11.createElement(
1137
- AccordionTrigger,
1031
+ "div",
1138
1032
  {
1139
1033
  className: cn(
1140
- "hawa-w-full hawa-overflow-x-clip",
1141
- props.selectedItem === item.value ? "hawa-cursor-default hawa-bg-primary hawa-text-primary-foreground" : "hawa-h-10 hover:hawa-bg-primary/10",
1142
- item.subitems && item.subitems.some(
1143
- (subitem) => props.selectedItem === subitem.value
1144
- ) ? "hawa-bg-primary/80 hawa-text-primary-foreground hover:hawa-bg-primary/80" : ""
1145
- ),
1146
- showArrow: isOpen
1034
+ "hawa-flex hawa-h-fit hawa-w-fit hawa-flex-row hawa-items-center hawa-gap-2"
1035
+ )
1147
1036
  },
1037
+ item.icon && item.icon,
1148
1038
  /* @__PURE__ */ React11.createElement(
1149
- "div",
1039
+ "span",
1150
1040
  {
1151
1041
  className: cn(
1152
- "hawa-flex hawa-h-fit hawa-w-fit hawa-flex-row hawa-items-center hawa-gap-2"
1042
+ "hawa-transition-all hawa-flex hawa-flex-row hawa-items-center hawa-gap-2 hawa-whitespace-nowrap",
1043
+ isOpen ? "hawa-opacity-100" : "hawa-opacity-0"
1153
1044
  )
1154
1045
  },
1155
- item.icon && item.icon,
1156
- /* @__PURE__ */ React11.createElement(
1157
- "span",
1158
- {
1159
- className: cn(
1160
- "hawa-transition-all hawa-flex hawa-flex-row hawa-items-center hawa-gap-2 hawa-whitespace-nowrap",
1161
- isOpen ? "hawa-opacity-100" : "hawa-opacity-0"
1162
- )
1163
- },
1164
- item.label,
1165
- item.badge && /* @__PURE__ */ React11.createElement(
1166
- Chip,
1167
- {
1168
- label: item.badge.label,
1169
- color: item.badge.color,
1170
- size: "small"
1171
- }
1172
- )
1173
- )
1046
+ item.label,
1047
+ item.badge && /* @__PURE__ */ React11.createElement(Chip, { label: item.badge.label, color: item.badge.color, size: "small" })
1174
1048
  )
1175
- ),
1176
- item.subitems && /* @__PURE__ */ React11.createElement(AccordionContent, { className: "hawa-mt-1 hawa-h-full hawa-rounded" }, /* @__PURE__ */ React11.createElement(
1177
- "div",
1049
+ )
1050
+ ), item.subitems && /* @__PURE__ */ React11.createElement(AccordionContent, { className: "hawa-mt-1 hawa-h-full hawa-rounded" }, /* @__PURE__ */ React11.createElement(
1051
+ "div",
1052
+ {
1053
+ className: cn(
1054
+ "hawa-flex hawa-h-full hawa-flex-col hawa-gap-2 hawa-bg-foreground/5 hawa-p-1"
1055
+ )
1056
+ },
1057
+ item.subitems.map((subitem, idx) => /* @__PURE__ */ React11.createElement(
1058
+ LinkComponent,
1178
1059
  {
1179
- className: cn(
1180
- "hawa-flex hawa-h-full hawa-flex-col hawa-gap-2 hawa-bg-foreground/5 hawa-p-1"
1181
- )
1182
- },
1183
- item.subitems.map((subitem, idx) => /* @__PURE__ */ React11.createElement(
1184
- LinkComponent,
1185
- {
1186
- href: subitem.slug,
1187
- key: idx,
1188
- onMouseDown: (e) => {
1189
- if (subitem.onMouseDown) {
1190
- subitem.onMouseDown(e);
1191
- }
1192
- },
1193
- onClick: (e) => {
1194
- e.stopPropagation();
1195
- if (subitem.onClick) {
1196
- subitem.onClick(e);
1197
- }
1198
- if (onSubItemClick) {
1199
- onSubItemClick([item.value, subitem.value]);
1200
- }
1201
- },
1202
- className: cn(
1203
- "hawa-flex hawa-h-full hawa-cursor-pointer hawa-flex-row hawa-items-center hawa-gap-2 hawa-overflow-x-clip hawa-whitespace-nowrap hawa-rounded hawa-p-2 hawa-transition-all",
1204
- // bg-foreground/10
1205
- getSelectedStyle(subitem.value)
1206
- )
1060
+ href: subitem.slug,
1061
+ key: idx,
1062
+ onMouseDown: (e) => {
1063
+ if (subitem.onMouseDown) {
1064
+ subitem.onMouseDown(e);
1065
+ }
1207
1066
  },
1208
- subitem.icon && subitem.icon,
1209
- subitem.label,
1210
- subitem.badge && /* @__PURE__ */ React11.createElement(
1211
- Chip,
1212
- {
1213
- label: subitem.badge.label,
1214
- color: subitem.badge.color,
1215
- size: "small"
1067
+ onClick: (e) => {
1068
+ e.stopPropagation();
1069
+ if (subitem.onClick) {
1070
+ subitem.onClick(e);
1216
1071
  }
1072
+ if (onSubItemClick) {
1073
+ onSubItemClick([item.value, subitem.value]);
1074
+ }
1075
+ },
1076
+ className: cn(
1077
+ "hawa-flex hawa-h-full hawa-cursor-pointer hawa-flex-row hawa-items-center hawa-gap-2 hawa-overflow-x-clip hawa-whitespace-nowrap hawa-rounded hawa-p-2 hawa-transition-all",
1078
+ // bg-foreground/10
1079
+ getSelectedStyle(subitem.value)
1217
1080
  )
1218
- ))
1081
+ },
1082
+ subitem.icon && subitem.icon,
1083
+ subitem.label,
1084
+ subitem.badge && /* @__PURE__ */ React11.createElement(Chip, { label: subitem.badge.label, color: subitem.badge.color, size: "small" })
1219
1085
  ))
1220
- );
1086
+ )));
1221
1087
  } else {
1222
1088
  return /* @__PURE__ */ React11.createElement(
1223
1089
  LinkComponent,
@@ -1237,11 +1103,7 @@ var SidebarItem = ({
1237
1103
  onItemClick([item.value]);
1238
1104
  }
1239
1105
  },
1240
- className: cn(
1241
- triggerStyles,
1242
- getSelectedStyle(item.value),
1243
- "hawa-overflow-x-clip"
1244
- )
1106
+ className: cn(triggerStyles, getSelectedStyle(item.value), "hawa-overflow-x-clip")
1245
1107
  },
1246
1108
  /* @__PURE__ */ React11.createElement("div", { className: "hawa-flex hawa-flex-row hawa-items-center hawa-gap-2" }, item.icon && item.icon, /* @__PURE__ */ React11.createElement(
1247
1109
  "span",
@@ -1253,14 +1115,7 @@ var SidebarItem = ({
1253
1115
  },
1254
1116
  item.label,
1255
1117
  " ",
1256
- item.badge && /* @__PURE__ */ React11.createElement(
1257
- Chip,
1258
- {
1259
- label: item.badge.label,
1260
- color: item.badge.color,
1261
- size: "small"
1262
- }
1263
- )
1118
+ item.badge && /* @__PURE__ */ React11.createElement(Chip, { label: item.badge.label, color: item.badge.color, size: "small" })
1264
1119
  ))
1265
1120
  );
1266
1121
  }
@@ -1270,7 +1125,9 @@ var SidebarItem = ({
1270
1125
  var LOCAL_STORAGE_KEY = "@sikka/hawa/keep-drawer-open";
1271
1126
  var AppLayout = ({
1272
1127
  profileMenuWidth = "default",
1128
+ userInfoPosition = "next_to_avatar",
1273
1129
  DrawerFooterActions,
1130
+ profileMenuItems,
1274
1131
  classNames,
1275
1132
  bordered = true,
1276
1133
  design = "default",
@@ -1303,9 +1160,7 @@ var AppLayout = ({
1303
1160
  };
1304
1161
  const isRTL = direction === "rtl";
1305
1162
  const [openedSidebarItem, setOpenedSidebarItem] = (0, import_react10.useState)("");
1306
- const [size, setSize] = (0, import_react10.useState)(
1307
- typeof window !== "undefined" && window.innerWidth || 1200
1308
- );
1163
+ const [size, setSize] = (0, import_react10.useState)(typeof window !== "undefined" && window.innerWidth || 1200);
1309
1164
  const [openSideMenu, setOpenSideMenu] = (0, import_react10.useState)(() => {
1310
1165
  const savedState = localStorage.getItem(LOCAL_STORAGE_KEY);
1311
1166
  return savedState ? JSON.parse(savedState) : false;
@@ -1360,6 +1215,18 @@ var AppLayout = ({
1360
1215
  }
1361
1216
  }, [size, keepDrawerOpen]);
1362
1217
  const drawerSizeCondition = size > 600 ? drawerSizeStyle[keepDrawerOpen ? "opened" : "closed"][drawerSize] : 0;
1218
+ let finalProfileMenuItems = profileMenuItems;
1219
+ if (userInfoPosition === "in_dropdown") {
1220
+ if (profileMenuItems && profileMenuItems.length > 0) {
1221
+ finalProfileMenuItems = [
1222
+ {
1223
+ content: /* @__PURE__ */ import_react10.default.createElement("div", { className: "hawa-text-end hawa-p-2 hawa-text-xs hawa-flex hawa-flex-col hawa-justify-center hawa-items-start" }, /* @__PURE__ */ import_react10.default.createElement("div", { className: "hawa-font-bold" }, props.username), /* @__PURE__ */ import_react10.default.createElement("div", null, props.email)),
1224
+ itemType: "custom"
1225
+ },
1226
+ ...profileMenuItems
1227
+ ];
1228
+ }
1229
+ }
1363
1230
  return /* @__PURE__ */ import_react10.default.createElement("div", { className: "hawa-fixed hawa-start-0" }, props.topBar && /* @__PURE__ */ import_react10.default.createElement(
1364
1231
  "div",
1365
1232
  {
@@ -1372,10 +1239,7 @@ var AppLayout = ({
1372
1239
  size > 600 ? /* @__PURE__ */ import_react10.default.createElement(
1373
1240
  "div",
1374
1241
  {
1375
- className: cn(
1376
- "dark:hawa-text-white",
1377
- size > 600 ? "hawa-ms-14" : "hawa-ms-2"
1378
- ),
1242
+ className: cn("dark:hawa-text-white", size > 600 ? "hawa-ms-14" : "hawa-ms-2"),
1379
1243
  style: {
1380
1244
  marginInlineStart: `${drawerSizeStyle[keepDrawerOpen ? "opened" : "closed"][drawerSize] + 10}px`
1381
1245
  }
@@ -1400,7 +1264,7 @@ var AppLayout = ({
1400
1264
  props.pageTitle ? /* @__PURE__ */ import_react10.default.createElement("div", { className: "hawa-text-sm" }, props.pageTitle) : /* @__PURE__ */ import_react10.default.createElement("div", null)
1401
1265
  )
1402
1266
  ),
1403
- /* @__PURE__ */ import_react10.default.createElement("div", { className: cn("hawa-flex hawa-gap-2 dark:hawa-text-white") }, size > 600 ? /* @__PURE__ */ import_react10.default.createElement("div", { className: "hawa-text-end hawa-text-xs" }, /* @__PURE__ */ import_react10.default.createElement("div", { className: "hawa-font-bold" }, props.username), " ", /* @__PURE__ */ import_react10.default.createElement("div", null, props.email)) : null, /* @__PURE__ */ import_react10.default.createElement(
1267
+ /* @__PURE__ */ import_react10.default.createElement("div", { className: cn("hawa-flex hawa-gap-2 dark:hawa-text-white") }, size > 600 && userInfoPosition === "next_to_avatar" ? /* @__PURE__ */ import_react10.default.createElement("div", { className: "hawa-text-end hawa-text-xs hawa-flex hawa-flex-col hawa-justify-center" }, /* @__PURE__ */ import_react10.default.createElement("div", { className: "hawa-font-bold" }, props.username), /* @__PURE__ */ import_react10.default.createElement("div", null, props.email)) : null, /* @__PURE__ */ import_react10.default.createElement(
1404
1268
  DropdownMenu,
1405
1269
  {
1406
1270
  LinkComponent: MenuLinkComponent,
@@ -1410,7 +1274,7 @@ var AppLayout = ({
1410
1274
  sideOffset: 10,
1411
1275
  width: profileMenuWidth,
1412
1276
  direction,
1413
- items: props.profileMenuItems || [],
1277
+ items: finalProfileMenuItems || [],
1414
1278
  onItemSelect: (e) => console.log("selecting item ", e),
1415
1279
  trigger: /* @__PURE__ */ import_react10.default.createElement(
1416
1280
  "div",
@@ -1561,10 +1425,7 @@ var AppLayout = ({
1561
1425
  size: "smallIcon",
1562
1426
  onClick: () => {
1563
1427
  const newKeepOpenState = !keepDrawerOpen;
1564
- localStorage.setItem(
1565
- LOCAL_STORAGE_KEY,
1566
- JSON.stringify(newKeepOpenState)
1567
- );
1428
+ localStorage.setItem(LOCAL_STORAGE_KEY, JSON.stringify(newKeepOpenState));
1568
1429
  setKeepDrawerOpen(newKeepOpenState);
1569
1430
  }
1570
1431
  },
@@ -1590,14 +1451,7 @@ var AppLayout = ({
1590
1451
  )
1591
1452
  ) : null
1592
1453
  )
1593
- )), /* @__PURE__ */ import_react10.default.createElement(
1594
- Dialog.Root,
1595
- {
1596
- open: size < 600 && openSideMenu,
1597
- onOpenChange: setOpenSideMenu
1598
- },
1599
- /* @__PURE__ */ import_react10.default.createElement(Dialog.Portal, { container }, /* @__PURE__ */ import_react10.default.createElement(Dialog.Overlay, { className: "hawa-fixed hawa-inset-0 hawa-bg-foreground/20 hawa-backdrop-blur-[2px] data-[state=open]:hawa-animate-in data-[state=closed]:hawa-animate-out hawa-z-10 data-[state=closed]:hawa-fade-out-0 data-[state=open]:hawa-fade-in-0" }))
1600
- ), /* @__PURE__ */ import_react10.default.createElement(
1454
+ )), /* @__PURE__ */ import_react10.default.createElement(Dialog.Root, { open: size < 600 && openSideMenu, onOpenChange: setOpenSideMenu }, /* @__PURE__ */ import_react10.default.createElement(Dialog.Portal, { container }, /* @__PURE__ */ import_react10.default.createElement(Dialog.Overlay, { className: "hawa-fixed hawa-inset-0 hawa-bg-foreground/20 hawa-backdrop-blur-[2px] data-[state=open]:hawa-animate-in data-[state=closed]:hawa-animate-out hawa-z-10 data-[state=closed]:hawa-fade-out-0 data-[state=open]:hawa-fade-in-0" }))), /* @__PURE__ */ import_react10.default.createElement(
1601
1455
  "div",
1602
1456
  {
1603
1457
  className: "hawa-fixed hawa-overflow-y-auto hawa-transition-all hawa-z-0",