@plenustech/design-system 0.2.2 → 0.2.4

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 (508) hide show
  1. package/dist/components/actions/ButtonTile/ButtonTile.cjs +2 -0
  2. package/dist/components/actions/ButtonTile/ButtonTile.cjs.map +1 -0
  3. package/dist/components/actions/ButtonTile/ButtonTile.js +23 -0
  4. package/dist/components/actions/ButtonTile/ButtonTile.js.map +1 -0
  5. package/dist/components/actions/ButtonTile/ButtonTile.module.css.cjs +2 -0
  6. package/dist/components/actions/ButtonTile/ButtonTile.module.css.cjs.map +1 -0
  7. package/dist/components/actions/ButtonTile/ButtonTile.module.css.js +16 -0
  8. package/dist/components/actions/ButtonTile/ButtonTile.module.css.js.map +1 -0
  9. package/dist/components/actions/Toolbar/Toolbar.cjs +2 -0
  10. package/dist/components/actions/Toolbar/Toolbar.cjs.map +1 -0
  11. package/dist/components/actions/Toolbar/Toolbar.js +118 -0
  12. package/dist/components/actions/Toolbar/Toolbar.js.map +1 -0
  13. package/dist/components/actions/Toolbar/Toolbar.module.css.cjs +2 -0
  14. package/dist/components/actions/Toolbar/Toolbar.module.css.cjs.map +1 -0
  15. package/dist/components/actions/Toolbar/Toolbar.module.css.js +20 -0
  16. package/dist/components/actions/Toolbar/Toolbar.module.css.js.map +1 -0
  17. package/dist/components/charts/ChartArea/ChartArea.cjs +1 -1
  18. package/dist/components/charts/ChartArea/ChartArea.cjs.map +1 -1
  19. package/dist/components/charts/ChartArea/ChartArea.js +196 -148
  20. package/dist/components/charts/ChartArea/ChartArea.js.map +1 -1
  21. package/dist/components/charts/ChartArea/ChartArea.module.css.cjs +1 -1
  22. package/dist/components/charts/ChartArea/ChartArea.module.css.js +12 -10
  23. package/dist/components/charts/ChartArea/ChartArea.module.css.js.map +1 -1
  24. package/dist/components/charts/ChartBar/ChartBar.cjs +1 -1
  25. package/dist/components/charts/ChartBar/ChartBar.cjs.map +1 -1
  26. package/dist/components/charts/ChartBar/ChartBar.js +168 -145
  27. package/dist/components/charts/ChartBar/ChartBar.js.map +1 -1
  28. package/dist/components/charts/ChartBar/ChartBar.module.css.cjs +1 -1
  29. package/dist/components/charts/ChartBar/ChartBar.module.css.js +12 -10
  30. package/dist/components/charts/ChartBar/ChartBar.module.css.js.map +1 -1
  31. package/dist/components/charts/ChartCombo/ChartCombo.cjs +1 -1
  32. package/dist/components/charts/ChartCombo/ChartCombo.cjs.map +1 -1
  33. package/dist/components/charts/ChartCombo/ChartCombo.js +179 -154
  34. package/dist/components/charts/ChartCombo/ChartCombo.js.map +1 -1
  35. package/dist/components/charts/ChartCombo/ChartCombo.module.css.cjs +1 -1
  36. package/dist/components/charts/ChartCombo/ChartCombo.module.css.js +16 -14
  37. package/dist/components/charts/ChartCombo/ChartCombo.module.css.js.map +1 -1
  38. package/dist/components/charts/ChartDonut/ChartDonut.cjs +1 -1
  39. package/dist/components/charts/ChartDonut/ChartDonut.cjs.map +1 -1
  40. package/dist/components/charts/ChartDonut/ChartDonut.js +72 -61
  41. package/dist/components/charts/ChartDonut/ChartDonut.js.map +1 -1
  42. package/dist/components/charts/ChartGauge/ChartGauge.cjs +2 -0
  43. package/dist/components/charts/ChartGauge/ChartGauge.cjs.map +1 -0
  44. package/dist/components/charts/ChartGauge/ChartGauge.js +307 -0
  45. package/dist/components/charts/ChartGauge/ChartGauge.js.map +1 -0
  46. package/dist/components/charts/ChartGauge/ChartGauge.module.css.cjs +2 -0
  47. package/dist/components/charts/ChartGauge/ChartGauge.module.css.cjs.map +1 -0
  48. package/dist/components/charts/ChartGauge/ChartGauge.module.css.js +76 -0
  49. package/dist/components/charts/ChartGauge/ChartGauge.module.css.js.map +1 -0
  50. package/dist/components/charts/ChartGauge/gaugeLayout.cjs +2 -0
  51. package/dist/components/charts/ChartGauge/gaugeLayout.cjs.map +1 -0
  52. package/dist/components/charts/ChartGauge/gaugeLayout.js +107 -0
  53. package/dist/components/charts/ChartGauge/gaugeLayout.js.map +1 -0
  54. package/dist/components/charts/ChartGauge/gaugeReading.cjs +2 -0
  55. package/dist/components/charts/ChartGauge/gaugeReading.cjs.map +1 -0
  56. package/dist/components/charts/ChartGauge/gaugeReading.js +112 -0
  57. package/dist/components/charts/ChartGauge/gaugeReading.js.map +1 -0
  58. package/dist/components/charts/ChartGauge/gaugeScale.cjs +2 -0
  59. package/dist/components/charts/ChartGauge/gaugeScale.cjs.map +1 -0
  60. package/dist/components/charts/ChartGauge/gaugeScale.js +57 -0
  61. package/dist/components/charts/ChartGauge/gaugeScale.js.map +1 -0
  62. package/dist/components/charts/ChartLine/ChartLine.cjs +1 -1
  63. package/dist/components/charts/ChartLine/ChartLine.cjs.map +1 -1
  64. package/dist/components/charts/ChartLine/ChartLine.js +196 -143
  65. package/dist/components/charts/ChartLine/ChartLine.js.map +1 -1
  66. package/dist/components/charts/ChartLine/ChartLine.module.css.cjs +1 -1
  67. package/dist/components/charts/ChartLine/ChartLine.module.css.js +16 -14
  68. package/dist/components/charts/ChartLine/ChartLine.module.css.js.map +1 -1
  69. package/dist/components/charts/ChartMap/ChartMap.cjs +2 -0
  70. package/dist/components/charts/ChartMap/ChartMap.cjs.map +1 -0
  71. package/dist/components/charts/ChartMap/ChartMap.js +523 -0
  72. package/dist/components/charts/ChartMap/ChartMap.js.map +1 -0
  73. package/dist/components/charts/ChartMap/ChartMap.module.css.cjs +2 -0
  74. package/dist/components/charts/ChartMap/ChartMap.module.css.cjs.map +1 -0
  75. package/dist/components/charts/ChartMap/ChartMap.module.css.js +124 -0
  76. package/dist/components/charts/ChartMap/ChartMap.module.css.js.map +1 -0
  77. package/dist/components/charts/ChartMap/ChartMapLegend.cjs +2 -0
  78. package/dist/components/charts/ChartMap/ChartMapLegend.cjs.map +1 -0
  79. package/dist/components/charts/ChartMap/ChartMapLegend.js +102 -0
  80. package/dist/components/charts/ChartMap/ChartMapLegend.js.map +1 -0
  81. package/dist/components/charts/ChartMap/ChartMapTable.cjs +2 -0
  82. package/dist/components/charts/ChartMap/ChartMapTable.cjs.map +1 -0
  83. package/dist/components/charts/ChartMap/ChartMapTable.js +118 -0
  84. package/dist/components/charts/ChartMap/ChartMapTable.js.map +1 -0
  85. package/dist/components/charts/ChartMap/mapGeometry.cjs +2 -0
  86. package/dist/components/charts/ChartMap/mapGeometry.cjs.map +1 -0
  87. package/dist/components/charts/ChartMap/mapGeometry.js +113 -0
  88. package/dist/components/charts/ChartMap/mapGeometry.js.map +1 -0
  89. package/dist/components/charts/ChartMap/mapLabels.cjs +2 -0
  90. package/dist/components/charts/ChartMap/mapLabels.cjs.map +1 -0
  91. package/dist/components/charts/ChartMap/mapLabels.js +80 -0
  92. package/dist/components/charts/ChartMap/mapLabels.js.map +1 -0
  93. package/dist/components/charts/ChartMap/mapScales.cjs +2 -0
  94. package/dist/components/charts/ChartMap/mapScales.cjs.map +1 -0
  95. package/dist/components/charts/ChartMap/mapScales.js +131 -0
  96. package/dist/components/charts/ChartMap/mapScales.js.map +1 -0
  97. package/dist/components/charts/ChartMap/polylabel.cjs +2 -0
  98. package/dist/components/charts/ChartMap/polylabel.cjs.map +1 -0
  99. package/dist/components/charts/ChartMap/polylabel.js +50 -0
  100. package/dist/components/charts/ChartMap/polylabel.js.map +1 -0
  101. package/dist/components/charts/ChartPie/ChartPie.cjs +1 -1
  102. package/dist/components/charts/ChartPie/ChartPie.cjs.map +1 -1
  103. package/dist/components/charts/ChartPie/ChartPie.js +71 -60
  104. package/dist/components/charts/ChartPie/ChartPie.js.map +1 -1
  105. package/dist/components/charts/ChartRadial/ChartRadial.cjs +1 -1
  106. package/dist/components/charts/ChartRadial/ChartRadial.cjs.map +1 -1
  107. package/dist/components/charts/ChartRadial/ChartRadial.js +101 -84
  108. package/dist/components/charts/ChartRadial/ChartRadial.js.map +1 -1
  109. package/dist/components/charts/ChartSankey/ChartSankey.cjs +1 -1
  110. package/dist/components/charts/ChartSankey/ChartSankey.cjs.map +1 -1
  111. package/dist/components/charts/ChartSankey/ChartSankey.js +148 -125
  112. package/dist/components/charts/ChartSankey/ChartSankey.js.map +1 -1
  113. package/dist/components/charts/ChartScatter/ChartScatter.cjs +1 -1
  114. package/dist/components/charts/ChartScatter/ChartScatter.cjs.map +1 -1
  115. package/dist/components/charts/ChartScatter/ChartScatter.js +138 -106
  116. package/dist/components/charts/ChartScatter/ChartScatter.js.map +1 -1
  117. package/dist/components/charts/ChartScatter/ChartScatter.module.css.cjs +1 -1
  118. package/dist/components/charts/ChartScatter/ChartScatter.module.css.js +3 -3
  119. package/dist/components/charts/ChartSunburst/ChartSunburst.cjs +1 -1
  120. package/dist/components/charts/ChartSunburst/ChartSunburst.cjs.map +1 -1
  121. package/dist/components/charts/ChartSunburst/ChartSunburst.js +115 -100
  122. package/dist/components/charts/ChartSunburst/ChartSunburst.js.map +1 -1
  123. package/dist/components/charts/ChartTimeline/ChartTimeline.cjs +2 -0
  124. package/dist/components/charts/ChartTimeline/ChartTimeline.cjs.map +1 -0
  125. package/dist/components/charts/ChartTimeline/ChartTimeline.js +703 -0
  126. package/dist/components/charts/ChartTimeline/ChartTimeline.js.map +1 -0
  127. package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.cjs +2 -0
  128. package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.cjs.map +1 -0
  129. package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.js +124 -0
  130. package/dist/components/charts/ChartTimeline/ChartTimeline.module.css.js.map +1 -0
  131. package/dist/components/charts/ChartTimeline/ChartTimelineTable.cjs +2 -0
  132. package/dist/components/charts/ChartTimeline/ChartTimelineTable.cjs.map +1 -0
  133. package/dist/components/charts/ChartTimeline/ChartTimelineTable.js +42 -0
  134. package/dist/components/charts/ChartTimeline/ChartTimelineTable.js.map +1 -0
  135. package/dist/components/charts/ChartTimeline/timelineLayout.cjs +2 -0
  136. package/dist/components/charts/ChartTimeline/timelineLayout.cjs.map +1 -0
  137. package/dist/components/charts/ChartTimeline/timelineLayout.js +109 -0
  138. package/dist/components/charts/ChartTimeline/timelineLayout.js.map +1 -0
  139. package/dist/components/charts/ChartTimeline/timelineTime.cjs +2 -0
  140. package/dist/components/charts/ChartTimeline/timelineTime.cjs.map +1 -0
  141. package/dist/components/charts/ChartTimeline/timelineTime.js +91 -0
  142. package/dist/components/charts/ChartTimeline/timelineTime.js.map +1 -0
  143. package/dist/components/charts/ChartTimeline/timelineTooltip.cjs +2 -0
  144. package/dist/components/charts/ChartTimeline/timelineTooltip.cjs.map +1 -0
  145. package/dist/components/charts/ChartTimeline/timelineTooltip.js +77 -0
  146. package/dist/components/charts/ChartTimeline/timelineTooltip.js.map +1 -0
  147. package/dist/components/charts/ChartTooltip/ChartTooltip.cjs +1 -1
  148. package/dist/components/charts/ChartTooltip/ChartTooltip.cjs.map +1 -1
  149. package/dist/components/charts/ChartTooltip/ChartTooltip.js +1 -1
  150. package/dist/components/charts/ChartTooltip/ChartTooltip.js.map +1 -1
  151. package/dist/components/charts/ChartTreemap/ChartTreemap.cjs +1 -1
  152. package/dist/components/charts/ChartTreemap/ChartTreemap.cjs.map +1 -1
  153. package/dist/components/charts/ChartTreemap/ChartTreemap.js +100 -89
  154. package/dist/components/charts/ChartTreemap/ChartTreemap.js.map +1 -1
  155. package/dist/components/charts/ChartWaterfall/ChartWaterfall.cjs +1 -1
  156. package/dist/components/charts/ChartWaterfall/ChartWaterfall.cjs.map +1 -1
  157. package/dist/components/charts/ChartWaterfall/ChartWaterfall.js +125 -105
  158. package/dist/components/charts/ChartWaterfall/ChartWaterfall.js.map +1 -1
  159. package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.cjs +1 -1
  160. package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.js +8 -6
  161. package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.js.map +1 -1
  162. package/dist/components/charts/core/CartesianFrame.cjs +1 -1
  163. package/dist/components/charts/core/CartesianFrame.cjs.map +1 -1
  164. package/dist/components/charts/core/CartesianFrame.js +61 -96
  165. package/dist/components/charts/core/CartesianFrame.js.map +1 -1
  166. package/dist/components/charts/core/Chart.module.css.cjs +1 -1
  167. package/dist/components/charts/core/Chart.module.css.js +52 -54
  168. package/dist/components/charts/core/Chart.module.css.js.map +1 -1
  169. package/dist/components/charts/core/ChartFrame.cjs +1 -1
  170. package/dist/components/charts/core/ChartFrame.cjs.map +1 -1
  171. package/dist/components/charts/core/ChartFrame.js +53 -47
  172. package/dist/components/charts/core/ChartFrame.js.map +1 -1
  173. package/dist/components/charts/core/ChartLegend.cjs +1 -1
  174. package/dist/components/charts/core/ChartLegend.cjs.map +1 -1
  175. package/dist/components/charts/core/ChartLegend.js +37 -25
  176. package/dist/components/charts/core/ChartLegend.js.map +1 -1
  177. package/dist/components/charts/core/PointBands.cjs +2 -0
  178. package/dist/components/charts/core/PointBands.cjs.map +1 -0
  179. package/dist/components/charts/core/PointBands.js +41 -0
  180. package/dist/components/charts/core/PointBands.js.map +1 -0
  181. package/dist/components/charts/core/cartesianLayout.cjs +1 -1
  182. package/dist/components/charts/core/cartesianLayout.cjs.map +1 -1
  183. package/dist/components/charts/core/cartesianLayout.js +49 -41
  184. package/dist/components/charts/core/cartesianLayout.js.map +1 -1
  185. package/dist/components/charts/core/hoverPath.cjs +2 -0
  186. package/dist/components/charts/core/hoverPath.cjs.map +1 -0
  187. package/dist/components/charts/core/hoverPath.js +7 -0
  188. package/dist/components/charts/core/hoverPath.js.map +1 -0
  189. package/dist/components/charts/core/pointLabels.cjs +2 -0
  190. package/dist/components/charts/core/pointLabels.cjs.map +1 -0
  191. package/dist/components/charts/core/pointLabels.js +12 -0
  192. package/dist/components/charts/core/pointLabels.js.map +1 -0
  193. package/dist/components/charts/core/tooltips.cjs +2 -0
  194. package/dist/components/charts/core/tooltips.cjs.map +1 -0
  195. package/dist/components/charts/core/tooltips.js +48 -0
  196. package/dist/components/charts/core/tooltips.js.map +1 -0
  197. package/dist/components/charts/core/useCartesianLayout.cjs +2 -0
  198. package/dist/components/charts/core/useCartesianLayout.cjs.map +1 -0
  199. package/dist/components/charts/core/useCartesianLayout.js +38 -0
  200. package/dist/components/charts/core/useCartesianLayout.js.map +1 -0
  201. package/dist/components/charts/core/useChartMetrics.cjs +1 -1
  202. package/dist/components/charts/core/useChartMetrics.cjs.map +1 -1
  203. package/dist/components/charts/core/useChartMetrics.js +20 -25
  204. package/dist/components/charts/core/useChartMetrics.js.map +1 -1
  205. package/dist/components/charts/core/useSeriesToggle.cjs +1 -1
  206. package/dist/components/charts/core/useSeriesToggle.cjs.map +1 -1
  207. package/dist/components/charts/core/useSeriesToggle.js +19 -12
  208. package/dist/components/charts/core/useSeriesToggle.js.map +1 -1
  209. package/dist/components/data-display/Accordion/Accordion.cjs +1 -1
  210. package/dist/components/data-display/Accordion/Accordion.cjs.map +1 -1
  211. package/dist/components/data-display/Accordion/Accordion.js +56 -46
  212. package/dist/components/data-display/Accordion/Accordion.js.map +1 -1
  213. package/dist/components/data-display/Accordion/Accordion.module.css.cjs +1 -1
  214. package/dist/components/data-display/Accordion/Accordion.module.css.js +16 -16
  215. package/dist/components/data-display/List/List.cjs.map +1 -1
  216. package/dist/components/data-display/List/List.js.map +1 -1
  217. package/dist/components/data-display/List/List.module.css.cjs +1 -1
  218. package/dist/components/data-display/List/List.module.css.js +34 -24
  219. package/dist/components/data-display/List/List.module.css.js.map +1 -1
  220. package/dist/components/data-display/List/ListingOptions.cjs +1 -1
  221. package/dist/components/data-display/List/ListingOptions.cjs.map +1 -1
  222. package/dist/components/data-display/List/ListingOptions.js +98 -74
  223. package/dist/components/data-display/List/ListingOptions.js.map +1 -1
  224. package/dist/components/data-display/List/useListing.cjs.map +1 -1
  225. package/dist/components/data-display/List/useListing.js.map +1 -1
  226. package/dist/components/data-display/SortableList/SortableList.cjs +2 -0
  227. package/dist/components/data-display/SortableList/SortableList.cjs.map +1 -0
  228. package/dist/components/data-display/SortableList/SortableList.js +168 -0
  229. package/dist/components/data-display/SortableList/SortableList.js.map +1 -0
  230. package/dist/components/data-display/SortableList/SortableList.module.css.cjs +2 -0
  231. package/dist/components/data-display/SortableList/SortableList.module.css.cjs.map +1 -0
  232. package/dist/components/data-display/SortableList/SortableList.module.css.js +34 -0
  233. package/dist/components/data-display/SortableList/SortableList.module.css.js.map +1 -0
  234. package/dist/components/data-display/Table/Table.cjs +1 -1
  235. package/dist/components/data-display/Table/Table.cjs.map +1 -1
  236. package/dist/components/data-display/Table/Table.js +86 -85
  237. package/dist/components/data-display/Table/Table.js.map +1 -1
  238. package/dist/components/data-display/Table/Table.module.css.cjs +1 -1
  239. package/dist/components/data-display/Table/Table.module.css.js +50 -51
  240. package/dist/components/data-display/Table/Table.module.css.js.map +1 -1
  241. package/dist/components/data-display/Tag/Tag.cjs +2 -0
  242. package/dist/components/data-display/Tag/Tag.cjs.map +1 -0
  243. package/dist/components/data-display/Tag/Tag.js +50 -0
  244. package/dist/components/data-display/Tag/Tag.js.map +1 -0
  245. package/dist/components/data-display/Tag/Tag.module.css.cjs +2 -0
  246. package/dist/components/data-display/Tag/Tag.module.css.cjs.map +1 -0
  247. package/dist/components/data-display/Tag/Tag.module.css.js +22 -0
  248. package/dist/components/data-display/Tag/Tag.module.css.js.map +1 -0
  249. package/dist/components/data-display/Timeline/Timeline.cjs +2 -0
  250. package/dist/components/data-display/Timeline/Timeline.cjs.map +1 -0
  251. package/dist/components/data-display/Timeline/Timeline.js +31 -0
  252. package/dist/components/data-display/Timeline/Timeline.js.map +1 -0
  253. package/dist/components/data-display/Timeline/Timeline.module.css.cjs +2 -0
  254. package/dist/components/data-display/Timeline/Timeline.module.css.cjs.map +1 -0
  255. package/dist/components/data-display/Timeline/Timeline.module.css.js +30 -0
  256. package/dist/components/data-display/Timeline/Timeline.module.css.js.map +1 -0
  257. package/dist/components/feedback/Skeleton/Skeleton.cjs +2 -0
  258. package/dist/components/feedback/Skeleton/Skeleton.cjs.map +1 -0
  259. package/dist/components/feedback/Skeleton/Skeleton.js +17 -0
  260. package/dist/components/feedback/Skeleton/Skeleton.js.map +1 -0
  261. package/dist/components/feedback/Skeleton/Skeleton.module.css.cjs +2 -0
  262. package/dist/components/feedback/Skeleton/Skeleton.module.css.cjs.map +1 -0
  263. package/dist/components/feedback/Skeleton/Skeleton.module.css.js +15 -0
  264. package/dist/components/feedback/Skeleton/Skeleton.module.css.js.map +1 -0
  265. package/dist/components/feedback/Toast/Toast.module.css.cjs +2 -0
  266. package/dist/components/feedback/Toast/Toast.module.css.cjs.map +1 -0
  267. package/dist/components/feedback/Toast/Toast.module.css.js +31 -0
  268. package/dist/components/feedback/Toast/Toast.module.css.js.map +1 -0
  269. package/dist/components/feedback/Toast/ToastRegion.cjs +2 -0
  270. package/dist/components/feedback/Toast/ToastRegion.cjs.map +1 -0
  271. package/dist/components/feedback/Toast/ToastRegion.js +62 -0
  272. package/dist/components/feedback/Toast/ToastRegion.js.map +1 -0
  273. package/dist/components/feedback/Toast/toastStore.cjs +2 -0
  274. package/dist/components/feedback/Toast/toastStore.cjs.map +1 -0
  275. package/dist/components/feedback/Toast/toastStore.js +33 -0
  276. package/dist/components/feedback/Toast/toastStore.js.map +1 -0
  277. package/dist/components/forms/Checkbox/Checkbox.cjs +1 -1
  278. package/dist/components/forms/Checkbox/Checkbox.cjs.map +1 -1
  279. package/dist/components/forms/Checkbox/Checkbox.js +43 -31
  280. package/dist/components/forms/Checkbox/Checkbox.js.map +1 -1
  281. package/dist/components/forms/Checkbox/Checkbox.module.css.cjs +1 -1
  282. package/dist/components/forms/Checkbox/Checkbox.module.css.js +1 -1
  283. package/dist/components/forms/CheckboxGroup/CheckboxGroup.cjs +2 -0
  284. package/dist/components/forms/CheckboxGroup/CheckboxGroup.cjs.map +1 -0
  285. package/dist/components/forms/CheckboxGroup/CheckboxGroup.js +54 -0
  286. package/dist/components/forms/CheckboxGroup/CheckboxGroup.js.map +1 -0
  287. package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.cjs +2 -0
  288. package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.cjs.map +1 -0
  289. package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.js +22 -0
  290. package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.js.map +1 -0
  291. package/dist/components/forms/ColorPicker/ColorPicker.cjs +2 -0
  292. package/dist/components/forms/ColorPicker/ColorPicker.cjs.map +1 -0
  293. package/dist/components/forms/ColorPicker/ColorPicker.js +57 -0
  294. package/dist/components/forms/ColorPicker/ColorPicker.js.map +1 -0
  295. package/dist/components/forms/ColorPicker/ColorPicker.module.css.cjs +2 -0
  296. package/dist/components/forms/ColorPicker/ColorPicker.module.css.cjs.map +1 -0
  297. package/dist/components/forms/ColorPicker/ColorPicker.module.css.js +22 -0
  298. package/dist/components/forms/ColorPicker/ColorPicker.module.css.js.map +1 -0
  299. package/dist/components/forms/ComboBox/ComboBox.cjs.map +1 -1
  300. package/dist/components/forms/ComboBox/ComboBox.js.map +1 -1
  301. package/dist/components/forms/ComboBox/ComboBox.module.css.cjs +1 -1
  302. package/dist/components/forms/ComboBox/ComboBox.module.css.js +20 -20
  303. package/dist/components/forms/Field/Field.cjs +1 -1
  304. package/dist/components/forms/Field/Field.cjs.map +1 -1
  305. package/dist/components/forms/Field/Field.js +21 -20
  306. package/dist/components/forms/Field/Field.js.map +1 -1
  307. package/dist/components/forms/Field/Field.module.css.cjs +1 -1
  308. package/dist/components/forms/Field/Field.module.css.js +18 -12
  309. package/dist/components/forms/Field/Field.module.css.js.map +1 -1
  310. package/dist/components/forms/FileUpload/FileUpload.cjs +2 -0
  311. package/dist/components/forms/FileUpload/FileUpload.cjs.map +1 -0
  312. package/dist/components/forms/FileUpload/FileUpload.js +142 -0
  313. package/dist/components/forms/FileUpload/FileUpload.js.map +1 -0
  314. package/dist/components/forms/FileUpload/FileUpload.module.css.cjs +2 -0
  315. package/dist/components/forms/FileUpload/FileUpload.module.css.cjs.map +1 -0
  316. package/dist/components/forms/FileUpload/FileUpload.module.css.js +46 -0
  317. package/dist/components/forms/FileUpload/FileUpload.module.css.js.map +1 -0
  318. package/dist/components/forms/InputPassword/InputPassword.module.css.cjs +1 -1
  319. package/dist/components/forms/InputPassword/InputPassword.module.css.js +12 -12
  320. package/dist/components/forms/InputText/InputText.cjs +1 -1
  321. package/dist/components/forms/InputText/InputText.cjs.map +1 -1
  322. package/dist/components/forms/InputText/InputText.js +55 -47
  323. package/dist/components/forms/InputText/InputText.js.map +1 -1
  324. package/dist/components/forms/InputText/InputText.module.css.cjs +1 -1
  325. package/dist/components/forms/InputText/InputText.module.css.js +10 -10
  326. package/dist/components/forms/RadioGroup/RadioGroup.module.css.cjs +1 -1
  327. package/dist/components/forms/RadioGroup/RadioGroup.module.css.js +4 -4
  328. package/dist/components/forms/SegmentedControl/SegmentedControl.cjs +2 -0
  329. package/dist/components/forms/SegmentedControl/SegmentedControl.cjs.map +1 -0
  330. package/dist/components/forms/SegmentedControl/SegmentedControl.js +52 -0
  331. package/dist/components/forms/SegmentedControl/SegmentedControl.js.map +1 -0
  332. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.cjs +2 -0
  333. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.cjs.map +1 -0
  334. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.js +22 -0
  335. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.js.map +1 -0
  336. package/dist/components/forms/Select/Select.module.css.cjs +1 -1
  337. package/dist/components/forms/Select/Select.module.css.js +13 -13
  338. package/dist/components/forms/Switch/Switch.module.css.cjs +1 -1
  339. package/dist/components/forms/Switch/Switch.module.css.js +2 -2
  340. package/dist/components/icons/icons.cjs +1 -1
  341. package/dist/components/icons/icons.cjs.map +1 -1
  342. package/dist/components/icons/icons.js +198 -40
  343. package/dist/components/icons/icons.js.map +1 -1
  344. package/dist/components/navigation/SkipLink/SkipLink.cjs +2 -0
  345. package/dist/components/navigation/SkipLink/SkipLink.cjs.map +1 -0
  346. package/dist/components/navigation/SkipLink/SkipLink.js +9 -0
  347. package/dist/components/navigation/SkipLink/SkipLink.js.map +1 -0
  348. package/dist/components/navigation/SkipLink/SkipLink.module.css.cjs +2 -0
  349. package/dist/components/navigation/SkipLink/SkipLink.module.css.cjs.map +1 -0
  350. package/dist/components/navigation/SkipLink/SkipLink.module.css.js +8 -0
  351. package/dist/components/navigation/SkipLink/SkipLink.module.css.js.map +1 -0
  352. package/dist/components/navigation/Steps/Steps.cjs +2 -0
  353. package/dist/components/navigation/Steps/Steps.cjs.map +1 -0
  354. package/dist/components/navigation/Steps/Steps.js +30 -0
  355. package/dist/components/navigation/Steps/Steps.js.map +1 -0
  356. package/dist/components/navigation/Steps/Steps.module.css.cjs +2 -0
  357. package/dist/components/navigation/Steps/Steps.module.css.cjs.map +1 -0
  358. package/dist/components/navigation/Steps/Steps.module.css.js +26 -0
  359. package/dist/components/navigation/Steps/Steps.module.css.js.map +1 -0
  360. package/dist/components/navigation/Tabs/Tabs.cjs +1 -1
  361. package/dist/components/navigation/Tabs/Tabs.cjs.map +1 -1
  362. package/dist/components/navigation/Tabs/Tabs.js +88 -79
  363. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  364. package/dist/components/navigation/Tabs/Tabs.module.css.cjs +1 -1
  365. package/dist/components/navigation/Tabs/Tabs.module.css.js +18 -14
  366. package/dist/components/navigation/Tabs/Tabs.module.css.js.map +1 -1
  367. package/dist/components/navigation/TabsNav/TabsNav.cjs +2 -0
  368. package/dist/components/navigation/TabsNav/TabsNav.cjs.map +1 -0
  369. package/dist/components/navigation/TabsNav/TabsNav.js +21 -0
  370. package/dist/components/navigation/TabsNav/TabsNav.js.map +1 -0
  371. package/dist/components/navigation/TabsNav/TabsNav.module.css.cjs +2 -0
  372. package/dist/components/navigation/TabsNav/TabsNav.module.css.cjs.map +1 -0
  373. package/dist/components/navigation/TabsNav/TabsNav.module.css.js +18 -0
  374. package/dist/components/navigation/TabsNav/TabsNav.module.css.js.map +1 -0
  375. package/dist/components/overlays/Dialog/Dialog.cjs +1 -1
  376. package/dist/components/overlays/Dialog/Dialog.cjs.map +1 -1
  377. package/dist/components/overlays/Dialog/Dialog.js +11 -58
  378. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  379. package/dist/components/overlays/Dialog/DialogFrame.cjs +2 -0
  380. package/dist/components/overlays/Dialog/DialogFrame.cjs.map +1 -0
  381. package/dist/components/overlays/Dialog/DialogFrame.js +65 -0
  382. package/dist/components/overlays/Dialog/DialogFrame.js.map +1 -0
  383. package/dist/components/overlays/Drawer/Drawer.cjs +2 -0
  384. package/dist/components/overlays/Drawer/Drawer.cjs.map +1 -0
  385. package/dist/components/overlays/Drawer/Drawer.js +17 -0
  386. package/dist/components/overlays/Drawer/Drawer.js.map +1 -0
  387. package/dist/components/overlays/Drawer/Drawer.module.css.cjs +2 -0
  388. package/dist/components/overlays/Drawer/Drawer.module.css.cjs.map +1 -0
  389. package/dist/components/overlays/Drawer/Drawer.module.css.js +23 -0
  390. package/dist/components/overlays/Drawer/Drawer.module.css.js.map +1 -0
  391. package/dist/components/overlays/Menu/Menu.cjs +1 -1
  392. package/dist/components/overlays/Menu/Menu.cjs.map +1 -1
  393. package/dist/components/overlays/Menu/Menu.js +105 -86
  394. package/dist/components/overlays/Menu/Menu.js.map +1 -1
  395. package/dist/components/overlays/Menu/Menu.module.css.cjs +1 -1
  396. package/dist/components/overlays/Menu/Menu.module.css.js +24 -6
  397. package/dist/components/overlays/Menu/Menu.module.css.js.map +1 -1
  398. package/dist/design-system.css +1 -1
  399. package/dist/index.cjs +1 -1
  400. package/dist/index.js +190 -118
  401. package/dist/index.js.map +1 -1
  402. package/dist/types/components/actions/ButtonTile/ButtonTile.d.ts +14 -0
  403. package/dist/types/components/actions/ButtonTile/index.d.ts +2 -0
  404. package/dist/types/components/actions/Toolbar/Toolbar.d.ts +27 -0
  405. package/dist/types/components/actions/Toolbar/index.d.ts +2 -0
  406. package/dist/types/components/charts/ChartArea/ChartArea.d.ts +15 -4
  407. package/dist/types/components/charts/ChartBar/ChartBar.d.ts +11 -4
  408. package/dist/types/components/charts/ChartCombo/ChartCombo.d.ts +16 -4
  409. package/dist/types/components/charts/ChartDonut/ChartDonut.d.ts +5 -1
  410. package/dist/types/components/charts/ChartGauge/ChartGauge.d.ts +83 -0
  411. package/dist/types/components/charts/ChartGauge/gaugeLayout.d.ts +64 -0
  412. package/dist/types/components/charts/ChartGauge/gaugeReading.d.ts +97 -0
  413. package/dist/types/components/charts/ChartGauge/gaugeScale.d.ts +38 -0
  414. package/dist/types/components/charts/ChartGauge/index.d.ts +2 -0
  415. package/dist/types/components/charts/ChartLine/ChartLine.d.ts +15 -4
  416. package/dist/types/components/charts/ChartMap/ChartMap.d.ts +104 -0
  417. package/dist/types/components/charts/ChartMap/ChartMapLegend.d.ts +44 -0
  418. package/dist/types/components/charts/ChartMap/ChartMapTable.d.ts +38 -0
  419. package/dist/types/components/charts/ChartMap/index.d.ts +4 -0
  420. package/dist/types/components/charts/ChartMap/mapGeometry.d.ts +56 -0
  421. package/dist/types/components/charts/ChartMap/mapLabels.d.ts +51 -0
  422. package/dist/types/components/charts/ChartMap/mapScales.d.ts +76 -0
  423. package/dist/types/components/charts/ChartMap/polylabel.d.ts +9 -0
  424. package/dist/types/components/charts/ChartPie/ChartPie.d.ts +5 -1
  425. package/dist/types/components/charts/ChartRadial/ChartRadial.d.ts +5 -1
  426. package/dist/types/components/charts/ChartSankey/ChartSankey.d.ts +5 -1
  427. package/dist/types/components/charts/ChartScatter/ChartScatter.d.ts +7 -1
  428. package/dist/types/components/charts/ChartSunburst/ChartSunburst.d.ts +11 -2
  429. package/dist/types/components/charts/ChartTimeline/ChartTimeline.d.ts +137 -0
  430. package/dist/types/components/charts/ChartTimeline/ChartTimelineTable.d.ts +25 -0
  431. package/dist/types/components/charts/ChartTimeline/index.d.ts +2 -0
  432. package/dist/types/components/charts/ChartTimeline/timelineLayout.d.ts +70 -0
  433. package/dist/types/components/charts/ChartTimeline/timelineTime.d.ts +16 -0
  434. package/dist/types/components/charts/ChartTimeline/timelineTooltip.d.ts +45 -0
  435. package/dist/types/components/charts/ChartTooltip/ChartTooltip.d.ts +2 -0
  436. package/dist/types/components/charts/ChartTreemap/ChartTreemap.d.ts +11 -2
  437. package/dist/types/components/charts/ChartWaterfall/ChartWaterfall.d.ts +8 -3
  438. package/dist/types/components/charts/core/CartesianFrame.d.ts +6 -1
  439. package/dist/types/components/charts/core/ChartFrame.d.ts +7 -1
  440. package/dist/types/components/charts/core/ChartLegend.d.ts +3 -1
  441. package/dist/types/components/charts/core/PointBands.d.ts +22 -0
  442. package/dist/types/components/charts/core/cartesianLayout.d.ts +10 -4
  443. package/dist/types/components/charts/core/hoverPath.d.ts +10 -0
  444. package/dist/types/components/charts/core/index.d.ts +13 -3
  445. package/dist/types/components/charts/core/pointLabels.d.ts +13 -0
  446. package/dist/types/components/charts/core/tooltips.d.ts +49 -0
  447. package/dist/types/components/charts/core/useCartesianLayout.d.ts +20 -0
  448. package/dist/types/components/charts/core/useSeriesToggle.d.ts +15 -1
  449. package/dist/types/components/data-display/Accordion/Accordion.d.ts +6 -1
  450. package/dist/types/components/data-display/Accordion/index.d.ts +1 -1
  451. package/dist/types/components/data-display/List/List.d.ts +1 -1
  452. package/dist/types/components/data-display/List/useListing.d.ts +7 -1
  453. package/dist/types/components/data-display/SortableList/SortableList.d.ts +22 -0
  454. package/dist/types/components/data-display/SortableList/index.d.ts +2 -0
  455. package/dist/types/components/data-display/Tag/Tag.d.ts +13 -0
  456. package/dist/types/components/data-display/Tag/index.d.ts +2 -0
  457. package/dist/types/components/data-display/Timeline/Timeline.d.ts +15 -0
  458. package/dist/types/components/data-display/Timeline/index.d.ts +2 -0
  459. package/dist/types/components/feedback/Skeleton/Skeleton.d.ts +13 -0
  460. package/dist/types/components/feedback/Skeleton/index.d.ts +2 -0
  461. package/dist/types/components/feedback/Toast/ToastRegion.d.ts +2 -0
  462. package/dist/types/components/feedback/Toast/index.d.ts +3 -0
  463. package/dist/types/components/feedback/Toast/toastStore.d.ts +24 -0
  464. package/dist/types/components/forms/CheckboxGroup/CheckboxGroup.d.ts +28 -0
  465. package/dist/types/components/forms/CheckboxGroup/index.d.ts +2 -0
  466. package/dist/types/components/forms/ColorPicker/ColorPicker.d.ts +26 -0
  467. package/dist/types/components/forms/ColorPicker/index.d.ts +2 -0
  468. package/dist/types/components/forms/ComboBox/ComboBox.d.ts +7 -1
  469. package/dist/types/components/forms/Field/Field.d.ts +6 -2
  470. package/dist/types/components/forms/Field/index.d.ts +1 -1
  471. package/dist/types/components/forms/FileUpload/FileUpload.d.ts +37 -0
  472. package/dist/types/components/forms/FileUpload/index.d.ts +2 -0
  473. package/dist/types/components/forms/InputText/InputText.d.ts +4 -2
  474. package/dist/types/components/forms/SegmentedControl/SegmentedControl.d.ts +23 -0
  475. package/dist/types/components/forms/SegmentedControl/index.d.ts +2 -0
  476. package/dist/types/components/icons/icons.d.ts +29 -0
  477. package/dist/types/components/icons/index.d.ts +1 -1
  478. package/dist/types/components/navigation/SkipLink/SkipLink.d.ts +7 -0
  479. package/dist/types/components/navigation/SkipLink/index.d.ts +2 -0
  480. package/dist/types/components/navigation/Steps/Steps.d.ts +16 -0
  481. package/dist/types/components/navigation/Steps/index.d.ts +2 -0
  482. package/dist/types/components/navigation/Tabs/Tabs.d.ts +5 -1
  483. package/dist/types/components/navigation/TabsNav/TabsNav.d.ts +20 -0
  484. package/dist/types/components/navigation/TabsNav/index.d.ts +2 -0
  485. package/dist/types/components/overlays/Dialog/Dialog.d.ts +21 -9
  486. package/dist/types/components/overlays/Dialog/DialogFrame.d.ts +13 -0
  487. package/dist/types/components/overlays/Drawer/Drawer.d.ts +9 -0
  488. package/dist/types/components/overlays/Drawer/index.d.ts +2 -0
  489. package/dist/types/components/overlays/Menu/Menu.d.ts +16 -2
  490. package/dist/types/components/overlays/Menu/index.d.ts +1 -1
  491. package/dist/types/index.d.ts +43 -7
  492. package/dist/types/utils/formatters/formatarDuracao.d.ts +5 -0
  493. package/dist/types/utils/formatters/formatarNumero.d.ts +6 -1
  494. package/dist/types/utils/formatters/formatarTamanhoDeArquivo.d.ts +7 -0
  495. package/dist/types/utils/formatters/index.d.ts +4 -1
  496. package/dist/utils/formatters/formatarDuracao.cjs +2 -0
  497. package/dist/utils/formatters/formatarDuracao.cjs.map +1 -0
  498. package/dist/utils/formatters/formatarDuracao.js +10 -0
  499. package/dist/utils/formatters/formatarDuracao.js.map +1 -0
  500. package/dist/utils/formatters/formatarNumero.cjs +1 -1
  501. package/dist/utils/formatters/formatarNumero.cjs.map +1 -1
  502. package/dist/utils/formatters/formatarNumero.js +42 -17
  503. package/dist/utils/formatters/formatarNumero.js.map +1 -1
  504. package/dist/utils/formatters/formatarTamanhoDeArquivo.cjs +2 -0
  505. package/dist/utils/formatters/formatarTamanhoDeArquivo.cjs.map +1 -0
  506. package/dist/utils/formatters/formatarTamanhoDeArquivo.js +17 -0
  507. package/dist/utils/formatters/formatarTamanhoDeArquivo.js.map +1 -0
  508. package/package.json +3 -1
