@sikka/hawa 0.24.4-next → 0.24.5-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 (151) hide show
  1. package/dist/accordion/index.d.mts +1 -2
  2. package/dist/accordion/index.d.ts +1 -2
  3. package/dist/accordion/index.mjs +219 -7
  4. package/dist/alert/index.d.mts +1 -1
  5. package/dist/alert/index.d.ts +1 -1
  6. package/dist/appLayout/index.d.mts +126 -0
  7. package/dist/appLayout/index.d.ts +126 -0
  8. package/dist/appLayout/index.js +1325 -0
  9. package/dist/appLayout/index.mjs +1285 -0
  10. package/dist/appMenubar/index.d.mts +33 -0
  11. package/dist/appMenubar/index.d.ts +33 -0
  12. package/dist/appMenubar/index.js +281 -0
  13. package/dist/appMenubar/index.mjs +224 -0
  14. package/dist/appTabs/index.d.mts +18 -0
  15. package/dist/appTabs/index.d.ts +18 -0
  16. package/dist/appTabs/index.js +92 -0
  17. package/dist/appTabs/index.mjs +50 -0
  18. package/dist/appTopbar/index.d.mts +44 -0
  19. package/dist/appTopbar/index.d.ts +44 -0
  20. package/dist/appTopbar/index.js +483 -0
  21. package/dist/appTopbar/index.mjs +441 -0
  22. package/dist/avatar/index.d.mts +5 -4
  23. package/dist/avatar/index.d.ts +5 -4
  24. package/dist/backToTop/index.mjs +353 -3
  25. package/dist/badge/index.d.mts +2 -2
  26. package/dist/badge/index.d.ts +2 -2
  27. package/dist/checkbox/index.d.mts +1 -2
  28. package/dist/checkbox/index.d.ts +1 -2
  29. package/dist/chip/index.d.mts +36 -2
  30. package/dist/chip/index.d.ts +36 -2
  31. package/dist/chip/index.mjs +83 -3
  32. package/dist/chunk-62GI5F2P.mjs +442 -0
  33. package/dist/chunk-7NCNPRCL.mjs +120 -0
  34. package/dist/{chunk-TNAHW35O.mjs → chunk-C2UYTGUD.mjs} +8 -4
  35. package/dist/{chunk-26FHSPJI.mjs → chunk-DGWAHQRX.mjs} +1 -101
  36. package/dist/chunk-LRLLDOQZ.mjs +178 -0
  37. package/dist/chunk-ND4BWUKH.mjs +34 -0
  38. package/dist/codeBlock/index.mjs +684 -310
  39. package/dist/colorPicker/index.d.mts +2 -1
  40. package/dist/colorPicker/index.d.ts +2 -1
  41. package/dist/colorPicker/index.mjs +2 -167
  42. package/dist/combobox/index.d.mts +9 -1
  43. package/dist/combobox/index.d.ts +9 -1
  44. package/dist/combobox/index.mjs +61 -393
  45. package/dist/command/index.mjs +10 -425
  46. package/dist/commonTypes-3J1E3b61.d.mts +6 -0
  47. package/dist/commonTypes-3J1E3b61.d.ts +6 -0
  48. package/dist/commonTypes-GhKAraJw.d.mts +4 -0
  49. package/dist/commonTypes-GhKAraJw.d.ts +4 -0
  50. package/dist/commonTypes-LrR8QrYP.d.mts +5 -0
  51. package/dist/commonTypes-LrR8QrYP.d.ts +5 -0
  52. package/dist/commonTypes-WPhcN3Vr.d.mts +5 -0
  53. package/dist/commonTypes-WPhcN3Vr.d.ts +5 -0
  54. package/dist/commonTypes-ko_NGEoT.d.mts +3 -0
  55. package/dist/commonTypes-ko_NGEoT.d.ts +3 -0
  56. package/dist/copyrights/index.d.mts +17 -0
  57. package/dist/copyrights/index.d.ts +17 -0
  58. package/dist/copyrights/index.js +45 -0
  59. package/dist/copyrights/index.mjs +8 -0
  60. package/dist/count/index.d.mts +11 -0
  61. package/dist/count/index.d.ts +11 -0
  62. package/dist/count/index.js +45 -0
  63. package/dist/count/index.mjs +8 -0
  64. package/dist/dataTable/index.d.mts +1 -1
  65. package/dist/dataTable/index.d.ts +1 -1
  66. package/dist/destroyableCard/index.d.mts +1 -1
  67. package/dist/destroyableCard/index.d.ts +1 -1
  68. package/dist/dialog/index.d.mts +1 -1
  69. package/dist/dialog/index.d.ts +1 -1
  70. package/dist/docsLayout/index.d.mts +37 -0
  71. package/dist/docsLayout/index.d.ts +37 -0
  72. package/dist/docsLayout/index.js +926 -0
  73. package/dist/docsLayout/index.mjs +886 -0
  74. package/dist/docsSidebar/index.d.mts +11 -0
  75. package/dist/docsSidebar/index.d.ts +11 -0
  76. package/dist/docsSidebar/index.js +111 -0
  77. package/dist/docsSidebar/index.mjs +69 -0
  78. package/dist/index.d.mts +1 -0
  79. package/dist/index.d.ts +1 -0
  80. package/dist/index.js +50 -41
  81. package/dist/index.mjs +50 -41
  82. package/dist/input/index.d.mts +2 -9
  83. package/dist/input/index.d.ts +2 -9
  84. package/dist/input/index.mjs +14 -98
  85. package/dist/interfaceSettings/index.d.mts +1 -1
  86. package/dist/interfaceSettings/index.d.ts +1 -1
  87. package/dist/interfaceSettings/index.mjs +24 -110
  88. package/dist/label/index.d.mts +1 -1
  89. package/dist/label/index.d.ts +1 -1
  90. package/dist/label/index.mjs +2 -87
  91. package/dist/layout/index.d.mts +1 -0
  92. package/dist/layout/index.d.ts +1 -0
  93. package/dist/layout/index.js +53 -44
  94. package/dist/layout/index.mjs +50 -41
  95. package/dist/navbar/index.d.mts +17 -0
  96. package/dist/navbar/index.d.ts +17 -0
  97. package/dist/navbar/index.js +166 -0
  98. package/dist/navbar/index.mjs +126 -0
  99. package/dist/pagination/index.d.mts +1 -1
  100. package/dist/pagination/index.d.ts +1 -1
  101. package/dist/passwordInput/index.mjs +27 -137
  102. package/dist/phoneInput/index.mjs +19 -129
  103. package/dist/radio/index.d.mts +1 -4
  104. package/dist/radio/index.d.ts +1 -4
  105. package/dist/scrollArea/index.d.mts +1 -1
  106. package/dist/scrollArea/index.d.ts +1 -1
  107. package/dist/select/index.d.mts +1 -1
  108. package/dist/select/index.d.ts +1 -1
  109. package/dist/separator/index.d.mts +1 -1
  110. package/dist/separator/index.d.ts +1 -1
  111. package/dist/sidebar/index.d.mts +48 -0
  112. package/dist/sidebar/index.d.ts +48 -0
  113. package/dist/sidebar/index.js +341 -0
  114. package/dist/sidebar/index.mjs +298 -0
  115. package/dist/simpleTable/index.d.mts +4 -3
  116. package/dist/simpleTable/index.d.ts +4 -3
  117. package/dist/simpleTable/index.mjs +21 -45
  118. package/dist/skeleton/index.d.mts +3 -3
  119. package/dist/skeleton/index.d.ts +3 -3
  120. package/dist/skeleton/index.mjs +3 -29
  121. package/dist/sortButton/index.mjs +9 -260
  122. package/dist/splitButton/index.d.mts +4 -3
  123. package/dist/splitButton/index.d.ts +4 -3
  124. package/dist/splitButton/index.mjs +10 -259
  125. package/dist/stats/index.d.mts +19 -0
  126. package/dist/stats/index.d.ts +19 -0
  127. package/dist/stats/index.js +191 -0
  128. package/dist/stats/index.mjs +154 -0
  129. package/dist/stopPropagationWrapper/index.d.mts +2 -2
  130. package/dist/stopPropagationWrapper/index.d.ts +2 -2
  131. package/dist/switch/index.d.mts +2 -1
  132. package/dist/switch/index.d.ts +2 -1
  133. package/dist/tabs/index.d.mts +19 -1
  134. package/dist/tabs/index.d.ts +19 -1
  135. package/dist/tabs/index.mjs +94 -14
  136. package/dist/textarea/index.d.mts +8 -1
  137. package/dist/textarea/index.d.ts +8 -1
  138. package/dist/textarea/index.mjs +92 -8
  139. package/dist/toast/index.d.mts +1 -1
  140. package/dist/toast/index.d.ts +1 -1
  141. package/package.json +1 -1
  142. package/dist/Label-fkQ4ebuH.d.mts +0 -12
  143. package/dist/Label-fkQ4ebuH.d.ts +0 -12
  144. package/dist/chunk-72HYR6WB.mjs +0 -88
  145. package/dist/chunk-JYSC6GKM.mjs +0 -229
  146. package/dist/commonTypes-3k5cNB1s.d.mts +0 -4
  147. package/dist/commonTypes-3k5cNB1s.d.ts +0 -4
  148. package/dist/commonTypes-N7XOVCit.d.mts +0 -5
  149. package/dist/commonTypes-N7XOVCit.d.ts +0 -5
  150. package/dist/index-DUZFcPRO.d.mts +0 -38
  151. package/dist/index-DUZFcPRO.d.ts +0 -38
