@lucasbernardosn/react-ui 0.1.0 → 0.3.0

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 (983) hide show
  1. package/README.md +141 -0
  2. package/dist/components/buttons/button/button-variants.d.ts +1 -1
  3. package/dist/components/buttons/button/button-variants.js +15 -21
  4. package/dist/components/buttons/button/button-variants.js.map +1 -1
  5. package/dist/components/buttons/button/button.d.ts +1 -1
  6. package/dist/components/buttons/button/button.js +1 -1
  7. package/dist/components/buttons/button/button.js.map +1 -1
  8. package/dist/components/buttons/clipboard-button/clipboard-button.d.ts +1 -1
  9. package/dist/components/buttons/clipboard-button/clipboard-button.js +1 -1
  10. package/dist/components/buttons/clipboard-button/clipboard-button.js.map +1 -1
  11. package/dist/components/buttons/close-button/close-button.d.ts +1 -1
  12. package/dist/components/buttons/close-button/close-button.js.map +1 -1
  13. package/dist/components/buttons/icon-button/icon-button.d.ts +1 -1
  14. package/dist/components/buttons/icon-button/icon-button.js +1 -1
  15. package/dist/components/buttons/icon-button/icon-button.js.map +1 -1
  16. package/dist/components/buttons/responsive-button/responsive-button.d.ts +1 -1
  17. package/dist/components/buttons/responsive-button/responsive-button.js.map +1 -1
  18. package/dist/components/collections/async-select/async-select-aria-messages.d.ts +15 -0
  19. package/dist/components/collections/async-select/async-select-aria-messages.js +51 -0
  20. package/dist/components/collections/async-select/async-select-aria-messages.js.map +1 -0
  21. package/dist/components/collections/async-select/async-select-components.d.ts +5 -0
  22. package/dist/components/collections/async-select/async-select-components.js +67 -0
  23. package/dist/components/collections/async-select/async-select-components.js.map +1 -0
  24. package/dist/components/collections/async-select/async-select-variants.d.ts +23 -0
  25. package/dist/components/collections/async-select/async-select-variants.js +378 -0
  26. package/dist/components/collections/async-select/async-select-variants.js.map +1 -0
  27. package/dist/components/collections/async-select/async-select.d.ts +62 -0
  28. package/dist/components/collections/async-select/async-select.js +121 -0
  29. package/dist/components/collections/async-select/async-select.js.map +1 -0
  30. package/dist/components/collections/async-select/index.d.ts +3 -0
  31. package/dist/components/collections/async-select/index.js +2 -0
  32. package/dist/components/collections/async-select/use-async-select-load.d.ts +26 -0
  33. package/dist/components/collections/async-select/use-async-select-load.js +76 -0
  34. package/dist/components/collections/async-select/use-async-select-load.js.map +1 -0
  35. package/dist/components/collections/autocomplete/autocomplete-arrow.d.ts +14 -0
  36. package/dist/components/collections/autocomplete/autocomplete-arrow.js +43 -0
  37. package/dist/components/collections/autocomplete/autocomplete-arrow.js.map +1 -0
  38. package/dist/components/collections/autocomplete/autocomplete-backdrop.d.ts +16 -0
  39. package/dist/components/collections/autocomplete/autocomplete-backdrop.js +36 -0
  40. package/dist/components/collections/autocomplete/autocomplete-backdrop.js.map +1 -0
  41. package/dist/components/collections/autocomplete/autocomplete-clear.d.ts +17 -0
  42. package/dist/components/collections/autocomplete/autocomplete-clear.js +47 -0
  43. package/dist/components/collections/autocomplete/autocomplete-clear.js.map +1 -0
  44. package/dist/components/collections/autocomplete/autocomplete-collection.d.ts +14 -0
  45. package/dist/components/collections/autocomplete/autocomplete-collection.js +15 -0
  46. package/dist/components/collections/autocomplete/autocomplete-collection.js.map +1 -0
  47. package/dist/components/collections/autocomplete/autocomplete-empty.d.ts +14 -0
  48. package/dist/components/collections/autocomplete/autocomplete-empty.js +24 -0
  49. package/dist/components/collections/autocomplete/autocomplete-empty.js.map +1 -0
  50. package/dist/components/collections/autocomplete/autocomplete-group-label-variants.d.ts +12 -0
  51. package/dist/components/collections/autocomplete/autocomplete-group-label-variants.js +65 -0
  52. package/dist/components/collections/autocomplete/autocomplete-group-label-variants.js.map +1 -0
  53. package/dist/components/collections/autocomplete/autocomplete-group-label.d.ts +13 -0
  54. package/dist/components/collections/autocomplete/autocomplete-group-label.js +23 -0
  55. package/dist/components/collections/autocomplete/autocomplete-group-label.js.map +1 -0
  56. package/dist/components/collections/autocomplete/autocomplete-group.d.ts +14 -0
  57. package/dist/components/collections/autocomplete/autocomplete-group.js +18 -0
  58. package/dist/components/collections/autocomplete/autocomplete-group.js.map +1 -0
  59. package/dist/components/collections/autocomplete/autocomplete-icon.d.ts +13 -0
  60. package/dist/components/collections/autocomplete/autocomplete-icon.js +23 -0
  61. package/dist/components/collections/autocomplete/autocomplete-icon.js.map +1 -0
  62. package/dist/components/collections/autocomplete/autocomplete-input-group-variants.d.ts +18 -0
  63. package/dist/components/collections/autocomplete/autocomplete-input-group-variants.js +38 -0
  64. package/dist/components/collections/autocomplete/autocomplete-input-group-variants.js.map +1 -0
  65. package/dist/components/collections/autocomplete/autocomplete-input-group.d.ts +15 -0
  66. package/dist/components/collections/autocomplete/autocomplete-input-group.js +25 -0
  67. package/dist/components/collections/autocomplete/autocomplete-input-group.js.map +1 -0
  68. package/dist/components/collections/autocomplete/autocomplete-input-variants.d.ts +14 -0
  69. package/dist/components/collections/autocomplete/autocomplete-input-variants.js +123 -0
  70. package/dist/components/collections/autocomplete/autocomplete-input-variants.js.map +1 -0
  71. package/dist/components/collections/autocomplete/autocomplete-input.d.ts +16 -0
  72. package/dist/components/collections/autocomplete/autocomplete-input.js +29 -0
  73. package/dist/components/collections/autocomplete/autocomplete-input.js.map +1 -0
  74. package/dist/components/collections/autocomplete/autocomplete-item-variants.d.ts +12 -0
  75. package/dist/components/collections/autocomplete/autocomplete-item-variants.js +85 -0
  76. package/dist/components/collections/autocomplete/autocomplete-item-variants.js.map +1 -0
  77. package/dist/components/collections/autocomplete/autocomplete-item.d.ts +14 -0
  78. package/dist/components/collections/autocomplete/autocomplete-item.js +24 -0
  79. package/dist/components/collections/autocomplete/autocomplete-item.js.map +1 -0
  80. package/dist/components/collections/autocomplete/autocomplete-list.d.ts +14 -0
  81. package/dist/components/collections/autocomplete/autocomplete-list.js +31 -0
  82. package/dist/components/collections/autocomplete/autocomplete-list.js.map +1 -0
  83. package/dist/components/collections/autocomplete/autocomplete-message-variants.d.ts +13 -0
  84. package/dist/components/collections/autocomplete/autocomplete-message-variants.js +54 -0
  85. package/dist/components/collections/autocomplete/autocomplete-message-variants.js.map +1 -0
  86. package/dist/components/collections/autocomplete/autocomplete-popup-variants.d.ts +13 -0
  87. package/dist/components/collections/autocomplete/autocomplete-popup-variants.js +43 -0
  88. package/dist/components/collections/autocomplete/autocomplete-popup-variants.js.map +1 -0
  89. package/dist/components/collections/autocomplete/autocomplete-popup.d.ts +14 -0
  90. package/dist/components/collections/autocomplete/autocomplete-popup.js +22 -0
  91. package/dist/components/collections/autocomplete/autocomplete-popup.js.map +1 -0
  92. package/dist/components/collections/autocomplete/autocomplete-portal.d.ts +13 -0
  93. package/dist/components/collections/autocomplete/autocomplete-portal.js +17 -0
  94. package/dist/components/collections/autocomplete/autocomplete-portal.js.map +1 -0
  95. package/dist/components/collections/autocomplete/autocomplete-positioner.d.ts +16 -0
  96. package/dist/components/collections/autocomplete/autocomplete-positioner.js +28 -0
  97. package/dist/components/collections/autocomplete/autocomplete-positioner.js.map +1 -0
  98. package/dist/components/collections/autocomplete/autocomplete-root.d.ts +66 -0
  99. package/dist/components/collections/autocomplete/autocomplete-root.js +18 -0
  100. package/dist/components/collections/autocomplete/autocomplete-root.js.map +1 -0
  101. package/dist/components/collections/autocomplete/autocomplete-row.d.ts +14 -0
  102. package/dist/components/collections/autocomplete/autocomplete-row.js +18 -0
  103. package/dist/components/collections/autocomplete/autocomplete-row.js.map +1 -0
  104. package/dist/components/collections/autocomplete/autocomplete-separator.d.ts +16 -0
  105. package/dist/components/collections/autocomplete/autocomplete-separator.js +28 -0
  106. package/dist/components/collections/autocomplete/autocomplete-separator.js.map +1 -0
  107. package/dist/components/collections/autocomplete/autocomplete-status.d.ts +17 -0
  108. package/dist/components/collections/autocomplete/autocomplete-status.js +27 -0
  109. package/dist/components/collections/autocomplete/autocomplete-status.js.map +1 -0
  110. package/dist/components/collections/autocomplete/autocomplete-trigger.d.ts +14 -0
  111. package/dist/components/collections/autocomplete/autocomplete-trigger.js +37 -0
  112. package/dist/components/collections/autocomplete/autocomplete-trigger.js.map +1 -0
  113. package/dist/components/collections/autocomplete/autocomplete-value.d.ts +14 -0
  114. package/dist/components/collections/autocomplete/autocomplete-value.js +15 -0
  115. package/dist/components/collections/autocomplete/autocomplete-value.js.map +1 -0
  116. package/dist/components/collections/autocomplete/index.d.ts +2 -0
  117. package/dist/components/collections/autocomplete/index.js +2 -0
  118. package/dist/components/collections/autocomplete/index.parts.d.ts +29 -0
  119. package/dist/components/collections/autocomplete/index.parts.js +53 -0
  120. package/dist/components/collections/autocomplete/index.parts.js.map +1 -0
  121. package/dist/components/collections/autocomplete/use-autocomplete-context.d.ts +24 -0
  122. package/dist/components/collections/autocomplete/use-autocomplete-context.js +14 -0
  123. package/dist/components/collections/autocomplete/use-autocomplete-context.js.map +1 -0
  124. package/dist/components/collections/autocomplete/use-autocomplete-filter.d.ts +22 -0
  125. package/dist/components/collections/autocomplete/use-autocomplete-filter.js +22 -0
  126. package/dist/components/collections/autocomplete/use-autocomplete-filter.js.map +1 -0
  127. package/dist/components/collections/select/select-group-label-variants.d.ts +2 -2
  128. package/dist/components/collections/select/select-group-label-variants.js +3 -3
  129. package/dist/components/collections/select/select-group-label-variants.js.map +1 -1
  130. package/dist/components/collections/select/select-item-variants.d.ts +2 -2
  131. package/dist/components/collections/select/select-item-variants.js +7 -7
  132. package/dist/components/collections/select/select-item-variants.js.map +1 -1
  133. package/dist/components/collections/select/select-root.d.ts +1 -1
  134. package/dist/components/collections/select/select-root.js +1 -1
  135. package/dist/components/collections/select/select-root.js.map +1 -1
  136. package/dist/components/collections/select/select-separator.d.ts +2 -2
  137. package/dist/components/collections/select/select-separator.js +2 -2
  138. package/dist/components/collections/select/select-separator.js.map +1 -1
  139. package/dist/components/collections/select/select-trigger-variants.d.ts +3 -3
  140. package/dist/components/collections/select/select-trigger-variants.js +2 -2
  141. package/dist/components/collections/select/select-trigger-variants.js.map +1 -1
  142. package/dist/components/collections/select/select-value.js +1 -1
  143. package/dist/components/collections/select/select-value.js.map +1 -1
  144. package/dist/components/collections/tree-view/index.parts.d.ts +3 -3
  145. package/dist/components/collections/tree-view/index.parts.js.map +1 -1
  146. package/dist/components/collections/tree-view/tree-view-branch-content.d.ts +1 -1
  147. package/dist/components/collections/tree-view/tree-view-branch-content.js +1 -1
  148. package/dist/components/collections/tree-view/tree-view-branch-content.js.map +1 -1
  149. package/dist/components/collections/tree-view/tree-view-branch.d.ts +1 -1
  150. package/dist/components/collections/tree-view/tree-view-branch.js.map +1 -1
  151. package/dist/components/collections/tree-view/tree-view-node-provider.d.ts +1 -1
  152. package/dist/components/collections/tree-view/tree-view-node-provider.js +1 -1
  153. package/dist/components/collections/tree-view/tree-view-node-provider.js.map +1 -1
  154. package/dist/components/collections/tree-view/tree-view-node-rename-input.js +2 -1
  155. package/dist/components/collections/tree-view/tree-view-node-rename-input.js.map +1 -1
  156. package/dist/components/collections/tree-view/tree-view-node-variants.d.ts +1 -1
  157. package/dist/components/collections/tree-view/tree-view-node.js +5 -0
  158. package/dist/components/collections/tree-view/tree-view-node.js.map +1 -1
  159. package/dist/components/collections/tree-view/tree-view-root-provider.d.ts +1 -1
  160. package/dist/components/collections/tree-view/tree-view-root-provider.js +2 -6
  161. package/dist/components/collections/tree-view/tree-view-root-provider.js.map +1 -1
  162. package/dist/components/collections/tree-view/tree-view-root.d.ts +2 -2
  163. package/dist/components/collections/tree-view/tree-view-root.js +3 -7
  164. package/dist/components/collections/tree-view/tree-view-root.js.map +1 -1
  165. package/dist/components/collections/tree-view/tree-view-tree-variants.d.ts +2 -4
  166. package/dist/components/collections/tree-view/tree-view-tree-variants.js +7 -35
  167. package/dist/components/collections/tree-view/tree-view-tree-variants.js.map +1 -1
  168. package/dist/components/collections/tree-view/tree-view-tree.d.ts +2 -3
  169. package/dist/components/collections/tree-view/tree-view-tree.js +4 -8
  170. package/dist/components/collections/tree-view/tree-view-tree.js.map +1 -1
  171. package/dist/components/collections/tree-view/use-tree-view-variants-context.d.ts +0 -7
  172. package/dist/components/collections/tree-view/use-tree-view-variants-context.js +0 -1
  173. package/dist/components/collections/tree-view/use-tree-view-variants-context.js.map +1 -1
  174. package/dist/components/collections/tree-view/use-tree-view.d.ts +1 -1
  175. package/dist/components/collections/tree-view/use-tree-view.js.map +1 -1
  176. package/dist/components/disclosure/breadcrumb/breadcrumb-ellipsis.d.ts +27 -0
  177. package/dist/components/disclosure/breadcrumb/breadcrumb-ellipsis.js +59 -0
  178. package/dist/components/disclosure/breadcrumb/breadcrumb-ellipsis.js.map +1 -0
  179. package/dist/components/disclosure/breadcrumb/breadcrumb-link.js +2 -1
  180. package/dist/components/disclosure/breadcrumb/breadcrumb-link.js.map +1 -1
  181. package/dist/components/disclosure/breadcrumb/breadcrumb-list.js +1 -1
  182. package/dist/components/disclosure/breadcrumb/breadcrumb-list.js.map +1 -1
  183. package/dist/components/disclosure/breadcrumb/breadcrumb-separator.d.ts +2 -2
  184. package/dist/components/disclosure/breadcrumb/breadcrumb-separator.js +4 -3
  185. package/dist/components/disclosure/breadcrumb/breadcrumb-separator.js.map +1 -1
  186. package/dist/components/disclosure/breadcrumb/index.parts.d.ts +3 -2
  187. package/dist/components/disclosure/breadcrumb/index.parts.js +3 -1
  188. package/dist/components/disclosure/breadcrumb/index.parts.js.map +1 -1
  189. package/dist/components/disclosure/collapsible/collapsible-panel.d.ts +1 -1
  190. package/dist/components/disclosure/collapsible/collapsible-panel.js +1 -1
  191. package/dist/components/disclosure/collapsible/collapsible-panel.js.map +1 -1
  192. package/dist/components/disclosure/tabs/tabs-indicator-variants.d.ts +1 -1
  193. package/dist/components/disclosure/tabs/tabs-list-variants.d.ts +1 -1
  194. package/dist/components/disclosure/tabs/tabs-list-variants.js +1 -1
  195. package/dist/components/disclosure/tabs/tabs-list-variants.js.map +1 -1
  196. package/dist/components/disclosure/tabs/tabs-root-variants.d.ts +0 -1
  197. package/dist/components/disclosure/tabs/tabs-root-variants.js +15 -23
  198. package/dist/components/disclosure/tabs/tabs-root-variants.js.map +1 -1
  199. package/dist/components/disclosure/tabs/tabs-root.d.ts +4 -4
  200. package/dist/components/disclosure/tabs/tabs-root.js +4 -5
  201. package/dist/components/disclosure/tabs/tabs-root.js.map +1 -1
  202. package/dist/components/disclosure/tabs/tabs-tab-variants.d.ts +1 -2
  203. package/dist/components/disclosure/tabs/tabs-tab-variants.js +2 -6
  204. package/dist/components/disclosure/tabs/tabs-tab-variants.js.map +1 -1
  205. package/dist/components/disclosure/tabs/tabs-tab.js +1 -2
  206. package/dist/components/disclosure/tabs/tabs-tab.js.map +1 -1
  207. package/dist/components/disclosure/tabs/use-tabs-context.d.ts +0 -6
  208. package/dist/components/disclosure/tabs/use-tabs-context.js +0 -1
  209. package/dist/components/disclosure/tabs/use-tabs-context.js.map +1 -1
  210. package/dist/components/display/avatar/avatar-fallback.d.ts +17 -0
  211. package/dist/components/display/avatar/avatar-fallback.js +44 -0
  212. package/dist/components/display/avatar/avatar-fallback.js.map +1 -0
  213. package/dist/components/display/avatar/avatar-image.d.ts +18 -0
  214. package/dist/components/display/avatar/avatar-image.js +33 -0
  215. package/dist/components/display/avatar/avatar-image.js.map +1 -0
  216. package/dist/components/display/avatar/avatar-root-variants.d.ts +39 -0
  217. package/dist/components/display/avatar/avatar-root-variants.js +315 -0
  218. package/dist/components/display/avatar/avatar-root-variants.js.map +1 -0
  219. package/dist/components/display/avatar/avatar-root.d.ts +31 -0
  220. package/dist/components/display/avatar/avatar-root.js +52 -0
  221. package/dist/components/display/avatar/avatar-root.js.map +1 -0
  222. package/dist/components/display/avatar/get-avatar-color-scheme.d.ts +10 -0
  223. package/dist/components/display/avatar/get-avatar-color-scheme.js +45 -0
  224. package/dist/components/display/avatar/get-avatar-color-scheme.js.map +1 -0
  225. package/dist/components/display/avatar/index.d.ts +2 -0
  226. package/dist/components/display/avatar/index.js +2 -0
  227. package/dist/components/display/avatar/index.parts.d.ts +10 -0
  228. package/dist/components/display/avatar/index.parts.js +14 -0
  229. package/dist/components/display/avatar/index.parts.js.map +1 -0
  230. package/dist/components/display/avatar/use-avatar-context.d.ts +8 -0
  231. package/dist/components/display/avatar/use-avatar-context.js +10 -0
  232. package/dist/components/display/avatar/use-avatar-context.js.map +1 -0
  233. package/dist/components/display/badge/badge-variants.d.ts +41 -0
  234. package/dist/components/display/badge/badge-variants.js +330 -0
  235. package/dist/components/display/badge/badge-variants.js.map +1 -0
  236. package/dist/components/display/badge/badge.d.ts +23 -0
  237. package/dist/components/display/badge/badge.js +40 -0
  238. package/dist/components/display/badge/badge.js.map +1 -0
  239. package/dist/components/display/badge/index.d.ts +3 -0
  240. package/dist/components/display/badge/index.js +2 -0
  241. package/dist/components/display/card/card-description.d.ts +3 -4
  242. package/dist/components/display/card/card-description.js +5 -6
  243. package/dist/components/display/card/card-description.js.map +1 -1
  244. package/dist/components/display/card/card-header.d.ts +2 -2
  245. package/dist/components/display/card/card-header.js +3 -3
  246. package/dist/components/display/card/card-header.js.map +1 -1
  247. package/dist/components/display/card/card-root-variants.d.ts +3 -17
  248. package/dist/components/display/card/card-root-variants.js +27 -74
  249. package/dist/components/display/card/card-root-variants.js.map +1 -1
  250. package/dist/components/display/card/card-root.d.ts +1 -1
  251. package/dist/components/display/card/card-root.js +2 -2
  252. package/dist/components/display/card/card-root.js.map +1 -1
  253. package/dist/components/display/card/card-title.d.ts +6 -7
  254. package/dist/components/display/card/card-title.js +6 -7
  255. package/dist/components/display/card/card-title.js.map +1 -1
  256. package/dist/components/display/clipboard/clipboard-indicator.d.ts +1 -1
  257. package/dist/components/display/clipboard/clipboard-indicator.js.map +1 -1
  258. package/dist/components/display/clipboard/clipboard-root-provider.d.ts +1 -1
  259. package/dist/components/display/clipboard/clipboard-root-provider.js.map +1 -1
  260. package/dist/components/display/clipboard/clipboard-root.d.ts +1 -1
  261. package/dist/components/display/clipboard/clipboard-root.js +1 -1
  262. package/dist/components/display/clipboard/clipboard-root.js.map +1 -1
  263. package/dist/components/display/clipboard/use-clipboard.d.ts +1 -1
  264. package/dist/components/display/clipboard/use-clipboard.js.map +1 -1
  265. package/dist/components/display/data-list/data-list-item-variants.d.ts +2 -3
  266. package/dist/components/display/data-list/data-list-item-variants.js +22 -60
  267. package/dist/components/display/data-list/data-list-item-variants.js.map +1 -1
  268. package/dist/components/display/data-list/data-list-item.js +2 -5
  269. package/dist/components/display/data-list/data-list-item.js.map +1 -1
  270. package/dist/components/display/data-list/data-list-root-variants.d.ts +0 -1
  271. package/dist/components/display/data-list/data-list-root-variants.js +2 -8
  272. package/dist/components/display/data-list/data-list-root-variants.js.map +1 -1
  273. package/dist/components/display/data-list/data-list-root.d.ts +1 -1
  274. package/dist/components/display/data-list/data-list-root.js +2 -6
  275. package/dist/components/display/data-list/data-list-root.js.map +1 -1
  276. package/dist/components/display/data-list/use-data-list-context.d.ts +0 -6
  277. package/dist/components/display/data-list/use-data-list-context.js +1 -2
  278. package/dist/components/display/data-list/use-data-list-context.js.map +1 -1
  279. package/dist/components/display/status/index.d.ts +3 -0
  280. package/dist/components/display/status/index.js +2 -0
  281. package/dist/components/display/status/status-variants.d.ts +31 -0
  282. package/dist/components/display/status/status-variants.js +46 -0
  283. package/dist/components/display/status/status-variants.js.map +1 -0
  284. package/dist/components/display/status/status.d.ts +23 -0
  285. package/dist/components/display/status/status.js +36 -0
  286. package/dist/components/display/status/status.js.map +1 -0
  287. package/dist/components/display/tag/index.d.ts +2 -0
  288. package/dist/components/display/tag/index.js +2 -0
  289. package/dist/components/display/tag/index.parts.d.ts +10 -0
  290. package/dist/components/display/tag/index.parts.js +14 -0
  291. package/dist/components/display/tag/index.parts.js.map +1 -0
  292. package/dist/components/display/tag/tag-close.d.ts +16 -0
  293. package/dist/components/display/tag/tag-close.js +44 -0
  294. package/dist/components/display/tag/tag-close.js.map +1 -0
  295. package/dist/components/display/tag/tag-label.d.ts +12 -0
  296. package/dist/components/display/tag/tag-label.js +23 -0
  297. package/dist/components/display/tag/tag-label.js.map +1 -0
  298. package/dist/components/display/tag/tag-root-variants.d.ts +39 -0
  299. package/dist/components/display/tag/tag-root-variants.js +333 -0
  300. package/dist/components/display/tag/tag-root-variants.js.map +1 -0
  301. package/dist/components/display/tag/tag-root.d.ts +29 -0
  302. package/dist/components/display/tag/tag-root.js +46 -0
  303. package/dist/components/display/tag/tag-root.js.map +1 -0
  304. package/dist/components/feedback/alert/alert-content.d.ts +13 -0
  305. package/dist/components/feedback/alert/alert-content.js +30 -0
  306. package/dist/components/feedback/alert/alert-content.js.map +1 -0
  307. package/dist/components/feedback/alert/alert-description.d.ts +17 -0
  308. package/dist/components/feedback/alert/alert-description.js +33 -0
  309. package/dist/components/feedback/alert/alert-description.js.map +1 -0
  310. package/dist/components/feedback/alert/alert-indicator.d.ts +21 -0
  311. package/dist/components/feedback/alert/alert-indicator.js +56 -0
  312. package/dist/components/feedback/alert/alert-indicator.js.map +1 -0
  313. package/dist/components/feedback/alert/alert-root-variants.d.ts +13 -0
  314. package/dist/components/feedback/alert/alert-root-variants.js +75 -0
  315. package/dist/components/feedback/alert/alert-root-variants.js.map +1 -0
  316. package/dist/components/feedback/alert/alert-root.d.ts +33 -0
  317. package/dist/components/feedback/alert/alert-root.js +52 -0
  318. package/dist/components/feedback/alert/alert-root.js.map +1 -0
  319. package/dist/components/feedback/alert/alert-title.d.ts +22 -0
  320. package/dist/components/feedback/alert/alert-title.js +39 -0
  321. package/dist/components/feedback/alert/alert-title.js.map +1 -0
  322. package/dist/components/feedback/alert/index.d.ts +2 -0
  323. package/dist/components/feedback/alert/index.js +2 -0
  324. package/dist/components/feedback/alert/index.parts.d.ts +12 -0
  325. package/dist/components/feedback/alert/index.parts.js +18 -0
  326. package/dist/components/feedback/alert/index.parts.js.map +1 -0
  327. package/dist/components/feedback/alert/use-alert-context.d.ts +23 -0
  328. package/dist/components/feedback/alert/use-alert-context.js +14 -0
  329. package/dist/components/feedback/alert/use-alert-context.js.map +1 -0
  330. package/dist/components/feedback/empty-state/empty-state-content.d.ts +1 -2
  331. package/dist/components/feedback/empty-state/empty-state-content.js +2 -3
  332. package/dist/components/feedback/empty-state/empty-state-content.js.map +1 -1
  333. package/dist/components/feedback/empty-state/empty-state-description.d.ts +2 -2
  334. package/dist/components/feedback/empty-state/empty-state-description.js +4 -4
  335. package/dist/components/feedback/empty-state/empty-state-description.js.map +1 -1
  336. package/dist/components/feedback/empty-state/empty-state-indicator.d.ts +4 -3
  337. package/dist/components/feedback/empty-state/empty-state-indicator.js +5 -4
  338. package/dist/components/feedback/empty-state/empty-state-indicator.js.map +1 -1
  339. package/dist/components/feedback/empty-state/empty-state-root-variants.d.ts +2 -16
  340. package/dist/components/feedback/empty-state/empty-state-root-variants.js +16 -72
  341. package/dist/components/feedback/empty-state/empty-state-root-variants.js.map +1 -1
  342. package/dist/components/feedback/empty-state/empty-state-root.d.ts +3 -4
  343. package/dist/components/feedback/empty-state/empty-state-root.js +4 -5
  344. package/dist/components/feedback/empty-state/empty-state-root.js.map +1 -1
  345. package/dist/components/feedback/empty-state/empty-state-title.d.ts +4 -4
  346. package/dist/components/feedback/empty-state/empty-state-title.js +4 -4
  347. package/dist/components/feedback/empty-state/empty-state-title.js.map +1 -1
  348. package/dist/components/feedback/skeleton/skeleton-text.d.ts +1 -1
  349. package/dist/components/feedback/skeleton/skeleton-text.js +1 -1
  350. package/dist/components/feedback/skeleton/skeleton-text.js.map +1 -1
  351. package/dist/components/feedback/skeleton/skeleton.d.ts +1 -1
  352. package/dist/components/feedback/skeleton/skeleton.js +1 -1
  353. package/dist/components/feedback/skeleton/skeleton.js.map +1 -1
  354. package/dist/components/feedback/spinner/spinner.d.ts +1 -1
  355. package/dist/components/feedback/spinner/spinner.js +1 -1
  356. package/dist/components/feedback/spinner/spinner.js.map +1 -1
  357. package/dist/components/feedback/toast/index.d.ts +2 -0
  358. package/dist/components/feedback/toast/index.js +2 -0
  359. package/dist/components/feedback/toast/index.parts.d.ts +20 -0
  360. package/dist/components/feedback/toast/index.parts.js +37 -0
  361. package/dist/components/feedback/toast/index.parts.js.map +1 -0
  362. package/dist/components/feedback/toast/toast-action.d.ts +14 -0
  363. package/dist/components/feedback/toast/toast-action.js +21 -0
  364. package/dist/components/feedback/toast/toast-action.js.map +1 -0
  365. package/dist/components/feedback/toast/toast-close.d.ts +13 -0
  366. package/dist/components/feedback/toast/toast-close.js +20 -0
  367. package/dist/components/feedback/toast/toast-close.js.map +1 -0
  368. package/dist/components/feedback/toast/toast-content.d.ts +18 -0
  369. package/dist/components/feedback/toast/toast-content.js +35 -0
  370. package/dist/components/feedback/toast/toast-content.js.map +1 -0
  371. package/dist/components/feedback/toast/toast-description.d.ts +17 -0
  372. package/dist/components/feedback/toast/toast-description.js +29 -0
  373. package/dist/components/feedback/toast/toast-description.js.map +1 -0
  374. package/dist/components/feedback/toast/toast-indicator-variants.d.ts +10 -0
  375. package/dist/components/feedback/toast/toast-indicator-variants.js +27 -0
  376. package/dist/components/feedback/toast/toast-indicator-variants.js.map +1 -0
  377. package/dist/components/feedback/toast/toast-indicator.d.ts +18 -0
  378. package/dist/components/feedback/toast/toast-indicator.js +45 -0
  379. package/dist/components/feedback/toast/toast-indicator.js.map +1 -0
  380. package/dist/components/feedback/toast/toast-manager.d.ts +80 -0
  381. package/dist/components/feedback/toast/toast-manager.js +138 -0
  382. package/dist/components/feedback/toast/toast-manager.js.map +1 -0
  383. package/dist/components/feedback/toast/toast-outlet.d.ts +28 -0
  384. package/dist/components/feedback/toast/toast-outlet.js +108 -0
  385. package/dist/components/feedback/toast/toast-outlet.js.map +1 -0
  386. package/dist/components/feedback/toast/toast-placement.d.ts +20 -0
  387. package/dist/components/feedback/toast/toast-placement.js +51 -0
  388. package/dist/components/feedback/toast/toast-placement.js.map +1 -0
  389. package/dist/components/feedback/toast/toast-portal.d.ts +13 -0
  390. package/dist/components/feedback/toast/toast-portal.js +17 -0
  391. package/dist/components/feedback/toast/toast-portal.js.map +1 -0
  392. package/dist/components/feedback/toast/toast-provider.d.ts +15 -0
  393. package/dist/components/feedback/toast/toast-provider.js +17 -0
  394. package/dist/components/feedback/toast/toast-provider.js.map +1 -0
  395. package/dist/components/feedback/toast/toast-root-variants.d.ts +47 -0
  396. package/dist/components/feedback/toast/toast-root-variants.js +142 -0
  397. package/dist/components/feedback/toast/toast-root-variants.js.map +1 -0
  398. package/dist/components/feedback/toast/toast-root.d.ts +34 -0
  399. package/dist/components/feedback/toast/toast-root.js +67 -0
  400. package/dist/components/feedback/toast/toast-root.js.map +1 -0
  401. package/dist/components/feedback/toast/toast-title.d.ts +18 -0
  402. package/dist/components/feedback/toast/toast-title.js +31 -0
  403. package/dist/components/feedback/toast/toast-title.js.map +1 -0
  404. package/dist/components/feedback/toast/toast-viewport-variants.d.ts +17 -0
  405. package/dist/components/feedback/toast/toast-viewport-variants.js +33 -0
  406. package/dist/components/feedback/toast/toast-viewport-variants.js.map +1 -0
  407. package/dist/components/feedback/toast/toast-viewport.d.ts +19 -0
  408. package/dist/components/feedback/toast/toast-viewport.js +39 -0
  409. package/dist/components/feedback/toast/toast-viewport.js.map +1 -0
  410. package/dist/components/feedback/toast/use-toast-context.d.ts +18 -0
  411. package/dist/components/feedback/toast/use-toast-context.js +11 -0
  412. package/dist/components/feedback/toast/use-toast-context.js.map +1 -0
  413. package/dist/components/feedback/toast/use-toast-manager.d.ts +10 -0
  414. package/dist/components/feedback/toast/use-toast-manager.js +12 -0
  415. package/dist/components/feedback/toast/use-toast-manager.js.map +1 -0
  416. package/dist/components/feedback/toast/use-toast-root-context.d.ts +9 -0
  417. package/dist/components/feedback/toast/use-toast-root-context.js +10 -0
  418. package/dist/components/feedback/toast/use-toast-root-context.js.map +1 -0
  419. package/dist/components/fields/checkbox/checkbox-root-variants.d.ts +1 -1
  420. package/dist/components/fields/checkbox/checkbox-root.d.ts +1 -1
  421. package/dist/components/fields/checkbox/checkbox-root.js +1 -1
  422. package/dist/components/fields/checkbox/checkbox-root.js.map +1 -1
  423. package/dist/components/fields/currency-brl-input/currency-brl-input-variants.d.ts +1 -1
  424. package/dist/components/fields/currency-brl-input/currency-brl-input-variants.js +2 -4
  425. package/dist/components/fields/currency-brl-input/currency-brl-input-variants.js.map +1 -1
  426. package/dist/components/fields/currency-brl-input/currency-brl-input.d.ts +1 -1
  427. package/dist/components/fields/currency-brl-input/currency-brl-input.js +1 -1
  428. package/dist/components/fields/currency-brl-input/currency-brl-input.js.map +1 -1
  429. package/dist/components/fields/field/field-root.d.ts +1 -1
  430. package/dist/components/fields/field/field-root.js +1 -1
  431. package/dist/components/fields/field/field-root.js.map +1 -1
  432. package/dist/components/fields/fieldset/fieldset-legend.d.ts +8 -8
  433. package/dist/components/fields/fieldset/fieldset-legend.js +11 -10
  434. package/dist/components/fields/fieldset/fieldset-legend.js.map +1 -1
  435. package/dist/components/fields/form/form.d.ts +1 -1
  436. package/dist/components/fields/form/form.js.map +1 -1
  437. package/dist/components/fields/input/input-variants.d.ts +6 -5
  438. package/dist/components/fields/input/input-variants.js +8 -9
  439. package/dist/components/fields/input/input-variants.js.map +1 -1
  440. package/dist/components/fields/input/input.d.ts +1 -1
  441. package/dist/components/fields/input/input.js +1 -1
  442. package/dist/components/fields/input/input.js.map +1 -1
  443. package/dist/components/fields/number-input/number-input-variants.d.ts +1 -1
  444. package/dist/components/fields/number-input/number-input-variants.js +2 -4
  445. package/dist/components/fields/number-input/number-input-variants.js.map +1 -1
  446. package/dist/components/fields/number-input/number-input.d.ts +1 -1
  447. package/dist/components/fields/number-input/number-input.js +1 -1
  448. package/dist/components/fields/number-input/number-input.js.map +1 -1
  449. package/dist/components/fields/password-input/password-input.d.ts +1 -1
  450. package/dist/components/fields/password-input/password-input.js +1 -1
  451. package/dist/components/fields/password-input/password-input.js.map +1 -1
  452. package/dist/components/fields/pattern-input/pattern-input-variants.d.ts +1 -1
  453. package/dist/components/fields/pattern-input/pattern-input-variants.js +2 -4
  454. package/dist/components/fields/pattern-input/pattern-input-variants.js.map +1 -1
  455. package/dist/components/fields/pattern-input/pattern-input.d.ts +1 -1
  456. package/dist/components/fields/pattern-input/pattern-input.js +1 -1
  457. package/dist/components/fields/pattern-input/pattern-input.js.map +1 -1
  458. package/dist/components/fields/switch/switch-root.d.ts +1 -1
  459. package/dist/components/fields/switch/switch-root.js +1 -1
  460. package/dist/components/fields/switch/switch-root.js.map +1 -1
  461. package/dist/components/fields/textarea/textarea-variants.d.ts +1 -1
  462. package/dist/components/fields/textarea/textarea-variants.js +4 -6
  463. package/dist/components/fields/textarea/textarea-variants.js.map +1 -1
  464. package/dist/components/fields/textarea/textarea.d.ts +1 -1
  465. package/dist/components/fields/textarea/textarea.js +1 -1
  466. package/dist/components/fields/textarea/textarea.js.map +1 -1
  467. package/dist/components/layout/center-absolute/center-absolute.d.ts +1 -1
  468. package/dist/components/layout/center-absolute/center-absolute.js +1 -1
  469. package/dist/components/layout/center-absolute/center-absolute.js.map +1 -1
  470. package/dist/components/layout/float/float-variants.d.ts +1 -1
  471. package/dist/components/layout/float/float.d.ts +1 -1
  472. package/dist/components/layout/float/float.js +1 -1
  473. package/dist/components/layout/float/float.js.map +1 -1
  474. package/dist/components/layout/scroll-area/scroll-area-viewport.d.ts +1 -1
  475. package/dist/components/layout/scroll-area/scroll-area-viewport.js +1 -1
  476. package/dist/components/layout/scroll-area/scroll-area-viewport.js.map +1 -1
  477. package/dist/components/layout/separator/separator.d.ts +1 -1
  478. package/dist/components/layout/separator/separator.js +1 -1
  479. package/dist/components/layout/separator/separator.js.map +1 -1
  480. package/dist/components/layout/splitter/splitter-panel.d.ts +1 -1
  481. package/dist/components/layout/splitter/splitter-panel.js +1 -1
  482. package/dist/components/layout/splitter/splitter-panel.js.map +1 -1
  483. package/dist/components/layout/splitter/splitter-resize-trigger.d.ts +1 -1
  484. package/dist/components/layout/splitter/splitter-resize-trigger.js +1 -1
  485. package/dist/components/layout/splitter/splitter-resize-trigger.js.map +1 -1
  486. package/dist/components/layout/splitter/splitter-root-provider.d.ts +1 -1
  487. package/dist/components/layout/splitter/splitter-root-provider.js.map +1 -1
  488. package/dist/components/layout/splitter/splitter-root.d.ts +1 -1
  489. package/dist/components/layout/splitter/splitter-root.js +1 -1
  490. package/dist/components/layout/splitter/splitter-root.js.map +1 -1
  491. package/dist/components/layout/splitter/use-splitter.d.ts +1 -1
  492. package/dist/components/layout/splitter/use-splitter.js.map +1 -1
  493. package/dist/components/layout/stack/stack.d.ts +1 -1
  494. package/dist/components/layout/stack/stack.js +1 -1
  495. package/dist/components/layout/stack/stack.js.map +1 -1
  496. package/dist/components/overlays/action-bar/action-bar-popup-variants.d.ts +1 -1
  497. package/dist/components/overlays/action-bar/action-bar-popup-variants.js +4 -4
  498. package/dist/components/overlays/action-bar/action-bar-popup-variants.js.map +1 -1
  499. package/dist/components/overlays/action-bar/action-bar-root.d.ts +1 -1
  500. package/dist/components/overlays/action-bar/action-bar-root.js +1 -1
  501. package/dist/components/overlays/action-bar/action-bar-root.js.map +1 -1
  502. package/dist/components/overlays/alert-dialog/alert-dialog-footer.js +2 -3
  503. package/dist/components/overlays/alert-dialog/alert-dialog-footer.js.map +1 -1
  504. package/dist/components/overlays/alert-dialog/alert-dialog-header.js +1 -1
  505. package/dist/components/overlays/alert-dialog/alert-dialog-header.js.map +1 -1
  506. package/dist/components/overlays/alert-dialog/alert-dialog-imperative.d.ts +78 -0
  507. package/dist/components/overlays/alert-dialog/alert-dialog-imperative.js +172 -0
  508. package/dist/components/overlays/alert-dialog/alert-dialog-imperative.js.map +1 -0
  509. package/dist/components/overlays/alert-dialog/alert-dialog-outlet.d.ts +23 -0
  510. package/dist/components/overlays/alert-dialog/alert-dialog-outlet.js +28 -0
  511. package/dist/components/overlays/alert-dialog/alert-dialog-outlet.js.map +1 -0
  512. package/dist/components/overlays/alert-dialog/alert-dialog-popup-variants.js +4 -4
  513. package/dist/components/overlays/alert-dialog/alert-dialog-popup-variants.js.map +1 -1
  514. package/dist/components/overlays/alert-dialog/alert-dialog-root.d.ts +1 -1
  515. package/dist/components/overlays/alert-dialog/alert-dialog-root.js +1 -1
  516. package/dist/components/overlays/alert-dialog/alert-dialog-root.js.map +1 -1
  517. package/dist/components/overlays/alert-dialog/alert-dialog-store.d.ts +20 -0
  518. package/dist/components/overlays/alert-dialog/alert-dialog-store.js +75 -0
  519. package/dist/components/overlays/alert-dialog/alert-dialog-store.js.map +1 -0
  520. package/dist/components/overlays/alert-dialog/alert-dialog-trigger.js.map +1 -1
  521. package/dist/components/overlays/alert-dialog/index.parts.d.ts +5 -3
  522. package/dist/components/overlays/alert-dialog/index.parts.js +7 -2
  523. package/dist/components/overlays/alert-dialog/index.parts.js.map +1 -1
  524. package/dist/components/overlays/dialog/dialog-body.d.ts +2 -2
  525. package/dist/components/overlays/dialog/dialog-body.js +2 -2
  526. package/dist/components/overlays/dialog/dialog-body.js.map +1 -1
  527. package/dist/components/overlays/dialog/dialog-description.d.ts +1 -2
  528. package/dist/components/overlays/dialog/dialog-description.js +1 -2
  529. package/dist/components/overlays/dialog/dialog-description.js.map +1 -1
  530. package/dist/components/overlays/dialog/dialog-footer.d.ts +1 -1
  531. package/dist/components/overlays/dialog/dialog-footer.js +3 -4
  532. package/dist/components/overlays/dialog/dialog-footer.js.map +1 -1
  533. package/dist/components/overlays/dialog/dialog-header.d.ts +3 -4
  534. package/dist/components/overlays/dialog/dialog-header.js +4 -5
  535. package/dist/components/overlays/dialog/dialog-header.js.map +1 -1
  536. package/dist/components/overlays/dialog/dialog-popup-variants.d.ts +3 -4
  537. package/dist/components/overlays/dialog/dialog-popup-variants.js +5 -6
  538. package/dist/components/overlays/dialog/dialog-popup-variants.js.map +1 -1
  539. package/dist/components/overlays/dialog/dialog-root.d.ts +1 -1
  540. package/dist/components/overlays/dialog/dialog-root.js +1 -1
  541. package/dist/components/overlays/dialog/dialog-root.js.map +1 -1
  542. package/dist/components/overlays/dialog/dialog-title.d.ts +2 -3
  543. package/dist/components/overlays/dialog/dialog-title.js +4 -5
  544. package/dist/components/overlays/dialog/dialog-title.js.map +1 -1
  545. package/dist/components/overlays/dialog/dialog-trigger.js.map +1 -1
  546. package/dist/components/overlays/drawer/drawer-backdrop.js +2 -3
  547. package/dist/components/overlays/drawer/drawer-backdrop.js.map +1 -1
  548. package/dist/components/overlays/drawer/drawer-footer.js +2 -3
  549. package/dist/components/overlays/drawer/drawer-footer.js.map +1 -1
  550. package/dist/components/overlays/drawer/drawer-header.js +1 -1
  551. package/dist/components/overlays/drawer/drawer-header.js.map +1 -1
  552. package/dist/components/overlays/drawer/drawer-indent-background.d.ts +17 -0
  553. package/dist/components/overlays/drawer/drawer-indent-background.js +28 -0
  554. package/dist/components/overlays/drawer/drawer-indent-background.js.map +1 -0
  555. package/dist/components/overlays/drawer/drawer-indent.d.ts +31 -0
  556. package/dist/components/overlays/drawer/drawer-indent.js +49 -0
  557. package/dist/components/overlays/drawer/drawer-indent.js.map +1 -0
  558. package/dist/components/overlays/drawer/drawer-popup-variants.d.ts +2 -26
  559. package/dist/components/overlays/drawer/drawer-popup-variants.js +102 -34
  560. package/dist/components/overlays/drawer/drawer-popup-variants.js.map +1 -1
  561. package/dist/components/overlays/drawer/drawer-popup.js +3 -2
  562. package/dist/components/overlays/drawer/drawer-popup.js.map +1 -1
  563. package/dist/components/overlays/drawer/drawer-provider.d.ts +17 -0
  564. package/dist/components/overlays/drawer/drawer-provider.js +18 -0
  565. package/dist/components/overlays/drawer/drawer-provider.js.map +1 -0
  566. package/dist/components/overlays/drawer/drawer-root.d.ts +1 -1
  567. package/dist/components/overlays/drawer/drawer-root.js +5 -2
  568. package/dist/components/overlays/drawer/drawer-root.js.map +1 -1
  569. package/dist/components/overlays/drawer/drawer-swipe-area.d.ts +27 -0
  570. package/dist/components/overlays/drawer/drawer-swipe-area.js +46 -0
  571. package/dist/components/overlays/drawer/drawer-swipe-area.js.map +1 -0
  572. package/dist/components/overlays/drawer/drawer-title.js +2 -2
  573. package/dist/components/overlays/drawer/drawer-title.js.map +1 -1
  574. package/dist/components/overlays/drawer/drawer-trigger.js.map +1 -1
  575. package/dist/components/overlays/drawer/drawer-viewport.d.ts +5 -0
  576. package/dist/components/overlays/drawer/drawer-viewport.js +13 -1
  577. package/dist/components/overlays/drawer/drawer-viewport.js.map +1 -1
  578. package/dist/components/overlays/drawer/drawer-virtual-keyboard-provider.d.ts +34 -0
  579. package/dist/components/overlays/drawer/drawer-virtual-keyboard-provider.js +35 -0
  580. package/dist/components/overlays/drawer/drawer-virtual-keyboard-provider.js.map +1 -0
  581. package/dist/components/overlays/drawer/index.parts.d.ts +7 -2
  582. package/dist/components/overlays/drawer/index.parts.js +11 -1
  583. package/dist/components/overlays/drawer/index.parts.js.map +1 -1
  584. package/dist/components/overlays/drawer/use-drawer-context.d.ts +8 -1
  585. package/dist/components/overlays/drawer/use-drawer-context.js.map +1 -1
  586. package/dist/components/overlays/menu/menu-group-label.js +1 -1
  587. package/dist/components/overlays/menu/menu-group-label.js.map +1 -1
  588. package/dist/components/overlays/menu/menu-item.d.ts +2 -2
  589. package/dist/components/overlays/menu/menu-item.js +2 -2
  590. package/dist/components/overlays/menu/menu-item.js.map +1 -1
  591. package/dist/components/overlays/menu/menu-root.js.map +1 -1
  592. package/dist/components/overlays/menu/menu-trigger.js.map +1 -1
  593. package/dist/components/overlays/popover/popover-backdrop.d.ts +1 -1
  594. package/dist/components/overlays/popover/popover-backdrop.js +1 -1
  595. package/dist/components/overlays/popover/popover-backdrop.js.map +1 -1
  596. package/dist/components/overlays/popover/popover-description.js +1 -0
  597. package/dist/components/overlays/popover/popover-description.js.map +1 -1
  598. package/dist/components/overlays/popover/popover-popup-variants.d.ts +5 -5
  599. package/dist/components/overlays/popover/popover-popup-variants.js +5 -5
  600. package/dist/components/overlays/popover/popover-popup-variants.js.map +1 -1
  601. package/dist/components/overlays/popover/popover-root.js.map +1 -1
  602. package/dist/components/overlays/popover/popover-title.d.ts +2 -3
  603. package/dist/components/overlays/popover/popover-title.js +6 -5
  604. package/dist/components/overlays/popover/popover-title.js.map +1 -1
  605. package/dist/components/overlays/popover/popover-trigger.js.map +1 -1
  606. package/dist/components/overlays/tooltip/simple-tooltip.d.ts +1 -1
  607. package/dist/components/overlays/tooltip/simple-tooltip.js +1 -1
  608. package/dist/components/overlays/tooltip/simple-tooltip.js.map +1 -1
  609. package/dist/components/overlays/tooltip/tooltip-popup.js +1 -1
  610. package/dist/components/overlays/tooltip/tooltip-popup.js.map +1 -1
  611. package/dist/components/overlays/tooltip/tooltip-root.js.map +1 -1
  612. package/dist/components/overlays/tooltip/tooltip-trigger.js.map +1 -1
  613. package/dist/components/typography/heading/heading.d.ts +1 -1
  614. package/dist/components/typography/heading/heading.js +1 -1
  615. package/dist/components/typography/heading/heading.js.map +1 -1
  616. package/dist/components/typography/kbd/kbd-variants.d.ts +1 -1
  617. package/dist/components/typography/kbd/kbd-variants.js +2 -2
  618. package/dist/components/typography/kbd/kbd-variants.js.map +1 -1
  619. package/dist/components/typography/kbd/kbd.d.ts +1 -1
  620. package/dist/components/typography/kbd/kbd.js +1 -1
  621. package/dist/components/typography/kbd/kbd.js.map +1 -1
  622. package/dist/components/typography/mark/mark-variants.d.ts +1 -1
  623. package/dist/components/typography/mark/mark-variants.js +2 -0
  624. package/dist/components/typography/mark/mark-variants.js.map +1 -1
  625. package/dist/components/typography/mark/mark.d.ts +1 -1
  626. package/dist/components/typography/mark/mark.js +1 -1
  627. package/dist/components/typography/mark/mark.js.map +1 -1
  628. package/dist/components/typography/pre/pre-variants.d.ts +1 -8
  629. package/dist/components/typography/pre/pre-variants.js +6 -23
  630. package/dist/components/typography/pre/pre-variants.js.map +1 -1
  631. package/dist/components/typography/pre/pre.d.ts +1 -1
  632. package/dist/components/typography/pre/pre.js +2 -6
  633. package/dist/components/typography/pre/pre.js.map +1 -1
  634. package/dist/components/utilities/for/for.d.ts +1 -1
  635. package/dist/components/utilities/for/for.js.map +1 -1
  636. package/dist/hooks/index.d.ts +2 -2
  637. package/dist/hooks/index.js +2 -2
  638. package/dist/hooks/use-breakpoint.d.ts +25 -12
  639. package/dist/hooks/use-breakpoint.js +44 -28
  640. package/dist/hooks/use-breakpoint.js.map +1 -1
  641. package/dist/hooks/use-pointer-type.d.ts +2 -6
  642. package/dist/hooks/use-pointer-type.js +4 -22
  643. package/dist/hooks/use-pointer-type.js.map +1 -1
  644. package/dist/types/color-scheme.d.ts +1 -1
  645. package/package.json +14 -13
  646. package/src/theme/theme.css +9 -0
  647. package/dist/components/buttons/button/button-variants.d.ts.map +0 -1
  648. package/dist/components/buttons/button/button.d.ts.map +0 -1
  649. package/dist/components/buttons/clipboard-button/clipboard-button.d.ts.map +0 -1
  650. package/dist/components/buttons/close-button/close-button.d.ts.map +0 -1
  651. package/dist/components/buttons/icon-button/icon-button-variants.d.ts.map +0 -1
  652. package/dist/components/buttons/icon-button/icon-button.d.ts.map +0 -1
  653. package/dist/components/buttons/responsive-button/responsive-button.d.ts.map +0 -1
  654. package/dist/components/collections/select/index.parts.d.ts.map +0 -1
  655. package/dist/components/collections/select/select-arrow.d.ts.map +0 -1
  656. package/dist/components/collections/select/select-backdrop.d.ts.map +0 -1
  657. package/dist/components/collections/select/select-context.d.ts.map +0 -1
  658. package/dist/components/collections/select/select-group-label-variants.d.ts.map +0 -1
  659. package/dist/components/collections/select/select-group-label.d.ts.map +0 -1
  660. package/dist/components/collections/select/select-group.d.ts.map +0 -1
  661. package/dist/components/collections/select/select-icon.d.ts.map +0 -1
  662. package/dist/components/collections/select/select-item-indicator.d.ts.map +0 -1
  663. package/dist/components/collections/select/select-item-text.d.ts.map +0 -1
  664. package/dist/components/collections/select/select-item-variants.d.ts.map +0 -1
  665. package/dist/components/collections/select/select-item.d.ts.map +0 -1
  666. package/dist/components/collections/select/select-label-variants.d.ts.map +0 -1
  667. package/dist/components/collections/select/select-label.d.ts.map +0 -1
  668. package/dist/components/collections/select/select-list.d.ts.map +0 -1
  669. package/dist/components/collections/select/select-popup-variants.d.ts.map +0 -1
  670. package/dist/components/collections/select/select-popup.d.ts.map +0 -1
  671. package/dist/components/collections/select/select-portal.d.ts.map +0 -1
  672. package/dist/components/collections/select/select-positioner.d.ts.map +0 -1
  673. package/dist/components/collections/select/select-root.d.ts.map +0 -1
  674. package/dist/components/collections/select/select-scroll-down-arrow-variants.d.ts.map +0 -1
  675. package/dist/components/collections/select/select-scroll-down-arrow.d.ts.map +0 -1
  676. package/dist/components/collections/select/select-scroll-up-arrow-variants.d.ts.map +0 -1
  677. package/dist/components/collections/select/select-scroll-up-arrow.d.ts.map +0 -1
  678. package/dist/components/collections/select/select-separator.d.ts.map +0 -1
  679. package/dist/components/collections/select/select-trigger-variants.d.ts.map +0 -1
  680. package/dist/components/collections/select/select-trigger.d.ts.map +0 -1
  681. package/dist/components/collections/select/select-value.d.ts.map +0 -1
  682. package/dist/components/collections/select/use-select-context.d.ts.map +0 -1
  683. package/dist/components/collections/tree-view/index.parts.d.ts.map +0 -1
  684. package/dist/components/collections/tree-view/tree-collection.d.ts.map +0 -1
  685. package/dist/components/collections/tree-view/tree-view-branch-content.d.ts.map +0 -1
  686. package/dist/components/collections/tree-view/tree-view-branch-control.d.ts.map +0 -1
  687. package/dist/components/collections/tree-view/tree-view-branch-indent-guide.d.ts.map +0 -1
  688. package/dist/components/collections/tree-view/tree-view-branch-indicator.d.ts.map +0 -1
  689. package/dist/components/collections/tree-view/tree-view-branch-text.d.ts.map +0 -1
  690. package/dist/components/collections/tree-view/tree-view-branch-trigger.d.ts.map +0 -1
  691. package/dist/components/collections/tree-view/tree-view-branch.d.ts.map +0 -1
  692. package/dist/components/collections/tree-view/tree-view-context.d.ts.map +0 -1
  693. package/dist/components/collections/tree-view/tree-view-item-indicator.d.ts.map +0 -1
  694. package/dist/components/collections/tree-view/tree-view-item-text.d.ts.map +0 -1
  695. package/dist/components/collections/tree-view/tree-view-item.d.ts.map +0 -1
  696. package/dist/components/collections/tree-view/tree-view-label.d.ts.map +0 -1
  697. package/dist/components/collections/tree-view/tree-view-node-checkbox-indicator.d.ts.map +0 -1
  698. package/dist/components/collections/tree-view/tree-view-node-checkbox.d.ts.map +0 -1
  699. package/dist/components/collections/tree-view/tree-view-node-context.d.ts.map +0 -1
  700. package/dist/components/collections/tree-view/tree-view-node-provider.d.ts.map +0 -1
  701. package/dist/components/collections/tree-view/tree-view-node-rename-input.d.ts.map +0 -1
  702. package/dist/components/collections/tree-view/tree-view-node-variants.d.ts.map +0 -1
  703. package/dist/components/collections/tree-view/tree-view-node.d.ts.map +0 -1
  704. package/dist/components/collections/tree-view/tree-view-root-provider.d.ts.map +0 -1
  705. package/dist/components/collections/tree-view/tree-view-root.d.ts.map +0 -1
  706. package/dist/components/collections/tree-view/tree-view-text-class-names.d.ts.map +0 -1
  707. package/dist/components/collections/tree-view/tree-view-tree-variants.d.ts.map +0 -1
  708. package/dist/components/collections/tree-view/tree-view-tree.d.ts.map +0 -1
  709. package/dist/components/collections/tree-view/use-tree-view-context.d.ts.map +0 -1
  710. package/dist/components/collections/tree-view/use-tree-view-node-context.d.ts.map +0 -1
  711. package/dist/components/collections/tree-view/use-tree-view-node-props-context.d.ts.map +0 -1
  712. package/dist/components/collections/tree-view/use-tree-view-render-strategy-context.d.ts.map +0 -1
  713. package/dist/components/collections/tree-view/use-tree-view-variants-context.d.ts.map +0 -1
  714. package/dist/components/collections/tree-view/use-tree-view.d.ts.map +0 -1
  715. package/dist/components/disclosure/breadcrumb/breadcrumb-current.d.ts.map +0 -1
  716. package/dist/components/disclosure/breadcrumb/breadcrumb-item.d.ts.map +0 -1
  717. package/dist/components/disclosure/breadcrumb/breadcrumb-link.d.ts.map +0 -1
  718. package/dist/components/disclosure/breadcrumb/breadcrumb-list.d.ts.map +0 -1
  719. package/dist/components/disclosure/breadcrumb/breadcrumb-root.d.ts.map +0 -1
  720. package/dist/components/disclosure/breadcrumb/breadcrumb-separator.d.ts.map +0 -1
  721. package/dist/components/disclosure/breadcrumb/index.parts.d.ts.map +0 -1
  722. package/dist/components/disclosure/collapsible/collapsible-indicator.d.ts.map +0 -1
  723. package/dist/components/disclosure/collapsible/collapsible-panel-variants.d.ts.map +0 -1
  724. package/dist/components/disclosure/collapsible/collapsible-panel.d.ts.map +0 -1
  725. package/dist/components/disclosure/collapsible/collapsible-root.d.ts.map +0 -1
  726. package/dist/components/disclosure/collapsible/collapsible-trigger.d.ts.map +0 -1
  727. package/dist/components/disclosure/collapsible/index.parts.d.ts.map +0 -1
  728. package/dist/components/disclosure/tabs/index.parts.d.ts.map +0 -1
  729. package/dist/components/disclosure/tabs/tabs-indicator-variants.d.ts.map +0 -1
  730. package/dist/components/disclosure/tabs/tabs-indicator.d.ts.map +0 -1
  731. package/dist/components/disclosure/tabs/tabs-list-variants.d.ts.map +0 -1
  732. package/dist/components/disclosure/tabs/tabs-list.d.ts.map +0 -1
  733. package/dist/components/disclosure/tabs/tabs-panel.d.ts.map +0 -1
  734. package/dist/components/disclosure/tabs/tabs-root-variants.d.ts.map +0 -1
  735. package/dist/components/disclosure/tabs/tabs-root.d.ts.map +0 -1
  736. package/dist/components/disclosure/tabs/tabs-tab-variants.d.ts.map +0 -1
  737. package/dist/components/disclosure/tabs/tabs-tab.d.ts.map +0 -1
  738. package/dist/components/disclosure/tabs/use-tabs-context.d.ts.map +0 -1
  739. package/dist/components/display/card/card-body.d.ts.map +0 -1
  740. package/dist/components/display/card/card-description.d.ts.map +0 -1
  741. package/dist/components/display/card/card-footer.d.ts.map +0 -1
  742. package/dist/components/display/card/card-header.d.ts.map +0 -1
  743. package/dist/components/display/card/card-root-variants.d.ts.map +0 -1
  744. package/dist/components/display/card/card-root.d.ts.map +0 -1
  745. package/dist/components/display/card/card-title.d.ts.map +0 -1
  746. package/dist/components/display/card/index.parts.d.ts.map +0 -1
  747. package/dist/components/display/clipboard/clipboard-announcer.d.ts.map +0 -1
  748. package/dist/components/display/clipboard/clipboard-context.d.ts.map +0 -1
  749. package/dist/components/display/clipboard/clipboard-control.d.ts.map +0 -1
  750. package/dist/components/display/clipboard/clipboard-copy-text.d.ts.map +0 -1
  751. package/dist/components/display/clipboard/clipboard-indicator.d.ts.map +0 -1
  752. package/dist/components/display/clipboard/clipboard-input.d.ts.map +0 -1
  753. package/dist/components/display/clipboard/clipboard-label.d.ts.map +0 -1
  754. package/dist/components/display/clipboard/clipboard-root-provider.d.ts.map +0 -1
  755. package/dist/components/display/clipboard/clipboard-root.d.ts.map +0 -1
  756. package/dist/components/display/clipboard/clipboard-trigger.d.ts.map +0 -1
  757. package/dist/components/display/clipboard/clipboard-value-text.d.ts.map +0 -1
  758. package/dist/components/display/clipboard/index.parts.d.ts.map +0 -1
  759. package/dist/components/display/clipboard/use-clipboard-context.d.ts.map +0 -1
  760. package/dist/components/display/clipboard/use-clipboard.d.ts.map +0 -1
  761. package/dist/components/display/data-list/data-list-item-label.d.ts.map +0 -1
  762. package/dist/components/display/data-list/data-list-item-value-variants.d.ts.map +0 -1
  763. package/dist/components/display/data-list/data-list-item-value.d.ts.map +0 -1
  764. package/dist/components/display/data-list/data-list-item-variants.d.ts.map +0 -1
  765. package/dist/components/display/data-list/data-list-item.d.ts.map +0 -1
  766. package/dist/components/display/data-list/data-list-root-variants.d.ts.map +0 -1
  767. package/dist/components/display/data-list/data-list-root.d.ts.map +0 -1
  768. package/dist/components/display/data-list/index.parts.d.ts.map +0 -1
  769. package/dist/components/display/data-list/use-data-list-context.d.ts.map +0 -1
  770. package/dist/components/display/icon/icon.d.ts.map +0 -1
  771. package/dist/components/feedback/empty-state/empty-state-content.d.ts.map +0 -1
  772. package/dist/components/feedback/empty-state/empty-state-description.d.ts.map +0 -1
  773. package/dist/components/feedback/empty-state/empty-state-indicator.d.ts.map +0 -1
  774. package/dist/components/feedback/empty-state/empty-state-root-variants.d.ts.map +0 -1
  775. package/dist/components/feedback/empty-state/empty-state-root.d.ts.map +0 -1
  776. package/dist/components/feedback/empty-state/empty-state-title.d.ts.map +0 -1
  777. package/dist/components/feedback/empty-state/index.parts.d.ts.map +0 -1
  778. package/dist/components/feedback/skeleton/skeleton-text.d.ts.map +0 -1
  779. package/dist/components/feedback/skeleton/skeleton-variants.d.ts.map +0 -1
  780. package/dist/components/feedback/skeleton/skeleton.d.ts.map +0 -1
  781. package/dist/components/feedback/spinner/spinner-variants.d.ts.map +0 -1
  782. package/dist/components/feedback/spinner/spinner.d.ts.map +0 -1
  783. package/dist/components/fields/checkbox/checkbox-group.d.ts.map +0 -1
  784. package/dist/components/fields/checkbox/checkbox-indicator.d.ts.map +0 -1
  785. package/dist/components/fields/checkbox/checkbox-root-variants.d.ts.map +0 -1
  786. package/dist/components/fields/checkbox/checkbox-root.d.ts.map +0 -1
  787. package/dist/components/fields/checkbox/index.parts.d.ts.map +0 -1
  788. package/dist/components/fields/currency-brl-input/currency-brl-input-variants.d.ts.map +0 -1
  789. package/dist/components/fields/currency-brl-input/currency-brl-input.d.ts.map +0 -1
  790. package/dist/components/fields/field/field-description.d.ts.map +0 -1
  791. package/dist/components/fields/field/field-error.d.ts.map +0 -1
  792. package/dist/components/fields/field/field-header.d.ts.map +0 -1
  793. package/dist/components/fields/field/field-item.d.ts.map +0 -1
  794. package/dist/components/fields/field/field-label.d.ts.map +0 -1
  795. package/dist/components/fields/field/field-required-indicator.d.ts.map +0 -1
  796. package/dist/components/fields/field/field-root-variants.d.ts.map +0 -1
  797. package/dist/components/fields/field/field-root.d.ts.map +0 -1
  798. package/dist/components/fields/field/field-validity.d.ts.map +0 -1
  799. package/dist/components/fields/field/index.parts.d.ts.map +0 -1
  800. package/dist/components/fields/fieldset/fieldset-legend.d.ts.map +0 -1
  801. package/dist/components/fields/fieldset/fieldset-root.d.ts.map +0 -1
  802. package/dist/components/fields/fieldset/index.parts.d.ts.map +0 -1
  803. package/dist/components/fields/form/form.d.ts.map +0 -1
  804. package/dist/components/fields/input/input-variants.d.ts.map +0 -1
  805. package/dist/components/fields/input/input.d.ts.map +0 -1
  806. package/dist/components/fields/number-input/number-input-variants.d.ts.map +0 -1
  807. package/dist/components/fields/number-input/number-input.d.ts.map +0 -1
  808. package/dist/components/fields/password-input/password-input-variants.d.ts.map +0 -1
  809. package/dist/components/fields/password-input/password-input.d.ts.map +0 -1
  810. package/dist/components/fields/pattern-input/pattern-input-masks.d.ts.map +0 -1
  811. package/dist/components/fields/pattern-input/pattern-input-variants.d.ts.map +0 -1
  812. package/dist/components/fields/pattern-input/pattern-input.d.ts.map +0 -1
  813. package/dist/components/fields/switch/index.parts.d.ts.map +0 -1
  814. package/dist/components/fields/switch/switch-root-variants.d.ts.map +0 -1
  815. package/dist/components/fields/switch/switch-root.d.ts.map +0 -1
  816. package/dist/components/fields/switch/switch-thumb.d.ts.map +0 -1
  817. package/dist/components/fields/textarea/textarea-variants.d.ts.map +0 -1
  818. package/dist/components/fields/textarea/textarea.d.ts.map +0 -1
  819. package/dist/components/layout/box/box.d.ts.map +0 -1
  820. package/dist/components/layout/center/center.d.ts.map +0 -1
  821. package/dist/components/layout/center-absolute/center-absolute-variants.d.ts.map +0 -1
  822. package/dist/components/layout/center-absolute/center-absolute.d.ts.map +0 -1
  823. package/dist/components/layout/circle/circle.d.ts.map +0 -1
  824. package/dist/components/layout/flex/flex.d.ts.map +0 -1
  825. package/dist/components/layout/float/float-variants.d.ts.map +0 -1
  826. package/dist/components/layout/float/float.d.ts.map +0 -1
  827. package/dist/components/layout/grid/grid.d.ts.map +0 -1
  828. package/dist/components/layout/scroll-area/index.parts.d.ts.map +0 -1
  829. package/dist/components/layout/scroll-area/scroll-area-bars.d.ts.map +0 -1
  830. package/dist/components/layout/scroll-area/scroll-area-content.d.ts.map +0 -1
  831. package/dist/components/layout/scroll-area/scroll-area-corner.d.ts.map +0 -1
  832. package/dist/components/layout/scroll-area/scroll-area-root.d.ts.map +0 -1
  833. package/dist/components/layout/scroll-area/scroll-area-scrollbar.d.ts.map +0 -1
  834. package/dist/components/layout/scroll-area/scroll-area-thumb.d.ts.map +0 -1
  835. package/dist/components/layout/scroll-area/scroll-area-viewport-variants.d.ts.map +0 -1
  836. package/dist/components/layout/scroll-area/scroll-area-viewport.d.ts.map +0 -1
  837. package/dist/components/layout/separator/separator-variants.d.ts.map +0 -1
  838. package/dist/components/layout/separator/separator.d.ts.map +0 -1
  839. package/dist/components/layout/splitter/index.parts.d.ts.map +0 -1
  840. package/dist/components/layout/splitter/splitter-context.d.ts.map +0 -1
  841. package/dist/components/layout/splitter/splitter-panel.d.ts.map +0 -1
  842. package/dist/components/layout/splitter/splitter-resize-trigger.d.ts.map +0 -1
  843. package/dist/components/layout/splitter/splitter-root-provider.d.ts.map +0 -1
  844. package/dist/components/layout/splitter/splitter-root.d.ts.map +0 -1
  845. package/dist/components/layout/splitter/use-splitter-context.d.ts.map +0 -1
  846. package/dist/components/layout/splitter/use-splitter.d.ts.map +0 -1
  847. package/dist/components/layout/stack/h-stack.d.ts.map +0 -1
  848. package/dist/components/layout/stack/stack-variants.d.ts.map +0 -1
  849. package/dist/components/layout/stack/stack.d.ts.map +0 -1
  850. package/dist/components/layout/stack/v-stack.d.ts.map +0 -1
  851. package/dist/components/layout/wrap/wrap.d.ts.map +0 -1
  852. package/dist/components/overlays/action-bar/action-bar-close.d.ts.map +0 -1
  853. package/dist/components/overlays/action-bar/action-bar-popup-variants.d.ts.map +0 -1
  854. package/dist/components/overlays/action-bar/action-bar-popup.d.ts.map +0 -1
  855. package/dist/components/overlays/action-bar/action-bar-portal.d.ts.map +0 -1
  856. package/dist/components/overlays/action-bar/action-bar-root.d.ts.map +0 -1
  857. package/dist/components/overlays/action-bar/action-bar-selection-trigger.d.ts.map +0 -1
  858. package/dist/components/overlays/action-bar/action-bar-separator.d.ts.map +0 -1
  859. package/dist/components/overlays/action-bar/index.parts.d.ts.map +0 -1
  860. package/dist/components/overlays/action-bar/use-action-bar-context.d.ts.map +0 -1
  861. package/dist/components/overlays/alert-dialog/alert-dialog-backdrop.d.ts.map +0 -1
  862. package/dist/components/overlays/alert-dialog/alert-dialog-body.d.ts.map +0 -1
  863. package/dist/components/overlays/alert-dialog/alert-dialog-close.d.ts.map +0 -1
  864. package/dist/components/overlays/alert-dialog/alert-dialog-description.d.ts.map +0 -1
  865. package/dist/components/overlays/alert-dialog/alert-dialog-footer.d.ts.map +0 -1
  866. package/dist/components/overlays/alert-dialog/alert-dialog-header.d.ts.map +0 -1
  867. package/dist/components/overlays/alert-dialog/alert-dialog-popup-variants.d.ts.map +0 -1
  868. package/dist/components/overlays/alert-dialog/alert-dialog-popup.d.ts.map +0 -1
  869. package/dist/components/overlays/alert-dialog/alert-dialog-portal.d.ts.map +0 -1
  870. package/dist/components/overlays/alert-dialog/alert-dialog-root.d.ts.map +0 -1
  871. package/dist/components/overlays/alert-dialog/alert-dialog-title.d.ts.map +0 -1
  872. package/dist/components/overlays/alert-dialog/alert-dialog-trigger.d.ts.map +0 -1
  873. package/dist/components/overlays/alert-dialog/alert-dialog-viewport.d.ts.map +0 -1
  874. package/dist/components/overlays/alert-dialog/create-handle.d.ts.map +0 -1
  875. package/dist/components/overlays/alert-dialog/index.parts.d.ts.map +0 -1
  876. package/dist/components/overlays/alert-dialog/use-alert-dialog-context.d.ts.map +0 -1
  877. package/dist/components/overlays/dialog/create-handle.d.ts.map +0 -1
  878. package/dist/components/overlays/dialog/dialog-backdrop.d.ts.map +0 -1
  879. package/dist/components/overlays/dialog/dialog-body.d.ts.map +0 -1
  880. package/dist/components/overlays/dialog/dialog-close.d.ts.map +0 -1
  881. package/dist/components/overlays/dialog/dialog-description.d.ts.map +0 -1
  882. package/dist/components/overlays/dialog/dialog-footer.d.ts.map +0 -1
  883. package/dist/components/overlays/dialog/dialog-header.d.ts.map +0 -1
  884. package/dist/components/overlays/dialog/dialog-popup-variants.d.ts.map +0 -1
  885. package/dist/components/overlays/dialog/dialog-popup.d.ts.map +0 -1
  886. package/dist/components/overlays/dialog/dialog-portal.d.ts.map +0 -1
  887. package/dist/components/overlays/dialog/dialog-root.d.ts.map +0 -1
  888. package/dist/components/overlays/dialog/dialog-title.d.ts.map +0 -1
  889. package/dist/components/overlays/dialog/dialog-trigger.d.ts.map +0 -1
  890. package/dist/components/overlays/dialog/dialog-viewport.d.ts.map +0 -1
  891. package/dist/components/overlays/dialog/index.parts.d.ts.map +0 -1
  892. package/dist/components/overlays/dialog/use-dialog-context.d.ts.map +0 -1
  893. package/dist/components/overlays/drawer/create-handle.d.ts.map +0 -1
  894. package/dist/components/overlays/drawer/drawer-backdrop.d.ts.map +0 -1
  895. package/dist/components/overlays/drawer/drawer-body.d.ts.map +0 -1
  896. package/dist/components/overlays/drawer/drawer-close.d.ts.map +0 -1
  897. package/dist/components/overlays/drawer/drawer-description.d.ts.map +0 -1
  898. package/dist/components/overlays/drawer/drawer-footer.d.ts.map +0 -1
  899. package/dist/components/overlays/drawer/drawer-header.d.ts.map +0 -1
  900. package/dist/components/overlays/drawer/drawer-popup-variants.d.ts.map +0 -1
  901. package/dist/components/overlays/drawer/drawer-popup.d.ts.map +0 -1
  902. package/dist/components/overlays/drawer/drawer-portal.d.ts.map +0 -1
  903. package/dist/components/overlays/drawer/drawer-root.d.ts.map +0 -1
  904. package/dist/components/overlays/drawer/drawer-title.d.ts.map +0 -1
  905. package/dist/components/overlays/drawer/drawer-trigger.d.ts.map +0 -1
  906. package/dist/components/overlays/drawer/drawer-viewport.d.ts.map +0 -1
  907. package/dist/components/overlays/drawer/index.parts.d.ts.map +0 -1
  908. package/dist/components/overlays/drawer/use-drawer-context.d.ts.map +0 -1
  909. package/dist/components/overlays/menu/index.parts.d.ts.map +0 -1
  910. package/dist/components/overlays/menu/menu-group-label.d.ts.map +0 -1
  911. package/dist/components/overlays/menu/menu-group.d.ts.map +0 -1
  912. package/dist/components/overlays/menu/menu-item-variants.d.ts.map +0 -1
  913. package/dist/components/overlays/menu/menu-item.d.ts.map +0 -1
  914. package/dist/components/overlays/menu/menu-popup.d.ts.map +0 -1
  915. package/dist/components/overlays/menu/menu-portal.d.ts.map +0 -1
  916. package/dist/components/overlays/menu/menu-positioner.d.ts.map +0 -1
  917. package/dist/components/overlays/menu/menu-root.d.ts.map +0 -1
  918. package/dist/components/overlays/menu/menu-separator.d.ts.map +0 -1
  919. package/dist/components/overlays/menu/menu-trigger.d.ts.map +0 -1
  920. package/dist/components/overlays/overlay-manager/index.d.ts +0 -2
  921. package/dist/components/overlays/overlay-manager/index.js +0 -2
  922. package/dist/components/overlays/overlay-manager/overlay-manager.d.ts +0 -49
  923. package/dist/components/overlays/overlay-manager/overlay-manager.d.ts.map +0 -1
  924. package/dist/components/overlays/overlay-manager/overlay-manager.js +0 -182
  925. package/dist/components/overlays/overlay-manager/overlay-manager.js.map +0 -1
  926. package/dist/components/overlays/popover/create-handle.d.ts.map +0 -1
  927. package/dist/components/overlays/popover/index.parts.d.ts.map +0 -1
  928. package/dist/components/overlays/popover/popover-arrow.d.ts.map +0 -1
  929. package/dist/components/overlays/popover/popover-backdrop.d.ts.map +0 -1
  930. package/dist/components/overlays/popover/popover-body.d.ts.map +0 -1
  931. package/dist/components/overlays/popover/popover-close.d.ts.map +0 -1
  932. package/dist/components/overlays/popover/popover-description.d.ts.map +0 -1
  933. package/dist/components/overlays/popover/popover-footer.d.ts.map +0 -1
  934. package/dist/components/overlays/popover/popover-header.d.ts.map +0 -1
  935. package/dist/components/overlays/popover/popover-popup-variants.d.ts.map +0 -1
  936. package/dist/components/overlays/popover/popover-popup.d.ts.map +0 -1
  937. package/dist/components/overlays/popover/popover-portal.d.ts.map +0 -1
  938. package/dist/components/overlays/popover/popover-positioner.d.ts.map +0 -1
  939. package/dist/components/overlays/popover/popover-root.d.ts.map +0 -1
  940. package/dist/components/overlays/popover/popover-title.d.ts.map +0 -1
  941. package/dist/components/overlays/popover/popover-trigger.d.ts.map +0 -1
  942. package/dist/components/overlays/popover/popover-viewport.d.ts.map +0 -1
  943. package/dist/components/overlays/tooltip/create-handle.d.ts.map +0 -1
  944. package/dist/components/overlays/tooltip/index.parts.d.ts.map +0 -1
  945. package/dist/components/overlays/tooltip/simple-tooltip.d.ts.map +0 -1
  946. package/dist/components/overlays/tooltip/tooltip-arrow.d.ts.map +0 -1
  947. package/dist/components/overlays/tooltip/tooltip-popup.d.ts.map +0 -1
  948. package/dist/components/overlays/tooltip/tooltip-portal.d.ts.map +0 -1
  949. package/dist/components/overlays/tooltip/tooltip-positioner.d.ts.map +0 -1
  950. package/dist/components/overlays/tooltip/tooltip-provider.d.ts.map +0 -1
  951. package/dist/components/overlays/tooltip/tooltip-root.d.ts.map +0 -1
  952. package/dist/components/overlays/tooltip/tooltip-trigger.d.ts.map +0 -1
  953. package/dist/components/overlays/tooltip/tooltip-viewport.d.ts.map +0 -1
  954. package/dist/components/typography/heading/heading.d.ts.map +0 -1
  955. package/dist/components/typography/kbd/kbd-group.d.ts.map +0 -1
  956. package/dist/components/typography/kbd/kbd-variants.d.ts.map +0 -1
  957. package/dist/components/typography/kbd/kbd.d.ts.map +0 -1
  958. package/dist/components/typography/list/index.parts.d.ts.map +0 -1
  959. package/dist/components/typography/list/list-item.d.ts.map +0 -1
  960. package/dist/components/typography/list/list-ordered.d.ts.map +0 -1
  961. package/dist/components/typography/list/list-unordered.d.ts.map +0 -1
  962. package/dist/components/typography/list/list-unstyled.d.ts.map +0 -1
  963. package/dist/components/typography/mark/mark-variants.d.ts.map +0 -1
  964. package/dist/components/typography/mark/mark.d.ts.map +0 -1
  965. package/dist/components/typography/paragraph/paragraph.d.ts.map +0 -1
  966. package/dist/components/typography/pre/pre-variants.d.ts.map +0 -1
  967. package/dist/components/typography/pre/pre.d.ts.map +0 -1
  968. package/dist/components/typography/text/text.d.ts.map +0 -1
  969. package/dist/components/typography/truncate/truncate.d.ts.map +0 -1
  970. package/dist/components/utilities/for/for.d.ts.map +0 -1
  971. package/dist/components/utilities/interaction-shield/interaction-shield.d.ts.map +0 -1
  972. package/dist/components/utilities/show/show.d.ts.map +0 -1
  973. package/dist/hooks/use-breakpoint.d.ts.map +0 -1
  974. package/dist/hooks/use-pointer-type.d.ts.map +0 -1
  975. package/dist/hooks/use-responsive-breakpoint.d.ts +0 -18
  976. package/dist/hooks/use-responsive-breakpoint.d.ts.map +0 -1
  977. package/dist/hooks/use-responsive-breakpoint.js +0 -56
  978. package/dist/hooks/use-responsive-breakpoint.js.map +0 -1
  979. package/dist/types/color-scheme.d.ts.map +0 -1
  980. package/dist/utils/merge-class-names.d.ts.map +0 -1
  981. package/dist/utils/merge-state-class-names.d.ts.map +0 -1
  982. package/dist/utils/normalize-data-attr.d.ts.map +0 -1
  983. package/src/theme/tailwindcss-default-theme.css +0 -448