@@ -1,34 +1,35 @@
1
- import { jsxs as I, jsx as o } from "react/jsx-runtime";
2
- import { useId as b } from "react";
1
+ import { jsxs as b, jsx as a } from "react/jsx-runtime";
2
+ import { useId as g } from "react";
3
3
  import s from "./Field.module.css.js";
4
- import { Label as g } from "../Label/Label.js";
5
- function F({
6
- "aria-describedby": m,
4
+ import { Label as h } from "../Label/Label.js";
5
+ function k({
6
+ "aria-describedby": r,
7
7
  className: f,
8
- characterCount: a = 0,
8
+ characterCount: d = 0,
9
9
  children: p,
10
10
  error: e,
11
- hint: d,
11
+ hint: o,
12
12
  id: v,
13
13
  label: l,
14
14
  maxLength: n,
15
- required: $ = !1,
15
+ required: j = !1,
16
16
  showCharacterCount: c = !1,
17
- ...j
17
+ size: B = "md",
18
+ ...N
18
19
  }) {
19
- const u = b(), i = v ?? `field-${u}`, t = `${i}-message`, r = `${i}-character-count`, B = [
20
- m,
21
- e || d ? t : void 0,
22
- c ? r : void 0
23
- ].filter(Boolean).join(" ") || void 0;
24
- return /* @__PURE__ */ I("div", { ...j, className: [s.field, f].filter(Boolean).join(" "), children: [
25
- l && /* @__PURE__ */ o(g, { htmlFor: i, required: $, children: l }),
26
- p({ id: i, describedBy: B, invalid: !!e }),
27
- (e || d) && /* @__PURE__ */ o("span", { className: e ? s.errorMessage : s.hint, id: t, role: e ? "alert" : void 0, children: e || d }),
28
- c && /* @__PURE__ */ o("span", { className: s.characterCount, id: r, children: n ? `${a}/${n}` : a })
20
+ const $ = g(), i = v ?? `field-${$}`, t = `${i}-message`, m = `${i}-character-count`, u = [
21
+ r,
22
+ e || o ? t : void 0,
23
+ c ? m : void 0
24
+ ].filter(Boolean).join(" ") || void 0, I = [s.control, B === "sm" && s.sm, e && s.invalid].filter(Boolean).join(" ");
25
+ return /* @__PURE__ */ b("div", { ...N, className: [s.field, f].filter(Boolean).join(" "), children: [
26
+ l && /* @__PURE__ */ a(h, { htmlFor: i, required: j, children: l }),
27
+ p({ className: I, describedBy: u, id: i, invalid: !!e }),
28
+ (e || o) && /* @__PURE__ */ a("span", { className: e ? s.errorMessage : s.hint, id: t, role: e ? "alert" : void 0, children: e || o }),
29
+ c && /* @__PURE__ */ a("span", { className: s.characterCount, id: m, children: n ? `${d}/${n}` : d })
29
30
  ] });
30
31
  }
31
32
  export {
32
- F as Field
33
+ k as Field
33
34
  };
34
35
  //# sourceMappingURL=Field.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Field.js","sources":["../../../../src/components/forms/Field/Field.tsx"],"sourcesContent":["import { useId, type ComponentPropsWithRef, type ReactNode } from 'react';\nimport { Label } from '../Label';\nimport styles from './Field.module.css';\n\nexport interface FieldWiring {\n id: string;\n describedBy: string | undefined;\n invalid: boolean;\n}\n\nexport interface FieldProps extends Omit<ComponentPropsWithRef<'div'>, 'children'> {\n 'aria-describedby'?: string;\n characterCount?: number;\n children: (wiring: FieldWiring) => ReactNode;\n error?: string;\n hint?: string;\n id?: string;\n label?: string;\n maxLength?: number;\n required?: boolean;\n showCharacterCount?: boolean;\n}\n\nexport function Field({\n 'aria-describedby': ariaDescribedBy,\n className,\n characterCount = 0,\n children,\n error,\n hint,\n id: providedId,\n label,\n maxLength,\n required = false,\n showCharacterCount = false,\n ...props\n}: FieldProps) {\n const generatedId = useId();\n const id = providedId ?? `field-${generatedId}`;\n const messageId = `${id}-message`;\n const characterCountId = `${id}-character-count`;\n const describedBy = [\n ariaDescribedBy,\n error || hint ? messageId : undefined,\n showCharacterCount ? characterCountId : undefined,\n ]\n .filter(Boolean)\n .join(' ') || undefined;\n\n return (\n <div {...props} className={[styles.field, className].filter(Boolean).join(' ')}>\n {label && <Label htmlFor={id} required={required}>{label}</Label>}\n {children({ id, describedBy, invalid: Boolean(error) })}\n {(error || hint) && (\n <span className={error ? styles.errorMessage : styles.hint} id={messageId} role={error ? 'alert' : undefined}>\n {error || hint}\n </span>\n )}\n {showCharacterCount && (\n <span className={styles.characterCount} id={characterCountId}>\n {maxLength ? `${characterCount}/${maxLength}` : characterCount}\n </span>\n )}\n </div>\n );\n}\n"],"names":["Field","ariaDescribedBy","className","characterCount","children","error","hint","providedId","label","maxLength","required","showCharacterCount","props","generatedId","useId","id","messageId","characterCountId","describedBy","jsxs","styles","jsx","Label"],"mappings":";;;;AAuBO,SAASA,EAAM;AAAA,EACpB,oBAAoBC;AAAA,EACpB,WAAAC;AAAA,EACA,gBAAAC,IAAiB;AAAA,EACjB,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,IAAIC;AAAA,EACJ,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,oBAAAC,IAAqB;AAAA,EACrB,GAAGC;AACL,GAAe;AACb,QAAMC,IAAcC,EAAA,GACdC,IAAKR,KAAc,SAASM,CAAW,IACvCG,IAAY,GAAGD,CAAE,YACjBE,IAAmB,GAAGF,CAAE,oBACxBG,IAAc;AAAA,IAClBjB;AAAA,IACAI,KAASC,IAAOU,IAAY;AAAA,IAC5BL,IAAqBM,IAAmB;AAAA,EAAA,EAEvC,OAAO,OAAO,EACd,KAAK,GAAG,KAAK;AAEhB,SACE,gBAAAE,EAAC,OAAA,EAAK,GAAGP,GAAO,WAAW,CAACQ,EAAO,OAAOlB,CAAS,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,GAC1E,UAAA;AAAA,IAAAM,KAAS,gBAAAa,EAACC,GAAA,EAAM,SAASP,GAAI,UAAAL,GAAqB,UAAAF,GAAM;AAAA,IACxDJ,EAAS,EAAE,IAAAW,GAAI,aAAAG,GAAa,SAAS,EAAQb,GAAQ;AAAA,KACpDA,KAASC,MACT,gBAAAe,EAAC,QAAA,EAAK,WAAWhB,IAAQe,EAAO,eAAeA,EAAO,MAAM,IAAIJ,GAAW,MAAMX,IAAQ,UAAU,QAChG,eAASC,GACZ;AAAA,IAEDK,KACC,gBAAAU,EAAC,QAAA,EAAK,WAAWD,EAAO,gBAAgB,IAAIH,GACzC,UAAAR,IAAY,GAAGN,CAAc,IAAIM,CAAS,KAAKN,EAAA,CAClD;AAAA,EAAA,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"Field.js","sources":["../../../../src/components/forms/Field/Field.tsx"],"sourcesContent":["import { useId, type ComponentPropsWithRef, type ReactNode } from 'react';\nimport { Label } from '../Label';\nimport styles from './Field.module.css';\n\nexport type FieldSize = 'sm' | 'md';\n\nexport interface FieldWiring {\n /** O visual dos campos do sistema para o controle — borda, foco, erro e tamanho. A classe do controle vence a dele. */\n className: string;\n describedBy: string | undefined;\n id: string;\n invalid: boolean;\n}\n\nexport interface FieldProps extends Omit<ComponentPropsWithRef<'div'>, 'children'> {\n 'aria-describedby'?: string;\n characterCount?: number;\n children: (wiring: FieldWiring) => ReactNode;\n error?: string;\n hint?: string;\n id?: string;\n label?: string;\n maxLength?: number;\n required?: boolean;\n showCharacterCount?: boolean;\n size?: FieldSize;\n}\n\nexport function Field({\n 'aria-describedby': ariaDescribedBy,\n className,\n characterCount = 0,\n children,\n error,\n hint,\n id: providedId,\n label,\n maxLength,\n required = false,\n showCharacterCount = false,\n size = 'md',\n ...props\n}: FieldProps) {\n const generatedId = useId();\n const id = providedId ?? `field-${generatedId}`;\n const messageId = `${id}-message`;\n const characterCountId = `${id}-character-count`;\n const describedBy = [\n ariaDescribedBy,\n error || hint ? messageId : undefined,\n showCharacterCount ? characterCountId : undefined,\n ]\n .filter(Boolean)\n .join(' ') || undefined;\n const controlClassName = [styles.control, size === 'sm' && styles.sm, error && styles.invalid].filter(Boolean).join(' ');\n\n return (\n <div {...props} className={[styles.field, className].filter(Boolean).join(' ')}>\n {label && <Label htmlFor={id} required={required}>{label}</Label>}\n {children({ className: controlClassName, describedBy, id, invalid: Boolean(error) })}\n {(error || hint) && (\n <span className={error ? styles.errorMessage : styles.hint} id={messageId} role={error ? 'alert' : undefined}>\n {error || hint}\n </span>\n )}\n {showCharacterCount && (\n <span className={styles.characterCount} id={characterCountId}>\n {maxLength ? `${characterCount}/${maxLength}` : characterCount}\n </span>\n )}\n </div>\n );\n}\n"],"names":["Field","ariaDescribedBy","className","characterCount","children","error","hint","providedId","label","maxLength","required","showCharacterCount","size","props","generatedId","useId","id","messageId","characterCountId","describedBy","controlClassName","styles","jsxs","jsx","Label"],"mappings":";;;;AA4BO,SAASA,EAAM;AAAA,EACpB,oBAAoBC;AAAA,EACpB,WAAAC;AAAA,EACA,gBAAAC,IAAiB;AAAA,EACjB,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,IAAIC;AAAA,EACJ,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,oBAAAC,IAAqB;AAAA,EACrB,MAAAC,IAAO;AAAA,EACP,GAAGC;AACL,GAAe;AACb,QAAMC,IAAcC,EAAA,GACdC,IAAKT,KAAc,SAASO,CAAW,IACvCG,IAAY,GAAGD,CAAE,YACjBE,IAAmB,GAAGF,CAAE,oBACxBG,IAAc;AAAA,IAClBlB;AAAA,IACAI,KAASC,IAAOW,IAAY;AAAA,IAC5BN,IAAqBO,IAAmB;AAAA,EAAA,EAEvC,OAAO,OAAO,EACd,KAAK,GAAG,KAAK,QACVE,IAAmB,CAACC,EAAO,SAAST,MAAS,QAAQS,EAAO,IAAIhB,KAASgB,EAAO,OAAO,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAEvH,SACE,gBAAAC,EAAC,OAAA,EAAK,GAAGT,GAAO,WAAW,CAACQ,EAAO,OAAOnB,CAAS,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,GAC1E,UAAA;AAAA,IAAAM,KAAS,gBAAAe,EAACC,GAAA,EAAM,SAASR,GAAI,UAAAN,GAAqB,UAAAF,GAAM;AAAA,IACxDJ,EAAS,EAAE,WAAWgB,GAAkB,aAAAD,GAAa,IAAAH,GAAI,SAAS,EAAQX,GAAQ;AAAA,KACjFA,KAASC,MACT,gBAAAiB,EAAC,QAAA,EAAK,WAAWlB,IAAQgB,EAAO,eAAeA,EAAO,MAAM,IAAIJ,GAAW,MAAMZ,IAAQ,UAAU,QAChG,eAASC,GACZ;AAAA,IAEDK,KACC,gBAAAY,EAAC,QAAA,EAAK,WAAWF,EAAO,gBAAgB,IAAIH,GACzC,UAAAT,IAAY,GAAGN,CAAc,IAAIM,CAAS,KAAKN,EAAA,CAClD;AAAA,EAAA,GAEJ;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="_field_wy7pm_1",r="_hint_wy7pm_8",t="_errorMessage_wy7pm_9",o="_characterCount_wy7pm_10",a="_formValue_wy7pm_31",s={field:e,hint:r,errorMessage:t,characterCount:o,formValue:a};exports.characterCount=o;exports.default=s;exports.errorMessage=t;exports.field=e;exports.formValue=a;exports.hint=r;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="_field_1qg91_1",o="_hint_1qg91_8",t="_errorMessage_1qg91_9",r="_characterCount_1qg91_10",n="_formValue_1qg91_31",s="_control_1qg91_40",_="_invalid_1qg91_59",a="_sm_1qg91_77",c={field:e,hint:o,errorMessage:t,characterCount:r,formValue:n,control:s,invalid:_,sm:a};exports.characterCount=r;exports.control=s;exports.default=c;exports.errorMessage=t;exports.field=e;exports.formValue=n;exports.hint=o;exports.invalid=_;exports.sm=a;
2
2
  //# sourceMappingURL=Field.module.css.cjs.map
@@ -1,16 +1,22 @@
1
- const e = "_field_wy7pm_1", r = "_hint_wy7pm_8", t = "_errorMessage_wy7pm_9", o = "_characterCount_wy7pm_10", s = "_formValue_wy7pm_31", _ = {
2
- field: e,
3
- hint: r,
4
- errorMessage: t,
5
- characterCount: o,
6
- formValue: s
1
+ const o = "_field_1qg91_1", t = "_hint_1qg91_8", _ = "_errorMessage_1qg91_9", r = "_characterCount_1qg91_10", e = "_formValue_1qg91_31", n = "_control_1qg91_40", s = "_invalid_1qg91_59", c = "_sm_1qg91_77", a = {
2
+ field: o,
3
+ hint: t,
4
+ errorMessage: _,
5
+ characterCount: r,
6
+ formValue: e,
7
+ control: n,
8
+ invalid: s,
9
+ sm: c
7
10
  };
8
11
  export {
9
- o as characterCount,
10
- _ as default,
11
- t as errorMessage,
12
- e as field,
13
- s as formValue,
14
- r as hint
12
+ r as characterCount,
13
+ n as control,
14
+ a as default,
15
+ _ as errorMessage,
16
+ o as field,
17
+ e as formValue,
18
+ t as hint,
19
+ s as invalid,
20
+ c as sm
15
21
  };
16
22
  //# sourceMappingURL=Field.module.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Field.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"Field.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),v=require("react"),b=require("../../../utils/formatters/formatarTamanhoDeArquivo.cjs"),r=require("./FileUpload.module.css.cjs"),G=require("../Field/Field.cjs"),m=require("../../icons/icons.cjs"),E=require("../../actions/Button/Button.cjs"),H=require("../../feedback/Progress/Progress.cjs"),$=require("../../actions/ButtonIcon/ButtonIcon.cjs"),J={audio:"áudio",image:"imagem",text:"texto",video:"vídeo"};function K(n){return(n??"").split(",").map(t=>t.trim().toLowerCase()).filter(Boolean)}function Q(n){if(n.startsWith("."))return n.slice(1).toUpperCase();const[t="",o=""]=n.split("/");return o==="*"?J[t]??t:o.split("+")[0].toUpperCase()}function X(n){return n.length<2?n.join(""):`${n.slice(0,-1).join(", ")} ou ${n.at(-1)}`}function Y(n,t){if(t.length===0)return!0;const o=n.name.toLowerCase(),f=n.type.toLowerCase();return t.some(i=>i.startsWith(".")?o.endsWith(i):i.endsWith("/*")?f.startsWith(i.slice(0,-1)):f===i)}function Z({accept:n,className:t,disabled:o=!1,error:f,hint:i,id:u,items:p=[],label:j,maxSize:s,multiple:x=!1,onCancel:U,onFilesRejected:q,onFilesSelected:O,onRemove:k,onRetry:w,...z}){const C=v.useRef(null),N=v.useId(),[L,D]=v.useState(!1),[M,F]=v.useState(),T=K(n),y=X([...new Set(T.map(Q))]),I=s===void 0?void 0:b.formatarTamanhoDeArquivo(s),g=[y,I&&`até ${I}`].filter(Boolean).join(", ");function W({file:a,reason:l},c){return l==="type"?`${c} não é ${y}.`:`${c} passa de ${I}.`}function B(a){const l=x?a:a.slice(0,1),c=[],h=[];for(const d of l)Y(d,T)?s!==void 0&&d.size>s?h.push({file:d,reason:"size"}):c.push(d):h.push({file:d,reason:"type"});F(h.length===0?void 0:h.map(d=>W(d,l.length===1?"O arquivo":d.file.name)).join(" ")),c.length>0&&O(c),h.length>0&&(q==null||q(h))}function P(a){B(Array.from(a.target.files??[])),a.target.value=""}function A(a){a.preventDefault(),a.dataTransfer.dropEffect=o?"none":"copy",o||D(!0)}function S(a){a.currentTarget.contains(a.relatedTarget)||D(!1)}function _(a){a.preventDefault(),D(!1),o||B(Array.from(a.dataTransfer.files))}function R(){var a,l;(a=C.current)==null||a.focus(),(l=C.current)==null||l.click()}const V=f??M;return e.jsxs("div",{...z,className:[r.default.fileUpload,t].filter(Boolean).join(" "),children:[e.jsx(G.Field,{"aria-describedby":g?N:void 0,error:V,hint:i,id:u,label:j,children:({describedBy:a,id:l,invalid:c})=>e.jsxs("div",{className:[r.default.zone,L&&r.default.dragging,c&&r.default.invalid,o&&r.default.disabled].filter(Boolean).join(" "),onDragEnter:A,onDragLeave:S,onDragOver:A,onDrop:_,children:[e.jsx("span",{"aria-hidden":"true",className:r.default.iconBox,children:e.jsx(m.IconUpload,{})}),e.jsxs("p",{className:r.default.instruction,children:[x?"Arraste os arquivos aqui ou":"Arraste o arquivo aqui ou",e.jsx(E.Button,{"aria-hidden":!0,disabled:o,onClick:R,size:"sm",tabIndex:-1,variant:"secondary",children:"escolha do computador"})]}),g&&e.jsx("p",{className:r.default.restrictions,id:N,children:g.charAt(0).toUpperCase()+g.slice(1)}),e.jsx("input",{accept:n,"aria-describedby":a,"aria-invalid":c||void 0,className:r.default.input,disabled:o,id:l,multiple:x,onChange:P,ref:C,type:"file"})]})}),p.length>0&&e.jsx("ul",{className:r.default.items,children:p.map(a=>e.jsx(ee,{item:a,onCancel:U,onRemove:k,onRetry:w},a.id))})]})}function ee({item:n,onCancel:t,onRemove:o,onRetry:f}){const{id:i,name:u,progress:p,size:j,status:s}=n;return e.jsxs("li",{className:[r.default.item,s==="error"&&r.default.failed].filter(Boolean).join(" "),children:[e.jsx("span",{"aria-hidden":"true",className:r.default.fileIcon,children:e.jsx(m.IconFile,{})}),e.jsxs("div",{className:r.default.body,children:[e.jsx("span",{className:r.default.name,title:u,children:u}),e.jsxs("span",{className:r.default.meta,children:[b.formatarTamanhoDeArquivo(j),e.jsx("span",{"aria-hidden":"true",children:"·"}),e.jsxs("span",{className:s==="error"?r.default.failedMessage:r.default.status,role:"status",children:[s==="done"&&e.jsx(m.IconCheckCircle,{className:r.default.doneIcon}),s==="error"&&e.jsx(m.IconExclamationCircle,{}),s==="uploading"&&"Enviando",s==="done"&&"Enviado",s==="error"&&(n.error??"Falha no envio.")]})]}),s==="uploading"&&e.jsx(H.Progress,{label:`Enviando ${u}`,showValue:!0,size:"sm",value:p})]}),e.jsxs("div",{className:r.default.actions,children:[s==="error"&&f&&e.jsx(E.Button,{"aria-label":`Tentar de novo: ${u}`,onClick:()=>f(i),size:"sm",variant:"ghost",children:"Tentar de novo"}),s==="uploading"&&t&&e.jsx($.ButtonIcon,{icon:e.jsx(m.IconClose,{}),label:`Cancelar envio de ${u}`,onClick:()=>t(i),size:"sm",variant:"ghost"}),s!=="uploading"&&o&&e.jsx($.ButtonIcon,{icon:e.jsx(m.IconTrash,{}),label:`Remover ${u}`,onClick:()=>o(i),size:"sm",variant:"ghost"})]})]})}exports.FileUpload=Z;
2
+ //# sourceMappingURL=FileUpload.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUpload.cjs","sources":["../../../../src/components/forms/FileUpload/FileUpload.tsx"],"sourcesContent":["import { useId, useRef, useState, type ChangeEvent, type ComponentPropsWithRef, type DragEvent } from 'react';\nimport { Button } from '../../actions/Button';\nimport { ButtonIcon } from '../../actions/ButtonIcon';\nimport { Progress } from '../../feedback/Progress';\nimport { IconCheckCircle, IconClose, IconExclamationCircle, IconFile, IconTrash, IconUpload } from '../../icons';\nimport { formatarTamanhoDeArquivo } from '../../../utils/formatters/formatarTamanhoDeArquivo';\nimport { Field } from '../Field';\nimport styles from './FileUpload.module.css';\n\nexport type FileRejectionReason = 'type' | 'size';\n\nexport interface FileRejection {\n file: File;\n reason: FileRejectionReason;\n}\n\nexport type FileUploadStatus = 'uploading' | 'done' | 'error';\n\n/** Um arquivo em envio. Quem envia e o produto: ele monta a lista e informa o progresso. */\nexport interface FileUploadItem {\n error?: string;\n id: string;\n name: string;\n /** De 0 a 100. Sem ele, o progresso e indeterminado. */\n progress?: number;\n size: number;\n status: FileUploadStatus;\n}\n\nexport interface FileUploadProps extends Omit<ComponentPropsWithRef<'div'>, 'children' | 'onDrop'> {\n /** Os tipos aceitos, como no `<input type=\"file\">`: `.pdf,image/*`. */\n accept?: string;\n disabled?: boolean;\n /** Vence a mensagem de recusa do proprio campo. */\n error?: string;\n hint?: string;\n items?: readonly FileUploadItem[];\n label: string;\n /** Limite por arquivo, em bytes. */\n maxSize?: number;\n multiple?: boolean;\n onCancel?: (id: string) => void;\n /** Recebe so os arquivos aceitos. */\n onFilesSelected: (files: File[]) => void;\n onFilesRejected?: (rejections: FileRejection[]) => void;\n onRemove?: (id: string) => void;\n onRetry?: (id: string) => void;\n}\n\nconst NOMES_DE_FAMILIA: Record<string, string> = { audio: 'áudio', image: 'imagem', text: 'texto', video: 'vídeo' };\n\nfunction tiposAceitos(accept?: string) {\n return (accept ?? '')\n .split(',')\n .map((tipo) => tipo.trim().toLowerCase())\n .filter(Boolean);\n}\n\nfunction nomeDoTipo(tipo: string) {\n if (tipo.startsWith('.')) {\n return tipo.slice(1).toUpperCase();\n }\n\n const [familia = '', subtipo = ''] = tipo.split('/');\n return subtipo === '*' ? (NOMES_DE_FAMILIA[familia] ?? familia) : subtipo.split('+')[0]!.toUpperCase();\n}\n\nfunction listarComOu(itens: string[]) {\n return itens.length < 2 ? itens.join('') : `${itens.slice(0, -1).join(', ')} ou ${itens.at(-1)}`;\n}\n\nfunction aceitaOTipo(file: File, tipos: string[]) {\n if (tipos.length === 0) {\n return true;\n }\n\n const nome = file.name.toLowerCase();\n const mime = file.type.toLowerCase();\n\n return tipos.some((tipo) => {\n if (tipo.startsWith('.')) return nome.endsWith(tipo);\n if (tipo.endsWith('/*')) return mime.startsWith(tipo.slice(0, -1));\n return mime === tipo;\n });\n}\n\nexport function FileUpload({\n accept,\n className,\n disabled = false,\n error,\n hint,\n id,\n items = [],\n label,\n maxSize,\n multiple = false,\n onCancel,\n onFilesRejected,\n onFilesSelected,\n onRemove,\n onRetry,\n ...props\n}: FileUploadProps) {\n const inputRef = useRef<HTMLInputElement>(null);\n const restrictionsId = useId();\n const [dragging, setDragging] = useState(false);\n const [rejectionMessage, setRejectionMessage] = useState<string>();\n\n const tipos = tiposAceitos(accept);\n const descricaoDosTipos = listarComOu([...new Set(tipos.map(nomeDoTipo))]);\n const limite = maxSize === undefined ? undefined : formatarTamanhoDeArquivo(maxSize);\n const restricoes = [descricaoDosTipos, limite && `até ${limite}`].filter(Boolean).join(', ');\n\n function motivoDaRecusa({ file, reason }: FileRejection, sujeito: string) {\n return reason === 'type' ? `${sujeito} não é ${descricaoDosTipos}.` : `${sujeito} passa de ${limite}.`;\n }\n\n function receber(oferecidos: File[]) {\n const files = multiple ? oferecidos : oferecidos.slice(0, 1);\n const aceitos: File[] = [];\n const recusas: FileRejection[] = [];\n\n for (const file of files) {\n if (!aceitaOTipo(file, tipos)) recusas.push({ file, reason: 'type' });\n else if (maxSize !== undefined && file.size > maxSize) recusas.push({ file, reason: 'size' });\n else aceitos.push(file);\n }\n\n setRejectionMessage(\n recusas.length === 0\n ? undefined\n : recusas.map((recusa) => motivoDaRecusa(recusa, files.length === 1 ? 'O arquivo' : recusa.file.name)).join(' '),\n );\n\n if (aceitos.length > 0) onFilesSelected(aceitos);\n if (recusas.length > 0) onFilesRejected?.(recusas);\n }\n\n function handleChange(event: ChangeEvent<HTMLInputElement>) {\n receber(Array.from(event.target.files ?? []));\n // Limpo, o seletor aceita de novo o mesmo arquivo, como no tentar outra vez.\n event.target.value = '';\n }\n\n function handleDragOver(event: DragEvent<HTMLDivElement>) {\n event.preventDefault();\n event.dataTransfer.dropEffect = disabled ? 'none' : 'copy';\n if (!disabled) setDragging(true);\n }\n\n function handleDragLeave(event: DragEvent<HTMLDivElement>) {\n if (!event.currentTarget.contains(event.relatedTarget as Node | null)) setDragging(false);\n }\n\n function handleDrop(event: DragEvent<HTMLDivElement>) {\n event.preventDefault();\n setDragging(false);\n if (!disabled) receber(Array.from(event.dataTransfer.files));\n }\n\n function choose() {\n inputRef.current?.focus();\n inputRef.current?.click();\n }\n\n const fieldError = error ?? rejectionMessage;\n\n return (\n <div {...props} className={[styles.fileUpload, className].filter(Boolean).join(' ')}>\n <Field aria-describedby={restricoes ? restrictionsId : undefined} error={fieldError} hint={hint} id={id} label={label}>\n {({ describedBy, id: inputId, invalid }) => (\n <div\n className={[styles.zone, dragging && styles.dragging, invalid && styles.invalid, disabled && styles.disabled]\n .filter(Boolean)\n .join(' ')}\n onDragEnter={handleDragOver}\n onDragLeave={handleDragLeave}\n onDragOver={handleDragOver}\n onDrop={handleDrop}\n >\n <span aria-hidden=\"true\" className={styles.iconBox}>\n <IconUpload />\n </span>\n <p className={styles.instruction}>\n {multiple ? 'Arraste os arquivos aqui ou' : 'Arraste o arquivo aqui ou'}\n {/* Fora da tabulacao e da arvore: o controle acessivel e o seletor nativo, que recebe o foco. */}\n <Button aria-hidden disabled={disabled} onClick={choose} size=\"sm\" tabIndex={-1} variant=\"secondary\">\n escolha do computador\n </Button>\n </p>\n {restricoes && (\n <p className={styles.restrictions} id={restrictionsId}>\n {restricoes.charAt(0).toUpperCase() + restricoes.slice(1)}\n </p>\n )}\n <input\n accept={accept}\n aria-describedby={describedBy}\n aria-invalid={invalid || undefined}\n className={styles.input}\n disabled={disabled}\n id={inputId}\n multiple={multiple}\n onChange={handleChange}\n ref={inputRef}\n type=\"file\"\n />\n </div>\n )}\n </Field>\n {items.length > 0 && (\n <ul className={styles.items}>\n {items.map((item) => (\n <FileUploadRow item={item} key={item.id} onCancel={onCancel} onRemove={onRemove} onRetry={onRetry} />\n ))}\n </ul>\n )}\n </div>\n );\n}\n\ninterface FileUploadRowProps extends Pick<FileUploadProps, 'onCancel' | 'onRemove' | 'onRetry'> {\n item: FileUploadItem;\n}\n\nfunction FileUploadRow({ item, onCancel, onRemove, onRetry }: FileUploadRowProps) {\n const { id, name, progress, size, status } = item;\n\n return (\n <li className={[styles.item, status === 'error' && styles.failed].filter(Boolean).join(' ')}>\n <span aria-hidden=\"true\" className={styles.fileIcon}>\n <IconFile />\n </span>\n <div className={styles.body}>\n <span className={styles.name} title={name}>\n {name}\n </span>\n <span className={styles.meta}>\n {formatarTamanhoDeArquivo(size)}\n <span aria-hidden=\"true\">·</span>\n <span className={status === 'error' ? styles.failedMessage : styles.status} role=\"status\">\n {status === 'done' && <IconCheckCircle className={styles.doneIcon} />}\n {status === 'error' && <IconExclamationCircle />}\n {status === 'uploading' && 'Enviando'}\n {status === 'done' && 'Enviado'}\n {status === 'error' && (item.error ?? 'Falha no envio.')}\n </span>\n </span>\n {status === 'uploading' && <Progress label={`Enviando ${name}`} showValue size=\"sm\" value={progress} />}\n </div>\n <div className={styles.actions}>\n {status === 'error' && onRetry && (\n <Button aria-label={`Tentar de novo: ${name}`} onClick={() => onRetry(id)} size=\"sm\" variant=\"ghost\">\n Tentar de novo\n </Button>\n )}\n {status === 'uploading' && onCancel && (\n <ButtonIcon icon={<IconClose />} label={`Cancelar envio de ${name}`} onClick={() => onCancel(id)} size=\"sm\" variant=\"ghost\" />\n )}\n {status !== 'uploading' && onRemove && (\n <ButtonIcon icon={<IconTrash />} label={`Remover ${name}`} onClick={() => onRemove(id)} size=\"sm\" variant=\"ghost\" />\n )}\n </div>\n </li>\n );\n}\n"],"names":["NOMES_DE_FAMILIA","tiposAceitos","accept","tipo","nomeDoTipo","familia","subtipo","listarComOu","itens","aceitaOTipo","file","tipos","nome","mime","FileUpload","className","disabled","error","hint","id","items","label","maxSize","multiple","onCancel","onFilesRejected","onFilesSelected","onRemove","onRetry","props","inputRef","useRef","restrictionsId","useId","dragging","setDragging","useState","rejectionMessage","setRejectionMessage","descricaoDosTipos","limite","formatarTamanhoDeArquivo","restricoes","motivoDaRecusa","reason","sujeito","receber","oferecidos","files","aceitos","recusas","recusa","handleChange","event","handleDragOver","handleDragLeave","handleDrop","choose","_a","_b","fieldError","jsxs","styles","jsx","Field","describedBy","inputId","invalid","IconUpload","Button","item","FileUploadRow","name","progress","size","status","IconFile","IconCheckCircle","IconExclamationCircle","Progress","ButtonIcon","IconClose","IconTrash"],"mappings":"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"}
@@ -0,0 +1,142 @@
1
+ import { jsxs as f, jsx as r } from "react/jsx-runtime";
2
+ import { useRef as J, useId as K, useState as B } from "react";
3
+ import { formatarTamanhoDeArquivo as j } from "../../../utils/formatters/formatarTamanhoDeArquivo.js";
4
+ import o from "./FileUpload.module.css.js";
5
+ import { Field as Q } from "../Field/Field.js";
6
+ import { IconUpload as R, IconFile as S, IconCheckCircle as X, IconExclamationCircle as Y, IconClose as Z, IconTrash as ee } from "../../icons/icons.js";
7
+ import { Button as k } from "../../actions/Button/Button.js";
8
+ import { Progress as re } from "../../feedback/Progress/Progress.js";
9
+ import { ButtonIcon as U } from "../../actions/ButtonIcon/ButtonIcon.js";
10
+ const oe = { audio: "áudio", image: "imagem", text: "texto", video: "vídeo" };
11
+ function ne(n) {
12
+ return (n ?? "").split(",").map((s) => s.trim().toLowerCase()).filter(Boolean);
13
+ }
14
+ function ae(n) {
15
+ if (n.startsWith("."))
16
+ return n.slice(1).toUpperCase();
17
+ const [s = "", i = ""] = n.split("/");
18
+ return i === "*" ? oe[s] ?? s : i.split("+")[0].toUpperCase();
19
+ }
20
+ function ie(n) {
21
+ return n.length < 2 ? n.join("") : `${n.slice(0, -1).join(", ")} ou ${n.at(-1)}`;
22
+ }
23
+ function se(n, s) {
24
+ if (s.length === 0)
25
+ return !0;
26
+ const i = n.name.toLowerCase(), m = n.type.toLowerCase();
27
+ return s.some((t) => t.startsWith(".") ? i.endsWith(t) : t.endsWith("/*") ? m.startsWith(t.slice(0, -1)) : m === t);
28
+ }
29
+ function ve({
30
+ accept: n,
31
+ className: s,
32
+ disabled: i = !1,
33
+ error: m,
34
+ hint: t,
35
+ id: d,
36
+ items: h = [],
37
+ label: v,
38
+ maxSize: a,
39
+ multiple: C = !1,
40
+ onCancel: q,
41
+ onFilesRejected: N,
42
+ onFilesSelected: w,
43
+ onRemove: z,
44
+ onRetry: L,
45
+ ...O
46
+ }) {
47
+ const D = J(null), T = K(), [x, I] = B(!1), [M, W] = B(), $ = ne(n), A = ie([...new Set($.map(ae))]), y = a === void 0 ? void 0 : j(a), g = [A, y && `até ${y}`].filter(Boolean).join(", ");
48
+ function F({ file: e, reason: l }, c) {
49
+ return l === "type" ? `${c} não é ${A}.` : `${c} passa de ${y}.`;
50
+ }
51
+ function E(e) {
52
+ const l = C ? e : e.slice(0, 1), c = [], p = [];
53
+ for (const u of l)
54
+ se(u, $) ? a !== void 0 && u.size > a ? p.push({ file: u, reason: "size" }) : c.push(u) : p.push({ file: u, reason: "type" });
55
+ W(
56
+ p.length === 0 ? void 0 : p.map((u) => F(u, l.length === 1 ? "O arquivo" : u.file.name)).join(" ")
57
+ ), c.length > 0 && w(c), p.length > 0 && (N == null || N(p));
58
+ }
59
+ function _(e) {
60
+ E(Array.from(e.target.files ?? [])), e.target.value = "";
61
+ }
62
+ function b(e) {
63
+ e.preventDefault(), e.dataTransfer.dropEffect = i ? "none" : "copy", i || I(!0);
64
+ }
65
+ function P(e) {
66
+ e.currentTarget.contains(e.relatedTarget) || I(!1);
67
+ }
68
+ function V(e) {
69
+ e.preventDefault(), I(!1), i || E(Array.from(e.dataTransfer.files));
70
+ }
71
+ function G() {
72
+ var e, l;
73
+ (e = D.current) == null || e.focus(), (l = D.current) == null || l.click();
74
+ }
75
+ const H = m ?? M;
76
+ return /* @__PURE__ */ f("div", { ...O, className: [o.fileUpload, s].filter(Boolean).join(" "), children: [
77
+ /* @__PURE__ */ r(Q, { "aria-describedby": g ? T : void 0, error: H, hint: t, id: d, label: v, children: ({ describedBy: e, id: l, invalid: c }) => /* @__PURE__ */ f(
78
+ "div",
79
+ {
80
+ className: [o.zone, x && o.dragging, c && o.invalid, i && o.disabled].filter(Boolean).join(" "),
81
+ onDragEnter: b,
82
+ onDragLeave: P,
83
+ onDragOver: b,
84
+ onDrop: V,
85
+ children: [
86
+ /* @__PURE__ */ r("span", { "aria-hidden": "true", className: o.iconBox, children: /* @__PURE__ */ r(R, {}) }),
87
+ /* @__PURE__ */ f("p", { className: o.instruction, children: [
88
+ C ? "Arraste os arquivos aqui ou" : "Arraste o arquivo aqui ou",
89
+ /* @__PURE__ */ r(k, { "aria-hidden": !0, disabled: i, onClick: G, size: "sm", tabIndex: -1, variant: "secondary", children: "escolha do computador" })
90
+ ] }),
91
+ g && /* @__PURE__ */ r("p", { className: o.restrictions, id: T, children: g.charAt(0).toUpperCase() + g.slice(1) }),
92
+ /* @__PURE__ */ r(
93
+ "input",
94
+ {
95
+ accept: n,
96
+ "aria-describedby": e,
97
+ "aria-invalid": c || void 0,
98
+ className: o.input,
99
+ disabled: i,
100
+ id: l,
101
+ multiple: C,
102
+ onChange: _,
103
+ ref: D,
104
+ type: "file"
105
+ }
106
+ )
107
+ ]
108
+ }
109
+ ) }),
110
+ h.length > 0 && /* @__PURE__ */ r("ul", { className: o.items, children: h.map((e) => /* @__PURE__ */ r(te, { item: e, onCancel: q, onRemove: z, onRetry: L }, e.id)) })
111
+ ] });
112
+ }
113
+ function te({ item: n, onCancel: s, onRemove: i, onRetry: m }) {
114
+ const { id: t, name: d, progress: h, size: v, status: a } = n;
115
+ return /* @__PURE__ */ f("li", { className: [o.item, a === "error" && o.failed].filter(Boolean).join(" "), children: [
116
+ /* @__PURE__ */ r("span", { "aria-hidden": "true", className: o.fileIcon, children: /* @__PURE__ */ r(S, {}) }),
117
+ /* @__PURE__ */ f("div", { className: o.body, children: [
118
+ /* @__PURE__ */ r("span", { className: o.name, title: d, children: d }),
119
+ /* @__PURE__ */ f("span", { className: o.meta, children: [
120
+ j(v),
121
+ /* @__PURE__ */ r("span", { "aria-hidden": "true", children: "·" }),
122
+ /* @__PURE__ */ f("span", { className: a === "error" ? o.failedMessage : o.status, role: "status", children: [
123
+ a === "done" && /* @__PURE__ */ r(X, { className: o.doneIcon }),
124
+ a === "error" && /* @__PURE__ */ r(Y, {}),
125
+ a === "uploading" && "Enviando",
126
+ a === "done" && "Enviado",
127
+ a === "error" && (n.error ?? "Falha no envio.")
128
+ ] })
129
+ ] }),
130
+ a === "uploading" && /* @__PURE__ */ r(re, { label: `Enviando ${d}`, showValue: !0, size: "sm", value: h })
131
+ ] }),
132
+ /* @__PURE__ */ f("div", { className: o.actions, children: [
133
+ a === "error" && m && /* @__PURE__ */ r(k, { "aria-label": `Tentar de novo: ${d}`, onClick: () => m(t), size: "sm", variant: "ghost", children: "Tentar de novo" }),
134
+ a === "uploading" && s && /* @__PURE__ */ r(U, { icon: /* @__PURE__ */ r(Z, {}), label: `Cancelar envio de ${d}`, onClick: () => s(t), size: "sm", variant: "ghost" }),
135
+ a !== "uploading" && i && /* @__PURE__ */ r(U, { icon: /* @__PURE__ */ r(ee, {}), label: `Remover ${d}`, onClick: () => i(t), size: "sm", variant: "ghost" })
136
+ ] })
137
+ ] });
138
+ }
139
+ export {
140
+ ve as FileUpload
141
+ };
142
+ //# sourceMappingURL=FileUpload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUpload.js","sources":["../../../../src/components/forms/FileUpload/FileUpload.tsx"],"sourcesContent":["import { useId, useRef, useState, type ChangeEvent, type ComponentPropsWithRef, type DragEvent } from 'react';\nimport { Button } from '../../actions/Button';\nimport { ButtonIcon } from '../../actions/ButtonIcon';\nimport { Progress } from '../../feedback/Progress';\nimport { IconCheckCircle, IconClose, IconExclamationCircle, IconFile, IconTrash, IconUpload } from '../../icons';\nimport { formatarTamanhoDeArquivo } from '../../../utils/formatters/formatarTamanhoDeArquivo';\nimport { Field } from '../Field';\nimport styles from './FileUpload.module.css';\n\nexport type FileRejectionReason = 'type' | 'size';\n\nexport interface FileRejection {\n file: File;\n reason: FileRejectionReason;\n}\n\nexport type FileUploadStatus = 'uploading' | 'done' | 'error';\n\n/** Um arquivo em envio. Quem envia e o produto: ele monta a lista e informa o progresso. */\nexport interface FileUploadItem {\n error?: string;\n id: string;\n name: string;\n /** De 0 a 100. Sem ele, o progresso e indeterminado. */\n progress?: number;\n size: number;\n status: FileUploadStatus;\n}\n\nexport interface FileUploadProps extends Omit<ComponentPropsWithRef<'div'>, 'children' | 'onDrop'> {\n /** Os tipos aceitos, como no `<input type=\"file\">`: `.pdf,image/*`. */\n accept?: string;\n disabled?: boolean;\n /** Vence a mensagem de recusa do proprio campo. */\n error?: string;\n hint?: string;\n items?: readonly FileUploadItem[];\n label: string;\n /** Limite por arquivo, em bytes. */\n maxSize?: number;\n multiple?: boolean;\n onCancel?: (id: string) => void;\n /** Recebe so os arquivos aceitos. */\n onFilesSelected: (files: File[]) => void;\n onFilesRejected?: (rejections: FileRejection[]) => void;\n onRemove?: (id: string) => void;\n onRetry?: (id: string) => void;\n}\n\nconst NOMES_DE_FAMILIA: Record<string, string> = { audio: 'áudio', image: 'imagem', text: 'texto', video: 'vídeo' };\n\nfunction tiposAceitos(accept?: string) {\n return (accept ?? '')\n .split(',')\n .map((tipo) => tipo.trim().toLowerCase())\n .filter(Boolean);\n}\n\nfunction nomeDoTipo(tipo: string) {\n if (tipo.startsWith('.')) {\n return tipo.slice(1).toUpperCase();\n }\n\n const [familia = '', subtipo = ''] = tipo.split('/');\n return subtipo === '*' ? (NOMES_DE_FAMILIA[familia] ?? familia) : subtipo.split('+')[0]!.toUpperCase();\n}\n\nfunction listarComOu(itens: string[]) {\n return itens.length < 2 ? itens.join('') : `${itens.slice(0, -1).join(', ')} ou ${itens.at(-1)}`;\n}\n\nfunction aceitaOTipo(file: File, tipos: string[]) {\n if (tipos.length === 0) {\n return true;\n }\n\n const nome = file.name.toLowerCase();\n const mime = file.type.toLowerCase();\n\n return tipos.some((tipo) => {\n if (tipo.startsWith('.')) return nome.endsWith(tipo);\n if (tipo.endsWith('/*')) return mime.startsWith(tipo.slice(0, -1));\n return mime === tipo;\n });\n}\n\nexport function FileUpload({\n accept,\n className,\n disabled = false,\n error,\n hint,\n id,\n items = [],\n label,\n maxSize,\n multiple = false,\n onCancel,\n onFilesRejected,\n onFilesSelected,\n onRemove,\n onRetry,\n ...props\n}: FileUploadProps) {\n const inputRef = useRef<HTMLInputElement>(null);\n const restrictionsId = useId();\n const [dragging, setDragging] = useState(false);\n const [rejectionMessage, setRejectionMessage] = useState<string>();\n\n const tipos = tiposAceitos(accept);\n const descricaoDosTipos = listarComOu([...new Set(tipos.map(nomeDoTipo))]);\n const limite = maxSize === undefined ? undefined : formatarTamanhoDeArquivo(maxSize);\n const restricoes = [descricaoDosTipos, limite && `até ${limite}`].filter(Boolean).join(', ');\n\n function motivoDaRecusa({ file, reason }: FileRejection, sujeito: string) {\n return reason === 'type' ? `${sujeito} não é ${descricaoDosTipos}.` : `${sujeito} passa de ${limite}.`;\n }\n\n function receber(oferecidos: File[]) {\n const files = multiple ? oferecidos : oferecidos.slice(0, 1);\n const aceitos: File[] = [];\n const recusas: FileRejection[] = [];\n\n for (const file of files) {\n if (!aceitaOTipo(file, tipos)) recusas.push({ file, reason: 'type' });\n else if (maxSize !== undefined && file.size > maxSize) recusas.push({ file, reason: 'size' });\n else aceitos.push(file);\n }\n\n setRejectionMessage(\n recusas.length === 0\n ? undefined\n : recusas.map((recusa) => motivoDaRecusa(recusa, files.length === 1 ? 'O arquivo' : recusa.file.name)).join(' '),\n );\n\n if (aceitos.length > 0) onFilesSelected(aceitos);\n if (recusas.length > 0) onFilesRejected?.(recusas);\n }\n\n function handleChange(event: ChangeEvent<HTMLInputElement>) {\n receber(Array.from(event.target.files ?? []));\n // Limpo, o seletor aceita de novo o mesmo arquivo, como no tentar outra vez.\n event.target.value = '';\n }\n\n function handleDragOver(event: DragEvent<HTMLDivElement>) {\n event.preventDefault();\n event.dataTransfer.dropEffect = disabled ? 'none' : 'copy';\n if (!disabled) setDragging(true);\n }\n\n function handleDragLeave(event: DragEvent<HTMLDivElement>) {\n if (!event.currentTarget.contains(event.relatedTarget as Node | null)) setDragging(false);\n }\n\n function handleDrop(event: DragEvent<HTMLDivElement>) {\n event.preventDefault();\n setDragging(false);\n if (!disabled) receber(Array.from(event.dataTransfer.files));\n }\n\n function choose() {\n inputRef.current?.focus();\n inputRef.current?.click();\n }\n\n const fieldError = error ?? rejectionMessage;\n\n return (\n <div {...props} className={[styles.fileUpload, className].filter(Boolean).join(' ')}>\n <Field aria-describedby={restricoes ? restrictionsId : undefined} error={fieldError} hint={hint} id={id} label={label}>\n {({ describedBy, id: inputId, invalid }) => (\n <div\n className={[styles.zone, dragging && styles.dragging, invalid && styles.invalid, disabled && styles.disabled]\n .filter(Boolean)\n .join(' ')}\n onDragEnter={handleDragOver}\n onDragLeave={handleDragLeave}\n onDragOver={handleDragOver}\n onDrop={handleDrop}\n >\n <span aria-hidden=\"true\" className={styles.iconBox}>\n <IconUpload />\n </span>\n <p className={styles.instruction}>\n {multiple ? 'Arraste os arquivos aqui ou' : 'Arraste o arquivo aqui ou'}\n {/* Fora da tabulacao e da arvore: o controle acessivel e o seletor nativo, que recebe o foco. */}\n <Button aria-hidden disabled={disabled} onClick={choose} size=\"sm\" tabIndex={-1} variant=\"secondary\">\n escolha do computador\n </Button>\n </p>\n {restricoes && (\n <p className={styles.restrictions} id={restrictionsId}>\n {restricoes.charAt(0).toUpperCase() + restricoes.slice(1)}\n </p>\n )}\n <input\n accept={accept}\n aria-describedby={describedBy}\n aria-invalid={invalid || undefined}\n className={styles.input}\n disabled={disabled}\n id={inputId}\n multiple={multiple}\n onChange={handleChange}\n ref={inputRef}\n type=\"file\"\n />\n </div>\n )}\n </Field>\n {items.length > 0 && (\n <ul className={styles.items}>\n {items.map((item) => (\n <FileUploadRow item={item} key={item.id} onCancel={onCancel} onRemove={onRemove} onRetry={onRetry} />\n ))}\n </ul>\n )}\n </div>\n );\n}\n\ninterface FileUploadRowProps extends Pick<FileUploadProps, 'onCancel' | 'onRemove' | 'onRetry'> {\n item: FileUploadItem;\n}\n\nfunction FileUploadRow({ item, onCancel, onRemove, onRetry }: FileUploadRowProps) {\n const { id, name, progress, size, status } = item;\n\n return (\n <li className={[styles.item, status === 'error' && styles.failed].filter(Boolean).join(' ')}>\n <span aria-hidden=\"true\" className={styles.fileIcon}>\n <IconFile />\n </span>\n <div className={styles.body}>\n <span className={styles.name} title={name}>\n {name}\n </span>\n <span className={styles.meta}>\n {formatarTamanhoDeArquivo(size)}\n <span aria-hidden=\"true\">·</span>\n <span className={status === 'error' ? styles.failedMessage : styles.status} role=\"status\">\n {status === 'done' && <IconCheckCircle className={styles.doneIcon} />}\n {status === 'error' && <IconExclamationCircle />}\n {status === 'uploading' && 'Enviando'}\n {status === 'done' && 'Enviado'}\n {status === 'error' && (item.error ?? 'Falha no envio.')}\n </span>\n </span>\n {status === 'uploading' && <Progress label={`Enviando ${name}`} showValue size=\"sm\" value={progress} />}\n </div>\n <div className={styles.actions}>\n {status === 'error' && onRetry && (\n <Button aria-label={`Tentar de novo: ${name}`} onClick={() => onRetry(id)} size=\"sm\" variant=\"ghost\">\n Tentar de novo\n </Button>\n )}\n {status === 'uploading' && onCancel && (\n <ButtonIcon icon={<IconClose />} label={`Cancelar envio de ${name}`} onClick={() => onCancel(id)} size=\"sm\" variant=\"ghost\" />\n )}\n {status !== 'uploading' && onRemove && (\n <ButtonIcon icon={<IconTrash />} label={`Remover ${name}`} onClick={() => onRemove(id)} size=\"sm\" variant=\"ghost\" />\n )}\n </div>\n </li>\n );\n}\n"],"names":["NOMES_DE_FAMILIA","tiposAceitos","accept","tipo","nomeDoTipo","familia","subtipo","listarComOu","itens","aceitaOTipo","file","tipos","nome","mime","FileUpload","className","disabled","error","hint","id","items","label","maxSize","multiple","onCancel","onFilesRejected","onFilesSelected","onRemove","onRetry","props","inputRef","useRef","restrictionsId","useId","dragging","setDragging","useState","rejectionMessage","setRejectionMessage","descricaoDosTipos","limite","formatarTamanhoDeArquivo","restricoes","motivoDaRecusa","reason","sujeito","receber","oferecidos","files","aceitos","recusas","recusa","handleChange","event","handleDragOver","handleDragLeave","handleDrop","choose","_a","_b","fieldError","jsxs","styles","jsx","Field","describedBy","inputId","invalid","IconUpload","Button","item","FileUploadRow","name","progress","size","status","IconFile","IconCheckCircle","IconExclamationCircle","Progress","ButtonIcon","IconClose","IconTrash"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s="_fileUpload_v5fjs_1",n="_zone_v5fjs_9",t="_input_v5fjs_26",i="_dragging_v5fjs_31",e="_invalid_v5fjs_37",o="_disabled_v5fjs_46",_="_iconBox_v5fjs_52",a="_instruction_v5fjs_67",c="_restrictions_v5fjs_81",d="_items_v5fjs_103",f="_item_v5fjs_103",l="_failed_v5fjs_122",v="_fileIcon_v5fjs_126",j="_body_v5fjs_136",r="_name_v5fjs_144",u="_meta_v5fjs_155",g="_status_v5fjs_167",m="_failedMessage_v5fjs_168",b="_doneIcon_v5fjs_178",p="_actions_v5fjs_182",I={fileUpload:s,zone:n,input:t,dragging:i,invalid:e,disabled:o,iconBox:_,instruction:a,restrictions:c,items:d,item:f,failed:l,fileIcon:v,body:j,name:r,meta:u,status:g,failedMessage:m,doneIcon:b,actions:p};exports.actions=p;exports.body=j;exports.default=I;exports.disabled=o;exports.doneIcon=b;exports.dragging=i;exports.failed=l;exports.failedMessage=m;exports.fileIcon=v;exports.fileUpload=s;exports.iconBox=_;exports.input=t;exports.instruction=a;exports.invalid=e;exports.item=f;exports.items=d;exports.meta=u;exports.name=r;exports.restrictions=c;exports.status=g;exports.zone=n;
2
+ //# sourceMappingURL=FileUpload.module.css.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUpload.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,46 @@
1
+ const s = "_fileUpload_v5fjs_1", n = "_zone_v5fjs_9", _ = "_input_v5fjs_26", t = "_dragging_v5fjs_31", o = "_invalid_v5fjs_37", i = "_disabled_v5fjs_46", e = "_iconBox_v5fjs_52", c = "_instruction_v5fjs_67", a = "_restrictions_v5fjs_81", f = "_items_v5fjs_103", d = "_item_v5fjs_103", l = "_failed_v5fjs_122", v = "_fileIcon_v5fjs_126", j = "_body_v5fjs_136", r = "_name_v5fjs_144", g = "_meta_v5fjs_155", m = "_status_v5fjs_167", u = "_failedMessage_v5fjs_168", p = "_doneIcon_v5fjs_178", b = "_actions_v5fjs_182", I = {
2
+ fileUpload: s,
3
+ zone: n,
4
+ input: _,
5
+ dragging: t,
6
+ invalid: o,
7
+ disabled: i,
8
+ iconBox: e,
9
+ instruction: c,
10
+ restrictions: a,
11
+ items: f,
12
+ item: d,
13
+ failed: l,
14
+ fileIcon: v,
15
+ body: j,
16
+ name: r,
17
+ meta: g,
18
+ status: m,
19
+ failedMessage: u,
20
+ doneIcon: p,
21
+ actions: b
22
+ };
23
+ export {
24
+ b as actions,
25
+ j as body,
26
+ I as default,
27
+ i as disabled,
28
+ p as doneIcon,
29
+ t as dragging,
30
+ l as failed,
31
+ u as failedMessage,
32
+ v as fileIcon,
33
+ s as fileUpload,
34
+ e as iconBox,
35
+ _ as input,
36
+ c as instruction,
37
+ o as invalid,
38
+ d as item,
39
+ f as items,
40
+ g as meta,
41
+ r as name,
42
+ a as restrictions,
43
+ m as status,
44
+ n as zone
45
+ };
46
+ //# sourceMappingURL=FileUpload.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUpload.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t="_control_1m42t_1",o="_input_1m42t_7",e="_error_1m42t_26",r="_sm_1m42t_44",_="_md_1m42t_51",n="_toggle_1m42t_67",s={control:t,input:o,error:e,sm:r,md:_,toggle:n};exports.control=t;exports.default=s;exports.error=e;exports.input=o;exports.md=_;exports.sm=r;exports.toggle=n;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o="_control_17rak_1",t="_input_17rak_7",r="_error_17rak_26",e="_sm_17rak_44",_="_md_17rak_51",n="_toggle_17rak_67",s={control:o,input:t,error:r,sm:e,md:_,toggle:n};exports.control=o;exports.default=s;exports.error=r;exports.input=t;exports.md=_;exports.sm=e;exports.toggle=n;
2
2
  //# sourceMappingURL=InputPassword.module.css.cjs.map
@@ -1,18 +1,18 @@
1
- const t = "_control_1m42t_1", o = "_input_1m42t_7", _ = "_error_1m42t_26", n = "_sm_1m42t_44", r = "_md_1m42t_51", s = "_toggle_1m42t_67", m = {
2
- control: t,
3
- input: o,
4
- error: _,
5
- sm: n,
6
- md: r,
1
+ const o = "_control_17rak_1", r = "_input_17rak_7", t = "_error_17rak_26", _ = "_sm_17rak_44", n = "_md_17rak_51", s = "_toggle_17rak_67", c = {
2
+ control: o,
3
+ input: r,
4
+ error: t,
5
+ sm: _,
6
+ md: n,
7
7
  toggle: s
8
8
  };
9
9
  export {
10
- t as control,
11
- m as default,
12
- _ as error,
13
- o as input,
14
- r as md,
15
- n as sm,
10
+ o as control,
11
+ c as default,
12
+ t as error,
13
+ r as input,
14
+ n as md,
15
+ _ as sm,
16
16
  s as toggle
17
17
  };
18
18
  //# sourceMappingURL=InputPassword.module.css.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react/jsx-runtime"),v=require("../../../hooks/useMergedRefs.cjs"),r=require("./InputText.module.css.cjs"),F=require("../../../hooks/useCharacterCount/useCharacterCount.cjs"),S=require("../Field/Field.cjs");function B({"aria-describedby":d,"aria-invalid":o,className:l,error:i,hint:f,id:b,label:p,maxLength:s,required:u=!1,size:j="md",showCharacterCount:m=!1,defaultValue:a,onChange:t,value:n,ref:x,...y}){const{ref:R,count:q,updateCount:C}=F.useCharacterCount(n,a),T=v.useMergedRefs(R,x),g=[r.default.input,r.default[j],i&&r.default.error,l].filter(Boolean).join(" ");function I(e){C(e.target.value),t==null||t(e)}return c.jsx(S.Field,{"aria-describedby":d,characterCount:q,error:i,hint:f,id:b,label:p,maxLength:s,required:u,showCharacterCount:m,children:({id:e,describedBy:M,invalid:h})=>c.jsx("input",{...y,defaultValue:a,id:e,ref:T,"aria-describedby":M,"aria-invalid":h||o,className:g,maxLength:s,onChange:I,required:u,value:n})})}exports.InputText=B;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),B=require("../../../hooks/useMergedRefs.cjs"),t=require("./InputText.module.css.cjs"),F=require("../../../hooks/useCharacterCount/useCharacterCount.cjs"),S=require("../Field/Field.cjs");function w({"aria-describedby":o,"aria-invalid":f,className:m,error:p,hint:b,icon:i,id:j,label:x,maxLength:s,required:n=!1,size:u="md",showCharacterCount:h=!1,defaultValue:d,onChange:a,value:c,ref:y,...R}){const{ref:q,count:C,updateCount:I}=F.useCharacterCount(c,d),N=B.useMergedRefs(q,y);function T(e){I(e.target.value),a==null||a(e)}return r.jsx(S.Field,{"aria-describedby":o,characterCount:C,error:p,hint:b,id:j,label:x,maxLength:s,required:n,showCharacterCount:h,size:u,children:({className:e,id:g,describedBy:v,invalid:M})=>{const l=r.jsx("input",{...R,defaultValue:d,id:g,ref:N,"aria-describedby":v,"aria-invalid":M||f,className:[e,i&&t.default.withIcon,m].filter(Boolean).join(" "),maxLength:s,onChange:T,required:n,value:c});return i?r.jsxs("div",{className:[t.default.control,u==="sm"&&t.default.sm].filter(Boolean).join(" "),children:[r.jsx("span",{"aria-hidden":"true",className:t.default.icon,children:i}),l]}):l}})}exports.InputText=w;
2
2
  //# sourceMappingURL=InputText.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputText.cjs","sources":["../../../../src/components/forms/InputText/InputText.tsx"],"sourcesContent":["import { type ChangeEvent, type ComponentPropsWithRef } from 'react';\nimport { useCharacterCount } from '../../../hooks/useCharacterCount';\nimport { Field } from '../Field';\nimport { useMergedRefs } from '../../../hooks/useMergedRefs';\nimport styles from './InputText.module.css';\n\nexport type InputTextSize = 'sm' | 'md';\n\nexport interface InputTextProps extends Omit<ComponentPropsWithRef<'input'>, 'size'> {\n error?: string;\n hint?: string;\n label?: string;\n size?: InputTextSize;\n showCharacterCount?: boolean;\n}\n\nexport function InputText({\n 'aria-describedby': ariaDescribedBy,\n 'aria-invalid': ariaInvalid,\n className,\n error,\n hint,\n id: providedId,\n label,\n maxLength,\n required = false,\n size = 'md',\n showCharacterCount = false,\n defaultValue,\n onChange,\n value,\n ref,\n ...props\n}: InputTextProps) {\n const { ref: inputRef, count, updateCount } = useCharacterCount<HTMLInputElement>(value, defaultValue);\n const mergedRef = useMergedRefs(inputRef, ref);\n const classes = [styles.input, styles[size], error && styles.error, className]\n .filter(Boolean)\n .join(' ');\n\n function handleChange(event: ChangeEvent<HTMLInputElement>) {\n updateCount(event.target.value);\n onChange?.(event);\n }\n\n return (\n <Field\n aria-describedby={ariaDescribedBy}\n characterCount={count}\n error={error}\n hint={hint}\n id={providedId}\n label={label}\n maxLength={maxLength}\n required={required}\n showCharacterCount={showCharacterCount}\n >\n {({ id, describedBy, invalid }) => (\n <input\n {...props}\n defaultValue={defaultValue}\n id={id}\n ref={mergedRef}\n aria-describedby={describedBy}\n aria-invalid={invalid || ariaInvalid}\n className={classes}\n maxLength={maxLength}\n onChange={handleChange}\n required={required}\n value={value}\n />\n )}\n </Field>\n );\n}\n"],"names":["InputText","ariaDescribedBy","ariaInvalid","className","error","hint","providedId","label","maxLength","required","size","showCharacterCount","defaultValue","onChange","value","ref","props","inputRef","count","updateCount","useCharacterCount","mergedRef","useMergedRefs","classes","styles","handleChange","event","jsx","Field","id","describedBy","invalid"],"mappings":"+SAgBO,SAASA,EAAU,CACxB,mBAAoBC,EACpB,eAAgBC,EAChB,UAAAC,EACA,MAAAC,EACA,KAAAC,EACA,GAAIC,EACJ,MAAAC,EACA,UAAAC,EACA,SAAAC,EAAW,GACX,KAAAC,EAAO,KACP,mBAAAC,EAAqB,GACrB,aAAAC,EACA,SAAAC,EACA,MAAAC,EACA,IAAAC,EACA,GAAGC,CACL,EAAmB,CACjB,KAAM,CAAE,IAAKC,EAAU,MAAAC,EAAO,YAAAC,GAAgBC,EAAAA,kBAAoCN,EAAOF,CAAY,EAC/FS,EAAYC,EAAAA,cAAcL,EAAUF,CAAG,EACvCQ,EAAU,CAACC,EAAAA,QAAO,MAAOA,EAAAA,QAAOd,CAAI,EAAGN,GAASoB,EAAAA,QAAO,MAAOrB,CAAS,EAC1E,OAAO,OAAO,EACd,KAAK,GAAG,EAEX,SAASsB,EAAaC,EAAsC,CAC1DP,EAAYO,EAAM,OAAO,KAAK,EAC9Bb,GAAA,MAAAA,EAAWa,EACb,CAEA,OACEC,EAAAA,IAACC,EAAAA,MAAA,CACC,mBAAkB3B,EAClB,eAAgBiB,EAChB,MAAAd,EACA,KAAAC,EACA,GAAIC,EACJ,MAAAC,EACA,UAAAC,EACA,SAAAC,EACA,mBAAAE,EAEC,SAAA,CAAC,CAAE,GAAAkB,EAAI,YAAAC,EAAa,QAAAC,KACnBJ,EAAAA,IAAC,QAAA,CACE,GAAGX,EACJ,aAAAJ,EACA,GAAAiB,EACA,IAAKR,EACL,mBAAkBS,EAClB,eAAcC,GAAW7B,EACzB,UAAWqB,EACX,UAAAf,EACA,SAAUiB,EACV,SAAAhB,EACA,MAAAK,CAAA,CAAA,CACF,CAAA,CAIR"}
1
+ {"version":3,"file":"InputText.cjs","sources":["../../../../src/components/forms/InputText/InputText.tsx"],"sourcesContent":["import { type ChangeEvent, type ComponentPropsWithRef, type ReactNode } from 'react';\nimport { useCharacterCount } from '../../../hooks/useCharacterCount';\nimport { Field } from '../Field';\nimport { useMergedRefs } from '../../../hooks/useMergedRefs';\nimport styles from './InputText.module.css';\n\nexport type InputTextSize = 'sm' | 'md';\n\nexport interface InputTextProps extends Omit<ComponentPropsWithRef<'input'>, 'size'> {\n error?: string;\n hint?: string;\n /** Icone decorativo a frente do texto, como a lupa de uma busca. O nome do campo continua no `label`. */\n icon?: ReactNode;\n label?: string;\n size?: InputTextSize;\n showCharacterCount?: boolean;\n}\n\nexport function InputText({\n 'aria-describedby': ariaDescribedBy,\n 'aria-invalid': ariaInvalid,\n className,\n error,\n hint,\n icon,\n id: providedId,\n label,\n maxLength,\n required = false,\n size = 'md',\n showCharacterCount = false,\n defaultValue,\n onChange,\n value,\n ref,\n ...props\n}: InputTextProps) {\n const { ref: inputRef, count, updateCount } = useCharacterCount<HTMLInputElement>(value, defaultValue);\n const mergedRef = useMergedRefs(inputRef, ref);\n\n function handleChange(event: ChangeEvent<HTMLInputElement>) {\n updateCount(event.target.value);\n onChange?.(event);\n }\n\n return (\n <Field\n aria-describedby={ariaDescribedBy}\n characterCount={count}\n error={error}\n hint={hint}\n id={providedId}\n label={label}\n maxLength={maxLength}\n required={required}\n showCharacterCount={showCharacterCount}\n size={size}\n >\n {({ className: controlClassName, id, describedBy, invalid }) => {\n const input = (\n <input\n {...props}\n defaultValue={defaultValue}\n id={id}\n ref={mergedRef}\n aria-describedby={describedBy}\n aria-invalid={invalid || ariaInvalid}\n className={[controlClassName, icon && styles.withIcon, className].filter(Boolean).join(' ')}\n maxLength={maxLength}\n onChange={handleChange}\n required={required}\n value={value}\n />\n );\n\n if (!icon) {\n return input;\n }\n\n return (\n <div className={[styles.control, size === 'sm' && styles.sm].filter(Boolean).join(' ')}>\n <span aria-hidden=\"true\" className={styles.icon}>\n {icon}\n </span>\n {input}\n </div>\n );\n }}\n </Field>\n );\n}\n"],"names":["InputText","ariaDescribedBy","ariaInvalid","className","error","hint","icon","providedId","label","maxLength","required","size","showCharacterCount","defaultValue","onChange","value","ref","props","inputRef","count","updateCount","useCharacterCount","mergedRef","useMergedRefs","handleChange","event","jsx","Field","controlClassName","id","describedBy","invalid","input","styles"],"mappings":"+SAkBO,SAASA,EAAU,CACxB,mBAAoBC,EACpB,eAAgBC,EAChB,UAAAC,EACA,MAAAC,EACA,KAAAC,EACA,KAAAC,EACA,GAAIC,EACJ,MAAAC,EACA,UAAAC,EACA,SAAAC,EAAW,GACX,KAAAC,EAAO,KACP,mBAAAC,EAAqB,GACrB,aAAAC,EACA,SAAAC,EACA,MAAAC,EACA,IAAAC,EACA,GAAGC,CACL,EAAmB,CACjB,KAAM,CAAE,IAAKC,EAAU,MAAAC,EAAO,YAAAC,GAAgBC,EAAAA,kBAAoCN,EAAOF,CAAY,EAC/FS,EAAYC,EAAAA,cAAcL,EAAUF,CAAG,EAE7C,SAASQ,EAAaC,EAAsC,CAC1DL,EAAYK,EAAM,OAAO,KAAK,EAC9BX,GAAA,MAAAA,EAAWW,EACb,CAEA,OACEC,EAAAA,IAACC,EAAAA,MAAA,CACC,mBAAkB1B,EAClB,eAAgBkB,EAChB,MAAAf,EACA,KAAAC,EACA,GAAIE,EACJ,MAAAC,EACA,UAAAC,EACA,SAAAC,EACA,mBAAAE,EACA,KAAAD,EAEC,UAAC,CAAE,UAAWiB,EAAkB,GAAAC,EAAI,YAAAC,EAAa,QAAAC,KAAc,CAC9D,MAAMC,EACJN,EAAAA,IAAC,QAAA,CACE,GAAGT,EACJ,aAAAJ,EACA,GAAAgB,EACA,IAAKP,EACL,mBAAkBQ,EAClB,eAAcC,GAAW7B,EACzB,UAAW,CAAC0B,EAAkBtB,GAAQ2B,EAAAA,QAAO,SAAU9B,CAAS,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,EAC1F,UAAAM,EACA,SAAUe,EACV,SAAAd,EACA,MAAAK,CAAA,CAAA,EAIJ,OAAKT,SAKF,MAAA,CAAI,UAAW,CAAC2B,EAAAA,QAAO,QAAStB,IAAS,MAAQsB,EAAAA,QAAO,EAAE,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,EACnF,SAAA,CAAAP,MAAC,QAAK,cAAY,OAAO,UAAWO,EAAAA,QAAO,KACxC,SAAA3B,EACH,EACC0B,CAAA,EACH,EATOA,CAWX,CAAA,CAAA,CAGN"}