@lucasbernardosn/react-ui 0.4.0 → 0.5.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 (552) hide show
  1. package/dist/components/buttons/button/button-variants.d.ts +1 -1
  2. package/dist/components/buttons/button/button-variants.js +119 -119
  3. package/dist/components/buttons/button/button-variants.js.map +1 -1
  4. package/dist/components/buttons/button/button.d.ts +1 -1
  5. package/dist/components/buttons/button/button.js +1 -1
  6. package/dist/components/buttons/button/button.js.map +1 -1
  7. package/dist/components/buttons/icon-button/icon-button-variants.d.ts +3 -0
  8. package/dist/components/buttons/icon-button/icon-button-variants.js +3 -0
  9. package/dist/components/buttons/icon-button/icon-button-variants.js.map +1 -1
  10. package/dist/components/buttons/responsive-button/responsive-button.d.ts +2 -1
  11. package/dist/components/buttons/responsive-button/responsive-button.js +2 -1
  12. package/dist/components/buttons/responsive-button/responsive-button.js.map +1 -1
  13. package/dist/components/buttons/toggle/index.d.ts +3 -0
  14. package/dist/components/buttons/toggle/index.js +2 -0
  15. package/dist/components/buttons/toggle/toggle-variants.d.ts +47 -0
  16. package/dist/components/buttons/toggle/toggle-variants.js +97 -0
  17. package/dist/components/buttons/toggle/toggle-variants.js.map +1 -0
  18. package/dist/components/buttons/toggle/toggle.d.ts +61 -0
  19. package/dist/components/buttons/toggle/toggle.js +69 -0
  20. package/dist/components/buttons/toggle/toggle.js.map +1 -0
  21. package/dist/components/collections/async-select/async-select-variants.js +7 -8
  22. package/dist/components/collections/async-select/async-select-variants.js.map +1 -1
  23. package/dist/components/collections/autocomplete/autocomplete-backdrop.d.ts +1 -2
  24. package/dist/components/collections/autocomplete/autocomplete-backdrop.js +1 -2
  25. package/dist/components/collections/autocomplete/autocomplete-backdrop.js.map +1 -1
  26. package/dist/components/collections/autocomplete/autocomplete-group-label-variants.d.ts +4 -4
  27. package/dist/components/collections/autocomplete/autocomplete-group-label-variants.js +4 -4
  28. package/dist/components/collections/autocomplete/autocomplete-group-label-variants.js.map +1 -1
  29. package/dist/components/collections/autocomplete/autocomplete-input-variants.d.ts +5 -5
  30. package/dist/components/collections/autocomplete/autocomplete-input-variants.js +8 -8
  31. package/dist/components/collections/autocomplete/autocomplete-input-variants.js.map +1 -1
  32. package/dist/components/collections/autocomplete/autocomplete-item-variants.d.ts +1 -1
  33. package/dist/components/collections/autocomplete/autocomplete-item-variants.js +1 -1
  34. package/dist/components/collections/autocomplete/autocomplete-item-variants.js.map +1 -1
  35. package/dist/components/collections/autocomplete/autocomplete-popup-variants.d.ts +4 -2
  36. package/dist/components/collections/autocomplete/autocomplete-popup-variants.js +4 -2
  37. package/dist/components/collections/autocomplete/autocomplete-popup-variants.js.map +1 -1
  38. package/dist/components/collections/autocomplete/autocomplete-separator.d.ts +1 -2
  39. package/dist/components/collections/autocomplete/autocomplete-separator.js +1 -2
  40. package/dist/components/collections/autocomplete/autocomplete-separator.js.map +1 -1
  41. package/dist/components/collections/command/command-collection.d.ts +14 -0
  42. package/dist/components/collections/command/command-collection.js +15 -0
  43. package/dist/components/collections/command/command-collection.js.map +1 -0
  44. package/dist/components/collections/command/command-empty.d.ts +14 -0
  45. package/dist/components/collections/command/command-empty.js +28 -0
  46. package/dist/components/collections/command/command-empty.js.map +1 -0
  47. package/dist/components/collections/command/command-footer.d.ts +12 -0
  48. package/dist/components/collections/command/command-footer.js +33 -0
  49. package/dist/components/collections/command/command-footer.js.map +1 -0
  50. package/dist/components/collections/command/command-group-label.d.ts +15 -0
  51. package/dist/components/collections/command/command-group-label.js +31 -0
  52. package/dist/components/collections/command/command-group-label.js.map +1 -0
  53. package/dist/components/collections/command/command-group.d.ts +15 -0
  54. package/dist/components/collections/command/command-group.js +19 -0
  55. package/dist/components/collections/command/command-group.js.map +1 -0
  56. package/dist/components/collections/command/command-input.d.ts +20 -0
  57. package/dist/components/collections/command/command-input.js +75 -0
  58. package/dist/components/collections/command/command-input.js.map +1 -0
  59. package/dist/components/collections/command/command-item-text.d.ts +19 -0
  60. package/dist/components/collections/command/command-item-text.js +32 -0
  61. package/dist/components/collections/command/command-item-text.js.map +1 -0
  62. package/dist/components/collections/command/command-item-variants.d.ts +12 -0
  63. package/dist/components/collections/command/command-item-variants.js +39 -0
  64. package/dist/components/collections/command/command-item-variants.js.map +1 -0
  65. package/dist/components/collections/command/command-item.d.ts +17 -0
  66. package/dist/components/collections/command/command-item.js +25 -0
  67. package/dist/components/collections/command/command-item.js.map +1 -0
  68. package/dist/components/collections/command/command-list.d.ts +14 -0
  69. package/dist/components/collections/command/command-list.js +31 -0
  70. package/dist/components/collections/command/command-list.js.map +1 -0
  71. package/dist/components/collections/command/command-loading.d.ts +17 -0
  72. package/dist/components/collections/command/command-loading.js +30 -0
  73. package/dist/components/collections/command/command-loading.js.map +1 -0
  74. package/dist/components/collections/command/command-root.d.ts +91 -0
  75. package/dist/components/collections/command/command-root.js +50 -0
  76. package/dist/components/collections/command/command-root.js.map +1 -0
  77. package/dist/components/collections/command/command-separator.d.ts +15 -0
  78. package/dist/components/collections/command/command-separator.js +27 -0
  79. package/dist/components/collections/command/command-separator.js.map +1 -0
  80. package/dist/components/collections/command/index.d.ts +2 -0
  81. package/dist/components/collections/command/index.js +2 -0
  82. package/dist/components/collections/command/index.parts.d.ts +19 -0
  83. package/dist/components/collections/command/index.parts.js +35 -0
  84. package/dist/components/collections/command/index.parts.js.map +1 -0
  85. package/dist/components/collections/command/use-command-context.d.ts +10 -0
  86. package/dist/components/collections/command/use-command-context.js +10 -0
  87. package/dist/components/collections/command/use-command-context.js.map +1 -0
  88. package/dist/components/collections/command/use-command-filter.d.ts +27 -0
  89. package/dist/components/collections/command/use-command-filter.js +32 -0
  90. package/dist/components/collections/command/use-command-filter.js.map +1 -0
  91. package/dist/components/collections/select/select-backdrop.d.ts +1 -2
  92. package/dist/components/collections/select/select-backdrop.js +1 -2
  93. package/dist/components/collections/select/select-backdrop.js.map +1 -1
  94. package/dist/components/collections/select/select-group-label-variants.d.ts +2 -2
  95. package/dist/components/collections/select/select-group-label-variants.js +2 -2
  96. package/dist/components/collections/select/select-group-label-variants.js.map +1 -1
  97. package/dist/components/collections/select/select-item-variants.d.ts +3 -2
  98. package/dist/components/collections/select/select-item-variants.js +3 -2
  99. package/dist/components/collections/select/select-item-variants.js.map +1 -1
  100. package/dist/components/collections/select/select-popup-variants.d.ts +1 -1
  101. package/dist/components/collections/select/select-popup-variants.js +1 -1
  102. package/dist/components/collections/select/select-popup-variants.js.map +1 -1
  103. package/dist/components/collections/select/select-separator.d.ts +1 -1
  104. package/dist/components/collections/select/select-separator.js +1 -1
  105. package/dist/components/collections/select/select-separator.js.map +1 -1
  106. package/dist/components/collections/select/select-trigger-variants.d.ts +2 -2
  107. package/dist/components/collections/select/select-trigger-variants.js +5 -5
  108. package/dist/components/collections/select/select-trigger-variants.js.map +1 -1
  109. package/dist/components/collections/tree-view/tree-view-node-checkbox.js +1 -1
  110. package/dist/components/collections/tree-view/tree-view-node-checkbox.js.map +1 -1
  111. package/dist/components/collections/tree-view/tree-view-node-variants.d.ts +1 -1
  112. package/dist/components/collections/tree-view/tree-view-node-variants.js +6 -6
  113. package/dist/components/collections/tree-view/tree-view-node-variants.js.map +1 -1
  114. package/dist/components/collections/tree-view/tree-view-root.d.ts +1 -1
  115. package/dist/components/collections/tree-view/tree-view-root.js +1 -1
  116. package/dist/components/collections/tree-view/tree-view-root.js.map +1 -1
  117. package/dist/components/disclosure/tabs/tabs-indicator-variants.d.ts +6 -1
  118. package/dist/components/disclosure/tabs/tabs-indicator-variants.js +7 -2
  119. package/dist/components/disclosure/tabs/tabs-indicator-variants.js.map +1 -1
  120. package/dist/components/disclosure/tabs/tabs-list-variants.d.ts +6 -1
  121. package/dist/components/disclosure/tabs/tabs-list-variants.js +7 -2
  122. package/dist/components/disclosure/tabs/tabs-list-variants.js.map +1 -1
  123. package/dist/components/disclosure/tabs/tabs-root-variants.d.ts +1 -1
  124. package/dist/components/disclosure/tabs/tabs-root-variants.js +10 -8
  125. package/dist/components/disclosure/tabs/tabs-root-variants.js.map +1 -1
  126. package/dist/components/disclosure/tabs/tabs-root.d.ts +1 -1
  127. package/dist/components/disclosure/tabs/tabs-root.js +1 -1
  128. package/dist/components/disclosure/tabs/tabs-root.js.map +1 -1
  129. package/dist/components/disclosure/tabs/tabs-tab-variants.d.ts +5 -1
  130. package/dist/components/disclosure/tabs/tabs-tab-variants.js +6 -2
  131. package/dist/components/disclosure/tabs/tabs-tab-variants.js.map +1 -1
  132. package/dist/components/display/avatar/avatar-root-variants.d.ts +1 -1
  133. package/dist/components/display/avatar/avatar-root-variants.js +162 -162
  134. package/dist/components/display/avatar/avatar-root-variants.js.map +1 -1
  135. package/dist/components/display/badge/badge-variants.d.ts +5 -5
  136. package/dist/components/display/badge/badge-variants.js +166 -166
  137. package/dist/components/display/badge/badge-variants.js.map +1 -1
  138. package/dist/components/display/card/card-body.d.ts +2 -2
  139. package/dist/components/display/card/card-body.js +2 -2
  140. package/dist/components/display/card/card-body.js.map +1 -1
  141. package/dist/components/display/card/card-description.d.ts +1 -2
  142. package/dist/components/display/card/card-description.js +1 -2
  143. package/dist/components/display/card/card-description.js.map +1 -1
  144. package/dist/components/display/card/card-footer.d.ts +1 -1
  145. package/dist/components/display/card/card-footer.js +1 -1
  146. package/dist/components/display/card/card-footer.js.map +1 -1
  147. package/dist/components/display/card/card-header.d.ts +1 -2
  148. package/dist/components/display/card/card-header.js +1 -2
  149. package/dist/components/display/card/card-header.js.map +1 -1
  150. package/dist/components/display/card/card-title.d.ts +1 -2
  151. package/dist/components/display/card/card-title.js +1 -2
  152. package/dist/components/display/card/card-title.js.map +1 -1
  153. package/dist/components/display/clipboard/clipboard-indicator.js +2 -2
  154. package/dist/components/display/clipboard/clipboard-indicator.js.map +1 -1
  155. package/dist/components/display/status/status-variants.d.ts +2 -2
  156. package/dist/components/display/status/status-variants.js +6 -6
  157. package/dist/components/display/status/status-variants.js.map +1 -1
  158. package/dist/components/display/tag/tag-root-variants.d.ts +2 -2
  159. package/dist/components/display/tag/tag-root-variants.js +163 -163
  160. package/dist/components/display/tag/tag-root-variants.js.map +1 -1
  161. package/dist/components/feedback/alert/alert-description.d.ts +1 -2
  162. package/dist/components/feedback/alert/alert-description.js +2 -3
  163. package/dist/components/feedback/alert/alert-description.js.map +1 -1
  164. package/dist/components/feedback/alert/alert-indicator.d.ts +2 -2
  165. package/dist/components/feedback/alert/alert-indicator.js +2 -2
  166. package/dist/components/feedback/alert/alert-indicator.js.map +1 -1
  167. package/dist/components/feedback/alert/alert-root-variants.d.ts +3 -3
  168. package/dist/components/feedback/alert/alert-root-variants.js +28 -28
  169. package/dist/components/feedback/alert/alert-root-variants.js.map +1 -1
  170. package/dist/components/feedback/alert/alert-title.d.ts +1 -2
  171. package/dist/components/feedback/alert/alert-title.js +2 -3
  172. package/dist/components/feedback/alert/alert-title.js.map +1 -1
  173. package/dist/components/feedback/meter/index.d.ts +2 -0
  174. package/dist/components/feedback/meter/index.js +2 -0
  175. package/dist/components/feedback/meter/index.parts.d.ts +12 -0
  176. package/dist/components/feedback/meter/index.parts.js +18 -0
  177. package/dist/components/feedback/meter/index.parts.js.map +1 -0
  178. package/dist/components/feedback/meter/meter-indicator.d.ts +17 -0
  179. package/dist/components/feedback/meter/meter-indicator.js +31 -0
  180. package/dist/components/feedback/meter/meter-indicator.js.map +1 -0
  181. package/dist/components/feedback/meter/meter-label.d.ts +13 -0
  182. package/dist/components/feedback/meter/meter-label.js +20 -0
  183. package/dist/components/feedback/meter/meter-label.js.map +1 -0
  184. package/dist/components/feedback/meter/meter-root-variants.d.ts +14 -0
  185. package/dist/components/feedback/meter/meter-root-variants.js +42 -0
  186. package/dist/components/feedback/meter/meter-root-variants.js.map +1 -0
  187. package/dist/components/feedback/meter/meter-root.d.ts +37 -0
  188. package/dist/components/feedback/meter/meter-root.js +51 -0
  189. package/dist/components/feedback/meter/meter-root.js.map +1 -0
  190. package/dist/components/feedback/meter/meter-track-variants.d.ts +6 -0
  191. package/dist/components/feedback/meter/meter-track-variants.js +22 -0
  192. package/dist/components/feedback/meter/meter-track-variants.js.map +1 -0
  193. package/dist/components/feedback/meter/meter-track.d.ts +13 -0
  194. package/dist/components/feedback/meter/meter-track.js +23 -0
  195. package/dist/components/feedback/meter/meter-track.js.map +1 -0
  196. package/dist/components/feedback/meter/meter-value.d.ts +14 -0
  197. package/dist/components/feedback/meter/meter-value.js +25 -0
  198. package/dist/components/feedback/meter/meter-value.js.map +1 -0
  199. package/dist/components/feedback/meter/use-meter-context.d.ts +23 -0
  200. package/dist/components/feedback/meter/use-meter-context.js +14 -0
  201. package/dist/components/feedback/meter/use-meter-context.js.map +1 -0
  202. package/dist/components/feedback/progress/index.d.ts +2 -0
  203. package/dist/components/feedback/progress/index.js +2 -0
  204. package/dist/components/feedback/progress/index.parts.d.ts +12 -0
  205. package/dist/components/feedback/progress/index.parts.js +18 -0
  206. package/dist/components/feedback/progress/index.parts.js.map +1 -0
  207. package/dist/components/feedback/progress/progress-indicator.d.ts +16 -0
  208. package/dist/components/feedback/progress/progress-indicator.js +34 -0
  209. package/dist/components/feedback/progress/progress-indicator.js.map +1 -0
  210. package/dist/components/feedback/progress/progress-label.d.ts +13 -0
  211. package/dist/components/feedback/progress/progress-label.js +20 -0
  212. package/dist/components/feedback/progress/progress-label.js.map +1 -0
  213. package/dist/components/feedback/progress/progress-root-variants.d.ts +15 -0
  214. package/dist/components/feedback/progress/progress-root-variants.js +43 -0
  215. package/dist/components/feedback/progress/progress-root-variants.js.map +1 -0
  216. package/dist/components/feedback/progress/progress-root.d.ts +34 -0
  217. package/dist/components/feedback/progress/progress-root.js +48 -0
  218. package/dist/components/feedback/progress/progress-root.js.map +1 -0
  219. package/dist/components/feedback/progress/progress-track-variants.d.ts +6 -0
  220. package/dist/components/feedback/progress/progress-track-variants.js +22 -0
  221. package/dist/components/feedback/progress/progress-track-variants.js.map +1 -0
  222. package/dist/components/feedback/progress/progress-track.d.ts +13 -0
  223. package/dist/components/feedback/progress/progress-track.js +23 -0
  224. package/dist/components/feedback/progress/progress-track.js.map +1 -0
  225. package/dist/components/feedback/progress/progress-value.d.ts +14 -0
  226. package/dist/components/feedback/progress/progress-value.js +25 -0
  227. package/dist/components/feedback/progress/progress-value.js.map +1 -0
  228. package/dist/components/feedback/progress/use-progress-context.d.ts +23 -0
  229. package/dist/components/feedback/progress/use-progress-context.js +14 -0
  230. package/dist/components/feedback/progress/use-progress-context.js.map +1 -0
  231. package/dist/components/feedback/spinner/spinner-variants.d.ts +1 -1
  232. package/dist/components/feedback/spinner/spinner-variants.js +1 -1
  233. package/dist/components/feedback/spinner/spinner-variants.js.map +1 -1
  234. package/dist/components/feedback/spinner/spinner.d.ts +1 -1
  235. package/dist/components/feedback/spinner/spinner.js +1 -1
  236. package/dist/components/feedback/spinner/spinner.js.map +1 -1
  237. package/dist/components/feedback/toast/toast-description.d.ts +2 -2
  238. package/dist/components/feedback/toast/toast-description.js +3 -3
  239. package/dist/components/feedback/toast/toast-description.js.map +1 -1
  240. package/dist/components/feedback/toast/toast-indicator.d.ts +4 -4
  241. package/dist/components/feedback/toast/toast-indicator.js +4 -4
  242. package/dist/components/feedback/toast/toast-indicator.js.map +1 -1
  243. package/dist/components/feedback/toast/toast-root-variants.d.ts +1 -1
  244. package/dist/components/feedback/toast/toast-root-variants.js +15 -15
  245. package/dist/components/feedback/toast/toast-root-variants.js.map +1 -1
  246. package/dist/components/feedback/toast/toast-title.d.ts +3 -3
  247. package/dist/components/feedback/toast/toast-title.js +4 -4
  248. package/dist/components/feedback/toast/toast-title.js.map +1 -1
  249. package/dist/components/feedback/toast/toast-viewport-variants.d.ts +1 -1
  250. package/dist/components/fields/checkbox/checkbox-root-variants.d.ts +3 -1
  251. package/dist/components/fields/checkbox/checkbox-root-variants.js +11 -9
  252. package/dist/components/fields/checkbox/checkbox-root-variants.js.map +1 -1
  253. package/dist/components/fields/currency-brl-input/currency-brl-input-variants.js +3 -3
  254. package/dist/components/fields/currency-brl-input/currency-brl-input-variants.js.map +1 -1
  255. package/dist/components/fields/field/field-root.d.ts +2 -1
  256. package/dist/components/fields/field/field-root.js +2 -1
  257. package/dist/components/fields/field/field-root.js.map +1 -1
  258. package/dist/components/fields/input/input-variants.d.ts +4 -3
  259. package/dist/components/fields/input/input-variants.js +7 -6
  260. package/dist/components/fields/input/input-variants.js.map +1 -1
  261. package/dist/components/fields/input-group/index.d.ts +3 -0
  262. package/dist/components/fields/input-group/index.js +2 -0
  263. package/dist/components/fields/input-group/input-group-variants.d.ts +81 -0
  264. package/dist/components/fields/input-group/input-group-variants.js +212 -0
  265. package/dist/components/fields/input-group/input-group-variants.js.map +1 -0
  266. package/dist/components/fields/input-group/input-group.d.ts +88 -0
  267. package/dist/components/fields/input-group/input-group.js +164 -0
  268. package/dist/components/fields/input-group/input-group.js.map +1 -0
  269. package/dist/components/fields/number-input/number-input-variants.js +3 -3
  270. package/dist/components/fields/number-input/number-input-variants.js.map +1 -1
  271. package/dist/components/fields/pattern-input/pattern-input-variants.js +3 -3
  272. package/dist/components/fields/pattern-input/pattern-input-variants.js.map +1 -1
  273. package/dist/components/fields/radio/index.d.ts +2 -0
  274. package/dist/components/fields/radio/index.js +2 -0
  275. package/dist/components/fields/radio/index.parts.d.ts +10 -0
  276. package/dist/components/fields/radio/index.parts.js +14 -0
  277. package/dist/components/fields/radio/index.parts.js.map +1 -0
  278. package/dist/components/fields/radio/radio-group.d.ts +40 -0
  279. package/dist/components/fields/radio/radio-group.js +45 -0
  280. package/dist/components/fields/radio/radio-group.js.map +1 -0
  281. package/dist/components/fields/radio/radio-indicator.d.ts +14 -0
  282. package/dist/components/fields/radio/radio-indicator.js +33 -0
  283. package/dist/components/fields/radio/radio-indicator.js.map +1 -0
  284. package/dist/components/fields/radio/radio-root-variants.d.ts +41 -0
  285. package/dist/components/fields/radio/radio-root-variants.js +93 -0
  286. package/dist/components/fields/radio/radio-root-variants.js.map +1 -0
  287. package/dist/components/fields/radio/radio-root.d.ts +27 -0
  288. package/dist/components/fields/radio/radio-root.js +40 -0
  289. package/dist/components/fields/radio/radio-root.js.map +1 -0
  290. package/dist/components/fields/radio-card/index.d.ts +2 -0
  291. package/dist/components/fields/radio-card/index.js +2 -0
  292. package/dist/components/fields/radio-card/index.parts.d.ts +12 -0
  293. package/dist/components/fields/radio-card/index.parts.js +18 -0
  294. package/dist/components/fields/radio-card/index.parts.js.map +1 -0
  295. package/dist/components/fields/radio-card/radio-card-description.d.ts +14 -0
  296. package/dist/components/fields/radio-card/radio-card-description.js +34 -0
  297. package/dist/components/fields/radio-card/radio-card-description.js.map +1 -0
  298. package/dist/components/fields/radio-card/radio-card-group.d.ts +41 -0
  299. package/dist/components/fields/radio-card/radio-card-group.js +51 -0
  300. package/dist/components/fields/radio-card/radio-card-group.js.map +1 -0
  301. package/dist/components/fields/radio-card/radio-card-indicator.d.ts +24 -0
  302. package/dist/components/fields/radio-card/radio-card-indicator.js +67 -0
  303. package/dist/components/fields/radio-card/radio-card-indicator.js.map +1 -0
  304. package/dist/components/fields/radio-card/radio-card-item-variants.d.ts +25 -0
  305. package/dist/components/fields/radio-card/radio-card-item-variants.js +83 -0
  306. package/dist/components/fields/radio-card/radio-card-item-variants.js.map +1 -0
  307. package/dist/components/fields/radio-card/radio-card-item.d.ts +33 -0
  308. package/dist/components/fields/radio-card/radio-card-item.js +60 -0
  309. package/dist/components/fields/radio-card/radio-card-item.js.map +1 -0
  310. package/dist/components/fields/radio-card/radio-card-title.d.ts +14 -0
  311. package/dist/components/fields/radio-card/radio-card-title.js +34 -0
  312. package/dist/components/fields/radio-card/radio-card-title.js.map +1 -0
  313. package/dist/components/fields/radio-card/use-radio-card-context.d.ts +25 -0
  314. package/dist/components/fields/radio-card/use-radio-card-context.js +14 -0
  315. package/dist/components/fields/radio-card/use-radio-card-context.js.map +1 -0
  316. package/dist/components/fields/radio-card/use-radio-card-item-context.d.ts +12 -0
  317. package/dist/components/fields/radio-card/use-radio-card-item-context.js +10 -0
  318. package/dist/components/fields/radio-card/use-radio-card-item-context.js.map +1 -0
  319. package/dist/components/fields/segmented-control/index.d.ts +2 -0
  320. package/dist/components/fields/segmented-control/index.js +2 -0
  321. package/dist/components/fields/segmented-control/index.parts.d.ts +10 -0
  322. package/dist/components/fields/segmented-control/index.parts.js +14 -0
  323. package/dist/components/fields/segmented-control/index.parts.js.map +1 -0
  324. package/dist/components/fields/segmented-control/segmented-control-indicator.d.ts +21 -0
  325. package/dist/components/fields/segmented-control/segmented-control-indicator.js +50 -0
  326. package/dist/components/fields/segmented-control/segmented-control-indicator.js.map +1 -0
  327. package/dist/components/fields/segmented-control/segmented-control-item-variants.d.ts +16 -0
  328. package/dist/components/fields/segmented-control/segmented-control-item-variants.js +72 -0
  329. package/dist/components/fields/segmented-control/segmented-control-item-variants.js.map +1 -0
  330. package/dist/components/fields/segmented-control/segmented-control-item.d.ts +17 -0
  331. package/dist/components/fields/segmented-control/segmented-control-item.js +29 -0
  332. package/dist/components/fields/segmented-control/segmented-control-item.js.map +1 -0
  333. package/dist/components/fields/segmented-control/segmented-control-root-variants.d.ts +21 -0
  334. package/dist/components/fields/segmented-control/segmented-control-root-variants.js +66 -0
  335. package/dist/components/fields/segmented-control/segmented-control-root-variants.js.map +1 -0
  336. package/dist/components/fields/segmented-control/segmented-control-root.d.ts +41 -0
  337. package/dist/components/fields/segmented-control/segmented-control-root.js +65 -0
  338. package/dist/components/fields/segmented-control/segmented-control-root.js.map +1 -0
  339. package/dist/components/fields/segmented-control/use-segmented-control-context.d.ts +33 -0
  340. package/dist/components/fields/segmented-control/use-segmented-control-context.js +15 -0
  341. package/dist/components/fields/segmented-control/use-segmented-control-context.js.map +1 -0
  342. package/dist/components/fields/segmented-control/use-segmented-control-indicator.d.ts +22 -0
  343. package/dist/components/fields/segmented-control/use-segmented-control-indicator.js +67 -0
  344. package/dist/components/fields/segmented-control/use-segmented-control-indicator.js.map +1 -0
  345. package/dist/components/fields/switch/switch-root-variants.d.ts +1 -1
  346. package/dist/components/fields/switch/switch-root-variants.js +3 -3
  347. package/dist/components/fields/switch/switch-root-variants.js.map +1 -1
  348. package/dist/components/fields/textarea/textarea-variants.js +3 -3
  349. package/dist/components/fields/textarea/textarea-variants.js.map +1 -1
  350. package/dist/components/layout/group/group-variants.d.ts +43 -0
  351. package/dist/components/layout/group/group-variants.js +72 -0
  352. package/dist/components/layout/group/group-variants.js.map +1 -0
  353. package/dist/components/layout/group/group.d.ts +38 -0
  354. package/dist/components/layout/group/group.js +55 -0
  355. package/dist/components/layout/group/group.js.map +1 -0
  356. package/dist/components/layout/group/index.d.ts +3 -0
  357. package/dist/components/layout/group/index.js +2 -0
  358. package/dist/components/layout/scroll-area/scroll-area-thumb.js +3 -3
  359. package/dist/components/layout/scroll-area/scroll-area-thumb.js.map +1 -1
  360. package/dist/components/layout/separator/separator-variants.d.ts +1 -1
  361. package/dist/components/layout/separator/separator-variants.js +1 -1
  362. package/dist/components/layout/separator/separator-variants.js.map +1 -1
  363. package/dist/components/overlays/action-bar/action-bar-selection-trigger.js +2 -2
  364. package/dist/components/overlays/action-bar/action-bar-selection-trigger.js.map +1 -1
  365. package/dist/components/overlays/alert-dialog/alert-dialog-backdrop.d.ts +1 -2
  366. package/dist/components/overlays/alert-dialog/alert-dialog-backdrop.js +1 -2
  367. package/dist/components/overlays/alert-dialog/alert-dialog-backdrop.js.map +1 -1
  368. package/dist/components/overlays/alert-dialog/alert-dialog-body.d.ts +1 -1
  369. package/dist/components/overlays/alert-dialog/alert-dialog-body.js +1 -1
  370. package/dist/components/overlays/alert-dialog/alert-dialog-body.js.map +1 -1
  371. package/dist/components/overlays/alert-dialog/alert-dialog-description.d.ts +1 -2
  372. package/dist/components/overlays/alert-dialog/alert-dialog-description.js +1 -2
  373. package/dist/components/overlays/alert-dialog/alert-dialog-description.js.map +1 -1
  374. package/dist/components/overlays/alert-dialog/alert-dialog-footer.d.ts +1 -1
  375. package/dist/components/overlays/alert-dialog/alert-dialog-footer.js +1 -1
  376. package/dist/components/overlays/alert-dialog/alert-dialog-footer.js.map +1 -1
  377. package/dist/components/overlays/alert-dialog/alert-dialog-header.d.ts +1 -1
  378. package/dist/components/overlays/alert-dialog/alert-dialog-header.js +1 -1
  379. package/dist/components/overlays/alert-dialog/alert-dialog-header.js.map +1 -1
  380. package/dist/components/overlays/alert-dialog/alert-dialog-imperative.d.ts +1 -1
  381. package/dist/components/overlays/alert-dialog/alert-dialog-imperative.js +1 -1
  382. package/dist/components/overlays/alert-dialog/alert-dialog-imperative.js.map +1 -1
  383. package/dist/components/overlays/alert-dialog/alert-dialog-indicator.d.ts +2 -2
  384. package/dist/components/overlays/alert-dialog/alert-dialog-indicator.js +2 -2
  385. package/dist/components/overlays/alert-dialog/alert-dialog-indicator.js.map +1 -1
  386. package/dist/components/overlays/alert-dialog/alert-dialog-popup-variants.d.ts +4 -4
  387. package/dist/components/overlays/alert-dialog/alert-dialog-popup-variants.js +4 -4
  388. package/dist/components/overlays/alert-dialog/alert-dialog-popup-variants.js.map +1 -1
  389. package/dist/components/overlays/alert-dialog/alert-dialog-title.d.ts +1 -1
  390. package/dist/components/overlays/alert-dialog/alert-dialog-title.js +1 -1
  391. package/dist/components/overlays/alert-dialog/alert-dialog-title.js.map +1 -1
  392. package/dist/components/overlays/alert-dialog/alert-dialog-viewport.d.ts +1 -2
  393. package/dist/components/overlays/alert-dialog/alert-dialog-viewport.js +1 -2
  394. package/dist/components/overlays/alert-dialog/alert-dialog-viewport.js.map +1 -1
  395. package/dist/components/overlays/dialog/dialog-backdrop.d.ts +1 -2
  396. package/dist/components/overlays/dialog/dialog-backdrop.js +1 -2
  397. package/dist/components/overlays/dialog/dialog-backdrop.js.map +1 -1
  398. package/dist/components/overlays/dialog/dialog-body.d.ts +5 -5
  399. package/dist/components/overlays/dialog/dialog-body.js +5 -5
  400. package/dist/components/overlays/dialog/dialog-body.js.map +1 -1
  401. package/dist/components/overlays/dialog/dialog-description.d.ts +4 -4
  402. package/dist/components/overlays/dialog/dialog-description.js +4 -4
  403. package/dist/components/overlays/dialog/dialog-description.js.map +1 -1
  404. package/dist/components/overlays/dialog/dialog-footer.d.ts +5 -6
  405. package/dist/components/overlays/dialog/dialog-footer.js +5 -6
  406. package/dist/components/overlays/dialog/dialog-footer.js.map +1 -1
  407. package/dist/components/overlays/dialog/dialog-header.d.ts +5 -6
  408. package/dist/components/overlays/dialog/dialog-header.js +5 -6
  409. package/dist/components/overlays/dialog/dialog-header.js.map +1 -1
  410. package/dist/components/overlays/dialog/dialog-popup-variants.d.ts +4 -4
  411. package/dist/components/overlays/dialog/dialog-popup-variants.js +4 -4
  412. package/dist/components/overlays/dialog/dialog-popup-variants.js.map +1 -1
  413. package/dist/components/overlays/dialog/dialog-title.d.ts +5 -5
  414. package/dist/components/overlays/dialog/dialog-title.js +5 -5
  415. package/dist/components/overlays/dialog/dialog-title.js.map +1 -1
  416. package/dist/components/overlays/dialog/dialog-viewport.d.ts +2 -2
  417. package/dist/components/overlays/dialog/dialog-viewport.js +2 -2
  418. package/dist/components/overlays/dialog/dialog-viewport.js.map +1 -1
  419. package/dist/components/overlays/drawer/drawer-backdrop.d.ts +1 -1
  420. package/dist/components/overlays/drawer/drawer-backdrop.js +1 -1
  421. package/dist/components/overlays/drawer/drawer-backdrop.js.map +1 -1
  422. package/dist/components/overlays/drawer/drawer-body.d.ts +3 -3
  423. package/dist/components/overlays/drawer/drawer-body.js +3 -3
  424. package/dist/components/overlays/drawer/drawer-body.js.map +1 -1
  425. package/dist/components/overlays/drawer/drawer-description.d.ts +1 -2
  426. package/dist/components/overlays/drawer/drawer-description.js +1 -2
  427. package/dist/components/overlays/drawer/drawer-description.js.map +1 -1
  428. package/dist/components/overlays/drawer/drawer-footer.d.ts +1 -2
  429. package/dist/components/overlays/drawer/drawer-footer.js +1 -2
  430. package/dist/components/overlays/drawer/drawer-footer.js.map +1 -1
  431. package/dist/components/overlays/drawer/drawer-header.d.ts +1 -2
  432. package/dist/components/overlays/drawer/drawer-header.js +1 -2
  433. package/dist/components/overlays/drawer/drawer-header.js.map +1 -1
  434. package/dist/components/overlays/drawer/drawer-popup-variants.d.ts +1 -1
  435. package/dist/components/overlays/drawer/drawer-popup-variants.js +1 -2
  436. package/dist/components/overlays/drawer/drawer-popup-variants.js.map +1 -1
  437. package/dist/components/overlays/drawer/drawer-title.d.ts +1 -2
  438. package/dist/components/overlays/drawer/drawer-title.js +1 -2
  439. package/dist/components/overlays/drawer/drawer-title.js.map +1 -1
  440. package/dist/components/overlays/menu/create-handle.d.ts +10 -0
  441. package/dist/components/overlays/menu/create-handle.js +11 -0
  442. package/dist/components/overlays/menu/create-handle.js.map +1 -0
  443. package/dist/components/overlays/menu/index.parts.d.ts +21 -3
  444. package/dist/components/overlays/menu/index.parts.js +38 -2
  445. package/dist/components/overlays/menu/index.parts.js.map +1 -1
  446. package/dist/components/overlays/menu/menu-arrow.d.ts +17 -0
  447. package/dist/components/overlays/menu/menu-arrow.js +48 -0
  448. package/dist/components/overlays/menu/menu-arrow.js.map +1 -0
  449. package/dist/components/overlays/menu/menu-backdrop.d.ts +16 -0
  450. package/dist/components/overlays/menu/menu-backdrop.js +36 -0
  451. package/dist/components/overlays/menu/menu-backdrop.js.map +1 -0
  452. package/dist/components/overlays/menu/menu-checkbox-item-indicator.d.ts +16 -0
  453. package/dist/components/overlays/menu/menu-checkbox-item-indicator.js +27 -0
  454. package/dist/components/overlays/menu/menu-checkbox-item-indicator.js.map +1 -0
  455. package/dist/components/overlays/menu/menu-checkbox-item.d.ts +24 -0
  456. package/dist/components/overlays/menu/menu-checkbox-item.js +31 -0
  457. package/dist/components/overlays/menu/menu-checkbox-item.js.map +1 -0
  458. package/dist/components/overlays/menu/menu-clear.d.ts +20 -0
  459. package/dist/components/overlays/menu/menu-clear.js +45 -0
  460. package/dist/components/overlays/menu/menu-clear.js.map +1 -0
  461. package/dist/components/overlays/menu/menu-empty.d.ts +18 -0
  462. package/dist/components/overlays/menu/menu-empty.js +32 -0
  463. package/dist/components/overlays/menu/menu-empty.js.map +1 -0
  464. package/dist/components/overlays/menu/menu-filter-provider.d.ts +43 -0
  465. package/dist/components/overlays/menu/menu-filter-provider.js +42 -0
  466. package/dist/components/overlays/menu/menu-filter-provider.js.map +1 -0
  467. package/dist/components/overlays/menu/menu-group-label.d.ts +1 -1
  468. package/dist/components/overlays/menu/menu-group-label.js +1 -1
  469. package/dist/components/overlays/menu/menu-group-label.js.map +1 -1
  470. package/dist/components/overlays/menu/menu-input.d.ts +22 -0
  471. package/dist/components/overlays/menu/menu-input.js +58 -0
  472. package/dist/components/overlays/menu/menu-input.js.map +1 -0
  473. package/dist/components/overlays/menu/menu-item-variants.d.ts +2 -2
  474. package/dist/components/overlays/menu/menu-item-variants.js +7 -7
  475. package/dist/components/overlays/menu/menu-item-variants.js.map +1 -1
  476. package/dist/components/overlays/menu/menu-link-item.d.ts +19 -0
  477. package/dist/components/overlays/menu/menu-link-item.js +28 -0
  478. package/dist/components/overlays/menu/menu-link-item.js.map +1 -0
  479. package/dist/components/overlays/menu/menu-list.d.ts +25 -0
  480. package/dist/components/overlays/menu/menu-list.js +43 -0
  481. package/dist/components/overlays/menu/menu-list.js.map +1 -0
  482. package/dist/components/overlays/menu/menu-popup.d.ts +7 -6
  483. package/dist/components/overlays/menu/menu-popup.js +9 -9
  484. package/dist/components/overlays/menu/menu-popup.js.map +1 -1
  485. package/dist/components/overlays/menu/menu-positioner.d.ts +5 -1
  486. package/dist/components/overlays/menu/menu-positioner.js +11 -2
  487. package/dist/components/overlays/menu/menu-positioner.js.map +1 -1
  488. package/dist/components/overlays/menu/menu-radio-group.d.ts +17 -0
  489. package/dist/components/overlays/menu/menu-radio-group.js +22 -0
  490. package/dist/components/overlays/menu/menu-radio-group.js.map +1 -0
  491. package/dist/components/overlays/menu/menu-radio-item-indicator.d.ts +16 -0
  492. package/dist/components/overlays/menu/menu-radio-item-indicator.js +34 -0
  493. package/dist/components/overlays/menu/menu-radio-item-indicator.js.map +1 -0
  494. package/dist/components/overlays/menu/menu-radio-item.d.ts +21 -0
  495. package/dist/components/overlays/menu/menu-radio-item.js +30 -0
  496. package/dist/components/overlays/menu/menu-radio-item.js.map +1 -0
  497. package/dist/components/overlays/menu/menu-root.d.ts +15 -6
  498. package/dist/components/overlays/menu/menu-root.js +15 -6
  499. package/dist/components/overlays/menu/menu-root.js.map +1 -1
  500. package/dist/components/overlays/menu/menu-separator.d.ts +6 -1
  501. package/dist/components/overlays/menu/menu-separator.js +6 -1
  502. package/dist/components/overlays/menu/menu-separator.js.map +1 -1
  503. package/dist/components/overlays/menu/menu-submenu-root.d.ts +39 -0
  504. package/dist/components/overlays/menu/menu-submenu-root.js +42 -0
  505. package/dist/components/overlays/menu/menu-submenu-root.js.map +1 -0
  506. package/dist/components/overlays/menu/menu-submenu-trigger.d.ts +21 -0
  507. package/dist/components/overlays/menu/menu-submenu-trigger.js +40 -0
  508. package/dist/components/overlays/menu/menu-submenu-trigger.js.map +1 -0
  509. package/dist/components/overlays/menu/menu-viewport.d.ts +19 -0
  510. package/dist/components/overlays/menu/menu-viewport.js +51 -0
  511. package/dist/components/overlays/menu/menu-viewport.js.map +1 -0
  512. package/dist/components/overlays/menu/use-filter.d.ts +19 -0
  513. package/dist/components/overlays/menu/use-filter.js +19 -0
  514. package/dist/components/overlays/menu/use-filter.js.map +1 -0
  515. package/dist/components/overlays/menu/use-menu-submenu-context.d.ts +9 -0
  516. package/dist/components/overlays/menu/use-menu-submenu-context.js +12 -0
  517. package/dist/components/overlays/menu/use-menu-submenu-context.js.map +1 -0
  518. package/dist/components/overlays/popover/popover-arrow.d.ts +2 -2
  519. package/dist/components/overlays/popover/popover-arrow.js +2 -2
  520. package/dist/components/overlays/popover/popover-arrow.js.map +1 -1
  521. package/dist/components/overlays/popover/popover-backdrop.d.ts +5 -4
  522. package/dist/components/overlays/popover/popover-backdrop.js +5 -4
  523. package/dist/components/overlays/popover/popover-backdrop.js.map +1 -1
  524. package/dist/components/overlays/popover/popover-popup-variants.d.ts +3 -2
  525. package/dist/components/overlays/popover/popover-popup-variants.js +3 -2
  526. package/dist/components/overlays/popover/popover-popup-variants.js.map +1 -1
  527. package/dist/components/overlays/popover/popover-positioner.d.ts +4 -3
  528. package/dist/components/overlays/popover/popover-positioner.js +4 -3
  529. package/dist/components/overlays/popover/popover-positioner.js.map +1 -1
  530. package/dist/components/overlays/popover/popover-viewport.d.ts +4 -4
  531. package/dist/components/overlays/popover/popover-viewport.js +4 -4
  532. package/dist/components/overlays/popover/popover-viewport.js.map +1 -1
  533. package/dist/components/typography/highlight/highlight.d.ts +35 -0
  534. package/dist/components/typography/highlight/highlight.js +43 -0
  535. package/dist/components/typography/highlight/highlight.js.map +1 -0
  536. package/dist/components/typography/highlight/index.d.ts +2 -0
  537. package/dist/components/typography/highlight/index.js +2 -0
  538. package/dist/components/typography/kbd/kbd-variants.d.ts +1 -1
  539. package/dist/components/typography/kbd/kbd-variants.js +9 -9
  540. package/dist/components/typography/kbd/kbd-variants.js.map +1 -1
  541. package/dist/components/typography/link/link-variants.d.ts +2 -2
  542. package/dist/components/typography/link/link-variants.js +24 -24
  543. package/dist/components/typography/link/link-variants.js.map +1 -1
  544. package/dist/components/typography/mark/mark-variants.d.ts +9 -3
  545. package/dist/components/typography/mark/mark-variants.js +25 -21
  546. package/dist/components/typography/mark/mark-variants.js.map +1 -1
  547. package/dist/components/typography/pre/pre-variants.d.ts +1 -1
  548. package/dist/components/typography/pre/pre-variants.js +25 -25
  549. package/dist/components/typography/pre/pre-variants.js.map +1 -1
  550. package/dist/types/color-scheme.d.ts +2 -2
  551. package/package.json +17 -5
  552. package/src/theme/theme.css +1268 -1228
