@kuzenbo/core 0.0.4 → 0.0.5

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 (335) hide show
  1. package/dist/avatar-CXhwmJgG.js +65 -0
  2. package/dist/avatar-CXhwmJgG.js.map +1 -0
  3. package/dist/{avatar-image-Ce26D2fb.d.ts → avatar-DpiupAAM.d.ts} +35 -2
  4. package/dist/avatar-DpiupAAM.d.ts.map +1 -0
  5. package/dist/badge-BKRm6jL7.js +58 -0
  6. package/dist/badge-BKRm6jL7.js.map +1 -0
  7. package/dist/button-nAbTNrxA.d.ts +78 -0
  8. package/dist/button-nAbTNrxA.d.ts.map +1 -0
  9. package/dist/{dialog-trigger-BUF3elAP.js → dialog-CD5lfQA9.js} +33 -10
  10. package/dist/dialog-CD5lfQA9.js.map +1 -0
  11. package/dist/{dialog-viewport-Ce1huyAI.d.ts → dialog-DEkdr-9K.d.ts} +64 -2
  12. package/dist/dialog-DEkdr-9K.d.ts.map +1 -0
  13. package/dist/{dropdown-menu-trigger-COnFGfDa.js → dropdown-menu-BJi-V71O.js} +137 -101
  14. package/dist/dropdown-menu-BJi-V71O.js.map +1 -0
  15. package/dist/{dropdown-menu-trigger-BpgtLUvf.d.ts → dropdown-menu-Bpj576m0.d.ts} +259 -123
  16. package/dist/dropdown-menu-Bpj576m0.d.ts.map +1 -0
  17. package/dist/input-Ex9ZRqbo.js +38 -0
  18. package/dist/input-Ex9ZRqbo.js.map +1 -0
  19. package/dist/input-WWoBCgxe.d.ts +46 -0
  20. package/dist/input-WWoBCgxe.d.ts.map +1 -0
  21. package/dist/{input-group-textarea-B-rP98r5.js → input-group-CjcHP0L4.js} +50 -31
  22. package/dist/input-group-CjcHP0L4.js.map +1 -0
  23. package/dist/provider.js +2 -2
  24. package/dist/scroll-bar-C4qEUKlT.js.map +1 -1
  25. package/dist/separator-C8Qw2ADs.d.ts +13 -0
  26. package/dist/separator-C8Qw2ADs.d.ts.map +1 -0
  27. package/dist/{sheet-trigger-D7neoTF5.js → sheet-imSHXfFH.js} +29 -10
  28. package/dist/sheet-imSHXfFH.js.map +1 -0
  29. package/dist/{size-context-BjRwqlSg.js → size-context-CvLl3pMC.js} +3 -3
  30. package/dist/size-context-CvLl3pMC.js.map +1 -0
  31. package/dist/size-context-DXfCAlWF.d.ts.map +1 -1
  32. package/dist/size-provider-18EvJgDT.js.map +1 -1
  33. package/dist/size-provider-Bd2C6gKd.d.ts.map +1 -1
  34. package/dist/size-system-BTsMqZRQ.js +99 -0
  35. package/dist/size-system-BTsMqZRQ.js.map +1 -0
  36. package/dist/size-system-wzOLSuax.d.ts.map +1 -1
  37. package/dist/size.js +2 -2
  38. package/dist/{slider-root-presentation-ChJHPMIV.js → slider-root-presentation-B6OO_iCT.js} +19 -19
  39. package/dist/slider-root-presentation-B6OO_iCT.js.map +1 -0
  40. package/dist/{slider-value-Db8SCu0c.d.ts → slider-style-tokens-CZezJilZ.d.ts} +55 -55
  41. package/dist/slider-style-tokens-CZezJilZ.d.ts.map +1 -0
  42. package/dist/textarea-C8dsnn8D.d.ts +37 -0
  43. package/dist/textarea-C8dsnn8D.d.ts.map +1 -0
  44. package/dist/textarea-CkiM1N_I.js +39 -0
  45. package/dist/textarea-CkiM1N_I.js.map +1 -0
  46. package/dist/toggle-CxkIncmZ.d.ts +53 -0
  47. package/dist/toggle-CxkIncmZ.d.ts.map +1 -0
  48. package/dist/{tooltip-trigger-qXw-_nbh.js → tooltip-D0BEpCQx.js} +38 -13
  49. package/dist/tooltip-D0BEpCQx.js.map +1 -0
  50. package/dist/{tooltip-viewport-csA6luqI.d.ts → tooltip-DbJxt69l.d.ts} +61 -13
  51. package/dist/tooltip-DbJxt69l.d.ts.map +1 -0
  52. package/dist/ui/accordion.d.ts +4 -4
  53. package/dist/ui/accordion.d.ts.map +1 -1
  54. package/dist/ui/accordion.js +53 -52
  55. package/dist/ui/accordion.js.map +1 -1
  56. package/dist/ui/affix.d.ts +3 -2
  57. package/dist/ui/affix.d.ts.map +1 -1
  58. package/dist/ui/affix.js +8 -7
  59. package/dist/ui/affix.js.map +1 -1
  60. package/dist/ui/alert-dialog.d.ts +3 -1
  61. package/dist/ui/alert-dialog.d.ts.map +1 -1
  62. package/dist/ui/alert-dialog.js +10 -9
  63. package/dist/ui/alert-dialog.js.map +1 -1
  64. package/dist/ui/alert.d.ts +32 -32
  65. package/dist/ui/alert.d.ts.map +1 -1
  66. package/dist/ui/alert.js +86 -86
  67. package/dist/ui/alert.js.map +1 -1
  68. package/dist/ui/announcement.d.ts.map +1 -1
  69. package/dist/ui/announcement.js +5 -3
  70. package/dist/ui/announcement.js.map +1 -1
  71. package/dist/ui/aspect-ratio.d.ts.map +1 -1
  72. package/dist/ui/aspect-ratio.js.map +1 -1
  73. package/dist/ui/autocomplete.d.ts +74 -74
  74. package/dist/ui/autocomplete.d.ts.map +1 -1
  75. package/dist/ui/autocomplete.js +55 -53
  76. package/dist/ui/autocomplete.js.map +1 -1
  77. package/dist/ui/avatar.d.ts +2 -39
  78. package/dist/ui/avatar.js +2 -24
  79. package/dist/ui/badge.d.ts +28 -28
  80. package/dist/ui/badge.d.ts.map +1 -1
  81. package/dist/ui/badge.js +2 -54
  82. package/dist/ui/breadcrumb.d.ts +64 -64
  83. package/dist/ui/breadcrumb.d.ts.map +1 -1
  84. package/dist/ui/breadcrumb.js +47 -45
  85. package/dist/ui/breadcrumb.js.map +1 -1
  86. package/dist/ui/button-group.d.ts +34 -34
  87. package/dist/ui/button-group.d.ts.map +1 -1
  88. package/dist/ui/button-group.js +29 -28
  89. package/dist/ui/button-group.js.map +1 -1
  90. package/dist/ui/button.d.ts +2 -78
  91. package/dist/ui/button.js +42 -42
  92. package/dist/ui/button.js.map +1 -1
  93. package/dist/ui/card.d.ts.map +1 -1
  94. package/dist/ui/card.js +6 -6
  95. package/dist/ui/card.js.map +1 -1
  96. package/dist/ui/carousel.d.ts +1 -1
  97. package/dist/ui/carousel.d.ts.map +1 -1
  98. package/dist/ui/carousel.js +36 -17
  99. package/dist/ui/carousel.js.map +1 -1
  100. package/dist/ui/checkbox-group.d.ts.map +1 -1
  101. package/dist/ui/checkbox-group.js.map +1 -1
  102. package/dist/ui/checkbox.d.ts +20 -20
  103. package/dist/ui/checkbox.js +13 -13
  104. package/dist/ui/checkbox.js.map +1 -1
  105. package/dist/ui/code.d.ts.map +1 -1
  106. package/dist/ui/code.js +5 -5
  107. package/dist/ui/code.js.map +1 -1
  108. package/dist/ui/collapsible.js +1 -1
  109. package/dist/ui/collapsible.js.map +1 -1
  110. package/dist/ui/combobox.d.ts +107 -107
  111. package/dist/ui/combobox.d.ts.map +1 -1
  112. package/dist/ui/combobox.js +88 -87
  113. package/dist/ui/combobox.js.map +1 -1
  114. package/dist/ui/command.d.ts +57 -58
  115. package/dist/ui/command.d.ts.map +1 -1
  116. package/dist/ui/command.js +54 -64
  117. package/dist/ui/command.js.map +1 -1
  118. package/dist/ui/container.d.ts.map +1 -1
  119. package/dist/ui/container.js.map +1 -1
  120. package/dist/ui/context-menu.d.ts +132 -132
  121. package/dist/ui/context-menu.d.ts.map +1 -1
  122. package/dist/ui/context-menu.js +100 -98
  123. package/dist/ui/context-menu.js.map +1 -1
  124. package/dist/ui/copy-button.d.ts +1 -3
  125. package/dist/ui/copy-button.d.ts.map +1 -1
  126. package/dist/ui/copy-button.js +12 -13
  127. package/dist/ui/copy-button.js.map +1 -1
  128. package/dist/ui/dialog.d.ts +2 -66
  129. package/dist/ui/dialog.js +2 -24
  130. package/dist/ui/drawer.d.ts +91 -91
  131. package/dist/ui/drawer.d.ts.map +1 -1
  132. package/dist/ui/drawer.js +68 -66
  133. package/dist/ui/drawer.js.map +1 -1
  134. package/dist/ui/dropdown-menu.d.ts +3 -144
  135. package/dist/ui/dropdown-menu.js +2 -39
  136. package/dist/ui/dropzone.d.ts +55 -55
  137. package/dist/ui/dropzone.d.ts.map +1 -1
  138. package/dist/ui/dropzone.js +77 -72
  139. package/dist/ui/dropzone.js.map +1 -1
  140. package/dist/ui/emoji-picker.d.ts +79 -79
  141. package/dist/ui/emoji-picker.d.ts.map +1 -1
  142. package/dist/ui/emoji-picker.js +92 -87
  143. package/dist/ui/emoji-picker.js.map +1 -1
  144. package/dist/ui/empty.d.ts +61 -59
  145. package/dist/ui/empty.d.ts.map +1 -1
  146. package/dist/ui/empty.js +47 -44
  147. package/dist/ui/empty.js.map +1 -1
  148. package/dist/ui/field.d.ts +11 -11
  149. package/dist/ui/field.d.ts.map +1 -1
  150. package/dist/ui/field.js +9 -7
  151. package/dist/ui/field.js.map +1 -1
  152. package/dist/ui/fieldset.d.ts.map +1 -1
  153. package/dist/ui/fieldset.js.map +1 -1
  154. package/dist/ui/form.d.ts +8 -8
  155. package/dist/ui/form.d.ts.map +1 -1
  156. package/dist/ui/form.js.map +1 -1
  157. package/dist/ui/input-group.d.ts +35 -35
  158. package/dist/ui/input-group.d.ts.map +1 -1
  159. package/dist/ui/input-group.js +2 -28
  160. package/dist/ui/input-otp.d.ts +36 -36
  161. package/dist/ui/input-otp.d.ts.map +1 -1
  162. package/dist/ui/input-otp.js +29 -28
  163. package/dist/ui/input-otp.js.map +1 -1
  164. package/dist/ui/input.d.ts +2 -46
  165. package/dist/ui/input.js +2 -34
  166. package/dist/ui/item.d.ts +20 -20
  167. package/dist/ui/item.d.ts.map +1 -1
  168. package/dist/ui/item.js +22 -22
  169. package/dist/ui/item.js.map +1 -1
  170. package/dist/ui/kbd.d.ts.map +1 -1
  171. package/dist/ui/kbd.js +8 -8
  172. package/dist/ui/kbd.js.map +1 -1
  173. package/dist/ui/label.d.ts.map +1 -1
  174. package/dist/ui/label.js.map +1 -1
  175. package/dist/ui/marquee.d.ts.map +1 -1
  176. package/dist/ui/marquee.js +1 -1
  177. package/dist/ui/marquee.js.map +1 -1
  178. package/dist/ui/menubar.d.ts +133 -134
  179. package/dist/ui/menubar.d.ts.map +1 -1
  180. package/dist/ui/menubar.js +82 -81
  181. package/dist/ui/menubar.js.map +1 -1
  182. package/dist/ui/meter.d.ts.map +1 -1
  183. package/dist/ui/meter.js.map +1 -1
  184. package/dist/ui/navigation-list.d.ts +226 -226
  185. package/dist/ui/navigation-list.d.ts.map +1 -1
  186. package/dist/ui/navigation-list.js +240 -235
  187. package/dist/ui/navigation-list.js.map +1 -1
  188. package/dist/ui/navigation-menu.d.ts +82 -82
  189. package/dist/ui/navigation-menu.d.ts.map +1 -1
  190. package/dist/ui/navigation-menu.js +70 -67
  191. package/dist/ui/navigation-menu.js.map +1 -1
  192. package/dist/ui/number-field.d.ts +34 -34
  193. package/dist/ui/number-field.d.ts.map +1 -1
  194. package/dist/ui/number-field.js +24 -23
  195. package/dist/ui/number-field.js.map +1 -1
  196. package/dist/ui/pagination.d.ts +42 -42
  197. package/dist/ui/pagination.d.ts.map +1 -1
  198. package/dist/ui/pagination.js +43 -41
  199. package/dist/ui/pagination.js.map +1 -1
  200. package/dist/ui/pill.d.ts +2 -3
  201. package/dist/ui/pill.d.ts.map +1 -1
  202. package/dist/ui/pill.js +34 -23
  203. package/dist/ui/pill.js.map +1 -1
  204. package/dist/ui/popover.d.ts +13 -11
  205. package/dist/ui/popover.d.ts.map +1 -1
  206. package/dist/ui/popover.js +17 -14
  207. package/dist/ui/popover.js.map +1 -1
  208. package/dist/ui/portal.d.ts.map +1 -1
  209. package/dist/ui/portal.js +52 -11
  210. package/dist/ui/portal.js.map +1 -1
  211. package/dist/ui/preview-card.js +5 -5
  212. package/dist/ui/preview-card.js.map +1 -1
  213. package/dist/ui/progress.js.map +1 -1
  214. package/dist/ui/qr-code.d.ts.map +1 -1
  215. package/dist/ui/qr-code.js +7 -7
  216. package/dist/ui/qr-code.js.map +1 -1
  217. package/dist/ui/radio-group.d.ts +22 -22
  218. package/dist/ui/radio-group.js +15 -15
  219. package/dist/ui/radio-group.js.map +1 -1
  220. package/dist/ui/range-slider.d.ts +1 -1
  221. package/dist/ui/range-slider.d.ts.map +1 -1
  222. package/dist/ui/range-slider.js +4 -7
  223. package/dist/ui/range-slider.js.map +1 -1
  224. package/dist/ui/rating.d.ts +35 -35
  225. package/dist/ui/rating.d.ts.map +1 -1
  226. package/dist/ui/rating.js +55 -46
  227. package/dist/ui/rating.js.map +1 -1
  228. package/dist/ui/resizable.d.ts.map +1 -1
  229. package/dist/ui/resizable.js +2 -2
  230. package/dist/ui/resizable.js.map +1 -1
  231. package/dist/ui/scroll-area.js.map +1 -1
  232. package/dist/ui/select.d.ts +87 -87
  233. package/dist/ui/select.d.ts.map +1 -1
  234. package/dist/ui/select.js +85 -84
  235. package/dist/ui/select.js.map +1 -1
  236. package/dist/ui/separator.d.ts +2 -13
  237. package/dist/ui/separator.js.map +1 -1
  238. package/dist/ui/sheet.d.ts.map +1 -1
  239. package/dist/ui/sheet.js +2 -24
  240. package/dist/ui/sidebar.d.ts +73 -74
  241. package/dist/ui/sidebar.d.ts.map +1 -1
  242. package/dist/ui/sidebar.js +85 -84
  243. package/dist/ui/sidebar.js.map +1 -1
  244. package/dist/ui/skeleton.d.ts.map +1 -1
  245. package/dist/ui/skeleton.js +1 -1
  246. package/dist/ui/skeleton.js.map +1 -1
  247. package/dist/ui/slider.d.ts +1 -1
  248. package/dist/ui/slider.d.ts.map +1 -1
  249. package/dist/ui/slider.js +3 -1
  250. package/dist/ui/slider.js.map +1 -1
  251. package/dist/ui/spacer.d.ts.map +1 -1
  252. package/dist/ui/spacer.js +2 -2
  253. package/dist/ui/spacer.js.map +1 -1
  254. package/dist/ui/spinner.d.ts.map +1 -1
  255. package/dist/ui/spinner.js +2 -2
  256. package/dist/ui/spinner.js.map +1 -1
  257. package/dist/ui/switch.d.ts +11 -11
  258. package/dist/ui/switch.js +7 -7
  259. package/dist/ui/switch.js.map +1 -1
  260. package/dist/ui/table.d.ts +60 -60
  261. package/dist/ui/table.d.ts.map +1 -1
  262. package/dist/ui/table.js +52 -46
  263. package/dist/ui/table.js.map +1 -1
  264. package/dist/ui/tabs.d.ts +25 -25
  265. package/dist/ui/tabs.d.ts.map +1 -1
  266. package/dist/ui/tabs.js +75 -68
  267. package/dist/ui/tabs.js.map +1 -1
  268. package/dist/ui/textarea.d.ts +2 -37
  269. package/dist/ui/textarea.js +2 -35
  270. package/dist/ui/theme-icon.d.ts +30 -30
  271. package/dist/ui/theme-icon.d.ts.map +1 -1
  272. package/dist/ui/theme-icon.js +22 -22
  273. package/dist/ui/theme-icon.js.map +1 -1
  274. package/dist/ui/timeline.d.ts +6 -6
  275. package/dist/ui/timeline.d.ts.map +1 -1
  276. package/dist/ui/timeline.js +163 -163
  277. package/dist/ui/timeline.js.map +1 -1
  278. package/dist/ui/toggle-group.d.ts +32 -32
  279. package/dist/ui/toggle-group.d.ts.map +1 -1
  280. package/dist/ui/toggle-group.js +22 -16
  281. package/dist/ui/toggle-group.js.map +1 -1
  282. package/dist/ui/toggle.d.ts +2 -53
  283. package/dist/ui/toggle.js +15 -15
  284. package/dist/ui/toggle.js.map +1 -1
  285. package/dist/ui/toolbar.d.ts +54 -54
  286. package/dist/ui/toolbar.d.ts.map +1 -1
  287. package/dist/ui/toolbar.js +43 -40
  288. package/dist/ui/toolbar.js.map +1 -1
  289. package/dist/ui/tooltip.d.ts +2 -54
  290. package/dist/ui/tooltip.js +2 -28
  291. package/dist/ui/typography.d.ts +50 -36
  292. package/dist/ui/typography.d.ts.map +1 -1
  293. package/dist/ui/typography.js +28 -17
  294. package/dist/ui/typography.js.map +1 -1
  295. package/package.json +15 -15
  296. package/dist/avatar-image-BQ_NEKH4.js +0 -47
  297. package/dist/avatar-image-BQ_NEKH4.js.map +0 -1
  298. package/dist/avatar-image-Ce26D2fb.d.ts.map +0 -1
  299. package/dist/dialog-trigger-BUF3elAP.js.map +0 -1
  300. package/dist/dialog-viewport-Ce1huyAI.d.ts.map +0 -1
  301. package/dist/dropdown-menu-trigger-BpgtLUvf.d.ts.map +0 -1
  302. package/dist/dropdown-menu-trigger-COnFGfDa.js.map +0 -1
  303. package/dist/input-group-textarea-B-rP98r5.js.map +0 -1
  304. package/dist/sheet-trigger-D7neoTF5.js.map +0 -1
  305. package/dist/size-context-BjRwqlSg.js.map +0 -1
  306. package/dist/size-system-DTXmtQXw.js +0 -47
  307. package/dist/size-system-DTXmtQXw.js.map +0 -1
  308. package/dist/slider-root-presentation-ChJHPMIV.js.map +0 -1
  309. package/dist/slider-value-Db8SCu0c.d.ts.map +0 -1
  310. package/dist/tooltip-trigger-qXw-_nbh.js.map +0 -1
  311. package/dist/tooltip-viewport-csA6luqI.d.ts.map +0 -1
  312. package/dist/ui/avatar.d.ts.map +0 -1
  313. package/dist/ui/avatar.js.map +0 -1
  314. package/dist/ui/badge.js.map +0 -1
  315. package/dist/ui/button.d.ts.map +0 -1
  316. package/dist/ui/dialog.d.ts.map +0 -1
  317. package/dist/ui/dialog.js.map +0 -1
  318. package/dist/ui/dropdown-menu.d.ts.map +0 -1
  319. package/dist/ui/dropdown-menu.js.map +0 -1
  320. package/dist/ui/input-group.js.map +0 -1
  321. package/dist/ui/input.d.ts.map +0 -1
  322. package/dist/ui/input.js.map +0 -1
  323. package/dist/ui/separator.d.ts.map +0 -1
  324. package/dist/ui/sheet.js.map +0 -1
  325. package/dist/ui/textarea.d.ts.map +0 -1
  326. package/dist/ui/textarea.js.map +0 -1
  327. package/dist/ui/toggle.d.ts.map +0 -1
  328. package/dist/ui/tooltip.d.ts.map +0 -1
  329. package/dist/ui/tooltip.js.map +0 -1
  330. package/dist/use-badge-default-props-8d9wPL0k.js +0 -8
  331. package/dist/use-badge-default-props-8d9wPL0k.js.map +0 -1
  332. package/dist/use-input-default-props-B6VgKXGM.js +0 -8
  333. package/dist/use-input-default-props-B6VgKXGM.js.map +0 -1
  334. package/dist/use-textarea-default-props-7MlOxkDO.js +0 -8
  335. package/dist/use-textarea-default-props-7MlOxkDO.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"emoji-picker.js","names":["BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker"],"sources":["../../src/ui/emoji-picker/emoji-picker-active-emoji.tsx","../../src/ui/emoji-picker/emoji-picker-size-context.ts","../../src/ui/emoji-picker/emoji-picker-active-emoji-preview.tsx","../../src/ui/emoji-picker/emoji-picker-content.tsx","../../src/ui/emoji-picker/emoji-picker-empty.tsx","../../src/ui/emoji-picker/emoji-picker-list-category-header.tsx","../../src/ui/emoji-picker/emoji-picker-list-emoji.tsx","../../src/ui/emoji-picker/emoji-picker-list-row.tsx","../../src/ui/emoji-picker/emoji-picker-list.tsx","../../src/ui/emoji-picker/emoji-picker-loading.tsx","../../src/ui/emoji-picker/emoji-picker-search.tsx","../../src/ui/emoji-picker/emoji-picker-skin-tone.tsx","../../src/ui/emoji-picker/emoji-picker-skin-tone-selector.tsx","../../src/ui/emoji-picker/emoji-picker.tsx"],"sourcesContent":["import type { ComponentProps } from \"react\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\n\nexport type EmojiPickerActiveEmojiProps = ComponentProps<\n typeof BaseEmojiPicker.ActiveEmoji\n>;\n\nexport const EmojiPickerActiveEmoji = (props: EmojiPickerActiveEmojiProps) => (\n <BaseEmojiPicker.ActiveEmoji\n data-slot=\"emoji-picker-active-emoji\"\n {...props}\n />\n);\n","import type { UISize } from \"../shared/size/size-system\";\n\nimport { createSizeContext } from \"../shared/size/size-context\";\n\nexport type EmojiPickerSize = UISize;\n\nconst {\n SizeContext: EmojiPickerSizeContext,\n useResolvedSize: useEmojiPickerResolvedSize,\n} = createSizeContext();\n\nexport { EmojiPickerSizeContext, useEmojiPickerResolvedSize };\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { EmojiPickerActiveEmoji } from \"./emoji-picker-active-emoji\";\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerActiveEmojiPreviewVariants = tv({\n slots: {\n emoji: \"\",\n root: \"flex items-center rounded-md border-t bg-popover\",\n },\n variants: {\n size: {\n xs: {\n emoji: \"text-base\",\n root: \"gap-1.5 px-2 py-1 text-xs\",\n },\n sm: {\n emoji: \"text-base\",\n root: \"gap-2 px-2.5 py-1.5 text-sm\",\n },\n md: {\n emoji: \"text-lg\",\n root: \"gap-2 px-3 py-2 text-sm\",\n },\n lg: {\n emoji: \"text-xl\",\n root: \"gap-2.5 px-3.5 py-2 text-sm\",\n },\n xl: {\n emoji: \"text-2xl\",\n root: \"gap-3 px-4 py-2.5 text-base\",\n },\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerActiveEmojiPreviewVariantProps = Omit<\n VariantProps<typeof emojiPickerActiveEmojiPreviewVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerActiveEmojiPreviewProps = Omit<\n ComponentProps<typeof EmojiPickerActiveEmoji>,\n \"children\"\n> &\n EmojiPickerActiveEmojiPreviewVariantProps & {\n emptyText?: string;\n };\n\nexport const EmojiPickerActiveEmojiPreview = ({\n emptyText = \"Hover or navigate to see emoji details\",\n size,\n ...props\n}: EmojiPickerActiveEmojiPreviewProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n const { emoji, root } = emojiPickerActiveEmojiPreviewVariants({\n size: resolvedSize,\n });\n\n return (\n <EmojiPickerActiveEmoji {...props}>\n {({ emoji: activeEmoji }) => (\n <div\n className={cn(root(), !activeEmoji && \"text-muted-foreground\")}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-active-emoji-preview\"\n >\n {activeEmoji ? (\n <>\n <span className={emoji()}>{activeEmoji.emoji}</span>\n <span>{activeEmoji.label}</span>\n </>\n ) : (\n <span>{emptyText}</span>\n )}\n </div>\n )}\n </EmojiPickerActiveEmoji>\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport { cn } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n EmojiPickerSizeContext,\n useEmojiPickerResolvedSize,\n} from \"./emoji-picker-size-context\";\n\nexport type EmojiPickerContentProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.Viewport>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport const EmojiPickerContent = ({\n className,\n size,\n children,\n ...props\n}: EmojiPickerContentProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <EmojiPickerSizeContext.Provider value={{ size: resolvedSize }}>\n <BaseEmojiPicker.Viewport\n className={cn(\"relative flex-1 outline-hidden\", className)}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-content\"\n {...props}\n >\n {children}\n </BaseEmojiPicker.Viewport>\n </EmojiPickerSizeContext.Provider>\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerEmptyVariants = tv({\n base: \"absolute inset-0 flex items-center justify-center text-muted-foreground\",\n variants: {\n size: {\n xs: \"text-xs\",\n sm: \"text-sm\",\n md: \"text-sm\",\n lg: \"text-sm\",\n xl: \"text-base\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerEmptyVariantProps = Omit<\n VariantProps<typeof emojiPickerEmptyVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerEmptyProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.Empty>,\n \"size\"\n> &\n EmojiPickerEmptyVariantProps;\n\nexport const EmojiPickerEmpty = ({\n className,\n size,\n ...props\n}: EmojiPickerEmptyProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <BaseEmojiPicker.Empty\n className={cn(\n emojiPickerEmptyVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-empty\"\n {...props}\n />\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerListCategoryHeaderVariants = tv({\n base: \"bg-popover font-medium text-muted-foreground\",\n variants: {\n size: {\n xs: \"px-2 pb-1 text-[10px]\",\n sm: \"px-2.5 pb-1 text-xs\",\n md: \"px-3 pb-1.5 text-xs\",\n lg: \"px-3.5 pb-1.5 text-sm\",\n xl: \"px-4 pb-2 text-sm\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerListCategoryHeaderVariantProps = Omit<\n VariantProps<typeof emojiPickerListCategoryHeaderVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerListCategoryHeaderProps = {\n category: { label: string };\n} & ComponentProps<\"div\"> &\n EmojiPickerListCategoryHeaderVariantProps;\n\nexport const EmojiPickerListCategoryHeader = ({\n category,\n className,\n size,\n ...restProps\n}: EmojiPickerListCategoryHeaderProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <div\n className={cn(\n emojiPickerListCategoryHeaderVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-list-category-header\"\n {...restProps}\n >\n {category.label}\n </div>\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerListEmojiVariants = tv({\n base: \"flex cursor-pointer items-center justify-center rounded-md data-active:bg-accent\",\n variants: {\n size: {\n xs: \"size-6 text-sm\",\n sm: \"size-7 text-base\",\n md: \"size-8 text-lg\",\n lg: \"size-9 text-xl\",\n xl: \"size-10 text-2xl\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerListEmojiVariantProps = Omit<\n VariantProps<typeof emojiPickerListEmojiVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerListEmojiProps = {\n emoji: { emoji: string };\n} & ComponentProps<\"button\"> &\n EmojiPickerListEmojiVariantProps;\n\nexport const EmojiPickerListEmoji = ({\n emoji,\n className,\n size,\n ...restProps\n}: EmojiPickerListEmojiProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <button\n type=\"button\"\n className={cn(\n emojiPickerListEmojiVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-list-emoji\"\n {...restProps}\n >\n {emoji.emoji}\n </button>\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n EmojiPickerSizeContext,\n useEmojiPickerResolvedSize,\n} from \"./emoji-picker-size-context\";\n\nconst emojiPickerListRowVariants = tv({\n base: \"\",\n variants: {\n size: {\n xs: \"scroll-my-1 px-1\",\n sm: \"scroll-my-1.5 px-1.5\",\n md: \"scroll-my-1.5 px-1.5\",\n lg: \"scroll-my-2 px-2\",\n xl: \"scroll-my-2 px-2.5\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerListRowVariantProps = Omit<\n VariantProps<typeof emojiPickerListRowVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerListRowProps = ComponentProps<\"div\"> &\n EmojiPickerListRowVariantProps;\n\nexport const EmojiPickerListRow = ({\n children,\n className,\n size,\n ...restProps\n}: EmojiPickerListRowProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <EmojiPickerSizeContext.Provider value={{ size: resolvedSize }}>\n <div\n className={cn(\n emojiPickerListRowVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-list-row\"\n {...restProps}\n >\n {children}\n </div>\n </EmojiPickerSizeContext.Provider>\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { EmojiPickerListCategoryHeader as CategoryHeader } from \"./emoji-picker-list-category-header\";\nimport { EmojiPickerListEmoji as Emoji } from \"./emoji-picker-list-emoji\";\nimport { EmojiPickerListRow as Row } from \"./emoji-picker-list-row\";\nimport {\n EmojiPickerSizeContext,\n useEmojiPickerResolvedSize,\n} from \"./emoji-picker-size-context\";\n\nconst emojiPickerListVariants = tv({\n base: \"select-none\",\n variants: {\n size: {\n xs: \"pb-1.5\",\n sm: \"pb-2\",\n md: \"pb-2\",\n lg: \"pb-2.5\",\n xl: \"pb-3\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerListVariantProps = Omit<\n VariantProps<typeof emojiPickerListVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerListProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.List>,\n \"size\"\n> &\n EmojiPickerListVariantProps;\n\nexport const EmojiPickerList = ({\n className,\n size,\n ...props\n}: EmojiPickerListProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <EmojiPickerSizeContext.Provider value={{ size: resolvedSize }}>\n <BaseEmojiPicker.List\n className={cn(\n emojiPickerListVariants({ size: resolvedSize }),\n className\n )}\n components={{\n CategoryHeader,\n Row,\n Emoji,\n }}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-list\"\n {...props}\n />\n </EmojiPickerSizeContext.Provider>\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerLoadingVariants = tv({\n base: \"absolute inset-0 flex items-center justify-center text-muted-foreground\",\n variants: {\n size: {\n xs: \"text-xs\",\n sm: \"text-sm\",\n md: \"text-sm\",\n lg: \"text-sm\",\n xl: \"text-base\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerLoadingVariantProps = Omit<\n VariantProps<typeof emojiPickerLoadingVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerLoadingProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.Loading>,\n \"size\"\n> &\n EmojiPickerLoadingVariantProps;\n\nexport const EmojiPickerLoading = ({\n className,\n size,\n ...props\n}: EmojiPickerLoadingProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <BaseEmojiPicker.Loading\n className={cn(\n emojiPickerLoadingVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-loading\"\n {...props}\n />\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerSearchWrapperVariants = tv({\n variants: {\n size: {\n xs: \"p-1.5\",\n sm: \"p-2\",\n md: \"p-2\",\n lg: \"p-2.5\",\n xl: \"p-3\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\nconst emojiPickerSearchVariants = tv({\n base: \"z-50 flex w-full min-w-0 border border-input bg-input shadow-xs transition-[color,box-shadow,border-color] outline-none selection:bg-primary selection:text-primary-foreground placeholder:text-muted-foreground hover:border-ring/70 disabled:pointer-events-none disabled:opacity-50 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-danger aria-invalid:ring-danger/50\",\n variants: {\n size: {\n xs: \"h-6 rounded-[min(var(--radius-md),8px)] px-2 text-xs\",\n sm: \"h-8 rounded-[min(var(--radius-md),10px)] px-2.5 text-sm\",\n md: \"h-9 rounded-md px-3 text-base md:text-sm\",\n lg: \"h-10 rounded-md px-3 text-base md:text-sm\",\n xl: \"h-11 rounded-md px-4 text-base\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerSearchVariantProps = Omit<\n VariantProps<typeof emojiPickerSearchVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\ntype NativeEmojiPickerSearchProps = ComponentProps<\n typeof BaseEmojiPicker.Search\n>;\ntype NativeEmojiPickerSearchSize = NativeEmojiPickerSearchProps[\"size\"];\n\nexport type EmojiPickerSearchProps = Omit<\n NativeEmojiPickerSearchProps,\n \"size\"\n> &\n EmojiPickerSearchVariantProps & {\n htmlSize?: NativeEmojiPickerSearchSize;\n wrapperClassName?: string;\n };\n\nexport const EmojiPickerSearch = ({\n className,\n htmlSize,\n size,\n wrapperClassName,\n ...props\n}: EmojiPickerSearchProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <div\n className={cn(\n emojiPickerSearchWrapperVariants({ size: resolvedSize }),\n wrapperClassName\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-search-wrapper\"\n >\n <BaseEmojiPicker.Search\n className={cn(\n emojiPickerSearchVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-search\"\n size={htmlSize}\n {...props}\n />\n </div>\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nexport type EmojiPickerSkinToneProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.SkinTone>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport const EmojiPickerSkinTone = ({\n size,\n ...props\n}: EmojiPickerSkinToneProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <BaseEmojiPicker.SkinTone\n data-size={resolvedSize}\n data-slot=\"emoji-picker-skin-tone\"\n {...props}\n />\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerSkinToneSelectorVariants = tv({\n base: \"mx-2 mb-1.5 rounded-md bg-popover hover:bg-accent\",\n variants: {\n size: {\n xs: \"size-6 text-sm\",\n sm: \"size-7 text-base\",\n md: \"size-8 text-lg\",\n lg: \"size-9 text-xl\",\n xl: \"size-10 text-2xl\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerSkinToneSelectorVariantProps = Omit<\n VariantProps<typeof emojiPickerSkinToneSelectorVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerSkinToneSelectorProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.SkinToneSelector>,\n \"size\"\n> &\n EmojiPickerSkinToneSelectorVariantProps;\n\nexport const EmojiPickerSkinToneSelector = ({\n className,\n size,\n ...props\n}: EmojiPickerSkinToneSelectorProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <BaseEmojiPicker.SkinToneSelector\n className={cn(\n emojiPickerSkinToneSelectorVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-skin-tone-selector\"\n {...props}\n />\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { useComponentSize } from \"../shared/size/size-provider\";\nimport { EmojiPickerActiveEmoji } from \"./emoji-picker-active-emoji\";\nimport { EmojiPickerActiveEmojiPreview } from \"./emoji-picker-active-emoji-preview\";\nimport { EmojiPickerContent } from \"./emoji-picker-content\";\nimport { EmojiPickerEmpty } from \"./emoji-picker-empty\";\nimport { EmojiPickerList } from \"./emoji-picker-list\";\nimport { EmojiPickerLoading } from \"./emoji-picker-loading\";\nimport { EmojiPickerSearch } from \"./emoji-picker-search\";\nimport { EmojiPickerSizeContext } from \"./emoji-picker-size-context\";\nimport { EmojiPickerSkinTone } from \"./emoji-picker-skin-tone\";\nimport { EmojiPickerSkinToneSelector } from \"./emoji-picker-skin-tone-selector\";\n\nconst emojiPickerVariants = tv({\n base: \"isolate flex w-fit flex-col rounded-md border border-border bg-popover shadow-md\",\n variants: {\n size: {\n xs: \"h-64 rounded-[min(var(--radius-md),8px)]\",\n sm: \"h-72 rounded-[min(var(--radius-md),10px)]\",\n md: \"h-80\",\n lg: \"h-96\",\n xl: \"h-[28rem] rounded-xl\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n});\n\ntype EmojiPickerVariantProps = Omit<\n VariantProps<typeof emojiPickerVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.Root>,\n \"size\"\n> &\n EmojiPickerVariantProps;\n\nconst EmojiPicker = ({\n className,\n size: providedSize,\n ...props\n}: EmojiPickerProps) => {\n const size = useComponentSize(providedSize);\n\n return (\n <EmojiPickerSizeContext.Provider value={{ size }}>\n <BaseEmojiPicker.Root\n className={cn(emojiPickerVariants({ size }), className)}\n data-size={size}\n data-slot=\"emoji-picker\"\n {...props}\n />\n </EmojiPickerSizeContext.Provider>\n );\n};\n\nEmojiPicker.ActiveEmoji = EmojiPickerActiveEmoji;\nEmojiPicker.ActiveEmojiPreview = EmojiPickerActiveEmojiPreview;\nEmojiPicker.Content = EmojiPickerContent;\nEmojiPicker.Empty = EmojiPickerEmpty;\nEmojiPicker.List = EmojiPickerList;\nEmojiPicker.Loading = EmojiPickerLoading;\nEmojiPicker.Search = EmojiPickerSearch;\nEmojiPicker.SkinTone = EmojiPickerSkinTone;\nEmojiPicker.SkinToneSelector = EmojiPickerSkinToneSelector;\n\nexport type { EmojiPickerActiveEmojiProps } from \"./emoji-picker-active-emoji\";\nexport type { EmojiPickerActiveEmojiPreviewProps } from \"./emoji-picker-active-emoji-preview\";\nexport type { EmojiPickerContentProps } from \"./emoji-picker-content\";\nexport type { EmojiPickerEmptyProps } from \"./emoji-picker-empty\";\nexport type { EmojiPickerListProps } from \"./emoji-picker-list\";\nexport type { EmojiPickerLoadingProps } from \"./emoji-picker-loading\";\nexport type { EmojiPickerSearchProps } from \"./emoji-picker-search\";\nexport type { EmojiPickerSize } from \"./emoji-picker-size-context\";\nexport type { EmojiPickerSkinToneProps } from \"./emoji-picker-skin-tone\";\nexport type { EmojiPickerSkinToneSelectorProps } from \"./emoji-picker-skin-tone-selector\";\n\nexport {\n EmojiPicker,\n EmojiPickerActiveEmoji,\n EmojiPickerActiveEmojiPreview,\n EmojiPickerContent,\n EmojiPickerEmpty,\n EmojiPickerList,\n EmojiPickerLoading,\n EmojiPickerSearch,\n EmojiPickerSkinTone,\n EmojiPickerSkinToneSelector,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"emoji-picker.js","names":["BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker","BaseEmojiPicker"],"sources":["../../src/ui/emoji-picker/emoji-picker-active-emoji.tsx","../../src/ui/emoji-picker/emoji-picker-size-context.ts","../../src/ui/emoji-picker/emoji-picker-active-emoji-preview.tsx","../../src/ui/emoji-picker/emoji-picker-content.tsx","../../src/ui/emoji-picker/emoji-picker-empty.tsx","../../src/ui/emoji-picker/emoji-picker-list-category-header.tsx","../../src/ui/emoji-picker/emoji-picker-list-emoji.tsx","../../src/ui/emoji-picker/emoji-picker-list-row.tsx","../../src/ui/emoji-picker/emoji-picker-list.tsx","../../src/ui/emoji-picker/emoji-picker-loading.tsx","../../src/ui/emoji-picker/emoji-picker-search.tsx","../../src/ui/emoji-picker/emoji-picker-skin-tone.tsx","../../src/ui/emoji-picker/emoji-picker-skin-tone-selector.tsx","../../src/ui/emoji-picker/emoji-picker.tsx"],"sourcesContent":["import { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport type { ComponentProps } from \"react\";\n\nexport type EmojiPickerActiveEmojiProps = ComponentProps<\n typeof BaseEmojiPicker.ActiveEmoji\n>;\n\nexport const EmojiPickerActiveEmoji = (props: EmojiPickerActiveEmojiProps) => (\n <BaseEmojiPicker.ActiveEmoji\n data-slot=\"emoji-picker-active-emoji\"\n {...props}\n />\n);\n","import { createSizeContext } from \"../shared/size/size-context\";\nimport type { UISize } from \"../shared/size/size-system\";\n\nexport type EmojiPickerSize = UISize;\n\nconst {\n SizeContext: EmojiPickerSizeContext,\n useResolvedSize: useEmojiPickerResolvedSize,\n} = createSizeContext();\n\nexport { EmojiPickerSizeContext, useEmojiPickerResolvedSize };\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { EmojiPickerActiveEmoji } from \"./emoji-picker-active-emoji\";\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerActiveEmojiPreviewVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n slots: {\n emoji: \"\",\n root: \"bg-popover flex items-center rounded-md border-t\",\n },\n variants: {\n size: {\n lg: {\n emoji: \"text-xl\",\n root: \"gap-2.5 px-3.5 py-2 text-sm\",\n },\n md: {\n emoji: \"text-lg\",\n root: \"gap-2 px-3 py-2 text-sm\",\n },\n sm: {\n emoji: \"text-base\",\n root: \"gap-2 px-2.5 py-1.5 text-sm\",\n },\n xl: {\n emoji: \"text-2xl\",\n root: \"gap-3 px-4 py-2.5 text-base\",\n },\n xs: {\n emoji: \"text-base\",\n root: \"gap-1.5 px-2 py-1 text-xs\",\n },\n },\n },\n});\n\ntype EmojiPickerActiveEmojiPreviewVariantProps = Omit<\n VariantProps<typeof emojiPickerActiveEmojiPreviewVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerActiveEmojiPreviewProps = Omit<\n ComponentProps<typeof EmojiPickerActiveEmoji>,\n \"children\"\n> &\n EmojiPickerActiveEmojiPreviewVariantProps & {\n emptyText?: string;\n };\n\nexport const EmojiPickerActiveEmojiPreview = ({\n emptyText = \"Hover or navigate to see emoji details\",\n size,\n ...props\n}: EmojiPickerActiveEmojiPreviewProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n const { emoji, root } = emojiPickerActiveEmojiPreviewVariants({\n size: resolvedSize,\n });\n\n return (\n <EmojiPickerActiveEmoji {...props}>\n {({ emoji: activeEmoji }) => (\n <div\n className={cn(root(), !activeEmoji && \"text-muted-foreground\")}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-active-emoji-preview\"\n >\n {activeEmoji ? (\n <>\n <span className={emoji()}>{activeEmoji.emoji}</span>\n <span>{activeEmoji.label}</span>\n </>\n ) : (\n <span>{emptyText}</span>\n )}\n </div>\n )}\n </EmojiPickerActiveEmoji>\n );\n};\n","\"use client\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport type { ComponentProps } from \"react\";\nimport { useMemo } from \"react\";\nimport { cn } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n EmojiPickerSizeContext,\n useEmojiPickerResolvedSize,\n} from \"./emoji-picker-size-context\";\n\nexport type EmojiPickerContentProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.Viewport>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport const EmojiPickerContent = ({\n className,\n size,\n children,\n ...props\n}: EmojiPickerContentProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n const contextValue = useMemo(() => ({ size: resolvedSize }), [resolvedSize]);\n\n return (\n <EmojiPickerSizeContext.Provider value={contextValue}>\n <BaseEmojiPicker.Viewport\n className={cn(\"relative flex-1 outline-hidden\", className)}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-content\"\n {...props}\n >\n {children}\n </BaseEmojiPicker.Viewport>\n </EmojiPickerSizeContext.Provider>\n );\n};\n","\"use client\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerEmptyVariants = tv({\n base: \"text-muted-foreground absolute inset-0 flex items-center justify-center\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"text-sm\",\n md: \"text-sm\",\n sm: \"text-sm\",\n xl: \"text-base\",\n xs: \"text-xs\",\n },\n },\n});\n\ntype EmojiPickerEmptyVariantProps = Omit<\n VariantProps<typeof emojiPickerEmptyVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerEmptyProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.Empty>,\n \"size\"\n> &\n EmojiPickerEmptyVariantProps;\n\nexport const EmojiPickerEmpty = ({\n className,\n size,\n ...props\n}: EmojiPickerEmptyProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <BaseEmojiPicker.Empty\n className={cn(\n emojiPickerEmptyVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-empty\"\n {...props}\n />\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerListCategoryHeaderVariants = tv({\n base: \"bg-popover text-muted-foreground font-medium\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"px-3.5 pb-1.5 text-sm\",\n md: \"px-3 pb-1.5 text-xs\",\n sm: \"px-2.5 pb-1 text-xs\",\n xl: \"px-4 pb-2 text-sm\",\n xs: \"px-2 pb-1 text-[10px]\",\n },\n },\n});\n\ntype EmojiPickerListCategoryHeaderVariantProps = Omit<\n VariantProps<typeof emojiPickerListCategoryHeaderVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerListCategoryHeaderProps = {\n category: { label: string };\n} & ComponentProps<\"div\"> &\n EmojiPickerListCategoryHeaderVariantProps;\n\nexport const EmojiPickerListCategoryHeader = ({\n category,\n className,\n size,\n ...restProps\n}: EmojiPickerListCategoryHeaderProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <div\n className={cn(\n emojiPickerListCategoryHeaderVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-list-category-header\"\n {...restProps}\n >\n {category.label}\n </div>\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerListEmojiVariants = tv({\n base: \"cursor-clickable data-active:bg-accent flex items-center justify-center rounded-md\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"size-9 text-xl\",\n md: \"size-8 text-lg\",\n sm: \"size-7 text-base\",\n xl: \"size-10 text-2xl\",\n xs: \"size-6 text-sm\",\n },\n },\n});\n\ntype EmojiPickerListEmojiVariantProps = Omit<\n VariantProps<typeof emojiPickerListEmojiVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerListEmojiProps = {\n emoji: { emoji: string };\n} & ComponentProps<\"button\"> &\n EmojiPickerListEmojiVariantProps;\n\nexport const EmojiPickerListEmoji = ({\n emoji,\n className,\n size,\n ...restProps\n}: EmojiPickerListEmojiProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <button\n type=\"button\"\n className={cn(\n emojiPickerListEmojiVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-list-emoji\"\n {...restProps}\n >\n {emoji.emoji}\n </button>\n );\n};\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\nimport { useMemo } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n EmojiPickerSizeContext,\n useEmojiPickerResolvedSize,\n} from \"./emoji-picker-size-context\";\n\nconst emojiPickerListRowVariants = tv({\n base: \"\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"scroll-my-2 px-2\",\n md: \"scroll-my-1.5 px-1.5\",\n sm: \"scroll-my-1.5 px-1.5\",\n xl: \"scroll-my-2 px-2.5\",\n xs: \"scroll-my-1 px-1\",\n },\n },\n});\n\ntype EmojiPickerListRowVariantProps = Omit<\n VariantProps<typeof emojiPickerListRowVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerListRowProps = ComponentProps<\"div\"> &\n EmojiPickerListRowVariantProps;\n\nexport const EmojiPickerListRow = ({\n children,\n className,\n size,\n ...restProps\n}: EmojiPickerListRowProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n const contextValue = useMemo(() => ({ size: resolvedSize }), [resolvedSize]);\n\n return (\n <EmojiPickerSizeContext.Provider value={contextValue}>\n <div\n className={cn(\n emojiPickerListRowVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-list-row\"\n {...restProps}\n >\n {children}\n </div>\n </EmojiPickerSizeContext.Provider>\n );\n};\n","\"use client\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport type { ComponentProps } from \"react\";\nimport { useMemo } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { EmojiPickerListCategoryHeader as CategoryHeader } from \"./emoji-picker-list-category-header\";\nimport { EmojiPickerListEmoji as Emoji } from \"./emoji-picker-list-emoji\";\nimport { EmojiPickerListRow as Row } from \"./emoji-picker-list-row\";\nimport {\n EmojiPickerSizeContext,\n useEmojiPickerResolvedSize,\n} from \"./emoji-picker-size-context\";\n\nconst emojiPickerListVariants = tv({\n base: \"select-none\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"pb-2.5\",\n md: \"pb-2\",\n sm: \"pb-2\",\n xl: \"pb-3\",\n xs: \"pb-1.5\",\n },\n },\n});\n\ntype EmojiPickerListVariantProps = Omit<\n VariantProps<typeof emojiPickerListVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerListProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.List>,\n \"size\"\n> &\n EmojiPickerListVariantProps;\n\nexport const EmojiPickerList = ({\n className,\n size,\n ...props\n}: EmojiPickerListProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n const contextValue = useMemo(() => ({ size: resolvedSize }), [resolvedSize]);\n\n return (\n <EmojiPickerSizeContext.Provider value={contextValue}>\n <BaseEmojiPicker.List\n className={cn(\n emojiPickerListVariants({ size: resolvedSize }),\n className\n )}\n components={{\n CategoryHeader,\n Emoji,\n Row,\n }}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-list\"\n {...props}\n />\n </EmojiPickerSizeContext.Provider>\n );\n};\n","\"use client\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerLoadingVariants = tv({\n base: \"text-muted-foreground absolute inset-0 flex items-center justify-center\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"text-sm\",\n md: \"text-sm\",\n sm: \"text-sm\",\n xl: \"text-base\",\n xs: \"text-xs\",\n },\n },\n});\n\ntype EmojiPickerLoadingVariantProps = Omit<\n VariantProps<typeof emojiPickerLoadingVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerLoadingProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.Loading>,\n \"size\"\n> &\n EmojiPickerLoadingVariantProps;\n\nexport const EmojiPickerLoading = ({\n className,\n size,\n ...props\n}: EmojiPickerLoadingProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <BaseEmojiPicker.Loading\n className={cn(\n emojiPickerLoadingVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-loading\"\n {...props}\n />\n );\n};\n","\"use client\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerSearchWrapperVariants = tv({\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"p-2.5\",\n md: \"p-2\",\n sm: \"p-2\",\n xl: \"p-3\",\n xs: \"p-1.5\",\n },\n },\n});\n\nconst emojiPickerSearchVariants = tv({\n base: \"z-overlay border-input bg-input selection:bg-primary selection:text-primary-foreground placeholder:text-muted-foreground hover:border-ring/70 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:border-danger aria-invalid:ring-danger/50 flex w-full min-w-0 border shadow-xs transition-[color,box-shadow,border-color] outline-none focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"h-10 rounded-md px-3 text-base md:text-sm\",\n md: \"h-9 rounded-md px-3 text-base md:text-sm\",\n sm: \"h-8 rounded-[min(var(--radius-md),10px)] px-2.5 text-sm\",\n xl: \"h-11 rounded-md px-4 text-base\",\n xs: \"h-6 rounded-[min(var(--radius-md),8px)] px-2 text-xs\",\n },\n },\n});\n\ntype EmojiPickerSearchVariantProps = Omit<\n VariantProps<typeof emojiPickerSearchVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\ntype NativeEmojiPickerSearchProps = ComponentProps<\n typeof BaseEmojiPicker.Search\n>;\ntype NativeEmojiPickerSearchSize = NativeEmojiPickerSearchProps[\"size\"];\n\nexport type EmojiPickerSearchProps = Omit<\n NativeEmojiPickerSearchProps,\n \"size\"\n> &\n EmojiPickerSearchVariantProps & {\n htmlSize?: NativeEmojiPickerSearchSize;\n wrapperClassName?: string;\n };\n\nexport const EmojiPickerSearch = ({\n className,\n htmlSize,\n size,\n wrapperClassName,\n ...props\n}: EmojiPickerSearchProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <div\n className={cn(\n emojiPickerSearchWrapperVariants({ size: resolvedSize }),\n wrapperClassName\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-search-wrapper\"\n >\n <BaseEmojiPicker.Search\n className={cn(\n emojiPickerSearchVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-search\"\n size={htmlSize}\n {...props}\n />\n </div>\n );\n};\n","\"use client\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport type { ComponentProps } from \"react\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nexport type EmojiPickerSkinToneProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.SkinTone>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport const EmojiPickerSkinTone = ({\n size,\n ...props\n}: EmojiPickerSkinToneProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <BaseEmojiPicker.SkinTone\n data-size={resolvedSize}\n data-slot=\"emoji-picker-skin-tone\"\n {...props}\n />\n );\n};\n","\"use client\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { useEmojiPickerResolvedSize } from \"./emoji-picker-size-context\";\n\nconst emojiPickerSkinToneSelectorVariants = tv({\n base: \"bg-popover hover:bg-accent mx-2 mb-1.5 rounded-md\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"size-9 text-xl\",\n md: \"size-8 text-lg\",\n sm: \"size-7 text-base\",\n xl: \"size-10 text-2xl\",\n xs: \"size-6 text-sm\",\n },\n },\n});\n\ntype EmojiPickerSkinToneSelectorVariantProps = Omit<\n VariantProps<typeof emojiPickerSkinToneSelectorVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerSkinToneSelectorProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.SkinToneSelector>,\n \"size\"\n> &\n EmojiPickerSkinToneSelectorVariantProps;\n\nexport const EmojiPickerSkinToneSelector = ({\n className,\n size,\n ...props\n}: EmojiPickerSkinToneSelectorProps) => {\n const resolvedSize = useEmojiPickerResolvedSize(size);\n\n return (\n <BaseEmojiPicker.SkinToneSelector\n className={cn(\n emojiPickerSkinToneSelectorVariants({ size: resolvedSize }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"emoji-picker-skin-tone-selector\"\n {...props}\n />\n );\n};\n","\"use client\";\n\nimport { EmojiPicker as BaseEmojiPicker } from \"frimousse\";\nimport type { ComponentProps } from \"react\";\nimport { useMemo } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport { useComponentSize } from \"../shared/size/size-provider\";\nimport type { UISize } from \"../shared/size/size-system\";\nimport { EmojiPickerActiveEmoji } from \"./emoji-picker-active-emoji\";\nimport { EmojiPickerActiveEmojiPreview } from \"./emoji-picker-active-emoji-preview\";\nimport { EmojiPickerContent } from \"./emoji-picker-content\";\nimport { EmojiPickerEmpty } from \"./emoji-picker-empty\";\nimport { EmojiPickerList } from \"./emoji-picker-list\";\nimport { EmojiPickerLoading } from \"./emoji-picker-loading\";\nimport { EmojiPickerSearch } from \"./emoji-picker-search\";\nimport { EmojiPickerSizeContext } from \"./emoji-picker-size-context\";\nimport { EmojiPickerSkinTone } from \"./emoji-picker-skin-tone\";\nimport { EmojiPickerSkinToneSelector } from \"./emoji-picker-skin-tone-selector\";\n\nconst emojiPickerVariants = tv({\n base: \"border-border bg-popover isolate flex w-fit flex-col rounded-md border shadow-md\",\n defaultVariants: {\n size: \"md\",\n },\n variants: {\n size: {\n lg: \"h-96\",\n md: \"h-80\",\n sm: \"h-72 rounded-[min(var(--radius-md),10px)]\",\n xl: \"h-[28rem] rounded-xl\",\n xs: \"h-64 rounded-[min(var(--radius-md),8px)]\",\n },\n },\n});\n\ntype EmojiPickerVariantProps = Omit<\n VariantProps<typeof emojiPickerVariants>,\n \"size\"\n> & {\n size?: UISize;\n};\n\nexport type EmojiPickerProps = Omit<\n ComponentProps<typeof BaseEmojiPicker.Root>,\n \"size\"\n> &\n EmojiPickerVariantProps;\n\nconst EmojiPicker = ({\n className,\n size: providedSize,\n ...props\n}: EmojiPickerProps) => {\n const size = useComponentSize(providedSize);\n const contextValue = useMemo(() => ({ size }), [size]);\n\n return (\n <EmojiPickerSizeContext.Provider value={contextValue}>\n <BaseEmojiPicker.Root\n className={cn(emojiPickerVariants({ size }), className)}\n data-size={size}\n data-slot=\"emoji-picker\"\n {...props}\n />\n </EmojiPickerSizeContext.Provider>\n );\n};\n\nEmojiPicker.ActiveEmoji = EmojiPickerActiveEmoji;\nEmojiPicker.ActiveEmojiPreview = EmojiPickerActiveEmojiPreview;\nEmojiPicker.Content = EmojiPickerContent;\nEmojiPicker.Empty = EmojiPickerEmpty;\nEmojiPicker.List = EmojiPickerList;\nEmojiPicker.Loading = EmojiPickerLoading;\nEmojiPicker.Search = EmojiPickerSearch;\nEmojiPicker.SkinTone = EmojiPickerSkinTone;\nEmojiPicker.SkinToneSelector = EmojiPickerSkinToneSelector;\n\nexport type { EmojiPickerActiveEmojiProps } from \"./emoji-picker-active-emoji\";\nexport type { EmojiPickerActiveEmojiPreviewProps } from \"./emoji-picker-active-emoji-preview\";\nexport type { EmojiPickerContentProps } from \"./emoji-picker-content\";\nexport type { EmojiPickerEmptyProps } from \"./emoji-picker-empty\";\nexport type { EmojiPickerListProps } from \"./emoji-picker-list\";\nexport type { EmojiPickerLoadingProps } from \"./emoji-picker-loading\";\nexport type { EmojiPickerSearchProps } from \"./emoji-picker-search\";\nexport type { EmojiPickerSize } from \"./emoji-picker-size-context\";\nexport type { EmojiPickerSkinToneProps } from \"./emoji-picker-skin-tone\";\nexport type { EmojiPickerSkinToneSelectorProps } from \"./emoji-picker-skin-tone-selector\";\n\nexport {\n EmojiPicker,\n EmojiPickerActiveEmoji,\n EmojiPickerActiveEmojiPreview,\n EmojiPickerContent,\n EmojiPickerEmpty,\n EmojiPickerList,\n EmojiPickerLoading,\n EmojiPickerSearch,\n EmojiPickerSkinTone,\n EmojiPickerSkinToneSelector,\n};\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { t as UISize } from "../size-system-wzOLSuax.js";
2
- import { Button } from "./button.js";
2
+ import { t as Button } from "../button-nAbTNrxA.js";
3
3
  import { ComponentProps } from "react";
4
4
  import * as react_jsx_runtime0 from "react/jsx-runtime";
5
5
  import * as tailwind_variants0 from "tailwind-variants";
@@ -10,6 +10,7 @@ type EmptyButtonProps = Omit<ComponentProps<typeof Button>, "size"> & {
10
10
  size?: UISize;
11
11
  };
12
12
  declare const EmptyButton: ({
13
+ className,
13
14
  size,
14
15
  ...props
15
16
  }: EmptyButtonProps) => react_jsx_runtime0.JSX.Element;
@@ -17,27 +18,27 @@ declare const EmptyButton: ({
17
18
  //#region src/ui/empty/empty-content.d.ts
18
19
  declare const emptyContentVariants: tailwind_variants0.TVReturnType<{
19
20
  size: {
20
- xs: string;
21
- sm: string;
22
- md: string;
23
21
  lg: string;
22
+ md: string;
23
+ sm: string;
24
24
  xl: string;
25
+ xs: string;
25
26
  };
26
27
  }, undefined, "flex w-full min-w-0 flex-col items-center text-balance", {
27
28
  size: {
28
- xs: string;
29
- sm: string;
30
- md: string;
31
29
  lg: string;
30
+ md: string;
31
+ sm: string;
32
32
  xl: string;
33
+ xs: string;
33
34
  };
34
35
  }, undefined, tailwind_variants0.TVReturnType<{
35
36
  size: {
36
- xs: string;
37
- sm: string;
38
- md: string;
39
37
  lg: string;
38
+ md: string;
39
+ sm: string;
40
40
  xl: string;
41
+ xs: string;
41
42
  };
42
43
  }, undefined, "flex w-full min-w-0 flex-col items-center text-balance", unknown, unknown, undefined>>;
43
44
  type EmptyContentVariantProps = Omit<VariantProps<typeof emptyContentVariants>, "size"> & {
@@ -53,29 +54,29 @@ declare const EmptyContent: ({
53
54
  //#region src/ui/empty/empty-description.d.ts
54
55
  declare const emptyDescriptionVariants: tailwind_variants0.TVReturnType<{
55
56
  size: {
56
- xs: string;
57
- sm: string;
58
- md: string;
59
57
  lg: string;
58
+ md: string;
59
+ sm: string;
60
60
  xl: string;
61
+ xs: string;
61
62
  };
62
- }, undefined, "text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary-foreground", {
63
+ }, undefined, "text-muted-foreground [&>a:hover]:text-primary-foreground [&>a]:underline [&>a]:underline-offset-4", {
63
64
  size: {
64
- xs: string;
65
- sm: string;
66
- md: string;
67
65
  lg: string;
66
+ md: string;
67
+ sm: string;
68
68
  xl: string;
69
+ xs: string;
69
70
  };
70
71
  }, undefined, tailwind_variants0.TVReturnType<{
71
72
  size: {
72
- xs: string;
73
- sm: string;
74
- md: string;
75
73
  lg: string;
74
+ md: string;
75
+ sm: string;
76
76
  xl: string;
77
+ xs: string;
77
78
  };
78
- }, undefined, "text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary-foreground", unknown, unknown, undefined>>;
79
+ }, undefined, "text-muted-foreground [&>a:hover]:text-primary-foreground [&>a]:underline [&>a]:underline-offset-4", unknown, unknown, undefined>>;
79
80
  type EmptyDescriptionVariantProps = Omit<VariantProps<typeof emptyDescriptionVariants>, "size"> & {
80
81
  size?: UISize;
81
82
  };
@@ -89,27 +90,27 @@ declare const EmptyDescription: ({
89
90
  //#region src/ui/empty/empty-header.d.ts
90
91
  declare const emptyHeaderVariants: tailwind_variants0.TVReturnType<{
91
92
  size: {
92
- xs: string;
93
- sm: string;
94
- md: string;
95
93
  lg: string;
94
+ md: string;
95
+ sm: string;
96
96
  xl: string;
97
+ xs: string;
97
98
  };
98
99
  }, undefined, "flex flex-col items-center", {
99
100
  size: {
100
- xs: string;
101
- sm: string;
102
- md: string;
103
101
  lg: string;
102
+ md: string;
103
+ sm: string;
104
104
  xl: string;
105
+ xs: string;
105
106
  };
106
107
  }, undefined, tailwind_variants0.TVReturnType<{
107
108
  size: {
108
- xs: string;
109
- sm: string;
110
- md: string;
111
109
  lg: string;
110
+ md: string;
111
+ sm: string;
112
112
  xl: string;
113
+ xs: string;
113
114
  };
114
115
  }, undefined, "flex flex-col items-center", unknown, unknown, undefined>>;
115
116
  type EmptyHeaderVariantProps = Omit<VariantProps<typeof emptyHeaderVariants>, "size"> & {
@@ -125,11 +126,11 @@ declare const EmptyHeader: ({
125
126
  //#region src/ui/empty/empty-media.d.ts
126
127
  declare const emptyMediaVariants: tailwind_variants0.TVReturnType<{
127
128
  size: {
128
- xs: string;
129
- sm: string;
130
- md: string;
131
129
  lg: string;
130
+ md: string;
131
+ sm: string;
132
132
  xl: string;
133
+ xs: string;
133
134
  };
134
135
  variant: {
135
136
  default: string;
@@ -137,11 +138,11 @@ declare const emptyMediaVariants: tailwind_variants0.TVReturnType<{
137
138
  };
138
139
  }, undefined, "mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0", {
139
140
  size: {
140
- xs: string;
141
- sm: string;
142
- md: string;
143
141
  lg: string;
142
+ md: string;
143
+ sm: string;
144
144
  xl: string;
145
+ xs: string;
145
146
  };
146
147
  variant: {
147
148
  default: string;
@@ -149,11 +150,11 @@ declare const emptyMediaVariants: tailwind_variants0.TVReturnType<{
149
150
  };
150
151
  }, undefined, tailwind_variants0.TVReturnType<{
151
152
  size: {
152
- xs: string;
153
- sm: string;
154
- md: string;
155
153
  lg: string;
154
+ md: string;
155
+ sm: string;
156
156
  xl: string;
157
+ xs: string;
157
158
  };
158
159
  variant: {
159
160
  default: string;
@@ -174,29 +175,29 @@ declare const EmptyMedia: ({
174
175
  //#region src/ui/empty/empty-title.d.ts
175
176
  declare const emptyTitleVariants: tailwind_variants0.TVReturnType<{
176
177
  size: {
177
- xs: string;
178
- sm: string;
179
- md: string;
180
178
  lg: string;
179
+ md: string;
180
+ sm: string;
181
181
  xl: string;
182
+ xs: string;
182
183
  };
183
- }, undefined, "font-medium tracking-tight text-foreground", {
184
+ }, undefined, "text-foreground font-medium tracking-tight", {
184
185
  size: {
185
- xs: string;
186
- sm: string;
187
- md: string;
188
186
  lg: string;
187
+ md: string;
188
+ sm: string;
189
189
  xl: string;
190
+ xs: string;
190
191
  };
191
192
  }, undefined, tailwind_variants0.TVReturnType<{
192
193
  size: {
193
- xs: string;
194
- sm: string;
195
- md: string;
196
194
  lg: string;
195
+ md: string;
196
+ sm: string;
197
197
  xl: string;
198
+ xs: string;
198
199
  };
199
- }, undefined, "font-medium tracking-tight text-foreground", unknown, unknown, undefined>>;
200
+ }, undefined, "text-foreground font-medium tracking-tight", unknown, unknown, undefined>>;
200
201
  type EmptyTitleVariantProps = Omit<VariantProps<typeof emptyTitleVariants>, "size"> & {
201
202
  size?: UISize;
202
203
  };
@@ -210,27 +211,27 @@ declare const EmptyTitle: ({
210
211
  //#region src/ui/empty/empty.d.ts
211
212
  declare const emptyVariants: tailwind_variants0.TVReturnType<{
212
213
  size: {
213
- xs: string;
214
- sm: string;
215
- md: string;
216
214
  lg: string;
215
+ md: string;
216
+ sm: string;
217
217
  xl: string;
218
+ xs: string;
218
219
  };
219
220
  }, undefined, "flex w-full min-w-0 flex-1 flex-col items-center justify-center rounded-lg border-dashed text-center text-balance", {
220
221
  size: {
221
- xs: string;
222
- sm: string;
223
- md: string;
224
222
  lg: string;
223
+ md: string;
224
+ sm: string;
225
225
  xl: string;
226
+ xs: string;
226
227
  };
227
228
  }, undefined, tailwind_variants0.TVReturnType<{
228
229
  size: {
229
- xs: string;
230
- sm: string;
231
- md: string;
232
230
  lg: string;
231
+ md: string;
232
+ sm: string;
233
233
  xl: string;
234
+ xs: string;
234
235
  };
235
236
  }, undefined, "flex w-full min-w-0 flex-1 flex-col items-center justify-center rounded-lg border-dashed text-center text-balance", unknown, unknown, undefined>>;
236
237
  type EmptyVariantProps = Omit<VariantProps<typeof emptyVariants>, "size"> & {
@@ -244,6 +245,7 @@ declare const Empty: {
244
245
  ...props
245
246
  }: EmptyProps): react_jsx_runtime0.JSX.Element;
246
247
  Button: ({
248
+ className,
247
249
  size,
248
250
  ...props
249
251
  }: EmptyButtonProps) => react_jsx_runtime0.JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"empty.d.ts","names":[],"sources":["../../src/ui/empty/empty-button.tsx","../../src/ui/empty/empty-content.tsx","../../src/ui/empty/empty-description.tsx","../../src/ui/empty/empty-header.tsx","../../src/ui/empty/empty-media.tsx","../../src/ui/empty/empty-title.tsx","../../src/ui/empty/empty.tsx"],"mappings":";;;;;;;;KAUY,gBAAA,GAAmB,IAAA,CAAK,cAAA,QAAsB,MAAA;EACxD,IAAA,GAAO,MAAA;AAAA;AAAA,cAGH,WAAA;EAAe,IAAA;EAAA,GAAA;AAAA,GAAoB,gBAAA,KAAgB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cCNnD,oBAAA,EAcJ,kBAAA,CAdwB,YAAA;;;;;;;;;;;;;;;;cAcxB,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,wBAAA,GAA2B,IAAA,CAC9B,YAAA,QAAoB,oBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,iBAAA,GAAoB,cAAA,UAC9B,wBAAA;AAAA,cAEI,YAAA;EAAgB,SAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAA+B,iBAAA,KAAiB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cC1BhE,wBAAA,EAcJ,kBAAA,CAd4B,YAAA;;;;;;;;;;;;;;;;cAc5B,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,4BAAA,GAA+B,IAAA,CAClC,YAAA,QAAoB,wBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,qBAAA,GAAwB,cAAA,QAClC,4BAAA;AAAA,cAEI,gBAAA;EAAoB,SAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAIvB,qBAAA,KAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cC9BlB,mBAAA,EAcJ,kBAAA,CAduB,YAAA;;;;;;;;;;;;;;;;cAcvB,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,uBAAA,GAA0B,IAAA,CAC7B,YAAA,QAAoB,mBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,gBAAA,GAAmB,cAAA,UAAwB,uBAAA;AAAA,cAEjD,WAAA;EAAe,SAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAA+B,gBAAA,KAAgB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cCzB9D,kBAAA,EA8CJ,kBAAA,CA9CsB,YAAA;;;;;;;;;;;;;;;;;;;;;;;;cA8CtB,kBAAA,CAAA,YAAA;;;;;;;;;;;;;KAEG,sBAAA,GAAyB,IAAA,CAC5B,YAAA,QAAoB,kBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,eAAA,GAAkB,cAAA,UAAwB,sBAAA;AAAA,cAEhD,UAAA;EAAc,SAAA;EAAA,IAAA;EAAA,OAAA;EAAA,GAAA;AAAA,GAKjB,eAAA,KAAe,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cC9DZ,kBAAA,EAcJ,kBAAA,CAdsB,YAAA;;;;;;;;;;;;;;;;cActB,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,sBAAA,GAAyB,IAAA,CAC5B,YAAA,QAAoB,kBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,eAAA,GAAkB,cAAA,UAAwB,sBAAA;AAAA,cAEhD,UAAA;EAAc,SAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAA+B,eAAA,KAAe,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cChB5D,aAAA,EAcJ,kBAAA,CAdiB,YAAA;;;;;;;;;;;;;;;;cAcjB,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,iBAAA,GAAoB,IAAA,CAAK,YAAA,QAAoB,aAAA;EAChD,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,UAAA,GAAa,cAAA,UAAwB,iBAAA;AAAA,cAE3C,KAAA;EAAA;;;;KAAsD,UAAA,GAAU,kBAAA,CAAA,GAAA,CAAA,OAAA"}
1
+ {"version":3,"file":"empty.d.ts","names":[],"sources":["../../src/ui/empty/empty-button.tsx","../../src/ui/empty/empty-content.tsx","../../src/ui/empty/empty-description.tsx","../../src/ui/empty/empty-header.tsx","../../src/ui/empty/empty-media.tsx","../../src/ui/empty/empty-title.tsx","../../src/ui/empty/empty.tsx"],"mappings":";;;;;;;;KAUY,gBAAA,GAAmB,IAAA,CAAK,cAAA,QAAsB,MAAA;EACxD,IAAA,GAAO,MAAA;AAAA;AAAA,cAGH,WAAA;EAAe,SAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAA+B,gBAAA,KAAgB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cCP9D,oBAAA,EAcJ,kBAAA,CAdwB,YAAA;;;;;;;;;;;;;;;;cAcxB,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,wBAAA,GAA2B,IAAA,CAC9B,YAAA,QAAoB,oBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,iBAAA,GAAoB,cAAA,UAC9B,wBAAA;AAAA,cAEI,YAAA;EAAgB,SAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAA+B,iBAAA,KAAiB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cC1BhE,wBAAA,EAcJ,kBAAA,CAd4B,YAAA;;;;;;;;;;;;;;;;cAc5B,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,4BAAA,GAA+B,IAAA,CAClC,YAAA,QAAoB,wBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,qBAAA,GAAwB,cAAA,QAClC,4BAAA;AAAA,cAEI,gBAAA;EAAoB,SAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAIvB,qBAAA,KAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cC9BlB,mBAAA,EAcJ,kBAAA,CAduB,YAAA;;;;;;;;;;;;;;;;cAcvB,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,uBAAA,GAA0B,IAAA,CAC7B,YAAA,QAAoB,mBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,gBAAA,GAAmB,cAAA,UAAwB,uBAAA;AAAA,cAEjD,WAAA;EAAe,SAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAA+B,gBAAA,KAAgB,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cCzB9D,kBAAA,EA8CJ,kBAAA,CA9CsB,YAAA;;;;;;;;;;;;;;;;;;;;;;;;cA8CtB,kBAAA,CAAA,YAAA;;;;;;;;;;;;;KAEG,sBAAA,GAAyB,IAAA,CAC5B,YAAA,QAAoB,kBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,eAAA,GAAkB,cAAA,UAAwB,sBAAA;AAAA,cAEhD,UAAA;EAAc,SAAA;EAAA,IAAA;EAAA,OAAA;EAAA,GAAA;AAAA,GAKjB,eAAA,KAAe,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cC9DZ,kBAAA,EAcJ,kBAAA,CAdsB,YAAA;;;;;;;;;;;;;;;;cActB,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,sBAAA,GAAyB,IAAA,CAC5B,YAAA,QAAoB,kBAAA;EAGpB,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,eAAA,GAAkB,cAAA,UAAwB,sBAAA;AAAA,cAEhD,UAAA;EAAc,SAAA;EAAA,IAAA;EAAA,GAAA;AAAA,GAA+B,eAAA,KAAe,kBAAA,CAAA,GAAA,CAAA,OAAA;;;cCf5D,aAAA,EAcJ,kBAAA,CAdiB,YAAA;;;;;;;;;;;;;;;;cAcjB,kBAAA,CAAA,YAAA;;;;;;;;;KAEG,iBAAA,GAAoB,IAAA,CAAK,YAAA,QAAoB,aAAA;EAChD,IAAA,GAAO,MAAA;AAAA;AAAA,KAGG,UAAA,GAAa,cAAA,UAAwB,iBAAA;AAAA,cAE3C,KAAA;EAAA;;;;KAAsD,UAAA,GAAU,kBAAA,CAAA,GAAA,CAAA,OAAA"}
package/dist/ui/empty.js CHANGED
@@ -1,8 +1,9 @@
1
1
  "use client";
2
2
 
3
3
  import { a as useComponentSize } from "../size-provider-18EvJgDT.js";
4
- import { t as createSizeContext } from "../size-context-BjRwqlSg.js";
4
+ import { t as createSizeContext } from "../size-context-CvLl3pMC.js";
5
5
  import { Button } from "./button.js";
6
+ import { useMemo } from "react";
6
7
  import { jsx } from "react/jsx-runtime";
7
8
  import { cn, tv } from "tailwind-variants";
8
9
 
@@ -11,9 +12,10 @@ const { SizeContext: EmptySizeContext, useResolvedSize: useResolvedEmptySize } =
11
12
 
12
13
  //#endregion
13
14
  //#region src/ui/empty/empty-button.tsx
14
- const EmptyButton = ({ size, ...props }) => {
15
+ const EmptyButton = ({ className, size, ...props }) => {
15
16
  const resolvedSize = useResolvedEmptySize(size);
16
17
  return /* @__PURE__ */ jsx(Button, {
18
+ className: cn("cursor-clickable", className),
17
19
  "data-size": resolvedSize,
18
20
  "data-slot": "empty-button",
19
21
  size: resolvedSize,
@@ -25,14 +27,14 @@ const EmptyButton = ({ size, ...props }) => {
25
27
  //#region src/ui/empty/empty-content.tsx
26
28
  const emptyContentVariants = tv({
27
29
  base: "flex w-full min-w-0 flex-col items-center text-balance",
30
+ defaultVariants: { size: "md" },
28
31
  variants: { size: {
29
- xs: "max-w-xs gap-1.5 text-xs",
30
- sm: "max-w-sm gap-2 text-sm",
31
- md: "max-w-sm gap-2.5 text-sm",
32
32
  lg: "max-w-md gap-3 text-sm",
33
- xl: "max-w-md gap-3.5 text-base"
34
- } },
35
- defaultVariants: { size: "md" }
33
+ md: "max-w-sm gap-2.5 text-sm",
34
+ sm: "max-w-sm gap-2 text-sm",
35
+ xl: "max-w-md gap-3.5 text-base",
36
+ xs: "max-w-xs gap-1.5 text-xs"
37
+ } }
36
38
  });
37
39
  const EmptyContent = ({ className, size, ...props }) => {
38
40
  const resolvedSize = useResolvedEmptySize(size);
@@ -47,15 +49,15 @@ const EmptyContent = ({ className, size, ...props }) => {
47
49
  //#endregion
48
50
  //#region src/ui/empty/empty-description.tsx
49
51
  const emptyDescriptionVariants = tv({
50
- base: "text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary-foreground",
52
+ base: "text-muted-foreground [&>a:hover]:text-primary-foreground [&>a]:underline [&>a]:underline-offset-4",
53
+ defaultVariants: { size: "md" },
51
54
  variants: { size: {
52
- xs: "text-xs/relaxed",
53
- sm: "text-sm/relaxed",
54
- md: "text-sm/relaxed",
55
55
  lg: "text-base/relaxed",
56
- xl: "text-base/relaxed"
57
- } },
58
- defaultVariants: { size: "md" }
56
+ md: "text-sm/relaxed",
57
+ sm: "text-sm/relaxed",
58
+ xl: "text-base/relaxed",
59
+ xs: "text-xs/relaxed"
60
+ } }
59
61
  });
60
62
  const EmptyDescription = ({ className, size, ...props }) => {
61
63
  const resolvedSize = useResolvedEmptySize(size);
@@ -71,14 +73,14 @@ const EmptyDescription = ({ className, size, ...props }) => {
71
73
  //#region src/ui/empty/empty-header.tsx
72
74
  const emptyHeaderVariants = tv({
73
75
  base: "flex flex-col items-center",
76
+ defaultVariants: { size: "md" },
74
77
  variants: { size: {
75
- xs: "max-w-xs gap-1.5",
76
- sm: "max-w-sm gap-2",
77
- md: "max-w-sm gap-2.5",
78
78
  lg: "max-w-md gap-3",
79
- xl: "max-w-md gap-3.5"
80
- } },
81
- defaultVariants: { size: "md" }
79
+ md: "max-w-sm gap-2.5",
80
+ sm: "max-w-sm gap-2",
81
+ xl: "max-w-md gap-3.5",
82
+ xs: "max-w-xs gap-1.5"
83
+ } }
82
84
  });
83
85
  const EmptyHeader = ({ className, size, ...props }) => {
84
86
  const resolvedSize = useResolvedEmptySize(size);
@@ -121,22 +123,22 @@ const emptyMediaVariants = tv({
121
123
  variant: "icon"
122
124
  }
123
125
  ],
126
+ defaultVariants: {
127
+ size: "md",
128
+ variant: "default"
129
+ },
124
130
  variants: {
125
131
  size: {
126
- xs: "mb-1.5 [&_svg:not([class*='size-'])]:size-3",
127
- sm: "mb-2 [&_svg:not([class*='size-'])]:size-3.5",
128
- md: "mb-2 [&_svg:not([class*='size-'])]:size-4",
129
132
  lg: "mb-2.5 [&_svg:not([class*='size-'])]:size-4",
130
- xl: "mb-3 [&_svg:not([class*='size-'])]:size-5"
133
+ md: "mb-2 [&_svg:not([class*='size-'])]:size-4",
134
+ sm: "mb-2 [&_svg:not([class*='size-'])]:size-3.5",
135
+ xl: "mb-3 [&_svg:not([class*='size-'])]:size-5",
136
+ xs: "mb-1.5 [&_svg:not([class*='size-'])]:size-3"
131
137
  },
132
138
  variant: {
133
139
  default: "bg-transparent",
134
- icon: "shrink-0 bg-muted text-foreground"
140
+ icon: "bg-muted text-foreground shrink-0"
135
141
  }
136
- },
137
- defaultVariants: {
138
- size: "md",
139
- variant: "default"
140
142
  }
141
143
  });
142
144
  const EmptyMedia = ({ className, size, variant = "default", ...props }) => {
@@ -156,15 +158,15 @@ const EmptyMedia = ({ className, size, variant = "default", ...props }) => {
156
158
  //#endregion
157
159
  //#region src/ui/empty/empty-title.tsx
158
160
  const emptyTitleVariants = tv({
159
- base: "font-medium tracking-tight text-foreground",
161
+ base: "text-foreground font-medium tracking-tight",
162
+ defaultVariants: { size: "md" },
160
163
  variants: { size: {
161
- xs: "text-xs",
162
- sm: "text-sm",
163
- md: "text-sm",
164
164
  lg: "text-base",
165
- xl: "text-lg"
166
- } },
167
- defaultVariants: { size: "md" }
165
+ md: "text-sm",
166
+ sm: "text-sm",
167
+ xl: "text-lg",
168
+ xs: "text-xs"
169
+ } }
168
170
  });
169
171
  const EmptyTitle = ({ className, size, ...props }) => {
170
172
  const resolvedSize = useResolvedEmptySize(size);
@@ -180,19 +182,20 @@ const EmptyTitle = ({ className, size, ...props }) => {
180
182
  //#region src/ui/empty/empty.tsx
181
183
  const emptyVariants = tv({
182
184
  base: "flex w-full min-w-0 flex-1 flex-col items-center justify-center rounded-lg border-dashed text-center text-balance",
185
+ defaultVariants: { size: "md" },
183
186
  variants: { size: {
184
- xs: "gap-2 p-4",
185
- sm: "gap-3 p-6",
186
- md: "gap-4 p-8",
187
187
  lg: "gap-5 p-10",
188
- xl: "gap-6 p-12"
189
- } },
190
- defaultVariants: { size: "md" }
188
+ md: "gap-4 p-8",
189
+ sm: "gap-3 p-6",
190
+ xl: "gap-6 p-12",
191
+ xs: "gap-2 p-4"
192
+ } }
191
193
  });
192
194
  const Empty = ({ className, size: providedSize, ...props }) => {
193
195
  const size = useComponentSize(providedSize);
196
+ const contextValue = useMemo(() => ({ size }), [size]);
194
197
  return /* @__PURE__ */ jsx(EmptySizeContext.Provider, {
195
- value: { size },
198
+ value: contextValue,
196
199
  children: /* @__PURE__ */ jsx("div", {
197
200
  className: cn(emptyVariants({ size }), className),
198
201
  "data-size": size,