@govbr-ds/webcomponents 2.0.0-next.61 → 2.0.0-next.63

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 (277) hide show
  1. package/dist/cjs/br-checkbox.br-input.br-radio.entry.cjs.js.map +1 -1
  2. package/dist/cjs/br-checkbox_3.cjs.entry.js +17 -28
  3. package/dist/cjs/br-collapse.br-list.entry.cjs.js.map +1 -1
  4. package/dist/cjs/br-collapse_2.cjs.entry.js +10 -15
  5. package/dist/cjs/br-datetime-picker.cjs.entry.js +18 -31
  6. package/dist/cjs/br-datetime-picker.entry.cjs.js.map +1 -1
  7. package/dist/cjs/br-dropdown.br-select.entry.cjs.js.map +1 -1
  8. package/dist/cjs/br-dropdown_2.cjs.entry.js +73 -56
  9. package/dist/cjs/br-header-list.cjs.entry.js +6 -13
  10. package/dist/cjs/br-header-list.entry.cjs.js.map +1 -1
  11. package/dist/cjs/br-header.cjs.entry.js +2 -5
  12. package/dist/cjs/br-header.entry.cjs.js.map +1 -1
  13. package/dist/cjs/br-item.cjs.entry.js +3 -6
  14. package/dist/cjs/br-item.entry.cjs.js.map +1 -1
  15. package/dist/cjs/br-message.cjs.entry.js +13 -16
  16. package/dist/cjs/br-message.entry.cjs.js.map +1 -1
  17. package/dist/cjs/br-modal.cjs.entry.js +123 -24
  18. package/dist/cjs/br-modal.entry.cjs.js.map +1 -1
  19. package/dist/cjs/br-scrim.cjs.entry.js +108 -25
  20. package/dist/cjs/br-scrim.entry.cjs.js.map +1 -1
  21. package/dist/cjs/br-skip-link.cjs.entry.js +24 -29
  22. package/dist/cjs/br-skip-link.entry.cjs.js.map +1 -1
  23. package/dist/cjs/br-skiplink-item.cjs.entry.js +32 -37
  24. package/dist/cjs/br-skiplink-item.entry.cjs.js.map +1 -1
  25. package/dist/cjs/br-step.br-step-item.entry.cjs.js.map +1 -1
  26. package/dist/cjs/br-step_2.cjs.entry.js +33 -56
  27. package/dist/cjs/br-switch.cjs.entry.js +3 -6
  28. package/dist/cjs/br-switch.entry.cjs.js.map +1 -1
  29. package/dist/cjs/br-textarea.cjs.entry.js +5 -8
  30. package/dist/cjs/br-textarea.entry.cjs.js.map +1 -1
  31. package/dist/cjs/br-tooltip.cjs.entry.js +1 -2
  32. package/dist/cjs/br-tooltip.entry.cjs.js.map +1 -1
  33. package/dist/cjs/br-wizard-panel.cjs.entry.js +6 -13
  34. package/dist/cjs/br-wizard-panel.entry.cjs.js.map +1 -1
  35. package/dist/cjs/br-wizard.cjs.entry.js +147 -182
  36. package/dist/cjs/br-wizard.entry.cjs.js.map +1 -1
  37. package/dist/cjs/{floating-ui-D_WzFT9x.js → floating-ui-CkTJEp-y.js} +11 -15
  38. package/dist/{esm/floating-ui-DBIzWbO2.js.map → cjs/floating-ui-CkTJEp-y.js.map} +1 -1
  39. package/dist/cjs/loader.cjs.js +1 -1
  40. package/dist/cjs/webcomponents.cjs.js +1 -1
  41. package/dist/collection/components/checkbox/checkbox.js +9 -16
  42. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  43. package/dist/collection/components/collapse/collapse.js +10 -15
  44. package/dist/collection/components/collapse/collapse.js.map +1 -1
  45. package/dist/collection/components/datetime-picker/datetime-picker.js +18 -31
  46. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
  47. package/dist/collection/components/dropdown/dropdown.js +13 -20
  48. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  49. package/dist/collection/components/header/header-list/header-list.js +6 -13
  50. package/dist/collection/components/header/header-list/header-list.js.map +1 -1
  51. package/dist/collection/components/header/header.js +2 -5
  52. package/dist/collection/components/header/header.js.map +1 -1
  53. package/dist/collection/components/item/item.js +3 -6
  54. package/dist/collection/components/item/item.js.map +1 -1
  55. package/dist/collection/components/message/message.js +13 -16
  56. package/dist/collection/components/message/message.js.map +1 -1
  57. package/dist/collection/components/modal/modal.js +156 -46
  58. package/dist/collection/components/modal/modal.js.map +1 -1
  59. package/dist/collection/components/radio/radio.js +8 -13
  60. package/dist/collection/components/radio/radio.js.map +1 -1
  61. package/dist/collection/components/scrim/scrim.js +108 -25
  62. package/dist/collection/components/scrim/scrim.js.map +1 -1
  63. package/dist/collection/components/select/select.js +79 -36
  64. package/dist/collection/components/select/select.js.map +1 -1
  65. package/dist/collection/components/skip-link/skip-link-item/skip-link-item.js +32 -37
  66. package/dist/collection/components/skip-link/skip-link-item/skip-link-item.js.map +1 -1
  67. package/dist/collection/components/skip-link/skip-link.js +24 -29
  68. package/dist/collection/components/skip-link/skip-link.js.map +1 -1
  69. package/dist/collection/components/step/step-item/step-item.js +13 -26
  70. package/dist/collection/components/step/step-item/step-item.js.map +1 -1
  71. package/dist/collection/components/step/step.js +20 -31
  72. package/dist/collection/components/step/step.js.map +1 -1
  73. package/dist/collection/components/switch/switch.js +3 -6
  74. package/dist/collection/components/switch/switch.js.map +1 -1
  75. package/dist/collection/components/textarea/textarea.js +5 -8
  76. package/dist/collection/components/textarea/textarea.js.map +1 -1
  77. package/dist/collection/components/wizard/wizard-panel/wizard-panel.js +6 -13
  78. package/dist/collection/components/wizard/wizard-panel/wizard-panel.js.map +1 -1
  79. package/dist/collection/components/wizard/wizard.js +147 -182
  80. package/dist/collection/components/wizard/wizard.js.map +1 -1
  81. package/dist/collection/pages/components/modal/index.js +1 -53
  82. package/dist/collection/utils/floating-ui.js +9 -12
  83. package/dist/collection/utils/floating-ui.js.map +1 -1
  84. package/dist/components/br-breadcrumb.js +3 -3
  85. package/dist/components/br-checkbox.js +4 -4
  86. package/dist/components/br-checkgroup.js +1 -1
  87. package/dist/components/br-collapse.js +4 -4
  88. package/dist/components/br-datetime-picker.js +1981 -1995
  89. package/dist/components/br-datetime-picker.js.map +1 -1
  90. package/dist/components/br-dropdown.js +1 -1
  91. package/dist/components/br-footer-category.js +3 -3
  92. package/dist/components/br-footer-item.js +1 -1
  93. package/dist/components/br-header-function.js +1 -1
  94. package/dist/components/br-header-link.js +1 -1
  95. package/dist/components/br-header-list.js +31 -39
  96. package/dist/components/br-header-list.js.map +1 -1
  97. package/dist/components/br-header.js +63 -67
  98. package/dist/components/br-header.js.map +1 -1
  99. package/dist/components/br-item.js +1 -1
  100. package/dist/components/br-list.js +3 -3
  101. package/dist/components/br-message.js +28 -32
  102. package/dist/components/br-message.js.map +1 -1
  103. package/dist/components/br-modal.js +140 -49
  104. package/dist/components/br-modal.js.map +1 -1
  105. package/dist/components/br-pagination.js +7 -7
  106. package/dist/components/br-radio.js +1 -1
  107. package/dist/components/br-scrim.js +112 -43
  108. package/dist/components/br-scrim.js.map +1 -1
  109. package/dist/components/br-select.js +3 -3
  110. package/dist/components/br-skip-link.js +38 -44
  111. package/dist/components/br-skip-link.js.map +1 -1
  112. package/dist/components/br-skiplink-item.js +55 -61
  113. package/dist/components/br-skiplink-item.js.map +1 -1
  114. package/dist/components/br-step-item.js +4 -4
  115. package/dist/components/br-step.js +4 -4
  116. package/dist/components/br-switch.js +12 -16
  117. package/dist/components/br-switch.js.map +1 -1
  118. package/dist/components/br-textarea.js +14 -18
  119. package/dist/components/br-textarea.js.map +1 -1
  120. package/dist/components/br-tooltip.js +1 -1
  121. package/dist/components/br-wizard-panel.js +13 -21
  122. package/dist/components/br-wizard-panel.js.map +1 -1
  123. package/dist/components/br-wizard.js +190 -228
  124. package/dist/components/br-wizard.js.map +1 -1
  125. package/dist/components/{p-Cc75U9ZX.js → p-B_YesJM8.js} +26 -34
  126. package/dist/components/{p-Cc75U9ZX.js.map → p-B_YesJM8.js.map} +1 -1
  127. package/dist/components/{p-xFn46pdm.js → p-Bc03PTAW.js} +27 -39
  128. package/dist/components/{p-xFn46pdm.js.map → p-Bc03PTAW.js.map} +1 -1
  129. package/dist/components/{p-DzKEfDGA.js → p-Bri6ECVa.js} +27 -33
  130. package/dist/components/{p-DzKEfDGA.js.map → p-Bri6ECVa.js.map} +1 -1
  131. package/dist/components/{p-BZ8BetvD.js → p-CJSXIVVe.js} +17 -23
  132. package/dist/components/{p-BZ8BetvD.js.map → p-CJSXIVVe.js.map} +1 -1
  133. package/dist/components/{p-D9c7NikS.js → p-CWRBs6PD.js} +24 -38
  134. package/dist/components/{p-D9c7NikS.js.map → p-CWRBs6PD.js.map} +1 -1
  135. package/dist/components/{p-D0dPo1K5.js → p-CwtLw60M.js} +12 -16
  136. package/dist/components/{p-D0dPo1K5.js.map → p-CwtLw60M.js.map} +1 -1
  137. package/dist/components/{p-z1PVVVFI.js → p-DW63EY0U.js} +27 -35
  138. package/dist/components/{p-z1PVVVFI.js.map → p-DW63EY0U.js.map} +1 -1
  139. package/dist/components/{p-7kxAU6Gr.js → p-DdjKNpU3.js} +92 -72
  140. package/dist/components/p-DdjKNpU3.js.map +1 -0
  141. package/dist/{webcomponents/p-B4au_byv.js → components/p-k0WZfTfL.js} +121 -124
  142. package/dist/components/{p-B4au_byv.js.map → p-k0WZfTfL.js.map} +1 -1
  143. package/dist/components/{p-OKkBxn1z.js → p-lIb35q2K.js} +3 -3
  144. package/dist/custom-elements.json +1613 -430
  145. package/dist/esm/br-checkbox.br-input.br-radio.entry.js.map +1 -1
  146. package/dist/esm/br-checkbox_3.entry.js +17 -28
  147. package/dist/esm/br-collapse.br-list.entry.js.map +1 -1
  148. package/dist/esm/br-collapse_2.entry.js +10 -15
  149. package/dist/esm/br-datetime-picker.entry.js +18 -31
  150. package/dist/esm/br-datetime-picker.entry.js.map +1 -1
  151. package/dist/esm/br-dropdown.br-select.entry.js.map +1 -1
  152. package/dist/esm/br-dropdown_2.entry.js +73 -56
  153. package/dist/esm/br-header-list.entry.js +6 -13
  154. package/dist/esm/br-header-list.entry.js.map +1 -1
  155. package/dist/esm/br-header.entry.js +2 -5
  156. package/dist/esm/br-header.entry.js.map +1 -1
  157. package/dist/esm/br-item.entry.js +3 -6
  158. package/dist/esm/br-item.entry.js.map +1 -1
  159. package/dist/esm/br-message.entry.js +13 -16
  160. package/dist/esm/br-message.entry.js.map +1 -1
  161. package/dist/esm/br-modal.entry.js +123 -24
  162. package/dist/esm/br-modal.entry.js.map +1 -1
  163. package/dist/esm/br-scrim.entry.js +108 -25
  164. package/dist/esm/br-scrim.entry.js.map +1 -1
  165. package/dist/esm/br-skip-link.entry.js +24 -29
  166. package/dist/esm/br-skip-link.entry.js.map +1 -1
  167. package/dist/esm/br-skiplink-item.entry.js +32 -37
  168. package/dist/esm/br-skiplink-item.entry.js.map +1 -1
  169. package/dist/esm/br-step.br-step-item.entry.js.map +1 -1
  170. package/dist/esm/br-step_2.entry.js +33 -56
  171. package/dist/esm/br-switch.entry.js +3 -6
  172. package/dist/esm/br-switch.entry.js.map +1 -1
  173. package/dist/esm/br-textarea.entry.js +5 -8
  174. package/dist/esm/br-textarea.entry.js.map +1 -1
  175. package/dist/esm/br-tooltip.entry.js +1 -2
  176. package/dist/esm/br-tooltip.entry.js.map +1 -1
  177. package/dist/esm/br-wizard-panel.entry.js +6 -13
  178. package/dist/esm/br-wizard-panel.entry.js.map +1 -1
  179. package/dist/esm/br-wizard.entry.js +147 -182
  180. package/dist/esm/br-wizard.entry.js.map +1 -1
  181. package/dist/esm/{floating-ui-DBIzWbO2.js → floating-ui-k0WZfTfL.js} +11 -15
  182. package/dist/{cjs/floating-ui-D_WzFT9x.js.map → esm/floating-ui-k0WZfTfL.js.map} +1 -1
  183. package/dist/esm/loader.js +1 -1
  184. package/dist/esm/webcomponents.js +1 -1
  185. package/dist/hydrate/index.js +634 -578
  186. package/dist/hydrate/index.mjs +634 -578
  187. package/dist/types/components/modal/modal.d.ts +46 -4
  188. package/dist/types/components/scrim/scrim.d.ts +39 -1
  189. package/dist/types/components/select/select.d.ts +5 -0
  190. package/dist/types/components.d.ts +21 -11
  191. package/dist/webcomponents/br-checkbox.br-input.br-radio.entry.esm.js.map +1 -1
  192. package/dist/webcomponents/br-collapse.br-list.entry.esm.js.map +1 -1
  193. package/dist/webcomponents/br-datetime-picker.entry.esm.js.map +1 -1
  194. package/dist/webcomponents/br-dropdown.br-select.entry.esm.js.map +1 -1
  195. package/dist/webcomponents/br-header-list.entry.esm.js.map +1 -1
  196. package/dist/webcomponents/br-header.entry.esm.js.map +1 -1
  197. package/dist/webcomponents/br-item.entry.esm.js.map +1 -1
  198. package/dist/webcomponents/br-message.entry.esm.js.map +1 -1
  199. package/dist/webcomponents/br-modal.entry.esm.js.map +1 -1
  200. package/dist/webcomponents/br-scrim.entry.esm.js.map +1 -1
  201. package/dist/webcomponents/br-skip-link.entry.esm.js.map +1 -1
  202. package/dist/webcomponents/br-skiplink-item.entry.esm.js.map +1 -1
  203. package/dist/webcomponents/br-step.br-step-item.entry.esm.js.map +1 -1
  204. package/dist/webcomponents/br-switch.entry.esm.js.map +1 -1
  205. package/dist/webcomponents/br-textarea.entry.esm.js.map +1 -1
  206. package/dist/webcomponents/br-tooltip.entry.esm.js.map +1 -1
  207. package/dist/webcomponents/br-wizard-panel.entry.esm.js.map +1 -1
  208. package/dist/webcomponents/br-wizard.entry.esm.js.map +1 -1
  209. package/dist/webcomponents/{p-2fe329d6.entry.js → p-10e25a32.entry.js} +28 -34
  210. package/dist/webcomponents/p-10e25a32.entry.js.map +1 -0
  211. package/dist/webcomponents/{p-097912c2.entry.js → p-1991135d.entry.js} +30 -36
  212. package/dist/webcomponents/p-1991135d.entry.js.map +1 -0
  213. package/dist/webcomponents/{p-61e5421b.entry.js → p-27eb10f9.entry.js} +57 -61
  214. package/dist/webcomponents/p-27eb10f9.entry.js.map +1 -0
  215. package/dist/webcomponents/{p-5070161f.entry.js → p-30af66b3.entry.js} +45 -51
  216. package/dist/webcomponents/p-30af66b3.entry.js.map +1 -0
  217. package/dist/webcomponents/{p-9464b692.entry.js → p-336071a5.entry.js} +2 -4
  218. package/dist/webcomponents/p-336071a5.entry.js.map +1 -0
  219. package/dist/webcomponents/{p-8a034433.entry.js → p-462c5647.entry.js} +20 -24
  220. package/dist/webcomponents/p-462c5647.entry.js.map +1 -0
  221. package/dist/webcomponents/{p-d674cee3.entry.js → p-46dfc3ee.entry.js} +12 -16
  222. package/dist/webcomponents/p-46dfc3ee.entry.js.map +1 -0
  223. package/dist/webcomponents/{p-821b896c.entry.js → p-56aabe89.entry.js} +36 -44
  224. package/dist/webcomponents/p-56aabe89.entry.js.map +1 -0
  225. package/dist/webcomponents/{p-a615baaa.entry.js → p-5710a3e9.entry.js} +41 -65
  226. package/dist/webcomponents/p-5710a3e9.entry.js.map +1 -0
  227. package/dist/webcomponents/{p-1799a082.entry.js → p-6a9d2a0b.entry.js} +1996 -2010
  228. package/dist/webcomponents/p-6a9d2a0b.entry.js.map +1 -0
  229. package/dist/webcomponents/{p-8ad1f003.entry.js → p-83001853.entry.js} +175 -213
  230. package/dist/webcomponents/p-83001853.entry.js.map +1 -0
  231. package/dist/webcomponents/{p-28dba962.entry.js → p-90401ecd.entry.js} +124 -34
  232. package/dist/webcomponents/p-90401ecd.entry.js.map +1 -0
  233. package/dist/webcomponents/{p-e7b38c63.entry.js → p-a2eec4fb.entry.js} +112 -43
  234. package/dist/webcomponents/p-a2eec4fb.entry.js.map +1 -0
  235. package/dist/webcomponents/{p-d6475852.entry.js → p-c1b0a116.entry.js} +11 -19
  236. package/dist/webcomponents/p-c1b0a116.entry.js.map +1 -0
  237. package/dist/webcomponents/{p-c90a089a.entry.js → p-ca2d95f7.entry.js} +96 -83
  238. package/dist/webcomponents/p-ca2d95f7.entry.js.map +1 -0
  239. package/dist/webcomponents/{p-7ff6698f.entry.js → p-cfa86a23.entry.js} +10 -14
  240. package/dist/webcomponents/p-cfa86a23.entry.js.map +1 -0
  241. package/dist/webcomponents/{p-abc0ecbe.entry.js → p-e5875d3d.entry.js} +10 -14
  242. package/dist/webcomponents/p-e5875d3d.entry.js.map +1 -0
  243. package/dist/webcomponents/{p-0bfb0edf.entry.js → p-f2ea0d7e.entry.js} +133 -145
  244. package/dist/webcomponents/p-f2ea0d7e.entry.js.map +1 -0
  245. package/dist/{components/p-B4au_byv.js → webcomponents/p-k0WZfTfL.js} +121 -124
  246. package/dist/webcomponents/{p-B4au_byv.js.map → p-k0WZfTfL.js.map} +1 -1
  247. package/dist/webcomponents/webcomponents.esm.js +1 -1
  248. package/dist/webcomponents.html-custom-data.json +1708 -349
  249. package/package.json +1 -1
  250. package/dist/cjs/tslib.es6-CF44W9Bn.js +0 -42
  251. package/dist/cjs/tslib.es6-CF44W9Bn.js.map +0 -1
  252. package/dist/components/p-7kxAU6Gr.js.map +0 -1
  253. package/dist/components/p-DIPMDb5E.js +0 -55
  254. package/dist/components/p-DIPMDb5E.js.map +0 -1
  255. package/dist/esm/tslib.es6-DIPMDb5E.js +0 -40
  256. package/dist/esm/tslib.es6-DIPMDb5E.js.map +0 -1
  257. package/dist/webcomponents/p-097912c2.entry.js.map +0 -1
  258. package/dist/webcomponents/p-0bfb0edf.entry.js.map +0 -1
  259. package/dist/webcomponents/p-1799a082.entry.js.map +0 -1
  260. package/dist/webcomponents/p-28dba962.entry.js.map +0 -1
  261. package/dist/webcomponents/p-2fe329d6.entry.js.map +0 -1
  262. package/dist/webcomponents/p-5070161f.entry.js.map +0 -1
  263. package/dist/webcomponents/p-61e5421b.entry.js.map +0 -1
  264. package/dist/webcomponents/p-7ff6698f.entry.js.map +0 -1
  265. package/dist/webcomponents/p-821b896c.entry.js.map +0 -1
  266. package/dist/webcomponents/p-8a034433.entry.js.map +0 -1
  267. package/dist/webcomponents/p-8ad1f003.entry.js.map +0 -1
  268. package/dist/webcomponents/p-9464b692.entry.js.map +0 -1
  269. package/dist/webcomponents/p-DIPMDb5E.js +0 -55
  270. package/dist/webcomponents/p-DIPMDb5E.js.map +0 -1
  271. package/dist/webcomponents/p-a615baaa.entry.js.map +0 -1
  272. package/dist/webcomponents/p-abc0ecbe.entry.js.map +0 -1
  273. package/dist/webcomponents/p-c90a089a.entry.js.map +0 -1
  274. package/dist/webcomponents/p-d6475852.entry.js.map +0 -1
  275. package/dist/webcomponents/p-d674cee3.entry.js.map +0 -1
  276. package/dist/webcomponents/p-e7b38c63.entry.js.map +0 -1
  277. /package/dist/components/{p-OKkBxn1z.js.map → p-lIb35q2K.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"br-tooltip.entry.cjs.js","sources":["../../packages/webcomponents/src/components/tooltip/tooltip.scss?tag=br-tooltip&encapsulation=shadow","../../packages/webcomponents/src/components/tooltip/tooltip.tsx"],"sourcesContent":[":host {\n display: inline-block;\n position: relative;\n}\n\n.br-tooltip {\n .content {\n display: none;\n border-radius: 4px;\n box-shadow: var(--surface-offset-xl) var(--surface-offset-xl) var(--surface-offset-xl) rgb(0 0 0 / 16%);\n color: var(--pure-0);\n font-size: var(--font-size-scale-down-01);\n font-weight: var(--font-weight-regular);\n width: max-content;\n position: absolute;\n left: 0;\n top: 0;\n text-align: center;\n z-index: 4;\n\n &.small {\n padding: var(--spacing-scale-base) var(--spacing-scale-base);\n }\n\n &.medium {\n padding: var(--spacing-scale-baseh) var(--spacing-scale-baseh);\n }\n\n &.large {\n padding: var(--spacing-scale-2x) var(--spacing-scale-2x);\n }\n\n &.is-visible {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n &.popover {\n br-button {\n align-self: flex-start;\n margin-left: var(--spacing-scale-half);\n }\n }\n\n &:focus-visible {\n outline: var(--focus) var(--focus-style) var(--focus-width);\n outline-offset: var(--focus-offset);\n }\n }\n\n .arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n transform: rotate(45deg);\n }\n\n .content,\n .arrow {\n &.info {\n background-color: var(--blue-warm-vivid-60);\n\n br-button::part(button) {\n color: var(--pure-0);\n }\n\n br-button::part(button):hover {\n background: linear-gradient(rgb(var(--pure-0-rgb), var(--hover)), rgb(var(--pure-0-rgb), var(--hover)));\n }\n }\n\n &.warning {\n background-color: var(--yellow-vivid-20);\n color: var(--gray-80);\n\n br-button::part(button) {\n color: var(--gray-80);\n }\n\n br-button::part(button):hover {\n background: linear-gradient(rgb(var(--gray-80-rgb), var(--hover)), rgb(var(--gray-80-rgb), var(--hover)));\n }\n }\n\n &.error {\n background-color: var(--red-vivid-50);\n\n br-button::part(button) {\n color: var(--pure-0);\n }\n\n br-button::part(button):hover {\n background: linear-gradient(rgb(var(--pure-0-rgb), var(--hover)), rgb(var(--pure-0-rgb), var(--hover)));\n }\n }\n\n &.success {\n background-color: var(--green-cool-vivid-50);\n\n br-button::part(button) {\n color: var(--pure-0);\n }\n\n br-button::part(button):hover {\n background: linear-gradient(rgb(var(--pure-0-rgb), var(--hover)), rgb(var(--pure-0-rgb), var(--hover)));\n }\n }\n }\n\n .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n }\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\n\nimport { FloatingUIManager } from '../../utils/floating-ui'\nimport Helpers from '../../utils/helpers'\nimport { CssClassMap } from '../../utils/interfaces'\n\ntype TooltipPosition = 'top' | 'bottom' | 'left' | 'right'\ntype TooltipType = 'standard' | 'popover'\ntype TooltipDensity = 'large' | 'medium' | 'small'\ntype TooltipState = 'info' | 'warning' | 'error' | 'success'\n\n/**\n * ## Design System\n *\n * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/tooltip?tab=designer).\n *\n * @slot trigger - Slot para o elemento que aciona a exibição do tooltip.\n * @slot content - Slot para o conteúdo exibido no tooltip.\n */\n@Component({\n tag: 'br-tooltip',\n styleUrl: 'tooltip.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Tooltip {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrTooltipElement\n\n /**\n * Referência ao elemento Internals do componente.\n * O elemento Internals fornece uma interface para acessar e manipular o estado interno do componente.\n * Isso é útil para componentes que precisam se integrar com o sistema de formulários nativo do navegador.\n */\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único do tooltip; gerado automaticamente quando omitido.\n */\n @Prop({ reflect: true }) customId: string = Helpers.generateUniqueId()\n\n /**\n * Posição do tooltip em relação ao acionador.\n */\n @Prop({ reflect: true }) position: TooltipPosition = 'top'\n\n /**\n * Tipo do tooltip: 'standard' (simples) ou 'popover' (mais rico, com fechamento por interação).\n */\n @Prop({ reflect: true }) type: TooltipType = 'standard'\n\n /**\n * Densidade do tooltip: controla compacidade do conteúdo.\n */\n @Prop({ reflect: true }) density: TooltipDensity = 'medium'\n\n /**\n * Estado visual do tooltip: 'info', 'warning', 'error' ou 'success'.\n */\n @Prop({ reflect: true }) state: TooltipState = 'info'\n\n /**\n * Exibe automaticamente sem interação quando true; caso contrário, depende do acionador.\n */\n @Prop({ reflect: true }) isAutoVisible: boolean = false\n\n /**\n * Atraso em milissegundos antes de exibir.\n */\n @Prop({ reflect: true }) showDelay: number = null\n\n /**\n * Atraso em milissegundos antes de ocultar.\n */\n @Prop({ reflect: true }) hideDelay: number = null\n\n /**\n * Estado interno de visibilidade do tooltip.\n */\n @State() isVisible: boolean = false\n\n /**\n * Indica se o conteúdo do trigger é focável.\n * Se for false, o wrapper do trigger receberá tabindex=\"0\".\n */\n @State() private hasFocusableTrigger: boolean = false\n\n /**\n * Watcher para monitorar alterações na propriedade `isVisible`.\n * @param visible boolean\n * @returns void\n */\n @Watch('isVisible')\n handleVisibilityChange(visible: boolean) {\n if (this.contentElement == null) return\n\n if (visible) {\n this.positionTooltip()\n this.brDidOpen.emit({ id: this.customId, visible: true })\n } else {\n this.clearAutoUpdate?.()\n this.clearAutoUpdate = undefined\n this.brDidClose.emit({ id: this.customId, visible: false })\n }\n }\n\n /**\n * Emitido quando o tooltip abre.\n */\n @Event({\n eventName: 'brDidOpen',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n brDidOpen: EventEmitter<{ id: string; visible: boolean }>\n\n /**\n * Emitido quando o tooltip fecha.\n */\n @Event({\n eventName: 'brDidClose',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n brDidClose: EventEmitter<{ id: string; visible: boolean }>\n\n /**\n * Exibe o tooltip quando o acionador recebe foco.\n */\n @Listen('focusin')\n handleFocusIn() {\n if (!this.fromPointerDown) {\n this.showContent()\n }\n this.fromPointerDown = false\n }\n\n /**\n * Oculta o tooltip quando o acionador perde foco.\n */\n @Listen('focusout')\n handleFocusOut() {\n this.hideContent()\n }\n\n /**\n * Fecha com Escape quando o documento recebe a tecla.\n */\n @Listen('keydown', { target: 'document' })\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n event.preventDefault()\n this.hideContent()\n this.triggerElement?.focus()\n }\n }\n\n private floatingManager: FloatingUIManager\n\n /**\n * Elemento que aciona a exibição do tooltip.\n * Este elemento é referenciado para garantir que o tooltip seja posicionado corretamente em relação a ele.\n */\n private triggerElement: HTMLDivElement\n\n /**\n * Elemento que contém o conteúdo do tooltip.\n * Este elemento é referenciado para garantir que o tooltip seja posicionado corretamente em relação a ele.\n */\n private contentElement: HTMLDivElement\n\n /**\n * Elemento que representa a seta do tooltip.\n * Este elemento é utilizado para indicar a direção do tooltip em relação ao elemento acionador.\n */\n private arrowElement: HTMLDivElement\n\n /**\n * Função de limpeza para atualizar a posição do tooltip automaticamente.\n * Esta função é chamada quando o tooltip não está mais visível ou quando o componente é desconectado.\n * Isso garante que o tooltip não consuma recursos desnecessários quando não estiver em uso.\n */\n private clearAutoUpdate: () => void\n\n /**\n * Tempo limite para exibir o tooltip automaticamente.\n */\n private showTimer: ReturnType<typeof setTimeout>\n\n /**\n * Tempo limite para ocultar o tooltip.\n */\n private hideTimer: ReturnType<typeof setTimeout>\n\n /**\n * Indica se o tooltip foi acionado por um clique do mouse.\n * Isso é utilizado para evitar conflito com o acionamento por foco.\n */\n private fromPointerDown: boolean = false\n\n /**\n * Verifica se um elemento HTML é focável.\n * @param element HTMLElement a ser verificado\n * @returns boolean\n */\n private isFocusable(element: HTMLElement): boolean {\n if (!element || element.nodeType !== 1) return false\n\n // Verifica o atributo tabindex\n if (element.hasAttribute('tabindex')) {\n const index = parseInt(element.getAttribute('tabindex'), 10)\n return !isNaN(index) && index >= 0\n }\n\n // Verifica elementos interativos padrão\n const tag = element.tagName.toLowerCase()\n const interactiveTags = ['button', 'input', 'select', 'textarea', 'a']\n\n if (interactiveTags.includes(tag)) {\n if (tag === 'a') return element.hasAttribute('href')\n return !(element as any).disabled\n }\n\n return false\n }\n\n /**\n * Manipula a mudança no slot do trigger para verificar se há conteúdo focável.\n * @param event Evento de mudança do slot\n */\n private handleTriggerSlotChange = (event: Event) => {\n const slot = event.target as HTMLSlotElement\n const assignedNodes = slot.assignedNodes({ flatten: true })\n\n this.hasFocusableTrigger = assignedNodes.some((node) => {\n return node.nodeType === 1 && this.isFocusable(node as HTMLElement)\n })\n }\n\n /**\n * Controla a exibição do tooltip.\n * Quando o tooltip é exibido, ele é posicionado em relação ao elemento acionador.\n * Isso é feito utilizando a biblioteca Floating UI, que calcula a posição ideal do tooltip com base no espaço disponível na tela.\n * A função `autoUpdate` é utilizada para atualizar automaticamente a posição do tooltip quando o elemento acionador é movido ou redimensionado.\n */\n private positionTooltip() {\n if (this.triggerElement == null || this.contentElement == null) return\n\n this.floatingManager = new FloatingUIManager({\n triggerElement: this.triggerElement,\n contentElement: this.contentElement,\n arrowElement: this.arrowElement,\n placement: this.position,\n })\n\n this.floatingManager.start()\n }\n\n private cleanupPositioning() {\n this.floatingManager?.stop()\n }\n\n /**\n * Define os eventos de interação do tooltip.\n * Os eventos de interação incluem mouseenter, mouseleave, focus e blur.\n * @returns void\n */\n private setupInteractions() {\n if (this.triggerElement == null || this.contentElement == null) return\n\n if (this.type === 'standard') {\n this.triggerElement.addEventListener('mouseenter', this.showContent)\n this.triggerElement.addEventListener('mouseleave', this.hideContent)\n }\n\n if (this.type === 'popover') {\n this.triggerElement.addEventListener('pointerdown', this.toggleContent)\n }\n\n if (this.isAutoVisible) {\n requestAnimationFrame(() => {\n this.clearShowTimer()\n this.setShowTimer()\n })\n }\n\n // Verifica inicialmente se o slot já tem elementos (caso slotchange não dispare no load inicial dependendo do framework)\n // Pequeno delay para garantir que o DOM light foi projetado\n requestAnimationFrame(() => {\n if (this.triggerElement) {\n const slot = this.triggerElement.querySelector('slot[name=\"trigger\"]') as HTMLSlotElement\n if (slot) {\n // Dispara manualmente a verificação inicial\n this.handleTriggerSlotChange({ target: slot } as unknown as Event)\n }\n }\n })\n }\n\n /**\n * Alterna a exibição do tooltip.\n * Se o tooltip estiver visível, ele será ocultado.\n * Se o tooltip estiver oculto, ele será exibido.\n */\n private toggleContent = () => {\n this.fromPointerDown = true\n\n if (this.isVisible) {\n this.hideContent()\n } else {\n this.showContent()\n }\n }\n\n /**\n * Processa as ações relacionadas à exibição do tooltip.\n * Isso inclui exibir o tooltip e iniciar o tempo limite de ocultação automática.\n * @returns void\n */\n private showContent = () => {\n if (this.contentElement == null) return\n\n this.isVisible = true\n\n if (this.isAutoVisible) {\n if (this.hideDelay !== null) {\n this.clearHideTimer()\n this.setHideTimer()\n }\n }\n\n if (this.type === 'popover') {\n document.addEventListener('click', this.handleOutsideClick)\n }\n }\n\n /**\n * Processa as ações relacionadas ao fechamento do tooltip.\n * Isso inclui ocultar o tooltip e limpar o tempo limite de ocultação automática.\n * @returns void\n */\n private hideContent = () => {\n if (this.contentElement == null) return\n\n this.isVisible = false\n\n if (this.type === 'popover') {\n document.removeEventListener('click', this.handleOutsideClick)\n requestAnimationFrame(() => this.contentElement?.focus())\n }\n }\n\n /**\n * Configura o tempo limite para exibir o tooltip automaticamente.\n * O tempo limite é definido pelo valor da propriedade `showDelay`.\n */\n private setShowTimer() {\n this.showTimer = setTimeout(() => {\n this.showContent()\n }, this.showDelay || 0)\n }\n\n /**\n * Limpa o tempo limite de exibição automática do tooltip.\n */\n private clearShowTimer() {\n if (this.showTimer !== undefined) {\n clearTimeout(this.showTimer)\n this.showTimer = undefined\n }\n }\n\n /**\n * Configura o tempo limite para ocultar o tooltip automaticamente.\n * O tempo limite é definido pelo valor da propriedade `hideDelay`.\n */\n private setHideTimer() {\n this.hideTimer = setTimeout(() => {\n this.hideContent()\n }, this.hideDelay)\n }\n\n /**\n * Limpa o tempo limite de ocultação automática do tooltip.\n */\n private clearHideTimer() {\n if (this.hideTimer !== undefined) {\n clearTimeout(this.hideTimer)\n this.hideTimer = undefined\n }\n }\n\n /**\n * Lida com cliques fora do tooltip.\n * É utilizado para o tooltip do tipo 'popover'.\n * @param event MouseEvent\n */\n private handleOutsideClick = (event: MouseEvent) => {\n const path = event.composedPath()\n\n if (\n this.isVisible &&\n this.type === 'popover' &&\n !path.includes(this.contentElement) &&\n !path.includes(this.triggerElement)\n ) {\n this.hideContent()\n }\n }\n\n /**\n * Determina o mapeamento de classes CSS do componente.\n * @returns Um objeto que representa o mapeamento de classes CSS do componente.\n */\n private getCssClassMap(): CssClassMap {\n return {\n 'br-tooltip': true,\n }\n }\n\n /**\n * Determina o mapeamento de classes CSS do trigger.\n * @returns Um objeto que representa o mapeamento de classes CSS do trigger.\n */\n private getTriggerCssClassMap(): CssClassMap {\n return {\n trigger: true,\n }\n }\n\n /**\n * Determina o mapeamento de classes CSS do conteúdo.\n * @returns Um objeto que representa o mapeamento de classes CSS do conteúdo.\n */\n private getContentCssClassMap(): CssClassMap {\n return {\n 'is-visible': this.isVisible,\n content: true,\n popover: this.type === 'popover',\n large: this.density === 'large',\n medium: this.density === 'medium',\n small: this.density === 'small',\n info: this.state === 'info',\n warning: this.state === 'warning',\n error: this.state === 'error',\n success: this.state === 'success',\n }\n }\n\n /**\n * Determina o mapeamento de classes CSS da seta.\n * @returns Um objeto que representa o mapeamento de classes CSS da seta.\n */\n private getArrowCssClassMap(): CssClassMap {\n return {\n arrow: true,\n large: this.density === 'large',\n medium: this.density === 'medium',\n small: this.density === 'small',\n info: this.state === 'info',\n warning: this.state === 'warning',\n error: this.state === 'error',\n success: this.state === 'success',\n }\n }\n\n /**\n * Método do ciclo de vida do componente.\n * Este método é chamado uma única vez após o componente ser montado no DOM.\n */\n componentDidLoad() {\n if (typeof window === 'undefined') return\n this.setupInteractions()\n }\n\n /**\n * Método do ciclo de vida do componente.\n * Este método é chamado quando o componente é desconectado do DOM.\n */\n disconnectedCallback() {\n if (this.type === 'standard') {\n this.triggerElement?.removeEventListener('mouseenter', this.showContent)\n this.triggerElement?.removeEventListener('mouseleave', this.hideContent)\n } else if (this.type === 'popover') {\n this.triggerElement?.removeEventListener('pointerdown', this.toggleContent)\n document.removeEventListener('click', this.handleOutsideClick)\n }\n\n this.cleanupPositioning()\n\n this.clearShowTimer()\n this.clearHideTimer()\n }\n\n /**\n * Determina o texto de acessibilidade baseado no estado do tooltip.\n */\n private getAccessibilityLabel(): string {\n const labels = {\n info: 'Informação:',\n warning: 'Aviso:',\n error: 'Erro:',\n success: 'Sucesso:',\n }\n return labels[this.state] || ''\n }\n\n /**\n * Renderiza o componente.\n * Este método é responsável por gerar o conteúdo HTML do componente.\n * Ele utiliza a função `h` do Stencil para criar elementos JSX.\n * @returns JSX.Element\n */\n render() {\n return (\n <Host>\n <div id={this.customId} class={this.getCssClassMap()}>\n <div\n class={this.getTriggerCssClassMap()}\n ref={(el) => (this.triggerElement = el as HTMLDivElement)}\n aria-describedby={`${this.customId}-content`}\n aria-expanded={this.isVisible ? 'true' : 'false'}\n aria-controls={`${this.customId}-content`}\n tabindex={this.hasFocusableTrigger ? -1 : 0}\n >\n <slot name=\"trigger\" onSlotchange={this.handleTriggerSlotChange}></slot>\n </div>\n <div\n id={`${this.customId}-content`}\n class={this.getContentCssClassMap()}\n ref={(el) => (this.contentElement = el as HTMLDivElement)}\n role={this.type === 'popover' ? 'dialog' : 'tooltip'}\n tabindex=\"-1\"\n >\n <span class=\"sr-only\">{this.getAccessibilityLabel()}</span>\n <slot name=\"content\"></slot>\n {this.type === 'popover' && (\n <br-button\n class=\"close\"\n shape=\"circle\"\n density=\"small\"\n onClick={this.hideContent}\n aria-label=\"Fechar popover\"\n >\n <br-icon icon-name=\"fa6-solid:xmark\"></br-icon>\n </br-button>\n )}\n <div class={this.getArrowCssClassMap()} ref={(el) => (this.arrowElement = el as HTMLDivElement)}></div>\n </div>\n </div>\n </Host>\n )\n }\n}\n"],"names":["Helpers","FloatingUIManager","h","Host"],"mappings":"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"}