@@ -0,0 +1,17 @@
1
+ import { Autocomplete } from "@base-ui/react/autocomplete";
2
+ //#region src/components/collections/command/command-loading.d.ts
3
+ export type CommandLoadingProps = Autocomplete.Status.Props;
4
+ export type CommandLoadingState = Autocomplete.Status.State;
5
+ /**
6
+ * Aviso de busca em andamento ("Buscando…"), anunciado ao leitor de tela sem tirar o foco do
7
+ * campo. Serve à busca assíncrona (`filter={null}`).
8
+ *
9
+ * Fica sempre montado, só com os filhos mudando: esconder ou remover o próprio elemento impede o
10
+ * anúncio de chegar de forma consistente. Sem texto, o `empty:p-0` tira o espaço.
11
+ */
12
+ export declare const CommandLoading: {
13
+ (props: CommandLoadingProps): import("react").JSX.Element;
14
+ displayName: string;
15
+ };
16
+ //#endregion
17
+ //# sourceMappingURL=command-loading.d.ts.map
@@ -0,0 +1,30 @@
1
+ import { mergeStateClassNames } from "../../../utils/merge-state-class-names.js";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { Autocomplete } from "@base-ui/react/autocomplete";
4
+ //#region src/components/collections/command/command-loading.tsx
5
+ /**
6
+ * Aviso de busca em andamento ("Buscando…"), anunciado ao leitor de tela sem tirar o foco do
7
+ * campo. Serve à busca assíncrona (`filter={null}`).
8
+ *
9
+ * Fica sempre montado, só com os filhos mudando: esconder ou remover o próprio elemento impede o
10
+ * anúncio de chegar de forma consistente. Sem texto, o `empty:p-0` tira o espaço.
11
+ */
12
+ const CommandLoading = (props) => {
13
+ const { className, ...rest } = props;
14
+ return /* @__PURE__ */ jsx(Autocomplete.Status, {
15
+ "data-component": "Command.Loading",
16
+ className: mergeStateClassNames([
17
+ "px-3",
18
+ "py-2.5",
19
+ "text-gray-11",
20
+ "text-sm",
21
+ "empty:p-0"
22
+ ], className),
23
+ ...rest
24
+ });
25
+ };
26
+ CommandLoading.displayName = "Command.Loading";
27
+ //#endregion
28
+ export { CommandLoading };
29
+
30
+ //# sourceMappingURL=command-loading.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-loading.js","names":["BaseAutocomplete"],"sources":["../../../../src/components/collections/command/command-loading.tsx"],"sourcesContent":["import { Autocomplete as BaseAutocomplete } from '@base-ui/react/autocomplete';\nimport { mergeStateClassNames } from '#utils';\n\nexport type CommandLoadingProps = BaseAutocomplete.Status.Props;\n\nexport type CommandLoadingState = BaseAutocomplete.Status.State;\n\n/**\n * Aviso de busca em andamento (\"Buscando…\"), anunciado ao leitor de tela sem tirar o foco do\n * campo. Serve à busca assíncrona (`filter={null}`).\n *\n * Fica sempre montado, só com os filhos mudando: esconder ou remover o próprio elemento impede o\n * anúncio de chegar de forma consistente. Sem texto, o `empty:p-0` tira o espaço.\n */\nexport const CommandLoading = (props: CommandLoadingProps) => {\n const { className, ...rest } = props;\n\n return (\n <BaseAutocomplete.Status\n data-component=\"Command.Loading\"\n className={mergeStateClassNames(\n [\n 'px-3',\n 'py-2.5',\n\n 'text-gray-11',\n 'text-sm',\n 'empty:p-0',\n ],\n className,\n )}\n {...rest}\n />\n );\n};\n\nCommandLoading.displayName = 'Command.Loading';\n"],"mappings":";;;;;;;;;;;AAcA,MAAa,kBAAkB,UAA+B;CAC5D,MAAM,EAAE,WAAW,GAAG,SAAS;CAE/B,OACE,oBAACA,aAAiB,QAAlB;EACE,kBAAe;EACf,WAAW,qBACT;GACE;GACA;GAEA;GACA;GACA;EACF,GACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,eAAe,cAAc"}
@@ -0,0 +1,91 @@
1
+ import React from "react";
2
+ import { MergeOverride } from "@lucasbernardosn/ts-utils";
3
+ import { Autocomplete } from "@base-ui/react/autocomplete";
4
+ //#region src/components/collections/command/command-root.d.ts
5
+ /**
6
+ * Props que o Command fixa: a lista está sempre aberta e inline, o primeiro item sempre ativo e
7
+ * o filtro sempre pela lista. Não saem para quem usa, porque outro valor desfaz o comportamento
8
+ * do Command.
9
+ */
10
+ type CommandRootFixedProps = 'inline' | 'open' | 'defaultOpen' | 'onOpenChange' | 'autoHighlight' | 'keepHighlight' | 'mode' | 'openOnInputClick' | 'value' | 'defaultValue' | 'children';
11
+ export type CommandRootProps<ItemValue> = MergeOverride<Omit<Autocomplete.Root.Props<ItemValue>, CommandRootFixedProps>, {
12
+ /**
13
+ * Texto da busca, quando controlado.
14
+ */
15
+ value?: string;
16
+ /**
17
+ * Texto inicial da busca, quando não controlado.
18
+ *
19
+ * @default ''
20
+ */
21
+ defaultValue?: string;
22
+ /**
23
+ * Classes do `div` raiz.
24
+ */
25
+ className?: string;
26
+ children?: React.ReactNode;
27
+ }>;
28
+ export type CommandRootState = Autocomplete.Root.State;
29
+ export type CommandRootChangeEventDetails = Autocomplete.Root.ChangeEventDetails;
30
+ /**
31
+ * Paleta de comandos: um campo de busca e uma lista de ações filtrada pelo que se digita, sobre o
32
+ * `Autocomplete` do Base UI em modo `inline`. Renderiza um `div` sem caixa (sem borda nem fundo):
33
+ * a moldura vem de quem envolve, como um `Dialog`, um `Popover` ou um `Card`.
34
+ *
35
+ * A lista fica sempre aberta e o primeiro item sempre ativo (`autoHighlight="always"`), então o
36
+ * `Enter` dispara o `onClick` do item ativo; `Ctrl+Enter` e `Cmd+Enter` também, pelo `Command.Input`,
37
+ * com o `ctrlKey` ou o `metaKey` no evento, para o item abrir em outra aba. O item ativo só muda pelas setas, pelo hover de outro
38
+ * item ou pela busca: o ponteiro fora dos itens o mantém (`keepHighlight`). Por isso `open`,
39
+ * `inline`, `autoHighlight` e `keepHighlight` não são props: outro valor desfaria a paleta.
40
+ * Escolher um item não reescreve o campo.
41
+ *
42
+ * - **Filtro:** por padrão, casa o texto do item (`itemToStringValue`, o `label` ou o próprio item,
43
+ * se for texto) e as `keywords` dele, quando o item as tem (`readonly string[]`), sem diferenciar
44
+ * acento nem caixa. Passe `filter` para outra regra ou `filter={null}` para não filtrar (busca no
45
+ * servidor: o resultado vem em `items`). A mesma regra sai em `Command.useFilter`, para montar a
46
+ * lista por fora (`filteredItems`), e o total filtrado em `Command.useFilteredItems`.
47
+ * - **Busca:** `value`, `defaultValue` e `onValueChange` são o texto digitado. O `Command.ItemText`
48
+ * lê esse texto para destacar o trecho que casou.
49
+ * - **Foco:** o Command não rouba o foco. Dentro de um `Dialog`, aponte o `initialFocus` dele para
50
+ * o `Command.Input` (por ref); solto na página, use o `autoFocus` do `Command.Input`.
51
+ *
52
+ * @example
53
+ * ```tsx
54
+ * <Command.Root items={pages}>
55
+ * <Command.Input
56
+ * aria-label="Buscar"
57
+ * placeholder="Buscar páginas"
58
+ * />
59
+ * <Command.Empty>Nenhum resultado</Command.Empty>
60
+ * <Command.List>
61
+ * {(page: Page) => (
62
+ * <Command.Item
63
+ * key={page.label}
64
+ * value={page}
65
+ * onClick={() => navigate(page.path)}
66
+ * >
67
+ * <Command.ItemText>{page.label}</Command.ItemText>
68
+ * </Command.Item>
69
+ * )}
70
+ * </Command.List>
71
+ * </Command.Root>
72
+ * ```
73
+ */
74
+ /**
75
+ * Duas assinaturas, como as do `Autocomplete.Root`: com `items` agrupados (`{ value, items }`), o
76
+ * tipo do item vem de dentro dos grupos; com `items` planos, do próprio array. Por isso é uma
77
+ * `function`, e não uma arrow: só a função aceita sobrecarga.
78
+ */
79
+ export declare function CommandRoot<Items extends readonly {
80
+ items: readonly unknown[];
81
+ }[]>(props: MergeOverride<Omit<CommandRootProps<Items[number]['items'][number]>, 'items'>, {
82
+ items: Items;
83
+ }>): React.JSX.Element;
84
+ export declare function CommandRoot<ItemValue>(props: MergeOverride<Omit<CommandRootProps<ItemValue>, 'items'>, {
85
+ items?: readonly ItemValue[];
86
+ }>): React.JSX.Element;
87
+ export declare namespace CommandRoot {
88
+ var displayName: string;
89
+ }
90
+ //#endregion
91
+ //# sourceMappingURL=command-root.d.ts.map
@@ -0,0 +1,50 @@
1
+ import { mergeTwClassNames } from "../../../utils/merge-class-names.js";
2
+ import { CommandContextProvider } from "./use-command-context.js";
3
+ import { useCommandFilter } from "./use-command-filter.js";
4
+ import { useState } from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ import { Autocomplete } from "@base-ui/react/autocomplete";
7
+ //#region src/components/collections/command/command-root.tsx
8
+ function CommandRoot(props) {
9
+ const { className, children, value, defaultValue, onValueChange, filter, ...rest } = props;
10
+ const defaultFilter = useCommandFilter();
11
+ /**
12
+ * O Base UI guarda o texto da busca, mas não o devolve às partes. O Root o espelha aqui, no
13
+ * `onValueChange`, para o `Command.ItemText` destacar: sem isso, o destaque não acompanha a
14
+ * digitação. Controlado, o `value` vence o estado local.
15
+ */
16
+ const [typedQuery, setTypedQuery] = useState(defaultValue ?? "");
17
+ const query = value ?? typedQuery;
18
+ const handleValueChange = (nextValue, eventDetails) => {
19
+ setTypedQuery(nextValue);
20
+ onValueChange?.(nextValue, eventDetails);
21
+ };
22
+ return /* @__PURE__ */ jsx(CommandContextProvider, {
23
+ value: { query },
24
+ children: /* @__PURE__ */ jsx("div", {
25
+ "data-component": "Command.Root",
26
+ className: mergeTwClassNames([
27
+ "flex",
28
+ "min-h-0",
29
+ "flex-col"
30
+ ], className),
31
+ children: /* @__PURE__ */ jsx(Autocomplete.Root, {
32
+ filter: filter === void 0 ? defaultFilter : filter,
33
+ value,
34
+ defaultValue,
35
+ onValueChange: handleValueChange,
36
+ ...rest,
37
+ inline: true,
38
+ open: true,
39
+ autoHighlight: "always",
40
+ keepHighlight: true,
41
+ children
42
+ })
43
+ })
44
+ });
45
+ }
46
+ CommandRoot.displayName = "Command.Root";
47
+ //#endregion
48
+ export { CommandRoot };
49
+
50
+ //# sourceMappingURL=command-root.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-root.js","names":["BaseAutocomplete"],"sources":["../../../../src/components/collections/command/command-root.tsx"],"sourcesContent":["import { Autocomplete as BaseAutocomplete } from '@base-ui/react/autocomplete';\nimport type { MergeOverride } from '@lucasbernardosn/ts-utils';\nimport type React from 'react';\nimport { useState } from 'react';\nimport { mergeTwClassNames } from '#utils';\nimport { CommandContextProvider } from './use-command-context';\nimport { useCommandFilter } from './use-command-filter';\n\n/**\n * Props que o Command fixa: a lista está sempre aberta e inline, o primeiro item sempre ativo e\n * o filtro sempre pela lista. Não saem para quem usa, porque outro valor desfaz o comportamento\n * do Command.\n */\ntype CommandRootFixedProps =\n | 'inline'\n | 'open'\n | 'defaultOpen'\n | 'onOpenChange'\n | 'autoHighlight'\n | 'keepHighlight'\n | 'mode'\n | 'openOnInputClick'\n | 'value'\n | 'defaultValue'\n | 'children';\n\nexport type CommandRootProps<ItemValue> = MergeOverride<\n Omit<BaseAutocomplete.Root.Props<ItemValue>, CommandRootFixedProps>,\n {\n /**\n * Texto da busca, quando controlado.\n */\n value?: string;\n /**\n * Texto inicial da busca, quando não controlado.\n *\n * @default ''\n */\n defaultValue?: string;\n /**\n * Classes do `div` raiz.\n */\n className?: string;\n children?: React.ReactNode;\n }\n>;\n\nexport type CommandRootState = BaseAutocomplete.Root.State;\n\nexport type CommandRootChangeEventDetails =\n BaseAutocomplete.Root.ChangeEventDetails;\n\n/**\n * Paleta de comandos: um campo de busca e uma lista de ações filtrada pelo que se digita, sobre o\n * `Autocomplete` do Base UI em modo `inline`. Renderiza um `div` sem caixa (sem borda nem fundo):\n * a moldura vem de quem envolve, como um `Dialog`, um `Popover` ou um `Card`.\n *\n * A lista fica sempre aberta e o primeiro item sempre ativo (`autoHighlight=\"always\"`), então o\n * `Enter` dispara o `onClick` do item ativo; `Ctrl+Enter` e `Cmd+Enter` também, pelo `Command.Input`,\n * com o `ctrlKey` ou o `metaKey` no evento, para o item abrir em outra aba. O item ativo só muda pelas setas, pelo hover de outro\n * item ou pela busca: o ponteiro fora dos itens o mantém (`keepHighlight`). Por isso `open`,\n * `inline`, `autoHighlight` e `keepHighlight` não são props: outro valor desfaria a paleta.\n * Escolher um item não reescreve o campo.\n *\n * - **Filtro:** por padrão, casa o texto do item (`itemToStringValue`, o `label` ou o próprio item,\n * se for texto) e as `keywords` dele, quando o item as tem (`readonly string[]`), sem diferenciar\n * acento nem caixa. Passe `filter` para outra regra ou `filter={null}` para não filtrar (busca no\n * servidor: o resultado vem em `items`). A mesma regra sai em `Command.useFilter`, para montar a\n * lista por fora (`filteredItems`), e o total filtrado em `Command.useFilteredItems`.\n * - **Busca:** `value`, `defaultValue` e `onValueChange` são o texto digitado. O `Command.ItemText`\n * lê esse texto para destacar o trecho que casou.\n * - **Foco:** o Command não rouba o foco. Dentro de um `Dialog`, aponte o `initialFocus` dele para\n * o `Command.Input` (por ref); solto na página, use o `autoFocus` do `Command.Input`.\n *\n * @example\n * ```tsx\n * <Command.Root items={pages}>\n * <Command.Input\n * aria-label=\"Buscar\"\n * placeholder=\"Buscar páginas\"\n * />\n * <Command.Empty>Nenhum resultado</Command.Empty>\n * <Command.List>\n * {(page: Page) => (\n * <Command.Item\n * key={page.label}\n * value={page}\n * onClick={() => navigate(page.path)}\n * >\n * <Command.ItemText>{page.label}</Command.ItemText>\n * </Command.Item>\n * )}\n * </Command.List>\n * </Command.Root>\n * ```\n */\n/**\n * Duas assinaturas, como as do `Autocomplete.Root`: com `items` agrupados (`{ value, items }`), o\n * tipo do item vem de dentro dos grupos; com `items` planos, do próprio array. Por isso é uma\n * `function`, e não uma arrow: só a função aceita sobrecarga.\n */\nexport function CommandRoot<\n Items extends readonly { items: readonly unknown[] }[],\n>(\n props: MergeOverride<\n Omit<CommandRootProps<Items[number]['items'][number]>, 'items'>,\n { items: Items }\n >,\n): React.JSX.Element;\nexport function CommandRoot<ItemValue>(\n props: MergeOverride<\n Omit<CommandRootProps<ItemValue>, 'items'>,\n { items?: readonly ItemValue[] }\n >,\n): React.JSX.Element;\nexport function CommandRoot(props: CommandRootProps<unknown>) {\n const {\n className,\n children,\n value,\n defaultValue,\n onValueChange,\n filter,\n ...rest\n } = props;\n\n const defaultFilter = useCommandFilter();\n\n /**\n * O Base UI guarda o texto da busca, mas não o devolve às partes. O Root o espelha aqui, no\n * `onValueChange`, para o `Command.ItemText` destacar: sem isso, o destaque não acompanha a\n * digitação. Controlado, o `value` vence o estado local.\n */\n const [typedQuery, setTypedQuery] = useState(defaultValue ?? '');\n\n const query = value ?? typedQuery;\n\n const handleValueChange: BaseAutocomplete.Root.Props<unknown>['onValueChange'] =\n (nextValue, eventDetails) => {\n setTypedQuery(nextValue);\n onValueChange?.(nextValue, eventDetails);\n };\n\n return (\n <CommandContextProvider value={{ query }}>\n <div\n data-component=\"Command.Root\"\n className={mergeTwClassNames(\n ['flex', 'min-h-0', 'flex-col'],\n className,\n )}\n >\n <BaseAutocomplete.Root\n filter={filter === undefined ? defaultFilter : filter}\n value={value}\n defaultValue={defaultValue}\n onValueChange={handleValueChange}\n {...rest}\n inline={true}\n open={true}\n autoHighlight=\"always\"\n // Sem ele, o ponteiro fora dos itens (no rótulo de um grupo) tira o destaque, e o\n // `autoHighlight` o devolve ao primeiro item.\n keepHighlight={true}\n >\n {children}\n </BaseAutocomplete.Root>\n </div>\n </CommandContextProvider>\n );\n}\n\nCommandRoot.displayName = 'Command.Root';\n"],"mappings":";;;;;;;AAmHA,SAAgB,YAAY,OAAkC;CAC5D,MAAM,EACJ,WACA,UACA,OACA,cACA,eACA,QACA,GAAG,SACD;CAEJ,MAAM,gBAAgB,iBAAiB;;;;;;CAOvC,MAAM,CAAC,YAAY,iBAAiB,SAAS,gBAAgB,EAAE;CAE/D,MAAM,QAAQ,SAAS;CAEvB,MAAM,qBACH,WAAW,iBAAiB;EAC3B,cAAc,SAAS;EACvB,gBAAgB,WAAW,YAAY;CACzC;CAEF,OACE,oBAAC,wBAAD;EAAwB,OAAO,EAAE,MAAM;EACrC,UAAA,oBAAC,OAAD;GACE,kBAAe;GACf,WAAW,kBACT;IAAC;IAAQ;IAAW;GAAU,GAC9B,SACF;GAEA,UAAA,oBAACA,aAAiB,MAAlB;IACE,QAAQ,WAAW,KAAA,IAAY,gBAAgB;IACxC;IACO;IACd,eAAe;IACf,GAAI;IACJ,QAAQ;IACR,MAAM;IACN,eAAc;IAGd,eAAe;IAEd;GACoB,CAAA;EACpB,CAAA;CACiB,CAAA;AAE5B;AAEA,YAAY,cAAc"}
@@ -0,0 +1,15 @@
1
+ import { Autocomplete } from "@base-ui/react/autocomplete";
2
+ //#region src/components/collections/command/command-separator.d.ts
3
+ export type CommandSeparatorProps = Autocomplete.Separator.Props;
4
+ export type CommandSeparatorState = Autocomplete.Separator.State;
5
+ /**
6
+ * Linha entre itens ou grupos.
7
+ *
8
+ * Cópia de `SelectSeparator`, a origem do separador das listas em popup, sem diferenças.
9
+ */
10
+ export declare const CommandSeparator: {
11
+ (props: CommandSeparatorProps): import("react").JSX.Element;
12
+ displayName: string;
13
+ };
14
+ //#endregion
15
+ //# sourceMappingURL=command-separator.d.ts.map
@@ -0,0 +1,27 @@
1
+ import { mergeStateClassNames } from "../../../utils/merge-state-class-names.js";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { Autocomplete } from "@base-ui/react/autocomplete";
4
+ //#region src/components/collections/command/command-separator.tsx
5
+ /**
6
+ * Linha entre itens ou grupos.
7
+ *
8
+ * Cópia de `SelectSeparator`, a origem do separador das listas em popup, sem diferenças.
9
+ */
10
+ const CommandSeparator = (props) => {
11
+ const { className, ...rest } = props;
12
+ return /* @__PURE__ */ jsx(Autocomplete.Separator, {
13
+ "data-component": "Command.Separator",
14
+ className: mergeStateClassNames([
15
+ "h-px",
16
+ "my-1",
17
+ "mx-2",
18
+ "bg-gray-6"
19
+ ], className),
20
+ ...rest
21
+ });
22
+ };
23
+ CommandSeparator.displayName = "Command.Separator";
24
+ //#endregion
25
+ export { CommandSeparator };
26
+
27
+ //# sourceMappingURL=command-separator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-separator.js","names":["BaseAutocomplete"],"sources":["../../../../src/components/collections/command/command-separator.tsx"],"sourcesContent":["import { Autocomplete as BaseAutocomplete } from '@base-ui/react/autocomplete';\nimport { mergeStateClassNames } from '#utils';\n\nexport type CommandSeparatorProps = BaseAutocomplete.Separator.Props;\n\nexport type CommandSeparatorState = BaseAutocomplete.Separator.State;\n\n/**\n * Linha entre itens ou grupos.\n *\n * Cópia de `SelectSeparator`, a origem do separador das listas em popup, sem diferenças.\n */\nexport const CommandSeparator = (props: CommandSeparatorProps) => {\n const { className, ...rest } = props;\n\n return (\n <BaseAutocomplete.Separator\n data-component=\"Command.Separator\"\n className={mergeStateClassNames(\n [\n 'h-px',\n\n 'my-1',\n 'mx-2',\n\n 'bg-gray-6',\n ],\n className,\n )}\n {...rest}\n />\n );\n};\n\nCommandSeparator.displayName = 'Command.Separator';\n"],"mappings":";;;;;;;;;AAYA,MAAa,oBAAoB,UAAiC;CAChE,MAAM,EAAE,WAAW,GAAG,SAAS;CAE/B,OACE,oBAACA,aAAiB,WAAlB;EACE,kBAAe;EACf,WAAW,qBACT;GACE;GAEA;GACA;GAEA;EACF,GACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,iBAAiB,cAAc"}
@@ -0,0 +1,2 @@
1
+ import { index_parts_d_exports } from "./index.parts.js";
2
+ export { index_parts_d_exports as Command };
@@ -0,0 +1,2 @@
1
+ import { index_parts_exports } from "./index.parts.js";
2
+ export { index_parts_exports as Command };
@@ -0,0 +1,19 @@
1
+ import { CommandCollection, CommandCollectionProps, CommandCollectionState } from "./command-collection.js";
2
+ import { CommandEmpty, CommandEmptyProps, CommandEmptyState } from "./command-empty.js";
3
+ import { CommandFooter, CommandFooterProps } from "./command-footer.js";
4
+ import { CommandGroupLabel, CommandGroupLabelProps, CommandGroupLabelState } from "./command-group-label.js";
5
+ import { CommandGroup, CommandGroupProps, CommandGroupState } from "./command-group.js";
6
+ import { CommandInput, CommandInputProps, CommandInputState } from "./command-input.js";
7
+ import { CommandItemText, CommandItemTextProps } from "./command-item-text.js";
8
+ import { CommandItem, CommandItemProps, CommandItemState } from "./command-item.js";
9
+ import { CommandList, CommandListProps, CommandListState } from "./command-list.js";
10
+ import { CommandLoading, CommandLoadingProps, CommandLoadingState } from "./command-loading.js";
11
+ import { CommandRoot, CommandRootChangeEventDetails, CommandRootProps, CommandRootState } from "./command-root.js";
12
+ import { CommandSeparator, CommandSeparatorProps, CommandSeparatorState } from "./command-separator.js";
13
+ import { CommandFilter, useCommandFilter, useCommandFilteredItems } from "./use-command-filter.js";
14
+ declare namespace index_parts_d_exports {
15
+ export { CommandCollection as Collection, CommandCollectionProps as CollectionProps, CommandCollectionState as CollectionState, CommandEmpty as Empty, CommandEmptyProps as EmptyProps, CommandEmptyState as EmptyState, CommandFilter as Filter, CommandFooter as Footer, CommandFooterProps as FooterProps, CommandGroup as Group, CommandGroupLabel as GroupLabel, CommandGroupLabelProps as GroupLabelProps, CommandGroupLabelState as GroupLabelState, CommandGroupProps as GroupProps, CommandGroupState as GroupState, CommandInput as Input, CommandInputProps as InputProps, CommandInputState as InputState, CommandItem as Item, CommandItemProps as ItemProps, CommandItemState as ItemState, CommandItemText as ItemText, CommandItemTextProps as ItemTextProps, CommandList as List, CommandListProps as ListProps, CommandListState as ListState, CommandLoading as Loading, CommandLoadingProps as LoadingProps, CommandLoadingState as LoadingState, CommandRoot as Root, CommandRootChangeEventDetails as RootChangeEventDetails, CommandRootProps as RootProps, CommandRootState as RootState, CommandSeparator as Separator, CommandSeparatorProps as SeparatorProps, CommandSeparatorState as SeparatorState, useCommandFilter as useFilter, useCommandFilteredItems as useFilteredItems };
16
+ }
17
+ //#endregion
18
+ export { CommandCollection as Collection, type CommandCollectionProps as CollectionProps, type CommandCollectionState as CollectionState, CommandEmpty as Empty, type CommandEmptyProps as EmptyProps, type CommandEmptyState as EmptyState, type CommandFilter as Filter, CommandFooter as Footer, type CommandFooterProps as FooterProps, CommandGroup as Group, CommandGroupLabel as GroupLabel, type CommandGroupLabelProps as GroupLabelProps, type CommandGroupLabelState as GroupLabelState, type CommandGroupProps as GroupProps, type CommandGroupState as GroupState, CommandInput as Input, type CommandInputProps as InputProps, type CommandInputState as InputState, CommandItem as Item, type CommandItemProps as ItemProps, type CommandItemState as ItemState, CommandItemText as ItemText, type CommandItemTextProps as ItemTextProps, CommandList as List, type CommandListProps as ListProps, type CommandListState as ListState, CommandLoading as Loading, type CommandLoadingProps as LoadingProps, type CommandLoadingState as LoadingState, CommandRoot as Root, type CommandRootChangeEventDetails as RootChangeEventDetails, type CommandRootProps as RootProps, type CommandRootState as RootState, CommandSeparator as Separator, type CommandSeparatorProps as SeparatorProps, type CommandSeparatorState as SeparatorState, index_parts_d_exports, useCommandFilter as useFilter, useCommandFilteredItems as useFilteredItems };
19
+ //# sourceMappingURL=index.parts.d.ts.map
@@ -0,0 +1,35 @@
1
+ import { __exportAll } from "../../../_virtual/_rolldown/runtime.js";
2
+ import { CommandCollection } from "./command-collection.js";
3
+ import { CommandEmpty } from "./command-empty.js";
4
+ import { CommandFooter } from "./command-footer.js";
5
+ import { CommandGroupLabel } from "./command-group-label.js";
6
+ import { CommandGroup } from "./command-group.js";
7
+ import { CommandInput } from "./command-input.js";
8
+ import { CommandItemText } from "./command-item-text.js";
9
+ import { CommandItem } from "./command-item.js";
10
+ import { CommandList } from "./command-list.js";
11
+ import { CommandLoading } from "./command-loading.js";
12
+ import { useCommandFilter, useCommandFilteredItems } from "./use-command-filter.js";
13
+ import { CommandRoot } from "./command-root.js";
14
+ import { CommandSeparator } from "./command-separator.js";
15
+ //#region src/components/collections/command/index.parts.ts
16
+ var index_parts_exports = /* @__PURE__ */ __exportAll({
17
+ Collection: () => CommandCollection,
18
+ Empty: () => CommandEmpty,
19
+ Footer: () => CommandFooter,
20
+ Group: () => CommandGroup,
21
+ GroupLabel: () => CommandGroupLabel,
22
+ Input: () => CommandInput,
23
+ Item: () => CommandItem,
24
+ ItemText: () => CommandItemText,
25
+ List: () => CommandList,
26
+ Loading: () => CommandLoading,
27
+ Root: () => CommandRoot,
28
+ Separator: () => CommandSeparator,
29
+ useFilter: () => useCommandFilter,
30
+ useFilteredItems: () => useCommandFilteredItems
31
+ });
32
+ //#endregion
33
+ export { CommandCollection as Collection, CommandEmpty as Empty, CommandFooter as Footer, CommandGroup as Group, CommandGroupLabel as GroupLabel, CommandInput as Input, CommandItem as Item, CommandItemText as ItemText, CommandList as List, CommandLoading as Loading, CommandRoot as Root, CommandSeparator as Separator, index_parts_exports, useCommandFilter as useFilter, useCommandFilteredItems as useFilteredItems };
34
+
35
+ //# sourceMappingURL=index.parts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.parts.js","names":[],"sources":["../../../../src/components/collections/command/index.parts.ts"],"sourcesContent":["export { CommandCollection as Collection } from './command-collection';\nexport { CommandEmpty as Empty } from './command-empty';\nexport { CommandFooter as Footer } from './command-footer';\nexport { CommandGroup as Group } from './command-group';\nexport { CommandGroupLabel as GroupLabel } from './command-group-label';\nexport { CommandInput as Input } from './command-input';\nexport { CommandItem as Item } from './command-item';\nexport { CommandItemText as ItemText } from './command-item-text';\nexport { CommandList as List } from './command-list';\nexport { CommandLoading as Loading } from './command-loading';\nexport { CommandRoot as Root } from './command-root';\nexport { CommandSeparator as Separator } from './command-separator';\nexport {\n useCommandFilter as useFilter,\n useCommandFilteredItems as useFilteredItems,\n} from './use-command-filter';\n\n/* types */\n\nexport type {\n CommandCollectionProps as CollectionProps,\n CommandCollectionState as CollectionState,\n} from './command-collection';\nexport type {\n CommandEmptyProps as EmptyProps,\n CommandEmptyState as EmptyState,\n} from './command-empty';\nexport type { CommandFooterProps as FooterProps } from './command-footer';\nexport type {\n CommandGroupProps as GroupProps,\n CommandGroupState as GroupState,\n} from './command-group';\nexport type {\n CommandGroupLabelProps as GroupLabelProps,\n CommandGroupLabelState as GroupLabelState,\n} from './command-group-label';\nexport type {\n CommandInputProps as InputProps,\n CommandInputState as InputState,\n} from './command-input';\nexport type {\n CommandItemProps as ItemProps,\n CommandItemState as ItemState,\n} from './command-item';\nexport type { CommandItemTextProps as ItemTextProps } from './command-item-text';\nexport type {\n CommandListProps as ListProps,\n CommandListState as ListState,\n} from './command-list';\nexport type {\n CommandLoadingProps as LoadingProps,\n CommandLoadingState as LoadingState,\n} from './command-loading';\nexport type {\n CommandRootChangeEventDetails as RootChangeEventDetails,\n CommandRootProps as RootProps,\n CommandRootState as RootState,\n} from './command-root';\nexport type {\n CommandSeparatorProps as SeparatorProps,\n CommandSeparatorState as SeparatorState,\n} from './command-separator';\nexport type { CommandFilter as Filter } from './use-command-filter';\n"],"mappings":""}
@@ -0,0 +1,10 @@
1
+ //#region src/components/collections/command/use-command-context.d.ts
2
+ /**
3
+ * Valor do contexto do Command: o texto da busca, para o `Command.ItemText` saber o que destacar.
4
+ */
5
+ export type CommandContextValue = {
6
+ query: string;
7
+ };
8
+ export declare const CommandContextProvider: import("react").Provider<CommandContextValue>, useCommandContext: () => CommandContextValue;
9
+ //#endregion
10
+ //# sourceMappingURL=use-command-context.d.ts.map
@@ -0,0 +1,10 @@
1
+ import { createContext } from "@lucasbernardosn/react-utils";
2
+ //#region src/components/collections/command/use-command-context.ts
3
+ const [CommandContextProvider, useCommandContext] = createContext({
4
+ name: "CommandContext",
5
+ providers: ["Command.Root"]
6
+ });
7
+ //#endregion
8
+ export { CommandContextProvider, useCommandContext };
9
+
10
+ //# sourceMappingURL=use-command-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-command-context.js","names":[],"sources":["../../../../src/components/collections/command/use-command-context.ts"],"sourcesContent":["import { createContext } from '@lucasbernardosn/react-utils';\n\n/**\n * Valor do contexto do Command: o texto da busca, para o `Command.ItemText` saber o que destacar.\n */\nexport type CommandContextValue = {\n query: string;\n};\n\nexport const [CommandContextProvider, useCommandContext] =\n createContext<CommandContextValue>({\n name: 'CommandContext',\n providers: ['Command.Root'],\n });\n"],"mappings":";;AASA,MAAa,CAAC,wBAAwB,qBACpC,cAAmC;CACjC,MAAM;CACN,WAAW,CAAC,cAAc;AAC5B,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { Autocomplete } from "@base-ui/react/autocomplete";
2
+ //#region src/components/collections/command/use-command-filter.d.ts
3
+ /**
4
+ * Regra de filtro de um item: recebe o item, o texto da busca e, opcionalmente, como converter o
5
+ * item em texto.
6
+ */
7
+ export type CommandFilter = <Item>(item: Item, query: string, itemToString?: (item: Item) => string) => boolean;
8
+ /**
9
+ * A regra do filtro padrão do `Command.Root`: casa o texto do item (`itemToString`, o `label` ou
10
+ * o próprio item, se for texto) e as `keywords` dele, sem diferenciar acento nem caixa. Serve a
11
+ * quem monta a lista filtrada por fora (`filteredItems`), como um limite de itens por grupo: com
12
+ * outra regra, a lista cortada não bate com a que o `Command` mostraria.
13
+ *
14
+ * @example
15
+ * ```tsx
16
+ * const filter = Command.useFilter();
17
+ * const reports = allReports.filter((report) => filter(report, query)).slice(0, 5);
18
+ * ```
19
+ */
20
+ export declare const useCommandFilter: () => CommandFilter;
21
+ /**
22
+ * A lista já filtrada, lida de dentro do `Command.Root`: o total de resultados, por exemplo, é o
23
+ * tamanho dela. Trate o resultado como somente leitura.
24
+ */
25
+ export declare const useCommandFilteredItems: typeof Autocomplete.useFilteredItems;
26
+ //#endregion
27
+ //# sourceMappingURL=use-command-filter.d.ts.map
@@ -0,0 +1,32 @@
1
+ import { useCallback } from "react";
2
+ import { Autocomplete } from "@base-ui/react/autocomplete";
3
+ //#region src/components/collections/command/use-command-filter.ts
4
+ const hasKeywords = (item) => typeof item === "object" && item !== null && "keywords" in item && Array.isArray(item.keywords);
5
+ /**
6
+ * A regra do filtro padrão do `Command.Root`: casa o texto do item (`itemToString`, o `label` ou
7
+ * o próprio item, se for texto) e as `keywords` dele, sem diferenciar acento nem caixa. Serve a
8
+ * quem monta a lista filtrada por fora (`filteredItems`), como um limite de itens por grupo: com
9
+ * outra regra, a lista cortada não bate com a que o `Command` mostraria.
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * const filter = Command.useFilter();
14
+ * const reports = allReports.filter((report) => filter(report, query)).slice(0, 5);
15
+ * ```
16
+ */
17
+ const useCommandFilter = () => {
18
+ const { contains } = Autocomplete.useFilter();
19
+ return useCallback((item, query, itemToString) => {
20
+ if (contains(item, query, itemToString)) return true;
21
+ return hasKeywords(item) && item.keywords.some((keyword) => typeof keyword === "string" && contains(keyword, query));
22
+ }, [contains]);
23
+ };
24
+ /**
25
+ * A lista já filtrada, lida de dentro do `Command.Root`: o total de resultados, por exemplo, é o
26
+ * tamanho dela. Trate o resultado como somente leitura.
27
+ */
28
+ const useCommandFilteredItems = Autocomplete.useFilteredItems;
29
+ //#endregion
30
+ export { useCommandFilter, useCommandFilteredItems };
31
+
32
+ //# sourceMappingURL=use-command-filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-command-filter.js","names":["BaseAutocomplete"],"sources":["../../../../src/components/collections/command/use-command-filter.ts"],"sourcesContent":["import { Autocomplete as BaseAutocomplete } from '@base-ui/react/autocomplete';\nimport { useCallback } from 'react';\n\n/**\n * Regra de filtro de um item: recebe o item, o texto da busca e, opcionalmente, como converter o\n * item em texto.\n */\nexport type CommandFilter = <Item>(\n item: Item,\n query: string,\n itemToString?: (item: Item) => string,\n) => boolean;\n\n/**\n * Item com palavras-chave extras para a busca: o filtro padrão casa também cada uma delas.\n */\ntype ItemWithKeywords = { keywords: readonly unknown[] };\n\nconst hasKeywords = (item: unknown): item is ItemWithKeywords =>\n typeof item === 'object' &&\n item !== null &&\n 'keywords' in item &&\n Array.isArray(item.keywords);\n\n/**\n * A regra do filtro padrão do `Command.Root`: casa o texto do item (`itemToString`, o `label` ou\n * o próprio item, se for texto) e as `keywords` dele, sem diferenciar acento nem caixa. Serve a\n * quem monta a lista filtrada por fora (`filteredItems`), como um limite de itens por grupo: com\n * outra regra, a lista cortada não bate com a que o `Command` mostraria.\n *\n * @example\n * ```tsx\n * const filter = Command.useFilter();\n * const reports = allReports.filter((report) => filter(report, query)).slice(0, 5);\n * ```\n */\nexport const useCommandFilter = (): CommandFilter => {\n const { contains } = BaseAutocomplete.useFilter();\n\n return useCallback<CommandFilter>(\n (item, query, itemToString) => {\n if (contains(item, query, itemToString)) {\n return true;\n }\n\n return (\n hasKeywords(item) &&\n item.keywords.some(\n (keyword) => typeof keyword === 'string' && contains(keyword, query),\n )\n );\n },\n [contains],\n );\n};\n\n/**\n * A lista já filtrada, lida de dentro do `Command.Root`: o total de resultados, por exemplo, é o\n * tamanho dela. Trate o resultado como somente leitura.\n */\nexport const useCommandFilteredItems = BaseAutocomplete.useFilteredItems;\n"],"mappings":";;;AAkBA,MAAM,eAAe,SACnB,OAAO,SAAS,YAChB,SAAS,QACT,cAAc,QACd,MAAM,QAAQ,KAAK,QAAQ;;;;;;;;;;;;;AAc7B,MAAa,yBAAwC;CACnD,MAAM,EAAE,aAAaA,aAAiB,UAAU;CAEhD,OAAO,aACJ,MAAM,OAAO,iBAAiB;EAC7B,IAAI,SAAS,MAAM,OAAO,YAAY,GACpC,OAAO;EAGT,OACE,YAAY,IAAI,KAChB,KAAK,SAAS,MACX,YAAY,OAAO,YAAY,YAAY,SAAS,SAAS,KAAK,CACrE;CAEJ,GACA,CAAC,QAAQ,CACX;AACF;;;;;AAMA,MAAa,0BAA0BA,aAAiB"}
@@ -5,8 +5,7 @@ export type SelectBackdropState = Select.Backdrop.State;
5
5
  /**
6
6
  * Camada atrás do popup que cobre e escurece a página.
7
7
  *
8
- * Cópia de `PopoverBackdrop`, a origem do backdrop dos popups, sem diferenças (tabela no README
9
- * de `overlays`).
8
+ * Cópia de `PopoverBackdrop`, a origem do backdrop dos popups, sem diferenças.
10
9
  */
