@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":"wizard.js","sourceRoot":"","sources":["../../../../../../packages/webcomponents/src/components/wizard/wizard.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\n\nimport Helpers from '../../utils/helpers'\nimport { CssClassMap } from '../../utils/interfaces'\nimport { UniversalSwipe } from '../../utils/swipe'\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/wizard?tab=designer).\n *\n * @slot default - Slot para os painéis de etapa (br-wizard-panel) do wizard.\n */\n@Component({\n tag: 'br-wizard',\n styleUrl: 'wizard.scss',\n shadow: true,\n})\nexport class Wizard {\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!: HTMLBrWizardElement\n\n /**\n * Internals API para suporte a formulários nativos.\n */\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Índice da etapa inicial do wizard.\n * Define qual etapa será exibida ao carregar o componente.\n * A numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).\n */\n @Prop({ reflect: true }) initialStep: number = 1\n\n /**\n * Orientação visual do wizard.\n * Define se os indicadores de progresso serão exibidos horizontalmente ou verticalmente.\n */\n @Prop({ reflect: true }) orientation: 'horizontal' | 'vertical' = 'horizontal'\n\n /**\n * Tipo de progressão entre etapas.\n * - `linear`: O usuário deve completar cada etapa sequencialmente. Não é possível pular etapas futuras.\n * - `nonlinear`: O usuário pode navegar livremente entre qualquer etapa.\n */\n @Prop({ reflect: true }) progressionType: 'linear' | 'nonlinear' = 'nonlinear'\n\n /**\n * ID customizado para o componente.\n * Se não fornecido, um ID único será gerado automaticamente.\n */\n @Prop({ reflect: true }) customId: string = Helpers.generateUniqueId()\n\n /**\n * Etapa atual sendo exibida.\n * Gerenciado internamente pelo componente.\n */\n @State() currentStep: number = 1\n\n /** Estado mobile para detecção responsiva */\n @State() isMobile: boolean = false\n\n /**\n * Estado collapsed para recolher/expandir barra de progresso (mobile)\n */\n @State() collapsed: boolean = false\n\n /**\n * Lista de painéis filhos (br-wizard-panel).\n * Descobertos automaticamente via slot.\n */\n @State() panels: HTMLElement[] = []\n\n /**\n * Mensagem de status para leitores de tela (aria-live)\n */\n @State() ariaLiveMessage: string = ''\n\n // ========================================\n // EVENTOS\n // ========================================\n\n /**\n * Evento emitido APÓS mudar de etapa com sucesso.\n *\n * Este evento é disparado independente da origem da navegação:\n * - Botões \"Avançar\" ou \"Voltar\"\n * - Click direto em um step do indicador de progresso\n * - Chamadas programáticas via métodos públicos (goToStep, nextStep, etc)\n */\n @Event() brWizardStepChange: EventEmitter<number>\n\n /**\n * Evento emitido ANTES de mudar de etapa (permite validação e cancelamento).\n *\n * Comportamento:\n * - Disparado apenas ao AVANÇAR (targetStep > currentStep)\n * - Não é disparado ao VOLTAR (targetStep < currentStep)\n * - Funciona tanto para cliques nos botões quanto para cliques diretos nos steps\n * - Pode ser cancelado com `event.preventDefault()` para bloquear a navegação\n */\n @Event({ cancelable: true }) brWizardBeforeStepChange: EventEmitter<number>\n\n /**\n * Evento emitido ao concluir o wizard (última etapa).\n */\n @Event() brWizardComplete: EventEmitter<void>\n\n /**\n * Evento emitido ao cancelar o wizard.\n */\n @Event() brWizardCancel: EventEmitter<void>\n\n /**\n * Evento emitido quando uma ação é bloqueada (validação falha, progressão linear impedida).\n * Emite uma string indicando o motivo: 'linear-progression' ou 'validation-failed'.\n * Use getCurrentStepIndex() para obter o contexto da etapa atual.\n */\n @Event() brWizardNavigationBlocked: EventEmitter<string>\n\n // ========================================\n // PROPRIEDADES PRIVADAS\n // ========================================\n\n /**\n * Referência ao componente br-step.\n */\n private stepRef: HTMLBrStepElement | null = null\n\n /**\n * Flag para evitar loop quando sincronizamos programaticamente com br-step.\n */\n private isSyncingWithStep: boolean = false\n\n /**\n * Instância do Swipe para gestos mobile na barra de progresso.\n */\n private progressBarSwipe: UniversalSwipe | null = null\n\n /**\n * Referência ao elemento DOM da barra de progresso.\n */\n private progressBarRef: HTMLElement | null = null\n\n /**\n * Referência ao elemento DOM do formulário/painel ativo.\n */\n private formRef: HTMLElement | null = null\n\n /**\n * Timer para limpar mensagens aria-live.\n */\n private ariaLiveTimeout: number | null = null\n\n // ========================================\n // CONSTANTES\n // ========================================\n\n /**\n * Tempo de espera para limpar mensagens aria-live (em ms).\n */\n private readonly ARIA_LIVE_CLEANUP_DELAY = 5000\n\n /**\n * Seletor de elementos focáveis dentro dos painéis.\n */\n private readonly FOCUSABLE_SELECTOR =\n 'br-button, button, [href], br-item, br-input, input, br-select, select, br-textarea, textarea, [tabindex]:not([tabindex=\"-1\"])'\n\n // ========================================\n // WATCHERS\n // ========================================\n\n /**\n * Observa mudanças no tipo de progressão.\n * Atualiza a navegação dos painéis quando muda entre linear/nonlinear.\n */\n @Watch('progressionType')\n handleProgressionTypeChange() {\n this.updatePanels()\n }\n\n /**\n * Observa mudanças na etapa inicial.\n * Reinicializa o wizard quando a prop initialStep é alterada externamente.\n */\n @Watch('initialStep')\n async handleInitialStepChange() {\n this.setInitialStep()\n await this.syncWithBrStep()\n this.updatePanels()\n }\n\n /**\n * Observa mudanças na etapa atual (fonte única de verdade).\n * Sincroniza com br-step, atualiza painéis, anuncia mudança e move foco.\n * @param newStep - Nova etapa\n * @param oldStep - Etapa anterior\n */\n @Watch('currentStep')\n async handleCurrentStepChange(newStep: number, oldStep: number) {\n if (newStep !== oldStep) {\n await this.syncWithBrStep()\n this.updatePanels()\n\n this.announceStepChange(newStep, oldStep)\n\n this.setFocusOnActivePanel()\n }\n }\n\n // ========================================\n // LISTENERS\n // ========================================\n\n /**\n * Detecta quando o slot muda (painéis adicionados/removidos dinamicamente).\n * Redescobre os painéis e ressincroniza o estado.\n * @param event - Evento slotchange\n */\n @Listen('slotchange')\n async handleSlotChange(event: Event) {\n const slot = event.target as HTMLSlotElement\n this.discoverPanelsFromSlot(slot)\n await this.syncWithBrStep()\n this.updatePanels()\n }\n\n /**\n * Detecta quando o br-step muda de etapa ativa.\n * Valida e sincroniza a navegação com o componente interno br-step.\n * @param event - Evento customizado do br-step\n */\n @Listen('brStepChange')\n async handleStepChange(event: CustomEvent<{ activeStep: number }>) {\n if (this.isSyncingWithStep) {\n return\n }\n\n const requestedStep = event.detail.activeStep + 1\n const success = await this.navigateToStep(requestedStep)\n\n if (!success) {\n event.stopPropagation()\n await this.syncWithBrStep()\n }\n }\n\n // ========================================\n // LIFECYCLE HOOKS\n // ========================================\n\n /**\n * Lifecycle: inicializa painéis antes da renderização.\n */\n componentWillLoad() {\n this.panels = Array.from(this.el.querySelectorAll('br-wizard-panel'))\n this.setInitialStep()\n }\n\n /**\n * Lifecycle: carrega painéis e configura estado inicial.\n * Sincroniza com br-step, atualiza painéis e configura detecção mobile.\n */\n async componentDidLoad() {\n const slot = this.el.shadowRoot?.querySelector('slot')\n if (slot !== null && typeof slot !== 'undefined') {\n const assignedElements = slot.assignedElements()\n const slotPanels = assignedElements.filter(\n (el) => el.tagName.toLowerCase() === 'br-wizard-panel'\n ) as HTMLElement[]\n\n if (slotPanels.length !== this.panels.length) {\n this.panels = slotPanels\n }\n }\n\n await this.syncWithBrStep()\n this.updatePanels()\n this.setupMobileDetection()\n\n if (this.isMobile) {\n this.collapsed = true\n }\n }\n\n /**\n * Lifecycle: limpa listeners quando componente é removido.\n */\n disconnectedCallback() {\n this.cleanupMobileDetection()\n this.cleanupSwipeListeners()\n this.clearAriaLiveTimeout()\n }\n\n // ========================================\n // MÉTODOS PÚBLICOS\n // ========================================\n\n /**\n * Avança para a próxima etapa.\n * Executa validação via evento `brWizardBeforeStepChange` antes de navegar.\n * @returns Promise<boolean> - true se navegou com sucesso, false se bloqueado\n */\n @Method()\n async nextStep(): Promise<boolean> {\n return await this.navigateToStep(this.currentStep + 1)\n }\n\n /**\n * Volta para a etapa anterior.\n * Não executa validação ao retornar.\n * @returns Promise<boolean> - true se navegou com sucesso, false se bloqueado\n */\n @Method()\n async previousStep(): Promise<boolean> {\n return await this.navigateToStep(this.currentStep - 1)\n }\n\n /**\n * Navega para uma etapa específica.\n * Executa validação se estiver avançando (etapa alvo > etapa atual).\n * @param stepNumber - Número da etapa de destino (numeração começa em 1)\n * @returns Promise<boolean> - true se navegou com sucesso, false se bloqueado\n */\n @Method()\n async goToStep(stepNumber: number): Promise<boolean> {\n return await this.navigateToStep(stepNumber)\n }\n\n /**\n * Retorna à primeira etapa do wizard.\n * Não executa validação (útil para reiniciar o fluxo).\n * @returns Promise<void>\n */\n @Method()\n async reset(): Promise<void> {\n await this.navigateToStep(1, true)\n }\n\n /**\n * Retorna o elemento HTML do painel ativo no momento.\n * @returns Promise<HTMLElement | null>\n */\n @Method()\n async getCurrentStep(): Promise<HTMLElement | null> {\n return this.panels[this.currentStep - 1] || null\n }\n\n /**\n * Retorna todos os painéis do wizard.\n * @returns Promise<HTMLElement[]>\n */\n @Method()\n async getAllSteps(): Promise<HTMLElement[]> {\n return [...this.panels]\n }\n\n /**\n * Retorna um painel específico pelo índice.\n * @param stepNumber - Número da etapa (numeração começa em 1)\n * @returns Promise<HTMLElement | null>\n */\n @Method()\n async getStepByIndex(stepNumber: number): Promise<HTMLElement | null> {\n return this.panels[stepNumber - 1] || null\n }\n\n /**\n * Retorna o índice (número) da etapa atual.\n * A numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).\n * @returns Promise<number>\n */\n @Method()\n async getCurrentStepIndex(): Promise<number> {\n return this.currentStep\n }\n\n /**\n * Retorna o número total de etapas do wizard.\n * @returns Promise<number>\n */\n @Method()\n async getTotalSteps(): Promise<number> {\n return this.panels.length\n }\n\n // ========================================\n // NAVEGAÇÃO E VALIDAÇÃO\n // ========================================\n\n /**\n * Método privado central que gerencia toda a navegação com validação.\n *\n * Comportamento unificado para linear e nonlinear:\n * - Linear: Valida ao avançar, não permite pular steps\n * - Nonlinear: Valida ao avançar, permite pular steps livremente\n *\n * @param targetStep - Número da etapa de destino (numeração começa em 1)\n * @param skipValidation - Se true, pula validação (útil para reset/programático)\n * @returns Promise<boolean> - true se navegou com sucesso, false se bloqueado\n */\n private async navigateToStep(targetStep: number, skipValidation: boolean = false): Promise<boolean> {\n /**\n * VALIDAÇÕES BÁSICAS\n * 1. Verifica se targetStep está dentro dos limites válidos\n * 2. Se já estamos na etapa alvo, retorna sucesso imediatamente\n */\n if (targetStep < 1 || targetStep > this.panels.length) {\n return false\n }\n\n if (targetStep === this.currentStep) {\n return true\n }\n\n /**\n * MODO LINEAR: RESTRIÇÕES\n * No modo linear, não é permitido pular para etapas futuras não visitadas.\n * É possível voltar, mas não avançar além da próxima etapa sequencial.\n */\n if (this.progressionType === 'linear') {\n if (targetStep > this.currentStep + 1) {\n const message = `Não é possível pular etapas. Complete a etapa ${this.currentStep + 1} antes de avançar.`\n\n this.announceToScreenReader(message)\n\n this.brWizardNavigationBlocked.emit('linear-progression')\n\n return false\n }\n }\n\n /**\n * VALIDAÇÃO CUSTOMIZADA\n * Emite evento brWizardBeforeStepChange APENAS se:\n * 1. Não estamos pulando validação (skipValidation=false)\n * 2. Estamos AVANÇANDO (targetStep > currentStep)\n *\n * Observações:\n * - Voltar não precisa validar\n * - Validação se aplica a ambos os modos (linear e nonlinear)\n */\n const shouldValidate = !skipValidation && targetStep > this.currentStep\n\n if (shouldValidate) {\n const eventResult = this.brWizardBeforeStepChange.emit(targetStep)\n\n /**\n * Se preventDefault() foi chamado no listener do evento,\n * bloqueia a navegação e retorna false\n */\n if (eventResult.defaultPrevented) {\n const message = 'Não é possível avançar. Verifique os campos obrigatórios da etapa atual.'\n\n this.announceToScreenReader(message)\n\n this.brWizardNavigationBlocked.emit('validation-failed')\n\n return false\n }\n }\n\n /**\n * EXECUTA NAVEGAÇÃO\n * Atualiza o estado interno e emite evento de confirmação\n */\n this.currentStep = targetStep\n\n this.brWizardStepChange.emit(this.currentStep)\n\n return true\n }\n\n // ========================================\n // SINCRONIZAÇÃO COM BR-STEP\n // ========================================\n\n /**\n * Sincroniza estado do wizard com o br-step.\n *\n * O br-step já gerencia completamente os atributos 'active' via componentShouldUpdate\n * e requestAnimationFrame, então apenas chamamos os métodos de navegação dele.\n */\n private async syncWithBrStep() {\n if (this.stepRef === null) return\n\n if (typeof this.stepRef.GetActiveStep !== 'function') {\n return\n }\n\n this.isSyncingWithStep = true\n\n try {\n const targetStepIndex = this.currentStep - 1\n const currentActiveStep = await this.stepRef.GetActiveStep()\n\n if (currentActiveStep !== targetStepIndex) {\n const diff = targetStepIndex - currentActiveStep\n\n if (diff > 0) {\n for (let i = 0; i < diff; i++) {\n await this.stepRef.ProceedToNextStep()\n }\n } else {\n for (let i = 0; i < Math.abs(diff); i++) {\n await this.stepRef.BackToPreviousStep()\n }\n }\n }\n } finally {\n this.isSyncingWithStep = false\n }\n }\n\n // ========================================\n // GERENCIAMENTO DE PAINÉIS\n // ========================================\n\n /**\n * Descobre painéis filhos usando assigned elements do slot.\n * @param slot - Elemento slot do shadow DOM\n */\n private discoverPanelsFromSlot(slot: HTMLSlotElement) {\n const assignedElements = slot.assignedElements()\n this.panels = assignedElements.filter((el) => el.tagName.toLowerCase() === 'br-wizard-panel') as HTMLElement[]\n }\n\n /**\n * Atualiza estados de todos os painéis.\n * Define o índice e o estado ativo de cada painel.\n */\n private async updatePanels() {\n for (let idx = 0; idx < this.panels.length; idx++) {\n const panel = this.panels[idx] as HTMLBrWizardPanelElement\n const stepNumber = idx + 1\n const isActive = stepNumber === this.currentStep\n\n await panel.setIndex(stepNumber)\n await panel.setActive(isActive)\n }\n }\n\n /**\n * Define etapa inicial baseada na prop initialStep.\n * Garante que o valor esteja dentro dos limites válidos.\n */\n private setInitialStep() {\n this.currentStep = Math.max(1, Math.min(this.initialStep, this.panels.length))\n }\n\n // ========================================\n // ACESSIBILIDADE\n // ========================================\n\n /**\n * Anuncia mensagem para leitores de tela via aria-live.\n * Limpa automaticamente após 5 segundos para evitar poluição.\n * @param message - Mensagem a ser anunciada\n */\n private announceToScreenReader(message: string) {\n this.ariaLiveMessage = ''\n\n requestAnimationFrame(() => {\n this.ariaLiveMessage = message\n\n this.clearAriaLiveTimeout()\n this.ariaLiveTimeout = window.setTimeout(() => {\n this.ariaLiveMessage = ''\n }, this.ARIA_LIVE_CLEANUP_DELAY)\n })\n }\n\n /**\n * Anuncia mudança de etapa para leitores de tela.\n * Informa direção da navegação e progresso atual.\n * @param newStep - Nova etapa\n * @param oldStep - Etapa anterior\n */\n private announceStepChange(newStep: number, oldStep: number) {\n const totalSteps = this.panels.length\n\n let direction = ''\n if (newStep > oldStep) {\n direction = 'Avançando para'\n } else if (newStep < oldStep) {\n direction = 'Retornando para'\n }\n\n const message = `${direction}, etapa ${newStep} de ${totalSteps}`\n this.announceToScreenReader(message)\n }\n\n /**\n * Limpa o timeout de mensagens aria-live.\n */\n private clearAriaLiveTimeout() {\n if (this.ariaLiveTimeout !== null) {\n clearTimeout(this.ariaLiveTimeout)\n this.ariaLiveTimeout = null\n }\n }\n\n /**\n * Move foco para o primeiro elemento do painel ativo.\n *\n */\n private setFocusOnActivePanel() {\n requestAnimationFrame(() => {\n const activePanel = this.panels[this.currentStep - 1] as HTMLBrWizardPanelElement | undefined\n if (typeof activePanel === 'undefined') return\n\n const panelElement = activePanel.shadowRoot?.querySelector('.wizard-panel-content')\n if (typeof panelElement === 'undefined' || panelElement === null) return\n\n const focusableElements = panelElement.querySelectorAll(this.FOCUSABLE_SELECTOR)\n\n if (focusableElements.length > 0) {\n ;(focusableElements[0] as HTMLElement).focus()\n }\n })\n }\n\n // ========================================\n // DETECÇÃO MOBILE E RESPONSIVIDADE\n // ========================================\n\n /**\n * Configura detecção de viewport mobile.\n * Ativa listeners de resize e configura gestos swipe.\n */\n private setupMobileDetection() {\n this.isMobile = window.innerWidth <= 992\n window.addEventListener('resize', this.handleResize)\n\n if (this.isMobile) {\n this.setupSwipeListeners()\n }\n }\n\n /**\n * Remove listeners de detecção mobile.\n */\n private cleanupMobileDetection() {\n window.removeEventListener('resize', this.handleResize)\n }\n\n /**\n * Handler de resize da janela.\n * Alterna entre modos mobile/desktop e configura/limpa gestos swipe.\n */\n private handleResize = () => {\n const wasMobile = this.isMobile\n this.isMobile = window.innerWidth <= 992\n\n if (this.isMobile && !wasMobile) {\n this.collapsed = true\n this.setupSwipeListeners()\n } else if (!this.isMobile && wasMobile) {\n this.cleanupSwipeListeners()\n this.collapsed = false\n }\n }\n\n // ========================================\n // GESTOS SWIPE (MOBILE)\n // ========================================\n\n /**\n * Configura gestos swipe para mobile.\n */\n private setupSwipeListeners() {\n if (!this.isMobile) return\n\n requestAnimationFrame(() => {\n this.progressBarRef = this.el.shadowRoot?.querySelector('.wizard-progress') || null\n this.formRef = this.el.shadowRoot?.querySelector('.wizard-form') || null\n\n if (this.progressBarRef !== null) {\n const direction = this.orientation === 'horizontal' ? 'vertical' : 'horizontal'\n this.progressBarSwipe = new UniversalSwipe(this.progressBarRef, { direction })\n\n if (this.orientation === 'horizontal') {\n this.progressBarSwipe.on('SWIPE_DOWN', () => this.expandSteps())\n this.progressBarSwipe.on('SWIPE_UP', () => this.collapseSteps())\n } else {\n this.progressBarSwipe.on('SWIPE_RIGHT', () => this.expandSteps())\n this.progressBarSwipe.on('SWIPE_LEFT', () => this.collapseSteps())\n }\n }\n\n if (this.formRef !== null) {\n this.formRef.addEventListener('touchstart', this.handleFormTouchStart)\n }\n })\n }\n\n /**\n * Remove listeners de gestos swipe.\n */\n private cleanupSwipeListeners() {\n if (this.progressBarSwipe !== null) {\n this.progressBarSwipe.off('SWIPE_DOWN', this.expandSteps)\n this.progressBarSwipe.off('SWIPE_UP', this.collapseSteps)\n this.progressBarSwipe.off('SWIPE_RIGHT', this.expandSteps)\n this.progressBarSwipe.off('SWIPE_LEFT', this.collapseSteps)\n\n this.progressBarSwipe.destroy()\n this.progressBarSwipe = null\n }\n\n if (this.formRef !== null) {\n this.formRef.removeEventListener('touchstart', this.handleFormTouchStart)\n }\n }\n\n /**\n * Handler de toque no formulário.\n * Recolhe automaticamente a barra de progresso.\n */\n private handleFormTouchStart = () => {\n this.collapseSteps()\n }\n\n /**\n * Recolhe a barra de progresso (mobile).\n * Adiciona o atributo 'collapsed' ao host.\n */\n private collapseSteps() {\n if (this.isMobile) {\n this.collapsed = true\n }\n }\n\n /**\n * Expande a barra de progresso (mobile).\n * Remove o atributo 'collapsed' do host.\n */\n private expandSteps() {\n if (this.isMobile) {\n this.collapsed = false\n }\n }\n\n // ========================================\n // HANDLERS DE EVENTOS DE BOTÕES\n // ========================================\n\n /**\n * Handler do botão \"Avançar\" ou \"Concluir\".\n * Se for a última etapa, valida e emite evento de conclusão.\n * Caso contrário, avança para a próxima etapa.\n */\n private handleNext = async () => {\n if (this.currentStep === this.panels.length) {\n // Última etapa: validar antes de completar\n const eventResult = this.brWizardBeforeStepChange.emit(this.currentStep)\n\n // Se preventDefault() foi chamado, bloqueia conclusão\n if (!eventResult.defaultPrevented) {\n this.brWizardComplete.emit()\n }\n } else {\n await this.nextStep()\n }\n }\n\n /**\n * Handler do botão \"Voltar\".\n * Navega para a etapa anterior.\n */\n private handlePrevious = async () => {\n await this.previousStep()\n }\n\n /**\n * Handler do botão \"Cancelar\".\n * Emite evento de cancelamento do wizard.\n */\n private handleCancel = () => {\n this.brWizardCancel.emit()\n }\n\n // ========================================\n // MÉTODOS DE RENDERIZAÇÃO\n // ========================================\n\n /**\n * Retorna classes CSS do container principal.\n * @returns CssClassMap - Mapa de classes CSS\n */\n private getHostClassMap(): CssClassMap {\n return {\n 'br-wizard': true,\n }\n }\n\n /**\n * Renderiza indicadores de progresso usando br-step.\n * @returns JSX.Element | null - Elemento de progresso ou null se não houver painéis\n */\n private renderProgress() {\n if (this.panels.length === 0) {\n return null\n }\n\n return (\n <div class=\"wizard-progress\">\n <br-step\n ref={(el) => (this.stepRef = el)}\n initial-step={String(this.currentStep - 1)}\n layout={this.orientation}\n label-position={this.orientation === 'vertical' ? 'bottom' : 'bottom'}\n progression-type={this.progressionType}\n mode=\"step\"\n >\n {this.panels.map((panel) => {\n const label = panel.getAttribute('label') || ''\n return <br-step-item label={label}></br-step-item>\n })}\n </br-step>\n </div>\n )\n }\n\n /**\n * Renderiza conteúdo dos painéis via slot.\n * @returns JSX.Element - Container com slot dos painéis\n */\n private renderPanelContent() {\n return (\n <div class=\"wizard-panel-content\">\n <slot />\n </div>\n )\n }\n\n /**\n * Renderiza botões de navegação do wizard.\n * Adapta-se ao contexto: primeira etapa, última etapa, mobile/desktop.\n * @returns JSX.Element - Container com botões de navegação\n */\n private renderPanelButtons() {\n const isFirst = this.currentStep === 1\n const isLast = this.currentStep === this.panels.length\n\n const buttonShape = this.isMobile ? 'block' : undefined\n\n return (\n <div class=\"wizard-panel-btn\">\n <br-button\n class=\"wizard-btn-canc\"\n type=\"button\"\n shape={buttonShape}\n emphasis=\"tertiary\"\n onClick={this.handleCancel}\n >\n Cancelar\n </br-button>\n\n <br-button\n class={isLast ? 'wizard-btn' : 'wizard-btn-next'}\n emphasis=\"primary\"\n type=\"button\"\n shape={buttonShape}\n onClick={this.handleNext}\n >\n {isLast ? 'Concluir' : 'Avançar'}\n </br-button>\n\n {!isFirst && (\n <br-button\n class=\"wizard-btn-prev\"\n emphasis=\"secondary\"\n type=\"button\"\n shape={buttonShape}\n onClick={this.handlePrevious}\n >\n Voltar\n </br-button>\n )}\n </div>\n )\n }\n\n /**\n * Renderiza região de anúncios para leitores de tela.\n * Usa aria-live para comunicar mudanças de estado de forma acessível.\n * @returns JSX.Element - Elemento sr-only com aria-live\n */\n private renderAriaLiveRegion() {\n return (\n <div class=\"sr-only\" role=\"status\" aria-live=\"polite\" aria-atomic=\"true\">\n {this.ariaLiveMessage}\n </div>\n )\n }\n\n /**\n * Método de renderização principal do componente.\n * Monta a estrutura completa do wizard com acessibilidade integrada.\n * @returns JSX.Element - Estrutura completa do wizard\n */\n render() {\n const hostClass = this.getHostClassMap()\n const verticalAttr = this.orientation === 'vertical' ? { vertical: '' } : {}\n const collapsedAttr = this.collapsed ? { collapsed: '' } : {}\n const activePanelAttr = { active: '' }\n\n // Atributos ARIA para o painel ativo\n const totalSteps = this.panels.length\n const currentPanel = this.panels[this.currentStep - 1]\n const stepLabel = currentPanel?.getAttribute('label') || `Etapa ${this.currentStep}`\n\n return (\n <Host class={hostClass} {...verticalAttr} {...collapsedAttr} step={String(this.currentStep)}>\n {this.renderAriaLiveRegion()}\n\n {this.renderProgress()}\n\n <div class=\"wizard-form\" role=\"region\" aria-label={`Wizard: ${stepLabel}`}>\n <div\n class=\"wizard-panel\"\n {...activePanelAttr}\n role=\"group\"\n aria-label={`${stepLabel}, etapa ${this.currentStep} de ${totalSteps}`}\n >\n {this.renderPanelContent()}\n {this.renderPanelButtons()}\n </div>\n </div>\n </Host>\n )\n }\n}\n"]}
1
+ {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../../../../../packages/webcomponents/src/components/wizard/wizard.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\n\nimport Helpers from '../../utils/helpers'\nimport { CssClassMap } from '../../utils/interfaces'\nimport { UniversalSwipe } from '../../utils/swipe'\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/wizard?tab=designer).\n *\n * @slot default - Slot para os painéis de etapa (br-wizard-panel) do wizard.\n */\n@Component({\n tag: 'br-wizard',\n styleUrl: 'wizard.scss',\n shadow: true,\n})\nexport class Wizard {\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!: HTMLBrWizardElement\n\n /**\n * Internals API para suporte a formulários nativos.\n */\n @AttachInternals() elementInternals: ElementInternals\n\n /**\n * Índice da etapa inicial do wizard.\n * Define qual etapa será exibida ao carregar o componente.\n * A numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).\n */\n @Prop({ reflect: true }) initialStep: number = 1\n\n /**\n * Orientação visual do wizard.\n * Define se os indicadores de progresso serão exibidos horizontalmente ou verticalmente.\n */\n @Prop({ reflect: true }) orientation: 'horizontal' | 'vertical' = 'horizontal'\n\n /**\n * Tipo de progressão entre etapas.\n * - `linear`: O usuário deve completar cada etapa sequencialmente. Não é possível pular etapas futuras.\n * - `nonlinear`: O usuário pode navegar livremente entre qualquer etapa.\n */\n @Prop({ reflect: true }) progressionType: 'linear' | 'nonlinear' = 'nonlinear'\n\n /**\n * ID customizado para o componente.\n * Se não fornecido, um ID único será gerado automaticamente.\n */\n @Prop({ reflect: true }) customId: string = Helpers.generateUniqueId()\n\n /**\n * Etapa atual sendo exibida.\n * Gerenciado internamente pelo componente.\n */\n @State() currentStep: number = 1\n\n /** Estado mobile para detecção responsiva */\n @State() isMobile: boolean = false\n\n /**\n * Estado collapsed para recolher/expandir barra de progresso (mobile)\n */\n @State() collapsed: boolean = false\n\n /**\n * Lista de painéis filhos (br-wizard-panel).\n * Descobertos automaticamente via slot.\n */\n @State() panels: HTMLElement[] = []\n\n /**\n * Mensagem de status para leitores de tela (aria-live)\n */\n @State() ariaLiveMessage: string = ''\n\n // ========================================\n // EVENTOS\n // ========================================\n\n /**\n * Evento emitido APÓS mudar de etapa com sucesso.\n *\n * Este evento é disparado independente da origem da navegação:\n * - Botões \"Avançar\" ou \"Voltar\"\n * - Click direto em um step do indicador de progresso\n * - Chamadas programáticas via métodos públicos (goToStep, nextStep, etc)\n */\n @Event() brWizardStepChange: EventEmitter<number>\n\n /**\n * Evento emitido ANTES de mudar de etapa (permite validação e cancelamento).\n *\n * Comportamento:\n * - Disparado apenas ao AVANÇAR (targetStep > currentStep)\n * - Não é disparado ao VOLTAR (targetStep < currentStep)\n * - Funciona tanto para cliques nos botões quanto para cliques diretos nos steps\n * - Pode ser cancelado com `event.preventDefault()` para bloquear a navegação\n */\n @Event({ cancelable: true }) brWizardBeforeStepChange: EventEmitter<number>\n\n /**\n * Evento emitido ao concluir o wizard (última etapa).\n */\n @Event() brWizardComplete: EventEmitter<void>\n\n /**\n * Evento emitido ao cancelar o wizard.\n */\n @Event() brWizardCancel: EventEmitter<void>\n\n /**\n * Evento emitido quando uma ação é bloqueada (validação falha, progressão linear impedida).\n * Emite uma string indicando o motivo: 'linear-progression' ou 'validation-failed'.\n * Use getCurrentStepIndex() para obter o contexto da etapa atual.\n */\n @Event() brWizardNavigationBlocked: EventEmitter<string>\n\n // ========================================\n // PROPRIEDADES PRIVADAS\n // ========================================\n\n /**\n * Referência ao componente br-step.\n */\n private stepRef: HTMLBrStepElement | null = null\n\n /**\n * Flag para evitar loop quando sincronizamos programaticamente com br-step.\n */\n private isSyncingWithStep: boolean = false\n\n /**\n * Instância do Swipe para gestos mobile na barra de progresso.\n */\n private progressBarSwipe: UniversalSwipe | null = null\n\n /**\n * Referência ao elemento DOM da barra de progresso.\n */\n private progressBarRef: HTMLElement | null = null\n\n /**\n * Referência ao elemento DOM do formulário/painel ativo.\n */\n private formRef: HTMLElement | null = null\n\n /**\n * Timer para limpar mensagens aria-live.\n */\n private ariaLiveTimeout: number | null = null\n\n // ========================================\n // CONSTANTES\n // ========================================\n\n /**\n * Tempo de espera para limpar mensagens aria-live (em ms).\n */\n private readonly ARIA_LIVE_CLEANUP_DELAY = 5000\n\n /**\n * Seletor de elementos focáveis dentro dos painéis.\n */\n private readonly FOCUSABLE_SELECTOR =\n 'br-button, button, [href], br-item, br-input, input, br-select, select, br-textarea, textarea, [tabindex]:not([tabindex=\"-1\"])'\n\n // ========================================\n // WATCHERS\n // ========================================\n\n /**\n * Observa mudanças no tipo de progressão.\n * Atualiza a navegação dos painéis quando muda entre linear/nonlinear.\n */\n @Watch('progressionType')\n handleProgressionTypeChange() {\n this.updatePanels()\n }\n\n /**\n * Observa mudanças na etapa inicial.\n * Reinicializa o wizard quando a prop initialStep é alterada externamente.\n */\n @Watch('initialStep')\n async handleInitialStepChange() {\n this.setInitialStep()\n await this.syncWithBrStep()\n this.updatePanels()\n }\n\n /**\n * Observa mudanças na etapa atual (fonte única de verdade).\n * Sincroniza com br-step, atualiza painéis, anuncia mudança e move foco.\n * @param newStep - Nova etapa\n * @param oldStep - Etapa anterior\n */\n @Watch('currentStep')\n async handleCurrentStepChange(newStep: number, oldStep: number) {\n if (newStep !== oldStep) {\n await this.syncWithBrStep()\n this.updatePanels()\n\n this.announceStepChange(newStep, oldStep)\n\n this.setFocusOnActivePanel()\n }\n }\n\n // ========================================\n // LISTENERS\n // ========================================\n\n /**\n * Detecta quando o slot muda (painéis adicionados/removidos dinamicamente).\n * Redescobre os painéis e ressincroniza o estado.\n * @param event - Evento slotchange\n */\n @Listen('slotchange')\n async handleSlotChange(event: Event) {\n const slot = event.target as HTMLSlotElement\n this.discoverPanelsFromSlot(slot)\n await this.syncWithBrStep()\n this.updatePanels()\n }\n\n /**\n * Detecta quando o br-step muda de etapa ativa.\n * Valida e sincroniza a navegação com o componente interno br-step.\n * @param event - Evento customizado do br-step\n */\n @Listen('brStepChange')\n async handleStepChange(event: CustomEvent<{ activeStep: number }>) {\n if (this.isSyncingWithStep) {\n return\n }\n\n const requestedStep = event.detail.activeStep + 1\n const success = await this.navigateToStep(requestedStep)\n\n if (!success) {\n event.stopPropagation()\n await this.syncWithBrStep()\n }\n }\n\n // ========================================\n // LIFECYCLE HOOKS\n // ========================================\n\n /**\n * Lifecycle: inicializa painéis antes da renderização.\n */\n componentWillLoad() {\n this.panels = Array.from(this.el.querySelectorAll('br-wizard-panel'))\n this.setInitialStep()\n }\n\n /**\n * Lifecycle: carrega painéis e configura estado inicial.\n * Sincroniza com br-step, atualiza painéis e configura detecção mobile.\n */\n async componentDidLoad() {\n const slot = this.el.shadowRoot?.querySelector('slot')\n if (slot !== null && typeof slot !== 'undefined') {\n const assignedElements = slot.assignedElements()\n const slotPanels = assignedElements.filter(\n (el) => el.tagName.toLowerCase() === 'br-wizard-panel'\n ) as HTMLElement[]\n\n if (slotPanels.length !== this.panels.length) {\n this.panels = slotPanels\n }\n }\n\n await this.syncWithBrStep()\n this.updatePanels()\n this.setupMobileDetection()\n\n if (this.isMobile) {\n this.collapsed = true\n }\n }\n\n /**\n * Lifecycle: limpa listeners quando componente é removido.\n */\n disconnectedCallback() {\n this.cleanupMobileDetection()\n this.cleanupSwipeListeners()\n this.clearAriaLiveTimeout()\n }\n\n // ========================================\n // MÉTODOS PÚBLICOS\n // ========================================\n\n /**\n * Avança para a próxima etapa.\n * Executa validação via evento `brWizardBeforeStepChange` antes de navegar.\n * @returns Promise<boolean> - true se navegou com sucesso, false se bloqueado\n */\n @Method()\n async nextStep(): Promise<boolean> {\n return await this.navigateToStep(this.currentStep + 1)\n }\n\n /**\n * Volta para a etapa anterior.\n * Não executa validação ao retornar.\n * @returns Promise<boolean> - true se navegou com sucesso, false se bloqueado\n */\n @Method()\n async previousStep(): Promise<boolean> {\n return await this.navigateToStep(this.currentStep - 1)\n }\n\n /**\n * Navega para uma etapa específica.\n * Executa validação se estiver avançando (etapa alvo > etapa atual).\n * @param stepNumber - Número da etapa de destino (numeração começa em 1)\n * @returns Promise<boolean> - true se navegou com sucesso, false se bloqueado\n */\n @Method()\n async goToStep(stepNumber: number): Promise<boolean> {\n return await this.navigateToStep(stepNumber)\n }\n\n /**\n * Retorna à primeira etapa do wizard.\n * Não executa validação (útil para reiniciar o fluxo).\n * @returns Promise<void>\n */\n @Method()\n async reset(): Promise<void> {\n await this.navigateToStep(1, true)\n }\n\n /**\n * Retorna o elemento HTML do painel ativo no momento.\n * @returns Promise<HTMLElement | null>\n */\n @Method()\n async getCurrentStep(): Promise<HTMLElement | null> {\n return this.panels[this.currentStep - 1] || null\n }\n\n /**\n * Retorna todos os painéis do wizard.\n * @returns Promise<HTMLElement[]>\n */\n @Method()\n async getAllSteps(): Promise<HTMLElement[]> {\n return [...this.panels]\n }\n\n /**\n * Retorna um painel específico pelo índice.\n * @param stepNumber - Número da etapa (numeração começa em 1)\n * @returns Promise<HTMLElement | null>\n */\n @Method()\n async getStepByIndex(stepNumber: number): Promise<HTMLElement | null> {\n return this.panels[stepNumber - 1] || null\n }\n\n /**\n * Retorna o índice (número) da etapa atual.\n * A numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).\n * @returns Promise<number>\n */\n @Method()\n async getCurrentStepIndex(): Promise<number> {\n return this.currentStep\n }\n\n /**\n * Retorna o número total de etapas do wizard.\n * @returns Promise<number>\n */\n @Method()\n async getTotalSteps(): Promise<number> {\n return this.panels.length\n }\n\n // ========================================\n // NAVEGAÇÃO E VALIDAÇÃO\n // ========================================\n\n /**\n * Método privado central que gerencia toda a navegação com validação.\n *\n * Comportamento unificado para linear e nonlinear:\n * - Linear: Valida ao avançar, não permite pular steps\n * - Nonlinear: Valida ao avançar, permite pular steps livremente\n *\n * @param targetStep - Número da etapa de destino (numeração começa em 1)\n * @param skipValidation - Se true, pula validação (útil para reset/programático)\n * @returns Promise<boolean> - true se navegou com sucesso, false se bloqueado\n */\n private async navigateToStep(targetStep: number, skipValidation: boolean = false): Promise<boolean> {\n /**\n * VALIDAÇÕES BÁSICAS\n * 1. Verifica se targetStep está dentro dos limites válidos\n * 2. Se já estamos na etapa alvo, retorna sucesso imediatamente\n */\n if (targetStep < 1 || targetStep > this.panels.length) {\n return false\n }\n\n if (targetStep === this.currentStep) {\n return true\n }\n\n /**\n * MODO LINEAR: RESTRIÇÕES\n * No modo linear, não é permitido pular para etapas futuras não visitadas.\n * É possível voltar, mas não avançar além da próxima etapa sequencial.\n */\n if (this.progressionType === 'linear') {\n if (targetStep > this.currentStep + 1) {\n const message = `Não é possível pular etapas. Complete a etapa ${this.currentStep + 1} antes de avançar.`\n\n this.announceToScreenReader(message)\n\n this.brWizardNavigationBlocked.emit('linear-progression')\n\n return false\n }\n }\n\n /**\n * VALIDAÇÃO CUSTOMIZADA\n * Emite evento brWizardBeforeStepChange APENAS se:\n * 1. Não estamos pulando validação (skipValidation=false)\n * 2. Estamos AVANÇANDO (targetStep > currentStep)\n *\n * Observações:\n * - Voltar não precisa validar\n * - Validação se aplica a ambos os modos (linear e nonlinear)\n */\n const shouldValidate = !skipValidation && targetStep > this.currentStep\n\n if (shouldValidate) {\n const eventResult = this.brWizardBeforeStepChange.emit(targetStep)\n\n /**\n * Se preventDefault() foi chamado no listener do evento,\n * bloqueia a navegação e retorna false\n */\n if (eventResult.defaultPrevented) {\n const message = 'Não é possível avançar. Verifique os campos obrigatórios da etapa atual.'\n\n this.announceToScreenReader(message)\n\n this.brWizardNavigationBlocked.emit('validation-failed')\n\n return false\n }\n }\n\n /**\n * EXECUTA NAVEGAÇÃO\n * Atualiza o estado interno e emite evento de confirmação\n */\n this.currentStep = targetStep\n\n this.brWizardStepChange.emit(this.currentStep)\n\n return true\n }\n\n // ========================================\n // SINCRONIZAÇÃO COM BR-STEP\n // ========================================\n\n /**\n * Sincroniza estado do wizard com o br-step.\n *\n * O br-step já gerencia completamente os atributos 'active' via componentShouldUpdate\n * e requestAnimationFrame, então apenas chamamos os métodos de navegação dele.\n */\n private async syncWithBrStep() {\n if (this.stepRef === null) return\n\n if (typeof this.stepRef.GetActiveStep !== 'function') {\n return\n }\n\n this.isSyncingWithStep = true\n\n try {\n const targetStepIndex = this.currentStep - 1\n const currentActiveStep = await this.stepRef.GetActiveStep()\n\n if (currentActiveStep !== targetStepIndex) {\n const diff = targetStepIndex - currentActiveStep\n\n if (diff > 0) {\n for (let i = 0; i < diff; i++) {\n await this.stepRef.ProceedToNextStep()\n }\n } else {\n for (let i = 0; i < Math.abs(diff); i++) {\n await this.stepRef.BackToPreviousStep()\n }\n }\n }\n } finally {\n this.isSyncingWithStep = false\n }\n }\n\n // ========================================\n // GERENCIAMENTO DE PAINÉIS\n // ========================================\n\n /**\n * Descobre painéis filhos usando assigned elements do slot.\n * @param slot - Elemento slot do shadow DOM\n */\n private discoverPanelsFromSlot(slot: HTMLSlotElement) {\n const assignedElements = slot.assignedElements()\n this.panels = assignedElements.filter((el) => el.tagName.toLowerCase() === 'br-wizard-panel') as HTMLElement[]\n }\n\n /**\n * Atualiza estados de todos os painéis.\n * Define o índice e o estado ativo de cada painel.\n */\n private async updatePanels() {\n for (let idx = 0; idx < this.panels.length; idx++) {\n const panel = this.panels[idx] as HTMLBrWizardPanelElement\n const stepNumber = idx + 1\n const isActive = stepNumber === this.currentStep\n\n await panel.setIndex(stepNumber)\n await panel.setActive(isActive)\n }\n }\n\n /**\n * Define etapa inicial baseada na prop initialStep.\n * Garante que o valor esteja dentro dos limites válidos.\n */\n private setInitialStep() {\n this.currentStep = Math.max(1, Math.min(this.initialStep, this.panels.length))\n }\n\n // ========================================\n // ACESSIBILIDADE\n // ========================================\n\n /**\n * Anuncia mensagem para leitores de tela via aria-live.\n * Limpa automaticamente após 5 segundos para evitar poluição.\n * @param message - Mensagem a ser anunciada\n */\n private announceToScreenReader(message: string) {\n this.ariaLiveMessage = ''\n\n requestAnimationFrame(() => {\n this.ariaLiveMessage = message\n\n this.clearAriaLiveTimeout()\n this.ariaLiveTimeout = window.setTimeout(() => {\n this.ariaLiveMessage = ''\n }, this.ARIA_LIVE_CLEANUP_DELAY)\n })\n }\n\n /**\n * Anuncia mudança de etapa para leitores de tela.\n * Informa direção da navegação e progresso atual.\n * @param newStep - Nova etapa\n * @param oldStep - Etapa anterior\n */\n private announceStepChange(newStep: number, oldStep: number) {\n const totalSteps = this.panels.length\n\n let direction = ''\n if (newStep > oldStep) {\n direction = 'Avançando para'\n } else if (newStep < oldStep) {\n direction = 'Retornando para'\n }\n\n const message = `${direction}, etapa ${newStep} de ${totalSteps}`\n this.announceToScreenReader(message)\n }\n\n /**\n * Limpa o timeout de mensagens aria-live.\n */\n private clearAriaLiveTimeout() {\n if (this.ariaLiveTimeout !== null) {\n clearTimeout(this.ariaLiveTimeout)\n this.ariaLiveTimeout = null\n }\n }\n\n /**\n * Move foco para o primeiro elemento do painel ativo.\n *\n */\n private setFocusOnActivePanel() {\n requestAnimationFrame(() => {\n const activePanel = this.panels[this.currentStep - 1] as HTMLBrWizardPanelElement | undefined\n if (typeof activePanel === 'undefined') return\n\n const panelElement = activePanel.shadowRoot?.querySelector('.wizard-panel-content')\n if (typeof panelElement === 'undefined' || panelElement === null) return\n\n const focusableElements = panelElement.querySelectorAll(this.FOCUSABLE_SELECTOR)\n\n if (focusableElements.length > 0) {\n ;(focusableElements[0] as HTMLElement).focus()\n }\n })\n }\n\n // ========================================\n // DETECÇÃO MOBILE E RESPONSIVIDADE\n // ========================================\n\n /**\n * Configura detecção de viewport mobile.\n * Ativa listeners de resize e configura gestos swipe.\n */\n private setupMobileDetection() {\n this.isMobile = window.innerWidth <= 992\n window.addEventListener('resize', this.handleResize)\n\n if (this.isMobile) {\n this.setupSwipeListeners()\n }\n }\n\n /**\n * Remove listeners de detecção mobile.\n */\n private cleanupMobileDetection() {\n window.removeEventListener('resize', this.handleResize)\n }\n\n /**\n * Handler de resize da janela.\n * Alterna entre modos mobile/desktop e configura/limpa gestos swipe.\n */\n private handleResize = () => {\n const wasMobile = this.isMobile\n this.isMobile = window.innerWidth <= 992\n\n if (this.isMobile && !wasMobile) {\n this.collapsed = true\n this.setupSwipeListeners()\n } else if (!this.isMobile && wasMobile) {\n this.cleanupSwipeListeners()\n this.collapsed = false\n }\n }\n\n // ========================================\n // GESTOS SWIPE (MOBILE)\n // ========================================\n\n /**\n * Configura gestos swipe para mobile.\n */\n private setupSwipeListeners() {\n if (!this.isMobile) return\n\n requestAnimationFrame(() => {\n this.progressBarRef = this.el.shadowRoot?.querySelector('.wizard-progress') || null\n this.formRef = this.el.shadowRoot?.querySelector('.wizard-form') || null\n\n if (this.progressBarRef !== null) {\n const direction = this.orientation === 'horizontal' ? 'vertical' : 'horizontal'\n this.progressBarSwipe = new UniversalSwipe(this.progressBarRef, { direction })\n\n if (this.orientation === 'horizontal') {\n this.progressBarSwipe.on('SWIPE_DOWN', () => this.expandSteps())\n this.progressBarSwipe.on('SWIPE_UP', () => this.collapseSteps())\n } else {\n this.progressBarSwipe.on('SWIPE_RIGHT', () => this.expandSteps())\n this.progressBarSwipe.on('SWIPE_LEFT', () => this.collapseSteps())\n }\n }\n\n if (this.formRef !== null) {\n this.formRef.addEventListener('touchstart', this.handleFormTouchStart)\n }\n })\n }\n\n /**\n * Remove listeners de gestos swipe.\n */\n private cleanupSwipeListeners() {\n if (this.progressBarSwipe !== null) {\n this.progressBarSwipe.off('SWIPE_DOWN', this.expandSteps)\n this.progressBarSwipe.off('SWIPE_UP', this.collapseSteps)\n this.progressBarSwipe.off('SWIPE_RIGHT', this.expandSteps)\n this.progressBarSwipe.off('SWIPE_LEFT', this.collapseSteps)\n\n this.progressBarSwipe.destroy()\n this.progressBarSwipe = null\n }\n\n if (this.formRef !== null) {\n this.formRef.removeEventListener('touchstart', this.handleFormTouchStart)\n }\n }\n\n /**\n * Handler de toque no formulário.\n * Recolhe automaticamente a barra de progresso.\n */\n private handleFormTouchStart = () => {\n this.collapseSteps()\n }\n\n /**\n * Recolhe a barra de progresso (mobile).\n * Adiciona o atributo 'collapsed' ao host.\n */\n private collapseSteps() {\n if (this.isMobile) {\n this.collapsed = true\n }\n }\n\n /**\n * Expande a barra de progresso (mobile).\n * Remove o atributo 'collapsed' do host.\n */\n private expandSteps() {\n if (this.isMobile) {\n this.collapsed = false\n }\n }\n\n // ========================================\n // HANDLERS DE EVENTOS DE BOTÕES\n // ========================================\n\n /**\n * Handler do botão \"Avançar\" ou \"Concluir\".\n * Se for a última etapa, valida e emite evento de conclusão.\n * Caso contrário, avança para a próxima etapa.\n */\n private handleNext = async () => {\n if (this.currentStep === this.panels.length) {\n // Última etapa: validar antes de completar\n const eventResult = this.brWizardBeforeStepChange.emit(this.currentStep)\n\n // Se preventDefault() foi chamado, bloqueia conclusão\n if (!eventResult.defaultPrevented) {\n this.brWizardComplete.emit()\n }\n } else {\n await this.nextStep()\n }\n }\n\n /**\n * Handler do botão \"Voltar\".\n * Navega para a etapa anterior.\n */\n private handlePrevious = async () => {\n await this.previousStep()\n }\n\n /**\n * Handler do botão \"Cancelar\".\n * Emite evento de cancelamento do wizard.\n */\n private handleCancel = () => {\n this.brWizardCancel.emit()\n }\n\n // ========================================\n // MÉTODOS DE RENDERIZAÇÃO\n // ========================================\n\n /**\n * Retorna classes CSS do container principal.\n * @returns CssClassMap - Mapa de classes CSS\n */\n private getHostClassMap(): CssClassMap {\n return {\n 'br-wizard': true,\n }\n }\n\n /**\n * Renderiza indicadores de progresso usando br-step.\n * @returns JSX.Element | null - Elemento de progresso ou null se não houver painéis\n */\n private renderProgress() {\n if (this.panels.length === 0) {\n return null\n }\n\n return (\n <div class=\"wizard-progress\">\n <br-step\n ref={(el) => (this.stepRef = el)}\n initial-step={String(this.currentStep - 1)}\n layout={this.orientation}\n label-position={this.orientation === 'vertical' ? 'bottom' : 'bottom'}\n progression-type={this.progressionType}\n mode=\"step\"\n >\n {this.panels.map((panel) => {\n const label = panel.getAttribute('label') || ''\n return <br-step-item label={label}></br-step-item>\n })}\n </br-step>\n </div>\n )\n }\n\n /**\n * Renderiza conteúdo dos painéis via slot.\n * @returns JSX.Element - Container com slot dos painéis\n */\n private renderPanelContent() {\n return (\n <div class=\"wizard-panel-content\">\n <slot />\n </div>\n )\n }\n\n /**\n * Renderiza botões de navegação do wizard.\n * Adapta-se ao contexto: primeira etapa, última etapa, mobile/desktop.\n * @returns JSX.Element - Container com botões de navegação\n */\n private renderPanelButtons() {\n const isFirst = this.currentStep === 1\n const isLast = this.currentStep === this.panels.length\n\n const buttonShape = this.isMobile ? 'block' : undefined\n\n return (\n <div class=\"wizard-panel-btn\">\n <br-button\n class=\"wizard-btn-canc\"\n type=\"button\"\n shape={buttonShape}\n emphasis=\"tertiary\"\n onClick={this.handleCancel}\n >\n Cancelar\n </br-button>\n\n <br-button\n class={isLast ? 'wizard-btn' : 'wizard-btn-next'}\n emphasis=\"primary\"\n type=\"button\"\n shape={buttonShape}\n onClick={this.handleNext}\n >\n {isLast ? 'Concluir' : 'Avançar'}\n </br-button>\n\n {!isFirst && (\n <br-button\n class=\"wizard-btn-prev\"\n emphasis=\"secondary\"\n type=\"button\"\n shape={buttonShape}\n onClick={this.handlePrevious}\n >\n Voltar\n </br-button>\n )}\n </div>\n )\n }\n\n /**\n * Renderiza região de anúncios para leitores de tela.\n * Usa aria-live para comunicar mudanças de estado de forma acessível.\n * @returns JSX.Element - Elemento sr-only com aria-live\n */\n private renderAriaLiveRegion() {\n return (\n <div class=\"sr-only\" role=\"status\" aria-live=\"polite\" aria-atomic=\"true\">\n {this.ariaLiveMessage}\n </div>\n )\n }\n\n /**\n * Método de renderização principal do componente.\n * Monta a estrutura completa do wizard com acessibilidade integrada.\n * @returns JSX.Element - Estrutura completa do wizard\n */\n render() {\n const hostClass = this.getHostClassMap()\n const verticalAttr = this.orientation === 'vertical' ? { vertical: '' } : {}\n const collapsedAttr = this.collapsed ? { collapsed: '' } : {}\n const activePanelAttr = { active: '' }\n\n // Atributos ARIA para o painel ativo\n const totalSteps = this.panels.length\n const currentPanel = this.panels[this.currentStep - 1]\n const stepLabel = currentPanel?.getAttribute('label') || `Etapa ${this.currentStep}`\n\n return (\n <Host class={hostClass} {...verticalAttr} {...collapsedAttr} step={String(this.currentStep)}>\n {this.renderAriaLiveRegion()}\n\n {this.renderProgress()}\n\n <div class=\"wizard-form\" role=\"region\" aria-label={`Wizard: ${stepLabel}`}>\n <div\n class=\"wizard-panel\"\n {...activePanelAttr}\n role=\"group\"\n aria-label={`${stepLabel}, etapa ${this.currentStep} de ${totalSteps}`}\n >\n {this.renderPanelContent()}\n {this.renderPanelButtons()}\n </div>\n </div>\n </Host>\n )\n }\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  if (!window.elementsToListen && !window.eventsToListen) {
2
2
  const elementsToListen = document.querySelectorAll('br-modal')
3
3
 
4
- const eventsToListen = ['brModalClose']
4
+ const eventsToListen = ['brModalClose', 'brModalBeforeClose']
5
5
 
6
6
  elementsToListen.forEach((domElement) => {
7
7
  eventsToListen.forEach((event) => {
@@ -17,55 +17,3 @@ if (!window.elementsToListen && !window.eventsToListen) {
17
17
  })
18
18
  })
19
19
  }
20
-
21
- document.getElementById('openScrimDisableClick').addEventListener('click', () => {
22
- document.getElementById('disableClickScrim').open()
23
- })
24
-
25
- document.getElementById('closeScrimModal').addEventListener('click', () => {
26
- console.log('Fechar a scrim ao clicar')
27
- document.getElementById('disableClickScrim').close()
28
- })
29
-
30
- const scrimModal = document.getElementById('scrim-modal')
31
- const disableClickScrim = document.getElementById('disableClickScrim')
32
-
33
- // Modal com Scrim Nativo - também auto-close
34
- scrimModal.addEventListener('brModalClose', () => {
35
- console.log("Modal scrim nativo: evento 'brModalClose' emitido - modal fecha sozinha")
36
- // Fechar o scrim também quando a modal fechar
37
- disableClickScrim.close()
38
- })
39
-
40
- // Aguardar a modal estar completamente carregada para acessar o shadow DOM
41
- setTimeout(() => {
42
- // Acessar o botão de fechar dentro do shadow DOM da modal
43
- const closeButton = scrimModal.shadowRoot?.querySelector('br-button.close')
44
- if (closeButton) {
45
- closeButton.addEventListener('click', () => {
46
- console.log('Modal scrim nativo: Botão X (fechar) clicado')
47
- scrimModal.show = false
48
- disableClickScrim.close()
49
- })
50
- } else {
51
- console.warn('Botão de fechar não encontrado no shadow DOM da modal')
52
- }
53
- }, 100)
54
-
55
- // Botões da modal com scrim nativo
56
- document.getElementById('closeScrimBackground').addEventListener('click', () => {
57
- console.log('Modal scrim nativo: Fechar clicado')
58
- scrimModal.show = false
59
- disableClickScrim.close()
60
- })
61
-
62
- document.getElementById('scrim-save-btn').addEventListener('click', () => {
63
- const formData = {
64
- input: document.getElementById('scrim-input').value,
65
- select: document.getElementById('scrim-select').value,
66
- checkbox: document.getElementById('scrim-checkbox').checked,
67
- }
68
- console.log('Modal scrim nativo: Salvar clicado', formData)
69
- scrimModal.show = false
70
- disableClickScrim.close()
71
- })
@@ -2,7 +2,6 @@
2
2
  * Construído por SERPRO
3
3
  * © https://serpro.gov.br/ - MIT License.
4
4
  */
5
- import { __awaiter } from "tslib";
6
5
  import { arrow, autoUpdate, computePosition, flip, hide, offset, shift } from "@floating-ui/dom";
7
6
  /**
8
7
  * FloatingUIManager é uma classe utilitária que gerencia o posicionamento de elementos flutuantes
@@ -39,18 +38,16 @@ export class FloatingUIManager {
39
38
  * Além disso, define o atributo de dados `data-placement` no elemento de conteúdo para refletir a posição atual.
40
39
  * @returns {Promise<void>} Uma promessa que resolve quando a posição é atualizada.
41
40
  */
42
- updatePosition() {
43
- return __awaiter(this, void 0, void 0, function* () {
44
- var _a;
45
- const data = yield computePosition(this.triggerElement, this.contentElement, {
46
- placement: this.placement,
47
- middleware: this.buildMiddleware(),
48
- });
49
- this.updateTooltipPosition(data);
50
- this.updateArrowPosition(data);
51
- this.setPlacementDataAttribute(data);
52
- (_a = this.onUpdate) === null || _a === void 0 ? void 0 : _a.call(this, data);
41
+ async updatePosition() {
42
+ var _a;
43
+ const data = await computePosition(this.triggerElement, this.contentElement, {
44
+ placement: this.placement,
45
+ middleware: this.buildMiddleware(),
53
46
  });
47
+ this.updateTooltipPosition(data);
48
+ this.updateArrowPosition(data);
49
+ this.setPlacementDataAttribute(data);
50
+ (_a = this.onUpdate) === null || _a === void 0 ? void 0 : _a.call(this, data);
54
51
  }
55
52
  /**
56
53
  * Constrói os middlewares necessários para o Floating UI.
@@ -1 +1 @@
1
- {"version":3,"file":"floating-ui.js","sourceRoot":"","sources":["../../../../../packages/webcomponents/src/utils/floating-ui.ts"],"names":[],"mappings":"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","sourcesContent":["import { arrow, autoUpdate, computePosition, flip, hide, Middleware, offset, Placement, shift } from '@floating-ui/dom'\n\n/**\n * FloatingUIManagerOptions define as opções para o FloatingUIManager.\n */\nexport interface FloatingUIManagerOptions {\n triggerElement: HTMLElement\n contentElement: HTMLElement\n arrowElement?: HTMLElement\n placement?: Placement\n onUpdate?: (data: {\n x: number\n y: number\n placement: string\n middlewareData: import('@floating-ui/dom').MiddlewareData\n }) => void\n}\n\n/**\n * FloatingUIManager é uma classe utilitária que gerencia o posicionamento de elementos flutuantes\n * como tooltips ou popovers em relação a um elemento de disparo (trigger).\n * Ela utiliza a biblioteca Floating UI para calcular posições e lidar com atualizações.\n */\nexport class FloatingUIManager {\n private triggerElement: HTMLElement\n private contentElement: HTMLElement\n private arrowElement?: HTMLElement\n private placement: Placement\n private onUpdate?: FloatingUIManagerOptions['onUpdate']\n private cleanupAutoUpdate?: () => void\n\n constructor(options: FloatingUIManagerOptions) {\n this.triggerElement = options.triggerElement\n this.contentElement = options.contentElement\n this.arrowElement = options.arrowElement\n this.placement = options.placement ?? 'top'\n this.onUpdate = options.onUpdate\n }\n\n /**\n * Inicia o gerenciador Floating UI configurando a atualização automática da posição.\n */\n public start() {\n this.cleanupAutoUpdate = autoUpdate(this.triggerElement, this.contentElement, () => this.updatePosition())\n }\n\n /**\n * Para o gerenciador Floating UI e limpa os recursos utilizados.\n */\n public stop() {\n this.cleanupAutoUpdate?.()\n }\n\n /**\n * Atualiza a posição do elemento flutuante com base no elemento disparador e no elemento de conteúdo.\n * Esta função é chamada automaticamente quando o gerenciador está ativo.\n * Ela calcula a nova posição usando a biblioteca Floating UI e aplica as transformações necessárias.\n * Também atualiza a posição da seta, se fornecida.\n * Além disso, define o atributo de dados `data-placement` no elemento de conteúdo para refletir a posição atual.\n * @returns {Promise<void>} Uma promessa que resolve quando a posição é atualizada.\n */\n private async updatePosition() {\n const data = await computePosition(this.triggerElement, this.contentElement, {\n placement: this.placement,\n middleware: this.buildMiddleware(),\n })\n\n this.updateTooltipPosition(data)\n this.updateArrowPosition(data)\n this.setPlacementDataAttribute(data)\n this.onUpdate?.(data)\n }\n\n /**\n * Constrói os middlewares necessários para o Floating UI.\n * Esses middlewares são usados para ajustar o posicionamento do elemento flutuante,\n * incluindo offset, flip, shift e hide. Se uma seta for fornecida, o middleware de seta também é adicionado.\n * @returns {Middleware[]} Retorna um array de middlewares configurados para o Floating UI.\n */\n private buildMiddleware(): Middleware[] {\n const middleware: Middleware[] = [offset(8), flip(), shift({ padding: 5 }), hide()]\n if (this.arrowElement != null) {\n middleware.push(arrow({ element: this.arrowElement }))\n }\n return middleware\n }\n\n /**\n * Adiciona o estilo necessário para posicionar o tooltip com base nas coordenadas fornecidas.\n * Esta função é chamada após o cálculo da posição do tooltip.\n * Ela aplica as propriedades CSS `left` e `top` ao elemento de conteúdo do tooltip.\n * @param data Contém as coordenadas x e y para posicionar o tooltip.\n */\n private updateTooltipPosition(data: { x: number; y: number }) {\n const { x, y } = data\n Object.assign(this.contentElement.style, {\n left: `${x}px`,\n top: `${y}px`,\n })\n }\n\n /**\n * Adiciona o estilo necessário para posicionar a seta do tooltip com base nos dados de middleware.\n * Esta função é chamada após o cálculo da posição do tooltip.\n * Ela aplica as propriedades CSS `left`, `top`, `right`, `bottom` e a posição estática da seta.\n * A posição estática é determinada com base na colocação do tooltip (top, right, bottom, left).\n * Se a seta não estiver presente ou os dados de middleware não contiverem informações sobre a seta, nada será feito.\n * @param data Contém a posição da seta e os dados de middleware.\n */\n private updateArrowPosition(data: { placement: string; middlewareData: import('@floating-ui/dom').MiddlewareData }) {\n if (this.arrowElement == null || data.middlewareData.arrow == null) return\n\n const { x: arrowX, y: arrowY } = data.middlewareData.arrow\n const basePlacement = data.placement.split('-')[0]\n\n const staticSide = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n }[basePlacement]\n\n Object.assign(this.arrowElement.style, {\n left: arrowX != null ? `${arrowX}px` : '',\n top: arrowY != null ? `${arrowY}px` : '',\n right: '',\n bottom: '',\n [staticSide]: '-4px',\n })\n }\n\n /**\n * Define o atributo de dados `data-placement` no elemento de conteúdo.\n * Este atributo é usado para indicar a posição atual do tooltip ou popover.\n * Ele é útil para fins de acessibilidade e para permitir que estilos CSS sejam aplicados com base na posição.\n * @param data Objeto contendo a propriedade `placement` que define a posição do tooltip ou popover.\n * A propriedade `placement` deve ser uma string representando a posição, como 'top', 'bottom', 'left', 'right', etc.\n */\n private setPlacementDataAttribute(data: { placement: string }) {\n this.contentElement.setAttribute('data-placement', data.placement)\n }\n}\n"]}
1
+ {"version":3,"file":"floating-ui.js","sourceRoot":"","sources":["../../../../../packages/webcomponents/src/utils/floating-ui.ts"],"names":[],"mappings":"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","sourcesContent":["import { arrow, autoUpdate, computePosition, flip, hide, Middleware, offset, Placement, shift } from '@floating-ui/dom'\n\n/**\n * FloatingUIManagerOptions define as opções para o FloatingUIManager.\n */\nexport interface FloatingUIManagerOptions {\n triggerElement: HTMLElement\n contentElement: HTMLElement\n arrowElement?: HTMLElement\n placement?: Placement\n onUpdate?: (data: {\n x: number\n y: number\n placement: string\n middlewareData: import('@floating-ui/dom').MiddlewareData\n }) => void\n}\n\n/**\n * FloatingUIManager é uma classe utilitária que gerencia o posicionamento de elementos flutuantes\n * como tooltips ou popovers em relação a um elemento de disparo (trigger).\n * Ela utiliza a biblioteca Floating UI para calcular posições e lidar com atualizações.\n */\nexport class FloatingUIManager {\n private triggerElement: HTMLElement\n private contentElement: HTMLElement\n private arrowElement?: HTMLElement\n private placement: Placement\n private onUpdate?: FloatingUIManagerOptions['onUpdate']\n private cleanupAutoUpdate?: () => void\n\n constructor(options: FloatingUIManagerOptions) {\n this.triggerElement = options.triggerElement\n this.contentElement = options.contentElement\n this.arrowElement = options.arrowElement\n this.placement = options.placement ?? 'top'\n this.onUpdate = options.onUpdate\n }\n\n /**\n * Inicia o gerenciador Floating UI configurando a atualização automática da posição.\n */\n public start() {\n this.cleanupAutoUpdate = autoUpdate(this.triggerElement, this.contentElement, () => this.updatePosition())\n }\n\n /**\n * Para o gerenciador Floating UI e limpa os recursos utilizados.\n */\n public stop() {\n this.cleanupAutoUpdate?.()\n }\n\n /**\n * Atualiza a posição do elemento flutuante com base no elemento disparador e no elemento de conteúdo.\n * Esta função é chamada automaticamente quando o gerenciador está ativo.\n * Ela calcula a nova posição usando a biblioteca Floating UI e aplica as transformações necessárias.\n * Também atualiza a posição da seta, se fornecida.\n * Além disso, define o atributo de dados `data-placement` no elemento de conteúdo para refletir a posição atual.\n * @returns {Promise<void>} Uma promessa que resolve quando a posição é atualizada.\n */\n private async updatePosition() {\n const data = await computePosition(this.triggerElement, this.contentElement, {\n placement: this.placement,\n middleware: this.buildMiddleware(),\n })\n\n this.updateTooltipPosition(data)\n this.updateArrowPosition(data)\n this.setPlacementDataAttribute(data)\n this.onUpdate?.(data)\n }\n\n /**\n * Constrói os middlewares necessários para o Floating UI.\n * Esses middlewares são usados para ajustar o posicionamento do elemento flutuante,\n * incluindo offset, flip, shift e hide. Se uma seta for fornecida, o middleware de seta também é adicionado.\n * @returns {Middleware[]} Retorna um array de middlewares configurados para o Floating UI.\n */\n private buildMiddleware(): Middleware[] {\n const middleware: Middleware[] = [offset(8), flip(), shift({ padding: 5 }), hide()]\n if (this.arrowElement != null) {\n middleware.push(arrow({ element: this.arrowElement }))\n }\n return middleware\n }\n\n /**\n * Adiciona o estilo necessário para posicionar o tooltip com base nas coordenadas fornecidas.\n * Esta função é chamada após o cálculo da posição do tooltip.\n * Ela aplica as propriedades CSS `left` e `top` ao elemento de conteúdo do tooltip.\n * @param data Contém as coordenadas x e y para posicionar o tooltip.\n */\n private updateTooltipPosition(data: { x: number; y: number }) {\n const { x, y } = data\n Object.assign(this.contentElement.style, {\n left: `${x}px`,\n top: `${y}px`,\n })\n }\n\n /**\n * Adiciona o estilo necessário para posicionar a seta do tooltip com base nos dados de middleware.\n * Esta função é chamada após o cálculo da posição do tooltip.\n * Ela aplica as propriedades CSS `left`, `top`, `right`, `bottom` e a posição estática da seta.\n * A posição estática é determinada com base na colocação do tooltip (top, right, bottom, left).\n * Se a seta não estiver presente ou os dados de middleware não contiverem informações sobre a seta, nada será feito.\n * @param data Contém a posição da seta e os dados de middleware.\n */\n private updateArrowPosition(data: { placement: string; middlewareData: import('@floating-ui/dom').MiddlewareData }) {\n if (this.arrowElement == null || data.middlewareData.arrow == null) return\n\n const { x: arrowX, y: arrowY } = data.middlewareData.arrow\n const basePlacement = data.placement.split('-')[0]\n\n const staticSide = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n }[basePlacement]\n\n Object.assign(this.arrowElement.style, {\n left: arrowX != null ? `${arrowX}px` : '',\n top: arrowY != null ? `${arrowY}px` : '',\n right: '',\n bottom: '',\n [staticSide]: '-4px',\n })\n }\n\n /**\n * Define o atributo de dados `data-placement` no elemento de conteúdo.\n * Este atributo é usado para indicar a posição atual do tooltip ou popover.\n * Ele é útil para fins de acessibilidade e para permitir que estilos CSS sejam aplicados com base na posição.\n * @param data Objeto contendo a propriedade `placement` que define a posição do tooltip ou popover.\n * A propriedade `placement` deve ser uma string representando a posição, como 'top', 'bottom', 'left', 'right', etc.\n */\n private setPlacementDataAttribute(data: { placement: string }) {\n this.contentElement.setAttribute('data-placement', data.placement)\n }\n}\n"]}
@@ -8,13 +8,13 @@ import { H as i } from "./p-D4N4PPot.js";
8
8
 
9
9
  import { d as o } from "./p-AOxMWARt.js";
10
10
 
11
- import { d as n } from "./p-DzKEfDGA.js";
11
+ import { d as n } from "./p-Bri6ECVa.js";
12
12
 
13
13
  import { d as l } from "./p-CBj_WCYf.js";
14
14
 
15
- import { d as s } from "./p-D0dPo1K5.js";
15
+ import { d as s } from "./p-CwtLw60M.js";
16
16
 
17
- import { d as c } from "./p-OKkBxn1z.js";
17
+ import { d as c } from "./p-lIb35q2K.js";
18
18
 
19
19
  const b = '*,*::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)}.br-breadcrumb{display:inline-grid;font-size:var(--font-size-scale-down-01);font-weight:var(--font-weight-medium);min-height:var(--spacing-scale-7x);position:relative}.br-breadcrumb .crumb-list{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;list-style:none;margin:0;overflow-x:auto;overflow-y:hidden;padding:0 0 0 var(--spacing-scale-base)}.br-breadcrumb .crumb{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:var(--spacing-scale-5x)}.br-breadcrumb .crumb .icon{color:var(--border-color);font-size:var(--icon-size-sm);margin-right:-6px}.br-breadcrumb .crumb a{max-width:180px;overflow:hidden;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.br-breadcrumb .crumb:last-child span{font-weight:var(--font-weight-medium);margin:0 var(--spacing-scale-2x) 0 var(--spacing-scale-base);white-space:nowrap}.br-breadcrumb .crumb[data-active=active] span:focus:focus,.br-breadcrumb .crumb[data-active=active] span:focus-visible:focus{outline:none}.br-breadcrumb .crumb[data-active=active] span:focus:focus-visible,.br-breadcrumb .crumb[data-active=active] span:focus-visible:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}.br-breadcrumb .crumb a:not(.br-button){margin:0 var(--spacing-scale-base)}.br-breadcrumb .home{--focus-offset:calc(var(--spacing-scale-half) * -1);margin:0 var(--spacing-scale-base) 0 0}@media (max-width: 991px){.br-breadcrumb .crumb a:not(.br-button){display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.br-breadcrumb .home+.crumb{display:-webkit-box;display:-ms-flexbox;display:flex}}.br-breadcrumb .br-card{left:var(--spacing-scale-9x);min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content;position:absolute;top:var(--spacing-scale-7x);z-index:var(--z-index-layer-1)}.br-breadcrumb .br-item{color:var(--color);cursor:pointer;padding:0}.br-breadcrumb .br-item:not(:last-child){border-bottom:1px solid var(--border-color)}.br-breadcrumb .br-item a{--interactive:var(--color);--interactive-rgb:var(--color-rgb);display:block;padding:var(--spacing-scale-2x)}@media (max-width: 575px){.br-breadcrumb .br-card{left:var(--spacing-scale-base);width:250px}}.br-button{--button-radius:100em;--button-xsmall:24px;--button-small:32px;--button-medium:40px;--button-large:48px;--button-size:var(--button-medium);-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:rgba(0,0,0,0);border:0;border-radius:var(--button-radius);color:var(--interactive);cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-size:var(--font-size-scale-up-01);font-weight:var(--font-weight-semi-bold);height:var(--button-size);-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;overflow:hidden;padding:0 var(--spacing-scale-3x);position:relative;text-align:center;vertical-align:middle;white-space:nowrap;width:auto}.br-button.block{width:100%}.br-button.circle,.br-button[circle]{border-radius:50%;padding:0;width:var(--button-size)}.br-button.xsmall,.br-button[xsmall]{--button-size:var(--button-xsmall)}.br-button.small,.br-button[small]{--button-size:var(--button-small)}.br-button.medium,.br-button[medium],.br-button.is-medium{--button-size:var(--button-medium)}.br-button.large,.br-button[large]{--button-size:var(--button-large)}.br-button.primary,.br-button[primary]{--interactive-rgb:var(--color-dark-rgb);background-color:var(--interactive-light);color:var(--color-dark)}.br-button.secondary,.br-button[secondary]{background-color:var(--background-light);border:1px solid var(--interactive)}.br-button.danger,.br-button[danger]{background-color:var(--danger);--interactive-rgb:var(--color-dark-rgb);color:var(--color-dark)}.br-button.success,.br-button[success]{background-color:var(--success);--interactive-rgb:var(--color-dark-rgb);color:var(--color-dark)}.br-button.warning,.br-button[warning]{background-color:var(--warning);--interactive-rgb:var(--color-light-rgb);color:var(--color-light)}.br-button.info,.br-button[info]{background-color:var(--info);--interactive-rgb:var(--color-dark-rgb);color:var(--color-dark)}.br-button:disabled{cursor:not-allowed}.br-button:not(:disabled){--focus-offset:var(--spacing-scale-half)}.br-button:not(:disabled):focus{outline:none}.br-button:not(:disabled):focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}.br-button:not(:disabled):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)))}.br-button:not(:disabled):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)))}.br-button.active,.br-button.is-active,.br-button[active]{--hover:var(--hover-dark);background-color:var(--active);color:var(--color-dark)}.br-button.loading{color:rgba(0,0,0,0) !important;cursor:progress}.br-button.loading:not(:disabled):hover{background-image:none}.br-button.loading::before{border-color:var(--interactive) var(--interactive) rgba(0,0,0,0);border-style:solid}.br-button.loading.primary::before,.br-button.loading.danger::before,.br-button.loading.success::before,.br-button.loading.info::before{border-color:var(--background) var(--background) rgba(0,0,0,0)}.br-button.inverted,.br-button[inverted],.br-button.dark-mode{--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);color:var(--interactive-dark)}.br-button.inverted.primary,.br-button.inverted[primary],.br-button[inverted].primary,.br-button[inverted][primary],.br-button.dark-mode.primary,.br-button.dark-mode[primary]{--interactive-rgb:var(--background-dark-rgb);background-color:var(--interactive-dark);color:var(--background-dark)}.br-button.inverted.secondary,.br-button.inverted[secondary],.br-button[inverted].secondary,.br-button[inverted][secondary],.br-button.dark-mode.secondary,.br-button.dark-mode[secondary]{background-color:var(--background-dark)}.br-button.inverted.active,.br-button[inverted].active,.br-button.dark-mode.active{--hover:var(--hover-light);--interactive-rgb:var(--active-rgb);background-color:var(--background-light);color:var(--active)}a.br-button{font-weight:var(--font-weight-semi-bold);text-decoration:none !important}.br-list.horizontal{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.br-list.horizontal>.header{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:100%}.br-list.horizontal>.header+.br-divider{border-top:1px solid var(--border-color);width:100%}.br-list.horizontal>.br-item+.br-divider,.br-list.horizontal>.group+.br-divider{border-width:0 1px 0 0;width:1px}.br-list.horizontal>.br-item,.br-list.horizontal>.group{-webkit-box-flex:1;-ms-flex:1;flex:1;height:auto;min-height:56px;width:auto}.br-list.horizontal[data-toggle]>.br-item,.br-list.horizontal.toggle>.br-item{display:block}.br-list{background-color:var(--background)}.br-list .br-item{text-align:left;width:100%}.br-list .br-item .fab{text-align:center}.br-list .br-item>.content{-webkit-box-align:var(--spacing-vertical-top);-ms-flex-align:var(--spacing-vertical-top);align-items:var(--spacing-vertical-top);display:-webkit-box;display:-ms-flexbox;display:flex}.br-list .br-item>.content>.content{-webkit-box-flex:1;-ms-flex:1;flex:1}.br-list .br-item .content:hover button.br-button{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)))}.br-list .br-item[data-toggle]{cursor:pointer}.br-list .br-item[data-toggle]~.br-list .br-item{padding:var(--spacing-scale-base) var(--spacing-scale-3x)}.br-list .br-list{overflow:hidden;-webkit-transition:all 400ms ease-in-out;transition:all 400ms ease-in-out}.br-list .header{-webkit-box-align:var(--spacing-vertical-center);-ms-flex-align:var(--spacing-vertical-center);align-items:var(--spacing-vertical-center);display:-webkit-box;display:-ms-flexbox;display:flex;font-size:var(--font-size-scale-base);font-weight:var(--font-weight-bold);-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:var(--spacing-scale-base) var(--spacing-scale-2x)}.br-item{background:var(--background);--item-padding-x:var(--spacing-scale-2x);--item-padding-y:var(--spacing-scale-base);--item-padding:var(--item-padding-y) var(--item-padding-x);--focus-offset:calc(var(--focus-width) * -1);border:0;color:var(--color);display:block;font-weight:var(--font-weight);padding:var(--item-padding);text-align:left;width:100%}.br-item .row{margin-left:calc(-1*var(--spacing-scale-base));margin-right:calc(-1*var(--spacing-scale-base))}.br-item .row .col,.br-item .row [class*=col-]{padding-left:var(--spacing-scale-base);padding-right:var(--spacing-scale-base)}.br-item::after{clear:both;content:"";display:block}.br-item[data-toggle]{cursor:pointer}.br-item[data-toggle=selection]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-item>.br-checkbox:not(.hidden-label),.br-item>.br-radio:not(.hidden-label){margin-bottom:calc(var(--item-padding-y)*-1);margin-left:calc(var(--item-padding-x)*-1);margin-right:calc(var(--item-padding-x)*-1);margin-top:calc(var(--item-padding-y)*-1)}.br-item>.br-checkbox:not(.hidden-label) input+label,.br-item>.br-radio:not(.hidden-label) input+label{padding-bottom:var(--item-padding-y);padding-top:var(--item-padding-y);top:1px;width:100%}.br-item>.br-checkbox:not(.hidden-label) input+label::before,.br-item>.br-radio:not(.hidden-label) input+label::before{left:var(--item-padding-x);top:calc(var(--item-padding-y) - 1px)}.br-item>.br-checkbox:not(.hidden-label) input+label:empty,.br-item>.br-radio:not(.hidden-label) input+label:empty{left:0;top:1px}.br-item>.br-checkbox:not(.hidden-label) input:hover:not(:disabled)+label::before,.br-item>.br-radio:not(.hidden-label) input:hover:not(:disabled)+label::before{background-image:none}.br-item>.br-checkbox input:not(:indeterminate)+label{min-height:calc(var(--checkbox-size) + var(--item-padding-y)*2)}.br-item>.br-checkbox input:not(:indeterminate)+label:not(:empty){padding-left:calc(var(--checkbox-padding) + var(--checkbox-size) + var(--item-padding-x))}.br-item>.br-checkbox input:not(:indeterminate)+label::after{left:calc(var(--item-padding-x) + 8px);top:calc(var(--item-padding-y) + 4px)}.br-item>.br-checkbox input:not(:indeterminate)+label:empty{min-height:var(--checkbox-size)}.br-item>.br-checkbox input:not(:indeterminate)+label:empty::after{left:8px;top:4px}.br-item .br-radio input+label{min-height:calc(var(--radio-size) + var(--item-padding-y)*2);padding-left:calc(var(--spacing-scale-base) + var(--radio-size) + var(--item-padding-x))}.br-item .br-radio input+label::after{left:calc(var(--item-padding-x) + var(--radio-bullet-position));top:calc(var(--item-padding-y) + var(--radio-bullet-position) - 1px)}.br-item .br-radio input+label:empty{min-height:var(--radio-size)}.br-item .br-radio input+label:empty::after{left:var(--radio-bullet-position);top:var(--radio-bullet-position)}.br-item.highlight{--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)}.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);background-color:var(--selected)}.br-item.active{--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);background-color:var(--active);color:var(--color)}.br-item.inverted,.br-item.dark-mode{--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)}.br-item.inverted.active,.br-item.dark-mode.active{--color:var(--color-light);--color-rgb:var(--color-light-rgb);--text-color:var(--color-light);--interactive:var(--interactive-light);--interactive-rgb:var(--active-rgb);--visited:var(--visited-light);--hover:var(--hover-light);--pressed:var(--pressed-light);--focus-color:var(--focus-color-light);--focus:var(--focus-color-light);background-color:var(--background-light);color:var(--active)}.br-item[data-toggle]:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}.br-item[data-toggle] .content i{color:var(--interactive)}.br-item .content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex}.br-item [class*=fa-]{height:16px;width:14px !important}a.br-item{color:var(--interactive)}a.br-item: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.br-item: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)))}button.br-item{background-color:rgba(0,0,0,0);color:var(--color)}button.br-item:focus{outline:none}button.br-item:focus-visible{outline-color:var(--focus);outline-offset:var(--focus-offset);outline-style:var(--focus-style);outline-width:var(--focus-width)}button.br-item:not(:disabled):hover{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--hover))), to(rgba(var(--color-rgb), var(--hover))));background-image:linear-gradient(rgba(var(--color-rgb), var(--hover)), rgba(var(--color-rgb), var(--hover)))}button.br-item:not(:disabled):active{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-rgb), var(--pressed))), to(rgba(var(--color-rgb), var(--pressed))));background-image:linear-gradient(rgba(var(--color-rgb), var(--pressed)), rgba(var(--color-rgb), var(--pressed)))}.br-divider,hr{--divider-size:var(--surface-width-sm);border-color:var(--border-color);border-style:solid;border-width:0;border-top-width:var(--divider-size);display:block}.br-divider.content,hr.content{-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.br-divider.content::after,.br-divider.content::before,hr.content::after,hr.content::before{border-color:var(--border-color);border-style:solid;border-width:0;border-top-width:var(--divider-size);content:"";-webkit-box-flex:1;-ms-flex:1;flex:1}.br-divider.content::after,hr.content::after{margin-left:var(--spacing-scale-base)}.br-divider.content::before,hr.content::before{margin-right:var(--spacing-scale-base)}.br-divider.vertical,hr.vertical{-ms-flex-item-align:stretch;align-self:stretch;border-right-width:var(--divider-size);border-top-width:0}.br-divider.vertical.content,hr.vertical.content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.br-divider.vertical.content::after,.br-divider.vertical.content::before,hr.vertical.content::after,hr.vertical.content::before{border-right-width:var(--divider-size);border-top-width:0;margin:0}.br-divider.inverted,.br-divider.dark-mode,hr.inverted,hr.dark-mode{--border-color:var(--pure-0)}.br-divider.dashed,hr.dashed{border-style:dashed}.br-divider.sm,hr.sm{--divider-size:var(--surface-width-sm)}.br-divider.md,hr.md{--divider-size:var(--surface-width-md)}hr{--divider-padding:var(--spacing-scale-2x);margin:var(--divider-padding) 0}:host{display:block}.br-breadcrumb .br-icon{color:#ccc}.br-breadcrumb .br-icon,.br-breadcrumb .mobile-active-page{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.br-breadcrumb .mobile-crumb-list{display:none;position:absolute;width:200px;-webkit-box-shadow:var(--surface-shadow-sm);box-shadow:var(--surface-shadow-sm)}.br-breadcrumb .mobile-crumb-list.show{display:block;top:100%;z-index:999}.br-breadcrumb .buttonFolderGroup,.br-breadcrumb .buttonFolderGroup span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.br-breadcrumb .mobile-active-page span:focus:focus-visible{outline:var(--focus-width) var(--focus-style) var(--focus);outline-offset:var(--focus-offset)}.br-breadcrumb .mobile-active-page [data-active]{margin:0 var(--spacing-scale-2x) 0 var(--spacing-scale-base)}.br-breadcrumb .crumb{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.br-breadcrumb .crumb span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.tooltip-box{position:fixed;background:#1351b4;color:#fff;padding:8px 12px;border-radius:4px;font-size:12px;white-space:nowrap;-webkit-transform:translate(-50%, -100%);transform:translate(-50%, -100%);pointer-events:none;z-index:9999;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.2);box-shadow:0 2px 4px rgba(0,0,0,.2);opacity:0;-webkit-transition:opacity .2s ease-in-out;transition:opacity .2s ease-in-out}.tooltip-box::after{content:"";position:absolute;bottom:-5px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:0;height:0;border-left:6px solid rgba(0,0,0,0);border-right:6px solid rgba(0,0,0,0);border-top:6px solid #1351b4}:host(:hover) .tooltip-box{opacity:1}';
20
20
 
@@ -2,12 +2,12 @@
2
2
  * Construído por SERPRO
3
3
  * © https://serpro.gov.br/ - MIT License.
4
4
  */
5
- import { C as o, d as s } from "./p-Cc75U9ZX.js";
5
+ import { C as s, d as o } from "./p-B_YesJM8.js";
6
6
 
7
- const t = o;
7
+ const t = s;
8
8
 
9
- const c = s;
9
+ const p = o;
10
10
 
11
- export { t as BrCheckbox, c as defineCustomElement };
11
+ export { t as BrCheckbox, p as defineCustomElement };
12
12
  //# sourceMappingURL=br-checkbox.js.map
13
13
  //# sourceMappingURL=br-checkbox.js.map
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { p as e, H as t, h as a, c as r } from "./p-DSkSDmzD.js";
6
6
 
7
- import { d as i } from "./p-Cc75U9ZX.js";
7
+ import { d as i } from "./p-B_YesJM8.js";
8
8
 
9
9
  const o = '*,*::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)}.br-checkbox{--checkbox-padding:var(--spacing-scale-base);--checkbox-size:24px;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative}.br-checkbox+.br-checkbox{margin-top:var(--spacing-scale-base)}.br-checkbox input{margin:0;opacity:0;position:absolute}.br-checkbox input+label{cursor:pointer;display:inline-block;margin-bottom:0;min-height:var(--checkbox-size);min-width:var(--checkbox-size);padding-left:calc(var(--spacing-scale-base) + var(--checkbox-size));position:relative}.br-checkbox input+label::before{background:var(--background-light);border:1px solid var(--border-color);border-radius:4px;content:"";height:var(--checkbox-size);left:0;position:absolute;width:var(--checkbox-size)}.br-checkbox input+label:empty{padding:0}.br-checkbox label{font-weight:var(--font-weight-medium)}.br-checkbox.hidden-label label{padding-left:calc(var(--checkbox-size) + var(--surface-width-md)*2);text-indent:-10000px;white-space:nowrap;width:0}.br-checkbox input:checked+label::after,.br-checkbox input:indeterminate+label::after{border:solid var(--selected);border-width:0 3px 3px 0;content:"";height:var(--icon-size-sm);left:8px;position:absolute;top:4px;-webkit-transform:rotate(45deg);transform:rotate(45deg);width:8px}.br-checkbox input[indeterminate]+label::before,.br-checkbox input:indeterminate+label::before{--interactive-rgb:var(--color-rgb);background:var(--selected);border-color:var(--selected)}.br-checkbox input[indeterminate]:hover:not(:disabled)+label::before,.br-checkbox input:indeterminate:hover:not(:disabled)+label::before{--interactive-rgb:var(--color-dark-rgb)}.br-checkbox input[indeterminate]:checked+label::after,.br-checkbox input[indeterminate]+label::after,.br-checkbox input:indeterminate:checked+label::after,.br-checkbox input:indeterminate+label::after{border-color:var(--background-light);border-width:0 0 3px;top:2px;-webkit-transform:none;transform:none}.br-checkbox.invalid input+label::before,.br-checkbox[invalid] input+label::before{--border-color:var(--danger)}.br-checkbox.invalid input:focus-visible:checked+label::before,.br-checkbox.invalid input:focus-visible+label::before,.br-checkbox[invalid] input:focus-visible:checked+label::before,.br-checkbox[invalid] input:focus-visible+label::before{--border-color:var(--focus-color)}.br-checkbox.invalid input:checked+label::before,.br-checkbox[invalid] input:checked+label::before{--border-color:var(--danger)}.br-checkbox.valid input+label::before,.br-checkbox[valid] input+label::before{--border-color:var(--success)}.br-checkbox.valid input:focus-visible:checked+label::before,.br-checkbox.valid input:focus-visible+label::before,.br-checkbox[valid] input:focus-visible:checked+label::before,.br-checkbox[valid] input:focus-visible+label::before{--border-color:var(--focus-color)}.br-checkbox.valid input:checked+label::before,.br-checkbox[valid] input:checked+label::before{--border-color:var(--success)}.br-checkbox.small input+label,.br-checkbox[small] input+label{line-height:var(--spacing-scale-2xh);min-height:var(--spacing-scale-2xh)}.br-checkbox.small input+label::before,.br-checkbox[small] input+label::before{height:var(--spacing-scale-2xh);width:var(--spacing-scale-2xh)}.br-checkbox.small input:checked+label::after,.br-checkbox[small] input:checked+label::after{border-width:0 2px 2px 0;height:var(--icon-size-sm);left:7px;top:4px;width:6px}.br-checkbox.small input[indeterminate]+label::after,.br-checkbox.small input:indeterminate+label::after,.br-checkbox[small] input[indeterminate]+label::after,.br-checkbox[small] input:indeterminate+label::after{border-color:var(--background-light);border-width:0 0 3px;left:7px;top:1px;-webkit-transform:none;transform:none;width:6px}.br-checkbox input:invalid+label::before{--border-color:var(--danger)}.br-checkbox input:focus-visible:checked+label::before,.br-checkbox input:focus-visible+label::before{border-color:var(--focus) !important;-webkit-box-shadow:0 0 0 var(--surface-width-md) var(--focus);box-shadow:0 0 0 var(--surface-width-md) var(--focus);outline:none}.br-checkbox input:hover:not(:disabled)+label::before{--interactive-rgb:var(--interactive-light-rgb);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)))}.br-checkbox:not(.disabled) input:disabled+label{cursor:not-allowed;opacity:var(--disabled)}.br-checkbox:not(.disabled) input:disabled+label *{pointer-events:none}.br-checkbox.inverted,.br-checkbox.inverted label,.br-checkbox.dark-mode,.br-checkbox.dark-mode label{color:var(--color-dark)}:host{display:block}';
10
10
 
@@ -2,12 +2,12 @@
2
2
  * Construído por SERPRO
3
3
  * © https://serpro.gov.br/ - MIT License.
4
4
  */
5
- import { C as o, d as s } from "./p-DzKEfDGA.js";
5
+ import { C as o, d as s } from "./p-Bri6ECVa.js";
6
6
 
7
- const t = o;
7
+ const r = o;
8
8
 
9
- const p = s;
9
+ const t = s;
10
10
 
11
- export { t as BrCollapse, p as defineCustomElement };
11
+ export { r as BrCollapse, t as defineCustomElement };
12
12
  //# sourceMappingURL=br-collapse.js.map
13
13
  //# sourceMappingURL=br-collapse.js.map