1
+ {"version":3,"file":"br-tooltip.entry.cjs.js","sources":["../../packages/webcomponents/src/components/tooltip/tooltip.scss?tag=br-tooltip&encapsulation=shadow","../../packages/webcomponents/src/components/tooltip/tooltip.tsx"],"sourcesContent":[":host {\n display: inline-block;\n position: relative;\n}\n\n.br-tooltip {\n .content {\n display: none;\n border-radius: 4px;\n box-shadow: var(--surface-offset-xl) var(--surface-offset-xl) var(--surface-offset-xl) rgb(0 0 0 / 16%);\n color: var(--pure-0);\n font-size: var(--font-size-scale-down-01);\n font-weight: var(--font-weight-regular);\n width: max-content;\n position: absolute;\n left: 0;\n top: 0;\n text-align: center;\n z-index: 4;\n\n &.small {\n padding: var(--spacing-scale-base) var(--spacing-scale-base);\n }\n\n &.medium {\n padding: var(--spacing-scale-baseh) var(--spacing-scale-baseh);\n }\n\n &.large {\n padding: var(--spacing-scale-2x) var(--spacing-scale-2x);\n }\n\n &.is-visible {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n &.popover {\n br-button {\n align-self: flex-start;\n margin-left: var(--spacing-scale-half);\n }\n }\n\n &:focus-visible {\n outline: var(--focus) var(--focus-style) var(--focus-width);\n outline-offset: var(--focus-offset);\n }\n }\n\n .arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n transform: rotate(45deg);\n }\n\n .content,\n .arrow {\n &.info {\n background-color: var(--blue-warm-vivid-60);\n\n br-button::part(button) {\n color: var(--pure-0);\n }\n\n br-button::part(button):hover {\n background: linear-gradient(rgb(var(--pure-0-rgb), var(--hover)), rgb(var(--pure-0-rgb), var(--hover)));\n }\n }\n\n &.warning {\n background-color: var(--yellow-vivid-20);\n color: var(--gray-80);\n\n br-button::part(button) {\n color: var(--gray-80);\n }\n\n br-button::part(button):hover {\n background: linear-gradient(rgb(var(--gray-80-rgb), var(--hover)), rgb(var(--gray-80-rgb), var(--hover)));\n }\n }\n\n &.error {\n background-color: var(--red-vivid-50);\n\n br-button::part(button) {\n color: var(--pure-0);\n }\n\n br-button::part(button):hover {\n background: linear-gradient(rgb(var(--pure-0-rgb), var(--hover)), rgb(var(--pure-0-rgb), var(--hover)));\n }\n }\n\n &.success {\n background-color: var(--green-cool-vivid-50);\n\n br-button::part(button) {\n color: var(--pure-0);\n }\n\n br-button::part(button):hover {\n background: linear-gradient(rgb(var(--pure-0-rgb), var(--hover)), rgb(var(--pure-0-rgb), var(--hover)));\n }\n }\n }\n\n .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n }\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\n\nimport { FloatingUIManager } from '../../utils/floating-ui'\nimport Helpers from '../../utils/helpers'\nimport { CssClassMap } from '../../utils/interfaces'\n\ntype TooltipPosition = 'top' | 'bottom' | 'left' | 'right'\ntype TooltipType = 'standard' | 'popover'\ntype TooltipDensity = 'large' | 'medium' | 'small'\ntype TooltipState = 'info' | 'warning' | 'error' | 'success'\n\n/**\n * ## Design System\n *\n * Para a documentação completa de design, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o [Design System do GovBR](https://www.gov.br/ds/components/tooltip?tab=designer).\n *\n * @slot trigger - Slot para o elemento que aciona a exibição do tooltip.\n * @slot content - Slot para o conteúdo exibido no tooltip.\n */\n@Component({\n tag: 'br-tooltip',\n styleUrl: 'tooltip.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class Tooltip {\n /**\n * Referência ao elemento host do componente.\n * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente.\n */\n @Element() el: HTMLBrTooltipElement\n\n /**\n * Referência ao elemento Internals do componente.\n * O elemento Internals fornece uma interface para acessar e manipular o estado interno do componente.\n * Isso é útil para componentes que precisam se integrar com o sistema de formulários nativo do navegador.\n */\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Identificador único do tooltip; gerado automaticamente quando omitido.\n */\n @Prop({ reflect: true }) customId: string = Helpers.generateUniqueId()\n\n /**\n * Posição do tooltip em relação ao acionador.\n */\n @Prop({ reflect: true }) position: TooltipPosition = 'top'\n\n /**\n * Tipo do tooltip: 'standard' (simples) ou 'popover' (mais rico, com fechamento por interação).\n */\n @Prop({ reflect: true }) type: TooltipType = 'standard'\n\n /**\n * Densidade do tooltip: controla compacidade do conteúdo.\n */\n @Prop({ reflect: true }) density: TooltipDensity = 'medium'\n\n /**\n * Estado visual do tooltip: 'info', 'warning', 'error' ou 'success'.\n */\n @Prop({ reflect: true }) state: TooltipState = 'info'\n\n /**\n * Exibe automaticamente sem interação quando true; caso contrário, depende do acionador.\n */\n @Prop({ reflect: true }) isAutoVisible: boolean = false\n\n /**\n * Atraso em milissegundos antes de exibir.\n */\n @Prop({ reflect: true }) showDelay: number = null\n\n /**\n * Atraso em milissegundos antes de ocultar.\n */\n @Prop({ reflect: true }) hideDelay: number = null\n\n /**\n * Estado interno de visibilidade do tooltip.\n */\n @State() isVisible: boolean = false\n\n /**\n * Indica se o conteúdo do trigger é focável.\n * Se for false, o wrapper do trigger receberá tabindex=\"0\".\n */\n @State() private hasFocusableTrigger: boolean = false\n\n /**\n * Watcher para monitorar alterações na propriedade `isVisible`.\n * @param visible boolean\n * @returns void\n */\n @Watch('isVisible')\n handleVisibilityChange(visible: boolean) {\n if (this.contentElement == null) return\n\n if (visible) {\n this.positionTooltip()\n this.brDidOpen.emit({ id: this.customId, visible: true })\n } else {\n this.clearAutoUpdate?.()\n this.clearAutoUpdate = undefined\n this.brDidClose.emit({ id: this.customId, visible: false })\n }\n }\n\n /**\n * Emitido quando o tooltip abre.\n */\n @Event({\n eventName: 'brDidOpen',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n brDidOpen: EventEmitter<{ id: string; visible: boolean }>\n\n /**\n * Emitido quando o tooltip fecha.\n */\n @Event({\n eventName: 'brDidClose',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n brDidClose: EventEmitter<{ id: string; visible: boolean }>\n\n /**\n * Exibe o tooltip quando o acionador recebe foco.\n */\n @Listen('focusin')\n handleFocusIn() {\n if (!this.fromPointerDown) {\n this.showContent()\n }\n this.fromPointerDown = false\n }\n\n /**\n * Oculta o tooltip quando o acionador perde foco.\n */\n @Listen('focusout')\n handleFocusOut() {\n this.hideContent()\n }\n\n /**\n * Fecha com Escape quando o documento recebe a tecla.\n */\n @Listen('keydown', { target: 'document' })\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n event.preventDefault()\n this.hideContent()\n this.triggerElement?.focus()\n }\n }\n\n private floatingManager: FloatingUIManager\n\n /**\n * Elemento que aciona a exibição do tooltip.\n * Este elemento é referenciado para garantir que o tooltip seja posicionado corretamente em relação a ele.\n */\n private triggerElement: HTMLDivElement\n\n /**\n * Elemento que contém o conteúdo do tooltip.\n * Este elemento é referenciado para garantir que o tooltip seja posicionado corretamente em relação a ele.\n */\n private contentElement: HTMLDivElement\n\n /**\n * Elemento que representa a seta do tooltip.\n * Este elemento é utilizado para indicar a direção do tooltip em relação ao elemento acionador.\n */\n private arrowElement: HTMLDivElement\n\n /**\n * Função de limpeza para atualizar a posição do tooltip automaticamente.\n * Esta função é chamada quando o tooltip não está mais visível ou quando o componente é desconectado.\n * Isso garante que o tooltip não consuma recursos desnecessários quando não estiver em uso.\n */\n private clearAutoUpdate: () => void\n\n /**\n * Tempo limite para exibir o tooltip automaticamente.\n */\n private showTimer: ReturnType<typeof setTimeout>\n\n /**\n * Tempo limite para ocultar o tooltip.\n */\n private hideTimer: ReturnType<typeof setTimeout>\n\n /**\n * Indica se o tooltip foi acionado por um clique do mouse.\n * Isso é utilizado para evitar conflito com o acionamento por foco.\n */\n private fromPointerDown: boolean = false\n\n /**\n * Verifica se um elemento HTML é focável.\n * @param element HTMLElement a ser verificado\n * @returns boolean\n */\n private isFocusable(element: HTMLElement): boolean {\n if (!element || element.nodeType !== 1) return false\n\n // Verifica o atributo tabindex\n if (element.hasAttribute('tabindex')) {\n const index = parseInt(element.getAttribute('tabindex'), 10)\n return !isNaN(index) && index >= 0\n }\n\n // Verifica elementos interativos padrão\n const tag = element.tagName.toLowerCase()\n const interactiveTags = ['button', 'input', 'select', 'textarea', 'a']\n\n if (interactiveTags.includes(tag)) {\n if (tag === 'a') return element.hasAttribute('href')\n return !(element as any).disabled\n }\n\n return false\n }\n\n /**\n * Manipula a mudança no slot do trigger para verificar se há conteúdo focável.\n * @param event Evento de mudança do slot\n */\n private handleTriggerSlotChange = (event: Event) => {\n const slot = event.target as HTMLSlotElement\n const assignedNodes = slot.assignedNodes({ flatten: true })\n\n this.hasFocusableTrigger = assignedNodes.some((node) => {\n return node.nodeType === 1 && this.isFocusable(node as HTMLElement)\n })\n }\n\n /**\n * Controla a exibição do tooltip.\n * Quando o tooltip é exibido, ele é posicionado em relação ao elemento acionador.\n * Isso é feito utilizando a biblioteca Floating UI, que calcula a posição ideal do tooltip com base no espaço disponível na tela.\n * A função `autoUpdate` é utilizada para atualizar automaticamente a posição do tooltip quando o elemento acionador é movido ou redimensionado.\n */\n private positionTooltip() {\n if (this.triggerElement == null || this.contentElement == null) return\n\n this.floatingManager = new FloatingUIManager({\n triggerElement: this.triggerElement,\n contentElement: this.contentElement,\n arrowElement: this.arrowElement,\n placement: this.position,\n })\n\n this.floatingManager.start()\n }\n\n private cleanupPositioning() {\n this.floatingManager?.stop()\n }\n\n /**\n * Define os eventos de interação do tooltip.\n * Os eventos de interação incluem mouseenter, mouseleave, focus e blur.\n * @returns void\n */\n private setupInteractions() {\n if (this.triggerElement == null || this.contentElement == null) return\n\n if (this.type === 'standard') {\n this.triggerElement.addEventListener('mouseenter', this.showContent)\n this.triggerElement.addEventListener('mouseleave', this.hideContent)\n }\n\n if (this.type === 'popover') {\n this.triggerElement.addEventListener('pointerdown', this.toggleContent)\n }\n\n if (this.isAutoVisible) {\n requestAnimationFrame(() => {\n this.clearShowTimer()\n this.setShowTimer()\n })\n }\n\n // Verifica inicialmente se o slot já tem elementos (caso slotchange não dispare no load inicial dependendo do framework)\n // Pequeno delay para garantir que o DOM light foi projetado\n requestAnimationFrame(() => {\n if (this.triggerElement) {\n const slot = this.triggerElement.querySelector('slot[name=\"trigger\"]') as HTMLSlotElement\n if (slot) {\n // Dispara manualmente a verificação inicial\n this.handleTriggerSlotChange({ target: slot } as unknown as Event)\n }\n }\n })\n }\n\n /**\n * Alterna a exibição do tooltip.\n * Se o tooltip estiver visível, ele será ocultado.\n * Se o tooltip estiver oculto, ele será exibido.\n */\n private toggleContent = () => {\n this.fromPointerDown = true\n\n if (this.isVisible) {\n this.hideContent()\n } else {\n this.showContent()\n }\n }\n\n /**\n * Processa as ações relacionadas à exibição do tooltip.\n * Isso inclui exibir o tooltip e iniciar o tempo limite de ocultação automática.\n * @returns void\n */\n private showContent = () => {\n if (this.contentElement == null) return\n\n this.isVisible = true\n\n if (this.isAutoVisible) {\n if (this.hideDelay !== null) {\n this.clearHideTimer()\n this.setHideTimer()\n }\n }\n\n if (this.type === 'popover') {\n document.addEventListener('click', this.handleOutsideClick)\n }\n }\n\n /**\n * Processa as ações relacionadas ao fechamento do tooltip.\n * Isso inclui ocultar o tooltip e limpar o tempo limite de ocultação automática.\n * @returns void\n */\n private hideContent = () => {\n if (this.contentElement == null) return\n\n this.isVisible = false\n\n if (this.type === 'popover') {\n document.removeEventListener('click', this.handleOutsideClick)\n requestAnimationFrame(() => this.contentElement?.focus())\n }\n }\n\n /**\n * Configura o tempo limite para exibir o tooltip automaticamente.\n * O tempo limite é definido pelo valor da propriedade `showDelay`.\n */\n private setShowTimer() {\n this.showTimer = setTimeout(() => {\n this.showContent()\n }, this.showDelay || 0)\n }\n\n /**\n * Limpa o tempo limite de exibição automática do tooltip.\n */\n private clearShowTimer() {\n if (this.showTimer !== undefined) {\n clearTimeout(this.showTimer)\n this.showTimer = undefined\n }\n }\n\n /**\n * Configura o tempo limite para ocultar o tooltip automaticamente.\n * O tempo limite é definido pelo valor da propriedade `hideDelay`.\n */\n private setHideTimer() {\n this.hideTimer = setTimeout(() => {\n this.hideContent()\n }, this.hideDelay)\n }\n\n /**\n * Limpa o tempo limite de ocultação automática do tooltip.\n */\n private clearHideTimer() {\n if (this.hideTimer !== undefined) {\n clearTimeout(this.hideTimer)\n this.hideTimer = undefined\n }\n }\n\n /**\n * Lida com cliques fora do tooltip.\n * É utilizado para o tooltip do tipo 'popover'.\n * @param event MouseEvent\n */\n private handleOutsideClick = (event: MouseEvent) => {\n const path = event.composedPath()\n\n if (\n this.isVisible &&\n this.type === 'popover' &&\n !path.includes(this.contentElement) &&\n !path.includes(this.triggerElement)\n ) {\n this.hideContent()\n }\n }\n\n /**\n * Determina o mapeamento de classes CSS do componente.\n * @returns Um objeto que representa o mapeamento de classes CSS do componente.\n */\n private getCssClassMap(): CssClassMap {\n return {\n 'br-tooltip': true,\n }\n }\n\n /**\n * Determina o mapeamento de classes CSS do trigger.\n * @returns Um objeto que representa o mapeamento de classes CSS do trigger.\n */\n private getTriggerCssClassMap(): CssClassMap {\n return {\n trigger: true,\n }\n }\n\n /**\n * Determina o mapeamento de classes CSS do conteúdo.\n * @returns Um objeto que representa o mapeamento de classes CSS do conteúdo.\n */\n private getContentCssClassMap(): CssClassMap {\n return {\n 'is-visible': this.isVisible,\n content: true,\n popover: this.type === 'popover',\n large: this.density === 'large',\n medium: this.density === 'medium',\n small: this.density === 'small',\n info: this.state === 'info',\n warning: this.state === 'warning',\n error: this.state === 'error',\n success: this.state === 'success',\n }\n }\n\n /**\n * Determina o mapeamento de classes CSS da seta.\n * @returns Um objeto que representa o mapeamento de classes CSS da seta.\n */\n private getArrowCssClassMap(): CssClassMap {\n return {\n arrow: true,\n large: this.density === 'large',\n medium: this.density === 'medium',\n small: this.density === 'small',\n info: this.state === 'info',\n warning: this.state === 'warning',\n error: this.state === 'error',\n success: this.state === 'success',\n }\n }\n\n /**\n * Método do ciclo de vida do componente.\n * Este método é chamado uma única vez após o componente ser montado no DOM.\n */\n componentDidLoad() {\n if (typeof window === 'undefined') return\n this.setupInteractions()\n }\n\n /**\n * Método do ciclo de vida do componente.\n * Este método é chamado quando o componente é desconectado do DOM.\n */\n disconnectedCallback() {\n if (this.type === 'standard') {\n this.triggerElement?.removeEventListener('mouseenter', this.showContent)\n this.triggerElement?.removeEventListener('mouseleave', this.hideContent)\n } else if (this.type === 'popover') {\n this.triggerElement?.removeEventListener('pointerdown', this.toggleContent)\n document.removeEventListener('click', this.handleOutsideClick)\n }\n\n this.cleanupPositioning()\n\n this.clearShowTimer()\n this.clearHideTimer()\n }\n\n /**\n * Determina o texto de acessibilidade baseado no estado do tooltip.\n */\n private getAccessibilityLabel(): string {\n const labels = {\n info: 'Informação:',\n warning: 'Aviso:',\n error: 'Erro:',\n success: 'Sucesso:',\n }\n return labels[this.state] || ''\n }\n\n /**\n * Renderiza o componente.\n * Este método é responsável por gerar o conteúdo HTML do componente.\n * Ele utiliza a função `h` do Stencil para criar elementos JSX.\n * @returns JSX.Element\n */\n render() {\n return (\n <Host>\n <div id={this.customId} class={this.getCssClassMap()}>\n <div\n class={this.getTriggerCssClassMap()}\n ref={(el) => (this.triggerElement = el as HTMLDivElement)}\n aria-describedby={`${this.customId}-content`}\n aria-expanded={this.isVisible ? 'true' : 'false'}\n aria-controls={`${this.customId}-content`}\n tabindex={this.hasFocusableTrigger ? -1 : 0}\n >\n <slot name=\"trigger\" onSlotchange={this.handleTriggerSlotChange}></slot>\n </div>\n <div\n id={`${this.customId}-content`}\n class={this.getContentCssClassMap()}\n ref={(el) => (this.contentElement = el as HTMLDivElement)}\n role={this.type === 'popover' ? 'dialog' : 'tooltip'}\n tabindex=\"-1\"\n >\n <span class=\"sr-only\">{this.getAccessibilityLabel()}</span>\n <slot name=\"content\"></slot>\n {this.type === 'popover' && (\n <br-button\n class=\"close\"\n shape=\"circle\"\n density=\"small\"\n onClick={this.hideContent}\n aria-label=\"Fechar popover\"\n >\n <br-icon icon-name=\"fa6-solid:xmark\"></br-icon>\n </br-button>\n )}\n <div class={this.getArrowCssClassMap()} ref={(el) => (this.arrowElement = el as HTMLDivElement)}></div>\n </div>\n </div>\n </Host>\n )\n }\n}\n"],"names":["Helpers","FloatingUIManager","h","Host"],"mappings":"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"}
@@ -5,7 +5,6 @@
5
5
  'use strict';