@@ -0,0 +1,483 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // components/layout/appTopbar/index.ts
31
+ var appTopbar_exports = {};
32
+ __export(appTopbar_exports, {
33
+ AppTopbar: () => AppTopbar
34
+ });
35
+ module.exports = __toCommonJS(appTopbar_exports);
36
+
37
+ // components/layout/appTopbar/AppTopbar.tsx
38
+ var import_react = __toESM(require("react"));
39
+
40
+ // components/elements/dropdownMenu/DropdownMenu.tsx
41
+ var React = __toESM(require("react"));
42
+ var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"));
43
+
44
+ // components/util.ts
45
+ var import_clsx = require("clsx");
46
+ var import_tailwind_merge = require("tailwind-merge");
47
+ function cn(...inputs) {
48
+ return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
49
+ }
50
+
51
+ // components/elements/dropdownMenu/DropdownMenu.tsx
52
+ var DropdownMenuRoot = DropdownMenuPrimitive.Root;
53
+ var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
54
+ var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
55
+ var DropdownMenuSub = DropdownMenuPrimitive.Sub;
56
+ var DropdownMenuSubTrigger = React.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ React.createElement(
57
+ DropdownMenuPrimitive.SubTrigger,
58
+ {
59
+ ref,
60
+ className: cn(
61
+ "hawa-flex hawa-cursor-default hawa-select-none hawa-items-center hawa-justify-between hawa-rounded-sm hawa-text-sm hawa-outline-none focus:hawa-bg-accent data-[state=open]:hawa-bg-accent",
62
+ inset && "hawa-pl-8",
63
+ className
64
+ ),
65
+ ...props
66
+ },
67
+ /* @__PURE__ */ React.createElement("div", { className: "hawa-flex hawa-flex-row hawa-items-center hawa-gap-2" }, children),
68
+ " ",
69
+ /* @__PURE__ */ React.createElement(
70
+ "svg",
71
+ {
72
+ "aria-label": "Chevron Right Icon",
73
+ stroke: "currentColor",
74
+ fill: "currentColor",
75
+ strokeWidth: "0",
76
+ viewBox: "0 0 16 16",
77
+ height: "1em",
78
+ width: "1em",
79
+ className: cn(props.dir === "rtl" ? "hawa-rotate-180" : "")
80
+ },
81
+ /* @__PURE__ */ React.createElement(
82
+ "path",
83
+ {
84
+ fillRule: "evenodd",
85
+ 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"
86
+ }
87
+ )
88
+ )
89
+ ));
90
+ DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
91
+ var DropdownMenuSubContent = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React.createElement(
92
+ DropdownMenuPrimitive.SubContent,
93
+ {
94
+ ref,
95
+ className: cn(
96
+ "hawa-z-50 hawa-min-w-[8rem] hawa-gap-1 hawa-overflow-hidden hawa-rounded-md hawa-border hawa-bg-popover hawa-p-1 hawa-text-popover-foreground hawa-shadow-lg data-[state=open]:hawa-animate-in data-[state=closed]:hawa-animate-out data-[state=closed]:hawa-fade-out-0 data-[state=open]:hawa-fade-in-0 data-[state=closed]:hawa-zoom-out-95 data-[state=open]:hawa-zoom-in-95 data-[side=bottom]:hawa-slide-in-from-top-2 data-[side=left]:hawa-slide-in-from-right-2 data-[side=right]:hawa-slide-in-from-left-2 data-[side=top]:hawa-slide-in-from-bottom-2",
97
+ className
98
+ ),
99
+ ...props
100
+ }
101
+ ));
102
+ DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
103
+ var DropdownMenuContent = React.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ React.createElement(DropdownMenuPrimitive.Portal, null, /* @__PURE__ */ React.createElement(
104
+ DropdownMenuPrimitive.Content,
105
+ {
106
+ ref,
107
+ sideOffset,
108
+ className: cn(
109
+ "hawa-z-50 hawa-overflow-hidden hawa-rounded-md hawa-border hawa-bg-popover hawa-p-1 hawa-text-popover-foreground hawa-shadow-md data-[state=open]:hawa-animate-in data-[state=closed]:hawa-animate-out data-[state=closed]:hawa-fade-out-0 data-[state=open]:hawa-fade-in-0 data-[state=closed]:hawa-zoom-out-95 data-[state=open]:hawa-zoom-in-95 data-[side=bottom]:hawa-slide-in-from-top-2 data-[side=left]:hawa-slide-in-from-right-2 data-[side=right]:hawa-slide-in-from-left-2 data-[side=top]:hawa-slide-in-from-bottom-2",
110
+ className
111
+ ),
112
+ ...props
113
+ }
114
+ )));
115
+ DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
116
+ var DropdownMenuItem = React.forwardRef(({ className, inset, badged, slug, ...props }, ref) => {
117
+ return /* @__PURE__ */ React.createElement("a", { href: slug }, /* @__PURE__ */ React.createElement(
118
+ DropdownMenuPrimitive.Item,
119
+ {
120
+ disabled: props.disabled,
121
+ ref,
122
+ className: cn(
123
+ "hawa-relative hawa-flex hawa-cursor-pointer hawa-select-none hawa-items-center hawa-justify-between hawa-rounded-sm hawa-text-sm hawa-outline-none hawa-transition-colors focus:hawa-text-accent-foreground data-[disabled]:hawa-pointer-events-none data-[disabled]:hawa-opacity-50",
124
+ inset && "hawa-pl-8",
125
+ props.end && Array.isArray(props.children) && props.children[1] && "hawa-gap-6",
126
+ className
127
+ ),
128
+ ...props
129
+ },
130
+ /* @__PURE__ */ React.createElement("div", { className: "hawa-flex hawa-flex-row hawa-items-center hawa-gap-2 " }, props.children),
131
+ props.end && props.end,
132
+ !props.end && props.shortcut && /* @__PURE__ */ React.createElement(DropdownMenuShortcut, null, props.shortcut),
133
+ !props.end && badged && /* @__PURE__ */ React.createElement("div", { className: "hawa-h-3 hawa-w-3 hawa-rounded-full hawa-bg-red-500" })
134
+ ));
135
+ });
136
+ DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
137
+ var DropdownMenuCheckboxItem = React.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ React.createElement(
138
+ DropdownMenuPrimitive.CheckboxItem,
139
+ {
140
+ ref,
141
+ className: cn(
142
+ "hawa-relative hawa-flex hawa-cursor-default hawa-select-none hawa-items-center hawa-rounded-sm hawa-py-1.5 hawa-pl-8 hawa-pr-2 hawa-text-sm hawa-outline-none hawa-transition-colors focus:hawa-bg-accent focus:hawa-text-accent-foreground data-[disabled]:hawa-pointer-events-none data-[disabled]:hawa-opacity-50",
143
+ className
144
+ ),
145
+ checked,
146
+ ...props
147
+ },
148
+ /* @__PURE__ */ React.createElement("span", { className: "hawa-absolute hawa-left-2 hawa-flex hawa-h-3.5 hawa-w-3.5 hawa-items-center hawa-justify-center" }, /* @__PURE__ */ React.createElement(DropdownMenuPrimitive.ItemIndicator, null, /* @__PURE__ */ React.createElement(
149
+ "svg",
150
+ {
151
+ "aria-label": "Check Mark",
152
+ stroke: "currentColor",
153
+ fill: "currentColor",
154
+ strokeWidth: "0",
155
+ viewBox: "0 0 512 512",
156
+ height: "0.60em",
157
+ width: "0.60em"
158
+ },
159
+ /* @__PURE__ */ React.createElement("path", { d: "M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z" })
160
+ ), " ")),
161
+ children
162
+ ));
163
+ DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
164
+ var DropdownMenuRadioItem = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ React.createElement(
165
+ DropdownMenuPrimitive.RadioItem,
166
+ {
167
+ ref,
168
+ className: cn(
169
+ "hawa-relative hawa-flex hawa-cursor-pointer hawa-select-none hawa-items-center hawa-rounded-sm hawa-py-1.5 hawa-pl-8 hawa-pr-2 hawa-text-sm hawa-outline-none hawa-transition-colors focus:hawa-bg-accent focus:hawa-text-accent-foreground data-[disabled]:hawa-pointer-events-none data-[disabled]:hawa-opacity-50",
170
+ className
171
+ ),
172
+ ...props
173
+ },
174
+ /* @__PURE__ */ React.createElement("span", { className: "hawa-absolute hawa-left-2 hawa-flex hawa-h-3.5 hawa-w-3.5 hawa-items-center hawa-justify-center" }, /* @__PURE__ */ React.createElement(DropdownMenuPrimitive.ItemIndicator, null, /* @__PURE__ */ React.createElement(
175
+ "svg",
176
+ {
177
+ xmlns: "http://www.w3.org/2000/svg",
178
+ width: "24",
179
+ "aria-label": "Circle",
180
+ height: "24",
181
+ viewBox: "0 0 24 24",
182
+ fill: "none",
183
+ stroke: "currentColor",
184
+ strokeWidth: "2",
185
+ strokeLinecap: "round",
186
+ strokeLinejoin: "round",
187
+ className: "hawa-h-2 hawa-w-2 hawa-fill-current"
188
+ },
189
+ /* @__PURE__ */ React.createElement("circle", { cx: "12", cy: "12", r: "10" })
190
+ ))),
191
+ children
192
+ ));
193
+ DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
194
+ var DropdownMenuLabel = React.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ React.createElement(
195
+ DropdownMenuPrimitive.Label,
196
+ {
197
+ ref,
198
+ className: cn(
199
+ "hawa-px-2 hawa-py-1.5 hawa-text-sm hawa-font-semibold",
200
+ inset && "hawa-pl-8",
201
+ className
202
+ ),
203
+ ...props
204
+ }
205
+ ));
206
+ DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
207
+ var DropdownMenuSeparator = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ React.createElement(
208
+ DropdownMenuPrimitive.Separator,
209
+ {
210
+ ref,
211
+ className: cn("hawa--mx-1 hawa-my-1 hawa-h-px hawa-bg-muted", className),
212
+ ...props
213
+ }
214
+ ));
215
+ DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
216
+ var DropdownMenuShortcut = ({
217
+ className,
218
+ ...props
219
+ }) => {
220
+ return /* @__PURE__ */ React.createElement(
221
+ "span",
222
+ {
223
+ className: cn(
224
+ "hawa-text-xs hawa-tracking-widest hawa-opacity-60",
225
+ className
226
+ ),
227
+ ...props
228
+ }
229
+ );
230
+ };
231
+ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
232
+ var DropdownMenu = ({
233
+ trigger,
234
+ items,
235
+ direction,
236
+ sideOffset,
237
+ side,
238
+ className,
239
+ triggerClassname,
240
+ align,
241
+ alignOffset,
242
+ onItemSelect,
243
+ size = "default",
244
+ width = "default",
245
+ header,
246
+ onOpenChange,
247
+ open
248
+ }) => {
249
+ const widthStyles = {
250
+ default: "hawa-min-w-[8rem]",
251
+ sm: "hawa-w-fit",
252
+ lg: "hawa-w-[200px]",
253
+ parent: "ddm-w-parent"
254
+ };
255
+ const sizeStyles = {
256
+ default: "hawa-px-2 hawa-py-3 ",
257
+ sm: "hawa-text-xs hawa-px-1.5 hawa-py-1.5 "
258
+ };
259
+ return /* @__PURE__ */ React.createElement(
260
+ DropdownMenuRoot,
261
+ {
262
+ onOpenChange,
263
+ open,
264
+ modal: false,
265
+ dir: direction
266
+ },
267
+ /* @__PURE__ */ React.createElement(DropdownMenuTrigger, { asChild: true, className: triggerClassname }, trigger),
268
+ /* @__PURE__ */ React.createElement(DropdownMenuPortal, null, /* @__PURE__ */ React.createElement(
269
+ DropdownMenuContent,
270
+ {
271
+ side,
272
+ sideOffset,
273
+ className: cn(
274
+ className,
275
+ widthStyles[width],
276
+ "hawa-flex hawa-flex-col hawa-gap-1"
277
+ ),
278
+ align,
279
+ alignOffset
280
+ },
281
+ header && header,
282
+ items && items.map((item, index) => {
283
+ if (item.itemType === "separator") {
284
+ return /* @__PURE__ */ React.createElement(DropdownMenuSeparator, { key: index });
285
+ } else if (item.itemType === "label") {
286
+ return /* @__PURE__ */ React.createElement(DropdownMenuLabel, { key: index }, item.label);
287
+ } else if (item.itemType === "custom") {
288
+ return /* @__PURE__ */ React.createElement("div", { key: index }, item.content);
289
+ } else {
290
+ return item.subitems ? /* @__PURE__ */ React.createElement(DropdownMenuSub, { key: index }, /* @__PURE__ */ React.createElement(
291
+ DropdownMenuSubTrigger,
292
+ {
293
+ className: cn(sizeStyles[size]),
294
+ dir: direction
295
+ },
296
+ item.icon && item.icon,
297
+ item.label && item.label
298
+ ), /* @__PURE__ */ React.createElement(DropdownMenuPortal, null, /* @__PURE__ */ React.createElement(DropdownMenuSubContent, null, item.subitems.map((subitem, subIndex) => /* @__PURE__ */ React.createElement(
299
+ DropdownMenuItem,
300
+ {
301
+ slug: subitem.slug,
302
+ onMouseDown: (event) => {
303
+ if (event.button === 1 || event.button === 0 && event.ctrlKey) {
304
+ event.preventDefault();
305
+ if (subitem.onMiddleClick) {
306
+ subitem.onMiddleClick(item.value);
307
+ }
308
+ }
309
+ },
310
+ key: subIndex,
311
+ className: cn(
312
+ sizeStyles[size],
313
+ !item.icon && !item.label ? "hawa-px-0 hawa-py-0 focus:hawa-bg-transparent" : "focus:hawa-bg-accent"
314
+ ),
315
+ disabled: subitem.disabled,
316
+ onSelect: () => {
317
+ subitem.action && subitem.action();
318
+ if (onItemSelect) {
319
+ onItemSelect(subitem.value);
320
+ }
321
+ }
322
+ },
323
+ subitem.icon && subitem.icon,
324
+ subitem.label && subitem.label
325
+ ))))) : /* @__PURE__ */ React.createElement(
326
+ DropdownMenuItem,
327
+ {
328
+ slug: item.slug,
329
+ key: index,
330
+ disabled: item.disabled,
331
+ onMouseDown: (event) => {
332
+ if (event.button === 1 || event.button === 0 && event.ctrlKey) {
333
+ event.preventDefault();
334
+ if (item.onMiddleClick) {
335
+ item.onMiddleClick(item.value);
336
+ }
337
+ }
338
+ },
339
+ onClick: (event) => {
340
+ if (item.onClick) {
341
+ item.onClick(item.value);
342
+ }
343
+ },
344
+ onSelect: (e) => {
345
+ if (item.presist) {
346
+ e.preventDefault();
347
+ }
348
+ if (item.action) {
349
+ item.action();
350
+ if (onItemSelect) {
351
+ onItemSelect(item.value);
352
+ }
353
+ } else {
354
+ if (onItemSelect) {
355
+ onItemSelect(item.value);
356
+ }
357
+ }
358
+ },
359
+ end: item.end,
360
+ shortcut: item.shortcut,
361
+ badged: item.badged,
362
+ className: cn(
363
+ sizeStyles[size],
364
+ !item.icon && !item.label ? "hawa-px-0 hawa-py-0 focus:hawa-bg-transparent " : "focus:hawa-bg-accent ",
365
+ item.presist && "focus:hawa-bg-transparent"
366
+ )
367
+ },
368
+ item.icon && item.icon,
369
+ item.label && item.label
370
+ );
371
+ }
372
+ })
373
+ ))
374
+ );
375
+ };
376
+
377
+ // components/layout/appTopbar/AppTopbar.tsx
378
+ var AppTopbar = ({ ...props }) => {
379
+ const isRTL = props.direction === "ltr";
380
+ const size = 1200;
381
+ return /* @__PURE__ */ import_react.default.createElement(
382
+ "div",
383
+ {
384
+ className: cn(
385
+ "hawa-fixed hawa-left-0 hawa-right-0 hawa-top-0 hawa-z-30 hawa-flex hawa-h-14 hawa-w-full hawa-items-center hawa-justify-between hawa-border-b hawa-bg-primary-foreground hawa-p-2",
386
+ isRTL ? "hawa-flex-row-reverse" : "hawa-flex-row"
387
+ )
388
+ },
389
+ size > 600 ? /* @__PURE__ */ import_react.default.createElement(
390
+ "div",
391
+ null,
392
+ "page title"
393
+ ) : (
394
+ // Mobile Drawer Menu Button
395
+ /* @__PURE__ */ import_react.default.createElement(
396
+ "div",
397
+ {
398
+ dir: props.direction,
399
+ className: "hawa-flex hawa-items-center hawa-justify-center hawa-gap-0.5"
400
+ },
401
+ /* @__PURE__ */ import_react.default.createElement(
402
+ "div",
403
+ {
404
+ className: "hawa-z-40 hawa-mx-1 hawa-cursor-pointer hawa-rounded hawa-p-2 hawa-transition-all hover:hawa-bg-gray-100"
405
+ },
406
+ /* @__PURE__ */ import_react.default.createElement(
407
+ "svg",
408
+ {
409
+ stroke: "currentColor",
410
+ fill: "currentColor",
411
+ strokeWidth: 0,
412
+ viewBox: "0 0 20 20",
413
+ "aria-hidden": "true",
414
+ height: "1.6em",
415
+ width: "1.6em"
416
+ },
417
+ /* @__PURE__ */ import_react.default.createElement(
418
+ "path",
419
+ {
420
+ fillRule: "evenodd",
421
+ clipRule: "evenodd",
422
+ d: "M3 5a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 15a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1z"
423
+ }
424
+ )
425
+ )
426
+ ),
427
+ "Mobile title"
428
+ )
429
+ ),
430
+ /* @__PURE__ */ import_react.default.createElement(
431
+ "div",
432
+ {
433
+ className: cn(
434
+ "hawa-flex hawa-gap-2 dark:hawa-text-white",
435
+ isRTL ? "hawa-flex-row-reverse" : "hawa-flex-row"
436
+ )
437
+ },
438
+ size > 600 ? /* @__PURE__ */ import_react.default.createElement(
439
+ "div",
440
+ {
441
+ className: isRTL ? "hawa-text-left hawa-text-xs" : "hawa-text-right hawa-text-xs"
442
+ },
443
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "hawa-font-bold" }, props.username),
444
+ " ",
445
+ /* @__PURE__ */ import_react.default.createElement("div", null, props.email)
446
+ ) : null,
447
+ /* @__PURE__ */ import_react.default.createElement(
448
+ DropdownMenu,
449
+ {
450
+ triggerClassname: "hawa-mx-2",
451
+ align: "end",
452
+ alignOffset: 8,
453
+ side: "bottom",
454
+ sideOffset: 5,
455
+ direction: isRTL ? "rtl" : "ltr",
456
+ items: props.profileMenuItems,
457
+ onItemSelect: (e) => console.log("selecting item ", e),
458
+ trigger: /* @__PURE__ */ import_react.default.createElement("div", { className: "hawa-relative hawa-h-8 hawa-w-8 hawa-cursor-pointer hawa-overflow-clip hawa-rounded hawa-ring-1 hawa-ring-primary/30 dark:hawa-bg-gray-600" }, props.avatarImage ? /* @__PURE__ */ import_react.default.createElement("img", { src: props.avatarImage, alt: "User Avatar" }) : /* @__PURE__ */ import_react.default.createElement(
459
+ "svg",
460
+ {
461
+ "aria-label": "Avatar Icon",
462
+ className: "hawa-absolute hawa--left-1 hawa-h-10 hawa-w-10 hawa-text-gray-400",
463
+ fill: "currentColor",
464
+ viewBox: "0 0 20 20"
465
+ },
466
+ /* @__PURE__ */ import_react.default.createElement(
467
+ "path",
468
+ {
469
+ fillRule: "evenodd",
470
+ d: "M10 9a3 3 0 100-6 3 3 0 000 6zm-7 9a7 7 0 1114 0H3z",
471
+ clipRule: "evenodd"
472
+ }
473
+ )
474
+ ))
475
+ }
476
+ )
477
+ )
478
+ );
479
+ };
480
+ // Annotate the CommonJS export names for ESM import in node:
481
+ 0 && (module.exports = {
482
+ AppTopbar
483
+ });