@govbr-ds/webcomponents 2.0.0-next.20 → 2.0.0-next.22

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 (375) hide show
  1. package/dist/cjs/br-avatar.cjs.entry.js +2 -2
  2. package/dist/cjs/br-avatar.cjs.entry.js.map +1 -1
  3. package/dist/cjs/br-button_2.cjs.entry.js +175 -56
  4. package/dist/cjs/br-button_2.cjs.entry.js.map +1 -1
  5. package/dist/cjs/br-checkbox.cjs.entry.js +2 -2
  6. package/dist/cjs/br-checkbox.cjs.entry.js.map +1 -1
  7. package/dist/cjs/br-checkgroup.cjs.entry.js +101 -0
  8. package/dist/cjs/br-checkgroup.cjs.entry.js.map +1 -0
  9. package/dist/cjs/br-dropdown.cjs.entry.js +3 -3
  10. package/dist/cjs/br-dropdown.cjs.entry.js.map +1 -1
  11. package/dist/cjs/br-input_3.cjs.entry.js +284 -0
  12. package/dist/cjs/br-input_3.cjs.entry.js.map +1 -0
  13. package/dist/cjs/br-item.cjs.entry.js +40 -20
  14. package/dist/cjs/br-item.cjs.entry.js.map +1 -1
  15. package/dist/cjs/br-loading.cjs.entry.js +3 -3
  16. package/dist/cjs/br-loading.cjs.entry.js.map +1 -1
  17. package/dist/cjs/br-message.cjs.entry.js +3 -3
  18. package/dist/cjs/br-message.cjs.entry.js.map +1 -1
  19. package/dist/cjs/br-select.cjs.entry.js +281 -0
  20. package/dist/cjs/br-select.cjs.entry.js.map +1 -0
  21. package/dist/cjs/br-switch.cjs.entry.js +9 -6
  22. package/dist/cjs/br-switch.cjs.entry.js.map +1 -1
  23. package/dist/cjs/br-tag.cjs.entry.js +3 -3
  24. package/dist/cjs/br-tag.cjs.entry.js.map +1 -1
  25. package/dist/cjs/br-textarea.cjs.entry.js +3 -3
  26. package/dist/cjs/br-textarea.cjs.entry.js.map +1 -1
  27. package/dist/cjs/br-upload.cjs.entry.js +3 -3
  28. package/dist/cjs/br-upload.cjs.entry.js.map +1 -1
  29. package/dist/cjs/{index-81c11ce2.js → index-4fc1aab1.js} +851 -624
  30. package/dist/cjs/index-4fc1aab1.js.map +1 -0
  31. package/dist/cjs/loader.cjs.js +2 -2
  32. package/dist/cjs/webcomponents.cjs.js +3 -3
  33. package/dist/cjs/webcomponents.cjs.js.map +1 -1
  34. package/dist/collection/collection-manifest.json +3 -1
  35. package/dist/collection/components/avatar/avatar.css +11 -1
  36. package/dist/collection/components/avatar/avatar.js +16 -0
  37. package/dist/collection/components/avatar/avatar.js.map +1 -1
  38. package/dist/collection/components/button/button.css +11 -1
  39. package/dist/collection/components/button/button.js +18 -0
  40. package/dist/collection/components/button/button.js.map +1 -1
  41. package/dist/collection/components/checkbox/checkbox.css +11 -1
  42. package/dist/collection/components/checkbox/checkbox.js +18 -0
  43. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  44. package/dist/collection/components/checkgroup/checkgroup.css +605 -0
  45. package/dist/collection/components/checkgroup/checkgroup.js +197 -0
  46. package/dist/collection/components/checkgroup/checkgroup.js.map +1 -0
  47. package/dist/collection/components/dropdown/dropdown.css +11 -1
  48. package/dist/collection/components/dropdown/dropdown.js +3 -1
  49. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  50. package/dist/collection/components/icon/icon.css +11 -1
  51. package/dist/collection/components/icon/icon.js +15 -1
  52. package/dist/collection/components/icon/icon.js.map +1 -1
  53. package/dist/collection/components/input/input.css +11 -1
  54. package/dist/collection/components/input/input.js +47 -1
  55. package/dist/collection/components/input/input.js.map +1 -1
  56. package/dist/collection/components/item/item.css +11 -1
  57. package/dist/collection/components/item/item.js +65 -19
  58. package/dist/collection/components/item/item.js.map +1 -1
  59. package/dist/collection/components/list/list.css +11 -1
  60. package/dist/collection/components/list/list.js +7 -1
  61. package/dist/collection/components/list/list.js.map +1 -1
  62. package/dist/collection/components/loading/loading.css +11 -1
  63. package/dist/collection/components/loading/loading.js +9 -1
  64. package/dist/collection/components/loading/loading.js.map +1 -1
  65. package/dist/collection/components/message/message.css +11 -1
  66. package/dist/collection/components/message/message.js +15 -1
  67. package/dist/collection/components/message/message.js.map +1 -1
  68. package/dist/collection/components/radio/radio.css +11 -1
  69. package/dist/collection/components/radio/radio.js +17 -1
  70. package/dist/collection/components/radio/radio.js.map +1 -1
  71. package/dist/collection/components/select/select.css +865 -0
  72. package/dist/collection/components/select/select.js +509 -0
  73. package/dist/collection/components/select/select.js.map +1 -0
  74. package/dist/collection/components/switch/switch.css +11 -1
  75. package/dist/collection/components/switch/switch.js +30 -5
  76. package/dist/collection/components/switch/switch.js.map +1 -1
  77. package/dist/collection/components/tag/tag.css +11 -1
  78. package/dist/collection/components/tag/tag.js +17 -1
  79. package/dist/collection/components/tag/tag.js.map +1 -1
  80. package/dist/collection/components/textarea/textarea.css +11 -1
  81. package/dist/collection/components/textarea/textarea.js +19 -1
  82. package/dist/collection/components/textarea/textarea.js.map +1 -1
  83. package/dist/collection/components/upload/upload.css +11 -1
  84. package/dist/collection/components/upload/upload.js +13 -3
  85. package/dist/collection/components/upload/upload.js.map +1 -1
  86. package/dist/collection/index.js.map +1 -1
  87. package/dist/collection/pages/components/checkgroup/index.js +20 -0
  88. package/dist/collection/pages/components/item/index.js +1 -1
  89. package/dist/collection/pages/components/select/index.js +18 -0
  90. package/dist/collection/pages/components/switch/index.js +1 -1
  91. package/dist/collection/pages/scripts/menu.js +22 -2
  92. package/dist/collection/utils/inherited-attributes.js.map +1 -1
  93. package/dist/collection/utils/interfaces.js.map +1 -1
  94. package/dist/collection/utils/unique-id-generator.js.map +1 -1
  95. package/dist/components/br-avatar.js +1 -1
  96. package/dist/components/br-avatar.js.map +1 -1
  97. package/dist/components/br-button.js +1 -1
  98. package/dist/components/br-checkbox.js +1 -1
  99. package/dist/components/br-checkbox.js.map +1 -1
  100. package/dist/components/br-checkgroup.d.ts +11 -0
  101. package/dist/components/br-checkgroup.js +6 -0
  102. package/dist/components/br-checkgroup.js.map +1 -0
  103. package/dist/components/br-dropdown.js +1 -1
  104. package/dist/components/br-dropdown.js.map +1 -1
  105. package/dist/components/br-icon.js +1 -1
  106. package/dist/components/br-input.js +1 -1
  107. package/dist/components/br-input.js.map +1 -1
  108. package/dist/components/br-item.js +1 -1
  109. package/dist/components/br-item.js.map +1 -1
  110. package/dist/components/br-list.js +1 -1
  111. package/dist/components/br-list.js.map +1 -1
  112. package/dist/components/br-loading.js +1 -1
  113. package/dist/components/br-loading.js.map +1 -1
  114. package/dist/components/br-message.js +1 -1
  115. package/dist/components/br-message.js.map +1 -1
  116. package/dist/components/br-radio.js +1 -1
  117. package/dist/components/br-radio.js.map +1 -1
  118. package/dist/components/br-select.d.ts +11 -0
  119. package/dist/components/br-select.js +6 -0
  120. package/dist/components/br-select.js.map +1 -0
  121. package/dist/components/br-switch.js +1 -1
  122. package/dist/components/br-switch.js.map +1 -1
  123. package/dist/components/br-tag.js +1 -1
  124. package/dist/components/br-tag.js.map +1 -1
  125. package/dist/components/br-textarea.js +1 -1
  126. package/dist/components/br-textarea.js.map +1 -1
  127. package/dist/components/br-upload.js +1 -1
  128. package/dist/components/br-upload.js.map +1 -1
  129. package/dist/components/index.js +1 -1
  130. package/dist/components/p-126ad66d.js +17 -0
  131. package/dist/components/p-126ad66d.js.map +1 -0
  132. package/dist/components/p-184a3074.js +6 -0
  133. package/dist/components/p-184a3074.js.map +1 -0
  134. package/dist/components/p-5cb170a7.js +6 -0
  135. package/dist/components/p-5cb170a7.js.map +1 -0
  136. package/dist/components/p-65616dbd.js +7 -0
  137. package/dist/components/p-65616dbd.js.map +1 -0
  138. package/dist/components/p-65c54cc8.js +6 -0
  139. package/dist/components/p-65c54cc8.js.map +1 -0
  140. package/dist/components/p-a6dcabb0.js +6 -0
  141. package/dist/components/p-a6dcabb0.js.map +1 -0
  142. package/dist/components/p-ace62688.js +6 -0
  143. package/dist/components/p-ace62688.js.map +1 -0
  144. package/dist/esm/br-avatar.entry.js +2 -2
  145. package/dist/esm/br-avatar.entry.js.map +1 -1
  146. package/dist/esm/br-button_2.entry.js +175 -56
  147. package/dist/esm/br-button_2.entry.js.map +1 -1
  148. package/dist/esm/br-checkbox.entry.js +2 -2
  149. package/dist/esm/br-checkbox.entry.js.map +1 -1
  150. package/dist/esm/br-checkgroup.entry.js +97 -0
  151. package/dist/esm/br-checkgroup.entry.js.map +1 -0
  152. package/dist/esm/br-dropdown.entry.js +3 -3
  153. package/dist/esm/br-dropdown.entry.js.map +1 -1
  154. package/dist/esm/br-input_3.entry.js +278 -0
  155. package/dist/esm/br-input_3.entry.js.map +1 -0
  156. package/dist/esm/br-item.entry.js +40 -20
  157. package/dist/esm/br-item.entry.js.map +1 -1
  158. package/dist/esm/br-loading.entry.js +3 -3
  159. package/dist/esm/br-loading.entry.js.map +1 -1
  160. package/dist/esm/br-message.entry.js +3 -3
  161. package/dist/esm/br-message.entry.js.map +1 -1
  162. package/dist/esm/br-select.entry.js +277 -0
  163. package/dist/esm/br-select.entry.js.map +1 -0
  164. package/dist/esm/br-switch.entry.js +9 -6
  165. package/dist/esm/br-switch.entry.js.map +1 -1
  166. package/dist/esm/br-tag.entry.js +3 -3
  167. package/dist/esm/br-tag.entry.js.map +1 -1
  168. package/dist/esm/br-textarea.entry.js +3 -3
  169. package/dist/esm/br-textarea.entry.js.map +1 -1
  170. package/dist/esm/br-upload.entry.js +3 -3
  171. package/dist/esm/br-upload.entry.js.map +1 -1
  172. package/dist/esm/{index-aab4a630.js → index-45af9b53.js} +851 -624
  173. package/dist/esm/index-45af9b53.js.map +1 -0
  174. package/dist/esm/loader.js +3 -3
  175. package/dist/esm/webcomponents.js +4 -4
  176. package/dist/esm/webcomponents.js.map +1 -1
  177. package/dist/esm-es5/br-avatar.entry.js +1 -1
  178. package/dist/esm-es5/br-avatar.entry.js.map +1 -1
  179. package/dist/esm-es5/br-button_2.entry.js +4 -4
  180. package/dist/esm-es5/br-button_2.entry.js.map +1 -1
  181. package/dist/esm-es5/br-checkbox.entry.js +1 -1
  182. package/dist/esm-es5/br-checkbox.entry.js.map +1 -1
  183. package/dist/esm-es5/br-checkgroup.entry.js +6 -0
  184. package/dist/esm-es5/br-checkgroup.entry.js.map +1 -0
  185. package/dist/esm-es5/br-dropdown.entry.js +1 -1
  186. package/dist/esm-es5/br-dropdown.entry.js.map +1 -1
  187. package/dist/esm-es5/br-input_3.entry.js +6 -0
  188. package/dist/esm-es5/br-input_3.entry.js.map +1 -0
  189. package/dist/esm-es5/br-item.entry.js +1 -1
  190. package/dist/esm-es5/br-item.entry.js.map +1 -1
  191. package/dist/esm-es5/br-loading.entry.js +1 -1
  192. package/dist/esm-es5/br-loading.entry.js.map +1 -1
  193. package/dist/esm-es5/br-message.entry.js +1 -1
  194. package/dist/esm-es5/br-message.entry.js.map +1 -1
  195. package/dist/esm-es5/br-select.entry.js +6 -0
  196. package/dist/esm-es5/br-select.entry.js.map +1 -0
  197. package/dist/esm-es5/br-switch.entry.js +2 -2
  198. package/dist/esm-es5/br-switch.entry.js.map +1 -1
  199. package/dist/esm-es5/br-tag.entry.js +1 -1
  200. package/dist/esm-es5/br-tag.entry.js.map +1 -1
  201. package/dist/esm-es5/br-textarea.entry.js +1 -1
  202. package/dist/esm-es5/br-textarea.entry.js.map +1 -1
  203. package/dist/esm-es5/br-upload.entry.js +1 -1
  204. package/dist/esm-es5/br-upload.entry.js.map +1 -1
  205. package/dist/esm-es5/index-45af9b53.js +6 -0
  206. package/dist/esm-es5/index-45af9b53.js.map +1 -0
  207. package/dist/esm-es5/loader.js +2 -2
  208. package/dist/esm-es5/loader.js.map +1 -1
  209. package/dist/esm-es5/webcomponents.js +2 -2
  210. package/dist/esm-es5/webcomponents.js.map +1 -1
  211. package/dist/types/components/checkgroup/checkgroup.d.ts +52 -0
  212. package/dist/types/components/item/item.d.ts +5 -3
  213. package/dist/types/components/select/select.d.ts +98 -0
  214. package/dist/types/components/switch/switch.d.ts +2 -1
  215. package/dist/types/components/upload/upload.d.ts +2 -2
  216. package/dist/types/components.d.ts +171 -6
  217. package/dist/webcomponents/p-04a3d24e.system.entry.js +6 -0
  218. package/dist/webcomponents/{p-71be2e3f.system.entry.js.map → p-04a3d24e.system.entry.js.map} +1 -1
  219. package/dist/webcomponents/p-057dcb7c.system.entry.js +6 -0
  220. package/dist/webcomponents/p-057dcb7c.system.entry.js.map +1 -0
  221. package/dist/webcomponents/p-19b77f11.entry.js +6 -0
  222. package/dist/webcomponents/{p-5539ffa8.entry.js.map → p-19b77f11.entry.js.map} +1 -1
  223. package/dist/webcomponents/p-1acbc680.entry.js +6 -0
  224. package/dist/webcomponents/p-1acbc680.entry.js.map +1 -0
  225. package/dist/webcomponents/p-25d82c85.system.entry.js +6 -0
  226. package/dist/webcomponents/p-25d82c85.system.entry.js.map +1 -0
  227. package/dist/webcomponents/p-27b820ac.system.entry.js +6 -0
  228. package/dist/webcomponents/p-27b820ac.system.entry.js.map +1 -0
  229. package/dist/webcomponents/p-2b0430f4.entry.js +6 -0
  230. package/dist/webcomponents/p-2b0430f4.entry.js.map +1 -0
  231. package/dist/webcomponents/p-2ff5f694.system.entry.js +6 -0
  232. package/dist/webcomponents/p-2ff5f694.system.entry.js.map +1 -0
  233. package/dist/webcomponents/p-357e1105.system.entry.js +6 -0
  234. package/dist/webcomponents/p-357e1105.system.entry.js.map +1 -0
  235. package/dist/webcomponents/p-35f07e4b.entry.js +6 -0
  236. package/dist/webcomponents/p-35f07e4b.entry.js.map +1 -0
  237. package/dist/webcomponents/p-3e449bd5.system.entry.js +6 -0
  238. package/dist/webcomponents/p-3e449bd5.system.entry.js.map +1 -0
  239. package/dist/webcomponents/p-46a75920.system.js +6 -0
  240. package/dist/webcomponents/p-46a75920.system.js.map +1 -0
  241. package/dist/webcomponents/p-491cdd00.entry.js +6 -0
  242. package/dist/webcomponents/p-491cdd00.entry.js.map +1 -0
  243. package/dist/webcomponents/p-52e5bcdd.entry.js +6 -0
  244. package/dist/webcomponents/p-52e5bcdd.entry.js.map +1 -0
  245. package/dist/webcomponents/p-60879543.system.entry.js +6 -0
  246. package/dist/webcomponents/p-60879543.system.entry.js.map +1 -0
  247. package/dist/webcomponents/p-6bfb8eb6.entry.js +6 -0
  248. package/dist/webcomponents/p-6bfb8eb6.entry.js.map +1 -0
  249. package/dist/webcomponents/p-6d0d2846.system.js +7 -0
  250. package/dist/webcomponents/p-6d0d2846.system.js.map +1 -0
  251. package/dist/webcomponents/p-7c3554a7.system.entry.js +17 -0
  252. package/dist/webcomponents/p-7c3554a7.system.entry.js.map +1 -0
  253. package/dist/webcomponents/p-8fd11f97.system.entry.js +6 -0
  254. package/dist/webcomponents/p-8fd11f97.system.entry.js.map +1 -0
  255. package/dist/webcomponents/p-907fab5d.entry.js +6 -0
  256. package/dist/webcomponents/p-907fab5d.entry.js.map +1 -0
  257. package/dist/webcomponents/p-929db2b8.entry.js +17 -0
  258. package/dist/webcomponents/p-929db2b8.entry.js.map +1 -0
  259. package/dist/webcomponents/p-98e6f0c1.system.entry.js +6 -0
  260. package/dist/webcomponents/p-98e6f0c1.system.entry.js.map +1 -0
  261. package/dist/webcomponents/p-9b0f20d7.entry.js +6 -0
  262. package/dist/webcomponents/p-9b0f20d7.entry.js.map +1 -0
  263. package/dist/webcomponents/p-ad5a7b8b.system.entry.js +6 -0
  264. package/dist/webcomponents/{p-f5e674ba.system.entry.js.map → p-ad5a7b8b.system.entry.js.map} +1 -1
  265. package/dist/webcomponents/p-c3811f09.js +7 -0
  266. package/dist/webcomponents/p-c3811f09.js.map +1 -0
  267. package/dist/webcomponents/p-c6a9c8ac.entry.js +6 -0
  268. package/dist/webcomponents/p-c6a9c8ac.entry.js.map +1 -0
  269. package/dist/webcomponents/p-d46495d5.system.entry.js +6 -0
  270. package/dist/webcomponents/p-d46495d5.system.entry.js.map +1 -0
  271. package/dist/webcomponents/p-dc3d284a.entry.js +6 -0
  272. package/dist/webcomponents/p-dc3d284a.entry.js.map +1 -0
  273. package/dist/webcomponents/p-e98418a4.entry.js +6 -0
  274. package/dist/webcomponents/{p-e8b5b14f.entry.js.map → p-e98418a4.entry.js.map} +1 -1
  275. package/dist/webcomponents/p-ef89bcc9.system.entry.js +6 -0
  276. package/dist/webcomponents/p-ef89bcc9.system.entry.js.map +1 -0
  277. package/dist/webcomponents/p-fc11eac9.entry.js +6 -0
  278. package/dist/webcomponents/p-fc11eac9.entry.js.map +1 -0
  279. package/dist/webcomponents/webcomponents.esm.js +1 -1
  280. package/dist/webcomponents/webcomponents.esm.js.map +1 -1
  281. package/dist/webcomponents/webcomponents.js +1 -1
  282. package/hydrate/index.js +1434 -645
  283. package/hydrate/index.mjs +1434 -645
  284. package/package.json +2 -2
  285. package/vscode-data.json +72 -2
  286. package/dist/cjs/br-input.cjs.entry.js +0 -150
  287. package/dist/cjs/br-input.cjs.entry.js.map +0 -1
  288. package/dist/cjs/br-list.cjs.entry.js +0 -82
  289. package/dist/cjs/br-list.cjs.entry.js.map +0 -1
  290. package/dist/cjs/br-radio.cjs.entry.js +0 -79
  291. package/dist/cjs/br-radio.cjs.entry.js.map +0 -1
  292. package/dist/cjs/index-81c11ce2.js.map +0 -1
  293. package/dist/collection/scripts/menu.js +0 -146
  294. package/dist/components/p-2d8e59f6.js +0 -7
  295. package/dist/components/p-2d8e59f6.js.map +0 -1
  296. package/dist/components/p-64831033.js +0 -17
  297. package/dist/components/p-64831033.js.map +0 -1
  298. package/dist/components/p-e4af8eac.js +0 -6
  299. package/dist/components/p-e4af8eac.js.map +0 -1
  300. package/dist/esm/br-input.entry.js +0 -146
  301. package/dist/esm/br-input.entry.js.map +0 -1
  302. package/dist/esm/br-list.entry.js +0 -78
  303. package/dist/esm/br-list.entry.js.map +0 -1
  304. package/dist/esm/br-radio.entry.js +0 -75
  305. package/dist/esm/br-radio.entry.js.map +0 -1
  306. package/dist/esm/index-aab4a630.js.map +0 -1
  307. package/dist/esm-es5/br-input.entry.js +0 -6
  308. package/dist/esm-es5/br-input.entry.js.map +0 -1
  309. package/dist/esm-es5/br-list.entry.js +0 -6
  310. package/dist/esm-es5/br-list.entry.js.map +0 -1
  311. package/dist/esm-es5/br-radio.entry.js +0 -6
  312. package/dist/esm-es5/br-radio.entry.js.map +0 -1
  313. package/dist/esm-es5/index-aab4a630.js +0 -6
  314. package/dist/esm-es5/index-aab4a630.js.map +0 -1
  315. package/dist/playwright.config.js +0 -39
  316. package/dist/playwright.config.js.map +0 -1
  317. package/dist/types/builds/govbr-ds/bibliotecas/wbc/govbr-ds-wbc/packages/webcomponents/.stencil/playwright.config.d.ts +0 -5
  318. package/dist/webcomponents/p-05343155.system.entry.js +0 -6
  319. package/dist/webcomponents/p-05343155.system.entry.js.map +0 -1
  320. package/dist/webcomponents/p-183614c8.system.entry.js +0 -6
  321. package/dist/webcomponents/p-183614c8.system.entry.js.map +0 -1
  322. package/dist/webcomponents/p-2083ff7b.entry.js +0 -6
  323. package/dist/webcomponents/p-2083ff7b.entry.js.map +0 -1
  324. package/dist/webcomponents/p-24da392a.entry.js +0 -6
  325. package/dist/webcomponents/p-24da392a.entry.js.map +0 -1
  326. package/dist/webcomponents/p-28476b17.system.entry.js +0 -6
  327. package/dist/webcomponents/p-28476b17.system.entry.js.map +0 -1
  328. package/dist/webcomponents/p-2c2c8629.js +0 -7
  329. package/dist/webcomponents/p-2c2c8629.js.map +0 -1
  330. package/dist/webcomponents/p-3f00a196.entry.js +0 -6
  331. package/dist/webcomponents/p-3f00a196.entry.js.map +0 -1
  332. package/dist/webcomponents/p-430afeb5.system.js +0 -7
  333. package/dist/webcomponents/p-430afeb5.system.js.map +0 -1
  334. package/dist/webcomponents/p-447c8036.entry.js +0 -6
  335. package/dist/webcomponents/p-447c8036.entry.js.map +0 -1
  336. package/dist/webcomponents/p-5539ffa8.entry.js +0 -6
  337. package/dist/webcomponents/p-55604b7f.system.entry.js +0 -6
  338. package/dist/webcomponents/p-55604b7f.system.entry.js.map +0 -1
  339. package/dist/webcomponents/p-61523bc9.entry.js +0 -6
  340. package/dist/webcomponents/p-61523bc9.entry.js.map +0 -1
  341. package/dist/webcomponents/p-626fe2cb.entry.js +0 -6
  342. package/dist/webcomponents/p-626fe2cb.entry.js.map +0 -1
  343. package/dist/webcomponents/p-6a8226b3.system.entry.js +0 -6
  344. package/dist/webcomponents/p-6a8226b3.system.entry.js.map +0 -1
  345. package/dist/webcomponents/p-71be2e3f.system.entry.js +0 -6
  346. package/dist/webcomponents/p-7a4e1265.system.entry.js +0 -6
  347. package/dist/webcomponents/p-7a4e1265.system.entry.js.map +0 -1
  348. package/dist/webcomponents/p-8039a644.system.entry.js +0 -6
  349. package/dist/webcomponents/p-8039a644.system.entry.js.map +0 -1
  350. package/dist/webcomponents/p-842b2513.entry.js +0 -6
  351. package/dist/webcomponents/p-842b2513.entry.js.map +0 -1
  352. package/dist/webcomponents/p-8f156fc4.system.entry.js +0 -6
  353. package/dist/webcomponents/p-8f156fc4.system.entry.js.map +0 -1
  354. package/dist/webcomponents/p-9f0d01d1.entry.js +0 -6
  355. package/dist/webcomponents/p-9f0d01d1.entry.js.map +0 -1
  356. package/dist/webcomponents/p-ae629243.system.entry.js +0 -6
  357. package/dist/webcomponents/p-ae629243.system.entry.js.map +0 -1
  358. package/dist/webcomponents/p-b88a5d9a.system.js +0 -6
  359. package/dist/webcomponents/p-b88a5d9a.system.js.map +0 -1
  360. package/dist/webcomponents/p-b9fd2bc0.system.entry.js +0 -6
  361. package/dist/webcomponents/p-b9fd2bc0.system.entry.js.map +0 -1
  362. package/dist/webcomponents/p-baad00f8.system.entry.js +0 -6
  363. package/dist/webcomponents/p-baad00f8.system.entry.js.map +0 -1
  364. package/dist/webcomponents/p-d174c8cd.entry.js +0 -6
  365. package/dist/webcomponents/p-d174c8cd.entry.js.map +0 -1
  366. package/dist/webcomponents/p-d83e2172.system.entry.js +0 -17
  367. package/dist/webcomponents/p-d83e2172.system.entry.js.map +0 -1
  368. package/dist/webcomponents/p-dcf41d91.entry.js +0 -6
  369. package/dist/webcomponents/p-dcf41d91.entry.js.map +0 -1
  370. package/dist/webcomponents/p-e027fca2.entry.js +0 -6
  371. package/dist/webcomponents/p-e027fca2.entry.js.map +0 -1
  372. package/dist/webcomponents/p-e6d921ef.entry.js +0 -17
  373. package/dist/webcomponents/p-e6d921ef.entry.js.map +0 -1
  374. package/dist/webcomponents/p-e8b5b14f.entry.js +0 -6
  375. package/dist/webcomponents/p-f5e674ba.system.entry.js +0 -6