6
6
 
7
7
  var index = require('./index-CFIH680Y.js');
8
- var tslib_es6 = require('./tslib.es6-CF44W9Bn.js');
9
8
 
10
9
  const wizardPanelCss = "*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{line-height:var(--font-line-height-medium);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0}main{display:block}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}a{background-color:rgba(0,0,0,0)}b,strong{font-weight:bolder}small{font-size:80%}img{border-style:none}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:var(--font-line-height-medium);margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;-moz-appearance:button;appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.d-none{display:none !important}.d-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}@media (min-width: 576px){.d-sm-block{display:block !important}.d-sm-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}}.justify-content-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.align-items-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.col,[class*=col-]{padding-left:calc(var(--grid-gutter)*.5);padding-right:calc(var(--grid-gutter)*.5);width:100%}.col{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;min-width:8.3333333333%}.col-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-2{-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%;max-width:16.6666666667%}.container,.container-lg{--grid-margin:var(--grid-portrait-margin);--grid-maxwidth:var(--grid-portrait-maxwidth);margin-left:auto;margin-right:auto;max-width:var(--grid-maxwidth);padding-left:var(--grid-margin);padding-right:var(--grid-margin);width:100%}.row{--grid-gutter:var(--grid-portrait-gutter);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--grid-gutter)*-0.5);margin-right:calc(var(--grid-gutter)*-0.5)}@media (min-width: 576px){.container,.container-lg{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-sm) - var(--grid-tablet-margin))}.col-sm-4{-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%;max-width:33.3333333333%}}@media (min-width: 992px){.container,.container-lg{--grid-margin:var(--grid-tablet-margin)}.row{--grid-gutter:var(--grid-tablet-gutter)}.container{--grid-maxwidth:calc(var(--grid-breakpoint-md) - var(--grid-tablet-margin))}}@media (min-width: 1280px){.container,.container-lg{--grid-margin:var(--grid-desktop-margin)}.row{--grid-gutter:var(--grid-desktop-gutter)}.container,.container-lg{--grid-maxwidth:calc(var(--grid-breakpoint-lg) - var(--grid-desktop-margin))}.col-lg-3{-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}}@media (min-width: 1600px){.container,.container-lg{--grid-margin:var(--grid-tv-margin)}.row{--grid-gutter:var(--grid-tv-gutter)}.container,.container-lg{--grid-maxwidth:calc(var(--grid-breakpoint-xl) - var(--grid-tv-margin))}}.mr-1{margin-right:var(--spacing-scale-half) !important}.mb-1{margin-bottom:var(--spacing-scale-half) !important}.ml-1{margin-left:var(--spacing-scale-half) !important}.mr-n2{margin-right:calc(var(--spacing-scale-base)*-1) !important}.ml-2{margin-left:var(--spacing-scale-base) !important}.mx-3{margin-left:var(--spacing-scale-2x) !important;margin-right:var(--spacing-scale-2x) !important}.mr-auto{margin-right:auto !important}.ml-auto{margin-left:auto !important}.pt-half{padding-top:var(--spacing-scale-half) !important}.py-3{padding-bottom:var(--spacing-scale-2x) !important;padding-top:var(--spacing-scale-2x) !important}.py-4{padding-bottom:var(--spacing-scale-3x) !important;padding-top:var(--spacing-scale-3x) !important}@media (min-width: 576px){.ml-sm-0{margin-left:var(--spacing-scale-default) !important}}body{--bg-color:var(--background);--bg-color-rgb:var(--background-rgb);--bg-color-hsl:var(--background-hsl);--font-size:var(--font-size-scale-base);--font-weight:var(--font-weight-regular);--link-color:var(--interactive);--link-color-rgb:var(--interactive-rgb);--link-color-hsl:var(--interactive-hsl);--line-height:var(--font-line-height-medium);--text-color:var(--color);--text-color-rgb:var(--color-rgb);--text-color-hsl:var(--color-hsl);background:var(--bg-color);color:var(--text-color);font-family:var(--font-family-base);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height)}p{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-2x);margin-top:0}p a{text-decoration:underline}@media (min-width: 576px){p{font-size:var(--font-size-scale-up-01)}}a{--focus-offset:var(--spacing-scale-half)}a:focus{outline:none}a:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}a:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}a:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--pressed))), to(rgba(var(--interactive-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--pressed)), rgba(var(--interactive-rgb), var(--pressed)))}a{color:var(--interactive);text-decoration:none}button{cursor:pointer}img{max-width:100%;vertical-align:middle}h2,.h2{color:var(--color);font-size:var(--font-size-scale-up-03);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-2xh);margin-top:var(--spacing-scale-3xh);padding-bottom:var(--spacing-scale-2xh)}@media (min-width: 576px){.h2,h2{font-size:var(--font-size-scale-up-05);font-weight:var(--font-weight-regular)}}ul,ol{margin-bottom:var(--spacing-scale-2x);margin-top:0;padding:0 0 0 var(--spacing-scale-5x)}table{--table-background:var(--background);--table-color:var(--color);--table-border-color:var(--gray-20);--table-border-style:solid;--table-border-width:1px;--table-hover:var(--color-rgb);--table-padding:var(--spacing-scale-3x);--table-font-weight:var(--font-weight-medium);--table-th-background:var(--background-alternative);--table-th-font-weight:var(--font-weight-semi-bold);--table-row-size:var(--spacing-scale-2x);border-collapse:collapse;width:100%}label,.label{color:var(--color);font-size:var(--font-size-scale-base);font-weight:var(--font-weight-semi-bold);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half)}::-webkit-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-moz-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::-ms-input-placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}::placeholder,.placeholder{color:var(--color-light);font-size:var(--font-size-scale-base);font-style:italic;font-weight:var(--font-weight-regular);line-height:var(--font-line-height-medium);margin-bottom:var(--spacing-scale-half);margin-top:var(--spacing-scale-half);opacity:1}input,textarea,.input{color:var(--color-light);font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-low);margin-bottom:var(--spacing-scale-half)}.text-pure-0{color:var(--pure-0) !important}.bg-interactive{--background:var(--interactive);background:var(--interactive) !important}.text-primary-default{color:var(--color-primary-default) !important}.text-center{text-align:center !important}.text-right{text-align:right !important}.text-nowrap{white-space:nowrap !important}.text-uppercase{text-transform:uppercase !important}.text-medium{font-weight:500 !important}.text-bold{font-weight:700 !important}.text-down-01{font-size:var(--font-size-scale-down-01) !important}@media (min-width: 576px){.text-sm-center{text-align:center !important}.text-sm-left{text-align:left !important}.text-sm-right{text-align:right !important}}.ease{-webkit-animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1);animation-timing-function:cubic-bezier(0.25, 0.1, 0.25, 1)}.ease-in-out{-webkit-animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1);animation-timing-function:cubic-bezier(0.42, 0, 0.58, 1)}.fab{--icon-size:var(--icon-size-base);display:inline-block;font-size:var(--icon-size);text-align:center;width:calc(var(--icon-size) + 8px)}.highlight{background:var(--status-highlight-background) -webkit-gradient(linear, left top, left bottom, from(var(--status-highlight-overlay)), to(var(--status-highlight-overlay)));background:var(--status-highlight-background) linear-gradient(var(--status-highlight-overlay), var(--status-highlight-overlay));color:var(--status-highlight-text);padding:0 var(--spacing-scale-half)}[disabled],.disabled{cursor:not-allowed;opacity:var(--disabled)}[disabled] *,.disabled *{pointer-events:none}[data-toggle=dropdown]+*{position:absolute}.dropdown{position:relative}.dropdown [data-toggle=dropdown]+*{-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm);left:0;position:absolute;top:100%}.dropdown .br-item{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--color-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);--item-padding-y:var(--spacing-scale-2x);background-color:var(--background-light);color:var(--color)}.dropdown .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.dropdown .br-item.selected{--color:var(--color-dark);--color-rgb:var(--color-dark-rgb);--text-color:var(--color-dark);--interactive:var(--interactive-dark);--interactive-rgb:var(--interactive-dark-rgb);--visited:var(--visited-dark);--hover:var(--hover-dark);--pressed:var(--pressed-dark);--focus-color:var(--focus-color-dark);--focus:var(--focus-color-dark)}*[data-toggle=collapse]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--interactive-rgb), var(--hover))), to(rgba(var(--interactive-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--interactive-rgb), var(--hover)), rgba(var(--interactive-rgb), var(--hover)))}*[data-toggle=collapse]:focus{outline:none}*[data-toggle=collapse]:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}:host{display:none}:host([active]){display:block}.wizard-panel{width:100%}.wizard-panel-content{width:100%}";