11
10
  export declare const SelectBackdrop: {
12
11
  (props: SelectBackdropProps): import("react").JSX.Element;
@@ -5,8 +5,7 @@ import { Select } from "@base-ui/react/select";
5
5
  /**
6
6
  * Camada atrás do popup que cobre e escurece a página.
7
7
  *
8
- * Cópia de `PopoverBackdrop`, a origem do backdrop dos popups, sem diferenças (tabela no README
9
- * de `overlays`).
8
+ * Cópia de `PopoverBackdrop`, a origem do backdrop dos popups, sem diferenças.
10
9
  */
11
10
  const SelectBackdrop = (props) => {
12
11
  const { className, ...rest } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"select-backdrop.js","names":["BaseSelect"],"sources":["../../../../src/components/collections/select/select-backdrop.tsx"],"sourcesContent":["import { Select as BaseSelect } from '@base-ui/react/select';\nimport { mergeStateClassNames } from '#utils';\n\nexport type SelectBackdropProps = BaseSelect.Backdrop.Props;\n\nexport type SelectBackdropState = BaseSelect.Backdrop.State;\n\n/**\n * Camada atrás do popup que cobre e escurece a página.\n *\n * Cópia de `PopoverBackdrop`, a origem do backdrop dos popups, sem diferenças (tabela no README\n * de `overlays`).\n */\nexport const SelectBackdrop = (props: SelectBackdropProps) => {\n const { className, ...rest } = props;\n\n return (\n <BaseSelect.Backdrop\n data-component=\"Select.Backdrop\"\n className={mergeStateClassNames(\n [\n 'fixed',\n 'inset-0',\n 'min-h-dvh',\n 'supports-[-webkit-touch-callout:none]:absolute',\n\n 'bg-black/40',\n\n 'not-motion-reduced:transition-opacity',\n 'not-motion-reduced:ease-enter',\n // Mesma duração e curva do `Popup` em cada sentido, para os dois sumirem juntos.\n 'not-motion-reduced:duration-150',\n 'not-motion-reduced:data-ending-style:duration-100',\n 'not-motion-reduced:data-ending-style:ease-exit',\n\n 'data-ending-style:opacity-0',\n 'data-starting-style:opacity-0',\n ],\n className,\n )}\n {...rest}\n />\n );\n};\n\nSelectBackdrop.displayName = 'Select.Backdrop';\n"],"mappings":";;;;;;;;;;AAaA,MAAa,kBAAkB,UAA+B;CAC5D,MAAM,EAAE,WAAW,GAAG,SAAS;CAE/B,OACE,oBAACA,OAAW,UAAZ;EACE,kBAAe;EACf,WAAW,qBACT;GACE;GACA;GACA;GACA;GAEA;GAEA;GACA;GAEA;GACA;GACA;GAEA;GACA;EACF,GACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,eAAe,cAAc"}
1
+ {"version":3,"file":"select-backdrop.js","names":["BaseSelect"],"sources":["../../../../src/components/collections/select/select-backdrop.tsx"],"sourcesContent":["import { Select as BaseSelect } from '@base-ui/react/select';\nimport { mergeStateClassNames } from '#utils';\n\nexport type SelectBackdropProps = BaseSelect.Backdrop.Props;\n\nexport type SelectBackdropState = BaseSelect.Backdrop.State;\n\n/**\n * Camada atrás do popup que cobre e escurece a página.\n *\n * Cópia de `PopoverBackdrop`, a origem do backdrop dos popups, sem diferenças.\n */\nexport const SelectBackdrop = (props: SelectBackdropProps) => {\n const { className, ...rest } = props;\n\n return (\n <BaseSelect.Backdrop\n data-component=\"Select.Backdrop\"\n className={mergeStateClassNames(\n [\n 'fixed',\n 'inset-0',\n 'min-h-dvh',\n 'supports-[-webkit-touch-callout:none]:absolute',\n\n 'bg-black/40',\n\n 'not-motion-reduced:transition-opacity',\n 'not-motion-reduced:ease-enter',\n // Mesma duração e curva do `Popup` em cada sentido, para os dois sumirem juntos.\n 'not-motion-reduced:duration-150',\n 'not-motion-reduced:data-ending-style:duration-100',\n 'not-motion-reduced:data-ending-style:ease-exit',\n\n 'data-ending-style:opacity-0',\n 'data-starting-style:opacity-0',\n ],\n className,\n )}\n {...rest}\n />\n );\n};\n\nSelectBackdrop.displayName = 'Select.Backdrop';\n"],"mappings":";;;;;;;;;AAYA,MAAa,kBAAkB,UAA+B;CAC5D,MAAM,EAAE,WAAW,GAAG,SAAS;CAE/B,OACE,oBAACA,OAAW,UAAZ;EACE,kBAAe;EACf,WAAW,qBACT;GACE;GACA;GACA;GACA;GAEA;GAEA;GACA;GAEA;GACA;GACA;GAEA;GACA;EACF,GACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,eAAe,cAAc"}
@@ -1,7 +1,7 @@
1
1
  //#region src/components/collections/select/select-group-label-variants.d.ts
2
2
  /**
3
- * Origem do rótulo de grupo das listas em popup: o `Menu.GroupLabel` e o
4
- * `Autocomplete.GroupLabel` copiam estas classes (tabela no README de `collections`).
3
+ * Origem do rótulo de grupo das listas em popup: o `Menu.GroupLabel`, o `Autocomplete.GroupLabel`
4
+ * e o rótulo de grupo do `AsyncSelect` copiam estas classes.
5
5
  *
6
6
  * O recuo inicial de cada `size` é o recuo do texto do `Select.Item` (padding + coluna do check +
7
7
  * gap), para o rótulo alinhar com o texto dos itens do grupo. Mudar o espaçamento do item pede
@@ -2,8 +2,8 @@ import { selectDefaultVariants } from "./use-select-context.js";
2
2
  import { cva } from "class-variance-authority";
3
3
  //#region src/components/collections/select/select-group-label-variants.ts
4
4
  /**
5
- * Origem do rótulo de grupo das listas em popup: o `Menu.GroupLabel` e o
6
- * `Autocomplete.GroupLabel` copiam estas classes (tabela no README de `collections`).
5
+ * Origem do rótulo de grupo das listas em popup: o `Menu.GroupLabel`, o `Autocomplete.GroupLabel`
6
+ * e o rótulo de grupo do `AsyncSelect` copiam estas classes.
7
7
  *
8
8
  * O recuo inicial de cada `size` é o recuo do texto do `Select.Item` (padding + coluna do check +
9
9
  * gap), para o rótulo alinhar com o texto dos itens do grupo. Mudar o espaçamento do item pede
@@ -1 +1 @@
1
- {"version":3,"file":"select-group-label-variants.js","names":[],"sources":["../../../../src/components/collections/select/select-group-label-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport { selectDefaultVariants } from './use-select-context';\n\n/**\n * Origem do rótulo de grupo das listas em popup: o `Menu.GroupLabel` e o\n * `Autocomplete.GroupLabel` copiam estas classes (tabela no README de `collections`).\n *\n * O recuo inicial de cada `size` é o recuo do texto do `Select.Item` (padding + coluna do check +\n * gap), para o rótulo alinhar com o texto dos itens do grupo. Mudar o espaçamento do item pede\n * recalcular este valor.\n */\nexport const selectGroupLabelVariants = cva(\n [\n 'sticky',\n 'top-0',\n 'z-1',\n\n // Mesmo fundo do popup: fixo no topo, o rótulo cobre os itens que rolam por baixo.\n 'bg-white',\n 'dark:bg-gray-2',\n\n 'pt-2',\n 'pb-1',\n\n 'text-gray-11',\n 'font-medium',\n 'uppercase',\n 'tracking-wider',\n ],\n {\n variants: {\n size: {\n '2xs': [\n 'ps-6',\n 'pe-2',\n\n 'text-[0.6875rem]', // 11px\n ],\n xs: [\n 'ps-6',\n 'pe-2',\n\n 'text-[0.6875rem]', // 11px\n ],\n sm: [\n 'ps-8',\n 'pe-2.5',\n\n 'text-[0.6875rem]', // 11px\n ],\n md: [\n 'ps-8.5',\n 'pe-3',\n\n 'text-[0.6875rem]', // 11px\n ],\n lg: [\n 'ps-11',\n 'pe-4',\n\n 'text-[0.8125rem]', // 13px\n ],\n xl: [\n 'ps-11.5',\n 'pe-4.5',\n\n 'text-[0.8125rem]', // 13px\n ],\n '2xl': [\n 'ps-12.5',\n 'pe-5',\n\n 'text-sm',\n ],\n },\n },\n defaultVariants: {\n size: selectDefaultVariants.size,\n },\n },\n);\n"],"mappings":";;;;;;;;;;;AAWA,MAAa,2BAA2B,IACtC;CACE;CACA;CACA;CAGA;CACA;CAEA;CACA;CAEA;CACA;CACA;CACA;AACF,GACA;CACE,UAAU,EACR,MAAM;EACJ,OAAO;GACL;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,OAAO;GACL;GACA;GAEA;EACF;CACF,EACF;CACA,iBAAiB,EACf,MAAM,sBAAsB,KAC9B;AACF,CACF"}
1
+ {"version":3,"file":"select-group-label-variants.js","names":[],"sources":["../../../../src/components/collections/select/select-group-label-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport { selectDefaultVariants } from './use-select-context';\n\n/**\n * Origem do rótulo de grupo das listas em popup: o `Menu.GroupLabel`, o `Autocomplete.GroupLabel`\n * e o rótulo de grupo do `AsyncSelect` copiam estas classes.\n *\n * O recuo inicial de cada `size` é o recuo do texto do `Select.Item` (padding + coluna do check +\n * gap), para o rótulo alinhar com o texto dos itens do grupo. Mudar o espaçamento do item pede\n * recalcular este valor.\n */\nexport const selectGroupLabelVariants = cva(\n [\n 'sticky',\n 'top-0',\n 'z-1',\n\n // Mesmo fundo do popup: fixo no topo, o rótulo cobre os itens que rolam por baixo.\n 'bg-white',\n 'dark:bg-gray-2',\n\n 'pt-2',\n 'pb-1',\n\n 'text-gray-11',\n 'font-medium',\n 'uppercase',\n 'tracking-wider',\n ],\n {\n variants: {\n size: {\n '2xs': [\n 'ps-6',\n 'pe-2',\n\n 'text-[0.6875rem]', // 11px\n ],\n xs: [\n 'ps-6',\n 'pe-2',\n\n 'text-[0.6875rem]', // 11px\n ],\n sm: [\n 'ps-8',\n 'pe-2.5',\n\n 'text-[0.6875rem]', // 11px\n ],\n md: [\n 'ps-8.5',\n 'pe-3',\n\n 'text-[0.6875rem]', // 11px\n ],\n lg: [\n 'ps-11',\n 'pe-4',\n\n 'text-[0.8125rem]', // 13px\n ],\n xl: [\n 'ps-11.5',\n 'pe-4.5',\n\n 'text-[0.8125rem]', // 13px\n ],\n '2xl': [\n 'ps-12.5',\n 'pe-5',\n\n 'text-sm',\n ],\n },\n },\n defaultVariants: {\n size: selectDefaultVariants.size,\n },\n },\n);\n"],"mappings":";;;;;;;;;;;AAWA,MAAa,2BAA2B,IACtC;CACE;CACA;CACA;CAGA;CACA;CAEA;CACA;CAEA;CACA;CACA;CACA;AACF,GACA;CACE,UAAU,EACR,MAAM;EACJ,OAAO;GACL;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,IAAI;GACF;GACA;GAEA;EACF;EACA,OAAO;GACL;GACA;GAEA;EACF;CACF,EACF;CACA,iBAAiB,EACf,MAAM,sBAAsB,KAC9B;AACF,CACF"}
@@ -1,7 +1,8 @@
1
1
  //#region src/components/collections/select/select-item-variants.d.ts
2
2
  /**
3
- * Origem do item das listas em popup: o `Menu.Item` e o `Autocomplete.Item` copiam estas classes
4
- * (tabela no README de `collections`). Uma mudança aqui vale para as cópias na mesma rodada.
3
+ * Origem do item das listas em popup: o `Menu.Item`, o `Autocomplete.Item`, o `Command.Item` e o
4
+ * item do `AsyncSelect` copiam estas classes. Uma mudança aqui vale para as cópias na mesma
5
+ * rodada.
5
6
  *
6
7
  * O realce é um `::before` recuado 4px das laterais, atrás do texto (`z-[-1]`, com o item em
7
8
  * `z-0`): o fundo não encosta na borda do popup, e o item continua com a largura toda, com a
@@ -2,8 +2,9 @@ import { selectDefaultVariants } from "./use-select-context.js";
2
2
  import { cva } from "class-variance-authority";
3
3
  //#region src/components/collections/select/select-item-variants.ts
4
4
  /**
5
- * Origem do item das listas em popup: o `Menu.Item` e o `Autocomplete.Item` copiam estas classes
6
- * (tabela no README de `collections`). Uma mudança aqui vale para as cópias na mesma rodada.
5
+ * Origem do item das listas em popup: o `Menu.Item`, o `Autocomplete.Item`, o `Command.Item` e o
6
+ * item do `AsyncSelect` copiam estas classes. Uma mudança aqui vale para as cópias na mesma
7
+ * rodada.
7
8
  *
8
9
  * O realce é um `::before` recuado 4px das laterais, atrás do texto (`z-[-1]`, com o item em
9
10
  * `z-0`): o fundo não encosta na borda do popup, e o item continua com a largura toda, com a
@@ -1 +1 @@
1
- {"version":3,"file":"select-item-variants.js","names":[],"sources":["../../../../src/components/collections/select/select-item-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport { selectDefaultVariants } from './use-select-context';\n\n/**\n * Origem do item das listas em popup: o `Menu.Item` e o `Autocomplete.Item` copiam estas classes\n * (tabela no README de `collections`). Uma mudança aqui vale para as cópias na mesma rodada.\n *\n * O realce é um `::before` recuado 4px das laterais, atrás do texto (`z-[-1]`, com o item em\n * `z-0`): o fundo não encosta na borda do popup, e o item continua com a largura toda, com a\n * área de clique indo até a borda.\n */\nexport const selectItemVariants = cva(\n [\n 'grid',\n 'items-start', // Texto que quebra a linha mantém o check na primeira\n\n 'relative',\n\n 'rounded',\n\n 'cursor-default',\n 'select-none',\n 'outline-none',\n\n 'data-disabled:pointer-events-none',\n 'data-disabled:opacity-50',\n\n 'data-highlighted:z-0',\n 'data-highlighted:before:absolute',\n 'data-highlighted:before:inset-x-1',\n 'data-highlighted:before:inset-y-0',\n 'data-highlighted:before:z-[-1]',\n 'data-highlighted:before:rounded',\n 'data-highlighted:before:content-[\"\"]',\n // Só com hover: no toque o realce fica no último item tocado e, com `multiple` (popup aberto),\n // parece mais selecionado que os outros.\n '[@media(hover:hover)]:data-highlighted:before:bg-gray-4',\n ],\n {\n variants: {\n size: {\n '2xs': [\n 'grid-cols-[0.75rem_1fr]',\n\n 'px-2',\n 'gap-1',\n 'py-1',\n 'pointer-coarse:py-2',\n\n 'text-xs',\n ],\n xs: [\n 'grid-cols-[0.75rem_1fr]',\n\n 'px-2',\n 'gap-1',\n 'py-1.25',\n\n 'pointer-coarse:py-2',\n\n 'text-xs',\n ],\n sm: [\n 'grid-cols-[0.875rem_1fr]',\n\n 'px-2.5',\n 'gap-2',\n 'py-1.25',\n\n 'pointer-coarse:py-2',\n\n 'text-sm',\n ],\n md: [\n 'grid-cols-[0.875rem_1fr]',\n\n 'px-3',\n 'gap-2',\n 'py-1.75',\n\n 'pointer-coarse:py-3',\n\n 'text-sm',\n ],\n lg: [\n 'grid-cols-[1rem_1fr]',\n\n 'px-4',\n 'gap-3',\n 'py-1.75',\n\n 'pointer-coarse:py-3',\n\n 'text-base',\n ],\n xl: [\n 'grid-cols-[1rem_1fr]',\n\n 'px-4.5',\n 'gap-3',\n 'py-2.25',\n\n 'pointer-coarse:py-4',\n\n 'text-base',\n ],\n '2xl': [\n 'grid-cols-[1.125rem_1fr]',\n\n 'px-5',\n 'gap-3',\n 'py-4',\n 'pointer-coarse:py-4',\n\n 'text-lg',\n ],\n },\n },\n defaultVariants: {\n size: selectDefaultVariants.size,\n },\n },\n);\n"],"mappings":";;;;;;;;;;;AAWA,MAAa,qBAAqB,IAChC;CACE;CACA;CAEA;CAEA;CAEA;CACA;CACA;CAEA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CACA;CAGA;AACF,GACA;CACE,UAAU,EACR,MAAM;EACJ,OAAO;GACL;GAEA;GACA;GACA;GACA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,OAAO;GACL;GAEA;GACA;GACA;GACA;GAEA;EACF;CACF,EACF;CACA,iBAAiB,EACf,MAAM,sBAAsB,KAC9B;AACF,CACF"}
1
+ {"version":3,"file":"select-item-variants.js","names":[],"sources":["../../../../src/components/collections/select/select-item-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport { selectDefaultVariants } from './use-select-context';\n\n/**\n * Origem do item das listas em popup: o `Menu.Item`, o `Autocomplete.Item`, o `Command.Item` e o\n * item do `AsyncSelect` copiam estas classes. Uma mudança aqui vale para as cópias na mesma\n * rodada.\n *\n * O realce é um `::before` recuado 4px das laterais, atrás do texto (`z-[-1]`, com o item em\n * `z-0`): o fundo não encosta na borda do popup, e o item continua com a largura toda, com a\n * área de clique indo até a borda.\n */\nexport const selectItemVariants = cva(\n [\n 'grid',\n 'items-start', // Texto que quebra a linha mantém o check na primeira\n\n 'relative',\n\n 'rounded',\n\n 'cursor-default',\n 'select-none',\n 'outline-none',\n\n 'data-disabled:pointer-events-none',\n 'data-disabled:opacity-50',\n\n 'data-highlighted:z-0',\n 'data-highlighted:before:absolute',\n 'data-highlighted:before:inset-x-1',\n 'data-highlighted:before:inset-y-0',\n 'data-highlighted:before:z-[-1]',\n 'data-highlighted:before:rounded',\n 'data-highlighted:before:content-[\"\"]',\n // Só com hover: no toque o realce fica no último item tocado e, com `multiple` (popup aberto),\n // parece mais selecionado que os outros.\n '[@media(hover:hover)]:data-highlighted:before:bg-gray-4',\n ],\n {\n variants: {\n size: {\n '2xs': [\n 'grid-cols-[0.75rem_1fr]',\n\n 'px-2',\n 'gap-1',\n 'py-1',\n 'pointer-coarse:py-2',\n\n 'text-xs',\n ],\n xs: [\n 'grid-cols-[0.75rem_1fr]',\n\n 'px-2',\n 'gap-1',\n 'py-1.25',\n\n 'pointer-coarse:py-2',\n\n 'text-xs',\n ],\n sm: [\n 'grid-cols-[0.875rem_1fr]',\n\n 'px-2.5',\n 'gap-2',\n 'py-1.25',\n\n 'pointer-coarse:py-2',\n\n 'text-sm',\n ],\n md: [\n 'grid-cols-[0.875rem_1fr]',\n\n 'px-3',\n 'gap-2',\n 'py-1.75',\n\n 'pointer-coarse:py-3',\n\n 'text-sm',\n ],\n lg: [\n 'grid-cols-[1rem_1fr]',\n\n 'px-4',\n 'gap-3',\n 'py-1.75',\n\n 'pointer-coarse:py-3',\n\n 'text-base',\n ],\n xl: [\n 'grid-cols-[1rem_1fr]',\n\n 'px-4.5',\n 'gap-3',\n 'py-2.25',\n\n 'pointer-coarse:py-4',\n\n 'text-base',\n ],\n '2xl': [\n 'grid-cols-[1.125rem_1fr]',\n\n 'px-5',\n 'gap-3',\n 'py-4',\n 'pointer-coarse:py-4',\n\n 'text-lg',\n ],\n },\n },\n defaultVariants: {\n size: selectDefaultVariants.size,\n },\n },\n);\n"],"mappings":";;;;;;;;;;;;AAYA,MAAa,qBAAqB,IAChC;CACE;CACA;CAEA;CAEA;CAEA;CACA;CACA;CAEA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CACA;CAGA;AACF,GACA;CACE,UAAU,EACR,MAAM;EACJ,OAAO;GACL;GAEA;GACA;GACA;GACA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,IAAI;GACF;GAEA;GACA;GACA;GAEA;GAEA;EACF;EACA,OAAO;GACL;GAEA;GACA;GACA;GACA;GAEA;EACF;CACF,EACF;CACA,iBAAiB,EACf,MAAM,sBAAsB,KAC9B;AACF,CACF"}
@@ -1,7 +1,7 @@
1
1
  //#region src/components/collections/select/select-popup-variants.d.ts
2
2
  /**
3
3
  * Cópia de `popoverPopupVariants`, a origem da superfície dos popups, onde fundo, contorno, sombra,
4
- * cor do texto e animação estão explicados (tabela no README de `overlays`). As diferenças:
4
+ * cor do texto e animação estão explicados. As diferenças:
5
5
  * - largura a partir da do trigger (`--anchor-width`) e altura até `max-h-80`, sem animação de
6
6
  * tamanho;
7
7
  * - o tamanho do texto vem dos itens, e não do popup;
@@ -3,7 +3,7 @@ import { cva } from "class-variance-authority";
3
3
  //#region src/components/collections/select/select-popup-variants.ts
4
4
  /**
5
5
  * Cópia de `popoverPopupVariants`, a origem da superfície dos popups, onde fundo, contorno, sombra,
6
- * cor do texto e animação estão explicados (tabela no README de `overlays`). As diferenças:
6
+ * cor do texto e animação estão explicados. As diferenças:
7
7
  * - largura a partir da do trigger (`--anchor-width`) e altura até `max-h-80`, sem animação de
8
8
  * tamanho;
9
9
  * - o tamanho do texto vem dos itens, e não do popup;
@@ -1 +1 @@
1
- {"version":3,"file":"select-popup-variants.js","names":[],"sources":["../../../../src/components/collections/select/select-popup-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport { selectDefaultVariants } from './use-select-context';\n\n/**\n * Cópia de `popoverPopupVariants`, a origem da superfície dos popups, onde fundo, contorno, sombra,\n * cor do texto e animação estão explicados (tabela no README de `overlays`). As diferenças:\n * - largura a partir da do trigger (`--anchor-width`) e altura até `max-h-80`, sem animação de\n * tamanho;\n * - o tamanho do texto vem dos itens, e não do popup;\n * - o modo sobreposto, abaixo.\n *\n * No modo sobreposto (`alignItemWithTrigger`, `data-side=\"none\"`) o popup abre sem animação e\n * cresce, por `size`, a diferença entre o recuo do texto do item (padding + coluna do check + gap)\n * e o padding do trigger. É o que põe o texto do item escolhido exatamente sobre o do valor; mudar\n * o espaçamento de um dos dois pede recalcular esta soma.\n *\n * A altura máxima fica no popup, e não na lista. No modo sobreposto, o Base UI lê esse\n * `max-height` em px e cresce o popup até ele enquanto se rola, com a lista em `max-height: 100%`.\n * Fora dele, o popup é flex em coluna, e a lista (`min-h-0`) encolhe até caber.\n */\nexport const selectPopupVariants = cva(\n [\n 'group',\n\n 'flex',\n 'flex-col',\n\n 'max-h-80',\n 'min-w-(--anchor-width)', // Largura mínima igual ao elemento âncora, permite crescer para conteúdo maior\n // Cresce com o conteúdo até 20rem (ou a largura do trigger, se maior) e aí quebra a linha;\n // nunca passa da tela.\n 'max-w-[min(calc(100dvw-1rem),max(var(--anchor-width),--spacing(80)))]',\n\n 'rounded-md',\n 'corner-squircle',\n 'outline-1',\n 'outline-gray-6',\n\n 'bg-white',\n 'dark:bg-gray-2',\n\n 'shadow-md',\n 'shadow-black/12',\n 'dark:shadow-none',\n\n // O popup vai para o `body` pelo portal: sem cor própria, o texto herdaria a do navegador.\n 'text-gray-12',\n\n 'not-motion-reduced:origin-(--transform-origin)',\n 'not-motion-reduced:transition-[scale,opacity]',\n 'not-motion-reduced:ease-enter',\n 'not-motion-reduced:duration-150',\n\n 'not-motion-reduced:data-starting-style:scale-95',\n 'not-motion-reduced:data-ending-style:scale-95',\n 'not-motion-reduced:data-ending-style:ease-exit',\n 'not-motion-reduced:data-ending-style:duration-100',\n 'data-starting-style:opacity-0',\n 'data-ending-style:opacity-0',\n\n 'data-[side=none]:transition-none',\n 'data-[side=none]:data-starting-style:scale-100',\n 'data-[side=none]:data-starting-style:opacity-100',\n ],\n {\n variants: {\n size: {\n '2xs': ['data-[side=none]:min-w-[calc(var(--anchor-width)+1rem)]'],\n xs: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1rem)]'],\n sm: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.375rem)]'],\n md: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.375rem)]'],\n lg: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.75rem)]'],\n xl: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.75rem)]'],\n '2xl': ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.875rem)]'],\n },\n },\n defaultVariants: {\n size: selectDefaultVariants.size,\n },\n },\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAoBA,MAAa,sBAAsB,IACjC;CACE;CAEA;CACA;CAEA;CACA;CAGA;CAEA;CACA;CACA;CACA;CAEA;CACA;CAEA;CACA;CACA;CAGA;CAEA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;AACF,GACA;CACE,UAAU,EACR,MAAM;EACJ,OAAO,CAAC,yDAAyD;EACjE,IAAI,CAAC,yDAAyD;EAC9D,IAAI,CAAC,6DAA6D;EAClE,IAAI,CAAC,6DAA6D;EAClE,IAAI,CAAC,4DAA4D;EACjE,IAAI,CAAC,4DAA4D;EACjE,OAAO,CAAC,6DAA6D;CACvE,EACF;CACA,iBAAiB,EACf,MAAM,sBAAsB,KAC9B;AACF,CACF"}
1
+ {"version":3,"file":"select-popup-variants.js","names":[],"sources":["../../../../src/components/collections/select/select-popup-variants.ts"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport { selectDefaultVariants } from './use-select-context';\n\n/**\n * Cópia de `popoverPopupVariants`, a origem da superfície dos popups, onde fundo, contorno, sombra,\n * cor do texto e animação estão explicados. As diferenças:\n * - largura a partir da do trigger (`--anchor-width`) e altura até `max-h-80`, sem animação de\n * tamanho;\n * - o tamanho do texto vem dos itens, e não do popup;\n * - o modo sobreposto, abaixo.\n *\n * No modo sobreposto (`alignItemWithTrigger`, `data-side=\"none\"`) o popup abre sem animação e\n * cresce, por `size`, a diferença entre o recuo do texto do item (padding + coluna do check + gap)\n * e o padding do trigger. É o que põe o texto do item escolhido exatamente sobre o do valor; mudar\n * o espaçamento de um dos dois pede recalcular esta soma.\n *\n * A altura máxima fica no popup, e não na lista. No modo sobreposto, o Base UI lê esse\n * `max-height` em px e cresce o popup até ele enquanto se rola, com a lista em `max-height: 100%`.\n * Fora dele, o popup é flex em coluna, e a lista (`min-h-0`) encolhe até caber.\n */\nexport const selectPopupVariants = cva(\n [\n 'group',\n\n 'flex',\n 'flex-col',\n\n 'max-h-80',\n 'min-w-(--anchor-width)', // Largura mínima igual ao elemento âncora, permite crescer para conteúdo maior\n // Cresce com o conteúdo até 20rem (ou a largura do trigger, se maior) e aí quebra a linha;\n // nunca passa da tela.\n 'max-w-[min(calc(100dvw-1rem),max(var(--anchor-width),--spacing(80)))]',\n\n 'rounded-md',\n 'corner-squircle',\n 'outline-1',\n 'outline-gray-6',\n\n 'bg-white',\n 'dark:bg-gray-2',\n\n 'shadow-md',\n 'shadow-black/12',\n 'dark:shadow-none',\n\n // O popup vai para o `body` pelo portal: sem cor própria, o texto herdaria a do navegador.\n 'text-gray-12',\n\n 'not-motion-reduced:origin-(--transform-origin)',\n 'not-motion-reduced:transition-[scale,opacity]',\n 'not-motion-reduced:ease-enter',\n 'not-motion-reduced:duration-150',\n\n 'not-motion-reduced:data-starting-style:scale-95',\n 'not-motion-reduced:data-ending-style:scale-95',\n 'not-motion-reduced:data-ending-style:ease-exit',\n 'not-motion-reduced:data-ending-style:duration-100',\n 'data-starting-style:opacity-0',\n 'data-ending-style:opacity-0',\n\n 'data-[side=none]:transition-none',\n 'data-[side=none]:data-starting-style:scale-100',\n 'data-[side=none]:data-starting-style:opacity-100',\n ],\n {\n variants: {\n size: {\n '2xs': ['data-[side=none]:min-w-[calc(var(--anchor-width)+1rem)]'],\n xs: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1rem)]'],\n sm: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.375rem)]'],\n md: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.375rem)]'],\n lg: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.75rem)]'],\n xl: ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.75rem)]'],\n '2xl': ['data-[side=none]:min-w-[calc(var(--anchor-width)+1.875rem)]'],\n },\n },\n defaultVariants: {\n size: selectDefaultVariants.size,\n },\n },\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAoBA,MAAa,sBAAsB,IACjC;CACE;CAEA;CACA;CAEA;CACA;CAGA;CAEA;CACA;CACA;CACA;CAEA;CACA;CAEA;CACA;CACA;CAGA;CAEA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;AACF,GACA;CACE,UAAU,EACR,MAAM;EACJ,OAAO,CAAC,yDAAyD;EACjE,IAAI,CAAC,yDAAyD;EAC9D,IAAI,CAAC,6DAA6D;EAClE,IAAI,CAAC,6DAA6D;EAClE,IAAI,CAAC,4DAA4D;EACjE,IAAI,CAAC,4DAA4D;EACjE,OAAO,CAAC,6DAA6D;CACvE,EACF;CACA,iBAAiB,EACf,MAAM,sBAAsB,KAC9B;AACF,CACF"}