@govbr-ds/webcomponents 2.0.0-next.34 → 2.0.0-next.35

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 (405) 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 +2 -2
  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 +69 -42
  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 +244 -0
  44. package/dist/cjs/br-step-item.cjs.entry.js.map +1 -0
  45. package/dist/cjs/br-step-item.entry.cjs.js.map +1 -0
  46. package/dist/cjs/br-step.cjs.entry.js +282 -0
  47. package/dist/cjs/br-step.cjs.entry.js.map +1 -0
  48. package/dist/cjs/br-step.entry.cjs.js.map +1 -0
  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-tag.cjs.entry.js +3 -3
  53. package/dist/cjs/br-tag.cjs.entry.js.map +1 -1
  54. package/dist/cjs/br-tag.entry.cjs.js.map +1 -1
  55. package/dist/cjs/br-textarea.cjs.entry.js +2 -2
  56. package/dist/cjs/br-textarea.cjs.entry.js.map +1 -1
  57. package/dist/cjs/br-textarea.entry.cjs.js.map +1 -1
  58. package/dist/cjs/br-upload.cjs.entry.js +2 -2
  59. package/dist/cjs/br-upload.cjs.entry.js.map +1 -1
  60. package/dist/cjs/br-upload.entry.cjs.js.map +1 -1
  61. package/dist/cjs/index-C5PKqcRm.js +8 -0
  62. package/dist/cjs/loader.cjs.js +1 -1
  63. package/dist/cjs/webcomponents.cjs.js +1 -1
  64. package/dist/collection/collection-manifest.json +2 -0
  65. package/dist/collection/components/avatar/avatar.css +1 -1
  66. package/dist/collection/components/breadcrumb/breadcrumb.css +1 -1
  67. package/dist/collection/components/button/button.css +1 -1
  68. package/dist/collection/components/checkbox/checkbox.css +1 -1
  69. package/dist/collection/components/checkgroup/checkgroup.css +1 -1
  70. package/dist/collection/components/collapse/collapse.css +1 -1
  71. package/dist/collection/components/divider/divider.css +1 -1
  72. package/dist/collection/components/dropdown/dropdown.css +1 -1
  73. package/dist/collection/components/icon/icon.css +1 -1
  74. package/dist/collection/components/input/input.css +1 -1
  75. package/dist/collection/components/item/item.css +1 -1
  76. package/dist/collection/components/list/list.css +1 -1
  77. package/dist/collection/components/loading/loading.css +1 -1
  78. package/dist/collection/components/message/message.css +1 -1
  79. package/dist/collection/components/radio/radio.css +1 -1
  80. package/dist/collection/components/select/select.css +1 -1
  81. package/dist/collection/components/select/select.js +72 -45
  82. package/dist/collection/components/select/select.js.map +1 -1
  83. package/dist/{webcomponents/p-df5400e2.entry.js → collection/components/step/step.css} +1 -140
  84. package/dist/collection/components/step/step.js +545 -0
  85. package/dist/collection/components/step/step.js.map +1 -0
  86. package/dist/{webcomponents/p-cc4c57d8.entry.js → collection/components/step-item/step-item.css} +1 -144
  87. package/dist/collection/components/step-item/step-item.js +550 -0
  88. package/dist/collection/components/step-item/step-item.js.map +1 -0
  89. package/dist/collection/components/switch/switch.css +1 -1
  90. package/dist/collection/components/switch/switch.js +1 -1
  91. package/dist/collection/components/tag/tag.css +1 -1
  92. package/dist/collection/components/tag/tag.js +2 -2
  93. package/dist/collection/components/textarea/textarea.css +1 -1
  94. package/dist/collection/components/textarea/textarea.js +1 -1
  95. package/dist/collection/components/textarea/textarea.js.map +1 -1
  96. package/dist/collection/components/upload/upload.css +1 -1
  97. package/dist/collection/components/upload/upload.js +1 -1
  98. package/dist/collection/pages/components/select/index.js +18 -0
  99. package/dist/collection/pages/components/step/index.js +33 -0
  100. package/dist/collection/pages/scripts/menu.js +7 -1
  101. package/dist/collection/pages/scripts/pageLoader.js +3 -16
  102. package/dist/components/br-avatar.js +6 -6
  103. package/dist/components/br-breadcrumb.js +5 -5
  104. package/dist/components/br-button.js +1 -1
  105. package/dist/components/br-checkbox.js +3 -3
  106. package/dist/components/br-checkgroup.js +5 -5
  107. package/dist/components/br-collapse.js +2 -2
  108. package/dist/components/br-divider.js +1 -1
  109. package/dist/components/br-dropdown.js +1 -1
  110. package/dist/components/br-icon.js +3 -3
  111. package/dist/components/br-input.js +4 -4
  112. package/dist/components/br-item.js +3 -3
  113. package/dist/components/br-list.js +1 -1
  114. package/dist/components/br-loading.js +4 -4
  115. package/dist/components/br-message.js +3 -3
  116. package/dist/components/br-radio.js +3 -3
  117. package/dist/components/br-select.js +81 -50
  118. package/dist/components/br-select.js.map +1 -1
  119. package/dist/components/br-step-item.d.ts +11 -0
  120. package/dist/components/br-step-item.js +335 -0
  121. package/dist/components/br-step-item.js.map +1 -0
  122. package/dist/components/br-step.d.ts +11 -0
  123. package/dist/components/br-step.js +312 -0
  124. package/dist/components/br-step.js.map +1 -0
  125. package/dist/components/br-switch.js +6 -6
  126. package/dist/components/br-tag.js +14 -14
  127. package/dist/components/br-textarea.js +10 -10
  128. package/dist/components/br-textarea.js.map +1 -1
  129. package/dist/components/br-upload.js +12 -12
  130. package/dist/components/index.d.ts +4 -0
  131. package/dist/components/index.js +4 -0
  132. package/dist/components/p-BUAXx2fX.js +129 -0
  133. package/dist/components/p-C1G4wYL7.js +173 -0
  134. package/dist/components/p-Cf1VoqB7.js +197 -0
  135. package/dist/components/p-D3sFUq_f.js +284 -0
  136. package/dist/components/p-DJC0NAoD.js +153 -0
  137. package/dist/components/p-DlpHRT0g.js +385 -0
  138. package/dist/components/{p-BPq5El3u.js → p-Dne-S1Hl.js} +3 -3
  139. package/dist/esm/br-avatar.entry.js +1 -1
  140. package/dist/esm/br-avatar.entry.js.map +1 -1
  141. package/dist/esm/br-breadcrumb.entry.js +1 -1
  142. package/dist/esm/br-breadcrumb.entry.js.map +1 -1
  143. package/dist/esm/br-button.br-icon.entry.js.map +1 -1
  144. package/dist/esm/br-button_2.entry.js +2 -2
  145. package/dist/esm/br-button_2.entry.js.map +1 -1
  146. package/dist/esm/br-checkbox.entry.js +1 -1
  147. package/dist/esm/br-checkbox.entry.js.map +1 -1
  148. package/dist/esm/br-checkgroup.entry.js +1 -1
  149. package/dist/esm/br-checkgroup.entry.js.map +1 -1
  150. package/dist/esm/br-collapse.entry.js +1 -1
  151. package/dist/esm/br-collapse.entry.js.map +1 -1
  152. package/dist/esm/br-divider.entry.js +1 -1
  153. package/dist/esm/br-divider.entry.js.map +1 -1
  154. package/dist/esm/br-dropdown.entry.js +1 -1
  155. package/dist/esm/br-dropdown.entry.js.map +1 -1
  156. package/dist/esm/br-input.br-radio.entry.js.map +1 -1
  157. package/dist/esm/br-input_2.entry.js +2 -2
  158. package/dist/esm/br-input_2.entry.js.map +1 -1
  159. package/dist/esm/br-item.entry.js +1 -1
  160. package/dist/esm/br-item.entry.js.map +1 -1
  161. package/dist/esm/br-list.entry.js +1 -1
  162. package/dist/esm/br-list.entry.js.map +1 -1
  163. package/dist/esm/br-loading.entry.js +1 -1
  164. package/dist/esm/br-loading.entry.js.map +1 -1
  165. package/dist/esm/br-message.entry.js +1 -1
  166. package/dist/esm/br-message.entry.js.map +1 -1
  167. package/dist/esm/br-select.entry.js +69 -42
  168. package/dist/esm/br-select.entry.js.map +1 -1
  169. package/dist/esm/br-step-item.entry.js +242 -0
  170. package/dist/esm/br-step-item.entry.js.map +1 -0
  171. package/dist/esm/br-step.entry.js +280 -0
  172. package/dist/esm/br-step.entry.js.map +1 -0
  173. package/dist/esm/br-switch.entry.js +2 -2
  174. package/dist/esm/br-switch.entry.js.map +1 -1
  175. package/dist/esm/br-tag.entry.js +3 -3
  176. package/dist/esm/br-tag.entry.js.map +1 -1
  177. package/dist/esm/br-textarea.entry.js +2 -2
  178. package/dist/esm/br-textarea.entry.js.map +1 -1
  179. package/dist/esm/br-upload.entry.js +2 -2
  180. package/dist/esm/br-upload.entry.js.map +1 -1
  181. package/dist/esm/index-CAyrQrUt.js +8 -0
  182. package/dist/esm/loader.js +1 -1
  183. package/dist/esm/webcomponents.js +1 -1
  184. package/dist/esm-es5/br-avatar.entry.js +1 -1
  185. package/dist/esm-es5/br-avatar.entry.js.map +1 -1
  186. package/dist/esm-es5/br-breadcrumb.entry.js +1 -1
  187. package/dist/esm-es5/br-breadcrumb.entry.js.map +1 -1
  188. package/dist/esm-es5/br-button.br-icon.entry.js.map +1 -1
  189. package/dist/esm-es5/br-button_2.entry.js +158 -158
  190. package/dist/esm-es5/br-checkbox.entry.js +1 -1
  191. package/dist/esm-es5/br-checkbox.entry.js.map +1 -1
  192. package/dist/esm-es5/br-checkgroup.entry.js +1 -1
  193. package/dist/esm-es5/br-checkgroup.entry.js.map +1 -1
  194. package/dist/esm-es5/br-collapse.entry.js +1 -1
  195. package/dist/esm-es5/br-collapse.entry.js.map +1 -1
  196. package/dist/esm-es5/br-divider.entry.js +1 -1
  197. package/dist/esm-es5/br-divider.entry.js.map +1 -1
  198. package/dist/esm-es5/br-dropdown.entry.js +1 -1
  199. package/dist/esm-es5/br-dropdown.entry.js.map +1 -1
  200. package/dist/esm-es5/br-input.br-radio.entry.js.map +1 -1
  201. package/dist/esm-es5/br-input_2.entry.js +23 -23
  202. package/dist/esm-es5/br-item.entry.js +1 -1
  203. package/dist/esm-es5/br-item.entry.js.map +1 -1
  204. package/dist/esm-es5/br-list.entry.js +1 -1
  205. package/dist/esm-es5/br-list.entry.js.map +1 -1
  206. package/dist/esm-es5/br-loading.entry.js +1 -1
  207. package/dist/esm-es5/br-loading.entry.js.map +1 -1
  208. package/dist/esm-es5/br-message.entry.js +1 -1
  209. package/dist/esm-es5/br-message.entry.js.map +1 -1
  210. package/dist/esm-es5/br-select.entry.js +120 -69
  211. package/dist/esm-es5/br-select.entry.js.map +1 -1
  212. package/dist/esm-es5/br-step-item.entry.js +419 -0
  213. package/dist/esm-es5/br-step-item.entry.js.map +1 -0
  214. package/dist/esm-es5/br-step.entry.js +431 -0
  215. package/dist/esm-es5/br-step.entry.js.map +1 -0
  216. package/dist/esm-es5/br-switch.entry.js +6 -6
  217. package/dist/esm-es5/br-switch.entry.js.map +1 -1
  218. package/dist/esm-es5/br-tag.entry.js +7 -7
  219. package/dist/esm-es5/br-tag.entry.js.map +1 -1
  220. package/dist/esm-es5/br-textarea.entry.js +10 -10
  221. package/dist/esm-es5/br-textarea.entry.js.map +1 -1
  222. package/dist/esm-es5/br-upload.entry.js +10 -10
  223. package/dist/esm-es5/br-upload.entry.js.map +1 -1
  224. package/dist/esm-es5/index-CAyrQrUt.js +23 -13
  225. package/dist/esm-es5/loader.js +37 -1
  226. package/dist/esm-es5/webcomponents.js +61 -25
  227. package/dist/hydrate/index.js +659 -66
  228. package/dist/hydrate/index.mjs +659 -66
  229. package/dist/types/components/select/select.d.ts +30 -4
  230. package/dist/types/components/step/step.d.ts +103 -0
  231. package/dist/types/components/step-item/step-item.d.ts +102 -0
  232. package/dist/types/components.d.ts +253 -4
  233. package/dist/webcomponents/br-avatar.entry.esm.js.map +1 -1
  234. package/dist/webcomponents/br-breadcrumb.entry.esm.js.map +1 -1
  235. package/dist/webcomponents/br-button.br-icon.entry.esm.js.map +1 -1
  236. package/dist/webcomponents/br-checkbox.entry.esm.js.map +1 -1
  237. package/dist/webcomponents/br-checkgroup.entry.esm.js.map +1 -1
  238. package/dist/webcomponents/br-collapse.entry.esm.js.map +1 -1
  239. package/dist/webcomponents/br-divider.entry.esm.js.map +1 -1
  240. package/dist/webcomponents/br-dropdown.entry.esm.js.map +1 -1
  241. package/dist/webcomponents/br-input.br-radio.entry.esm.js.map +1 -1
  242. package/dist/webcomponents/br-item.entry.esm.js.map +1 -1
  243. package/dist/webcomponents/br-list.entry.esm.js.map +1 -1
  244. package/dist/webcomponents/br-loading.entry.esm.js.map +1 -1
  245. package/dist/webcomponents/br-message.entry.esm.js.map +1 -1
  246. package/dist/webcomponents/br-select.entry.esm.js.map +1 -1
  247. package/dist/webcomponents/br-step-item.entry.esm.js.map +1 -0
  248. package/dist/webcomponents/br-step.entry.esm.js.map +1 -0
  249. package/dist/webcomponents/br-switch.entry.esm.js.map +1 -1
  250. package/dist/webcomponents/br-tag.entry.esm.js.map +1 -1
  251. package/dist/webcomponents/br-textarea.entry.esm.js.map +1 -1
  252. package/dist/webcomponents/br-upload.entry.esm.js.map +1 -1
  253. package/dist/webcomponents/p-019ce02a.entry.js +163 -0
  254. package/dist/webcomponents/p-0e81892b.system.entry.js +280 -0
  255. package/dist/webcomponents/p-121547cd.entry.js +87 -0
  256. package/dist/webcomponents/p-1e63a10d.system.entry.js +293 -0
  257. package/dist/webcomponents/{p-6b505a38.system.entry.js.map → p-1e63a10d.system.entry.js.map} +1 -1
  258. package/dist/webcomponents/p-302f5fbd.system.entry.js +428 -0
  259. package/dist/webcomponents/p-302f5fbd.system.entry.js.map +1 -0
  260. package/dist/webcomponents/p-3221d882.entry.js +281 -0
  261. package/dist/webcomponents/p-3221d882.entry.js.map +1 -0
  262. package/dist/webcomponents/p-32ca900a.entry.js +166 -0
  263. package/dist/webcomponents/{p-6e166dac.entry.js.map → p-32ca900a.entry.js.map} +1 -1
  264. package/dist/webcomponents/p-352c7312.system.entry.js +235 -0
  265. package/dist/webcomponents/p-36194f7c.entry.js +254 -0
  266. package/dist/webcomponents/p-3e073649.system.entry.js +121 -0
  267. package/dist/webcomponents/p-4c3c46ca.entry.js +152 -0
  268. package/dist/webcomponents/p-4c6733a1.system.entry.js +440 -0
  269. package/dist/webcomponents/p-4c6733a1.system.entry.js.map +1 -0
  270. package/dist/webcomponents/p-58a6aab1.system.entry.js +157 -0
  271. package/dist/webcomponents/p-69b18bcc.entry.js +104 -0
  272. package/dist/webcomponents/p-76426a2e.entry.js +144 -0
  273. package/dist/webcomponents/p-79aa414c.system.entry.js +425 -0
  274. package/dist/webcomponents/p-79e747c1.entry.js +168 -0
  275. package/dist/webcomponents/p-7dd4f2a5.system.entry.js +93 -0
  276. package/dist/webcomponents/{p-1dcPc0rI.system.js.map → p-7tDq9qWy.system.js.map} +1 -1
  277. package/dist/webcomponents/p-83f55139.entry.js +148 -0
  278. package/dist/webcomponents/p-84f8edae.entry.js +110 -0
  279. package/dist/webcomponents/p-928b76d0.entry.js +209 -0
  280. package/dist/webcomponents/{p-Ct3ex90V.system.js.map → p-9wCtgwp6.system.js.map} +1 -1
  281. package/dist/webcomponents/{p-thasv5yZ.system.js.map → p-B3wPFyS5.system.js.map} +1 -1
  282. package/dist/webcomponents/{p-BqvdZkL7.system.js.map → p-B9GHNpiJ.system.js.map} +1 -1
  283. package/dist/webcomponents/{p-usq43hTj.system.js.map → p-BXpIEO27.system.js.map} +1 -1
  284. package/dist/webcomponents/{p-D86s8ueb.system.js.map → p-BXsqNLmg.system.js.map} +1 -1
  285. package/dist/webcomponents/p-Bhwl8CRi.system.js +77 -41
  286. package/dist/webcomponents/{p-C_4ySWyP.system.js.map → p-BoK6TcDE.system.js.map} +1 -1
  287. package/dist/webcomponents/p-BwFsTqJ9.system.js.map +1 -0
  288. package/dist/webcomponents/{p-MDfQKKJ3.system.js.map → p-ByHGgMEG.system.js.map} +1 -1
  289. package/dist/webcomponents/p-CD1bwFZi.system.js.map +1 -0
  290. package/dist/webcomponents/{p-wytm5zt0.system.js.map → p-CVHsq8dp.system.js.map} +1 -1
  291. package/dist/webcomponents/{p-B90gByRD.system.js.map → p-CgEwLRss.system.js.map} +1 -1
  292. package/dist/webcomponents/{p-DFVDihQu.system.js.map → p-CgegvyhC.system.js.map} +1 -1
  293. package/dist/webcomponents/{p-BNl1VeC2.system.js.map → p-D5FcCD9L.system.js.map} +1 -1
  294. package/dist/webcomponents/{p-mh9IZoxC.system.js.map → p-DFnGIoqM.system.js.map} +1 -1
  295. package/dist/webcomponents/{p-YAlbMep3.system.js.map → p-DTG-5_9_.system.js.map} +1 -1
  296. package/dist/webcomponents/{p-dwDliNFd.system.js.map → p-K5tFZU2o.system.js.map} +1 -1
  297. package/dist/webcomponents/p-X9v1LZix.system.js.map +1 -0
  298. package/dist/webcomponents/p-a29ef881.system.entry.js +2386 -0
  299. package/dist/webcomponents/p-b3e7180f.system.entry.js +515 -0
  300. package/dist/webcomponents/p-b9b466b2.system.entry.js +116 -0
  301. package/dist/webcomponents/p-ba1c6153.system.entry.js +278 -0
  302. package/dist/webcomponents/p-c0a85892.entry.js +398 -0
  303. package/dist/webcomponents/p-c2f4ab31.entry.js +144 -0
  304. package/dist/webcomponents/p-c422755c.entry.js +388 -0
  305. package/dist/webcomponents/p-c422755c.entry.js.map +1 -0
  306. package/dist/webcomponents/p-cb5ebcb6.system.entry.js +254 -0
  307. package/dist/webcomponents/p-d33ec3ae.entry.js +140 -0
  308. package/dist/webcomponents/p-d36f650d.system.entry.js +155 -0
  309. package/dist/webcomponents/p-d52fbba3.system.entry.js +251 -0
  310. package/dist/webcomponents/p-dbba1627.system.entry.js +282 -0
  311. package/dist/webcomponents/p-ddce5a0b.entry.js +467 -0
  312. package/dist/webcomponents/p-e4e2fd4f.entry.js +257 -0
  313. package/dist/webcomponents/p-eb06a6e1.entry.js +2361 -0
  314. package/dist/webcomponents/p-ee3853d3.system.entry.js +151 -0
  315. package/dist/webcomponents/p-f8262121.system.entry.js +251 -0
  316. package/dist/webcomponents/p-fd191bf0.entry.js +278 -0
  317. package/dist/webcomponents/p-fd191bf0.entry.js.map +1 -0
  318. package/dist/webcomponents/p-fe37ebb6.system.entry.js +575 -0
  319. package/dist/webcomponents/p-fe37ebb6.system.entry.js.map +1 -0
  320. package/dist/webcomponents/{p-BeMhoFbq.system.js.map → p-gTDesSZK.system.js.map} +1 -1
  321. package/dist/webcomponents/{p-Dde15d6z.system.js.map → p-oLikpHRj.system.js.map} +1 -1
  322. package/dist/webcomponents/webcomponents.esm.js +56 -20
  323. package/package.json +1 -1
  324. package/dist/components/p-4n7uz3ik.js +0 -173
  325. package/dist/components/p-B27qgEvJ.js +0 -284
  326. package/dist/components/p-D27CYIFW.js +0 -153
  327. package/dist/components/p-D6xl9W7Q.js +0 -385
  328. package/dist/components/p-DGRJ0cGS.js +0 -197
  329. package/dist/components/p-Dt9PiOfU.js +0 -129
  330. package/dist/webcomponents/p-06f7eeff.system.entry.js +0 -254
  331. package/dist/webcomponents/p-0b4b4c3c.system.entry.js +0 -235
  332. package/dist/webcomponents/p-0baea87b.system.entry.js +0 -157
  333. package/dist/webcomponents/p-15208deb.system.entry.js +0 -282
  334. package/dist/webcomponents/p-24ffcc2b.system.entry.js +0 -524
  335. package/dist/webcomponents/p-24ffcc2b.system.entry.js.map +0 -1
  336. package/dist/webcomponents/p-27378f51.system.entry.js +0 -251
  337. package/dist/webcomponents/p-37837c94.entry.js +0 -144
  338. package/dist/webcomponents/p-3a508420.system.entry.js +0 -425
  339. package/dist/webcomponents/p-3f0965c1.entry.js +0 -168
  340. package/dist/webcomponents/p-4c5b3ba6.entry.js +0 -254
  341. package/dist/webcomponents/p-5417fc76.system.entry.js +0 -121
  342. package/dist/webcomponents/p-55be3a1b.entry.js +0 -87
  343. package/dist/webcomponents/p-58c537dc.system.entry.js +0 -155
  344. package/dist/webcomponents/p-5e68b68a.system.entry.js +0 -515
  345. package/dist/webcomponents/p-64088f4f.entry.js +0 -398
  346. package/dist/webcomponents/p-689dffab.entry.js +0 -257
  347. package/dist/webcomponents/p-6b505a38.system.entry.js +0 -293
  348. package/dist/webcomponents/p-6e166dac.entry.js +0 -166
  349. package/dist/webcomponents/p-703d9fdd.entry.js +0 -209
  350. package/dist/webcomponents/p-70b7a2e1.system.entry.js +0 -93
  351. package/dist/webcomponents/p-817f83ec.entry.js +0 -148
  352. package/dist/webcomponents/p-8326e9aa.entry.js +0 -110
  353. package/dist/webcomponents/p-91c947d6.entry.js +0 -152
  354. package/dist/webcomponents/p-9e243fa3.entry.js +0 -2361
  355. package/dist/webcomponents/p-be24a356.entry.js +0 -357
  356. package/dist/webcomponents/p-be24a356.entry.js.map +0 -1
  357. package/dist/webcomponents/p-c17f8737.entry.js +0 -104
  358. package/dist/webcomponents/p-c50854a2.system.entry.js +0 -151
  359. package/dist/webcomponents/p-c51e88c5.system.entry.js +0 -280
  360. package/dist/webcomponents/p-d335142c.entry.js +0 -467
  361. package/dist/webcomponents/p-da852ece.system.entry.js +0 -278
  362. package/dist/webcomponents/p-daf44e2e.system.entry.js +0 -116
  363. package/dist/webcomponents/p-de7e8ab8.entry.js +0 -163
  364. package/dist/webcomponents/p-fa6f51fa.system.entry.js +0 -251
  365. package/dist/webcomponents/p-fcb2845b.system.entry.js +0 -2386
  366. package/dist/webcomponents/p-s9klvrRa.system.js.map +0 -1
  367. /package/dist/components/{p-Dt9PiOfU.js.map → p-BUAXx2fX.js.map} +0 -0
  368. /package/dist/components/{p-4n7uz3ik.js.map → p-C1G4wYL7.js.map} +0 -0
  369. /package/dist/components/{p-DGRJ0cGS.js.map → p-Cf1VoqB7.js.map} +0 -0
  370. /package/dist/components/{p-B27qgEvJ.js.map → p-D3sFUq_f.js.map} +0 -0
  371. /package/dist/components/{p-D27CYIFW.js.map → p-DJC0NAoD.js.map} +0 -0
  372. /package/dist/components/{p-D6xl9W7Q.js.map → p-DlpHRT0g.js.map} +0 -0
  373. /package/dist/components/{p-BPq5El3u.js.map → p-Dne-S1Hl.js.map} +0 -0
  374. /package/dist/webcomponents/{p-de7e8ab8.entry.js.map → p-019ce02a.entry.js.map} +0 -0
  375. /package/dist/webcomponents/{p-c51e88c5.system.entry.js.map → p-0e81892b.system.entry.js.map} +0 -0
  376. /package/dist/webcomponents/{p-55be3a1b.entry.js.map → p-121547cd.entry.js.map} +0 -0
  377. /package/dist/webcomponents/{p-0b4b4c3c.system.entry.js.map → p-352c7312.system.entry.js.map} +0 -0
  378. /package/dist/webcomponents/{p-4c5b3ba6.entry.js.map → p-36194f7c.entry.js.map} +0 -0
  379. /package/dist/webcomponents/{p-5417fc76.system.entry.js.map → p-3e073649.system.entry.js.map} +0 -0
  380. /package/dist/webcomponents/{p-91c947d6.entry.js.map → p-4c3c46ca.entry.js.map} +0 -0
  381. /package/dist/webcomponents/{p-0baea87b.system.entry.js.map → p-58a6aab1.system.entry.js.map} +0 -0
  382. /package/dist/webcomponents/{p-c17f8737.entry.js.map → p-69b18bcc.entry.js.map} +0 -0
  383. /package/dist/webcomponents/{p-37837c94.entry.js.map → p-76426a2e.entry.js.map} +0 -0
  384. /package/dist/webcomponents/{p-3a508420.system.entry.js.map → p-79aa414c.system.entry.js.map} +0 -0
  385. /package/dist/webcomponents/{p-3f0965c1.entry.js.map → p-79e747c1.entry.js.map} +0 -0
  386. /package/dist/webcomponents/{p-70b7a2e1.system.entry.js.map → p-7dd4f2a5.system.entry.js.map} +0 -0
  387. /package/dist/webcomponents/{p-817f83ec.entry.js.map → p-83f55139.entry.js.map} +0 -0
  388. /package/dist/webcomponents/{p-8326e9aa.entry.js.map → p-84f8edae.entry.js.map} +0 -0
  389. /package/dist/webcomponents/{p-703d9fdd.entry.js.map → p-928b76d0.entry.js.map} +0 -0
  390. /package/dist/webcomponents/{p-fcb2845b.system.entry.js.map → p-a29ef881.system.entry.js.map} +0 -0
  391. /package/dist/webcomponents/{p-5e68b68a.system.entry.js.map → p-b3e7180f.system.entry.js.map} +0 -0
  392. /package/dist/webcomponents/{p-daf44e2e.system.entry.js.map → p-b9b466b2.system.entry.js.map} +0 -0
  393. /package/dist/webcomponents/{p-da852ece.system.entry.js.map → p-ba1c6153.system.entry.js.map} +0 -0
  394. /package/dist/webcomponents/{p-64088f4f.entry.js.map → p-c0a85892.entry.js.map} +0 -0
  395. /package/dist/webcomponents/{p-cc4c57d8.entry.js.map → p-c2f4ab31.entry.js.map} +0 -0
  396. /package/dist/webcomponents/{p-06f7eeff.system.entry.js.map → p-cb5ebcb6.system.entry.js.map} +0 -0
  397. /package/dist/webcomponents/{p-df5400e2.entry.js.map → p-d33ec3ae.entry.js.map} +0 -0
  398. /package/dist/webcomponents/{p-58c537dc.system.entry.js.map → p-d36f650d.system.entry.js.map} +0 -0
  399. /package/dist/webcomponents/{p-27378f51.system.entry.js.map → p-d52fbba3.system.entry.js.map} +0 -0
  400. /package/dist/webcomponents/{p-15208deb.system.entry.js.map → p-dbba1627.system.entry.js.map} +0 -0
  401. /package/dist/webcomponents/{p-d335142c.entry.js.map → p-ddce5a0b.entry.js.map} +0 -0
  402. /package/dist/webcomponents/{p-689dffab.entry.js.map → p-e4e2fd4f.entry.js.map} +0 -0
  403. /package/dist/webcomponents/{p-9e243fa3.entry.js.map → p-eb06a6e1.entry.js.map} +0 -0
  404. /package/dist/webcomponents/{p-c50854a2.system.entry.js.map → p-ee3853d3.system.entry.js.map} +0 -0
  405. /package/dist/webcomponents/{p-fa6f51fa.system.entry.js.map → p-f8262121.system.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"br-breadcrumb.entry.cjs.js","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\n:host(:hover) {\n .tooltip-box {\n opacity: 1;\n }\n}\n\n.br-breadcrumb {\n .br-icon {\n color: #cccccc;\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-color: var(--focus);\n outline-offset: var(--focus-offset);\n outline-style: var(--focus-style);\n outline-width: var(--focus-width);\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// tooltip\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, 0.2);\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","/* 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"],"names":["h","index","Host"],"mappings":";;;;;;;AAAA,MAAM,aAAa,GAAG,iy2EAAiy2E;;MCe1y2E,UAAU,GAAA,MAAA;;;;;AAEF,IAAA,gBAAgB;AAEnC;;;AAGG;AAC+B,IAAA,QAAQ,GAAW,CAAA,cAAA,EAAiB,YAAY,EAAE,EAAE;AAEtF;;;AAGG;IACK,OAAO,GAAW,GAAG;AAE7B;;;AAGG;AACK,IAAA,MAAM;AAEN,IAAA,aAAa,GAAqB;AACxC,QAAA,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE;AACzC,QAAA,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE;AACzC,QAAA,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE;KACxC;AAED;;AAEG;IACM,WAAW,GAAY,KAAK;AAErC;;AAEG;IACM,eAAe,GAA6B,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;AAEnE;;AAEG;IACM,WAAW,GAAW,EAAE;AAEjC;;;AAGG;IACM,aAAa,GAAY,KAAK;AAEvC;;AAEG;IACM,UAAU,GAAY,KAAK;AAEpC;;AAEG;IACM,cAAc,GAAW,CAAC;AAEnC;;AAEG;IACM,UAAU,GAAW,CAAC;AAE/B;;;;AAIG;IACM,YAAY,GAAY,KAAK;AAEtC;;;AAGG;AACK,IAAA,KAAK,CAAC,IAAY,EAAA;QACxB,OAAO,IAAI,CAAC,MAAM,GAAG,wBAAwB,GAAG,CAAA,EAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,wBAAwB,CAAC,KAAK,GAAG,IAAI;;AAGxG;;AAEG;IACK,eAAe,CAAC,KAAiB,EAAE,IAAY,EAAA;AACrD,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAA4B;AACjD,QAAA,IAAI,CAAC,MAAM;YAAE;AAEb,QAAA,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE;QAC3C,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,GAAG,EAAE,EAAE;AAE1E,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,wBAAwB,EAAE;AAC1C,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;AACvB,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;;;AAI3B;;AAEG;IACK,cAAc,GAAA;AACpB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;;AAG1B;;;AAGG;IACK,cAAc,GAAA;QACpB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE;YACtC,OAAO,IAAI,CAAC,aAAa;;AAG3B,QAAA,IAAI;YACF,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM;YACtF,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,aAAa;;AAC/E,QAAA,MAAM;YACN,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,IAAI,CAAC,MAAM,CAAC;YAC7D,OAAO,IAAI,CAAC,aAAa;;;AAI7B;;AAEG;IACK,eAAe,GAAA;QACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO;;AAGrC;;AAEG;IACK,YAAY,GAAA;AAClB,QAAA,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY;;AAGxC;;AAEG;IACK,cAAc,GAAA;QACpB,OAAO;AACL,YAAA,eAAe,EAAE,IAAI;YACrB,KAAK,EAAE,IAAI,CAAC,aAAa;SAC1B;;AAGH;;AAEG;AACK,IAAA,cAAc;AAEtB;;AAEG;AACK,IAAA,mBAAmB,GAAG,CAAC,OAA8B,KAAI;AAC/D,QAAA,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;AAC3B,YAAA,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK;AAC9C,YAAA,IAAI,CAAC,aAAa,GAAG,cAAc,GAAG,GAAG;AACzC,YAAA,IAAI,CAAC,UAAU,GAAG,cAAc;YAChC,IAAI,CAAC,oBAAoB,EAAE;;AAE/B,KAAC;AAED;;AAEG;IACH,iBAAiB,GAAA;AACf,QAAA,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;YACzC,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAClE,IAAI,IAAI,CAAC,EAAE,CAAC,aAAa,KAAK,IAAI,EAAE;gBAClC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;;;;AAKxD;;AAEG;IACH,oBAAoB,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE;AAC/B,YAAA,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE;;;AAIpC;;AAEG;IACK,oBAAoB,GAAA;QAC1B,qBAAqB,CAAC,MAAK;AACzB,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAC,sCAAsC,CAAC;YAC1F,IAAI,KAAK,EAAE;gBACT,IAAI,UAAU,GAAG,CAAC;AAClB,gBAAA,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACrB,oBAAA,UAAU,IAAK,IAAoB,CAAC,qBAAqB,EAAE,CAAC,KAAK;AACnE,iBAAC,CAAC;AACF,gBAAA,IAAI,CAAC,cAAc,GAAG,UAAU;gBAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU;;AAE3D,SAAC,CAAC;;AAGJ;;AAEG;IACH,gBAAgB,GAAA;QACd,IAAI,CAAC,oBAAoB,EAAE;;AAG7B;;AAEG;IACK,gBAAgB,GAAA;AACtB,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,GAAG,wBAAwB,GAAG,uBAAuB;AAChG,QAAA,QACEA,uBACE,EAAE,EAAC,QAAQ,EACX,KAAK,EAAC,QAAQ,EAAA,YAAA,EACF,IAAI,CAAC,aAAa,GAAG,yBAAyB,GAAG,kBAAkB,EAC/E,OAAO,EAAE,IAAI,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,EAAA,EAEtFA,OAAA,CAAA,SAAA,EAAA,EAAA,WAAA,EAAoB,GAAG,IAAI,CAAC,aAAa,GAAG,iBAAiB,GAAG,iBAAiB,CAAA,CAAE,EAAY,CAAA,CACrF;;AAIhB;;AAEG;IACK,oBAAoB,GAAA;QAC1B,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;AAC1C,YAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,GAAG,wBAAwB,GAAG,uBAAuB;YAChG,QACEA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,mBAAmB,EAAA,EAC5BA,OAAA,CAAA,SAAA,EAAA,EAAS,KAAK,EAAC,SAAS,EAAA,WAAA,EAAW,yBAAyB,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAW,CAAA,EAC9FA,OAAA,CAAA,WAAA,EAAA,EACE,EAAE,EAAC,QAAQ,EACX,KAAK,EAAC,QAAQ,EACF,YAAA,EAAA,IAAI,CAAC,YAAY,GAAG,2BAA2B,GAAG,yBAAyB,EACvF,OAAO,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAClC,SAAS,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAA,EAE/CA,OAAA,CAAA,SAAA,EAAA,EAAA,WAAA,EAAoB,iBAAiB,EAAA,CAAY,CACvC,CACR;;AAGV,QAAA,OAAO,IAAI;;AAGb;;AAEG;IACK,qBAAqB,GAAA;AAC3B,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE;QACzC,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,UAAU,IAC1CA,OAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAC,mBAAmB,EAAA,EAC3B,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,QAAQ,IACjDA,OAAA,CAAA,MAAA,EAAA,IAAA,EACEA,OAAA,CAAA,SAAA,EAAA,EAAS,KAAK,EAAC,SAAS,EAAA,WAAA,EAAW,yBAAyB,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAW,CAAA,EAC9FA,OAAA,CAAA,GAAA,EAAA,EACE,EAAE,EAAC,WAAW,EACd,IAAI,EAAE,QAAQ,CAAC,GAAG,IAAI,oBAAoB,EAC1C,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,OAAO,EAClC,WAAW,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,EACnE,UAAU,EAAE,MAAM,IAAI,CAAC,cAAc,EAAE,EAEtC,EAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CACzB,CACC,IACL,IAAI,EACP,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,EACxC,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CACnC,KAEN,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAEC,OAAK,MAC1BD,OACE,CAAA,IAAA,EAAA,EAAA,GAAG,EAAEC,OAAK,EACV,KAAK,EAAE,CAAS,MAAA,EAAA,IAAI,CAAC,IAAI,GAAG,MAAM,GAAG,EAAE,CAAE,CAAA,EAC5B,aAAA,EAAA,IAAI,CAAC,MAAM,GAAG,QAAQ,GAAG,IAAI,gBAC9B,CAAA,OAAA,EAAUA,OAAK,GAAG,CAAC,CAAO,IAAA,EAAA,WAAW,CAAC,MAAM,EAAE,IAEzD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAC7B,CACN,CAAC,CACH;;AAGH;;AAEG;AACK,IAAA,sBAAsB,CAAC,WAA6B,EAAA;AAC1D,QAAA,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC;AAC1D,QAAA,IAAI,CAAC,UAAU;AAAE,YAAA,OAAO,IAAI;QAC5B,QACED,OAAA,CAAA,MAAA,EAAA,EAAM,KAAK,EAAC,oBAAoB,EAAA,EAC9BA,OAAA,CAAA,SAAA,EAAA,EAAS,KAAK,EAAC,SAAS,EAAA,WAAA,EAAW,yBAAyB,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAW,CAAA,EAC9FA,OAAA,CAAA,MAAA,EAAA,EAAA,cAAA,EAAmB,MAAM,EAAA,aAAA,EAAa,QAAQ,EAAC,QAAQ,EAAC,GAAG,EACxD,EAAA,UAAU,CAAC,KAAK,CACZ,CACF;;AAIX;;AAEG;AACK,IAAA,oBAAoB,CAAC,WAA6B,EAAA;AACxD,QAAA,QACEA,OAAA,CAAA,SAAA,EAAA,EAAS,KAAK,EAAE,IAAI,CAAC,YAAY,GAAG,wBAAwB,GAAG,mBAAmB,EAAA,EAC/E,IAAI,CAAC,aAAa,KACjBA,+BAAiB,CAAe,YAAA,EAAA,WAAW,CAAC,MAAM,CAAA,CAAE,EAAA,EAClDA,OAAA,CAAA,SAAA,EAAA,IAAA,EACEA,OAAG,CAAA,GAAA,EAAA,EAAA,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAC,OAAO,EAAA,EAAA,qBAAA,CAEjC,CACI,EACVA,OAAA,CAAA,MAAA,EAAA,EAAM,KAAK,EAAC,YAAY,EAAA,CAAQ,CAC5B,CACP,EACA,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAEC,OAAK,KAAI;AAC/B,YAAA,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,aAAa,IAAIA,OAAK,KAAK,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;AAC9E,gBAAA,OAAO,IAAI;;YAEb,QACE,CAAC,IAAI,CAAC,MAAM,KACVD,OACE,CAAA,KAAA,EAAA,EAAA,GAAG,EAAEC,OAAK,EAAA,YAAA,EAER,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC;sBACrB,CAAU,OAAA,EAAAA,OAAK,GAAG,CAAC,CAAO,IAAA,EAAA,WAAW,CAAC,MAAM,GAAG,CAAC,CAAE;sBAClD,UAAUA,OAAK,GAAG,CAAC,CAAO,IAAA,EAAA,WAAW,CAAC,MAAM,CAAE,CAAA,EAAA,EAGpDD,OAAA,CAAA,SAAA,EAAA,IAAA,EACEA,OAAA,CAAA,GAAA,EAAA,EACE,EAAE,EAAEC,OAAK,IAAI,CAAC,GAAG,kBAAkB,GAAG,EAAE,EACxC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,oBAAoB,EACtC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,OAAO,EAC9B,WAAW,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAC/D,UAAU,EAAE,MAAM,IAAI,CAAC,cAAc,EAAE,EACvC,SAAS,EACPA,OAAK,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC;AAC/E,sBAAE,CAAC,KAAK,KAAI;AACR,wBAAA,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE;AACvB,4BAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;4BAC5B,IAAI,CAAC,YAAY,EAAE;;;AAGzB,sBAAE,IAAI,EAGT,EAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CACrB,CACI,EACVD,OAAA,CAAA,MAAA,EAAA,EAAM,KAAK,EAAC,YAAY,GAAQ,CAC5B,CACP;SAEJ,CAAC,CACM;;AAId;;AAEG;AACK,IAAA,oBAAoB,CAAC,IAAoB,EAAA;AAC/C,QAAA,OAAO,IAAI,CAAC,MAAM,IAChBA,OAAA,CAAA,MAAA,EAAA,IAAA,EACEA,OAAA,CAAA,SAAA,EAAA,EAAS,KAAK,EAAC,SAAS,EAAA,WAAA,EAAW,yBAAyB,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAW,CAAA,EAC9FA,OAAA,CAAA,MAAA,EAAA,EAAA,cAAA,EAAmB,MAAM,EAAC,QAAQ,EAAC,GAAG,EACnC,EAAA,IAAI,CAAC,KAAK,CACN,CACF,KAEPA,OAAA,CAAA,MAAA,EAAA,IAAA,EACEA,OAAA,CAAA,SAAA,EAAA,EAAS,KAAK,EAAC,SAAS,EAAA,WAAA,EAAW,yBAAyB,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAW,CAAA,EAC9FA,OACE,CAAA,GAAA,EAAA,EAAA,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,oBAAoB,EACtC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,OAAO,EAC9B,WAAW,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAC/D,UAAU,EAAE,MAAM,IAAI,CAAC,cAAc,EAAE,EAEtC,EAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CACrB,CACC,CACR;;AAGH;;AAEG;IACK,aAAa,GAAA;QACnB,IAAI,CAAC,IAAI,CAAC,WAAW;AAAE,YAAA,OAAO,IAAI;AAClC,QAAA,QACEA,OAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,aAAa,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAG,EAAA,IAAI,CAAC,eAAe,CAAC,CAAC,CAAA,EAAA,CAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAI,EAAA,CAAA,EAAE,IACxG,IAAI,CAAC,WAAW,CACb;;AAIV;;;AAGG;AACK,IAAA,aAAa,CAAC,KAAoB,EAAA;AACxC,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE;AACvB,YAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;gBAC/D,UAAU,CAAC,MAAK;AACd,oBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,kBAAkB,CAAC;oBACtE,IAAI,OAAO,EAAE;wBACX,OAAO,CAAC,KAAK,EAAE;;AAEnB,iBAAC,EAAE,CAAC,CAAC,CAAA;;;;AAKX;;AAEG;AACK,IAAA,gBAAgB,CAAC,KAAoB,EAAA;AAC3C,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE;AACvB,YAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;gBAC/D,UAAU,CAAC,MAAK;AACd,oBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,WAAW,CAAC;oBAC/D,IAAI,OAAO,EAAE;wBACX,OAAO,CAAC,KAAK,EAAE;;iBAElB,EAAE,CAAC,CAAC;;;;IAKX,MAAM,GAAA;AACJ,QAAA,QACEA,QAACE,UAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACHF,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,gBAAa,aAAa,EAAA,EACzDA,OAAI,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACnB,IAAI,CAAC,gBAAgB,EAAE,EACvB,IAAI,CAAC,oBAAoB,EAAE,EAC3B,IAAI,CAAC,qBAAqB,EAAE,CAC1B,CACD,EACL,IAAI,CAAC,aAAa,EAAE,CAChB;;;AAKb;;AAEG;AACH,IAAI,YAAY,GAAG,CAAC;AAEpB;;AAEG;AACH,MAAM,wBAAwB,GAAG,EAAE;;;;;"}
1
+ {"version":3,"file":"br-breadcrumb.entry.cjs.js","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\n:host(:hover) {\n .tooltip-box {\n opacity: 1;\n }\n}\n\n.br-breadcrumb {\n .br-icon {\n color: #cccccc;\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-color: var(--focus);\n outline-offset: var(--focus-offset);\n outline-style: var(--focus-style);\n outline-width: var(--focus-width);\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// tooltip\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, 0.2);\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","/* 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"],"names":["h","index","Host"],"mappings":"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"}