11
10
 
@@ -22,28 +21,22 @@ const WizardPanel = class {
22
21
  * Define se o painel está ativo
23
22
  * @internal Método interno chamado apenas pelo wizard pai
24
23
  */
25
- setActive(value) {
26
- return tslib_es6.__awaiter(this, void 0, void 0, function* () {
27
- this.active = value;
28
- });
24
+ async setActive(value) {
25
+ this.active = value;
29
26
  }
30
27
  /**
31
28
  * Define o índice do painel
32
29
  * @internal Método interno chamado apenas pelo wizard pai
33
30
  */
34
- setIndex(value) {
35
- return tslib_es6.__awaiter(this, void 0, void 0, function* () {
36
- this.index = value;
37
- });
31
+ async setIndex(value) {
32
+ this.index = value;
38
33
  }
39
34
  /**
40
35
  * Retorna se o painel está ativo
41
36
  * @internal Método interno para o wizard pai consultar o estado
42
37
  */
43
- isActive() {
44
- return tslib_es6.__awaiter(this, void 0, void 0, function* () {
45
- return this.active;
46
- });
38
+ async isActive() {
39
+ return this.active;
47
40
  }
48
41
  render() {
49
42
  const hostAttrs = Object.assign({}, (this.active && { active: 'true' }));
@@ -1 +1 @@
1
- {"version":3,"file":"br-wizard-panel.entry.cjs.js","sources":["../../packages/webcomponents/src/components/wizard/wizard-panel/wizard-panel.scss?tag=br-wizard-panel&encapsulation=shadow","../../packages/webcomponents/src/components/wizard/wizard-panel/wizard-panel.tsx"],"sourcesContent":[":host {\n display: none;\n}\n\n:host([active]) {\n display: block;\n}\n\n.wizard-panel {\n width: 100%;\n}\n\n.wizard-panel-content {\n width: 100%;\n}\n","import { Component, Element, h, Host, Method, Prop, State } from '@stencil/core'\n\n/**\n * Wizard Panel (Painel de etapa do Wizard)\n * Representa uma etapa individual dentro do br-wizard.\n *\n * @slot default - Slot para o conteúdo da etapa (formulários, campos ou informações da fase atual).\n */\n@Component({\n tag: 'br-wizard-panel',\n styleUrl: 'wizard-panel.scss',\n shadow: true,\n})\nexport class WizardPanel {\n @Element() el: HTMLBrWizardPanelElement\n\n /**\n * Label do painel (aparece no indicador de progresso)\n */\n @Prop({ reflect: true }) label!: string\n\n /**\n * Estados internos controlados pelo wizard pai via métodos públicos\n */\n @State() private active: boolean = false\n @State() private index: number = 1\n\n /**\n * Define se o painel está ativo\n * @internal Método interno chamado apenas pelo wizard pai\n */\n @Method()\n async setActive(value: boolean) {\n this.active = value\n }\n\n /**\n * Define o índice do painel\n * @internal Método interno chamado apenas pelo wizard pai\n */\n @Method()\n async setIndex(value: number) {\n this.index = value\n }\n\n /**\n * Retorna se o painel está ativo\n * @internal Método interno para o wizard pai consultar o estado\n */\n @Method()\n async isActive(): Promise<boolean> {\n return this.active\n }\n\n render() {\n const hostAttrs = {\n ...(this.active && { active: 'true' }),\n }\n\n return (\n <Host {...hostAttrs}>\n <div class=\"wizard-panel\" role=\"tabpanel\" id={`wizard-panel-${this.index}`}>\n <div class=\"wizard-panel-content\">\n <slot></slot>\n </div>\n </div>\n </Host>\n )\n }\n}\n"],"names":["h","Host"],"mappings":";;;;;;;;;AAAA,MAAM,cAAc,GAAG,s8YAAs8Y;;MCah9Y,WAAW,GAAA,MAAA;AALxB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAaE;;AAEG;AACc,QAAA,IAAM,CAAA,MAAA,GAAY,KAAK;AACvB,QAAA,IAAK,CAAA,KAAA,GAAW,CAAC;AA4CnC;AA1CC;;;AAGG;AAEG,IAAA,SAAS,CAAC,KAAc,EAAA;;AAC5B,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACrB,SAAC,CAAA;;AAED;;;AAGG;AAEG,IAAA,QAAQ,CAAC,KAAa,EAAA;;AAC1B,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AACpB,SAAC,CAAA;;AAED;;;AAGG;IAEG,QAAQ,GAAA;;YACZ,OAAO,IAAI,CAAC,MAAM;AACpB,SAAC,CAAA;;IAED,MAAM,GAAA;QACJ,MAAM,SAAS,GAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GACT,IAAI,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EACtC;AAED,QAAA,QACEA,OAAA,CAACC,UAAI,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAK,SAAS,CAAA,EACjBD,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,UAAU,EAAC,EAAE,EAAE,CAAA,aAAA,EAAgB,IAAI,CAAC,KAAK,CAAA,CAAE,EAAA,EACxEA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAC/BA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACT,CACF,CACD;;;;;;;;"}
1
+ {"version":3,"file":"br-wizard-panel.entry.cjs.js","sources":["../../packages/webcomponents/src/components/wizard/wizard-panel/wizard-panel.scss?tag=br-wizard-panel&encapsulation=shadow","../../packages/webcomponents/src/components/wizard/wizard-panel/wizard-panel.tsx"],"sourcesContent":[":host {\n display: none;\n}\n\n:host([active]) {\n display: block;\n}\n\n.wizard-panel {\n width: 100%;\n}\n\n.wizard-panel-content {\n width: 100%;\n}\n","import { Component, Element, h, Host, Method, Prop, State } from '@stencil/core'\n\n/**\n * Wizard Panel (Painel de etapa do Wizard)\n * Representa uma etapa individual dentro do br-wizard.\n *\n * @slot default - Slot para o conteúdo da etapa (formulários, campos ou informações da fase atual).\n */\n@Component({\n tag: 'br-wizard-panel',\n styleUrl: 'wizard-panel.scss',\n shadow: true,\n})\nexport class WizardPanel {\n @Element() el: HTMLBrWizardPanelElement\n\n /**\n * Label do painel (aparece no indicador de progresso)\n */\n @Prop({ reflect: true }) label!: string\n\n /**\n * Estados internos controlados pelo wizard pai via métodos públicos\n */\n @State() private active: boolean = false\n @State() private index: number = 1\n\n /**\n * Define se o painel está ativo\n * @internal Método interno chamado apenas pelo wizard pai\n */\n @Method()\n async setActive(value: boolean) {\n this.active = value\n }\n\n /**\n * Define o índice do painel\n * @internal Método interno chamado apenas pelo wizard pai\n */\n @Method()\n async setIndex(value: number) {\n this.index = value\n }\n\n /**\n * Retorna se o painel está ativo\n * @internal Método interno para o wizard pai consultar o estado\n */\n @Method()\n async isActive(): Promise<boolean> {\n return this.active\n }\n\n render() {\n const hostAttrs = {\n ...(this.active && { active: 'true' }),\n }\n\n return (\n <Host {...hostAttrs}>\n <div class=\"wizard-panel\" role=\"tabpanel\" id={`wizard-panel-${this.index}`}>\n <div class=\"wizard-panel-content\">\n <slot></slot>\n </div>\n </div>\n </Host>\n )\n }\n}\n"],"names":["h","Host"],"mappings":";;;;;;;;AAAA,MAAM,cAAc,GAAG,s8YAAs8Y;;MCah9Y,WAAW,GAAA,MAAA;AALxB,IAAA,WAAA,CAAA,OAAA,EAAA;;AAaE;;AAEG;AACc,QAAA,IAAM,CAAA,MAAA,GAAY,KAAK;AACvB,QAAA,IAAK,CAAA,KAAA,GAAW,CAAC;AA4CnC;AA1CC;;;AAGG;IAEH,MAAM,SAAS,CAAC,KAAc,EAAA;AAC5B,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;;AAGrB;;;AAGG;IAEH,MAAM,QAAQ,CAAC,KAAa,EAAA;AAC1B,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;;AAGpB;;;AAGG;AAEH,IAAA,MAAM,QAAQ,GAAA;QACZ,OAAO,IAAI,CAAC,MAAM;;IAGpB,MAAM,GAAA;QACJ,MAAM,SAAS,GAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GACT,IAAI,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EACtC;AAED,QAAA,QACEA,OAAA,CAACC,UAAI,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAK,SAAS,CAAA,EACjBD,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,UAAU,EAAC,EAAE,EAAE,CAAA,aAAA,EAAgB,IAAI,CAAC,KAAK,CAAA,CAAE,EAAA,EACxEA,OAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,sBAAsB,EAAA,EAC/BA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAa,CACT,CACF,CACD;;;;;;;;"}