@govbr-ds/webcomponents 2.0.0-next.36 → 2.0.0-next.37

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 (315) hide show
  1. package/dist/cjs/br-avatar.cjs.entry.js +1 -1
  2. package/dist/cjs/br-avatar.cjs.entry.js.map +1 -1
  3. package/dist/cjs/br-avatar.entry.cjs.js.map +1 -1
  4. package/dist/cjs/br-breadcrumb.cjs.entry.js +1 -1
  5. package/dist/cjs/br-breadcrumb.cjs.entry.js.map +1 -1
  6. package/dist/cjs/br-breadcrumb.entry.cjs.js.map +1 -1
  7. package/dist/cjs/br-button.br-icon.entry.cjs.js.map +1 -1
  8. package/dist/cjs/br-button_2.cjs.entry.js +9 -3
  9. package/dist/cjs/br-button_2.cjs.entry.js.map +1 -1
  10. package/dist/cjs/br-checkbox.cjs.entry.js +1 -1
  11. package/dist/cjs/br-checkbox.cjs.entry.js.map +1 -1
  12. package/dist/cjs/br-checkbox.entry.cjs.js.map +1 -1
  13. package/dist/cjs/br-checkgroup.cjs.entry.js +1 -1
  14. package/dist/cjs/br-checkgroup.cjs.entry.js.map +1 -1
  15. package/dist/cjs/br-checkgroup.entry.cjs.js.map +1 -1
  16. package/dist/cjs/br-collapse.cjs.entry.js +1 -1
  17. package/dist/cjs/br-collapse.cjs.entry.js.map +1 -1
  18. package/dist/cjs/br-collapse.entry.cjs.js.map +1 -1
  19. package/dist/cjs/br-divider.cjs.entry.js +1 -1
  20. package/dist/cjs/br-divider.cjs.entry.js.map +1 -1
  21. package/dist/cjs/br-divider.entry.cjs.js.map +1 -1
  22. package/dist/cjs/br-dropdown.cjs.entry.js +1 -1
  23. package/dist/cjs/br-dropdown.cjs.entry.js.map +1 -1
  24. package/dist/cjs/br-dropdown.entry.cjs.js.map +1 -1
  25. package/dist/cjs/br-input.br-radio.entry.cjs.js.map +1 -1
  26. package/dist/cjs/br-input_2.cjs.entry.js +2 -2
  27. package/dist/cjs/br-input_2.cjs.entry.js.map +1 -1
  28. package/dist/cjs/br-item.cjs.entry.js +1 -1
  29. package/dist/cjs/br-item.cjs.entry.js.map +1 -1
  30. package/dist/cjs/br-item.entry.cjs.js.map +1 -1
  31. package/dist/cjs/br-list.cjs.entry.js +1 -1
  32. package/dist/cjs/br-list.cjs.entry.js.map +1 -1
  33. package/dist/cjs/br-list.entry.cjs.js.map +1 -1
  34. package/dist/cjs/br-loading.cjs.entry.js +1 -1
  35. package/dist/cjs/br-loading.cjs.entry.js.map +1 -1
  36. package/dist/cjs/br-loading.entry.cjs.js.map +1 -1
  37. package/dist/cjs/br-message.cjs.entry.js +1 -1
  38. package/dist/cjs/br-message.cjs.entry.js.map +1 -1
  39. package/dist/cjs/br-message.entry.cjs.js.map +1 -1
  40. package/dist/cjs/br-select.cjs.entry.js +1 -1
  41. package/dist/cjs/br-select.cjs.entry.js.map +1 -1
  42. package/dist/cjs/br-select.entry.cjs.js.map +1 -1
  43. package/dist/cjs/br-step-item.cjs.entry.js +2 -2
  44. package/dist/cjs/br-step-item.cjs.entry.js.map +1 -1
  45. package/dist/cjs/br-step-item.entry.cjs.js.map +1 -1
  46. package/dist/cjs/br-step.cjs.entry.js +1 -1
  47. package/dist/cjs/br-step.cjs.entry.js.map +1 -1
  48. package/dist/cjs/br-step.entry.cjs.js.map +1 -1
  49. package/dist/cjs/br-switch.cjs.entry.js +2 -2
  50. package/dist/cjs/br-switch.cjs.entry.js.map +1 -1
  51. package/dist/cjs/br-switch.entry.cjs.js.map +1 -1
  52. package/dist/cjs/br-tab-item.cjs.entry.js +76 -0
  53. package/dist/cjs/br-tab-item.cjs.entry.js.map +1 -0
  54. package/dist/cjs/br-tab-item.entry.cjs.js.map +1 -0
  55. package/dist/cjs/br-tab.cjs.entry.js +294 -0
  56. package/dist/cjs/br-tab.cjs.entry.js.map +1 -0
  57. package/dist/cjs/br-tab.entry.cjs.js.map +1 -0
  58. package/dist/cjs/br-tag.cjs.entry.js +3 -3
  59. package/dist/cjs/br-tag.cjs.entry.js.map +1 -1
  60. package/dist/cjs/br-tag.entry.cjs.js.map +1 -1
  61. package/dist/cjs/br-textarea.cjs.entry.js +2 -2
  62. package/dist/cjs/br-textarea.cjs.entry.js.map +1 -1
  63. package/dist/cjs/br-textarea.entry.cjs.js.map +1 -1
  64. package/dist/cjs/br-upload.cjs.entry.js +2 -2
  65. package/dist/cjs/br-upload.cjs.entry.js.map +1 -1
  66. package/dist/cjs/br-upload.entry.cjs.js.map +1 -1
  67. package/dist/cjs/index-DAOr34NM.js +8 -0
  68. package/dist/cjs/loader.cjs.js +1 -1
  69. package/dist/cjs/webcomponents.cjs.js +1 -1
  70. package/dist/collection/collection-manifest.json +2 -0
  71. package/dist/collection/components/avatar/avatar.css +1 -1
  72. package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
  73. package/dist/collection/components/button/button.css +1 -1
  74. package/dist/collection/components/button/button.js +7 -1
  75. package/dist/collection/components/button/button.js.map +1 -1
  76. package/dist/collection/components/checkbox/checkbox.css +1 -1
  77. package/dist/collection/components/checkgroup/checkgroup.css +1 -1
  78. package/dist/collection/components/collapse/collapse.css +1 -1
  79. package/dist/collection/components/divider/divider.css +1 -1
  80. package/dist/collection/components/dropdown/dropdown.css +1 -1
  81. package/dist/collection/components/icon/icon.css +1 -1
  82. package/dist/collection/components/input/input.css +1 -1
  83. package/dist/collection/components/item/item.css +1 -1
  84. package/dist/collection/components/list/list.css +1 -1
  85. package/dist/collection/components/loading/loading.css +1 -1
  86. package/dist/collection/components/message/message.css +1 -1
  87. package/dist/collection/components/radio/radio.css +1 -1
  88. package/dist/collection/components/select/select.css +1 -1
  89. package/dist/collection/components/step/step.css +1 -1
  90. package/dist/collection/components/step-item/step-item.css +1 -1
  91. package/dist/collection/components/step-item/step-item.js +1 -1
  92. package/dist/collection/components/step-item/step-item.js.map +1 -1
  93. package/dist/collection/components/switch/switch.css +1 -1
  94. package/dist/collection/components/switch/switch.js +1 -1
  95. package/dist/collection/components/tab/tab.css +1 -0
  96. package/dist/collection/components/tab/tab.js +372 -0
  97. package/dist/collection/components/tab/tab.js.map +1 -0
  98. package/dist/collection/components/tab-item/tab-item.css +1 -0
  99. package/dist/collection/components/tab-item/tab-item.js +256 -0
  100. package/dist/collection/components/tab-item/tab-item.js.map +1 -0
  101. package/dist/collection/components/tag/tag.css +1 -1
  102. package/dist/collection/components/tag/tag.js +2 -2
  103. package/dist/collection/components/textarea/textarea.css +1 -1
  104. package/dist/collection/components/textarea/textarea.js +1 -1
  105. package/dist/collection/components/upload/upload.css +1 -1
  106. package/dist/collection/components/upload/upload.js +1 -1
  107. package/dist/collection/pages/components/tab/index.js +18 -0
  108. package/dist/collection/pages/scripts/menu.js +6 -2
  109. package/dist/components/br-avatar.js +2 -2
  110. package/dist/components/br-breadcrumb.js +5 -5
  111. package/dist/components/br-breadcrumb.js.map +1 -1
  112. package/dist/components/br-button.js +4 -4
  113. package/dist/components/br-checkbox.js +3 -3
  114. package/dist/components/br-checkgroup.js +2 -2
  115. package/dist/components/br-collapse.js +2 -2
  116. package/dist/components/br-divider.js +1 -1
  117. package/dist/components/br-dropdown.js +1 -1
  118. package/dist/components/br-icon.js +4 -4
  119. package/dist/components/br-input.js +3 -3
  120. package/dist/components/br-item.js +1 -1
  121. package/dist/components/br-list.js +1 -1
  122. package/dist/components/br-loading.js +1 -1
  123. package/dist/components/br-message.js +3 -3
  124. package/dist/components/br-message.js.map +1 -1
  125. package/dist/components/br-radio.js +1 -1
  126. package/dist/components/br-select.js +7 -7
  127. package/dist/components/br-step-item.js +13 -15
  128. package/dist/components/br-step-item.js.map +1 -1
  129. package/dist/components/br-step.js +1 -1
  130. package/dist/components/br-switch.js +6 -6
  131. package/dist/components/br-tab-item.d.ts +11 -0
  132. package/dist/components/br-tab-item.js +142 -0
  133. package/dist/components/br-tab-item.js.map +1 -0
  134. package/dist/components/br-tab.d.ts +11 -0
  135. package/dist/components/br-tab.js +323 -0
  136. package/dist/components/br-tab.js.map +1 -0
  137. package/dist/components/br-tag.js +9 -9
  138. package/dist/components/br-tag.js.map +1 -1
  139. package/dist/components/br-textarea.js +9 -9
  140. package/dist/components/br-upload.js +12 -12
  141. package/dist/components/br-upload.js.map +1 -1
  142. package/dist/components/index.d.ts +4 -0
  143. package/dist/components/index.js +4 -0
  144. package/dist/components/p--CgLOCRx.js +161 -0
  145. package/dist/components/p--CgLOCRx.js.map +1 -0
  146. package/dist/components/p-BHVw1goI.js +130 -0
  147. package/dist/components/p-BJMTHoO1.js +166 -0
  148. package/dist/components/{p-ZjuPhQfh.js → p-BnUE1zRr.js} +3 -3
  149. package/dist/components/{p-ZjuPhQfh.js.map → p-BnUE1zRr.js.map} +1 -1
  150. package/dist/components/p-D8kzJA95.js +386 -0
  151. package/dist/components/p-D8kzJA95.js.map +1 -0
  152. package/dist/components/p-UBBZzYz0.js +285 -0
  153. package/dist/components/p-XihAdNcR.js +198 -0
  154. package/dist/custom-elements.json +509 -0
  155. package/dist/esm/br-avatar.entry.js +1 -1
  156. package/dist/esm/br-avatar.entry.js.map +1 -1
  157. package/dist/esm/br-breadcrumb.entry.js +1 -1
  158. package/dist/esm/br-breadcrumb.entry.js.map +1 -1
  159. package/dist/esm/br-button.br-icon.entry.js.map +1 -1
  160. package/dist/esm/br-button_2.entry.js +9 -3
  161. package/dist/esm/br-button_2.entry.js.map +1 -1
  162. package/dist/esm/br-checkbox.entry.js +1 -1
  163. package/dist/esm/br-checkbox.entry.js.map +1 -1
  164. package/dist/esm/br-checkgroup.entry.js +1 -1
  165. package/dist/esm/br-checkgroup.entry.js.map +1 -1
  166. package/dist/esm/br-collapse.entry.js +1 -1
  167. package/dist/esm/br-collapse.entry.js.map +1 -1
  168. package/dist/esm/br-divider.entry.js +1 -1
  169. package/dist/esm/br-divider.entry.js.map +1 -1
  170. package/dist/esm/br-dropdown.entry.js +1 -1
  171. package/dist/esm/br-dropdown.entry.js.map +1 -1
  172. package/dist/esm/br-input.br-radio.entry.js.map +1 -1
  173. package/dist/esm/br-input_2.entry.js +2 -2
  174. package/dist/esm/br-input_2.entry.js.map +1 -1
  175. package/dist/esm/br-item.entry.js +1 -1
  176. package/dist/esm/br-item.entry.js.map +1 -1
  177. package/dist/esm/br-list.entry.js +1 -1
  178. package/dist/esm/br-list.entry.js.map +1 -1
  179. package/dist/esm/br-loading.entry.js +1 -1
  180. package/dist/esm/br-loading.entry.js.map +1 -1
  181. package/dist/esm/br-message.entry.js +1 -1
  182. package/dist/esm/br-message.entry.js.map +1 -1
  183. package/dist/esm/br-select.entry.js +1 -1
  184. package/dist/esm/br-select.entry.js.map +1 -1
  185. package/dist/esm/br-step-item.entry.js +2 -2
  186. package/dist/esm/br-step-item.entry.js.map +1 -1
  187. package/dist/esm/br-step.entry.js +1 -1
  188. package/dist/esm/br-step.entry.js.map +1 -1
  189. package/dist/esm/br-switch.entry.js +2 -2
  190. package/dist/esm/br-switch.entry.js.map +1 -1
  191. package/dist/esm/br-tab-item.entry.js +74 -0
  192. package/dist/esm/br-tab-item.entry.js.map +1 -0
  193. package/dist/esm/br-tab.entry.js +292 -0
  194. package/dist/esm/br-tab.entry.js.map +1 -0
  195. package/dist/esm/br-tag.entry.js +3 -3
  196. package/dist/esm/br-tag.entry.js.map +1 -1
  197. package/dist/esm/br-textarea.entry.js +2 -2
  198. package/dist/esm/br-textarea.entry.js.map +1 -1
  199. package/dist/esm/br-upload.entry.js +2 -2
  200. package/dist/esm/br-upload.entry.js.map +1 -1
  201. package/dist/esm/index-ClsF4De3.js +8 -0
  202. package/dist/esm/loader.js +1 -1
  203. package/dist/esm/webcomponents.js +1 -1
  204. package/dist/hydrate/index.js +423 -29
  205. package/dist/hydrate/index.mjs +423 -29
  206. package/dist/types/components/button/button.d.ts +1 -0
  207. package/dist/types/components/tab/tab.d.ts +103 -0
  208. package/dist/types/components/tab-item/tab-item.d.ts +52 -0
  209. package/dist/types/components.d.ts +168 -0
  210. package/dist/webcomponents/br-avatar.entry.esm.js.map +1 -1
  211. package/dist/webcomponents/br-breadcrumb.entry.esm.js.map +1 -1
  212. package/dist/webcomponents/br-button.br-icon.entry.esm.js.map +1 -1
  213. package/dist/webcomponents/br-checkbox.entry.esm.js.map +1 -1
  214. package/dist/webcomponents/br-checkgroup.entry.esm.js.map +1 -1
  215. package/dist/webcomponents/br-collapse.entry.esm.js.map +1 -1
  216. package/dist/webcomponents/br-divider.entry.esm.js.map +1 -1
  217. package/dist/webcomponents/br-dropdown.entry.esm.js.map +1 -1
  218. package/dist/webcomponents/br-input.br-radio.entry.esm.js.map +1 -1
  219. package/dist/webcomponents/br-item.entry.esm.js.map +1 -1
  220. package/dist/webcomponents/br-list.entry.esm.js.map +1 -1
  221. package/dist/webcomponents/br-loading.entry.esm.js.map +1 -1
  222. package/dist/webcomponents/br-message.entry.esm.js.map +1 -1
  223. package/dist/webcomponents/br-select.entry.esm.js.map +1 -1
  224. package/dist/webcomponents/br-step-item.entry.esm.js.map +1 -1
  225. package/dist/webcomponents/br-step.entry.esm.js.map +1 -1
  226. package/dist/webcomponents/br-switch.entry.esm.js.map +1 -1
  227. package/dist/webcomponents/br-tab-item.entry.esm.js.map +1 -0
  228. package/dist/webcomponents/br-tab.entry.esm.js.map +1 -0
  229. package/dist/webcomponents/br-tag.entry.esm.js.map +1 -1
  230. package/dist/webcomponents/br-textarea.entry.esm.js.map +1 -1
  231. package/dist/webcomponents/br-upload.entry.esm.js.map +1 -1
  232. package/dist/webcomponents/p-042418c1.entry.js +282 -0
  233. package/dist/webcomponents/p-266fd1cc.entry.js +210 -0
  234. package/dist/webcomponents/p-266fd1cc.entry.js.map +1 -0
  235. package/dist/webcomponents/p-26a06008.entry.js +277 -0
  236. package/dist/webcomponents/{p-36231217.entry.js.map → p-26a06008.entry.js.map} +1 -1
  237. package/dist/webcomponents/p-39a05b09.entry.js +105 -0
  238. package/dist/webcomponents/p-4904fcbd.entry.js +255 -0
  239. package/dist/webcomponents/p-5ba2ffff.entry.js +258 -0
  240. package/dist/webcomponents/p-5ba2ffff.entry.js.map +1 -0
  241. package/dist/webcomponents/p-5c6f6d89.entry.js +145 -0
  242. package/dist/webcomponents/p-6e345cc1.entry.js +164 -0
  243. package/dist/webcomponents/p-74a30dda.entry.js +145 -0
  244. package/dist/webcomponents/p-8073b5fe.entry.js +376 -0
  245. package/dist/webcomponents/p-82421cdf.entry.js +108 -0
  246. package/dist/webcomponents/p-82421cdf.entry.js.map +1 -0
  247. package/dist/webcomponents/p-8525c0c3.entry.js +149 -0
  248. package/dist/webcomponents/p-86a0426b.entry.js +111 -0
  249. package/dist/webcomponents/p-ba1a8a96.entry.js +141 -0
  250. package/dist/webcomponents/p-c0c4e877.entry.js +88 -0
  251. package/dist/webcomponents/p-c9d64f24.entry.js +169 -0
  252. package/dist/webcomponents/p-cb6a0614.entry.js +153 -0
  253. package/dist/webcomponents/p-cb6a0614.entry.js.map +1 -0
  254. package/dist/webcomponents/p-e2ea234c.entry.js +460 -0
  255. package/dist/webcomponents/p-e2ea234c.entry.js.map +1 -0
  256. package/dist/webcomponents/p-e3880c54.entry.js +167 -0
  257. package/dist/webcomponents/p-e9979a59.entry.js +2369 -0
  258. package/dist/webcomponents/p-e9979a59.entry.js.map +1 -0
  259. package/dist/webcomponents/p-ebe00c81.entry.js +297 -0
  260. package/dist/webcomponents/p-ebe00c81.entry.js.map +1 -0
  261. package/dist/webcomponents/p-fddc4ef2.entry.js +399 -0
  262. package/dist/webcomponents/{p-9cfc8db7.entry.js.map → p-fddc4ef2.entry.js.map} +1 -1
  263. package/dist/webcomponents/webcomponents.esm.js +43 -27
  264. package/dist/webcomponents.html-custom-data.json +30 -0
  265. package/package.json +1 -1
  266. package/dist/components/p-BQZa6fK2.js +0 -198
  267. package/dist/components/p-BQb4_NfQ.js +0 -166
  268. package/dist/components/p-CAjrcMpR.js +0 -154
  269. package/dist/components/p-CAjrcMpR.js.map +0 -1
  270. package/dist/components/p-DP5hSLC1.js +0 -130
  271. package/dist/components/p-DvG8eiYP.js +0 -285
  272. package/dist/components/p-sndAoOGI.js +0 -386
  273. package/dist/components/p-sndAoOGI.js.map +0 -1
  274. package/dist/webcomponents/p-2537ae9c.entry.js +0 -167
  275. package/dist/webcomponents/p-36231217.entry.js +0 -279
  276. package/dist/webcomponents/p-3c0f3cb4.entry.js +0 -169
  277. package/dist/webcomponents/p-477035e2.entry.js +0 -164
  278. package/dist/webcomponents/p-48996f81.entry.js +0 -282
  279. package/dist/webcomponents/p-520c5527.entry.js +0 -149
  280. package/dist/webcomponents/p-64df4b98.entry.js +0 -255
  281. package/dist/webcomponents/p-795c258e.entry.js +0 -105
  282. package/dist/webcomponents/p-94aa48d4.entry.js +0 -460
  283. package/dist/webcomponents/p-94aa48d4.entry.js.map +0 -1
  284. package/dist/webcomponents/p-94aab132.entry.js +0 -141
  285. package/dist/webcomponents/p-9cf1963e.entry.js +0 -145
  286. package/dist/webcomponents/p-9cfc8db7.entry.js +0 -399
  287. package/dist/webcomponents/p-bfb1bd71.entry.js +0 -258
  288. package/dist/webcomponents/p-bfb1bd71.entry.js.map +0 -1
  289. package/dist/webcomponents/p-c5ac5216.entry.js +0 -210
  290. package/dist/webcomponents/p-c5ac5216.entry.js.map +0 -1
  291. package/dist/webcomponents/p-caa64d3d.entry.js +0 -111
  292. package/dist/webcomponents/p-cd2933f6.entry.js +0 -153
  293. package/dist/webcomponents/p-cd2933f6.entry.js.map +0 -1
  294. package/dist/webcomponents/p-db618028.entry.js +0 -2362
  295. package/dist/webcomponents/p-db618028.entry.js.map +0 -1
  296. package/dist/webcomponents/p-ddee0a15.entry.js +0 -88
  297. package/dist/webcomponents/p-eecebb46.entry.js +0 -376
  298. package/dist/webcomponents/p-ff97c81f.entry.js +0 -145
  299. /package/dist/components/{p-DP5hSLC1.js.map → p-BHVw1goI.js.map} +0 -0
  300. /package/dist/components/{p-BQb4_NfQ.js.map → p-BJMTHoO1.js.map} +0 -0
  301. /package/dist/components/{p-DvG8eiYP.js.map → p-UBBZzYz0.js.map} +0 -0
  302. /package/dist/components/{p-BQZa6fK2.js.map → p-XihAdNcR.js.map} +0 -0
  303. /package/dist/webcomponents/{p-48996f81.entry.js.map → p-042418c1.entry.js.map} +0 -0
  304. /package/dist/webcomponents/{p-795c258e.entry.js.map → p-39a05b09.entry.js.map} +0 -0
  305. /package/dist/webcomponents/{p-64df4b98.entry.js.map → p-4904fcbd.entry.js.map} +0 -0
  306. /package/dist/webcomponents/{p-ff97c81f.entry.js.map → p-5c6f6d89.entry.js.map} +0 -0
  307. /package/dist/webcomponents/{p-477035e2.entry.js.map → p-6e345cc1.entry.js.map} +0 -0
  308. /package/dist/webcomponents/{p-9cf1963e.entry.js.map → p-74a30dda.entry.js.map} +0 -0
  309. /package/dist/webcomponents/{p-eecebb46.entry.js.map → p-8073b5fe.entry.js.map} +0 -0
  310. /package/dist/webcomponents/{p-520c5527.entry.js.map → p-8525c0c3.entry.js.map} +0 -0
  311. /package/dist/webcomponents/{p-caa64d3d.entry.js.map → p-86a0426b.entry.js.map} +0 -0
  312. /package/dist/webcomponents/{p-94aab132.entry.js.map → p-ba1a8a96.entry.js.map} +0 -0
  313. /package/dist/webcomponents/{p-ddee0a15.entry.js.map → p-c0c4e877.entry.js.map} +0 -0
  314. /package/dist/webcomponents/{p-3c0f3cb4.entry.js.map → p-c9d64f24.entry.js.map} +0 -0
  315. /package/dist/webcomponents/{p-2537ae9c.entry.js.map → p-e3880c54.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["breadcrumbCss","Breadcrumb","elementInternals","customId","breadcrumbId","homeUrl","crumbs","defaultCrumbs","label","url","active","showTooltip","tooltipPosition","x","y","tooltipText","isSmallScreen","isTruncate","larguraInterna","larguraPai","isFolderOpen","trunc","word","length","charactersNumberTruncate","slice","handleMouseOver","event","text","target","rect","getBoundingClientRect","this","left","width","top","handleMouseOut","getParsedItems","parsed","JSON","parse","Array","isArray","console","error","handleHomeClick","window","location","href","toggleFolder","getCssClassMap","small","resizeObserver","updateContainerSize","entries","entry","containerWidth","contentRect","calcularLarguraItens","connectedCallback","ResizeObserver","el","parentElement","observe","disconnectedCallback","disconnect","requestAnimationFrame","itens","shadowRoot","querySelectorAll","totalWidth","forEach","item","componentDidLoad","renderHomeButton","buttonFolderClass","h","id","shape","onClick","renderTruncateButton","class","height","onKeyDown","handleKeyDown","renderBreadcrumbItems","parsedItems","lastItem","onMouseOver","onMouseOut","renderMobileActiveItem","renderBreadcrumbList","map","index","key","home","renderBreadcrumbLink","activeItem","find","tabindex","handleKeyDownOut","renderTooltip","style","setTimeout","element","getElementById","focus","render","Host"],"sources":["../../packages/webcomponents/src/components/breadcrumb/breadcrumb.scss?tag=br-breadcrumb&encapsulation=shadow","../../packages/webcomponents/src/components/breadcrumb/breadcrumb.tsx"],"sourcesContent":["@import \"~@govbr-ds/core/src/components/breadcrumb/breadcrumb\";\n@import \"~@govbr-ds/core/src/partial/scss/configs/icons\";\n@import \"~@govbr-ds/core/src/components/button/button\";\n@import \"~@govbr-ds/core/src/components/list/list\";\n@import \"~@govbr-ds/core/src/components/item/item\";\n@import \"~@govbr-ds/core/src/components/divider/divider\";\n\n:host {\n display: block;\n\n .br-breadcrumb {\n .br-icon {\n color: #ccc;\n }\n\n .br-icon,\n .mobile-active-page {\n display: flex;\n align-items: center;\n }\n\n .mobile-crumb-list {\n display: none;\n position: absolute;\n width: 200px;\n box-shadow: var(--surface-shadow-sm);\n }\n\n .mobile-crumb-list.show {\n display: block;\n top: 100%;\n z-index: 999;\n }\n\n .buttonFolderGroup,\n .buttonFolderGroup span {\n display: flex;\n align-items: center;\n }\n\n .mobile-active-page span:focus:focus-visible {\n outline: var(--focus-width) var(--focus-style) var(--focus);\n outline-offset: var(--focus-offset);\n }\n\n .crumb {\n display: flex;\n align-items: center;\n\n span {\n display: flex;\n align-items: center;\n }\n }\n }\n\n .tooltip-box {\n position: fixed;\n background: #1351b4;\n color: #fff;\n padding: 8px 12px;\n border-radius: 4px;\n font-size: 12px;\n white-space: nowrap;\n transform: translate(-50%, -100%);\n pointer-events: none;\n z-index: 9999;\n box-shadow: 0 2px 4px rgba(0 0 0 / 20%);\n opacity: 0;\n transition: opacity 0.2s ease-in-out;\n\n &::after {\n content: \"\";\n position: absolute;\n bottom: -5px;\n left: 50%;\n transform: translateX(-50%);\n width: 0;\n height: 0;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #1351b4;\n }\n }\n}\n\n:host(:hover) {\n .tooltip-box {\n opacity: 1;\n }\n}\n","/* eslint-disable jsx-a11y/no-noninteractive-tabindex */\nimport { AttachInternals, Component, Element, h, Host, Prop, State } from '@stencil/core'\n\ninterface BreadcrumbItem {\n label: string\n url?: string\n target?: string\n home?: boolean\n active?: boolean\n}\n@Component({\n tag: 'br-breadcrumb',\n styleUrl: 'breadcrumb.scss',\n shadow: true,\n})\nexport class Breadcrumb {\n @Element() el: HTMLBrBreadcrumbElement\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true }) readonly customId: string = `br-breadcrumb-${breadcrumbId++}`\n\n /**\n * URL para home.\n * Caso não seja fornecido, o valor padrão será /.\n */\n @Prop() homeUrl: string = '/'\n\n /**\n * Define o array de objetos que receberá os nomes e links do breadcrumb.\n * Define valor padrão do breadcrumb 'defaultCrumbs'.\n */\n @Prop() crumbs: string | BreadcrumbItem[]\n\n private defaultCrumbs: BreadcrumbItem[] = [\n { label: 'Página 01', url: '/pagina-01' },\n { label: 'Página 02', url: '/pagina-02' },\n { label: 'Página Atual', active: true },\n ]\n\n /**\n * Define o estado oculto ou visível do tooltip.\n */\n @State() showTooltip: boolean = false\n\n /**\n * Define o posicionamento do tooltip na tela.\n */\n @State() tooltipPosition: { x: number; y: number } = { x: 0, y: 0 }\n\n /**\n * Define o texto do tooltip.\n */\n @State() tooltipText: string = ''\n\n /**\n * Define o estado isSmallScreen, usado para verificar a largura do container pai e aplicar as mudanças do formato mobile.\n * No formato mobile o breadcrumb apresenta um comportamento específico.\n */\n @State() isSmallScreen: boolean = false\n\n /**\n * Define se o breadcrumb deve truncar os itens por falta de espaço.\n */\n @State() isTruncate: boolean = false\n\n /**\n * Largura interna dos itens do breadcrumb.\n */\n @State() larguraInterna: number = 0\n\n /**\n * Largura do container pai do breadcrumb.\n */\n @State() larguraPai: number = 0\n\n /**\n * Define o estado do botão 'Folder'.\n * Caso a lista dropdown esteja oculta o ícone no botão será 'folder-plus'.\n * Caso a lista dropdown esteja visível o ícone no botão será 'folder-minus'.\n */\n @State() isFolderOpen: boolean = false\n\n /**\n * Verifica se o texto do link contém mais de 20 caracteres e realiza o truncamento deste caso positivo.\n * O número de caracteres pode ser configurado na variável 'charactersNumberTruncate'.\n */\n private trunc(word: string) {\n return word.length > charactersNumberTruncate ? `${word.slice(0, charactersNumberTruncate)}...` : word\n }\n\n /**\n * Exibe o tooltip e define seu posicionamento, caso o usuário realize o 'mouse over'.\n */\n private handleMouseOver(event: MouseEvent, text: string) {\n const target = event.target as HTMLElement | null\n if (!target) return\n\n const rect = target.getBoundingClientRect()\n this.tooltipPosition = { x: rect.left + rect.width / 2, y: rect.top - 10 }\n\n if (text.length > charactersNumberTruncate) {\n this.tooltipText = text\n this.showTooltip = true\n }\n }\n\n /**\n * Esconde o tooltip caso o usuário realize o 'mouse out'.\n */\n private handleMouseOut() {\n this.showTooltip = false\n }\n\n /**\n * Converte de string para JSON o valor passado na propriedade 'crumbs'.\n * Retorna o valor padrão do Breadcrumbs caso crumbs seja vazio ou inválido\n */\n private getParsedItems(): BreadcrumbItem[] {\n if (!this.crumbs || this.crumbs === '') {\n return this.defaultCrumbs\n }\n\n try {\n const parsed = typeof this.crumbs === 'string' ? JSON.parse(this.crumbs) : this.crumbs\n return Array.isArray(parsed) && parsed.length > 0 ? parsed : this.defaultCrumbs\n } catch {\n console.error('Invalid JSON format for crumbs:', this.crumbs)\n return this.defaultCrumbs\n }\n }\n\n /**\n * Ao clicar no botão HOME, direciona o usuário para URL passada na propriedade 'homeUrl'.\n */\n private handleHomeClick() {\n window.location.href = this.homeUrl\n }\n\n /**\n * Altera o estado do botão 'Folder', caso a lista dropdown esteja aberta ou fechada.\n */\n private toggleFolder() {\n this.isFolderOpen = !this.isFolderOpen\n }\n\n /**\n * Define as classes CSS usadas no breadcrumb.\n */\n private getCssClassMap(): { [key: string]: boolean } {\n return {\n 'br-breadcrumb': true,\n small: this.isSmallScreen,\n }\n }\n\n /**\n * Atualiza o estado 'isSmallScreen' com base no tamanho do container pai, se menor que 570px.\n */\n private resizeObserver: ResizeObserver\n\n /**\n * Atualiza os estados de largura do breadcrumb ao detectar mudanças no container pai.\n */\n private updateContainerSize = (entries: ResizeObserverEntry[]) => {\n for (const entry of entries) {\n const containerWidth = entry.contentRect.width\n this.isSmallScreen = containerWidth < 570\n this.larguraPai = containerWidth\n this.calcularLarguraItens()\n }\n }\n\n /**\n * Adiciona o 'resizeObserver' para checar o tamanho do container pai.\n */\n connectedCallback() {\n if (typeof ResizeObserver !== 'undefined') {\n this.resizeObserver = new ResizeObserver(this.updateContainerSize)\n if (this.el.parentElement !== null) {\n this.resizeObserver.observe(this.el.parentElement)\n }\n }\n }\n\n /**\n * Remove o 'resizeObserver'.\n */\n disconnectedCallback() {\n if (this.resizeObserver != null) {\n this.resizeObserver.disconnect()\n }\n }\n\n /**\n * Calcula a largura total dos itens do breadcrumb para determinar se precisa de truncamento.\n */\n private calcularLarguraItens() {\n requestAnimationFrame(() => {\n const itens = this.el.shadowRoot?.querySelectorAll('.crumb, .mobile-active-page, br-item')\n if (itens) {\n let totalWidth = 0\n itens.forEach((item) => {\n totalWidth += (item as HTMLElement).getBoundingClientRect().width\n })\n this.larguraInterna = totalWidth\n this.isTruncate = this.larguraInterna > this.larguraPai\n }\n })\n }\n\n /**\n * Executa cálculos de largura após o componente ser carregado.\n */\n componentDidLoad() {\n this.calcularLarguraItens()\n }\n\n /**\n * Renderiza botão Home\n */\n private renderHomeButton() {\n const buttonFolderClass = this.isFolderOpen ? 'fa6-solid:folder-minus' : 'fa6-solid:folder-plus'\n return (\n <br-button\n id=\"circle\"\n shape=\"circle\"\n aria-label={this.isSmallScreen ? 'Exibir lista de páginas' : 'Voltar para Home'}\n onClick={this.isSmallScreen ? () => this.toggleFolder() : () => this.handleHomeClick()}\n >\n <br-icon icon-name={`${this.isSmallScreen ? buttonFolderClass : 'fa6-solid:house'}`}></br-icon>\n </br-button>\n )\n }\n\n /**\n * Renderiza botão Folder no comportamento truncado\n */\n private renderTruncateButton() {\n if (this.isTruncate && !this.isSmallScreen) {\n const buttonFolderClass = this.isFolderOpen ? 'fa6-solid:folder-minus' : 'fa6-solid:folder-plus'\n return (\n <div class=\"buttonFolderGroup\">\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <br-button\n id=\"circle\"\n shape=\"circle\"\n aria-label={this.isFolderOpen ? 'Recolher lista de páginas' : 'Exibir lista de páginas'}\n onClick={() => this.toggleFolder()}\n onKeyDown={(event) => this.handleKeyDown(event)}\n >\n <br-icon icon-name={buttonFolderClass}></br-icon>\n </br-button>\n </div>\n )\n }\n return null\n }\n\n /**\n * Renderiza itens do Breadcrumb no comportamento mobile ou truncado\n */\n private renderBreadcrumbItems() {\n const parsedItems = this.getParsedItems()\n const lastItem = parsedItems[parsedItems.length - 2]\n\n return this.isSmallScreen || this.isTruncate ? (\n <div class=\"buttonFolderGroup\">\n {this.isTruncate && !this.isSmallScreen && lastItem ? (\n <span>\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <a\n id=\"nextCrumb\"\n href={lastItem.url || 'javascript:void(0)'}\n target={lastItem.target || '_self'}\n onMouseOver={(event) => this.handleMouseOver(event, lastItem.label)}\n onMouseOut={() => this.handleMouseOut()}\n >\n {this.trunc(lastItem.label)}\n </a>\n </span>\n ) : null}\n {this.renderMobileActiveItem(parsedItems)}\n {this.renderBreadcrumbList(parsedItems)}\n </div>\n ) : (\n parsedItems.map((item, index) => (\n <li\n key={index}\n class={`crumb ${item.home ? 'home' : ''}`}\n data-active={item.active ? 'active' : null}\n aria-label={`Página ${index + 1} de ${parsedItems.length}`}\n >\n {this.renderBreadcrumbLink(item)}\n </li>\n ))\n )\n }\n\n /**\n * Renderiza item da página atual\n */\n private renderMobileActiveItem(parsedItems: BreadcrumbItem[]) {\n const activeItem = parsedItems.find((item) => item.active)\n if (!activeItem) return null\n return (\n <span class=\"mobile-active-page\">\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <span aria-current=\"page\" data-active=\"active\" tabindex=\"0\">\n {activeItem.label}\n </span>\n </span>\n )\n }\n\n /**\n * Renderiza Lista dropdown contendo os itens do Breadcrumb\n */\n private renderBreadcrumbList(parsedItems: BreadcrumbItem[]) {\n return (\n <br-list class={this.isFolderOpen ? 'mobile-crumb-list show' : 'mobile-crumb-list'}>\n {this.isSmallScreen && (\n <div aria-label={`Página 1 de ${parsedItems.length}`}>\n <br-item>\n <a href={this.homeUrl} target=\"_self\">\n Página Inicial\n </a>\n </br-item>\n <span class=\"br-divider\"></span>\n </div>\n )}\n {parsedItems.map((item, index) => {\n if (this.isTruncate && !this.isSmallScreen && index === parsedItems.length - 2) {\n return null\n }\n return (\n !item.active && (\n <div\n key={index}\n aria-label={\n this.isTruncate && !this.isSmallScreen\n ? `Página ${index + 1} de ${parsedItems.length - 2}`\n : `Página ${index + 2} de ${parsedItems.length}`\n }\n >\n <br-item>\n <a\n id={index == 0 ? 'firstElementList' : ''}\n href={item.url || 'javascript:void(0)'}\n target={item.target || '_self'}\n onMouseOver={(event) => this.handleMouseOver(event, item.label)}\n onMouseOut={() => this.handleMouseOut()}\n onKeyDown={\n index == parsedItems.length - 3 && this.isFolderOpen && this.isTruncate && !this.isSmallScreen\n ? (event) => {\n if (event.key === 'Tab') {\n this.handleKeyDownOut(event)\n this.toggleFolder()\n }\n }\n : null\n }\n >\n {this.trunc(item.label)}\n </a>\n </br-item>\n <span class=\"br-divider\"></span>\n </div>\n )\n )\n })}\n </br-list>\n )\n }\n\n /**\n * Renderiza itens do Breadcrumb no formato desktop\n */\n private renderBreadcrumbLink(item: BreadcrumbItem) {\n return item.active ? (\n <span>\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <span aria-current=\"page\" tabindex=\"0\">\n {item.label}\n </span>\n </span>\n ) : (\n <span>\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <a\n href={item.url || 'javascript:void(0)'}\n target={item.target || '_self'}\n onMouseOver={(event) => this.handleMouseOver(event, item.label)}\n onMouseOut={() => this.handleMouseOut()}\n >\n {this.trunc(item.label)}\n </a>\n </span>\n )\n }\n\n /**\n * Renderiza Tooltip\n */\n private renderTooltip() {\n if (!this.showTooltip) return null\n return (\n <div class=\"tooltip-box\" style={{ left: `${this.tooltipPosition.x}px`, top: `${this.tooltipPosition.y}px` }}>\n {this.tooltipText}\n </div>\n )\n }\n\n /**\n * Controla navegação pelo teclado após lista de itens aberta\n * Dispara foco no primeiro item da lista flutuante\n */\n private handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Tab') {\n if (this.isFolderOpen && this.isTruncate && !this.isSmallScreen) {\n setTimeout(() => {\n const element = this.el.shadowRoot?.getElementById('firstElementList')\n if (element) {\n element.focus()\n }\n }, 0) // Aguarda um ciclo de renderização\n }\n }\n }\n\n /**\n * Ao finalizar navegação por teclado dentro da lista, dispara foco no item fora da lista flutuante\n */\n private handleKeyDownOut(event: KeyboardEvent) {\n if (event.key === 'Tab') {\n if (this.isFolderOpen && this.isTruncate && !this.isSmallScreen) {\n setTimeout(() => {\n const element = this.el.shadowRoot?.getElementById('nextCrumb')\n if (element) {\n element.focus()\n }\n }, 0)\n }\n }\n }\n\n render() {\n return (\n <Host>\n <nav class={this.getCssClassMap()} aria-label=\"Breadcrumbs\">\n <ol class=\"crumb-list\">\n {this.renderHomeButton()}\n {this.renderTruncateButton()}\n {this.renderBreadcrumbItems()}\n </ol>\n </nav>\n {this.renderTooltip()}\n </Host>\n )\n }\n}\n\n/**\n * ID do Breadcrumb\n */\nlet breadcrumbId = 0\n\n/**\n * Limite de caracteres para o truncamento\n */\nconst charactersNumberTruncate = 20\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["breadcrumbCss","Breadcrumb","elementInternals","customId","breadcrumbId","homeUrl","crumbs","defaultCrumbs","label","url","active","showTooltip","tooltipPosition","x","y","tooltipText","isSmallScreen","isTruncate","larguraInterna","larguraPai","isFolderOpen","trunc","word","length","charactersNumberTruncate","slice","handleMouseOver","event","text","target","rect","getBoundingClientRect","this","left","width","top","handleMouseOut","getParsedItems","parsed","JSON","parse","Array","isArray","console","error","handleHomeClick","window","location","href","toggleFolder","getCssClassMap","small","resizeObserver","updateContainerSize","entries","entry","containerWidth","contentRect","calcularLarguraItens","connectedCallback","ResizeObserver","el","parentElement","observe","disconnectedCallback","disconnect","requestAnimationFrame","itens","shadowRoot","querySelectorAll","totalWidth","forEach","item","componentDidLoad","renderHomeButton","buttonFolderClass","h","id","shape","onClick","renderTruncateButton","class","height","onKeyDown","handleKeyDown","renderBreadcrumbItems","parsedItems","lastItem","onMouseOver","onMouseOut","renderMobileActiveItem","renderBreadcrumbList","map","index","key","home","renderBreadcrumbLink","activeItem","find","tabindex","handleKeyDownOut","renderTooltip","style","setTimeout","element","getElementById","focus","render","Host"],"sources":["../../packages/webcomponents/src/components/breadcrumb/breadcrumb.scss?tag=br-breadcrumb&encapsulation=shadow","../../packages/webcomponents/src/components/breadcrumb/breadcrumb.tsx"],"sourcesContent":["@import \"~@govbr-ds/core/src/components/breadcrumb/breadcrumb\";\n@import \"~@govbr-ds/core/src/partial/scss/configs/icons\";\n@import \"~@govbr-ds/core/src/components/button/button\";\n@import \"~@govbr-ds/core/src/components/list/list\";\n@import \"~@govbr-ds/core/src/components/item/item\";\n@import \"~@govbr-ds/core/src/components/divider/divider\";\n\n:host {\n display: block;\n\n .br-breadcrumb {\n .br-icon {\n color: #ccc;\n }\n\n .br-icon,\n .mobile-active-page {\n display: flex;\n align-items: center;\n }\n\n .mobile-crumb-list {\n display: none;\n position: absolute;\n width: 200px;\n box-shadow: var(--surface-shadow-sm);\n }\n\n .mobile-crumb-list.show {\n display: block;\n top: 100%;\n z-index: 999;\n }\n\n .buttonFolderGroup,\n .buttonFolderGroup span {\n display: flex;\n align-items: center;\n }\n\n .mobile-active-page {\n span:focus:focus-visible {\n outline: var(--focus-width) var(--focus-style) var(--focus);\n outline-offset: var(--focus-offset);\n }\n\n [data-active] {\n margin: 0 var(--spacing-scale-2x) 0 var(--spacing-scale-base);\n }\n }\n\n .crumb {\n display: flex;\n align-items: center;\n\n span {\n display: flex;\n align-items: center;\n }\n }\n }\n\n .tooltip-box {\n position: fixed;\n background: #1351b4;\n color: #fff;\n padding: 8px 12px;\n border-radius: 4px;\n font-size: 12px;\n white-space: nowrap;\n transform: translate(-50%, -100%);\n pointer-events: none;\n z-index: 9999;\n box-shadow: 0 2px 4px rgba(0 0 0 / 20%);\n opacity: 0;\n transition: opacity 0.2s ease-in-out;\n\n &::after {\n content: \"\";\n position: absolute;\n bottom: -5px;\n left: 50%;\n transform: translateX(-50%);\n width: 0;\n height: 0;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #1351b4;\n }\n }\n}\n\n:host(:hover) {\n .tooltip-box {\n opacity: 1;\n }\n}\n","/* eslint-disable jsx-a11y/no-noninteractive-tabindex */\nimport { AttachInternals, Component, Element, h, Host, Prop, State } from '@stencil/core'\n\ninterface BreadcrumbItem {\n label: string\n url?: string\n target?: string\n home?: boolean\n active?: boolean\n}\n@Component({\n tag: 'br-breadcrumb',\n styleUrl: 'breadcrumb.scss',\n shadow: true,\n})\nexport class Breadcrumb {\n @Element() el: HTMLBrBreadcrumbElement\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único.\n * Caso não seja fornecido, um ID gerado automaticamente será usado.\n */\n @Prop({ reflect: true }) readonly customId: string = `br-breadcrumb-${breadcrumbId++}`\n\n /**\n * URL para home.\n * Caso não seja fornecido, o valor padrão será /.\n */\n @Prop() homeUrl: string = '/'\n\n /**\n * Define o array de objetos que receberá os nomes e links do breadcrumb.\n * Define valor padrão do breadcrumb 'defaultCrumbs'.\n */\n @Prop() crumbs: string | BreadcrumbItem[]\n\n private defaultCrumbs: BreadcrumbItem[] = [\n { label: 'Página 01', url: '/pagina-01' },\n { label: 'Página 02', url: '/pagina-02' },\n { label: 'Página Atual', active: true },\n ]\n\n /**\n * Define o estado oculto ou visível do tooltip.\n */\n @State() showTooltip: boolean = false\n\n /**\n * Define o posicionamento do tooltip na tela.\n */\n @State() tooltipPosition: { x: number; y: number } = { x: 0, y: 0 }\n\n /**\n * Define o texto do tooltip.\n */\n @State() tooltipText: string = ''\n\n /**\n * Define o estado isSmallScreen, usado para verificar a largura do container pai e aplicar as mudanças do formato mobile.\n * No formato mobile o breadcrumb apresenta um comportamento específico.\n */\n @State() isSmallScreen: boolean = false\n\n /**\n * Define se o breadcrumb deve truncar os itens por falta de espaço.\n */\n @State() isTruncate: boolean = false\n\n /**\n * Largura interna dos itens do breadcrumb.\n */\n @State() larguraInterna: number = 0\n\n /**\n * Largura do container pai do breadcrumb.\n */\n @State() larguraPai: number = 0\n\n /**\n * Define o estado do botão 'Folder'.\n * Caso a lista dropdown esteja oculta o ícone no botão será 'folder-plus'.\n * Caso a lista dropdown esteja visível o ícone no botão será 'folder-minus'.\n */\n @State() isFolderOpen: boolean = false\n\n /**\n * Verifica se o texto do link contém mais de 20 caracteres e realiza o truncamento deste caso positivo.\n * O número de caracteres pode ser configurado na variável 'charactersNumberTruncate'.\n */\n private trunc(word: string) {\n return word.length > charactersNumberTruncate ? `${word.slice(0, charactersNumberTruncate)}...` : word\n }\n\n /**\n * Exibe o tooltip e define seu posicionamento, caso o usuário realize o 'mouse over'.\n */\n private handleMouseOver(event: MouseEvent, text: string) {\n const target = event.target as HTMLElement | null\n if (!target) return\n\n const rect = target.getBoundingClientRect()\n this.tooltipPosition = { x: rect.left + rect.width / 2, y: rect.top - 10 }\n\n if (text.length > charactersNumberTruncate) {\n this.tooltipText = text\n this.showTooltip = true\n }\n }\n\n /**\n * Esconde o tooltip caso o usuário realize o 'mouse out'.\n */\n private handleMouseOut() {\n this.showTooltip = false\n }\n\n /**\n * Converte de string para JSON o valor passado na propriedade 'crumbs'.\n * Retorna o valor padrão do Breadcrumbs caso crumbs seja vazio ou inválido\n */\n private getParsedItems(): BreadcrumbItem[] {\n if (!this.crumbs || this.crumbs === '') {\n return this.defaultCrumbs\n }\n\n try {\n const parsed = typeof this.crumbs === 'string' ? JSON.parse(this.crumbs) : this.crumbs\n return Array.isArray(parsed) && parsed.length > 0 ? parsed : this.defaultCrumbs\n } catch {\n console.error('Invalid JSON format for crumbs:', this.crumbs)\n return this.defaultCrumbs\n }\n }\n\n /**\n * Ao clicar no botão HOME, direciona o usuário para URL passada na propriedade 'homeUrl'.\n */\n private handleHomeClick() {\n window.location.href = this.homeUrl\n }\n\n /**\n * Altera o estado do botão 'Folder', caso a lista dropdown esteja aberta ou fechada.\n */\n private toggleFolder() {\n this.isFolderOpen = !this.isFolderOpen\n }\n\n /**\n * Define as classes CSS usadas no breadcrumb.\n */\n private getCssClassMap(): { [key: string]: boolean } {\n return {\n 'br-breadcrumb': true,\n small: this.isSmallScreen,\n }\n }\n\n /**\n * Atualiza o estado 'isSmallScreen' com base no tamanho do container pai, se menor que 570px.\n */\n private resizeObserver: ResizeObserver\n\n /**\n * Atualiza os estados de largura do breadcrumb ao detectar mudanças no container pai.\n */\n private updateContainerSize = (entries: ResizeObserverEntry[]) => {\n for (const entry of entries) {\n const containerWidth = entry.contentRect.width\n this.isSmallScreen = containerWidth < 570\n this.larguraPai = containerWidth\n this.calcularLarguraItens()\n }\n }\n\n /**\n * Adiciona o 'resizeObserver' para checar o tamanho do container pai.\n */\n connectedCallback() {\n if (typeof ResizeObserver !== 'undefined') {\n this.resizeObserver = new ResizeObserver(this.updateContainerSize)\n if (this.el.parentElement !== null) {\n this.resizeObserver.observe(this.el.parentElement)\n }\n }\n }\n\n /**\n * Remove o 'resizeObserver'.\n */\n disconnectedCallback() {\n if (this.resizeObserver != null) {\n this.resizeObserver.disconnect()\n }\n }\n\n /**\n * Calcula a largura total dos itens do breadcrumb para determinar se precisa de truncamento.\n */\n private calcularLarguraItens() {\n requestAnimationFrame(() => {\n const itens = this.el.shadowRoot?.querySelectorAll('.crumb, .mobile-active-page, br-item')\n if (itens) {\n let totalWidth = 0\n itens.forEach((item) => {\n totalWidth += (item as HTMLElement).getBoundingClientRect().width\n })\n this.larguraInterna = totalWidth\n this.isTruncate = this.larguraInterna > this.larguraPai\n }\n })\n }\n\n /**\n * Executa cálculos de largura após o componente ser carregado.\n */\n componentDidLoad() {\n this.calcularLarguraItens()\n }\n\n /**\n * Renderiza botão Home\n */\n private renderHomeButton() {\n const buttonFolderClass = this.isFolderOpen ? 'fa6-solid:folder-minus' : 'fa6-solid:folder-plus'\n return (\n <br-button\n id=\"circle\"\n shape=\"circle\"\n aria-label={this.isSmallScreen ? 'Exibir lista de páginas' : 'Voltar para Home'}\n onClick={this.isSmallScreen ? () => this.toggleFolder() : () => this.handleHomeClick()}\n >\n <br-icon icon-name={`${this.isSmallScreen ? buttonFolderClass : 'fa6-solid:house'}`}></br-icon>\n </br-button>\n )\n }\n\n /**\n * Renderiza botão Folder no comportamento truncado\n */\n private renderTruncateButton() {\n if (this.isTruncate && !this.isSmallScreen) {\n const buttonFolderClass = this.isFolderOpen ? 'fa6-solid:folder-minus' : 'fa6-solid:folder-plus'\n return (\n <div class=\"buttonFolderGroup\">\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <br-button\n id=\"circle\"\n shape=\"circle\"\n aria-label={this.isFolderOpen ? 'Recolher lista de páginas' : 'Exibir lista de páginas'}\n onClick={() => this.toggleFolder()}\n onKeyDown={(event) => this.handleKeyDown(event)}\n >\n <br-icon icon-name={buttonFolderClass}></br-icon>\n </br-button>\n </div>\n )\n }\n return null\n }\n\n /**\n * Renderiza itens do Breadcrumb no comportamento mobile ou truncado\n */\n private renderBreadcrumbItems() {\n const parsedItems = this.getParsedItems()\n const lastItem = parsedItems[parsedItems.length - 2]\n\n return this.isSmallScreen || this.isTruncate ? (\n <div class=\"buttonFolderGroup\">\n {this.isTruncate && !this.isSmallScreen && lastItem ? (\n <span>\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <a\n id=\"nextCrumb\"\n href={lastItem.url || 'javascript:void(0)'}\n target={lastItem.target || '_self'}\n onMouseOver={(event) => this.handleMouseOver(event, lastItem.label)}\n onMouseOut={() => this.handleMouseOut()}\n >\n {this.trunc(lastItem.label)}\n </a>\n </span>\n ) : null}\n {this.renderMobileActiveItem(parsedItems)}\n {this.renderBreadcrumbList(parsedItems)}\n </div>\n ) : (\n parsedItems.map((item, index) => (\n <li\n key={index}\n class={`crumb ${item.home ? 'home' : ''}`}\n data-active={item.active ? 'active' : null}\n aria-label={`Página ${index + 1} de ${parsedItems.length}`}\n >\n {this.renderBreadcrumbLink(item)}\n </li>\n ))\n )\n }\n\n /**\n * Renderiza item da página atual\n */\n private renderMobileActiveItem(parsedItems: BreadcrumbItem[]) {\n const activeItem = parsedItems.find((item) => item.active)\n if (!activeItem) return null\n return (\n <span class=\"mobile-active-page\">\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <span aria-current=\"page\" data-active=\"active\" tabindex=\"0\">\n {activeItem.label}\n </span>\n </span>\n )\n }\n\n /**\n * Renderiza Lista dropdown contendo os itens do Breadcrumb\n */\n private renderBreadcrumbList(parsedItems: BreadcrumbItem[]) {\n return (\n <br-list class={this.isFolderOpen ? 'mobile-crumb-list show' : 'mobile-crumb-list'}>\n {this.isSmallScreen && (\n <div aria-label={`Página 1 de ${parsedItems.length}`}>\n <br-item>\n <a href={this.homeUrl} target=\"_self\">\n Página Inicial\n </a>\n </br-item>\n <span class=\"br-divider\"></span>\n </div>\n )}\n {parsedItems.map((item, index) => {\n if (this.isTruncate && !this.isSmallScreen && index === parsedItems.length - 2) {\n return null\n }\n return (\n !item.active && (\n <div\n key={index}\n aria-label={\n this.isTruncate && !this.isSmallScreen\n ? `Página ${index + 1} de ${parsedItems.length - 2}`\n : `Página ${index + 2} de ${parsedItems.length}`\n }\n >\n <br-item>\n <a\n id={index == 0 ? 'firstElementList' : ''}\n href={item.url || 'javascript:void(0)'}\n target={item.target || '_self'}\n onMouseOver={(event) => this.handleMouseOver(event, item.label)}\n onMouseOut={() => this.handleMouseOut()}\n onKeyDown={\n index == parsedItems.length - 3 && this.isFolderOpen && this.isTruncate && !this.isSmallScreen\n ? (event) => {\n if (event.key === 'Tab') {\n this.handleKeyDownOut(event)\n this.toggleFolder()\n }\n }\n : null\n }\n >\n {this.trunc(item.label)}\n </a>\n </br-item>\n <span class=\"br-divider\"></span>\n </div>\n )\n )\n })}\n </br-list>\n )\n }\n\n /**\n * Renderiza itens do Breadcrumb no formato desktop\n */\n private renderBreadcrumbLink(item: BreadcrumbItem) {\n return item.active ? (\n <span>\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <span aria-current=\"page\" tabindex=\"0\">\n {item.label}\n </span>\n </span>\n ) : (\n <span>\n <br-icon class=\"br-icon\" icon-name=\"fa6-solid:chevron-right\" width=\"12\" height=\"12\"></br-icon>\n <a\n href={item.url || 'javascript:void(0)'}\n target={item.target || '_self'}\n onMouseOver={(event) => this.handleMouseOver(event, item.label)}\n onMouseOut={() => this.handleMouseOut()}\n >\n {this.trunc(item.label)}\n </a>\n </span>\n )\n }\n\n /**\n * Renderiza Tooltip\n */\n private renderTooltip() {\n if (!this.showTooltip) return null\n return (\n <div class=\"tooltip-box\" style={{ left: `${this.tooltipPosition.x}px`, top: `${this.tooltipPosition.y}px` }}>\n {this.tooltipText}\n </div>\n )\n }\n\n /**\n * Controla navegação pelo teclado após lista de itens aberta\n * Dispara foco no primeiro item da lista flutuante\n */\n private handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Tab') {\n if (this.isFolderOpen && this.isTruncate && !this.isSmallScreen) {\n setTimeout(() => {\n const element = this.el.shadowRoot?.getElementById('firstElementList')\n if (element) {\n element.focus()\n }\n }, 0) // Aguarda um ciclo de renderização\n }\n }\n }\n\n /**\n * Ao finalizar navegação por teclado dentro da lista, dispara foco no item fora da lista flutuante\n */\n private handleKeyDownOut(event: KeyboardEvent) {\n if (event.key === 'Tab') {\n if (this.isFolderOpen && this.isTruncate && !this.isSmallScreen) {\n setTimeout(() => {\n const element = this.el.shadowRoot?.getElementById('nextCrumb')\n if (element) {\n element.focus()\n }\n }, 0)\n }\n }\n }\n\n render() {\n return (\n <Host>\n <nav class={this.getCssClassMap()} aria-label=\"Breadcrumbs\">\n <ol class=\"crumb-list\">\n {this.renderHomeButton()}\n {this.renderTruncateButton()}\n {this.renderBreadcrumbItems()}\n </ol>\n </nav>\n {this.renderTooltip()}\n </Host>\n )\n }\n}\n\n/**\n * ID do Breadcrumb\n */\nlet breadcrumbId = 0\n\n/**\n * Limite de caracteres para o truncamento\n */\nconst charactersNumberTruncate = 20\n"],"mappings":"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","ignoreList":[]}