@@ -14,7 +14,10 @@ export class Switch {
14
14
  constructor() {
15
15
  this.handleCheckedChange = (event) => {
16
16
  this._checkedValue = event.target.checked;
17
- this.brDidCheckedChange.emit(this._checkedValue);
17
+ this.brDidSwitchToggle.emit(this._checkedValue);
18
+ };
19
+ this.handleClick = (event) => {
20
+ event.stopPropagation();
18
21
  };
19
22
  this.inheritedAttributes = {};
20
23
  this.disabled = false;
@@ -44,7 +47,7 @@ export class Switch {
44
47
  */
45
48
  async toggleChecked() {
46
49
  this._checkedValue = !this._checkedValue;
47
- this.brDidCheckedChange.emit(this._checkedValue);
50
+ this.brDidSwitchToggle.emit(this._checkedValue);
48
51
  }
49
52
  getCssClassMap() {
50
53
  return {
@@ -57,7 +60,7 @@ export class Switch {
57
60
  };
58
61
  }
59
62
  render() {
60
- return (h(Host, { key: '52838e1fe630318fe34af78b47a42781646f291c' }, h("div", Object.assign({ key: 'bc2c656294f72bee0d9778791ab9a6b00cea7c9e', class: this.getCssClassMap() }, this.inheritedAttributes), h("input", { key: '8ac78e3880ce376faa5e224d0fdab9602104e9ef', id: this.customId, type: "checkbox", name: this.name, checked: this._checkedValue, disabled: this.disabled, role: "switch", "aria-checked": this._checkedValue.toString(), "aria-disabled": this.disabled ? 'true' : null, onChange: this.handleCheckedChange }), h("label", { key: '4e85a4b6d51059a4a899dc24bb7a3f181e99db25', htmlFor: this.customId }, this._slotDefault ? h("slot", null) : this.label), this.labelOn && this.labelOff && (h("div", { key: '30b401aed4ede6e5159240b8337d429d6a7f8aff', class: "switch-data", "data-enabled": this.labelOn, "data-disabled": this.labelOff })))));
63
+ return (h(Host, { key: '0c550accde86f8f6bf23d0c13a0abaeca6422123' }, h("div", Object.assign({ key: 'c63172ea2696799e3f3ae55a98598341785bfcce', class: this.getCssClassMap() }, this.inheritedAttributes), h("input", { key: 'ac86ee46e8ac44de1b9a70bd335822369eabf417', id: this.customId, type: "checkbox", name: this.name, checked: this._checkedValue, disabled: this.disabled, role: "switch", "aria-checked": this._checkedValue.toString(), "aria-disabled": this.disabled ? 'true' : null, onChange: this.handleCheckedChange, onClick: this.handleClick }), h("label", { key: '637d8dbdd7ffc4618a3b5627691c767d7a542134', htmlFor: this.customId }, this._slotDefault ? h("slot", null) : this.label), this.labelOn && this.labelOff && (h("div", { key: 'c201c7a56eee2bce5c41c79bf6df84fb493fe56a', class: "switch-data", "data-enabled": this.labelOn, "data-disabled": this.labelOff })))));
61
64
  }
62
65
  static get is() { return "br-switch"; }
63
66
  static get encapsulation() { return "shadow"; }
@@ -88,6 +91,8 @@ export class Switch {
88
91
  "tags": [],
89
92
  "text": "Desativa o switch, tornando-o n\u00E3o interativo."
90
93
  },
94
+ "getter": false,
95
+ "setter": false,
91
96
  "attribute": "disabled",
92
97
  "reflect": true,
93
98
  "defaultValue": "false"
@@ -106,6 +111,8 @@ export class Switch {
106
111
  "tags": [],
107
112
  "text": "Define o estado de sele\u00E7\u00E3o do checkbox.\nSe definido como verdadeiro, o checkbox estar\u00E1 marcado. Caso contr\u00E1rio, estar\u00E1 desmarcado."
108
113
  },
114
+ "getter": false,
115
+ "setter": false,
109
116
  "attribute": "checked",
110
117
  "reflect": true,
111
118
  "defaultValue": "false"
@@ -124,6 +131,8 @@ export class Switch {
124
131
  "tags": [],
125
132
  "text": "Identificador \u00FAnico do switch.\nCaso n\u00E3o seja fornecido, um ID gerado automaticamente ser\u00E1 usado."
126
133
  },
134
+ "getter": false,
135
+ "setter": false,
127
136
  "attribute": "id",
128
137
  "reflect": true,
129
138
  "defaultValue": "`br-input-${uuidv4()}`"
@@ -142,6 +151,8 @@ export class Switch {
142
151
  "tags": [],
143
152
  "text": "Texto descritivo.\nCaso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade ser\u00E1 ignorado."
144
153
  },
154
+ "getter": false,
155
+ "setter": false,
145
156
  "attribute": "label",
146
157
  "reflect": false
147
158
  },
@@ -159,6 +170,8 @@ export class Switch {
159
170
  "tags": [],
160
171
  "text": "Posi\u00E7\u00E3o do r\u00F3tulo em rela\u00E7\u00E3o ao switch."
161
172
  },
173
+ "getter": false,
174
+ "setter": false,
162
175
  "attribute": "label-position",
163
176
  "reflect": true,
164
177
  "defaultValue": "'left'"
@@ -177,6 +190,8 @@ export class Switch {
177
190
  "tags": [],
178
191
  "text": "Texto exibido quando o switch est\u00E1 ativado."
179
192
  },
193
+ "getter": false,
194
+ "setter": false,
180
195
  "attribute": "label-on",
181
196
  "reflect": true
182
197
  },
@@ -194,6 +209,8 @@ export class Switch {
194
209
  "tags": [],
195
210
  "text": "Texto exibido quando o switch est\u00E1 desativado."
196
211
  },
212
+ "getter": false,
213
+ "setter": false,
197
214
  "attribute": "label-off",
198
215
  "reflect": true
199
216
  },
@@ -211,6 +228,8 @@ export class Switch {
211
228
  "tags": [],
212
229
  "text": "Adiciona um \u00EDcone ao switch para indicar a mudan\u00E7a de estado."
213
230
  },
231
+ "getter": false,
232
+ "setter": false,
214
233
  "attribute": "has-icon",
215
234
  "reflect": true,
216
235
  "defaultValue": "false"
@@ -229,6 +248,8 @@ export class Switch {
229
248
  "tags": [],
230
249
  "text": "Define o nome do switch, que \u00E9 utilizado para agrupar switches em formul\u00E1rios e identificar o campo.\nO valor \u00E9 obrigat\u00F3rio e deve ser fornecido para garantir o correto funcionamento em formul\u00E1rios."
231
250
  },
251
+ "getter": false,
252
+ "setter": false,
232
253
  "attribute": "name",
233
254
  "reflect": true
234
255
  },