package/README.md ADDED
@@ -0,0 +1,141 @@
1
+ # @lucasbernardosn/react-ui
2
+
3
+ Biblioteca de componentes React sobre [Base UI](https://base-ui.com) e [Zag.js](https://zagjs.com),
4
+ estilizada com Tailwind CSS v4. O tema tem escala de cores própria, claro e escuro, e os textos
5
+ padrão são em pt-BR. Cada componente é importado pelo próprio caminho, e um componente de várias
6
+ partes sai num namespace (`Dialog.Root`, `Dialog.Popup`…).
7
+
8
+ ## Instalação
9
+
10
+ ```bash
11
+ pnpm add @lucasbernardosn/react-ui @lucasbernardosn/react-utils react react-dom tailwindcss
12
+ ```
13
+
14
+ O React (19), o Tailwind CSS (4) e o [`@lucasbernardosn/react-utils`](https://www.npmjs.com/package/@lucasbernardosn/react-utils)
15
+ são peers: o app e a lib precisam usar a mesma cópia de cada um.
16
+
17
+ ## Configuração
18
+
19
+ No CSS de entrada do app, o tema da lib vem depois do Tailwind, e o Tailwind precisa ler as
20
+ classes da lib:
21
+
22
+ ```css
23
+ @import 'tailwindcss';
24
+ @import '@lucasbernardosn/react-ui/theme.css';
25
+
26
+ @source '../node_modules/@lucasbernardosn/react-ui';
27
+
28
+ /*
29
+ * A raiz do app num contexto de empilhamento próprio. Os popups da lib não têm `z-index`: vão por
30
+ * portal para o fim do `body` e ficam por cima da raiz, e o `z-index` do app (um cabeçalho fixo,
31
+ * por exemplo) só vale dentro dela.
32
+ */
33
+ #root {
34
+ isolation: isolate;
35
+ }
36
+ ```
37
+
38
+ O caminho do `@source` é relativo ao arquivo CSS. O tema é claro por padrão; o escuro vale para o
39
+ elemento com `data-theme="dark"` e os descendentes dele, então trocar o tema do app é trocar o
40
+ atributo no `<html>`:
41
+
42
+ ```ts
43
+ document.documentElement.dataset.theme = 'dark';
44
+ ```
45
+
46
+ ## Uso
47
+
48
+ ```tsx
49
+ import { Button } from '@lucasbernardosn/react-ui/buttons/button';
50
+ import { Dialog } from '@lucasbernardosn/react-ui/overlays/dialog';
51
+ import { Field } from '@lucasbernardosn/react-ui/fields/field';
52
+ import { Input } from '@lucasbernardosn/react-ui/fields/input';
53
+
54
+ export const EditCustomerDialog = () => (
55
+ <Dialog.Root>
56
+ <Dialog.Trigger render={<Button />}>Editar cliente</Dialog.Trigger>
57
+ <Dialog.Portal>
58
+ <Dialog.Backdrop />
59
+ <Dialog.Viewport>
60
+ <Dialog.Popup>
61
+ <Dialog.Header>
62
+ <Dialog.Title>Editar cliente</Dialog.Title>
63
+ </Dialog.Header>
64
+ <Dialog.Body>
65
+ <Field.Root>
66
+ <Field.Label>Razão social</Field.Label>
67
+ <Input />
68
+ </Field.Root>
69
+ </Dialog.Body>
70
+ <Dialog.Footer>
71
+ <Dialog.Close render={<Button />}>Salvar</Dialog.Close>
72
+ </Dialog.Footer>
73
+ </Dialog.Popup>
74
+ </Dialog.Viewport>
75
+ </Dialog.Portal>
76
+ </Dialog.Root>
77
+ );
78
+ ```
79
+
80
+ As partes repassam as props e a `ref` ao elemento que renderizam, e o `render` troca esse
81
+ elemento (`render={<Button />}`, `render={<a href="/" />}`), como no Base UI. O JSDoc de cada
82
+ componente, no editor, diz as partes, as variantes e o que cada uma faz.
83
+
84
+ ## Componentes
85
+
86
+ O caminho de import é `@lucasbernardosn/react-ui/<categoria>/<componente>`, com o componente em
87
+ kebab-case (`fields/number-input` para o `NumberInput`).
88
+
89
+ | Categoria | Componentes |
90
+ | --------- | ----------- |
91
+ | `buttons` | `Button`, `ClipboardButton`, `CloseButton`, `IconButton`, `ResponsiveButton` |
92
+ | `collections` | `AsyncSelect`, `Autocomplete`, `Select`, `TreeView` |
93
+ | `disclosure` | `Breadcrumb`, `Collapsible`, `Tabs` |
94
+ | `display` | `Avatar`, `Badge`, `Card`, `Clipboard`, `DataList`, `Icon`, `Status`, `Tag` |
95
+ | `feedback` | `Alert`, `EmptyState`, `Skeleton`, `Spinner`, `Toast` |
96
+ | `fields` | `Checkbox`, `CurrencyBrlInput`, `Field`, `Fieldset`, `Form`, `Input`, `NumberInput`, `PasswordInput`, `PatternInput`, `Switch`, `Textarea` |
97
+ | `layout` | `Box`, `Center`, `CenterAbsolute`, `Circle`, `Flex`, `Float`, `Grid`, `ScrollArea`, `Separator`, `Splitter`, `Stack` (com `HStack` e `VStack`), `Wrap` |
98
+ | `overlays` | `ActionBar`, `AlertDialog`, `Dialog`, `Drawer`, `Menu`, `Popover`, `Tooltip` (com `SimpleTooltip`) |
99
+ | `typography` | `Heading`, `Kbd`, `List`, `Mark`, `Paragraph`, `Pre`, `Text`, `Truncate` |
100
+ | `utilities` | `For`, `InteractionShield`, `Show` |
101
+
102
+ ## Toasts e alertas imperativos
103
+
104
+ O `Toast` e o `AlertDialog` abrem de qualquer lugar, inclusive de fora do React, desde que o
105
+ `Outlet` de cada um esteja montado uma vez perto da raiz, abaixo dos providers globais (tema,
106
+ tradução):
107
+
108
+ ```tsx
109
+ import { AlertDialog } from '@lucasbernardosn/react-ui/overlays/alert-dialog';
110
+ import { Toast } from '@lucasbernardosn/react-ui/feedback/toast';
111
+
112
+ <ThemeProvider>
113
+ <App />
114
+ <Toast.Outlet position="top-center" />
115
+ <AlertDialog.Outlet />
116
+ </ThemeProvider>;
117
+
118
+ Toast.add({ type: 'success', title: 'Nota 4821 emitida' });
119
+
120
+ const confirmed = await AlertDialog.confirm({
121
+ title: 'Excluir a nota 4821?',
122
+ description: 'A exclusão não pode ser desfeita.',
123
+ confirmButton: { children: 'Excluir', colorScheme: 'red' },
124
+ });
125
+ ```
126
+
127
+ ## Hooks, utilitários e tipos
128
+
129
+ - `@lucasbernardosn/react-ui/hooks`: `useIsBreakpoint` e `useResponsiveBreakpoint`, sobre os
130
+ breakpoints da lib (`BREAKPOINTS`, os do Tailwind e alguns menores) ou sobre uma config própria
131
+ passada em `breakpoints`; `usePointerType`, `useIsPointerPrimaryDevice` e
132
+ `useIsTouchPrimaryDevice`, pelo ponteiro principal do dispositivo.
133
+ - `@lucasbernardosn/react-ui/utils`: `mergeTwClassNames` e `mergeStateClassNames`, que juntam as
134
+ classes do app às da lib resolvendo os conflitos do Tailwind (o segundo aceita o `className`
135
+ como função do estado, como no Base UI), e `normalizeDataAttr`.
136
+ - `@lucasbernardosn/react-ui/types`: as camadas de cor aceitas pelo `colorScheme` dos componentes
137
+ (`ColorSchemeCore`, `ColorSchemeSemantic`, `ColorSchemePalette` e `ColorSchemeFull`).
138
+
139
+ ## Licença
140
+
141
+ MIT.
@@ -29,7 +29,7 @@ export declare const buttonDefaultVariants: Required<ButtonVariants>;
29
29
  */
30
30
  export declare const buttonVariants: (props?: ({
31
31
  colorScheme?: "gray" | "brand" | "red" | "green" | "blue" | "teal" | "pink" | "purple" | "cyan" | "orange" | "brown" | "yellow" | "amber" | null | undefined;
32
- variant?: "outline" | "subtle" | "solid" | "surface" | "ghost" | "plain" | null | undefined;
32
+ variant?: "solid" | "subtle" | "surface" | "outline" | "ghost" | "plain" | null | undefined;
33
33
  size?: "3xs" | "2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | null | undefined;
34
34
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
35
35
  //#endregion
@@ -46,9 +46,9 @@ const buttonVariants = cva([
46
46
  "[--button-surface-bg:var(--color-gray-4)]",
47
47
  "[--button-surface-hover-bg:var(--color-gray-5)]",
48
48
  "[--button-surface-border:var(--color-gray-5)]",
49
- "[--button-outline-hover-bg:var(--color-gray-3)]",
50
- "[--button-outline-border:var(--color-gray-alpha-7)]",
51
- "[--button-ghost-hover-bg:var(--color-gray-3)]",
49
+ "[--button-outline-hover-bg:var(--color-gray-4)]",
50
+ "[--button-outline-border:var(--color-gray-6)]",
51
+ "[--button-ghost-hover-bg:var(--color-gray-4)]",
52
52
  "text-gray-12",
53
53
  "ring-gray-9"
54
54
  ],
@@ -61,7 +61,7 @@ const buttonVariants = cva([
61
61
  "[--button-surface-border:var(--color-brand-5)]",
62
62
  "[--button-outline-hover-bg:var(--color-brand-3)]",
63
63
  "[--button-outline-border:var(--color-brand-8)]",
64
- "[--button-ghost-hover-bg:var(--color-brand-3)]",
64
+ "[--button-ghost-hover-bg:var(--color-brand-4)]",
65
65
  "text-brand-11",
66
66
  "ring-brand-9"
67
67
  ],
@@ -74,7 +74,7 @@ const buttonVariants = cva([
74
74
  "[--button-surface-border:var(--color-red-5)]",
75
75
  "[--button-outline-hover-bg:var(--color-red-3)]",
76
76
  "[--button-outline-border:var(--color-red-8)]",
77
- "[--button-ghost-hover-bg:var(--color-red-3)]",
77
+ "[--button-ghost-hover-bg:var(--color-red-4)]",
78
78
  "text-red-11",
79
79
  "ring-red-9"
80
80
  ],
@@ -87,7 +87,7 @@ const buttonVariants = cva([
87
87
  "[--button-surface-border:var(--color-green-5)]",
88
88
  "[--button-outline-hover-bg:var(--color-green-3)]",
89
89
  "[--button-outline-border:var(--color-green-8)]",
90
- "[--button-ghost-hover-bg:var(--color-green-3)]",
90
+ "[--button-ghost-hover-bg:var(--color-green-4)]",
91
91
  "text-green-11",
92
92
  "ring-green-9"
93
93
  ],
@@ -100,7 +100,7 @@ const buttonVariants = cva([
100
100
  "[--button-surface-border:var(--color-blue-5)]",
101
101
  "[--button-outline-hover-bg:var(--color-blue-3)]",
102
102
  "[--button-outline-border:var(--color-blue-8)]",
103
- "[--button-ghost-hover-bg:var(--color-blue-3)]",
103
+ "[--button-ghost-hover-bg:var(--color-blue-4)]",
104
104
  "text-blue-11",
105
105
  "ring-blue-9"
106
106
  ],
@@ -113,7 +113,7 @@ const buttonVariants = cva([
113
113
  "[--button-surface-border:var(--color-teal-5)]",
114
114
  "[--button-outline-hover-bg:var(--color-teal-3)]",
115
115
  "[--button-outline-border:var(--color-teal-8)]",
116
- "[--button-ghost-hover-bg:var(--color-teal-3)]",
116
+ "[--button-ghost-hover-bg:var(--color-teal-4)]",
117
117
  "text-teal-11",
118
118
  "ring-teal-9"
119
119
  ],
@@ -126,7 +126,7 @@ const buttonVariants = cva([
126
126
  "[--button-surface-border:var(--color-pink-5)]",
127
127
  "[--button-outline-hover-bg:var(--color-pink-3)]",
128
128
  "[--button-outline-border:var(--color-pink-8)]",
129
- "[--button-ghost-hover-bg:var(--color-pink-3)]",
129
+ "[--button-ghost-hover-bg:var(--color-pink-4)]",
130
130
  "text-pink-11",
131
131
  "ring-pink-9"
132
132
  ],
@@ -139,7 +139,7 @@ const buttonVariants = cva([
139
139
  "[--button-surface-border:var(--color-purple-5)]",
140
140
  "[--button-outline-hover-bg:var(--color-purple-3)]",
141
141
  "[--button-outline-border:var(--color-purple-8)]",
142
- "[--button-ghost-hover-bg:var(--color-purple-3)]",
142
+ "[--button-ghost-hover-bg:var(--color-purple-4)]",
143
143
  "text-purple-11",
144
144
  "ring-purple-9"
145
145
  ],
@@ -152,7 +152,7 @@ const buttonVariants = cva([
152
152
  "[--button-surface-border:var(--color-cyan-5)]",
153
153
  "[--button-outline-hover-bg:var(--color-cyan-3)]",
154
154
  "[--button-outline-border:var(--color-cyan-8)]",
155
- "[--button-ghost-hover-bg:var(--color-cyan-3)]",
155
+ "[--button-ghost-hover-bg:var(--color-cyan-4)]",
156
156
  "text-cyan-11",
157
157
  "ring-cyan-9"
158
158
  ],
@@ -165,7 +165,7 @@ const buttonVariants = cva([
165
165
  "[--button-surface-border:var(--color-orange-5)]",
166
166
  "[--button-outline-hover-bg:var(--color-orange-3)]",
167
167
  "[--button-outline-border:var(--color-orange-8)]",
168
- "[--button-ghost-hover-bg:var(--color-orange-3)]",
168
+ "[--button-ghost-hover-bg:var(--color-orange-4)]",
169
169
  "text-orange-11",
170
170
  "ring-orange-9"
171
171
  ],
@@ -178,7 +178,7 @@ const buttonVariants = cva([
178
178
  "[--button-surface-border:var(--color-brown-5)]",
179
179
  "[--button-outline-hover-bg:var(--color-brown-3)]",
180
180
  "[--button-outline-border:var(--color-brown-8)]",
181
- "[--button-ghost-hover-bg:var(--color-brown-3)]",
181
+ "[--button-ghost-hover-bg:var(--color-brown-4)]",
182
182
  "text-brown-11",
183
183
  "ring-brown-9"
184
184
  ],
@@ -191,7 +191,7 @@ const buttonVariants = cva([
191
191
  "[--button-surface-border:var(--color-yellow-5)]",
192
192
  "[--button-outline-hover-bg:var(--color-yellow-3)]",
193
193
  "[--button-outline-border:var(--color-yellow-8)]",
194
- "[--button-ghost-hover-bg:var(--color-yellow-3)]",
194
+ "[--button-ghost-hover-bg:var(--color-yellow-4)]",
195
195
  "text-yellow-11",
196
196
  "ring-yellow-9"
197
197
  ],
@@ -204,7 +204,7 @@ const buttonVariants = cva([
204
204
  "[--button-surface-border:var(--color-amber-5)]",
205
205
  "[--button-outline-hover-bg:var(--color-amber-3)]",
206
206
  "[--button-outline-border:var(--color-amber-8)]",
207
- "[--button-ghost-hover-bg:var(--color-amber-3)]",
207
+ "[--button-ghost-hover-bg:var(--color-amber-4)]",
208
208
  "text-amber-11",
209
209
  "ring-amber-9"
210
210
  ]
@@ -258,7 +258,6 @@ const buttonVariants = cva([
258
258
  "h-5",
259
259
  "min-w-5",
260
260
  "text-2xs",
261
- "rounded-sm",
262
261
  "px-1.5",
263
262
  "gap-1",
264
263
  "[&_svg]:size-2.5"
@@ -327,11 +326,6 @@ const buttonVariants = cva([
327
326
  colorScheme: "gray",
328
327
  className: ["text-white", "dark:text-black"]
329
328
  },
330
- {
331
- variant: "outline",
332
- colorScheme: "gray",
333
- className: ["bg-white", "dark:bg-black"]
334
- },
335
329
  {
336
330
  variant: "solid",
337
331
  colorScheme: "yellow",
@@ -1 +1 @@
1
- {"version":3,"file":"button-variants.js","names":[],"sources":["../../../../src/components/buttons/button/button-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport type { ColorSchemePalette } from '#types';\n\nexport type ButtonVariants = {\n /**\n * Cor do botão. Cada `variant` usa a escala da cor de um jeito (fundo sólido, fundo suave,\n * borda).\n *\n * @default 'gray'\n */\n colorScheme?: ColorSchemePalette;\n /**\n * Altura, padding, tamanho do texto e do ícone. `sm` = `h-9`, `md` = `h-10`, alinhado aos\n * outros controles de formulário.\n *\n * @default 'sm'\n */\n size?: '3xs' | '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';\n /**\n * Desenho do botão.\n *\n * @default 'solid'\n */\n variant?: 'solid' | 'subtle' | 'surface' | 'outline' | 'ghost' | 'plain';\n};\n\nexport const buttonDefaultVariants: Required<ButtonVariants> = {\n colorScheme: 'gray',\n size: 'sm',\n variant: 'solid',\n};\n\n/**\n * A cor só declara as variáveis `--button-*`, e a `variant` decide onde cada uma entra. Assim não\n * há um bloco por combinação de cor e `variant`.\n */\nexport const buttonVariants = cva(\n [\n 'relative',\n\n 'inline-flex',\n 'items-center',\n 'justify-center',\n 'align-middle',\n 'shrink-0',\n\n 'whitespace-nowrap',\n 'font-medium',\n 'leading-[1.2]',\n\n 'border',\n 'border-transparent',\n 'rounded-md',\n 'corner-squircle',\n\n 'select-none',\n 'cursor-pointer',\n 'appearance-none',\n 'isolate',\n\n // A transição só existe durante o hover: fora dele, a troca de tema muda as cores na hora,\n // em vez de animar todos os botões da tela. Só o fundo, que é o que o hover muda: com a\n // `opacity` junto, o esmaecido do disabled demoraria para chegar e o spinner do `loading`\n // apareceria antes dele; com o `transition-colors`, o anel de foco que surge durante o hover\n // sairia da cor do texto.\n 'hover:transition-[background-color]',\n 'hover:ease-in',\n 'hover:duration-150',\n\n 'focus-ring-outside',\n\n 'data-disabled:opacity-50',\n 'data-disabled:cursor-not-allowed',\n\n 'data-loading:data-disabled:cursor-default',\n\n '[&_svg]:shrink-0',\n ],\n {\n variants: {\n colorScheme: {\n gray: [\n '[--button-solid-bg:var(--color-black)]',\n 'dark:[--button-solid-bg:var(--color-white)]',\n\n '[--button-subtle-bg:var(--color-gray-4)]',\n '[--button-subtle-hover-bg:var(--color-gray-5)]',\n\n '[--button-surface-bg:var(--color-gray-4)]',\n '[--button-surface-hover-bg:var(--color-gray-5)]',\n '[--button-surface-border:var(--color-gray-5)]',\n\n '[--button-outline-hover-bg:var(--color-gray-3)]',\n '[--button-outline-border:var(--color-gray-alpha-7)]',\n\n '[--button-ghost-hover-bg:var(--color-gray-3)]',\n\n 'text-gray-12',\n 'ring-gray-9',\n ],\n brand: [\n '[--button-solid-bg:var(--color-brand-9)]',\n\n '[--button-subtle-bg:var(--color-brand-4)]',\n '[--button-subtle-hover-bg:var(--color-brand-5)]',\n\n '[--button-surface-bg:var(--color-brand-4)]',\n '[--button-surface-hover-bg:var(--color-brand-5)]',\n '[--button-surface-border:var(--color-brand-5)]',\n\n '[--button-outline-hover-bg:var(--color-brand-3)]',\n '[--button-outline-border:var(--color-brand-8)]',\n\n '[--button-ghost-hover-bg:var(--color-brand-3)]',\n\n 'text-brand-11',\n 'ring-brand-9',\n ],\n red: [\n '[--button-solid-bg:var(--color-red-9)]',\n\n '[--button-subtle-bg:var(--color-red-4)]',\n '[--button-subtle-hover-bg:var(--color-red-5)]',\n\n '[--button-surface-bg:var(--color-red-4)]',\n '[--button-surface-hover-bg:var(--color-red-5)]',\n '[--button-surface-border:var(--color-red-5)]',\n\n '[--button-outline-hover-bg:var(--color-red-3)]',\n '[--button-outline-border:var(--color-red-8)]',\n\n '[--button-ghost-hover-bg:var(--color-red-3)]',\n\n 'text-red-11',\n 'ring-red-9',\n ],\n green: [\n '[--button-solid-bg:var(--color-green-9)]',\n\n '[--button-subtle-bg:var(--color-green-4)]',\n '[--button-subtle-hover-bg:var(--color-green-5)]',\n\n '[--button-surface-bg:var(--color-green-4)]',\n '[--button-surface-hover-bg:var(--color-green-5)]',\n '[--button-surface-border:var(--color-green-5)]',\n\n '[--button-outline-hover-bg:var(--color-green-3)]',\n '[--button-outline-border:var(--color-green-8)]',\n\n '[--button-ghost-hover-bg:var(--color-green-3)]',\n\n 'text-green-11',\n 'ring-green-9',\n ],\n blue: [\n '[--button-solid-bg:var(--color-blue-9)]',\n\n '[--button-subtle-bg:var(--color-blue-4)]',\n '[--button-subtle-hover-bg:var(--color-blue-5)]',\n\n '[--button-surface-bg:var(--color-blue-4)]',\n '[--button-surface-hover-bg:var(--color-blue-5)]',\n '[--button-surface-border:var(--color-blue-5)]',\n\n '[--button-outline-hover-bg:var(--color-blue-3)]',\n '[--button-outline-border:var(--color-blue-8)]',\n\n '[--button-ghost-hover-bg:var(--color-blue-3)]',\n\n 'text-blue-11',\n 'ring-blue-9',\n ],\n teal: [\n '[--button-solid-bg:var(--color-teal-9)]',\n\n '[--button-subtle-bg:var(--color-teal-4)]',\n '[--button-subtle-hover-bg:var(--color-teal-5)]',\n\n '[--button-surface-bg:var(--color-teal-4)]',\n '[--button-surface-hover-bg:var(--color-teal-5)]',\n '[--button-surface-border:var(--color-teal-5)]',\n\n '[--button-outline-hover-bg:var(--color-teal-3)]',\n '[--button-outline-border:var(--color-teal-8)]',\n\n '[--button-ghost-hover-bg:var(--color-teal-3)]',\n\n 'text-teal-11',\n 'ring-teal-9',\n ],\n pink: [\n '[--button-solid-bg:var(--color-pink-9)]',\n\n '[--button-subtle-bg:var(--color-pink-4)]',\n '[--button-subtle-hover-bg:var(--color-pink-5)]',\n\n '[--button-surface-bg:var(--color-pink-4)]',\n '[--button-surface-hover-bg:var(--color-pink-5)]',\n '[--button-surface-border:var(--color-pink-5)]',\n\n '[--button-outline-hover-bg:var(--color-pink-3)]',\n '[--button-outline-border:var(--color-pink-8)]',\n\n '[--button-ghost-hover-bg:var(--color-pink-3)]',\n\n 'text-pink-11',\n 'ring-pink-9',\n ],\n purple: [\n '[--button-solid-bg:var(--color-purple-9)]',\n\n '[--button-subtle-bg:var(--color-purple-4)]',\n '[--button-subtle-hover-bg:var(--color-purple-5)]',\n\n '[--button-surface-bg:var(--color-purple-4)]',\n '[--button-surface-hover-bg:var(--color-purple-5)]',\n '[--button-surface-border:var(--color-purple-5)]',\n\n '[--button-outline-hover-bg:var(--color-purple-3)]',\n '[--button-outline-border:var(--color-purple-8)]',\n\n '[--button-ghost-hover-bg:var(--color-purple-3)]',\n\n 'text-purple-11',\n 'ring-purple-9',\n ],\n cyan: [\n '[--button-solid-bg:var(--color-cyan-9)]',\n\n '[--button-subtle-bg:var(--color-cyan-4)]',\n '[--button-subtle-hover-bg:var(--color-cyan-5)]',\n\n '[--button-surface-bg:var(--color-cyan-4)]',\n '[--button-surface-hover-bg:var(--color-cyan-5)]',\n '[--button-surface-border:var(--color-cyan-5)]',\n\n '[--button-outline-hover-bg:var(--color-cyan-3)]',\n '[--button-outline-border:var(--color-cyan-8)]',\n\n '[--button-ghost-hover-bg:var(--color-cyan-3)]',\n\n 'text-cyan-11',\n 'ring-cyan-9',\n ],\n orange: [\n '[--button-solid-bg:var(--color-orange-9)]',\n\n '[--button-subtle-bg:var(--color-orange-4)]',\n '[--button-subtle-hover-bg:var(--color-orange-5)]',\n\n '[--button-surface-bg:var(--color-orange-4)]',\n '[--button-surface-hover-bg:var(--color-orange-5)]',\n '[--button-surface-border:var(--color-orange-5)]',\n\n '[--button-outline-hover-bg:var(--color-orange-3)]',\n '[--button-outline-border:var(--color-orange-8)]',\n\n '[--button-ghost-hover-bg:var(--color-orange-3)]',\n\n 'text-orange-11',\n 'ring-orange-9',\n ],\n brown: [\n '[--button-solid-bg:var(--color-brown-9)]',\n\n '[--button-subtle-bg:var(--color-brown-4)]',\n '[--button-subtle-hover-bg:var(--color-brown-5)]',\n\n '[--button-surface-bg:var(--color-brown-4)]',\n '[--button-surface-hover-bg:var(--color-brown-5)]',\n '[--button-surface-border:var(--color-brown-5)]',\n\n '[--button-outline-hover-bg:var(--color-brown-3)]',\n '[--button-outline-border:var(--color-brown-8)]',\n\n '[--button-ghost-hover-bg:var(--color-brown-3)]',\n\n 'text-brown-11',\n 'ring-brown-9',\n ],\n yellow: [\n '[--button-solid-bg:var(--color-yellow-9)]',\n\n '[--button-subtle-bg:var(--color-yellow-4)]',\n '[--button-subtle-hover-bg:var(--color-yellow-5)]',\n\n '[--button-surface-bg:var(--color-yellow-4)]',\n '[--button-surface-hover-bg:var(--color-yellow-5)]',\n '[--button-surface-border:var(--color-yellow-5)]',\n\n '[--button-outline-hover-bg:var(--color-yellow-3)]',\n '[--button-outline-border:var(--color-yellow-8)]',\n\n '[--button-ghost-hover-bg:var(--color-yellow-3)]',\n\n 'text-yellow-11',\n 'ring-yellow-9',\n ],\n amber: [\n '[--button-solid-bg:var(--color-amber-9)]',\n\n '[--button-subtle-bg:var(--color-amber-4)]',\n '[--button-subtle-hover-bg:var(--color-amber-5)]',\n\n '[--button-surface-bg:var(--color-amber-4)]',\n '[--button-surface-hover-bg:var(--color-amber-5)]',\n '[--button-surface-border:var(--color-amber-5)]',\n\n '[--button-outline-hover-bg:var(--color-amber-3)]',\n '[--button-outline-border:var(--color-amber-8)]',\n\n '[--button-ghost-hover-bg:var(--color-amber-3)]',\n\n 'text-amber-11',\n 'ring-amber-9',\n ],\n },\n variant: {\n solid: [\n 'bg-(--button-solid-bg)',\n 'hover:bg-(--button-solid-bg)/90',\n 'expanded:bg-(--button-solid-bg)/90',\n\n 'data-disabled:hover:bg-(--button-solid-bg)',\n 'data-disabled:expanded:bg-(--button-solid-bg)',\n\n 'border-transparent',\n\n 'text-white',\n ],\n subtle: [\n 'bg-(--button-subtle-bg)',\n 'hover:bg-(--button-subtle-hover-bg)',\n 'expanded:bg-(--button-subtle-hover-bg)',\n\n 'border-transparent',\n\n 'data-disabled:hover:bg-(--button-subtle-bg)',\n 'data-disabled:expanded:bg-(--button-subtle-bg)',\n ],\n surface: [\n 'bg-(--button-surface-bg)',\n 'hover:bg-(--button-surface-hover-bg)',\n 'expanded:bg-(--button-surface-hover-bg)',\n\n 'border',\n 'border-(--button-surface-border)',\n\n 'data-disabled:hover:bg-(--button-surface-bg)',\n 'data-disabled:expanded:bg-(--button-surface-bg)',\n ],\n outline: [\n 'bg-transparent',\n 'hover:bg-(--button-outline-hover-bg)',\n 'expanded:bg-(--button-outline-hover-bg)',\n\n 'border',\n 'border-(--button-outline-border)',\n\n 'data-disabled:hover:bg-transparent',\n 'data-disabled:expanded:bg-transparent',\n ],\n ghost: [\n 'hover:bg-(--button-ghost-hover-bg)',\n 'expanded:bg-(--button-ghost-hover-bg)',\n\n 'data-disabled:hover:bg-transparent',\n 'data-disabled:expanded:bg-transparent',\n ],\n plain: [],\n },\n size: {\n '3xs': [\n 'h-5',\n 'min-w-5',\n\n 'text-2xs',\n\n 'rounded-sm',\n\n 'px-1.5',\n 'gap-1',\n\n '[&_svg]:size-2.5',\n ],\n '2xs': [\n 'h-6',\n 'min-w-6',\n\n 'text-xs',\n\n 'px-2',\n 'gap-1',\n\n '[&_svg]:size-3.5',\n ],\n xs: [\n 'h-8',\n 'min-w-8',\n\n 'text-xs',\n\n 'px-2.5',\n 'gap-1',\n\n '[&_svg]:size-4',\n ],\n sm: [\n 'h-9',\n 'min-w-9',\n\n 'text-sm',\n\n 'px-3.5',\n 'gap-2',\n\n '[&_svg]:size-4',\n ],\n md: [\n 'h-10',\n 'min-w-10',\n\n 'text-sm',\n\n 'px-4',\n 'gap-2',\n\n '[&_svg]:size-5',\n ],\n lg: [\n 'h-11',\n 'min-w-11',\n\n 'text-base',\n\n 'px-5',\n 'gap-3',\n\n '[&_svg]:size-5',\n ],\n xl: [\n 'h-12',\n 'min-w-12',\n\n 'text-base',\n\n 'px-6',\n 'gap-3',\n\n '[&_svg]:size-5',\n ],\n '2xl': [\n 'h-16',\n 'min-w-16',\n\n 'text-lg',\n\n 'px-7',\n 'gap-3',\n\n '[&_svg]:size-6',\n ],\n },\n },\n compoundVariants: [\n {\n variant: 'solid',\n colorScheme: 'gray',\n className: ['text-white', 'dark:text-black'],\n },\n {\n variant: 'outline',\n colorScheme: 'gray',\n className: ['bg-white', 'dark:bg-black'],\n },\n {\n variant: 'solid',\n colorScheme: 'yellow',\n className: ['text-black'],\n },\n {\n variant: 'solid',\n colorScheme: 'amber',\n className: ['text-black'],\n },\n ],\n defaultVariants: {\n colorScheme: buttonDefaultVariants.colorScheme,\n size: buttonDefaultVariants.size,\n variant: buttonDefaultVariants.variant,\n },\n },\n);\n"],"mappings":";;AA0BA,MAAa,wBAAkD;CAC7D,aAAa;CACb,MAAM;CACN,SAAS;AACX;;;;;AAMA,MAAa,iBAAiB,IAC5B;CACE;CAEA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CAEA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CAOA;CACA;CACA;CAEA;CAEA;CACA;CAEA;CAEA;AACF,GACA;CACE,UAAU;EACR,aAAa;GACX,MAAM;IACJ;IACA;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,OAAO;IACL;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,KAAK;IACH;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,OAAO;IACL;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,MAAM;IACJ;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,MAAM;IACJ;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,MAAM;IACJ;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,QAAQ;IACN;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,MAAM;IACJ;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,QAAQ;IACN;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,OAAO;IACL;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,QAAQ;IACN;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,OAAO;IACL;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;EACF;EACA,SAAS;GACP,OAAO;IACL;IACA;IACA;IAEA;IACA;IAEA;IAEA;GACF;GACA,QAAQ;IACN;IACA;IACA;IAEA;IAEA;IACA;GACF;GACA,SAAS;IACP;IACA;IACA;IAEA;IACA;IAEA;IACA;GACF;GACA,SAAS;IACP;IACA;IACA;IAEA;IACA;IAEA;IACA;GACF;GACA,OAAO;IACL;IACA;IAEA;IACA;GACF;GACA,OAAO,CAAC;EACV;EACA,MAAM;GACJ,OAAO;IACL;IACA;IAEA;IAEA;IAEA;IACA;IAEA;GACF;GACA,OAAO;IACL;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,OAAO;IACL;IACA;IAEA;IAEA;IACA;IAEA;GACF;EACF;CACF;CACA,kBAAkB;EAChB;GACE,SAAS;GACT,aAAa;GACb,WAAW,CAAC,cAAc,iBAAiB;EAC7C;EACA;GACE,SAAS;GACT,aAAa;GACb,WAAW,CAAC,YAAY,eAAe;EACzC;EACA;GACE,SAAS;GACT,aAAa;GACb,WAAW,CAAC,YAAY;EAC1B;EACA;GACE,SAAS;GACT,aAAa;GACb,WAAW,CAAC,YAAY;EAC1B;CACF;CACA,iBAAiB;EACf,aAAa,sBAAsB;EACnC,MAAM,sBAAsB;EAC5B,SAAS,sBAAsB;CACjC;AACF,CACF"}
1
+ {"version":3,"file":"button-variants.js","names":[],"sources":["../../../../src/components/buttons/button/button-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport type { ColorSchemePalette } from '#types';\n\nexport type ButtonVariants = {\n /**\n * Cor do botão. Cada `variant` usa a escala da cor de um jeito (fundo sólido, fundo suave,\n * borda).\n *\n * @default 'gray'\n */\n colorScheme?: ColorSchemePalette;\n /**\n * Altura, padding, tamanho do texto e do ícone. `sm` = `h-9`, `md` = `h-10`, alinhado aos\n * outros controles de formulário.\n *\n * @default 'sm'\n */\n size?: '3xs' | '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';\n /**\n * Desenho do botão.\n *\n * @default 'solid'\n */\n variant?: 'solid' | 'subtle' | 'surface' | 'outline' | 'ghost' | 'plain';\n};\n\nexport const buttonDefaultVariants: Required<ButtonVariants> = {\n colorScheme: 'gray',\n size: 'sm',\n variant: 'solid',\n};\n\n/**\n * A cor só declara as variáveis `--button-*`, e a `variant` decide onde cada uma entra. Assim não\n * há um bloco por combinação de cor e `variant`.\n */\nexport const buttonVariants = cva(\n [\n 'relative',\n\n 'inline-flex',\n 'items-center',\n 'justify-center',\n 'align-middle',\n 'shrink-0',\n\n 'whitespace-nowrap',\n 'font-medium',\n 'leading-[1.2]',\n\n 'border',\n 'border-transparent',\n 'rounded-md',\n 'corner-squircle',\n\n 'select-none',\n 'cursor-pointer',\n 'appearance-none',\n 'isolate',\n\n // A transição só existe durante o hover: fora dele, a troca de tema muda as cores na hora,\n // em vez de animar todos os botões da tela. Só o fundo, que é o que o hover muda: com a\n // `opacity` junto, o esmaecido do disabled demoraria para chegar e o spinner do `loading`\n // apareceria antes dele; com o `transition-colors`, o anel de foco que surge durante o hover\n // sairia da cor do texto.\n 'hover:transition-[background-color]',\n 'hover:ease-in',\n 'hover:duration-150',\n\n 'focus-ring-outside',\n\n 'data-disabled:opacity-50',\n 'data-disabled:cursor-not-allowed',\n\n 'data-loading:data-disabled:cursor-default',\n\n '[&_svg]:shrink-0',\n ],\n {\n variants: {\n colorScheme: {\n gray: [\n '[--button-solid-bg:var(--color-black)]',\n 'dark:[--button-solid-bg:var(--color-white)]',\n\n '[--button-subtle-bg:var(--color-gray-4)]',\n '[--button-subtle-hover-bg:var(--color-gray-5)]',\n\n '[--button-surface-bg:var(--color-gray-4)]',\n '[--button-surface-hover-bg:var(--color-gray-5)]',\n '[--button-surface-border:var(--color-gray-5)]',\n\n '[--button-outline-hover-bg:var(--color-gray-4)]',\n '[--button-outline-border:var(--color-gray-6)]',\n\n '[--button-ghost-hover-bg:var(--color-gray-4)]',\n\n 'text-gray-12',\n 'ring-gray-9',\n ],\n brand: [\n '[--button-solid-bg:var(--color-brand-9)]',\n\n '[--button-subtle-bg:var(--color-brand-4)]',\n '[--button-subtle-hover-bg:var(--color-brand-5)]',\n\n '[--button-surface-bg:var(--color-brand-4)]',\n '[--button-surface-hover-bg:var(--color-brand-5)]',\n '[--button-surface-border:var(--color-brand-5)]',\n\n '[--button-outline-hover-bg:var(--color-brand-3)]',\n '[--button-outline-border:var(--color-brand-8)]',\n\n '[--button-ghost-hover-bg:var(--color-brand-4)]',\n\n 'text-brand-11',\n 'ring-brand-9',\n ],\n red: [\n '[--button-solid-bg:var(--color-red-9)]',\n\n '[--button-subtle-bg:var(--color-red-4)]',\n '[--button-subtle-hover-bg:var(--color-red-5)]',\n\n '[--button-surface-bg:var(--color-red-4)]',\n '[--button-surface-hover-bg:var(--color-red-5)]',\n '[--button-surface-border:var(--color-red-5)]',\n\n '[--button-outline-hover-bg:var(--color-red-3)]',\n '[--button-outline-border:var(--color-red-8)]',\n\n '[--button-ghost-hover-bg:var(--color-red-4)]',\n\n 'text-red-11',\n 'ring-red-9',\n ],\n green: [\n '[--button-solid-bg:var(--color-green-9)]',\n\n '[--button-subtle-bg:var(--color-green-4)]',\n '[--button-subtle-hover-bg:var(--color-green-5)]',\n\n '[--button-surface-bg:var(--color-green-4)]',\n '[--button-surface-hover-bg:var(--color-green-5)]',\n '[--button-surface-border:var(--color-green-5)]',\n\n '[--button-outline-hover-bg:var(--color-green-3)]',\n '[--button-outline-border:var(--color-green-8)]',\n\n '[--button-ghost-hover-bg:var(--color-green-4)]',\n\n 'text-green-11',\n 'ring-green-9',\n ],\n blue: [\n '[--button-solid-bg:var(--color-blue-9)]',\n\n '[--button-subtle-bg:var(--color-blue-4)]',\n '[--button-subtle-hover-bg:var(--color-blue-5)]',\n\n '[--button-surface-bg:var(--color-blue-4)]',\n '[--button-surface-hover-bg:var(--color-blue-5)]',\n '[--button-surface-border:var(--color-blue-5)]',\n\n '[--button-outline-hover-bg:var(--color-blue-3)]',\n '[--button-outline-border:var(--color-blue-8)]',\n\n '[--button-ghost-hover-bg:var(--color-blue-4)]',\n\n 'text-blue-11',\n 'ring-blue-9',\n ],\n teal: [\n '[--button-solid-bg:var(--color-teal-9)]',\n\n '[--button-subtle-bg:var(--color-teal-4)]',\n '[--button-subtle-hover-bg:var(--color-teal-5)]',\n\n '[--button-surface-bg:var(--color-teal-4)]',\n '[--button-surface-hover-bg:var(--color-teal-5)]',\n '[--button-surface-border:var(--color-teal-5)]',\n\n '[--button-outline-hover-bg:var(--color-teal-3)]',\n '[--button-outline-border:var(--color-teal-8)]',\n\n '[--button-ghost-hover-bg:var(--color-teal-4)]',\n\n 'text-teal-11',\n 'ring-teal-9',\n ],\n pink: [\n '[--button-solid-bg:var(--color-pink-9)]',\n\n '[--button-subtle-bg:var(--color-pink-4)]',\n '[--button-subtle-hover-bg:var(--color-pink-5)]',\n\n '[--button-surface-bg:var(--color-pink-4)]',\n '[--button-surface-hover-bg:var(--color-pink-5)]',\n '[--button-surface-border:var(--color-pink-5)]',\n\n '[--button-outline-hover-bg:var(--color-pink-3)]',\n '[--button-outline-border:var(--color-pink-8)]',\n\n '[--button-ghost-hover-bg:var(--color-pink-4)]',\n\n 'text-pink-11',\n 'ring-pink-9',\n ],\n purple: [\n '[--button-solid-bg:var(--color-purple-9)]',\n\n '[--button-subtle-bg:var(--color-purple-4)]',\n '[--button-subtle-hover-bg:var(--color-purple-5)]',\n\n '[--button-surface-bg:var(--color-purple-4)]',\n '[--button-surface-hover-bg:var(--color-purple-5)]',\n '[--button-surface-border:var(--color-purple-5)]',\n\n '[--button-outline-hover-bg:var(--color-purple-3)]',\n '[--button-outline-border:var(--color-purple-8)]',\n\n '[--button-ghost-hover-bg:var(--color-purple-4)]',\n\n 'text-purple-11',\n 'ring-purple-9',\n ],\n cyan: [\n '[--button-solid-bg:var(--color-cyan-9)]',\n\n '[--button-subtle-bg:var(--color-cyan-4)]',\n '[--button-subtle-hover-bg:var(--color-cyan-5)]',\n\n '[--button-surface-bg:var(--color-cyan-4)]',\n '[--button-surface-hover-bg:var(--color-cyan-5)]',\n '[--button-surface-border:var(--color-cyan-5)]',\n\n '[--button-outline-hover-bg:var(--color-cyan-3)]',\n '[--button-outline-border:var(--color-cyan-8)]',\n\n '[--button-ghost-hover-bg:var(--color-cyan-4)]',\n\n 'text-cyan-11',\n 'ring-cyan-9',\n ],\n orange: [\n '[--button-solid-bg:var(--color-orange-9)]',\n\n '[--button-subtle-bg:var(--color-orange-4)]',\n '[--button-subtle-hover-bg:var(--color-orange-5)]',\n\n '[--button-surface-bg:var(--color-orange-4)]',\n '[--button-surface-hover-bg:var(--color-orange-5)]',\n '[--button-surface-border:var(--color-orange-5)]',\n\n '[--button-outline-hover-bg:var(--color-orange-3)]',\n '[--button-outline-border:var(--color-orange-8)]',\n\n '[--button-ghost-hover-bg:var(--color-orange-4)]',\n\n 'text-orange-11',\n 'ring-orange-9',\n ],\n brown: [\n '[--button-solid-bg:var(--color-brown-9)]',\n\n '[--button-subtle-bg:var(--color-brown-4)]',\n '[--button-subtle-hover-bg:var(--color-brown-5)]',\n\n '[--button-surface-bg:var(--color-brown-4)]',\n '[--button-surface-hover-bg:var(--color-brown-5)]',\n '[--button-surface-border:var(--color-brown-5)]',\n\n '[--button-outline-hover-bg:var(--color-brown-3)]',\n '[--button-outline-border:var(--color-brown-8)]',\n\n '[--button-ghost-hover-bg:var(--color-brown-4)]',\n\n 'text-brown-11',\n 'ring-brown-9',\n ],\n yellow: [\n '[--button-solid-bg:var(--color-yellow-9)]',\n\n '[--button-subtle-bg:var(--color-yellow-4)]',\n '[--button-subtle-hover-bg:var(--color-yellow-5)]',\n\n '[--button-surface-bg:var(--color-yellow-4)]',\n '[--button-surface-hover-bg:var(--color-yellow-5)]',\n '[--button-surface-border:var(--color-yellow-5)]',\n\n '[--button-outline-hover-bg:var(--color-yellow-3)]',\n '[--button-outline-border:var(--color-yellow-8)]',\n\n '[--button-ghost-hover-bg:var(--color-yellow-4)]',\n\n 'text-yellow-11',\n 'ring-yellow-9',\n ],\n amber: [\n '[--button-solid-bg:var(--color-amber-9)]',\n\n '[--button-subtle-bg:var(--color-amber-4)]',\n '[--button-subtle-hover-bg:var(--color-amber-5)]',\n\n '[--button-surface-bg:var(--color-amber-4)]',\n '[--button-surface-hover-bg:var(--color-amber-5)]',\n '[--button-surface-border:var(--color-amber-5)]',\n\n '[--button-outline-hover-bg:var(--color-amber-3)]',\n '[--button-outline-border:var(--color-amber-8)]',\n\n '[--button-ghost-hover-bg:var(--color-amber-4)]',\n\n 'text-amber-11',\n 'ring-amber-9',\n ],\n },\n variant: {\n solid: [\n 'bg-(--button-solid-bg)',\n 'hover:bg-(--button-solid-bg)/90',\n 'expanded:bg-(--button-solid-bg)/90',\n\n 'data-disabled:hover:bg-(--button-solid-bg)',\n 'data-disabled:expanded:bg-(--button-solid-bg)',\n\n 'border-transparent',\n\n 'text-white',\n ],\n subtle: [\n 'bg-(--button-subtle-bg)',\n 'hover:bg-(--button-subtle-hover-bg)',\n 'expanded:bg-(--button-subtle-hover-bg)',\n\n 'border-transparent',\n\n 'data-disabled:hover:bg-(--button-subtle-bg)',\n 'data-disabled:expanded:bg-(--button-subtle-bg)',\n ],\n surface: [\n 'bg-(--button-surface-bg)',\n 'hover:bg-(--button-surface-hover-bg)',\n 'expanded:bg-(--button-surface-hover-bg)',\n\n 'border',\n 'border-(--button-surface-border)',\n\n 'data-disabled:hover:bg-(--button-surface-bg)',\n 'data-disabled:expanded:bg-(--button-surface-bg)',\n ],\n outline: [\n 'bg-transparent',\n 'hover:bg-(--button-outline-hover-bg)',\n 'expanded:bg-(--button-outline-hover-bg)',\n\n 'border',\n 'border-(--button-outline-border)',\n\n 'data-disabled:hover:bg-transparent',\n 'data-disabled:expanded:bg-transparent',\n ],\n ghost: [\n 'hover:bg-(--button-ghost-hover-bg)',\n 'expanded:bg-(--button-ghost-hover-bg)',\n\n 'data-disabled:hover:bg-transparent',\n 'data-disabled:expanded:bg-transparent',\n ],\n plain: [],\n },\n size: {\n '3xs': [\n 'h-5',\n 'min-w-5',\n\n 'text-2xs',\n\n 'px-1.5',\n 'gap-1',\n\n '[&_svg]:size-2.5',\n ],\n '2xs': [\n 'h-6',\n 'min-w-6',\n\n 'text-xs',\n\n 'px-2',\n 'gap-1',\n\n '[&_svg]:size-3.5',\n ],\n xs: [\n 'h-8',\n 'min-w-8',\n\n 'text-xs',\n\n 'px-2.5',\n 'gap-1',\n\n '[&_svg]:size-4',\n ],\n sm: [\n 'h-9',\n 'min-w-9',\n\n 'text-sm',\n\n 'px-3.5',\n 'gap-2',\n\n '[&_svg]:size-4',\n ],\n md: [\n 'h-10',\n 'min-w-10',\n\n 'text-sm',\n\n 'px-4',\n 'gap-2',\n\n '[&_svg]:size-5',\n ],\n lg: [\n 'h-11',\n 'min-w-11',\n\n 'text-base',\n\n 'px-5',\n 'gap-3',\n\n '[&_svg]:size-5',\n ],\n xl: [\n 'h-12',\n 'min-w-12',\n\n 'text-base',\n\n 'px-6',\n 'gap-3',\n\n '[&_svg]:size-5',\n ],\n '2xl': [\n 'h-16',\n 'min-w-16',\n\n 'text-lg',\n\n 'px-7',\n 'gap-3',\n\n '[&_svg]:size-6',\n ],\n },\n },\n compoundVariants: [\n {\n variant: 'solid',\n colorScheme: 'gray',\n className: ['text-white', 'dark:text-black'],\n },\n // {\n // variant: 'outline',\n // colorScheme: 'gray',\n // className: ['bg-white', 'dark:bg-black'],\n // },\n {\n variant: 'solid',\n colorScheme: 'yellow',\n className: ['text-black'],\n },\n {\n variant: 'solid',\n colorScheme: 'amber',\n className: ['text-black'],\n },\n ],\n defaultVariants: {\n colorScheme: buttonDefaultVariants.colorScheme,\n size: buttonDefaultVariants.size,\n variant: buttonDefaultVariants.variant,\n },\n },\n);\n"],"mappings":";;AA0BA,MAAa,wBAAkD;CAC7D,aAAa;CACb,MAAM;CACN,SAAS;AACX;;;;;AAMA,MAAa,iBAAiB,IAC5B;CACE;CAEA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CAEA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CAOA;CACA;CACA;CAEA;CAEA;CACA;CAEA;CAEA;AACF,GACA;CACE,UAAU;EACR,aAAa;GACX,MAAM;IACJ;IACA;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,OAAO;IACL;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,KAAK;IACH;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,OAAO;IACL;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,MAAM;IACJ;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,MAAM;IACJ;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,MAAM;IACJ;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,QAAQ;IACN;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,MAAM;IACJ;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,QAAQ;IACN;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,OAAO;IACL;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,QAAQ;IACN;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;GACA,OAAO;IACL;IAEA;IACA;IAEA;IACA;IACA;IAEA;IACA;IAEA;IAEA;IACA;GACF;EACF;EACA,SAAS;GACP,OAAO;IACL;IACA;IACA;IAEA;IACA;IAEA;IAEA;GACF;GACA,QAAQ;IACN;IACA;IACA;IAEA;IAEA;IACA;GACF;GACA,SAAS;IACP;IACA;IACA;IAEA;IACA;IAEA;IACA;GACF;GACA,SAAS;IACP;IACA;IACA;IAEA;IACA;IAEA;IACA;GACF;GACA,OAAO;IACL;IACA;IAEA;IACA;GACF;GACA,OAAO,CAAC;EACV;EACA,MAAM;GACJ,OAAO;IACL;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,OAAO;IACL;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,IAAI;IACF;IACA;IAEA;IAEA;IACA;IAEA;GACF;GACA,OAAO;IACL;IACA;IAEA;IAEA;IACA;IAEA;GACF;EACF;CACF;CACA,kBAAkB;EAChB;GACE,SAAS;GACT,aAAa;GACb,WAAW,CAAC,cAAc,iBAAiB;EAC7C;EAMA;GACE,SAAS;GACT,aAAa;GACb,WAAW,CAAC,YAAY;EAC1B;EACA;GACE,SAAS;GACT,aAAa;GACb,WAAW,CAAC,YAAY;EAC1B;CACF;CACA,iBAAiB;EACf,aAAa,sBAAsB;EACnC,MAAM,sBAAsB;EAC5B,SAAS,sBAAsB;CACjC;AACF,CACF"}
@@ -2,7 +2,7 @@ import { ButtonVariants } from "./button-variants.js";
2
2
  import { IconProps } from "../../display/icon/icon.js";
3
3
  import "../../display/icon/index.js";
4
4
  import { Button as Button$1 } from "@base-ui/react/button";
5
- import { MergeOverride } from "@lucasbernardosn/utils";
5
+ import { MergeOverride } from "@lucasbernardosn/ts-utils";
6
6
  //#region src/components/buttons/button/button.d.ts
7
7
  export type ButtonProps = MergeOverride<Button$1.Props, ButtonVariants & {
8
8
  /**
@@ -5,7 +5,7 @@ import { buttonVariants } from "./button-variants.js";
5
5
  import { Icon } from "../../display/icon/icon.js";
6
6
  import { Spinner } from "../../feedback/spinner/spinner.js";
7
7
  import { Button as Button$1 } from "@base-ui/react/button";
8
- import { createSplitProps, mergeBooleansOr } from "@lucasbernardosn/utils";
8
+ import { createSplitProps, mergeBooleansOr } from "@lucasbernardosn/ts-utils";
9
9
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
10
  //#region src/components/buttons/button/button.tsx
11
11
  const splitVariantProps = createSplitProps();
@@ -1 +1 @@
1
- {"version":3,"file":"button.js","names":["BaseButton"],"sources":["../../../../src/components/buttons/button/button.tsx"],"sourcesContent":["import { Button as BaseButton } from '@base-ui/react/button';\nimport {\n createSplitProps,\n type MergeOverride,\n mergeBooleansOr,\n} from '@lucasbernardosn/utils';\nimport { Icon, type IconProps } from '#components/display/icon';\nimport { Spinner } from '#components/feedback/spinner';\nimport {\n mergeStateClassNames,\n mergeTwClassNames,\n normalizeDataAttr,\n} from '#utils';\nimport { type ButtonVariants, buttonVariants } from './button-variants';\n\nexport type ButtonProps = MergeOverride<\n BaseButton.Props,\n ButtonVariants & {\n /**\n * Ícone ao lado do texto, no tamanho definido pelo `size`.\n */\n icon?: IconProps['render'];\n /**\n * Lado do texto em que o `icon` aparece.\n *\n * @default 'left'\n */\n iconPosition?: 'left' | 'right';\n /**\n * Mostra um spinner no lugar do conteúdo e desabilita o botão. O conteúdo continua no\n * layout, invisível, para a largura do botão não mudar.\n *\n * @default false\n */\n loading?: boolean;\n }\n>;\n\nexport type ButtonState = BaseButton.State;\n\nconst splitVariantProps = createSplitProps<ButtonVariants>();\n\n/**\n * Botão da lib. Desabilitado (ou em `loading`), continua focável, para o leitor de tela e a\n * navegação por teclado não perderem o botão de vista.\n *\n * O `type` padrão é `button`: para enviar um formulário, passe `type=\"submit\"`. Para navegação,\n * use um link, não o `render` com `<a>`: o Button impõe a semântica de botão e o link perderia\n * o \"abrir em nova aba\" e a navegação do router.\n *\n * @example\n * ```tsx\n * <Button\n * colorScheme=\"brand\"\n * icon={<PlusIcon />}\n * >\n * Adicionar\n * </Button>\n * ```\n */\nexport const Button = (props: ButtonProps) => {\n const [variantProps, elementProps] = splitVariantProps(props, [\n 'colorScheme',\n 'size',\n 'variant',\n ]);\n\n const {\n className,\n loading,\n children,\n disabled,\n icon,\n iconPosition = 'left',\n ...rest\n } = elementProps;\n\n return (\n <BaseButton\n data-component=\"Button\"\n type=\"button\"\n disabled={normalizeDataAttr(mergeBooleansOr(disabled, loading))}\n data-loading={normalizeDataAttr(loading)}\n aria-busy={normalizeDataAttr(loading)}\n focusableWhenDisabled={true}\n className={mergeStateClassNames(buttonVariants(variantProps), className)}\n {...rest}\n >\n {loading ? (\n <>\n <Spinner\n aria-hidden={true}\n className={mergeTwClassNames([\n 'absolute',\n\n 'border-r-current',\n 'border-b-current',\n ])}\n />\n\n <span\n className={mergeTwClassNames([\n 'inline-flex',\n 'items-center',\n // Herda o `gap` do botão, que precisa ser o pai direto no DOM: um\n // wrapper no meio (mesmo com `display: contents`) zeraria o espaço\n // entre ícone e texto, e o botão encolheria no loading.\n 'gap-[inherit]',\n\n // Some da tela, mas continua no layout (a largura não muda) e na árvore de\n // acessibilidade: o texto segue sendo o nome do botão. Com `invisible`, o\n // leitor de tela ouviria um botão sem nome.\n 'opacity-0',\n ])}\n >\n <ButtonContent\n icon={icon}\n iconPosition={iconPosition}\n >\n {children}\n </ButtonContent>\n </span>\n </>\n ) : (\n <ButtonContent\n icon={icon}\n iconPosition={iconPosition}\n >\n {children}\n </ButtonContent>\n )}\n </BaseButton>\n );\n};\n\nButton.displayName = 'Button';\n\nconst ButtonContent = (\n props: Pick<ButtonProps, 'children' | 'icon' | 'iconPosition'>,\n) => {\n const { children, icon, iconPosition = 'left' } = props;\n\n return (\n <>\n {icon && iconPosition === 'left' && <Icon render={icon} />}\n\n {children}\n\n {icon && iconPosition === 'right' && <Icon render={icon} />}\n </>\n );\n};\n"],"mappings":";;;;;;;;;;AAwCA,MAAM,oBAAoB,iBAAiC;;;;;;;;;;;;;;;;;;;AAoB3D,MAAa,UAAU,UAAuB;CAC5C,MAAM,CAAC,cAAc,gBAAgB,kBAAkB,OAAO;EAC5D;EACA;EACA;CACF,CAAC;CAED,MAAM,EACJ,WACA,SACA,UACA,UACA,MACA,eAAe,QACf,GAAG,SACD;CAEJ,OACE,oBAACA,UAAD;EACE,kBAAe;EACf,MAAK;EACL,UAAU,kBAAkB,gBAAgB,UAAU,OAAO,CAAC;EAC9D,gBAAc,kBAAkB,OAAO;EACvC,aAAW,kBAAkB,OAAO;EACpC,uBAAuB;EACvB,WAAW,qBAAqB,eAAe,YAAY,GAAG,SAAS;EACvE,GAAI;EAEH,UAAA,UACC,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,SAAD;GACE,eAAa;GACb,WAAW,kBAAkB;IAC3B;IAEA;IACA;GACF,CAAC;EACF,CAAA,GAED,oBAAC,QAAD;GACE,WAAW,kBAAkB;IAC3B;IACA;IAIA;IAKA;GACF,CAAC;GAED,UAAA,oBAAC,eAAD;IACQ;IACQ;IAEb;GACY,CAAA;EACX,CAAA,CACN,EAAA,CAAA,IAEF,oBAAC,eAAD;GACQ;GACQ;GAEb;EACY,CAAA;CAEP,CAAA;AAEhB;AAEA,OAAO,cAAc;AAErB,MAAM,iBACJ,UACG;CACH,MAAM,EAAE,UAAU,MAAM,eAAe,WAAW;CAElD,OACE,qBAAA,UAAA,EAAA,UAAA;EACG,QAAQ,iBAAiB,UAAU,oBAAC,MAAD,EAAM,QAAQ,KAAO,CAAA;EAExD;EAEA,QAAQ,iBAAiB,WAAW,oBAAC,MAAD,EAAM,QAAQ,KAAO,CAAA;CAC1D,EAAA,CAAA;AAEN"}
1
+ {"version":3,"file":"button.js","names":["BaseButton"],"sources":["../../../../src/components/buttons/button/button.tsx"],"sourcesContent":["import { Button as BaseButton } from '@base-ui/react/button';\nimport {\n createSplitProps,\n type MergeOverride,\n mergeBooleansOr,\n} from '@lucasbernardosn/ts-utils';\nimport { Icon, type IconProps } from '#components/display/icon';\nimport { Spinner } from '#components/feedback/spinner';\nimport {\n mergeStateClassNames,\n mergeTwClassNames,\n normalizeDataAttr,\n} from '#utils';\nimport { type ButtonVariants, buttonVariants } from './button-variants';\n\nexport type ButtonProps = MergeOverride<\n BaseButton.Props,\n ButtonVariants & {\n /**\n * Ícone ao lado do texto, no tamanho definido pelo `size`.\n */\n icon?: IconProps['render'];\n /**\n * Lado do texto em que o `icon` aparece.\n *\n * @default 'left'\n */\n iconPosition?: 'left' | 'right';\n /**\n * Mostra um spinner no lugar do conteúdo e desabilita o botão. O conteúdo continua no\n * layout, invisível, para a largura do botão não mudar.\n *\n * @default false\n */\n loading?: boolean;\n }\n>;\n\nexport type ButtonState = BaseButton.State;\n\nconst splitVariantProps = createSplitProps<ButtonVariants>();\n\n/**\n * Botão da lib. Desabilitado (ou em `loading`), continua focável, para o leitor de tela e a\n * navegação por teclado não perderem o botão de vista.\n *\n * O `type` padrão é `button`: para enviar um formulário, passe `type=\"submit\"`. Para navegação,\n * use um link, não o `render` com `<a>`: o Button impõe a semântica de botão e o link perderia\n * o \"abrir em nova aba\" e a navegação do router.\n *\n * @example\n * ```tsx\n * <Button\n * colorScheme=\"brand\"\n * icon={<PlusIcon />}\n * >\n * Adicionar\n * </Button>\n * ```\n */\nexport const Button = (props: ButtonProps) => {\n const [variantProps, elementProps] = splitVariantProps(props, [\n 'colorScheme',\n 'size',\n 'variant',\n ]);\n\n const {\n className,\n loading,\n children,\n disabled,\n icon,\n iconPosition = 'left',\n ...rest\n } = elementProps;\n\n return (\n <BaseButton\n data-component=\"Button\"\n type=\"button\"\n disabled={normalizeDataAttr(mergeBooleansOr(disabled, loading))}\n data-loading={normalizeDataAttr(loading)}\n aria-busy={normalizeDataAttr(loading)}\n focusableWhenDisabled={true}\n className={mergeStateClassNames(buttonVariants(variantProps), className)}\n {...rest}\n >\n {loading ? (\n <>\n <Spinner\n aria-hidden={true}\n className={mergeTwClassNames([\n 'absolute',\n\n 'border-r-current',\n 'border-b-current',\n ])}\n />\n\n <span\n className={mergeTwClassNames([\n 'inline-flex',\n 'items-center',\n // Herda o `gap` do botão, que precisa ser o pai direto no DOM: um\n // wrapper no meio (mesmo com `display: contents`) zeraria o espaço\n // entre ícone e texto, e o botão encolheria no loading.\n 'gap-[inherit]',\n\n // Some da tela, mas continua no layout (a largura não muda) e na árvore de\n // acessibilidade: o texto segue sendo o nome do botão. Com `invisible`, o\n // leitor de tela ouviria um botão sem nome.\n 'opacity-0',\n ])}\n >\n <ButtonContent\n icon={icon}\n iconPosition={iconPosition}\n >\n {children}\n </ButtonContent>\n </span>\n </>\n ) : (\n <ButtonContent\n icon={icon}\n iconPosition={iconPosition}\n >\n {children}\n </ButtonContent>\n )}\n </BaseButton>\n );\n};\n\nButton.displayName = 'Button';\n\nconst ButtonContent = (\n props: Pick<ButtonProps, 'children' | 'icon' | 'iconPosition'>,\n) => {\n const { children, icon, iconPosition = 'left' } = props;\n\n return (\n <>\n {icon && iconPosition === 'left' && <Icon render={icon} />}\n\n {children}\n\n {icon && iconPosition === 'right' && <Icon render={icon} />}\n </>\n );\n};\n"],"mappings":";;;;;;;;;;AAwCA,MAAM,oBAAoB,iBAAiC;;;;;;;;;;;;;;;;;;;AAoB3D,MAAa,UAAU,UAAuB;CAC5C,MAAM,CAAC,cAAc,gBAAgB,kBAAkB,OAAO;EAC5D;EACA;EACA;CACF,CAAC;CAED,MAAM,EACJ,WACA,SACA,UACA,UACA,MACA,eAAe,QACf,GAAG,SACD;CAEJ,OACE,oBAACA,UAAD;EACE,kBAAe;EACf,MAAK;EACL,UAAU,kBAAkB,gBAAgB,UAAU,OAAO,CAAC;EAC9D,gBAAc,kBAAkB,OAAO;EACvC,aAAW,kBAAkB,OAAO;EACpC,uBAAuB;EACvB,WAAW,qBAAqB,eAAe,YAAY,GAAG,SAAS;EACvE,GAAI;EAEH,UAAA,UACC,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,SAAD;GACE,eAAa;GACb,WAAW,kBAAkB;IAC3B;IAEA;IACA;GACF,CAAC;EACF,CAAA,GAED,oBAAC,QAAD;GACE,WAAW,kBAAkB;IAC3B;IACA;IAIA;IAKA;GACF,CAAC;GAED,UAAA,oBAAC,eAAD;IACQ;IACQ;IAEb;GACY,CAAA;EACX,CAAA,CACN,EAAA,CAAA,IAEF,oBAAC,eAAD;GACQ;GACQ;GAEb;EACY,CAAA;CAEP,CAAA;AAEhB;AAEA,OAAO,cAAc;AAErB,MAAM,iBACJ,UACG;CACH,MAAM,EAAE,UAAU,MAAM,eAAe,WAAW;CAElD,OACE,qBAAA,UAAA,EAAA,UAAA;EACG,QAAQ,iBAAiB,UAAU,oBAAC,MAAD,EAAM,QAAQ,KAAO,CAAA;EAExD;EAEA,QAAQ,iBAAiB,WAAW,oBAAC,MAAD,EAAM,QAAQ,KAAO,CAAA;CAC1D,EAAA,CAAA;AAEN"}
@@ -3,7 +3,7 @@ import "../icon-button/index.js";
3
3
  import { UseClipboardProps } from "../../display/clipboard/use-clipboard.js";
4
4
  import { index_parts_d_exports } from "../../display/clipboard/index.parts.js";
5
5
  import "../../display/clipboard/index.js";
6
- import { MergeOverride } from "@lucasbernardosn/utils";
6
+ import { MergeOverride } from "@lucasbernardosn/ts-utils";
7
7
  //#region src/components/buttons/clipboard-button/clipboard-button.d.ts
8
8
  export type ClipboardButtonProps = MergeOverride<Omit<IconButtonProps, 'icon'>, UseClipboardProps>;
9
9
  /**
@@ -3,7 +3,7 @@ import { IconButton } from "../icon-button/icon-button.js";
3
3
  import { ClipboardIndicator } from "../../display/clipboard/clipboard-indicator.js";
4
4
  import { ClipboardRoot } from "../../display/clipboard/clipboard-root.js";
5
5
  import { ClipboardTrigger } from "../../display/clipboard/clipboard-trigger.js";
6
- import { createSplitProps } from "@lucasbernardosn/utils";
6
+ import { createSplitProps } from "@lucasbernardosn/ts-utils";
7
7
  import { jsx } from "react/jsx-runtime";
8
8
  import * as ZagClipboard from "@zag-js/clipboard";
9
9
  //#region src/components/buttons/clipboard-button/clipboard-button.tsx
@@ -1 +1 @@
1
- {"version":3,"file":"clipboard-button.js","names":["Clipboard.Root","Clipboard.Trigger","Clipboard.Indicator"],"sources":["../../../../src/components/buttons/clipboard-button/clipboard-button.tsx"],"sourcesContent":["import { createSplitProps, type MergeOverride } from '@lucasbernardosn/utils';\nimport * as ZagClipboard from '@zag-js/clipboard';\nimport {\n IconButton,\n type IconButtonProps,\n} from '#components/buttons/icon-button';\nimport { Clipboard } from '#components/display/clipboard';\nimport { mergeTwClassNames } from '#utils';\n\nexport type ClipboardButtonProps = MergeOverride<\n Omit<IconButtonProps, 'icon'>,\n Clipboard.UseClipboardProps\n>;\n\nconst splitClipboardProps = createSplitProps<Clipboard.UseClipboardProps>();\n\n/**\n * Botão de ícone que copia `value` para a área de transferência e troca o ícone enquanto o\n * destaque de cópia dura. Aceita as opções do `Clipboard.Root` e as props do `IconButton`.\n *\n * No layout, se comporta como o próprio botão: `className` e posição em flex valem para ele. A\n * cópia é anunciada ao leitor de tela pelo `Clipboard.Root`, com o `triggerLabel` das\n * `translations`.\n *\n * @example\n * ```tsx\n * <ClipboardButton\n * aria-label=\"Copiar link\"\n * value=\"https://exemplo.com.br\"\n * />\n * ```\n */\nexport const ClipboardButton = (props: ClipboardButtonProps) => {\n const [clipboardProps, iconButtonProps] = splitClipboardProps(\n props,\n ZagClipboard.props,\n );\n\n return (\n <Clipboard.Root\n // Sem caixa própria: o botão é que ocupa o lugar no layout, e o `className` de quem usa\n // (que vai para o botão) vale no flex do contêiner.\n className={mergeTwClassNames(['contents'])}\n {...clipboardProps}\n >\n <Clipboard.Trigger\n render={\n <IconButton\n variant=\"subtle\"\n colorScheme=\"gray\"\n icon={<Clipboard.Indicator />}\n {...iconButtonProps}\n />\n }\n />\n </Clipboard.Root>\n );\n};\n\nClipboardButton.displayName = 'ClipboardButton';\n"],"mappings":";;;;;;;;;AAcA,MAAM,sBAAsB,iBAA8C;;;;;;;;;;;;;;;;;AAkB1E,MAAa,mBAAmB,UAAgC;CAC9D,MAAM,CAAC,gBAAgB,mBAAmB,oBACxC,OACA,aAAa,KACf;CAEA,OACE,oBAACA,eAAD;EAGE,WAAW,kBAAkB,CAAC,UAAU,CAAC;EACzC,GAAI;EAEJ,UAAA,oBAACC,kBAAD,EACE,QACE,oBAAC,YAAD;GACE,SAAQ;GACR,aAAY;GACZ,MAAM,oBAACC,oBAAD,CAAsB,CAAA;GAC5B,GAAI;EACL,CAAA,EAEJ,CAAA;CACa,CAAA;AAEpB;AAEA,gBAAgB,cAAc"}
1
+ {"version":3,"file":"clipboard-button.js","names":["Clipboard.Root","Clipboard.Trigger","Clipboard.Indicator"],"sources":["../../../../src/components/buttons/clipboard-button/clipboard-button.tsx"],"sourcesContent":["import {\n createSplitProps,\n type MergeOverride,\n} from '@lucasbernardosn/ts-utils';\nimport * as ZagClipboard from '@zag-js/clipboard';\nimport {\n IconButton,\n type IconButtonProps,\n} from '#components/buttons/icon-button';\nimport { Clipboard } from '#components/display/clipboard';\nimport { mergeTwClassNames } from '#utils';\n\nexport type ClipboardButtonProps = MergeOverride<\n Omit<IconButtonProps, 'icon'>,\n Clipboard.UseClipboardProps\n>;\n\nconst splitClipboardProps = createSplitProps<Clipboard.UseClipboardProps>();\n\n/**\n * Botão de ícone que copia `value` para a área de transferência e troca o ícone enquanto o\n * destaque de cópia dura. Aceita as opções do `Clipboard.Root` e as props do `IconButton`.\n *\n * No layout, se comporta como o próprio botão: `className` e posição em flex valem para ele. A\n * cópia é anunciada ao leitor de tela pelo `Clipboard.Root`, com o `triggerLabel` das\n * `translations`.\n *\n * @example\n * ```tsx\n * <ClipboardButton\n * aria-label=\"Copiar link\"\n * value=\"https://exemplo.com.br\"\n * />\n * ```\n */\nexport const ClipboardButton = (props: ClipboardButtonProps) => {\n const [clipboardProps, iconButtonProps] = splitClipboardProps(\n props,\n ZagClipboard.props,\n );\n\n return (\n <Clipboard.Root\n // Sem caixa própria: o botão é que ocupa o lugar no layout, e o `className` de quem usa\n // (que vai para o botão) vale no flex do contêiner.\n className={mergeTwClassNames(['contents'])}\n {...clipboardProps}\n >\n <Clipboard.Trigger\n render={\n <IconButton\n variant=\"subtle\"\n colorScheme=\"gray\"\n icon={<Clipboard.Indicator />}\n {...iconButtonProps}\n />\n }\n />\n </Clipboard.Root>\n );\n};\n\nClipboardButton.displayName = 'ClipboardButton';\n"],"mappings":";;;;;;;;;AAiBA,MAAM,sBAAsB,iBAA8C;;;;;;;;;;;;;;;;;AAkB1E,MAAa,mBAAmB,UAAgC;CAC9D,MAAM,CAAC,gBAAgB,mBAAmB,oBACxC,OACA,aAAa,KACf;CAEA,OACE,oBAACA,eAAD;EAGE,WAAW,kBAAkB,CAAC,UAAU,CAAC;EACzC,GAAI;EAEJ,UAAA,oBAACC,kBAAD,EACE,QACE,oBAAC,YAAD;GACE,SAAQ;GACR,aAAY;GACZ,MAAM,oBAACC,oBAAD,CAAsB,CAAA;GAC5B,GAAI;EACL,CAAA,EAEJ,CAAA;CACa,CAAA;AAEpB;AAEA,gBAAgB,cAAc"}
@@ -1,6 +1,6 @@
1
1
  import { IconButtonProps } from "../icon-button/icon-button.js";
2
2
  import "../icon-button/index.js";
3
- import { MergeOverride } from "@lucasbernardosn/utils";
3
+ import { MergeOverride } from "@lucasbernardosn/ts-utils";
4
4
  //#region src/components/buttons/close-button/close-button.d.ts
5
5
  export type CloseButtonProps = MergeOverride<Omit<IconButtonProps, 'icon'>, {
6
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"close-button.js","names":[],"sources":["../../../../src/components/buttons/close-button/close-button.tsx"],"sourcesContent":["import type { MergeOverride } from '@lucasbernardosn/utils';\nimport { XIcon } from '@phosphor-icons/react';\nimport {\n IconButton,\n type IconButtonProps,\n} from '#components/buttons/icon-button';\n\nexport type CloseButtonProps = MergeOverride<\n Omit<IconButtonProps, 'icon'>,\n {\n /**\n * Nome do botão para o leitor de tela.\n *\n * @default 'Fechar'\n */\n 'aria-label'?: string;\n }\n>;\n\n/**\n * `IconButton` com X, para fechar um dialog, um drawer ou um aviso. Sai `ghost` e com o nome\n * \"Fechar\"; as outras props do `IconButton` valem igual.\n *\n * Não fecha nada sozinho: entra no `render` da parte que fecha.\n *\n * @example\n * ```tsx\n * <Dialog.Close render={<CloseButton />} />\n * ```\n */\nexport const CloseButton = (props: CloseButtonProps) => {\n const { 'aria-label': ariaLabel = 'Fechar', ...rest } = props;\n\n return (\n <IconButton\n data-component=\"CloseButton\"\n variant=\"ghost\"\n aria-label={ariaLabel}\n icon={<XIcon />}\n {...rest}\n />\n );\n};\n\nCloseButton.displayName = 'CloseButton';\n"],"mappings":";;;;;;;;;;;;;;;AA8BA,MAAa,eAAe,UAA4B;CACtD,MAAM,EAAE,cAAc,YAAY,UAAU,GAAG,SAAS;CAExD,OACE,oBAAC,YAAD;EACE,kBAAe;EACf,SAAQ;EACR,cAAY;EACZ,MAAM,oBAAC,OAAD,CAAQ,CAAA;EACd,GAAI;CACL,CAAA;AAEL;AAEA,YAAY,cAAc"}
1
+ {"version":3,"file":"close-button.js","names":[],"sources":["../../../../src/components/buttons/close-button/close-button.tsx"],"sourcesContent":["import type { MergeOverride } from '@lucasbernardosn/ts-utils';\nimport { XIcon } from '@phosphor-icons/react';\nimport {\n IconButton,\n type IconButtonProps,\n} from '#components/buttons/icon-button';\n\nexport type CloseButtonProps = MergeOverride<\n Omit<IconButtonProps, 'icon'>,\n {\n /**\n * Nome do botão para o leitor de tela.\n *\n * @default 'Fechar'\n */\n 'aria-label'?: string;\n }\n>;\n\n/**\n * `IconButton` com X, para fechar um dialog, um drawer ou um aviso. Sai `ghost` e com o nome\n * \"Fechar\"; as outras props do `IconButton` valem igual.\n *\n * Não fecha nada sozinho: entra no `render` da parte que fecha.\n *\n * @example\n * ```tsx\n * <Dialog.Close render={<CloseButton />} />\n * ```\n */\nexport const CloseButton = (props: CloseButtonProps) => {\n const { 'aria-label': ariaLabel = 'Fechar', ...rest } = props;\n\n return (\n <IconButton\n data-component=\"CloseButton\"\n variant=\"ghost\"\n aria-label={ariaLabel}\n icon={<XIcon />}\n {...rest}\n />\n );\n};\n\nCloseButton.displayName = 'CloseButton';\n"],"mappings":";;;;;;;;;;;;;;;AA8BA,MAAa,eAAe,UAA4B;CACtD,MAAM,EAAE,cAAc,YAAY,UAAU,GAAG,SAAS;CAExD,OACE,oBAAC,YAAD;EACE,kBAAe;EACf,SAAQ;EACR,cAAY;EACZ,MAAM,oBAAC,OAAD,CAAQ,CAAA;EACd,GAAI;CACL,CAAA;AAEL;AAEA,YAAY,cAAc"}
@@ -3,7 +3,7 @@ import "../../display/icon/index.js";
3
3
  import { ButtonProps } from "../button/button.js";
4
4
  import "../button/index.js";
5
5
  import { IconButtonVariants } from "./icon-button-variants.js";
6
- import { MergeOverride } from "@lucasbernardosn/utils";
6
+ import { MergeOverride } from "@lucasbernardosn/ts-utils";
7
7
  //#region src/components/buttons/icon-button/icon-button.d.ts
8
8
  export type IconButtonProps = MergeOverride<Omit<ButtonProps, 'children' | 'icon' | 'iconPosition'>, IconButtonVariants & {
9
9
  /**
@@ -2,7 +2,7 @@ import { mergeStateClassNames } from "../../../utils/merge-state-class-names.js"
2
2
  import { Icon } from "../../display/icon/icon.js";
3
3
  import { Button } from "../button/button.js";
4
4
  import { iconButtonVariants } from "./icon-button-variants.js";
5
- import { createSplitProps } from "@lucasbernardosn/utils";
5
+ import { createSplitProps } from "@lucasbernardosn/ts-utils";
6
6
  import { jsx } from "react/jsx-runtime";
7
7
  //#region src/components/buttons/icon-button/icon-button.tsx
8
8
  const splitVariantProps = createSplitProps();
@@ -1 +1 @@
1
- {"version":3,"file":"icon-button.js","names":[],"sources":["../../../../src/components/buttons/icon-button/icon-button.tsx"],"sourcesContent":["import { createSplitProps, type MergeOverride } from '@lucasbernardosn/utils';\nimport { Button, type ButtonProps } from '#components/buttons/button';\nimport { Icon, type IconProps } from '#components/display/icon';\nimport { mergeStateClassNames } from '#utils';\nimport {\n type IconButtonVariants,\n iconButtonVariants,\n} from './icon-button-variants';\n\nexport type IconButtonProps = MergeOverride<\n Omit<ButtonProps, 'children' | 'icon' | 'iconPosition'>,\n IconButtonVariants & {\n /**\n * O que o botão faz (\"Fechar\", \"Editar pedido\"), não o nome do ícone. É o único nome do\n * botão: o ícone sai do leitor de tela.\n */\n 'aria-label': string;\n /**\n * Ícone do botão, no tamanho definido pelo `size`.\n */\n icon: NonNullable<IconProps['render']>;\n }\n>;\n\nconst splitVariantProps = createSplitProps<IconButtonVariants>();\n\n/**\n * Botão quadrado só com ícone.\n *\n * O ícone sai do leitor de tela (o `Icon` é decorativo por padrão), então o tipo exige um\n * `aria-label` que diga o que o botão faz. Quem enxerga vê só o ícone: em barras com\n * vários botões, envolva cada um num tooltip com o mesmo texto.\n *\n * @example\n * ```tsx\n * <IconButton\n * aria-label=\"Fechar\"\n * icon={<XIcon />}\n * />\n * ```\n */\nexport const IconButton = (props: IconButtonProps) => {\n const [variantProps, elementProps] = splitVariantProps(props, [\n 'round',\n 'size',\n ]);\n\n const { className, icon, ...rest } = elementProps;\n\n return (\n <Button\n data-component=\"IconButton\"\n className={mergeStateClassNames(\n iconButtonVariants(variantProps),\n className,\n )}\n size={variantProps.size}\n {...rest}\n >\n <Icon render={icon} />\n </Button>\n );\n};\n\nIconButton.displayName = 'IconButton';\n"],"mappings":";;;;;;;AAwBA,MAAM,oBAAoB,iBAAqC;;;;;;;;;;;;;;;;AAiB/D,MAAa,cAAc,UAA2B;CACpD,MAAM,CAAC,cAAc,gBAAgB,kBAAkB,OAAO,CAC5D,SACA,MACF,CAAC;CAED,MAAM,EAAE,WAAW,MAAM,GAAG,SAAS;CAErC,OACE,oBAAC,QAAD;EACE,kBAAe;EACf,WAAW,qBACT,mBAAmB,YAAY,GAC/B,SACF;EACA,MAAM,aAAa;EACnB,GAAI;EAEJ,UAAA,oBAAC,MAAD,EAAM,QAAQ,KAAO,CAAA;CACf,CAAA;AAEZ;AAEA,WAAW,cAAc"}
1
+ {"version":3,"file":"icon-button.js","names":[],"sources":["../../../../src/components/buttons/icon-button/icon-button.tsx"],"sourcesContent":["import {\n createSplitProps,\n type MergeOverride,\n} from '@lucasbernardosn/ts-utils';\nimport { Button, type ButtonProps } from '#components/buttons/button';\nimport { Icon, type IconProps } from '#components/display/icon';\nimport { mergeStateClassNames } from '#utils';\nimport {\n type IconButtonVariants,\n iconButtonVariants,\n} from './icon-button-variants';\n\nexport type IconButtonProps = MergeOverride<\n Omit<ButtonProps, 'children' | 'icon' | 'iconPosition'>,\n IconButtonVariants & {\n /**\n * O que o botão faz (\"Fechar\", \"Editar pedido\"), não o nome do ícone. É o único nome do\n * botão: o ícone sai do leitor de tela.\n */\n 'aria-label': string;\n /**\n * Ícone do botão, no tamanho definido pelo `size`.\n */\n icon: NonNullable<IconProps['render']>;\n }\n>;\n\nconst splitVariantProps = createSplitProps<IconButtonVariants>();\n\n/**\n * Botão quadrado só com ícone.\n *\n * O ícone sai do leitor de tela (o `Icon` é decorativo por padrão), então o tipo exige um\n * `aria-label` que diga o que o botão faz. Quem enxerga vê só o ícone: em barras com\n * vários botões, envolva cada um num tooltip com o mesmo texto.\n *\n * @example\n * ```tsx\n * <IconButton\n * aria-label=\"Fechar\"\n * icon={<XIcon />}\n * />\n * ```\n */\nexport const IconButton = (props: IconButtonProps) => {\n const [variantProps, elementProps] = splitVariantProps(props, [\n 'round',\n 'size',\n ]);\n\n const { className, icon, ...rest } = elementProps;\n\n return (\n <Button\n data-component=\"IconButton\"\n className={mergeStateClassNames(\n iconButtonVariants(variantProps),\n className,\n )}\n size={variantProps.size}\n {...rest}\n >\n <Icon render={icon} />\n </Button>\n );\n};\n\nIconButton.displayName = 'IconButton';\n"],"mappings":";;;;;;;AA2BA,MAAM,oBAAoB,iBAAqC;;;;;;;;;;;;;;;;AAiB/D,MAAa,cAAc,UAA2B;CACpD,MAAM,CAAC,cAAc,gBAAgB,kBAAkB,OAAO,CAC5D,SACA,MACF,CAAC;CAED,MAAM,EAAE,WAAW,MAAM,GAAG,SAAS;CAErC,OACE,oBAAC,QAAD;EACE,kBAAe;EACf,WAAW,qBACT,mBAAmB,YAAY,GAC/B,SACF;EACA,MAAM,aAAa;EACnB,GAAI;EAEJ,UAAA,oBAAC,MAAD,EAAM,QAAQ,KAAO,CAAA;CACf,CAAA;AAEZ;AAEA,WAAW,cAAc"}
@@ -1,7 +1,7 @@
1
1
  import { ButtonProps } from "../button/button.js";
2
2
  import "../button/index.js";
3
3
  import { Breakpoint } from "../../../hooks/use-breakpoint.js";
4
- import { MergeOverride } from "@lucasbernardosn/utils";
4
+ import { MergeOverride } from "@lucasbernardosn/ts-utils";
5
5
  //#region src/components/buttons/responsive-button/responsive-button.d.ts
6
6
  export type ResponsiveButtonProps = MergeOverride<ButtonProps, {
7
7
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"responsive-button.js","names":[],"sources":["../../../../src/components/buttons/responsive-button/responsive-button.tsx"],"sourcesContent":["import type { MergeOverride } from '@lucasbernardosn/utils';\nimport { Button, type ButtonProps } from '#components/buttons/button';\nimport { IconButton } from '#components/buttons/icon-button';\nimport { type Breakpoint, useIsBreakpoint } from '#hooks';\n\nexport type ResponsiveButtonProps = MergeOverride<\n ButtonProps,\n {\n /**\n * Nome do botão abaixo do `breakpoint`, quando só o ícone fica. Sem ele, o nome é o\n * `children`, se for texto; com um `children` que não é texto, passe o `aria-label`, ou o\n * botão de ícone fica sem nome.\n */\n 'aria-label'?: string;\n /**\n * A partir desta largura mostra o `Button` com texto; abaixo dela, só o `IconButton`.\n *\n * @default 'md'\n */\n breakpoint?: Breakpoint;\n /**\n * Ícone, mostrado nos dois formatos.\n */\n icon: NonNullable<ButtonProps['icon']>;\n }\n>;\n\n/**\n * Botão com texto em telas largas e só com ícone nas estreitas.\n *\n * Na tela larga, o nome do botão é o texto visível; na estreita, o `aria-label` ou, sem ele, o\n * próprio texto. A troca remonta o botão: se ele estiver focado quando a largura cruza o\n * `breakpoint` (ao girar o celular, por exemplo), o foco se perde.\n *\n * @example\n * ```tsx\n * <ResponsiveButton icon={<PlusIcon />}>Novo pedido</ResponsiveButton>\n * ```\n */\nexport const ResponsiveButton = (props: ResponsiveButtonProps) => {\n const { breakpoint = 'md', 'aria-label': ariaLabel, ...rest } = props;\n\n const isBreakpoint = useIsBreakpoint(breakpoint);\n\n /**\n * O `aria-label` só vai para o `IconButton`: no `Button`, ele substituiria o texto visível\n * como nome, e quem usa controle por voz fala o que vê.\n */\n const iconButtonLabel =\n ariaLabel ?? (typeof rest.children === 'string' ? rest.children : '');\n\n return isBreakpoint ? (\n <Button {...rest} />\n ) : (\n <IconButton\n aria-label={iconButtonLabel}\n {...rest}\n />\n );\n};\n\nResponsiveButton.displayName = 'ResponsiveButton';\n"],"mappings":";;;;;;;;;;;;;;;;;AAuCA,MAAa,oBAAoB,UAAiC;CAChE,MAAM,EAAE,aAAa,MAAM,cAAc,WAAW,GAAG,SAAS;CAEhE,MAAM,eAAe,gBAAgB,UAAU;;;;;CAM/C,MAAM,kBACJ,cAAc,OAAO,KAAK,aAAa,WAAW,KAAK,WAAW;CAEpE,OAAO,eACL,oBAAC,QAAD,EAAQ,GAAI,KAAO,CAAA,IAEnB,oBAAC,YAAD;EACE,cAAY;EACZ,GAAI;CACL,CAAA;AAEL;AAEA,iBAAiB,cAAc"}
1
+ {"version":3,"file":"responsive-button.js","names":[],"sources":["../../../../src/components/buttons/responsive-button/responsive-button.tsx"],"sourcesContent":["import type { MergeOverride } from '@lucasbernardosn/ts-utils';\nimport { Button, type ButtonProps } from '#components/buttons/button';\nimport { IconButton } from '#components/buttons/icon-button';\nimport { type Breakpoint, useIsBreakpoint } from '#hooks';\n\nexport type ResponsiveButtonProps = MergeOverride<\n ButtonProps,\n {\n /**\n * Nome do botão abaixo do `breakpoint`, quando só o ícone fica. Sem ele, o nome é o\n * `children`, se for texto; com um `children` que não é texto, passe o `aria-label`, ou o\n * botão de ícone fica sem nome.\n */\n 'aria-label'?: string;\n /**\n * A partir desta largura mostra o `Button` com texto; abaixo dela, só o `IconButton`.\n *\n * @default 'md'\n */\n breakpoint?: Breakpoint;\n /**\n * Ícone, mostrado nos dois formatos.\n */\n icon: NonNullable<ButtonProps['icon']>;\n }\n>;\n\n/**\n * Botão com texto em telas largas e só com ícone nas estreitas.\n *\n * Na tela larga, o nome do botão é o texto visível; na estreita, o `aria-label` ou, sem ele, o\n * próprio texto. A troca remonta o botão: se ele estiver focado quando a largura cruza o\n * `breakpoint` (ao girar o celular, por exemplo), o foco se perde.\n *\n * @example\n * ```tsx\n * <ResponsiveButton icon={<PlusIcon />}>Novo pedido</ResponsiveButton>\n * ```\n */\nexport const ResponsiveButton = (props: ResponsiveButtonProps) => {\n const { breakpoint = 'md', 'aria-label': ariaLabel, ...rest } = props;\n\n const isBreakpoint = useIsBreakpoint(breakpoint);\n\n /**\n * O `aria-label` só vai para o `IconButton`: no `Button`, ele substituiria o texto visível\n * como nome, e quem usa controle por voz fala o que vê.\n */\n const iconButtonLabel =\n ariaLabel ?? (typeof rest.children === 'string' ? rest.children : '');\n\n return isBreakpoint ? (\n <Button {...rest} />\n ) : (\n <IconButton\n aria-label={iconButtonLabel}\n {...rest}\n />\n );\n};\n\nResponsiveButton.displayName = 'ResponsiveButton';\n"],"mappings":";;;;;;;;;;;;;;;;;AAuCA,MAAa,oBAAoB,UAAiC;CAChE,MAAM,EAAE,aAAa,MAAM,cAAc,WAAW,GAAG,SAAS;CAEhE,MAAM,eAAe,gBAAgB,UAAU;;;;;CAM/C,MAAM,kBACJ,cAAc,OAAO,KAAK,aAAa,WAAW,KAAK,WAAW;CAEpE,OAAO,eACL,oBAAC,QAAD,EAAQ,GAAI,KAAO,CAAA,IAEnB,oBAAC,YAAD;EACE,cAAY;EACZ,GAAI;CACL,CAAA;AAEL;AAEA,iBAAiB,cAAc"}
@@ -0,0 +1,15 @@
1
+ import { AriaLiveMessages, GroupBase } from "react-select";
2
+ //#region src/components/collections/async-select/async-select-aria-messages.d.ts
3
+ /**
4
+ * Anúncios do leitor de tela em pt-BR, no lugar dos em inglês do react-select. Sem isto, o
5
+ * campo falaria em dois idiomas com o resto da interface.
6
+ */
7
+ export declare const getAsyncSelectAriaLiveMessages: <Option, IsMulti extends boolean, Group extends GroupBase<Option>>() => AriaLiveMessages<Option, IsMulti, Group>;
8
+ /**
9
+ * Resumo dos resultados anunciado quando a lista muda.
10
+ */
11
+ export declare const getAsyncSelectScreenReaderStatus: (props: {
12
+ count: number;
13
+ }) => string;
14
+ //#endregion
15
+ //# sourceMappingURL=async-select-aria-messages.d.ts.map
@@ -0,0 +1,51 @@
1
+ //#region src/components/collections/async-select/async-select-aria-messages.ts
2
+ /**
3
+ * Anúncios do leitor de tela em pt-BR, no lugar dos em inglês do react-select. Sem isto, o
4
+ * campo falaria em dois idiomas com o resto da interface.
5
+ */
6
+ const getAsyncSelectAriaLiveMessages = () => ({
7
+ guidance: (props) => {
8
+ const { context, isSearchable, isMulti, tabSelectsValue, isInitialFocus } = props;
9
+ switch (context) {
10
+ case "menu": return `Use as setas para cima e para baixo para escolher, Enter para selecionar a opção em foco, Esc para fechar o menu${tabSelectsValue ? ", Tab para selecionar a opção e fechar o menu" : ""}.`;
11
+ case "input": return isInitialFocus ? `${props["aria-label"] || "Seleção"} em foco${isSearchable ? ", digite para filtrar a lista" : ""}, seta para baixo abre o menu${isMulti ? ", seta para a esquerda foca os valores selecionados" : ""}.` : "";
12
+ case "value": return "Use as setas para a esquerda e para a direita para alternar entre os valores, Backspace remove o valor em foco.";
13
+ default: return "";
14
+ }
15
+ },
16
+ onChange: (props) => {
17
+ const { action, label = "", labels, isDisabled } = props;
18
+ switch (action) {
19
+ case "deselect-option":
20
+ case "pop-value":
21
+ case "remove-value": return `Opção ${label} removida.`;
22
+ case "clear": return "Todas as opções selecionadas foram removidas.";
23
+ case "initial-input-focus": return `${labels.length > 1 ? "Opções" : "Opção"} ${labels.join(", ")} selecionada.`;
24
+ case "select-option": return isDisabled ? `A opção ${label} está desabilitada. Escolha outra.` : `Opção ${label} selecionada.`;
25
+ default: return "";
26
+ }
27
+ },
28
+ onFocus: (props) => {
29
+ const { context, focused, options, label = "", selectValue, isDisabled } = props;
30
+ const { isSelected, isAppleDevice } = props;
31
+ const getArrayIndex = (items) => items.length > 0 ? `${items.indexOf(focused) + 1} de ${items.length}` : "";
32
+ if (context === "value" && selectValue) return `Valor ${label} em foco, ${getArrayIndex(selectValue)}.`;
33
+ if (context === "menu" && isAppleDevice) return `${label}${`${isSelected ? " selecionada" : ""}${isDisabled ? " desabilitada" : ""}`}, ${getArrayIndex(options)}.`;
34
+ return "";
35
+ },
36
+ onFilter: (props) => {
37
+ const { inputValue, resultsMessage } = props;
38
+ return `${resultsMessage}${inputValue ? ` para a busca ${inputValue}` : ""}.`;
39
+ }
40
+ });
41
+ /**
42
+ * Resumo dos resultados anunciado quando a lista muda.
43
+ */
44
+ const getAsyncSelectScreenReaderStatus = (props) => {
45
+ const { count } = props;
46
+ return `${count} ${count === 1 ? "resultado disponível" : "resultados disponíveis"}`;
47
+ };
48
+ //#endregion
49
+ export { getAsyncSelectAriaLiveMessages, getAsyncSelectScreenReaderStatus };
50
+
51
+ //# sourceMappingURL=async-select-aria-messages.js.map