@@ -15,11 +15,11 @@ import { g as o } from "./p-DVjNHTTs.js";
15
15
  patchCloneNodeFix(t.prototype);
16
16
  }
17
17
  const i = import.meta.url;
18
- const s = {};
18
+ const o = {};
19
19
  if (i !== "") {
20
- s.resourcesUrl = new URL(".", i).href;
20
+ o.resourcesUrl = new URL(".", i).href;
21
21
  }
22
- return e(s);
22
+ return e(o);
23
23
  };
24
24
 
25
25
  var patchCloneNodeFix = e => {
@@ -29,11 +29,11 @@ var patchCloneNodeFix = e => {
29
29
  return t.call(this, e);
30
30
  }
31
31
  const i = t.call(this, false);
32
- const s = this.childNodes;
32
+ const o = this.childNodes;
33
33
  if (e) {
34
- for (let e = 0; e < s.length; e++) {
35
- if (s[e].nodeType !== 2) {
36
- i.appendChild(s[e].cloneNode(true));
34
+ for (let e = 0; e < o.length; e++) {
35
+ if (o[e].nodeType !== 2) {
36
+ i.appendChild(o[e].cloneNode(true));
37
37
  }
38
38
  }
39
39
  }
@@ -43,7 +43,7 @@ var patchCloneNodeFix = e => {
43
43
 
44
44
  patchBrowser().then((async e => {
45
45
  await o();
46
- return i([ [ "p-eecebb46", [ [ 65, "br-select", {
46
+ return i([ [ "p-8073b5fe", [ [ 65, "br-select", {
47
47
  label: [ 513 ],
48
48
  placeholder: [ 513 ],
49
49
  isMultiple: [ 516, "is-multiple" ],
@@ -61,7 +61,7 @@ patchBrowser().then((async e => {
61
61
  toggleOpen: [ 64 ]
62
62
  }, null, {
63
63
  options: [ "synchronizeSelect" ]
64
- } ] ] ], [ "p-9cfc8db7", [ [ 1, "br-breadcrumb", {
64
+ } ] ] ], [ "p-fddc4ef2", [ [ 1, "br-breadcrumb", {
65
65
  customId: [ 513, "custom-id" ],
66
66
  homeUrl: [ 1, "home-url" ],
67
67
  crumbs: [ 1 ],
@@ -73,7 +73,7 @@ patchBrowser().then((async e => {
73
73
  larguraInterna: [ 32 ],
74
74
  larguraPai: [ 32 ],
75
75
  isFolderOpen: [ 32 ]
76
- } ] ] ], [ "p-cd2933f6", [ [ 65, "br-message", {
76
+ } ] ] ], [ "p-cb6a0614", [ [ 65, "br-message", {
77
77
  messageTitle: [ 513, "message-title" ],
78
78
  customId: [ 513, "custom-id" ],
79
79
  message: [ 513 ],
@@ -83,7 +83,7 @@ patchBrowser().then((async e => {
83
83
  showIcon: [ 516, "show-icon" ],
84
84
  isFeedback: [ 516, "is-feedback" ],
85
85
  state: [ 513 ]
86
- } ] ] ], [ "p-36231217", [ [ 65, "br-step-item", {
86
+ } ] ] ], [ "p-26a06008", [ [ 65, "br-step-item", {
87
87
  label: [ 513 ],
88
88
  highlight: [ 513 ],
89
89
  active: [ 516 ],
@@ -106,7 +106,7 @@ patchBrowser().then((async e => {
106
106
  setContent: [ 64 ]
107
107
  }, null, {
108
108
  active: [ "watchItemIsActive" ]
109
- } ] ] ], [ "p-bfb1bd71", [ [ 65, "br-tag", {
109
+ } ] ] ], [ "p-5ba2ffff", [ [ 65, "br-tag", {
110
110
  label: [ 513 ],
111
111
  iconName: [ 513, "icon-name" ],
112
112
  name: [ 513 ],
@@ -125,7 +125,7 @@ patchBrowser().then((async e => {
125
125
  interaction: [ "handleInteractionChange" ],
126
126
  interactionSelect: [ "handleInteractionSelectChange" ],
127
127
  selected: [ "handleSelectedChange" ]
128
- } ] ] ], [ "p-c5ac5216", [ [ 65, "br-upload", {
128
+ } ] ] ], [ "p-266fd1cc", [ [ 65, "br-upload", {
129
129
  accept: [ 1 ],
130
130
  label: [ 1 ],
131
131
  disabled: [ 516 ],
@@ -133,7 +133,7 @@ patchBrowser().then((async e => {
133
133
  multiple: [ 4 ],
134
134
  filesSelected: [ 32 ],
135
135
  file: [ 32 ]
136
- } ] ] ], [ "p-477035e2", [ [ 1, "br-avatar", {
136
+ } ] ] ], [ "p-6e345cc1", [ [ 1, "br-avatar", {
137
137
  density: [ 1025 ],
138
138
  customId: [ 513, "custom-id" ],
139
139
  src: [ 1 ],
@@ -147,7 +147,7 @@ patchBrowser().then((async e => {
147
147
  hasError: [ 32 ]
148
148
  }, null, {
149
149
  density: [ "handleDensityChange" ]
150
- } ] ] ], [ "p-9cf1963e", [ [ 65, "br-checkgroup", {
150
+ } ] ] ], [ "p-74a30dda", [ [ 65, "br-checkgroup", {
151
151
  label: [ 1 ],
152
152
  labelSelecionado: [ 513, "label-selecionado" ],
153
153
  labelDesselecionado: [ 513, "label-desselecionado" ],
@@ -155,7 +155,7 @@ patchBrowser().then((async e => {
155
155
  customId: [ 513, "custom-id" ],
156
156
  checked: [ 32 ],
157
157
  isIndeterminate: [ 32 ]
158
- }, [ [ 4, "checkedChange", "handleChange" ] ] ] ] ], [ "p-ff97c81f", [ [ 65, "br-collapse", {
158
+ }, [ [ 4, "checkedChange", "handleChange" ] ] ] ] ], [ "p-5c6f6d89", [ [ 65, "br-collapse", {
159
159
  customId: [ 513, "custom-id" ],
160
160
  open: [ 1540 ],
161
161
  accordionGroup: [ 1, "accordion-group" ],
@@ -164,7 +164,15 @@ patchBrowser().then((async e => {
164
164
  iconPosition: [ 1, "icon-position" ],
165
165
  openCollapse: [ 64 ],
166
166
  closeCollapse: [ 64 ]
167
- } ] ] ], [ "p-795c258e", [ [ 1, "br-divider", {
167
+ } ] ] ], [ "p-82421cdf", [ [ 65, "br-tab-item", {
168
+ TabItemId: [ 513, "tab-item-id" ],
169
+ icon: [ 513 ],
170
+ tabItemTitle: [ 513, "tab-item-title" ],
171
+ onlyIcon: [ 516, "only-icon" ],
172
+ isActive: [ 516, "is-active" ],
173
+ counter: [ 513 ],
174
+ colorMode: [ 513, "color-mode" ]
175
+ } ] ] ], [ "p-39a05b09", [ [ 1, "br-divider", {
168
176
  customId: [ 513, "custom-id" ],
169
177
  orientation: [ 513 ],
170
178
  thickness: [ 513 ],
@@ -176,20 +184,20 @@ patchBrowser().then((async e => {
176
184
  slotDefault: [ 32 ]
177
185
  }, null, {
178
186
  color: [ "updateColor" ]
179
- } ] ] ], [ "p-94aab132", [ [ 65, "br-dropdown", {
187
+ } ] ] ], [ "p-ba1a8a96", [ [ 65, "br-dropdown", {
180
188
  isOpen: [ 1540, "is-open" ],
181
189
  customId: [ 513, "custom-id" ],
182
190
  open: [ 64 ],
183
191
  hide: [ 64 ]
184
192
  }, null, {
185
193
  isOpen: [ "isOpenChanged" ]
186
- } ] ] ], [ "p-ddee0a15", [ [ 65, "br-loading", {
194
+ } ] ] ], [ "p-c0c4e877", [ [ 65, "br-loading", {
187
195
  isProgress: [ 516, "is-progress" ],
188
196
  customId: [ 513, "custom-id" ],
189
197
  progressPercent: [ 514, "progress-percent" ],
190
198
  isMedium: [ 516, "is-medium" ],
191
199
  label: [ 513 ]
192
- } ] ] ], [ "p-48996f81", [ [ 65, "br-step", {
200
+ } ] ] ], [ "p-042418c1", [ [ 65, "br-step", {
193
201
  layout: [ 513 ],
194
202
  initialStep: [ 513, "initial-step" ],
195
203
  labelPosition: [ 513, "label-position" ],
@@ -202,7 +210,7 @@ patchBrowser().then((async e => {
202
210
  BackToPreviousStep: [ 64 ],
203
211
  StepValidation: [ 64 ],
204
212
  GetActiveStep: [ 64 ]
205
- }, [ [ 2, "click", "handleClick" ] ] ] ] ], [ "p-520c5527", [ [ 65, "br-switch", {
213
+ }, [ [ 2, "click", "handleClick" ] ] ] ] ], [ "p-8525c0c3", [ [ 65, "br-switch", {
206
214
  disabled: [ 516 ],
207
215
  checked: [ 1540 ],
208
216
  customId: [ 513, "custom-id" ],
@@ -216,7 +224,15 @@ patchBrowser().then((async e => {
216
224
  density: [ 513 ],
217
225
  _slotDefault: [ 32 ],
218
226
  toggleChecked: [ 64 ]
219
- } ] ] ], [ "p-2537ae9c", [ [ 65, "br-textarea", {
227
+ } ] ] ], [ "p-ebe00c81", [ [ 65, "br-tab", {
228
+ density: [ 513 ],
229
+ colorMode: [ 513, "color-mode" ],
230
+ activeTab: [ 32 ],
231
+ tabItems: [ 32 ],
232
+ tabContent: [ 32 ]
233
+ }, null, {
234
+ activeTab: [ "activeTabChanged" ]
235
+ } ] ] ], [ "p-e3880c54", [ [ 65, "br-textarea", {
220
236
  value: [ 1537 ],
221
237
  label: [ 513 ],
222
238
  placeholder: [ 513 ],
@@ -231,7 +247,7 @@ patchBrowser().then((async e => {
231
247
  setValue: [ 64 ]
232
248
  }, null, {
233
249
  value: [ "valueChanged" ]
234
- } ] ] ], [ "p-64df4b98", [ [ 65, "br-item", {
250
+ } ] ] ], [ "p-4904fcbd", [ [ 65, "br-item", {
235
251
  disabled: [ 516 ],
236
252
  customId: [ 513, "custom-id" ],
237
253
  isActive: [ 516, "is-active" ],
@@ -247,7 +263,7 @@ patchBrowser().then((async e => {
247
263
  hasSlotStart: [ 32 ],
248
264
  hasSlotEnd: [ 32 ],
249
265
  selectedValue: [ 32 ]
250
- }, [ [ 4, "checkedChange", "handleRadioChange" ], [ 4, "checkedChange", "handleCheckboxChange" ] ] ] ] ], [ "p-94aa48d4", [ [ 65, "br-input", {
266
+ }, [ [ 4, "checkedChange", "handleRadioChange" ], [ 4, "checkedChange", "handleCheckboxChange" ] ] ] ] ], [ "p-e2ea234c", [ [ 65, "br-input", {
251
267
  type: [ 513 ],
252
268
  autocomplete: [ 513 ],
253
269
  density: [ 513 ],
@@ -286,7 +302,7 @@ patchBrowser().then((async e => {
286
302
  label: [ 513 ],
287
303
  value: [ 513 ],
288
304
  toggleChecked: [ 64 ]
289
- }, [ [ 8, "checkedChange", "handleCheckedChange" ] ] ] ] ], [ "p-3c0f3cb4", [ [ 65, "br-checkbox", {
305
+ }, [ [ 8, "checkedChange", "handleCheckedChange" ] ] ] ] ], [ "p-c9d64f24", [ [ 65, "br-checkbox", {
290
306
  indeterminate: [ 1540 ],
291
307
  checked: [ 1540 ],
292
308
  customId: [ 513, "custom-id" ],
@@ -301,12 +317,12 @@ patchBrowser().then((async e => {
301
317
  toggleChecked: [ 64 ]
302
318
  }, null, {
303
319
  indeterminate: [ "updateIndeterminate" ]
304
- } ] ] ], [ "p-caa64d3d", [ [ 65, "br-list", {
320
+ } ] ] ], [ "p-86a0426b", [ [ 65, "br-list", {
305
321
  header: [ 513 ],
306
322
  isHorizontal: [ 516, "is-horizontal" ],
307
323
  customId: [ 513, "custom-id" ],
308
324
  hideHeaderDivider: [ 516, "hide-header-divider" ]
309
- } ] ] ], [ "p-db618028", [ [ 65, "br-button", {
325
+ } ] ] ], [ "p-e9979a59", [ [ 65, "br-button", {
310
326
  colorMode: [ 513, "color-mode" ],
311
327
  customId: [ 513, "custom-id" ],
312
328
  density: [ 513 ],
@@ -477,6 +477,36 @@
477
477
  ],
478
478
  "references": []
479
479
  },
480
+ {
481
+ "name": "br-tab",
482
+ "description": "Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/tab-item?tab=designer).\n---\n\n\n### **Events:**\n - **brDidActive**\n\n### **Slots:**\n - **default** - Slot com os componentes item da tab",
483
+ "attributes": [
484
+ {
485
+ "name": "density",
486
+ "values": [
487
+ { "name": "small" },
488
+ { "name": "medium" },
489
+ { "name": "large" }
490
+ ]
491
+ },
492
+ { "name": "color-mode", "values": [] }
493
+ ],
494
+ "references": []
495
+ },
496
+ {
497
+ "name": "br-tab-item",
498
+ "description": "Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/tab-item?tab=designer).\n---\n\n\n### **Events:**\n - **itemTabClick**\n\n### **Slots:**\n - **default** - Slot com conteúdo do item da tab",
499
+ "attributes": [
500
+ { "name": "tab-item-id", "values": [] },
501
+ { "name": "icon", "values": [] },
502
+ { "name": "tab-item-title", "values": [] },
503
+ { "name": "only-icon", "values": [] },
504
+ { "name": "is-active", "values": [] },
505
+ { "name": "counter", "values": [] },
506
+ { "name": "color-mode", "values": [] }
507
+ ],
508
+ "references": []
509
+ },
480
510
  {
481
511
  "name": "br-tag",
482
512
  "description": "\n---\n\n\n### **Events:**\n - **radioSelected** - Evento emitido quando a tag é selecionada.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@govbr-ds/webcomponents",
3
- "version": "2.0.0-next.36",
3
+ "version": "2.0.0-next.37",
4
4
  "description": "Biblioteca de Web Components baseado no GovBR-DS",
5
5
  "keywords": [
6
6
  "design system",