@@ -246,6 +267,8 @@ export class Switch {
246
267
  "tags": [],
247
268
  "text": "Define o valor associado ao switch quando ele faz parte de um formul\u00E1rio nativo (`<form>`).\nEsse valor \u00E9 enviado com o formul\u00E1rio quando o switch est\u00E1 selecionado.\n**Nota:** Esta propriedade n\u00E3o deve ser utilizada para determinar se o switch est\u00E1 selecionado; para verificar o estado de sele\u00E7\u00E3o, use a propriedade `checked`."
248
269
  },
270
+ "getter": false,
271
+ "setter": false,
249
272
  "attribute": "value",
250
273
  "reflect": true
251
274
  },
@@ -263,6 +286,8 @@ export class Switch {
263
286
  "tags": [],
264
287
  "text": "O ajuste da densidade consiste em aumentar ou reduzir a \u00E1rea de intera\u00E7\u00E3o do switch. Quanto menor for a densidade, maior a \u00E1rea de intera\u00E7\u00E3o."
265
288
  },
289
+ "getter": false,
290
+ "setter": false,
266
291
  "attribute": "density",
267
292
  "reflect": true,
268
293
  "defaultValue": "'medium'"
@@ -277,8 +302,8 @@ export class Switch {
277
302
  }
278
303
  static get events() {
279
304
  return [{
280
- "method": "brDidCheckedChange",
281
- "name": "brDidCheckedChange",
305
+ "method": "brDidSwitchToggle",
306
+ "name": "brDidSwitchToggle",
282
307
  "bubbles": true,
283
308
  "cancelable": true,
284
309
  "composed": true,
@@ -1 +1 @@
1
- {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../../src/components/switch/switch.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, Host, Method, Prop, State, h } from '@stencil/core'\nimport { v4 as uuidv4 } from 'uuid'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/switch?tab=designer).\n *\n * @slot default - Descreve o que o switch faz quando a alternância estiver ativada. A label passada por slot tem precedência sobre a propriedade 'label'.\n */\n@Component({\n tag: 'br-switch',\n styleUrl: 'switch.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Switch {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrSwitchElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Desativa o switch, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Define o estado de seleção do checkbox.\n * Se definido como verdadeiro, o checkbox estará marcado. Caso contrário, estará desmarcado.\n */\n @Prop({ reflect: true }) checked: boolean = false\n\n /**\n * Identificador único do switch.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string = `br-input-${uuidv4()}`\n\n /**\n * Texto descritivo.\n * Caso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade será ignorado.\n */\n @Prop() label: string\n\n /**\n * Posição do rótulo em relação ao switch.\n */\n @Prop({ reflect: true }) labelPosition: 'right' | 'left' | 'top' = 'left'\n\n /**\n * Texto exibido quando o switch está ativado.\n */\n @Prop({ reflect: true }) labelOn: string\n\n /**\n * Texto exibido quando o switch está desativado.\n */\n @Prop({ reflect: true }) labelOff: string\n\n /**\n * Adiciona um ícone ao switch para indicar a mudança de estado.\n */\n @Prop({ reflect: true }) hasIcon: boolean = false\n\n /**\n * Define o nome do switch, que é utilizado para agrupar switches em formulários e identificar o campo.\n * O valor é obrigatório e deve ser fornecido para garantir o correto funcionamento em formulários.\n */\n @Prop({ reflect: true }) name: string\n\n /**\n * Define o valor associado ao switch quando ele faz parte de um formulário nativo (`<form>`).\n * Esse valor é enviado com o formulário quando o switch está selecionado.\n * **Nota:** Esta propriedade não deve ser utilizada para determinar se o switch está selecionado; para verificar o estado de seleção, use a propriedade `checked`.\n */\n @Prop({ reflect: true }) value: string\n\n /** O ajuste da densidade consiste em aumentar ou reduzir a área de interação do switch. Quanto menor for a densidade, maior a área de interação. */\n @Prop({ reflect: true }) density: 'large' | 'medium' | 'small' = 'medium'\n\n // Propriedade interna para verificar a presença de conteúdo no slot default\n @State() _slotDefault: boolean = false\n\n @State() _checkedValue: boolean\n\n componentWillLoad() {\n this._hasSlotContentDefault()\n this._checkedValue = this.checked\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n /**\n * Disparado depois que o valor do `checked` foi alterado\n */\n @Event() brDidCheckedChange: EventEmitter<boolean>\n private _hasSlotContentDefault(): any {\n this._slotDefault = this.el.innerHTML !== ''\n }\n\n private readonly handleCheckedChange = (event: Event) => {\n this._checkedValue = (event.target as HTMLInputElement).checked\n this.brDidCheckedChange.emit(this._checkedValue)\n }\n\n /**\n * Inverte o valor da prop `checked`\n */\n @Method()\n async toggleChecked() {\n this._checkedValue = !this._checkedValue\n this.brDidCheckedChange.emit(this._checkedValue)\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-switch': true,\n icon: this.hasIcon,\n top: this.labelPosition === 'top',\n right: this.labelPosition === 'right',\n large: this.density === 'large',\n small: this.density === 'small',\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes}>\n <input\n id={this.customId}\n type=\"checkbox\"\n name={this.name}\n checked={this._checkedValue}\n disabled={this.disabled}\n role=\"switch\"\n aria-checked={this._checkedValue.toString()}\n aria-disabled={this.disabled ? 'true' : null}\n onChange={this.handleCheckedChange}\n />\n <label htmlFor={this.customId}>{this._slotDefault ? <slot></slot> : this.label}</label>\n {this.labelOn && this.labelOff && (\n <div class=\"switch-data\" data-enabled={this.labelOn} data-disabled={this.labelOff}></div>\n )}\n </div>\n </Host>\n )\n }\n}\n"]}
1
+ {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/components/switch/switch.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAgB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,eAAe,CAAA;AACtH,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,EAAc,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAGpF;;;;GAIG;AAOH,MAAM,OAAO,MAAM;;QAuFA,wBAAmB,GAAG,CAAC,KAAY,EAAE,EAAE;YACtD,IAAI,CAAC,aAAa,GAAI,KAAK,CAAC,MAA2B,CAAC,OAAO,CAAA;YAC/D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QACjD,CAAC,CAAA;QAEgB,gBAAW,GAAG,CAAC,KAAY,EAAE,EAAE;YAC9C,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,CAAC,CAAA;QAsBO,wBAAmB,GAAe,EAAE,CAAA;wBAxGC,KAAK;uBAMN,KAAK;wBAMY,YAAY,MAAM,EAAE,EAAE;;6BAWhB,MAAM;;;uBAe7B,KAAK;;;uBAgBgB,QAAQ;4BAGxC,KAAK;;;IAItC,iBAAiB;QACf,IAAI,CAAC,sBAAsB,EAAE,CAAA;QAC7B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAA;QACjC,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC3D,CAAC;IAMO,sBAAsB;QAC5B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,SAAS,KAAK,EAAE,CAAA;IAC9C,CAAC;IAWD;;OAEG;IAEH,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,CAAA;QACxC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACjD,CAAC;IAEO,cAAc;QACpB,OAAO;YACL,WAAW,EAAE,IAAI;YACjB,IAAI,EAAE,IAAI,CAAC,OAAO;YAClB,GAAG,EAAE,IAAI,CAAC,aAAa,KAAK,KAAK;YACjC,KAAK,EAAE,IAAI,CAAC,aAAa,KAAK,OAAO;YACrC,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO;YAC/B,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO;SAChC,CAAA;IACH,CAAC;IAID,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,0EAAK,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,IAAM,IAAI,CAAC,mBAAmB;gBAC7D,8DACE,EAAE,EAAE,IAAI,CAAC,QAAQ,EACjB,IAAI,EAAC,UAAU,EACf,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,OAAO,EAAE,IAAI,CAAC,aAAa,EAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,IAAI,EAAC,QAAQ,kBACC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,mBAC5B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAC5C,QAAQ,EAAE,IAAI,CAAC,mBAAmB,EAClC,OAAO,EAAE,IAAI,CAAC,WAAW,GACzB;gBACF,8DAAO,OAAO,EAAE,IAAI,CAAC,QAAQ,IAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,eAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAS;gBACtF,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,IAAI,CAChC,4DAAK,KAAK,EAAC,aAAa,kBAAe,IAAI,CAAC,OAAO,mBAAiB,IAAI,CAAC,QAAQ,GAAQ,CAC1F,CACG,CACD,CACR,CAAA;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, Host, Method, Prop, State, h } from '@stencil/core'\nimport { v4 as uuidv4 } from 'uuid'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/switch?tab=designer).\n *\n * @slot default - Descreve o que o switch faz quando a alternância estiver ativada. A label passada por slot tem precedência sobre a propriedade 'label'.\n */\n@Component({\n tag: 'br-switch',\n styleUrl: 'switch.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Switch {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrSwitchElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Desativa o switch, tornando-o não interativo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Define o estado de seleção do checkbox.\n * Se definido como verdadeiro, o checkbox estará marcado. Caso contrário, estará desmarcado.\n */\n @Prop({ reflect: true }) checked: boolean = false\n\n /**\n * Identificador único do switch.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string = `br-input-${uuidv4()}`\n\n /**\n * Texto descritivo.\n * Caso um slot seja utilizado para fornecer um texto alternativo, o valor desta propriedade será ignorado.\n */\n @Prop() label: string\n\n /**\n * Posição do rótulo em relação ao switch.\n */\n @Prop({ reflect: true }) labelPosition: 'right' | 'left' | 'top' = 'left'\n\n /**\n * Texto exibido quando o switch está ativado.\n */\n @Prop({ reflect: true }) labelOn: string\n\n /**\n * Texto exibido quando o switch está desativado.\n */\n @Prop({ reflect: true }) labelOff: string\n\n /**\n * Adiciona um ícone ao switch para indicar a mudança de estado.\n */\n @Prop({ reflect: true }) hasIcon: boolean = false\n\n /**\n * Define o nome do switch, que é utilizado para agrupar switches em formulários e identificar o campo.\n * O valor é obrigatório e deve ser fornecido para garantir o correto funcionamento em formulários.\n */\n @Prop({ reflect: true }) name: string\n\n /**\n * Define o valor associado ao switch quando ele faz parte de um formulário nativo (`<form>`).\n * Esse valor é enviado com o formulário quando o switch está selecionado.\n * **Nota:** Esta propriedade não deve ser utilizada para determinar se o switch está selecionado; para verificar o estado de seleção, use a propriedade `checked`.\n */\n @Prop({ reflect: true }) value: string\n\n /** O ajuste da densidade consiste em aumentar ou reduzir a área de interação do switch. Quanto menor for a densidade, maior a área de interação. */\n @Prop({ reflect: true }) density: 'large' | 'medium' | 'small' = 'medium'\n\n // Propriedade interna para verificar a presença de conteúdo no slot default\n @State() _slotDefault: boolean = false\n\n @State() _checkedValue: boolean\n\n componentWillLoad() {\n this._hasSlotContentDefault()\n this._checkedValue = this.checked\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n /**\n * Disparado depois que o valor do `checked` foi alterado\n */\n @Event() brDidSwitchToggle: EventEmitter<boolean>\n private _hasSlotContentDefault(): any {\n this._slotDefault = this.el.innerHTML !== ''\n }\n\n private readonly handleCheckedChange = (event: Event) => {\n this._checkedValue = (event.target as HTMLInputElement).checked\n this.brDidSwitchToggle.emit(this._checkedValue)\n }\n\n private readonly handleClick = (event: Event) => {\n event.stopPropagation();\n }\n\n /**\n * Inverte o valor da prop `checked`\n */\n @Method()\n async toggleChecked() {\n this._checkedValue = !this._checkedValue\n this.brDidSwitchToggle.emit(this._checkedValue)\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-switch': true,\n icon: this.hasIcon,\n top: this.labelPosition === 'top',\n right: this.labelPosition === 'right',\n large: this.density === 'large',\n small: this.density === 'small',\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes}>\n <input\n id={this.customId}\n type=\"checkbox\"\n name={this.name}\n checked={this._checkedValue}\n disabled={this.disabled}\n role=\"switch\"\n aria-checked={this._checkedValue.toString()}\n aria-disabled={this.disabled ? 'true' : null}\n onChange={this.handleCheckedChange}\n onClick={this.handleClick}\n />\n <label htmlFor={this.customId}>{this._slotDefault ? <slot></slot> : this.label}</label>\n {this.labelOn && this.labelOff && (\n <div class=\"switch-data\" data-enabled={this.labelOn} data-disabled={this.labelOff}></div>\n )}\n </div>\n </Host>\n )\n }\n}\n"]}
@@ -34,6 +34,7 @@ img {
34
34
 
35
35
  button,
36
36
  input,
37
+ select,
37
38
  textarea {
38
39
  font-family: inherit;
39
40
  font-size: 100%;
@@ -46,7 +47,8 @@ input {
46
47
  overflow: visible;
47
48
  }
48
49
 
49
- button {
50
+ button,
51
+ select {
50
52
  text-transform: none;
51
53
  }
52
54
 
@@ -211,6 +213,10 @@ textarea {
211
213
  margin-right: var(--spacing-scale-half) !important;
212
214
  }
213
215
 
216
+ .mb-1 {
217
+ margin-bottom: var(--spacing-scale-half) !important;
218
+ }
219
+
214
220
  .mr-2 {
215
221
  margin-right: var(--spacing-scale-base) !important;
216
222
  }
@@ -219,6 +225,10 @@ textarea {
219
225
  margin-right: calc(var(--spacing-scale-base) * -1) !important;
220
226
  }
221
227
 
228
+ .ml-2 {
229
+ margin-left: var(--spacing-scale-base) !important;
230
+ }
231
+
222
232
  .mb-3 {
223
233
  margin-bottom: var(--spacing-scale-2x) !important;
224
234
  }
@@ -64,7 +64,7 @@ export class Tag {
64
64
  return (h("span", { class: "tag-spacing-status", id: "interactivetag1", "aria-label": this.label }, this.label));
65
65
  }
66
66
  render() {
67
- return (h(Host, { key: '2ae1b9e249097b66fb02e0c903e294f73aad6bc0' }, h("div", { key: '65f39b80147b977231e8bb9566f2aa1797597646', class: "tag-position" }, h("span", Object.assign({ key: '452777774bfdba4a5eed2af6bb429f02f8dd9ed3', class: this.getCssClassMap() }, this.inheritedAttributes, { role: "alert", "aria-live": "assertive" }), this.renderIcon(), this.renderLabel(), this.renderCloseButton(), h("slot", { key: 'c3cad61c4e5d7b683c9b4a6b66fbf0b62a56ac8a' })), this.renderStatusLabel())));
67
+ return (h(Host, { key: '4e078895032e633b6c111bd633222938e6b00a95' }, h("div", { key: '3dd682ccfe5eb9533ad82f9d1fd39a2b1357774f', class: "tag-position" }, h("span", Object.assign({ key: '09f68d7a0a6820f590cfdb04bc75956ee276f426', class: this.getCssClassMap() }, this.inheritedAttributes, { role: "alert", "aria-live": "assertive" }), this.renderIcon(), this.renderLabel(), this.renderCloseButton(), h("slot", { key: '04a14d8b19926d9d18f3a4f2abe66061c85f5446' })), this.renderStatusLabel())));
68
68
  }
69
69
  static get is() { return "br-tag"; }
70
70
  static get encapsulation() { return "shadow"; }
@@ -95,6 +95,8 @@ export class Tag {
95
95
  "tags": [],
96
96
  "text": "A propriedade 'label' \u00E9 uma string que representa o texto a ser exibido no componente.\nEla \u00E9 refletida no DOM, permitindo que altera\u00E7\u00F5es no valor sejam refletidas no elemento HTML correspondente."
97
97
  },
98
+ "getter": false,
99
+ "setter": false,
98
100
  "attribute": "label",
99
101
  "reflect": true,
100
102
  "defaultValue": "''"
@@ -113,6 +115,8 @@ export class Tag {
113
115
  "tags": [],
114
116
  "text": "A propriedade 'iconName' define o nome do \u00EDcone que ser\u00E1 exibido ao lado do texto.\nO valor padr\u00E3o \u00E9 'fa-solid:car', que corresponde a um \u00EDcone de carro da biblioteca Font Awesome."
115
117
  },
118
+ "getter": false,
119
+ "setter": false,
116
120
  "attribute": "icon-name",
117
121
  "reflect": true,
118
122
  "defaultValue": "''"
@@ -131,6 +135,8 @@ export class Tag {
131
135
  "tags": [],
132
136
  "text": "A propriedade 'color' permite definir a cor do componente.\nAceita valores como 'red', 'blue', entre outros, e \u00E9 refletida no DOM."
133
137
  },
138
+ "getter": false,
139
+ "setter": false,
134
140
  "attribute": "color",
135
141
  "reflect": true,
136
142
  "defaultValue": "''"
@@ -149,6 +155,8 @@ export class Tag {
149
155
  "tags": [],
150
156
  "text": "A propriedade 'density' permite definir a densidade do componente.\nAceita valores como 'small', 'medium' e 'large', e \u00E9 refletida no DOM."
151
157
  },
158
+ "getter": false,
159
+ "setter": false,
152
160
  "attribute": "density",
153
161
  "reflect": true,
154
162
  "defaultValue": "'small'"
@@ -167,6 +175,8 @@ export class Tag {
167
175
  "tags": [],
168
176
  "text": "A propriedade 'shape' define o formato do componente.\nValores poss\u00EDveis:\n- 'circle': Componente com formato circular.\n- 'rounded': Componente com bordas arredondadas.\n- 'default': Componente com formato padr\u00E3o."
169
177
  },
178
+ "getter": false,
179
+ "setter": false,
170
180
  "attribute": "shape",
171
181
  "reflect": true,
172
182
  "defaultValue": "'default'"
@@ -185,6 +195,8 @@ export class Tag {
185
195
  "tags": [],
186
196
  "text": "A propriedade 'status' \u00E9 um booleano que indica se o status deve ser exibido.\nSe definido como true, o status ser\u00E1 mostrado ao lado do texto."
187
197
  },
198
+ "getter": false,
199
+ "setter": false,
188
200
  "attribute": "status",
189
201
  "reflect": true,
190
202
  "defaultValue": "false"
@@ -203,6 +215,8 @@ export class Tag {
203
215
  "tags": [],
204
216
  "text": "A propriedade 'interaction' \u00E9 um booleano que indica se a intera\u00E7\u00E3o deve ser habilitada.\nSe definido como true, o componente permitir\u00E1 intera\u00E7\u00F5es do usu\u00E1rio."
205
217
  },
218
+ "getter": false,
219
+ "setter": false,
206
220
  "attribute": "interaction",
207
221
  "reflect": true,
208
222
  "defaultValue": "false"
@@ -221,6 +235,8 @@ export class Tag {
221
235
  "tags": [],
222
236
  "text": "A propriedade 'disabled' \u00E9 um booleano que indica se o componente deve estar desabilitado.\nSe definido como true, o componente n\u00E3o permitir\u00E1 intera\u00E7\u00F5es do usu\u00E1rio."
223
237
  },
238
+ "getter": false,
239
+ "setter": false,
224
240
  "attribute": "disabled",
225
241
  "reflect": true,
226
242
  "defaultValue": "false"
@@ -1 +1 @@
1
- {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../../../src/components/tag/tag.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Prop, State } from '@stencil/core'\n\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/tag?tab=designer).\n *\n * @slot default - Slot utilizado para inserir conteúdo adicional na tag, como texto ou elementos HTML extras.\n */\n@Component({\n tag: 'br-tag',\n styleUrl: 'tag.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Tag {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrTagElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * A propriedade 'label' é uma string que representa o texto a ser exibido no componente.\n * Ela é refletida no DOM, permitindo que alterações no valor sejam refletidas no elemento HTML correspondente.\n */\n @Prop({ reflect: true }) label: string = ''\n\n /**\n * A propriedade 'iconName' define o nome do ícone que será exibido ao lado do texto.\n * O valor padrão é 'fa-solid:car', que corresponde a um ícone de carro da biblioteca Font Awesome.\n */\n @Prop({ reflect: true }) iconName: string = ''\n\n /**\n * A propriedade 'color' permite definir a cor do componente.\n * Aceita valores como 'red', 'blue', entre outros, e é refletida no DOM.\n */\n @Prop({ reflect: true }) color: string = ''\n\n /**\n * A propriedade 'density' permite definir a densidade do componente.\n * Aceita valores como 'small', 'medium' e 'large', e é refletida no DOM.\n */\n @Prop({ reflect: true }) density: 'small' | 'medium' | 'large' = 'small'\n\n /**\n * A propriedade 'shape' define o formato do componente.\n * Valores possíveis:\n * - 'circle': Componente com formato circular.\n * - 'rounded': Componente com bordas arredondadas.\n * - 'default': Componente com formato padrão.\n */\n @Prop({ reflect: true }) shape: 'circle' | 'rounded' | 'default' = 'default'\n\n /**\n * A propriedade 'status' é um booleano que indica se o status deve ser exibido.\n * Se definido como true, o status será mostrado ao lado do texto.\n */\n @Prop({ reflect: true }) status: boolean = false\n\n /**\n * A propriedade 'interaction' é um booleano que indica se a interação deve ser habilitada.\n * Se definido como true, o componente permitirá interações do usuário.\n */\n @Prop({ reflect: true }) interaction: boolean = false\n\n /**\n * A propriedade 'disabled' é um booleano que indica se o componente deve estar desabilitado.\n * Se definido como true, o componente não permitirá interações do usuário.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n @State() stateIconName: string = 'fa-solid:car'\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.brWillLoad.emit()\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n private getCssClassMap(): CssClassMap {\n const classes: CssClassMap = {\n 'br-tag': true,\n interaction: this.interaction,\n [this.color]: this.color !== '',\n small: this.density === 'small',\n medium: this.density === 'medium',\n large: this.density === 'large',\n count: this.shape === 'rounded' ? true : false,\n icon: this.shape === 'circle' ? true : false,\n status: this.status,\n }\n\n return classes\n }\n\n private inheritedAttributes: Attributes = {}\n\n private renderIcon() {\n if (this.iconName.trim().length === 0) return null\n return <br-icon style={{ fontSize: 'var(--icon-size-base)' }} icon-name={this.iconName} aria-hidden=\"true\" />\n }\n\n private renderLabel() {\n if (this.shape === 'circle' || this.status) return null\n return (\n <span id=\"interactivetag1\" aria-label={this.label}>\n {this.label}\n </span>\n )\n }\n\n private renderCloseButton() {\n if (!this.interaction) return null\n return (\n <br-button\n type=\"button\"\n shape=\"circle\"\n emphasis={!this.interaction ? 'tertiary' : 'primary'}\n aria-label=\"Fechar\"\n colorMode={!this.interaction ? 'dark' : null}\n aria-describedby=\"interactivetag1\"\n onClick={this.handleClose}\n disabled={this.disabled}\n >\n <br-icon icon-name=\"fa-solid:times\"></br-icon>\n </br-button>\n )\n }\n\n private renderStatusLabel() {\n if (!this.status) return null\n return (\n <span class=\"tag-spacing-status\" id=\"interactivetag1\" aria-label={this.label}>\n {this.label}\n </span>\n )\n }\n\n private handleClose = () => {\n this.el.remove()\n }\n\n render() {\n return (\n <Host>\n <div class=\"tag-position\">\n <span class={this.getCssClassMap()} {...this.inheritedAttributes} role=\"alert\" aria-live=\"assertive\">\n {this.renderIcon()}\n {this.renderLabel()}\n {this.renderCloseButton()}\n <slot></slot>\n </span>\n {this.renderStatusLabel()}\n </div>\n </Host>\n )\n }\n}\n"]}
1
+ {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../../src/components/tag/tag.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, Event, EventEmitter, h, Host, Prop, State } from '@stencil/core'\n\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/tag?tab=designer).\n *\n * @slot default - Slot utilizado para inserir conteúdo adicional na tag, como texto ou elementos HTML extras.\n */\n@Component({\n tag: 'br-tag',\n styleUrl: 'tag.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Tag {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrTagElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * A propriedade 'label' é uma string que representa o texto a ser exibido no componente.\n * Ela é refletida no DOM, permitindo que alterações no valor sejam refletidas no elemento HTML correspondente.\n */\n @Prop({ reflect: true }) label: string = ''\n\n /**\n * A propriedade 'iconName' define o nome do ícone que será exibido ao lado do texto.\n * O valor padrão é 'fa-solid:car', que corresponde a um ícone de carro da biblioteca Font Awesome.\n */\n @Prop({ reflect: true }) iconName: string = ''\n\n /**\n * A propriedade 'color' permite definir a cor do componente.\n * Aceita valores como 'red', 'blue', entre outros, e é refletida no DOM.\n */\n @Prop({ reflect: true }) color: string = ''\n\n /**\n * A propriedade 'density' permite definir a densidade do componente.\n * Aceita valores como 'small', 'medium' e 'large', e é refletida no DOM.\n */\n @Prop({ reflect: true }) density: 'small' | 'medium' | 'large' = 'small'\n\n /**\n * A propriedade 'shape' define o formato do componente.\n * Valores possíveis:\n * - 'circle': Componente com formato circular.\n * - 'rounded': Componente com bordas arredondadas.\n * - 'default': Componente com formato padrão.\n */\n @Prop({ reflect: true }) shape: 'circle' | 'rounded' | 'default' = 'default'\n\n /**\n * A propriedade 'status' é um booleano que indica se o status deve ser exibido.\n * Se definido como true, o status será mostrado ao lado do texto.\n */\n @Prop({ reflect: true }) status: boolean = false\n\n /**\n * A propriedade 'interaction' é um booleano que indica se a interação deve ser habilitada.\n * Se definido como true, o componente permitirá interações do usuário.\n */\n @Prop({ reflect: true }) interaction: boolean = false\n\n /**\n * A propriedade 'disabled' é um booleano que indica se o componente deve estar desabilitado.\n * Se definido como true, o componente não permitirá interações do usuário.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n @State() stateIconName: string = 'fa-solid:car'\n\n /**\n * Emite um evento antes que o componente seja carregado pela primeira vez.\n * Utilize este evento para realizar tarefas de inicialização antes do componente ser exibido.\n * Consulte a documentação do [Stencil](https://stenciljs.com/docs/component-lifecycle#componentwillload) para mais detalhes.\n */\n @Event() brWillLoad: EventEmitter<void>\n componentWillLoad() {\n this.brWillLoad.emit()\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n private getCssClassMap(): CssClassMap {\n const classes: CssClassMap = {\n 'br-tag': true,\n interaction: this.interaction,\n [this.color]: this.color !== '',\n small: this.density === 'small',\n medium: this.density === 'medium',\n large: this.density === 'large',\n count: this.shape === 'rounded' ? true : false,\n icon: this.shape === 'circle' ? true : false,\n status: this.status,\n }\n\n return classes\n }\n\n private inheritedAttributes: Attributes = {}\n\n private renderIcon() {\n if (this.iconName.trim().length === 0) return null\n return <br-icon style={{ fontSize: 'var(--icon-size-base)' }} icon-name={this.iconName} aria-hidden=\"true\" />\n }\n\n private renderLabel() {\n if (this.shape === 'circle' || this.status) return null\n return (\n <span id=\"interactivetag1\" aria-label={this.label}>\n {this.label}\n </span>\n )\n }\n\n private renderCloseButton() {\n if (!this.interaction) return null\n return (\n <br-button\n type=\"button\"\n shape=\"circle\"\n emphasis={!this.interaction ? 'tertiary' : 'primary'}\n aria-label=\"Fechar\"\n colorMode={!this.interaction ? 'dark' : null}\n aria-describedby=\"interactivetag1\"\n onClick={this.handleClose}\n disabled={this.disabled}\n >\n <br-icon icon-name=\"fa-solid:times\"></br-icon>\n </br-button>\n )\n }\n\n private renderStatusLabel() {\n if (!this.status) return null\n return (\n <span class=\"tag-spacing-status\" id=\"interactivetag1\" aria-label={this.label}>\n {this.label}\n </span>\n )\n }\n\n private handleClose = () => {\n this.el.remove()\n }\n\n render() {\n return (\n <Host>\n <div class=\"tag-position\">\n <span class={this.getCssClassMap()} {...this.inheritedAttributes} role=\"alert\" aria-live=\"assertive\">\n {this.renderIcon()}\n {this.renderLabel()}\n {this.renderCloseButton()}\n <slot></slot>\n </span>\n {this.renderStatusLabel()}\n </div>\n </Host>\n )\n }\n}\n"]}
@@ -34,6 +34,7 @@ img {
34
34
 
35
35
  button,
36
36
  input,
37
+ select,
37
38
  textarea {
38
39
  font-family: inherit;
39
40
  font-size: 100%;
@@ -46,7 +47,8 @@ input {
46
47
  overflow: visible;
47
48
  }
48
49
 
49
- button {
50
+ button,
51
+ select {
50
52
  text-transform: none;
51
53
  }
52
54
 
@@ -211,6 +213,10 @@ textarea {
211
213
  margin-right: var(--spacing-scale-half) !important;
212
214
  }
213
215
 
216
+ .mb-1 {
217
+ margin-bottom: var(--spacing-scale-half) !important;
218
+ }
219
+
214
220
  .mr-2 {
215
221
  margin-right: var(--spacing-scale-base) !important;
216
222
  }
@@ -219,6 +225,10 @@ textarea {
219
225
  margin-right: calc(var(--spacing-scale-base) * -1) !important;
220
226
  }
221
227
 
228
+ .ml-2 {
229
+ margin-left: var(--spacing-scale-base) !important;
230
+ }
231
+
222
232
  .mb-3 {
223
233
  margin-bottom: var(--spacing-scale-2x) !important;
224
234
  }
@@ -76,7 +76,7 @@ export class Textarea {
76
76
  render() {
77
77
  const caracteresRestantes = this.maxlength - this.currentLength;
78
78
  const mostrarLimite = this.currentLength > 0;
79
- return (h(Host, { key: '8bb5ea9efb0e2ee82d1c4074d7f9a8332fcfb635' }, h("div", Object.assign({ key: 'cedcc004557860b4b2724c5180f2c012a109fcc1', class: this.getCssClassMap() }, this.inheritedAttributes), h("div", { key: '3998a88b69f3dddc63ea41d08db7de96af28d25d', class: this.isInline ? 'row' : '' }, this.isInline ? (h("div", { class: "col-auto pt-half" }, h("label", { htmlFor: this.customId }, this.label))) : (h("label", { htmlFor: this.customId }, this.label)), h("div", { key: '8f94f9c2aaf2758e5ee9be6938be50ce8c82db7c', class: this.isInline ? 'col' : '' }, h("textarea", Object.assign({ key: 'a642046a4dd9da93ac051eb6bf0ecfe711433680', id: this.customId, value: this.value, placeholder: this.placeholder, disabled: this.disabled, onInput: this.handleChange }, (this.maxlength > 0 ? { maxLength: this.maxlength } : {}))), h("div", { key: 'b859da1b3f48ed513e32374251a31ad3fc0f108f', class: "text-base mt-1" }, this.maxlength > 0 && (h("div", { key: '0aaebed51ac98b00c4fca6e7d857664d117b0d74' }, mostrarLimite ? (h("span", { class: "restantes", "aria-live": "polite", role: "status", id: "limitmax" }, "Restam ", h("strong", null, caracteresRestantes), " caracteres")) : (h("span", { class: "limit", "aria-live": "polite" }, "Limite m\u00E1ximo de ", h("strong", null, this.maxlength), " caracteres"))))), h("slot", { key: 'e24c4673cc638ce9e37acf05d2d80fea32b7f8fa' }))))));
79
+ return (h(Host, { key: '9bfb06666d1c2b474e44b9a8c5ee68a1b435199f' }, h("div", Object.assign({ key: '977244962b6d2423ace8ec5f5fff9a234d238c3b', class: this.getCssClassMap() }, this.inheritedAttributes), h("div", { key: 'b7568e2fcdc00447862e96287989e05afa8ea22f', class: this.isInline ? 'row' : '' }, this.isInline ? (h("div", { class: "col-auto pt-half" }, h("label", { htmlFor: this.customId }, this.label))) : (h("label", { htmlFor: this.customId }, this.label)), h("div", { key: '56ef7055c6a4f48e50bbd359f0c1b70c70a5b310', class: this.isInline ? 'col' : '' }, h("textarea", Object.assign({ key: 'e10d4ea67079a82976195b1ee931d132ad699b38', id: this.customId, value: this.value, placeholder: this.placeholder, disabled: this.disabled, onInput: this.handleChange }, (this.maxlength > 0 ? { maxLength: this.maxlength } : {}))), h("div", { key: 'dfb7790e95c1ec6c3f4202ebe6a56fd52c8cc037', class: "text-base mt-1" }, this.maxlength > 0 && (h("div", { key: '28e5410a07385118ffcbeb82c5a9a3906e8c199d' }, mostrarLimite ? (h("span", { class: "restantes", "aria-live": "polite", role: "status", id: "limitmax" }, "Restam ", h("strong", null, caracteresRestantes), " caracteres")) : (h("span", { class: "limit", "aria-live": "polite" }, "Limite m\u00E1ximo de ", h("strong", null, this.maxlength), " caracteres"))))), h("slot", { key: '6a6ff1012fdd6fa62b3a9175220b466db904a148' }))))));
80
80
  }
81
81
  static get is() { return "br-textarea"; }
82
82
  static get encapsulation() { return "shadow"; }
@@ -107,6 +107,8 @@ export class Textarea {
107
107
  "tags": [],
108
108
  "text": "Valor atual do textarea. Este valor pode ser alterado programaticamente."
109
109
  },
110
+ "getter": false,
111
+ "setter": false,
110
112
  "attribute": "value",
111
113
  "reflect": true
112
114
  },
@@ -124,6 +126,8 @@ export class Textarea {
124
126
  "tags": [],
125
127
  "text": "Texto do r\u00F3tulo associado ao textarea. Este r\u00F3tulo \u00E9 exibido acima do campo de entrada."
126
128
  },
129
+ "getter": false,
130
+ "setter": false,
127
131
  "attribute": "label",
128
132
  "reflect": true
129
133
  },
@@ -141,6 +145,8 @@ export class Textarea {
141
145
  "tags": [],
142
146
  "text": "Texto exibido quando o textarea est\u00E1 vazio. Ajuda a guiar o usu\u00E1rio sobre o que deve ser inserido."
143
147
  },
148
+ "getter": false,
149
+ "setter": false,
144
150
  "attribute": "placeholder",
145
151
  "reflect": true
146
152
  },
@@ -158,6 +164,8 @@ export class Textarea {
158
164
  "tags": [],
159
165
  "text": "Indica se o textarea est\u00E1 desabilitado. Quando verdadeiro, o usu\u00E1rio n\u00E3o pode interagir com o campo."
160
166
  },
167
+ "getter": false,
168
+ "setter": false,
161
169
  "attribute": "disabled",
162
170
  "reflect": true,
163
171
  "defaultValue": "false"
@@ -176,6 +184,8 @@ export class Textarea {
176
184
  "tags": [],
177
185
  "text": "N\u00FAmero m\u00E1ximo de caracteres permitidos no textarea. Se definido como 0, n\u00E3o h\u00E1 limite."
178
186
  },
187
+ "getter": false,
188
+ "setter": false,
179
189
  "attribute": "maxlength",
180
190
  "reflect": true,
181
191
  "defaultValue": "0"
@@ -194,6 +204,8 @@ export class Textarea {
194
204
  "tags": [],
195
205
  "text": "Define o estado visual do componente, podendo ser 'danger', 'success' ou 'warning'."
196
206
  },
207
+ "getter": false,
208
+ "setter": false,
197
209
  "attribute": "state",
198
210
  "reflect": true
199
211
  },
@@ -211,6 +223,8 @@ export class Textarea {
211
223
  "tags": [],
212
224
  "text": "Ajusta a densidade do componente, podendo ser 'small', 'medium' ou 'large'."
213
225
  },
226
+ "getter": false,
227
+ "setter": false,
214
228
  "attribute": "density",
215
229
  "reflect": true,
216
230
  "defaultValue": "'medium'"
@@ -229,6 +243,8 @@ export class Textarea {
229
243
  "tags": [],
230
244
  "text": "Se verdadeiro, o r\u00F3tulo e o input estar\u00E3o na mesma linha (layout inline)."
231
245
  },
246
+ "getter": false,
247
+ "setter": false,
232
248
  "attribute": "is-inline",
233
249
  "reflect": true,
234
250
  "defaultValue": "false"
@@ -247,6 +263,8 @@ export class Textarea {
247
263
  "tags": [],
248
264
  "text": "Identificador \u00FAnico do textarea.\nCaso n\u00E3o seja fornecido, um ID gerado automaticamente ser\u00E1 usado."
249
265
  },
266
+ "getter": false,
267
+ "setter": false,
250
268
  "attribute": "id",
251
269
  "reflect": true,
252
270
  "defaultValue": "`br-textarea-${uuidv4()}`"
@@ -1 +1 @@
1
- {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../../src/components/textarea/textarea.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, Element, h, Host, Method, Prop, State, Watch } from '@stencil/core'\n\nimport { v4 as uuidv4 } from 'uuid'\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/textarea?tab=designer).\n *\n * @slot default - Espaço de conteúdo do textarea. Geralmente usado para incluir texto adicional ou instruções para o usuário.\n */\n@Component({\n tag: 'br-textarea',\n styleUrl: 'textarea.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Textarea {\n @Element() el: HTMLBrTextareaElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Valor atual do textarea. Este valor pode ser alterado programaticamente.\n */\n @Prop({ mutable: true, reflect: true }) value: string\n\n /**\n * Texto do rótulo associado ao textarea. Este rótulo é exibido acima do campo de entrada.\n */\n @Prop({ reflect: true }) label: string\n\n /**\n * Texto exibido quando o textarea está vazio. Ajuda a guiar o usuário sobre o que deve ser inserido.\n */\n @Prop({ reflect: true }) placeholder: string\n\n /**\n * Indica se o textarea está desabilitado. Quando verdadeiro, o usuário não pode interagir com o campo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Número máximo de caracteres permitidos no textarea. Se definido como 0, não há limite.\n */\n @Prop({ reflect: true }) maxlength: number = 0\n\n /**\n * Define o estado visual do componente, podendo ser 'danger', 'success' ou 'warning'.\n */\n @Prop({ reflect: true }) state: 'danger' | 'success' | 'warning'\n /**\n * Ajusta a densidade do componente, podendo ser 'small', 'medium' ou 'large'.\n */\n @Prop({ reflect: true }) density: 'small' | 'medium' | 'large' = 'medium'\n\n /**\n * Se verdadeiro, o rótulo e o input estarão na mesma linha (layout inline).\n */\n @Prop({ reflect: true }) isInline: boolean = false\n\n /**\n * Comprimento atual do texto no textarea. É atualizado sempre que o valor do textarea muda.\n */\n @State() currentLength: number\n\n /**\n * Identificador único do textarea.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string = `br-textarea-${uuidv4()}`\n\n componentWillLoad() {\n this.currentLength = this.value?.length\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n @Watch('value')\n valueChanged() {\n this.currentLength = this.value?.length\n }\n\n /**\n * Manipula a mudança de valor do textarea. Atualiza o valor e emite um evento de mudança.\n * @param event - O evento de entrada do textarea.\n */\n private readonly handleChange = (event: Event) => {\n const textarea = event.target as HTMLTextAreaElement\n this.value = textarea.value\n this.currentLength = this.value?.length\n this.emitValueChange()\n }\n\n /**\n * Define um novo valor para o textarea.\n * @param newValue - O novo valor a ser definido.\n */\n @Method()\n async setValue(newValue: string) {\n this.value = newValue\n this.currentLength = this.value?.length\n this.emitValueChange()\n }\n\n private emitValueChange() {\n const changeEvent = new CustomEvent('valueChange', {\n detail: { value: this.value },\n bubbles: true,\n composed: true,\n })\n this.el.dispatchEvent(changeEvent)\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-textarea': true,\n small: this.density === 'small',\n medium: this.density === 'medium',\n large: this.density === 'large',\n success: this.state === 'success',\n danger: this.state === 'danger',\n warning: this.state === 'warning',\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n const caracteresRestantes: number = this.maxlength - this.currentLength\n const mostrarLimite = this.currentLength > 0\n\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes}>\n <div class={this.isInline ? 'row' : ''}>\n {this.isInline ? (\n <div class=\"col-auto pt-half\">\n <label htmlFor={this.customId}>{this.label}</label>\n </div>\n ) : (\n <label htmlFor={this.customId}>{this.label}</label>\n )}\n <div class={this.isInline ? 'col' : ''}>\n <textarea\n id={this.customId}\n value={this.value}\n placeholder={this.placeholder}\n disabled={this.disabled}\n onInput={this.handleChange}\n {...(this.maxlength > 0 ? { maxLength: this.maxlength } : {})}\n ></textarea>\n <div class=\"text-base mt-1\">\n {this.maxlength > 0 && (\n <div>\n {mostrarLimite ? (\n <span class=\"restantes\" aria-live=\"polite\" role=\"status\" id=\"limitmax\">\n Restam <strong>{caracteresRestantes}</strong> caracteres\n </span>\n ) : (\n <span class=\"limit\" aria-live=\"polite\">\n Limite máximo de <strong>{this.maxlength}</strong> caracteres\n </span>\n )}\n </div>\n )}\n </div>\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n )\n }\n}\n"]}
1
+ {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/components/textarea/textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACxG,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,EAAc,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAGpF;;;;GAIG;AAOH,MAAM,OAAO,QAAQ;;QAiEnB;;;WAGG;QACc,iBAAY,GAAG,CAAC,KAAY,EAAE,EAAE;;YAC/C,MAAM,QAAQ,GAAG,KAAK,CAAC,MAA6B,CAAA;YACpD,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAA;YAC3B,IAAI,CAAC,aAAa,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,CAAA;YACvC,IAAI,CAAC,eAAe,EAAE,CAAA;QACxB,CAAC,CAAA;QAkCO,wBAAmB,GAAe,EAAE,CAAA;;;;wBArFC,KAAK;yBAKL,CAAC;;uBASmB,QAAQ;wBAK5B,KAAK;;wBAWW,eAAe,MAAM,EAAE,EAAE;;IAEtF,iBAAiB;;QACf,IAAI,CAAC,aAAa,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,CAAA;QACvC,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC3D,CAAC;IAGD,YAAY;;QACV,IAAI,CAAC,aAAa,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,CAAA;IACzC,CAAC;IAaD;;;OAGG;IAEH,KAAK,CAAC,QAAQ,CAAC,QAAgB;;QAC7B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAA;QACrB,IAAI,CAAC,aAAa,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,CAAA;QACvC,IAAI,CAAC,eAAe,EAAE,CAAA;IACxB,CAAC;IAEO,eAAe;QACrB,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,aAAa,EAAE;YACjD,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;YAC7B,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;SACf,CAAC,CAAA;QACF,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;IACpC,CAAC;IAEO,cAAc;QACpB,OAAO;YACL,aAAa,EAAE,IAAI;YACnB,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO;YAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,KAAK,QAAQ;YACjC,KAAK,EAAE,IAAI,CAAC,OAAO,KAAK,OAAO;YAC/B,OAAO,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS;YACjC,MAAM,EAAE,IAAI,CAAC,KAAK,KAAK,QAAQ;YAC/B,OAAO,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS;SAClC,CAAA;IACH,CAAC;IAID,MAAM;QACJ,MAAM,mBAAmB,GAAW,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAA;QACvE,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,CAAA;QAE5C,OAAO,CACL,EAAC,IAAI;YACH,0EAAK,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,IAAM,IAAI,CAAC,mBAAmB;gBAC7D,4DAAK,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBACnC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CACf,WAAK,KAAK,EAAC,kBAAkB;wBAC3B,aAAO,OAAO,EAAE,IAAI,CAAC,QAAQ,IAAG,IAAI,CAAC,KAAK,CAAS,CAC/C,CACP,CAAC,CAAC,CAAC,CACF,aAAO,OAAO,EAAE,IAAI,CAAC,QAAQ,IAAG,IAAI,CAAC,KAAK,CAAS,CACpD;oBACD,4DAAK,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;wBACpC,+EACE,EAAE,EAAE,IAAI,CAAC,QAAQ,EACjB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,YAAY,IACtB,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACnD;wBACZ,4DAAK,KAAK,EAAC,gBAAgB,IACxB,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CACrB,8DACG,aAAa,CAAC,CAAC,CAAC,CACf,YAAM,KAAK,EAAC,WAAW,eAAW,QAAQ,EAAC,IAAI,EAAC,QAAQ,EAAC,EAAE,EAAC,UAAU;;4BAC7D,kBAAS,mBAAmB,CAAU;0CACxC,CACR,CAAC,CAAC,CAAC,CACF,YAAM,KAAK,EAAC,OAAO,eAAW,QAAQ;;4BACnB,kBAAS,IAAI,CAAC,SAAS,CAAU;0CAC7C,CACR,CACG,CACP,CACG;wBACN,8DAAa,CACT,CACF,CACF,CACD,CACR,CAAA;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { AttachInternals, Component, Element, h, Host, Method, Prop, State, Watch } from '@stencil/core'\nimport { v4 as uuidv4 } from 'uuid'\n\nimport { Attributes, inheritAriaAttributes } from '../../utils/inherited-attributes'\nimport { CssClassMap } from '../../utils/interfaces'\n\n/**\n * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/textarea?tab=designer).\n *\n * @slot default - Espaço de conteúdo do textarea. Geralmente usado para incluir texto adicional ou instruções para o usuário.\n */\n@Component({\n tag: 'br-textarea',\n styleUrl: 'textarea.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Textarea {\n @Element() el: HTMLBrTextareaElement\n\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Valor atual do textarea. Este valor pode ser alterado programaticamente.\n */\n @Prop({ mutable: true, reflect: true }) value: string\n\n /**\n * Texto do rótulo associado ao textarea. Este rótulo é exibido acima do campo de entrada.\n */\n @Prop({ reflect: true }) label: string\n\n /**\n * Texto exibido quando o textarea está vazio. Ajuda a guiar o usuário sobre o que deve ser inserido.\n */\n @Prop({ reflect: true }) placeholder: string\n\n /**\n * Indica se o textarea está desabilitado. Quando verdadeiro, o usuário não pode interagir com o campo.\n */\n @Prop({ reflect: true }) disabled: boolean = false\n\n /**\n * Número máximo de caracteres permitidos no textarea. Se definido como 0, não há limite.\n */\n @Prop({ reflect: true }) maxlength: number = 0\n\n /**\n * Define o estado visual do componente, podendo ser 'danger', 'success' ou 'warning'.\n */\n @Prop({ reflect: true }) state: 'danger' | 'success' | 'warning'\n /**\n * Ajusta a densidade do componente, podendo ser 'small', 'medium' ou 'large'.\n */\n @Prop({ reflect: true }) density: 'small' | 'medium' | 'large' = 'medium'\n\n /**\n * Se verdadeiro, o rótulo e o input estarão na mesma linha (layout inline).\n */\n @Prop({ reflect: true }) isInline: boolean = false\n\n /**\n * Comprimento atual do texto no textarea. É atualizado sempre que o valor do textarea muda.\n */\n @State() currentLength: number\n\n /**\n * Identificador único do textarea.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true, attribute: 'id' }) customId: string = `br-textarea-${uuidv4()}`\n\n componentWillLoad() {\n this.currentLength = this.value?.length\n this.inheritedAttributes = inheritAriaAttributes(this.el)\n }\n\n @Watch('value')\n valueChanged() {\n this.currentLength = this.value?.length\n }\n\n /**\n * Manipula a mudança de valor do textarea. Atualiza o valor e emite um evento de mudança.\n * @param event - O evento de entrada do textarea.\n */\n private readonly handleChange = (event: Event) => {\n const textarea = event.target as HTMLTextAreaElement\n this.value = textarea.value\n this.currentLength = this.value?.length\n this.emitValueChange()\n }\n\n /**\n * Define um novo valor para o textarea.\n * @param newValue - O novo valor a ser definido.\n */\n @Method()\n async setValue(newValue: string) {\n this.value = newValue\n this.currentLength = this.value?.length\n this.emitValueChange()\n }\n\n private emitValueChange() {\n const changeEvent = new CustomEvent('valueChange', {\n detail: { value: this.value },\n bubbles: true,\n composed: true,\n })\n this.el.dispatchEvent(changeEvent)\n }\n\n private getCssClassMap(): CssClassMap {\n return {\n 'br-textarea': true,\n small: this.density === 'small',\n medium: this.density === 'medium',\n large: this.density === 'large',\n success: this.state === 'success',\n danger: this.state === 'danger',\n warning: this.state === 'warning',\n }\n }\n\n private inheritedAttributes: Attributes = {}\n\n render() {\n const caracteresRestantes: number = this.maxlength - this.currentLength\n const mostrarLimite = this.currentLength > 0\n\n return (\n <Host>\n <div class={this.getCssClassMap()} {...this.inheritedAttributes}>\n <div class={this.isInline ? 'row' : ''}>\n {this.isInline ? (\n <div class=\"col-auto pt-half\">\n <label htmlFor={this.customId}>{this.label}</label>\n </div>\n ) : (\n <label htmlFor={this.customId}>{this.label}</label>\n )}\n <div class={this.isInline ? 'col' : ''}>\n <textarea\n id={this.customId}\n value={this.value}\n placeholder={this.placeholder}\n disabled={this.disabled}\n onInput={this.handleChange}\n {...(this.maxlength > 0 ? { maxLength: this.maxlength } : {})}\n ></textarea>\n <div class=\"text-base mt-1\">\n {this.maxlength > 0 && (\n <div>\n {mostrarLimite ? (\n <span class=\"restantes\" aria-live=\"polite\" role=\"status\" id=\"limitmax\">\n Restam <strong>{caracteresRestantes}</strong> caracteres\n </span>\n ) : (\n <span class=\"limit\" aria-live=\"polite\">\n Limite máximo de <strong>{this.maxlength}</strong> caracteres\n </span>\n )}\n </div>\n )}\n </div>\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n )\n }\n}\n"]}
@@ -34,6 +34,7 @@ img {
34
34
 
35
35
  button,
36
36
  input,
37
+ select,
37
38
  textarea {
38
39
  font-family: inherit;
39
40
  font-size: 100%;
@@ -46,7 +47,8 @@ input {
46
47
  overflow: visible;
47
48
  }
48
49
 
49
- button {
50
+ button,
51
+ select {
50
52
  text-transform: none;
51
53
  }
52
54
 
@@ -211,6 +213,10 @@ textarea {
211
213
  margin-right: var(--spacing-scale-half) !important;
212
214
  }
213
215
 
216
+ .mb-1 {
217
+ margin-bottom: var(--spacing-scale-half) !important;
218
+ }
219
+
214
220
  .mr-2 {
215
221
  margin-right: var(--spacing-scale-base) !important;
216
222
  }
@@ -219,6 +225,10 @@ textarea {
219
225
  margin-right: calc(var(--spacing-scale-base) * -1) !important;
220
226
  }
221
227
 
228
+ .ml-2 {
229
+ margin-left: var(--spacing-scale-base) !important;
230
+ }
231
+
222
232
  .mb-3 {
223
233
  margin-bottom: var(--spacing-scale-2x) !important;
224
234
  }
@@ -133,7 +133,7 @@ export class Upload {
133
133
  fileInput.click();
134
134
  }
135
135
  render() {
136
- return (h(Host, { key: 'aab6988f0879747fdb594e3810704e497718635c' }, h("div", { key: '274726af605123e4be46cd995b295c8eb147cbf4', class: this.getCssClassMap() }, h("label", { key: '40753e4671f13bd2daab5c823284e64dd104214b', class: "upload-label", form: "single-file" }, h("span", { key: 'd49a6054c231e556bb40ee4c8b06f0c8ff950507' }, this.label)), h("button", { key: 'dafa2d9c447bb65f01e9b5dbd81f63dde33d38d2', class: "upload-button", type: "button", "aria-hidden": "true", tabIndex: this.disabled ? -1 : 0, disabled: this.disabled, "aria-label": "Selecionar arquivo para upload", onClick: () => this.handleFileSelection(), onDrop: (event) => this.handleDrop(event), onDragOver: (event) => this.handleDragOver(event) }, h("br-icon", { key: '22b4bf3b4618ecdff30cdcb8db2185db6da0af5f', "icon-name": "fa-solid:upload", height: "16", "aria-hidden": "true" }), h("span", { key: 'f8a3fbc9629d7a8cd85eb434d922356b5c61ab22' }, "Selecione o arquivo")), h("input", Object.assign({ key: '83b65e6e1a55db70d42c6075bea037d58b86c457', class: "upload-input", id: "single-file", type: "file", "aria-hidden": "null", "aria-label": "enviar arquivo", onChange: ($event) => this.onInputChange($event.target.files) }, this.inheritedAttributes, { multiple: this.multiple, disabled: this.disabled, accept: this.accept })), h("div", { key: '0a7a7f508c8379986a56d1a2aa5773b0f0709c17', id: "list-files", class: "upload-list" }, this.filesSelected ? this.renderFilesUploaded() : null))));
136
+ return (h(Host, { key: '02b2a02a1e5a01541f274af27a252df11b997533' }, h("div", { key: '18dc309308da75b0b3c83d0c1064bb78eb539aee', class: this.getCssClassMap() }, h("label", { key: 'c8cd9c1f4ab8af73f3caccdc72af81ba9c9b5845', class: "upload-label", form: "single-file" }, h("span", { key: '1ce6051408c897ca48fb782c2da53a21658c6c1e' }, this.label)), h("button", { key: 'c0ab9d74e4f4182dacac708ec29f024fcfef9f24', class: "upload-button", type: "button", "aria-hidden": "true", tabIndex: this.disabled ? -1 : 0, disabled: this.disabled, "aria-label": "Selecionar arquivo para upload", onClick: () => this.handleFileSelection(), onDrop: (event) => this.handleDrop(event), onDragOver: (event) => this.handleDragOver(event) }, h("br-icon", { key: '9d18e764dd75896fc54ad49214bc7b6697a84087', "icon-name": "fa-solid:upload", height: "16", "aria-hidden": "true" }), h("span", { key: '41867f8e64071e62f632ca02b9093bbb60f71e51' }, "Selecione o arquivo")), h("input", Object.assign({ key: '20b2c8cbceea55c0756978da246d53fd923fbed8', class: "upload-input", id: "single-file", type: "file", "aria-hidden": "null", "aria-label": "enviar arquivo", onChange: ($event) => this.onInputChange($event.target.files) }, this.inheritedAttributes, { multiple: this.multiple, disabled: this.disabled, accept: this.accept })), h("div", { key: '4b627eadceade14860def5aaa9ae69c05b000832', id: "list-files", class: "upload-list" }, this.filesSelected ? this.renderFilesUploaded() : null))));
137
137
  }
138
138
  static get is() { return "br-upload"; }
139
139
  static get encapsulation() { return "shadow"; }
@@ -164,6 +164,8 @@ export class Upload {
164
164
  "tags": [],
165
165
  "text": "Tipos de arquivo permitidos (ex: 'image/*').\nEsta propriedade define quais tipos de arquivos podem ser selecionados para upload."
166
166
  },
167
+ "getter": false,
168
+ "setter": false,
167
169
  "attribute": "accept",
168
170
  "reflect": false,
169
171
  "defaultValue": "''"
@@ -180,8 +182,10 @@ export class Upload {
180
182
  "optional": false,
181
183
  "docs": {
182
184
  "tags": [],
183
- "text": "**[OBRIGAT\u00D3RIO]** Texto descritivo do campo de upload.\nEste \u00E9 o texto que \u00E9 mostrado no label do textarea."
185
+ "text": "Texto descritivo do campo de upload.\nEste \u00E9 o texto que \u00E9 mostrado no label do textarea."
184
186
  },
187
+ "getter": false,
188
+ "setter": false,
185
189
  "attribute": "label",
186
190
  "reflect": false,
187
191
  "defaultValue": "'Envio de arquivo'"
@@ -200,6 +204,8 @@ export class Upload {
200
204
  "tags": [],
201
205
  "text": "Indica se o componente est\u00E1 desativado.\nQuando definido como `true`, o campo de upload se torna n\u00E3o interativo,\nimpedindo que o usu\u00E1rio selecione ou envie arquivos.\nIsso \u00E9 \u00FAtil para controlar a intera\u00E7\u00E3o do usu\u00E1rio em situa\u00E7\u00F5es espec\u00EDficas,\ncomo durante o carregamento de dados ou quando o formul\u00E1rio est\u00E1 em um estado inv\u00E1lido."
202
206
  },
207
+ "getter": false,
208
+ "setter": false,
203
209
  "attribute": "disabled",
204
210
  "reflect": true,
205
211
  "defaultValue": "false"
@@ -216,8 +222,10 @@ export class Upload {
216
222
  "optional": false,
217
223
  "docs": {
218
224
  "tags": [],
219
- "text": "**[OBRIGAT\u00D3RIO]** Define o estado visual da mensagem.\nOs poss\u00EDveis valores s\u00E3o:\n- 'info': Mensagem informativa.\n- 'warning': Mensagem de aviso.\n- 'danger': Mensagem de erro ou alerta.\n- 'success': Mensagem de sucesso.\nO valor padr\u00E3o \u00E9 'info'."
225
+ "text": "Define o estado visual da mensagem.\nOs poss\u00EDveis valores s\u00E3o:\n- 'info': Mensagem informativa.\n- 'warning': Mensagem de aviso.\n- 'danger': Mensagem de erro ou alerta.\n- 'success': Mensagem de sucesso.\nO valor padr\u00E3o \u00E9 'info'."
220
226
  },
227
+ "getter": false,
228
+ "setter": false,
221
229
  "attribute": "state",
222
230
  "reflect": true,
223
231
  "defaultValue": "UploadState.INFO"
@@ -236,6 +244,8 @@ export class Upload {
236
244
  "tags": [],
237
245
  "text": "Indica se o componente permite a sele\u00E7\u00E3o de m\u00FAltiplos arquivos.\nQuando definido como `true`, o usu\u00E1rio pode selecionar mais de um arquivo para upload."
238
246
  },
247
+ "getter": false,
248
+ "setter": false,
239
249
  "attribute": "multiple",
240
250
  "reflect": false,
241
251
  "defaultValue": "false"